KiHvInterruptShadow
INT64 __stdcall KiHvInterruptShadow(UINT64 a1, UINT64 a2, UINT64 a3, UINT64 a4){
unsigned __int64 v4;
__int64 v7;
__int64 v9;
__int64 v10;
__int64 v11;
__int64 v12;
__int64 v13;
if( (v10 & 1) != 0 )
{
__swapgs();
_mm_lfence();
if( !_bittest(MK_FP(__GS__, 36888i64), 1u) )
__writecr3((unsigned __int64)&v9);
__writegsqword(0x10u, v4);
v7 = *((_QWORD *)KeGetPcr() + 7) + 16896i64;
v13 = *(_QWORD *)(v7 - 8);
v12 = *(_QWORD *)(v7 - 16);
v11 = *(_QWORD *)(v7 - 24);
v10 = *(_QWORD *)(v7 - 32);
v9 = *(_QWORD *)(v7 - 40);
__writegsqword(0x10u, 0i64);
return KiHvInterrupt(a1, a2, a3, a4);
}
else
{
_mm_lfence();
return KiHvInterrupt(a1, a2, a3, a4);
}
}Referenced by:
No references.