HalpMmGetPteAddressSafe

_HARDWARE_PTE *__fastcall HalpMmGetPteAddressSafe(VOID *VirtualAddress){
  UINT64 *v2; 
  UINT64 *v3; 
  UINT64 *v4; 
  v2 = (UINT64 *)((char *)MmGetPml4eBase() + 8 * (((unsigned __int64)VirtualAddress >> 39) & 0x1FF));
  if( ((*(_BYTE *)v2 & 1) != 0 || HalpMmAllocateAndInsertPageTablePage(v2))
    && ((v3 = (UINT64 *)((char *)MmGetPdpteBase() + 8 * (((unsigned __int64)VirtualAddress >> 30) & 0x3FFFF)),
         (*(_BYTE *)v3 & 1) != 0)
     || HalpMmAllocateAndInsertPageTablePage(v3))
    && ((v4 = (UINT64 *)((char *)MmGetPdeBase() + 8 * (((unsigned __int64)VirtualAddress >> 21) & 0x7FFFFFF)),
         (*(_BYTE *)v4 & 1) != 0)
     || HalpMmAllocateAndInsertPageTablePage(v4)) )
  {
    return(_HARDWARE_PTE *)((char *)MmGetPteBase() + 8 * (((unsigned __int64)VirtualAddress >> 12) & 0xFFFFFFFFFi64));
  }
  else
  {
    return 0i64;
  }
}

Referenced by:

HalpMap
HalpMmReservePageTablePages
HalpReserveHalPtes