HalpIommuUpdateRemappingTableEntry
VOID __stdcall HalpIommuUpdateRemappingTableEntry(CHAR a1, INT64 a2, INT64 a3){
INT64 *v3;
int v4;
char v6;
unsigned int v7;
INT64 *v9;
v3 = (INT64 *)qword_140C49B50;
v4 = 0;
v6 = 0;
v7 = a2;
while( v3 != &qword_140C49B50 )
{
v9 = v3;
v3 = (INT64 *)*v3;
if( (v9[57] & 0x40) != 0 )
{
if( !v4 || dword_140C49BE0 == 2 || *((_DWORD *)v9 + 115) == 6 )
{
LOBYTE(a2) = a1;
v6 = ((__int64(__fastcall *)(INT64, INT64, _QWORD, INT64))v9[21])(v9[2], a2, v7, a3);
}
if( v6 )
((void(__fastcall *)(INT64, _QWORD))v9[22])(v9[2], v7);
++v4;
}
}
}Referenced by:
HalpInterruptEnableNmi
HalpInterruptRemap
HalpInterruptRemapFixedLines
HalpInterruptSetRemappedDestination
HalpSetIrtEntry