HvlQueryDetailInfo

INT64 __stdcall HvlQueryDetailInfo(PVOID SystemInformation, UINT64 SystemInformationLength, UINT64 *a3){
  _DWORD *v3; 
  _DWORD *v4; 
  INT64 v6; 
  INT64 result[2]; 
  INT32 v8[4]; 
  INT32 v9[4]; 
  INT32 v10[4]; 
  INT64 v11[2]; 
  __int128 v12; 
  INT32 v13[4]; 
  v4 = v3;
  if( (_DWORD)SystemInformationLength == 112 )
  {
    memset((INT64)result, 0i64);
    HviGetHypervisorVendorAndMaxFunction((INT32 *)result);
    HviGetHypervisorInterface(v8);
    HviGetHypervisorVersion(v9);
    HviGetHypervisorFeatures(v10);
    HviGetHardwareFeatures((INT64)v11);
    HviGetEnlightenmentInformation((__int32 *)&v12);
    HviGetImplementationLimits(v13);
    v6 = 0i64;
    *(_OWORD *)SystemInformation = *(_OWORD *)result;
    *((_OWORD *)SystemInformation + 1) = *(_OWORD *)v8;
    *((_OWORD *)SystemInformation + 2) = *(_OWORD *)v9;
    *((_OWORD *)SystemInformation + 3) = *(_OWORD *)v10;
    *((_OWORD *)SystemInformation + 4) = *(_OWORD *)v11;
    *((_OWORD *)SystemInformation + 5) = v12;
    *((_OWORD *)SystemInformation + 6) = *(_OWORD *)v13;
    *v4 = 112;
  }
  else
  {
    v6 = 3221225712i64;
    *v3 = 0;
  }
  return v6;
}

Referenced by:

ExpQuerySystemInformation