HdlspBugCheckProcessing

VOID __stdcall HdlspBugCheckProcessing(){
  __int64 v0; 
  char *v1; 
  char Str1[80]; 
  if( HdlspGetLine((UINT8 *)Str1, 0x50ui64) )
  {
    if( !stricmp(Str1, "?") || !stricmp(Str1, "help") )
    {
      HdlspSendStringAtBaud((UINT8 *)"\r\n");
      HdlspSendStringAtBaud((UINT8 *)"d        Display all log entries, paging is on.\r\n");
      HdlspSendStringAtBaud((UINT8 *)"help     Display this list.\r\n");
      HdlspSendStringAtBaud((UINT8 *)"restart  Restart the system immediately.\r\n");
      HdlspSendStringAtBaud((UINT8 *)"?        Display this list.\r\n");
      v1 = "\r\n";
    }
    else
    {
      if( !stricmp(Str1, "d") )
      {
        HdlspProcessDumpCommand(1u);
LABEL_13:
        HdlspSendStringAtBaud((UINT8 *)"\n\r!SAC>");
        return;
      }
      if( !stricmp(Str1, "restart") )
      {
        v0 = 10i64;
        do
        {
          KeStallExecutionProcessor(0x186A0u);
          --v0;
        }
        while( v0 );
        HalReturnToFirmware(3);
      }
      v1 = "Type ? or Help for a list of commands.\r\n";
    }
    HdlspSendStringAtBaud((UINT8 *)v1);
    goto LABEL_13;
  }
}

Referenced by:

HdlspDispatch