MiInSwapStore

NTSTATUS __stdcall MiInSwapStore(_EPROCESS *Process){
  _QWORD *Pool; 
  _QWORD *v3; 
  _EPROCESS *v4; 

  Pool = MiAllocatePool(64i64, 0x48ui64, 0x73536D4Dui64);
  v3 = Pool;
  if( !Pool )
    return -1073741670;
  KeInitializeEvent((INT64)(Pool + 5), 0, 0);
  *v3 = 0i64;
  v3[2] = MiInSwapStoreWorker;
  v3[3] = v3;
  ObfReferenceObjectWithTag(Process, 0x73576D4Dui64);
  v3[4] = Process;
  *((_DWORD *)v3 + 16) = 2;
  KeQueryPriorityThread((_ETHREAD *)KeGetCurrentThread());
  MiGetProcessPartition(Process, v4);
  ExQueueWorkItemToPartition(v3);
  KeWaitForSingleObject((UINT64)(v3 + 5), 26, 0, 0, (INT64)&Mi30Milliseconds);
  MiInSwapStoreContextDereference((_MI_STORE_INSWAP_CONTEXT *)v3);
  return 0;
}

Referenced by:

MmInSwapWorkingSet