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