HvlPrepareForHibernate
__int64 __fastcall HvlPrepareForHibernate(_OWORD *a1, _QWORD *a2, _QWORD *a3, _QWORD *a4, _QWORD *a5){
unsigned int v5;
_OWORD *v10;
_QWORD *v11;
__int16 v12;
__int128 PageInfo[2];
_HVLP_HYPERCALL_PAGE_INFO v15[4];
__int128 v16;
v5 = 0;
*(_OWORD *)v15 = 0i64;
v16 = 0i64;
memset(PageInfo, 0, sizeof(PageInfo));
v10 = HvlpAcquireHypercallPage((PHYSICAL_ADDRESS *)v15, 1ui64, 0i64, 0x58ui64);
v11 = HvlpAcquireHypercallPage((PHYSICAL_ADDRESS *)PageInfo, 2ui64, 0i64, 0x20ui64);
memset(v10, 0i64, 0x58u);
*v10 = *a1;
v10[1] = a1[1];
v10[2] = a1[2];
v10[3] = a1[3];
v10[4] = a1[4];
HvcallInitiateHypercall();
if( v12 )
{
v5 = -1073741823;
}
else
{
*a2 = *v11;
*a3 = v11[1];
*a4 = v11[2];
*a5 = v11[3];
}
HvlpReleaseHypercallPage((_HVLP_HYPERCALL_PAGE_INFO *)PageInfo);
HvlpReleaseHypercallPage(v15);
return v5;
}Referenced by:
PopSaveHiberContext