HalpBlkInitSystem
VOID __stdcall HalpBlkInitSystem(INT64 a1){
NTSTATUS v1;
_EXT_SET_PARAMETERS_V0 Parameters;
if( (_DWORD)a1 == 12 )
{
qword_140C00A08 = (__int64)HalpBlkPoGetPowerInterface;
qword_140C00A10 = (__int64)HalpBlkPoGetPackageId;
qword_140C00A18 = (__int64)HalpBlkPoGetProcessorCount;
qword_140C00A20 = (__int64)HalpBlkPoGetApicIdByIndex;
qword_140C00A28 = (__int64)HalpBlkPoRegisterIdleState;
if( *(&CmpDummyThreadEvent + 1780) && *(&CmpDummyThreadEvent + 7092) )
{
v1 = HalpBlkInitializeVirtualAddressSpace();
if( v1 < 0 )
KeBugCheckEx(0x1DAu, (PVOID)1, (PVOID)v1, 0i64, 0i64);
HalpBlkWdInitialize();
}
}
else if( *(&CmpDummyThreadEvent + 1780) && (_DWORD)a1 == 21 )
{
if( *(&CmpDummyThreadEvent + 7092) )
{
*(_QWORD *)&Parameters.Version = 0i64;
Parameters.NoWakeTolerance = -1i64;
KeSetTimer2((INT64)&CmpDummyThreadEvent + 3584, -30000000i64, 30000000i64, (INT64)&Parameters);
}
}
}Referenced by:
HalpProcInitSystem