HalpBlkInitSystem

VOID __fastcall HalpBlkInitSystem(INT64 a1){
  int 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( HalpInterruptBlockedProcessors && HalpInterruptStartHyperthreadSiblings )
    {
      v1 = HalpBlkInitializeVirtualAddressSpace();
      if( v1 < 0 )
        KeBugCheckEx(0x1DAu, 1ui64, v1, 0i64, 0i64);
      HalpBlkWdInitialize();
    }
  }
  else if( HalpInterruptBlockedProcessors && (_DWORD)a1 == 21 )
  {
    if( HalpInterruptStartHyperthreadSiblings )
    {
      *(_QWORD *)&Parameters.Version = 0i64;
      Parameters.NoWakeTolerance = -1i64;
      KeSetTimer2(&HalpBlkWdTimer, -30000000i64, 30000000i64, &Parameters);
    }
  }
}

Referenced by:

HalpProcInitSystem