HalpHvMapDeviceMsiRange
NTSTATUS __stdcall HalpHvMapDeviceMsiRange(INT64 a1, INT64 a2, INT64 *a3, CHAR a4, INT64 a5, UINT64 a6){
unsigned int v6;
INT64 v7;
NTSTATUS v8;
int v9;
INT64 v10;
__int16 v11;
INT64 v13;
__int128 v14;
__int64 v15;
int v16;
int v17;
int v18;
__int64 v19;
int v20;
v6 = 0;
v13 = 0i64;
v14 = 0i64;
HalpHvBuildDeviceId(a1, a3, a4, (INT64)&v13);
v7 = v13;
v18 = *(_DWORD *)(a5 + 4);
v17 = 0;
v19 = 0i64;
v20 = 0;
v15 = 0i64;
v16 = a6;
v8 = ((__int64(__fastcall *)(INT64, __int64 *, INT64, __int128 *))qword_140C4A168)(v13, &v15, a5 + 24, &v14);
if( v8 >= 0 && (_DWORD)a6 )
{
v9 = DWORD2(v14);
v10 = a5 + 48;
do
{
*(_QWORD *)(v10 - 4) = 0i64;
*(_DWORD *)(v10 + 4) = 0;
v11 = WORD6(v14) + v6++;
*(_WORD *)(v10 + 4) = v11;
*(_DWORD *)v10 = v9;
*(_QWORD *)(v10 + 16) = v7;
v10 += 88i64;
}
while( v6 < (unsigned int)a6 );
}
return v8;
}Referenced by:
HalpInterruptRemap