MiCaptureAndResetWorkingSetAccessBits

VOID __stdcall MiCaptureAndResetWorkingSetAccessBits(_MMSUPPORT_INSTANCE *Vm, UINT64 Flags){
  char v2; 
  char v3; 
  char v4; 
  bool v6; 
  __int64 v7; 
  __int128 v8; 
  int *v9; 
  INT64 v10[22]; 
  __int64 v11[24]; 
  int v12[68]; 

  v3 = v2;
  v4 = Flags;
  memset(v11, 0i64, 0xB8u);
  v9 = 0i64;
  v8 = 0i64;
  memset(v10, 0i64, sizeof(v10));
  memset(v12, 0i64, 0x108u);
  v10[5] = -1i64;
  LOWORD(v10[0]) = 6;
  v6 = (Vm->Flags._bf_0 & 7) == 0;
  v10[19] = (INT64)MiResetAccessBitPte;
  v10[20] = (INT64)MiResetAccessBitsTail;
  v10[3] = (INT64)Vm;
  BYTE6(v10[0]) = v4;
  if( v6 && Vm[3].AgeDistribution[1] )
  {
    v12[1] = 32;
    v9 = v12;
  }
  if( (v3 & 0x10) != 0 )
  {
    *((_QWORD *)&v8 + 1) = v11;
    LODWORD(v11[0]) = MiTbFlushType(Vm);
    WORD2(v11[0]) = v7;
    v11[2] = v7;
    LODWORD(v11[1]) = 20;
    v11[3] = v7;
  }
  LODWORD(v8) = *(&stru_140C4DB30 + 654);
  v10[21] = (INT64)&v8;
  MiWalkPageTables((INT64)v10);
  MiDrainSystemAccessLog(Vm);
}

Referenced by:

MiTrimOrAgeWorkingSet