INT64 __fastcall HvlReadPerfIoPort(UINT64 a1, INT16 a2, INT16 a3, _DWORD *a4){
__int16 v5;
INT64 result;
INT64 a2a;
_QWORD a3a[2];
HIDWORD(a2a) = 0x200000;
LOWORD(a2a) = a2;
a3a[0] = 0i64;
if( a3 == 1 )
{
WORD1(a2a) = 0;
}
else
{
if( a3 == 2 )
{
v5 = 1;
}
else
{
v5 = 2;
if( a3 != 4 )
return 3221225485i64;
}
WORD1(a2a) = v5;
}
result = HvlpReadPerfRegister(a1, a2a, a3a);
*a4 = a3a[0];
return result;
}