KdpGetStateChange
VOID __stdcall KdpGetStateChange(_DBGKD_MANIPULATE_STATE64 *ManipulateState, _CONTEXT *ContextRecord){
unsigned int v3;
unsigned int ActiveProcessorCount;
_KPRCB **v5;
__int64 v6;
__int64 v7;
if( ManipulateState->u.Continue.ContinueStatus >= 0 )
{
v3 = ContextRecord->EFlags | 0x100;
if( !ManipulateState->u.Continue2.ControlSet.TraceFlag )
v3 = ContextRecord->EFlags & 0xFFFFFEFF;
ContextRecord->EFlags = v3;
ActiveProcessorCount = KeQueryActiveProcessorCountEx(0xFFFFu);
if( ActiveProcessorCount )
{
v5 = &KiProcessorBlock;
v6 = ActiveProcessorCount;
do
{
v7 = (__int64)*v5++;
*(_QWORD *)(v7 + 320) = 0i64;
*(_QWORD *)(v7 + 328) = ManipulateState->u.Continue2.ControlSet.Dr7;
--v6;
}
while( v6 );
}
}
}Referenced by:
KdpSendWaitContinue