MiInitializeBootMemoryDescriptor

UINT64 __fastcall MiInitializeBootMemoryDescriptor(UINT64 *a1, UINT64 a2, UINT64 a3, UINT64 a4){
  UINT64 v4; 
  unsigned __int64 v5; 
  UINT64 result; 
  *a1 = a3;
  v4 = a3 + a4 - 1;
  a1[1] = a4;
  a1[2] = v4;
  v5 = v4 & 0xFFFFFFFFFFFFFE00ui64;
  a1[4] = a2;
  if( v5 < a3 || v5 - a3 < 0x200 )
    result = -1i64;
  else
    result = v5 - 512;
  a1[3] = result;
  return result;
}

Referenced by:

MxInitializeFreeNodeDescriptors
MxSwitchDescriptors