KdpSetContextState
VOID __stdcall KdpSetContextState(_DBGKD_ANY_WAIT_STATE_CHANGE *WaitStateChange, _CONTEXT *ContextRecord){
unsigned __int16 SegCs;
*(_OWORD *)&WaitStateChange->ControlReport.Dr6 = *(_OWORD *)&KeGetCurrentPrcb()->ProcessorState.SpecialRegisters.KernelDr6;
*(unsigned __int64 *)((char *)&WaitStateChange->AnyControlReport.PpcControlReport.Gpr3 + 4) = *(_QWORD *)&ContextRecord->SegCs;
WaitStateChange->AnyControlReport.Amd64ControlReport.EFlags = ContextRecord->EFlags;
WaitStateChange->AnyControlReport.Amd64ControlReport.ReportFlags = 1;
SegCs = ContextRecord->SegCs;
if( SegCs == 16 || SegCs == 51 )
WaitStateChange->AnyControlReport.Amd64ControlReport.ReportFlags = 3;
}Referenced by:
KdpReportCommandStringStateChange
KdpReportExceptionStateChange
KdpReportLoadSymbolsStateChange