MiVaToPfn

NTSTATUS __stdcall MiVaToPfn(VOID *Va){
  int v2; 
  __int64 v3; 
  INT64 v4; 
  INT64 v5; 
  unsigned __int64 v6; 
  __int64 v7; 
  __int64 v8; 
  unsigned __int64 v9; 
  __int16 v10; 
  int v11; 
  UINT64 v14[5]; 
  INT64 v15; 

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

Referenced by:

MiCheckKernelShadow
MiDuplicateCloneLeaf
MiFreeInitializationCode
MiGetPhysicalAddress
MiInitializeShadowPageTable