HvlpMapStatisticsPage
VOID __stdcall HvlpMapStatisticsPage(
_HV_STATS_OBJECT_TYPE StatsType,
const _HV_STATS_OBJECT_IDENTITY *ObjectId,
UINT64 *StatsPagePa){
char *v6;
_QWORD *v7;
PHYSICAL_ADDRESS v8[2];
__int128 v9;
PHYSICAL_ADDRESS PageInfo[2];
__int128 v11;
char v12[16];
char StackBuffer[48];
*(_OWORD *)&PageInfo[0].anonymous_0.LowPart = 0i64;
v11 = 0i64;
*(_OWORD *)&v8[0].anonymous_0.LowPart = 0i64;
v9 = 0i64;
v6 = (char *)HvlpAcquireHypercallPage(PageInfo, 1ui64, StackBuffer, 0x18ui64);
v7 = HvlpAcquireHypercallPage(v8, 2ui64, v12, 8ui64);
*(_HV_STATS_OBJECT_IDENTITY *)(v6 + 8) = *ObjectId;
*(_DWORD *)v6 = StatsType;
HvcallInitiateHypercall();
*StatsPagePa = *v7 << 12;
HvlpReleaseHypercallPage((_HVLP_HYPERCALL_PAGE_INFO *)v8);
HvlpReleaseHypercallPage((_HVLP_HYPERCALL_PAGE_INFO *)PageInfo);
}Referenced by:
HvlPhase1Initialize
HvlpEnableNextLogicalProcessor
HvlpInitializeBootProcessor