MiHotPatchAllProcesses

NTSTATUS __stdcall MiHotPatchAllProcesses(INT64 a1, INT64 a2){
  unsigned int v2; 
  unsigned int v3; 
  _EPROCESS *i; 
  int Blink_high; 
  _LIST_ENTRY *NextProcess; 
  _EX_RUNDOWN_REF *v7; 
  _KAPC_STATE ApcState; 

  v2 = a1;
  memset(&ApcState, 0, sizeof(ApcState));
  v3 = a2;
  for( i = 0i64; ; i = (_EPROCESS *)v7 )
  {
    NextProcess = PsGetNextProcess(i);
    v7 = (_EX_RUNDOWN_REF *)NextProcess;
    if( !NextProcess )
      break;
    Blink_high = HIDWORD(NextProcess[135].Blink);
    if( (Blink_high & 0x1000) == 0 && v7 != PsSecureSystemProcess && (Blink_high & 1) == 0 && !v7[280].Count )
    {
      KiStackAttachProcess(v7, 0i64, &ApcState);
      MiHotPatchProcess(v7, v2, v3);
      KiUnstackDetachProcess(&ApcState, 0i64);
    }
  }
  return 0;
}

Referenced by:

MiLoadHotPatch
MiLoadHotPatchForUserSid
MiUnloadHotPatch
MiUnloadHotPatchForUserSid