MiWritePteShadow

CHAR __stdcall MiWritePteShadow(){
  _ETHREAD *CurrentThread; 
  __int64 v1; 
  unsigned __int64 v2; 
  _QWORD *ShadowMapping; 

  LODWORD(CurrentThread) = MiPteHasShadow();
  if( (_DWORD)CurrentThread )
  {
    CurrentThread = (_ETHREAD *)KeGetCurrentThread();
    ShadowMapping = CurrentThread->Tcb.ApcState.Process->Vm.Shared.ShadowMapping;
    if( ShadowMapping )
    {
      LOBYTE(CurrentThread) = -(v1 & 1);
      ShadowMapping[(v2 >> 3) & 0x1FF] = v1 & 0x7FFFFFFFFFFFFFFFi64 & -(__int64)((v1 & 1) != 0);
    }
  }
  return(char)CurrentThread;
}

Referenced by:

MI_INTERLOCKED_EXCHANGE_PTE
MiBuildForkPte
MiClearDriverHotPatchPtes
MiConvertPrivateToProto
MiDeleteVa
MiDemoteValidLargePageOneLevel
MiHandleForkTransitionPte
MiMakeProtoReadOnly
MiMakeSystemLeavesNonZero
MiMapMdlCommon
MiMapMemoryDumpMdl
MiMapPageFileHash
MiPrivateFixup
MiRewriteTrimPteAsDemandZero
MiScrubLargeMappedPage
MiSetPagingOfDriver
MiSwitchToTransition
MiTerminateWsleCluster
MiUnlockNestedPageTableWritePte
MiWriteTopLevelPxe
MiWriteUselessChildPte
MiWriteValidPteNewPage
MiWsleFlush
MiZeroAndFlushPtes
MmAllocateIndependentPagesEx
MmChangeKernelCfgBitmap
MxCreateFreePfns
RemoveListEntryPte