MiUnmapPageInHyperSpaceWorker

VOID __stdcall MiUnmapPageInHyperSpaceWorker(PVOID VirtualAddress, UINT8 OldIrql, UINT64 Flags){
  unsigned __int64 v3; 
  struct _KPRCB *CurrentPrcb; 
  _QWORD *v5; 
  unsigned int v6; 
  unsigned __int64 v7; 
  __int64 v8; 
  v3 = OldIrql;
  CurrentPrcb = KeGetCurrentPrcb();
  v5 = (_QWORD *)((char *)MmGetPteBase() + (((unsigned __int64)VirtualAddress >> 9) & 0x7FFFFFFFF8i64));
  v6 = 0;
  v7 = 0i64;
  v8 = *((_QWORD *)CurrentPrcb + 4095);
  if( v8 )
  {
    *(_QWORD *)(v8 + 12344) = 0i64;
  }
  else
  {
    v7 = *((_QWORD *)CurrentPrcb + 4160) & 0xFFFFFFFFFFFFF000ui64;
    v6 = (*((_QWORD *)CurrentPrcb + 4160) & 0xFFF) + 1;
  }
  *v5 = ZeroPte;
  if( !v8 )
  {
    if( v6 == 64 )
    {
      MiFlushHyperSpace();
      v6 = 0;
    }
    *((_QWORD *)CurrentPrcb + 4160) = v7 | v6;
  }
  if( (_BYTE)v3 != 17 )
    __writecr8(v3);
}

Referenced by:

KiInSwapProcesses
MiArePageContentsZero
MiBuildMappedCluster
MiClearContainingMapping
MiCompletePrivateZeroFault
MiComputePageHash
MiConfirmPageIsZero
MiConvertPrivateToProto
MiConvertStandbyToProto
MiCopySinglePage
MiCopyToUserVa
MiCreateSystemPageTable
MiDecrementAndInsertStandbyPages
MiDeletePteRun
MiDemoteValidLargePageOneLevel
MiFillPhysicalPages
MiFinishLastForkPageTable
MiFlushCacheForAttributeChange
MiFreePagesFromMdl
MiGetFileHashPage
MiGetPageChain
MiInitializeImageHeaderPage
MiInitializeImageProtos
MiMakeProtoTransition
MiMirrorOmitPagesFromCopy
MiPersistPage
MiReadWriteAnyLevelShadowPte
MiReplaceTransitionPage
MiReplicatePteChangeToProcess
MiRestoreTransitionPte
MiRewriteTrimPteAsDemandZero
MiSplitDirectMapPage
MiSwapNumaStandbyPage
MiUpdateSystemPdes
MiWaitForInPageComplete
MiWsleFree
MiZeroCfgSystemWideBitmapWorker
MmOutSwapProcess
MmReplaceImportEntry
MmUpdateUserShadowStackValue