MiCopyTopLevelMappings

__int64 __fastcall MiCopyTopLevelMappings(__int64 a1, __int64 a2){
  unsigned __int64 v4; 
  __int64 result; 
  __int64 v6; 
  memmove(
    (UINT8 *)(a2 + 2048),
    (UINT8 *)MmGetPml4eBase() + 2048,
    8 * ((((unsigned __int64)qword_140C4F878 >> 39) & 0x1FF) - 256));
  MiShadowTopLevelPxes();
  v4 = (((unsigned __int64)qword_140C4E0A8 >> 39) & 0x1FF) + 1;
  memmove((UINT8 *)(a2 + 8 * v4), (UINT8 *)MmGetPml4eBase() + 8 * v4, 8i64 * (unsigned int)(512 - v4));
  result = 0i64;
  v6 = *(_QWORD *)(a1 + 1368);
  if( v6 )
    result = *(_QWORD *)(v6 + 816);
  *(_QWORD *)(a2 + 8 * (((unsigned __int64)qword_140C4DB18 >> 39) & 0x1FF)) = result;
  return result;
}

Referenced by:

MiCreateNewProcessTopLevelMappings
MiUpdateSystemPdes