MiFillCombinePage

NTSTATUS __stdcall MiFillCombinePage(_MMPFN *SharedPfn, _MMPFN *PrivatePfn, VOID *PrivateMappedVa, VOID *a4){
  __int64 v5; 
  UINT64 v6; 
  unsigned int v7; 
  void *v8; 
  VOID *v9; 

  v5 = (unsigned __int128)(((char *)PrivatePfn - (char *)MmGetPfnDb()) * (__int128)0x2AAAAAAAAAAAAAABi64) >> 64;
  v6 = ((unsigned __int64)v5 >> 63) + (v5 >> 3);
  v7 = *((unsigned __int8 *)PrivateMappedVa + 34);
  if( (((unsigned __int8)v7 ^ *((_BYTE *)&PrivatePfn->u3 + 2)) & 0xC0) != 0 )
    MiChangePageAttribute(PrivatePfn, (_MI_PFN_CACHE_ATTRIBUTE)(v7 >> 6), 2ui64);
  v8 = MiMapSinglePage(0i64, v6, 0x40000010ui64);
  v9 = v8;
  if( v8 )
  {
    KeCopyPage(v8);
    MiUnmapSinglePage(v9);
    LODWORD(v8) = 1;
  }
  return(int)v8;
}

Referenced by:

MiConvertPrivateToProto
MiConvertStandbyToProto