KdpSymbol

VOID __stdcall KdpSymbol(
        _STRING *String,
        _KD_SYMBOLS_INFO *Symbol,
        UINT8 Unload,
        INT8 PreviousMode,
        _CONTEXT *ContextRecord,
        _KTRAP_FRAME *TrapFrame,
        _KTRAP_FRAME *ExceptionFrame){
  UINT8 v10; 
  struct _KPRCB *CurrentPrcb; 
  UINT8 v12; 

  if( !PreviousMode && !(_BYTE)KdDebuggerNotPresent )
  {
    v10 = KdEnterDebugger(TrapFrame, ExceptionFrame);
    CurrentPrcb = KeGetCurrentPrcb();
    v12 = v10;
    KiSaveProcessorControlState(&CurrentPrcb->ProcessorState);
    KdpCopyContext(CurrentPrcb->Context, ContextRecord->ContextFlags, ContextRecord);
    KdpReportLoadSymbolsStateChange(String, Symbol, Unload, CurrentPrcb->Context);
    KdpCopyContext(ContextRecord, CurrentPrcb->Context->ContextFlags, CurrentPrcb->Context);
    KiRestoreProcessorControlState(&CurrentPrcb->ProcessorState);
    KdExitDebugger(v12);
  }
}

Referenced by:

KdpTrap