VfNotifyOfHibernate
VOID __stdcall VfNotifyOfHibernate(UINT8 Entering){
_LIST_ENTRY *Flink;
_LIST_ENTRY *v2;
int IsVerifierExtensionEnabled;
__int64 v4;
char v5;
int v6;
if( Entering )
{
if( ViVerifyDma )
{
ViEnableAfterHibernate = 1;
VfDisableHalVerifier();
}
}
else
{
if( !ViEnableAfterHibernate )
return;
Flink = ViAdapterList.Flink;
ViVerifyDma = 1;
ViEnableAfterHibernate = 0;
while( &ViAdapterList != Flink )
{
v2 = Flink[1].Flink;
if( v2 )
v2->Blink = (_LIST_ENTRY *)&ViDmaOperations;
Flink = Flink->Flink;
}
}
IsVerifierExtensionEnabled = VfIsVerifierExtensionEnabled();
if( IsVerifierExtensionEnabled == v6 )
{
if( ViFnExtensionHiberFunc )
{
LOBYTE(v4) = v5;
((void(__fastcall *)(__int64))ViFnExtensionHiberFunc)(v4);
}
}
}Referenced by:
PopInvokeSystemStateHandler