KdpReportExceptionStateChange

UINT8 __fastcall KdpReportExceptionStateChange(
        _EXCEPTION_RECORD *ExceptionRecord,
        _CONTEXT *ContextRecord,
        UINT8 SecondChance){
  UINT64 v6; 
  KCONTINUE_STATUS v7; 
  _STRING OutMessageHeader; 
  _STRING OutMessageData; 
  INT64 result[4]; 
  CHAR Destination[152]; 
  BOOL v13; 
  OutMessageData = 0i64;
  OutMessageHeader = 0i64;
  memset((INT64)result, 0i64);
  do
  {
    KdpSetCommonState(12336, (__int64)ContextRecord, (__int64)result);
    KdpQuickMoveMemory(Destination, (CHAR *)ExceptionRecord, 0x98ui64);
    v13 = SecondChance == 0;
    KdpSetContextState((INT64)result, (INT64)ContextRecord);
    OutMessageHeader.Length = 240;
    OutMessageHeader.Buffer = (char *)result;
    OutMessageData.Length = 0;
    v7 = KdpSendWaitContinue(v6, &OutMessageHeader, &OutMessageData, ContextRecord);
  }
  while( v7 == ContinueProcessorReselected );
  return v7;
}

Referenced by:

KdpReport
KiFreezeTargetExecution