HalpShutdownReset

VOID __stdcall __noreturn HalpShutdownReset(INT64 a1, INT64 a2, INT64 a3, INT64 a4, INT32 *a5){
  unsigned int v5; 
  struct _KPRCB *CurrentPrcb; 

  v5 = 0;
  CurrentPrcb = KeGetCurrentPrcb();
  if( _InterlockedDecrement(a5) )
  {
    do
    {
      if( (++v5 & dword_140C4A13C) != 0 || !qword_140C4A140 )
        _mm_pause();
      else
        qword_140C4A140(v5, a2, a3);
    }
    while( *a5 );
  }
  if( !CurrentPrcb->Number )
    HalReturnToFirmware(HalRebootRoutine);
  while( 1 )
    _mm_pause();
}

Referenced by:

No references.