PopLogSleepDisabled
NTSTATUS __stdcall PopLogSleepDisabled(UINT64 ReasonCode, UINT64 States, VOID *Data, UINT64 DataSize){
char v6;
int v7;
NTSTATUS v8;
VOID **PoolWithTag;
VOID **v10;
VOID ***v11;
v6 = States;
v7 = ReasonCode;
v8 = 0;
if( PopGetReasonListByReasonCode(ReasonCode) )
return -1073741771;
PoolWithTag = ExAllocatePoolWithTag(1ui64, DataSize + 32, 1718968931i64);
v10 = PoolWithTag;
if( !PoolWithTag )
return -1073741670;
memset(PoolWithTag, 0i64, DataSize + 32);
*((_DWORD *)v10 + 6) = v7;
if( (v6 & 1) != 0 )
*((_BYTE *)v10 + 16) = 1;
if( (v6 & 2) != 0 )
*((_BYTE *)v10 + 17) = 1;
if( (v6 & 4) != 0 )
*((_BYTE *)v10 + 18) = 1;
if( (v6 & 8) != 0 )
*((_BYTE *)v10 + 19) = 1;
if( (v6 & 0x10) != 0 )
*((_BYTE *)v10 + 22) = 1;
if( (v6 & 0x20) != 0 )
*((_BYTE *)v10 + 20) = 1;
if( DataSize )
{
*((_DWORD *)v10 + 7) = DataSize;
memmove(v10 + 4, Data, DataSize);
}
v11 = (VOID ***)*(&stru_140C23628 + 140);
if( (_UNKNOWN *)**(&stru_140C23628 + 140) != (_UNKNOWN *)((char *)&stru_140C23628 + 1112) )
__fastfail(3u);
*v10 = (char *)&stru_140C23628 + 1112;
v10[1] = v11;
*v11 = v10;
*(&stru_140C23628 + 140) = v10;
return v8;
}Referenced by:
PoInitSystem
PopEnableHiberFile
PopInitPlatformSettings
PopLogDisabledSleepReason
PopUpdateUpgradeInProgress