HalpInitSystemHelper

INT64 __fastcall HalpInitSystemHelper(
        _HAL_INIT_PHASE Phase,
        _HAL_INIT_PHASE MaxPhase,
        _LOADER_PARAMETER_BLOCK *LoaderBlock){
  unsigned int v3; 
  unsigned int i; 
  unsigned int v8; 
  __int64(__fastcall **v9)(); 
  int v10; 
  v3 = *((_DWORD *)KeGetPcr() + 105);
  for( i = 0; Phase <= MaxPhase; ++Phase )
  {
    v8 = 0;
    v9 = &HalSubComponents;
    do
    {
      v10 = ((__int64(__fastcall *)(_QWORD, _QWORD, _LOADER_PARAMETER_BLOCK *))*v9)(
              (unsigned int)Phase,
              v3,
              LoaderBlock);
      i = v10;
      if( v10 < 0 )
        KeBugCheckEx(0x5Cu, 0x8200ui64, v10, Phase, (ULONG_PTR)*(&HalSubComponents + 2 * v8 + 1));
      ++v8;
      v9 += 2;
    }
    while( v8 < 0x15 );
  }
  return i;
}

Referenced by:

HalAllProcessorsStarted
HalInitializeProcessor
HalReportResourceUsage
HalpDispatchPnp
HalpInitSystemPhase0
HalpInitSystemPhase1
HalpInitializeLateSystemActions