PoDisableSleepStates
NTSTATUS __stdcall PoDisableSleepStates(PO_SLEEP_DISABLE_REASON Reason, UINT64 SleepMask, VOID **Token){
int v3;
VOID **PoolWithTag;
NTSTATUS v7;
VOID **v8;
VOID ***v9;
v3 = SleepMask;
PoolWithTag = ExAllocatePoolWithTag(1ui64, 0x18ui64, 1683189584i64);
v7 = 0;
v8 = PoolWithTag;
if( !PoolWithTag )
return -1073741670;
*PoolWithTag = 0i64;
PoolWithTag[1] = 0i64;
*((_DWORD *)PoolWithTag + 4) = Reason;
*((_DWORD *)PoolWithTag + 5) = v3;
ExAcquireFastMutex((PFAST_MUTEX)&stru_140C23628 + 89);
v9 = (VOID ***)*(&stru_140C23628 + 622);
if( (_UNKNOWN *)**(&stru_140C23628 + 622) != (_UNKNOWN *)((char *)&stru_140C23628 + 4968) )
__fastfail(3u);
*v8 = (char *)&stru_140C23628 + 4968;
v8[1] = v9;
*v9 = v8;
*(&stru_140C23628 + 622) = v8;
KeReleaseGuardedMutex((PKGUARDED_MUTEX)&stru_140C23628 + 89);
*Token = v8;
return v7;
}Referenced by:
HalpLoadMicrocode
VslpIumPhase4Initialize