MiVaToPfn

UINT64 __stdcall MiVaToPfn(PVOID Va){
  int v2; 
  __int64 v3; 
  INT64 v4; 
  INT64 v5; 
  unsigned __int64 v6; 
  __int64 v7; 
  unsigned __int64 v8; 
  __int16 v9; 
  __int64 v10; 
  UINT64 v13[5]; 
  INT64 v14; 
  memset(v13, 0, 32);
  MiFillPteHierarchy((UINT64)Va, v13);
  v2 = 4;
  v3 = 4i64;
  do
  {
    v4 = v13[--v3];
    --v2;
    v5 = MI_READ_PTE_LOCK_FREE(v4);
    v14 = v5;
  }
  while( v3 && (v5 & 0x80u) == 0i64 );
  v6 = ((unsigned __int64)MI_READ_PTE_LOCK_FREE((INT64)&v14) >> 12) & 0xFFFFFFFFFi64;
  if( v2 )
  {
    v7 = 1i64;
    v8 = (unsigned __int64)Va >> 12;
    do
    {
      v9 = v8;
      v8 >>= 9;
      v10 = v7 * (v9 & 0x1FF);
      v7 <<= 9;
      v6 += v10;
      --v2;
    }
    while( v2 );
  }
  return v6;
}

Referenced by:

MiCheckKernelShadow
MiDuplicateCloneLeaf
MiFreeInitializationCode
MiGetPhysicalAddress
MiInitializeShadowPageTable