HsaUpdateInterruptDestination
NTSTATUS __stdcall HsaUpdateInterruptDestination(PVOID BugCheckParameter3, PVOID BugCheckParameter4){
int v3;
unsigned __int64 v4;
if( *(_DWORD *)BugCheckParameter4 == 1 )
{
*((_QWORD *)BugCheckParameter3 + 1) |= 0xFF00000000000000ui64;
v4 = *(_QWORD *)BugCheckParameter3 & 0xFFFFFFFF000000BFui64 | 0xFFFFFF00;
LABEL_8:
*(_QWORD *)BugCheckParameter3 = v4;
return v4;
}
if( *(_DWORD *)BugCheckParameter4 != 4 )
{
if( *(_DWORD *)BugCheckParameter4 != 6 )
KeBugCheckEx(0x5Cu, (PVOID)0x7000, (PVOID)0x20, BugCheckParameter3, BugCheckParameter4);
v3 = *((_DWORD *)BugCheckParameter4 + 3) | (*((_DWORD *)BugCheckParameter4 + 2) << 16);
*((_BYTE *)BugCheckParameter3 + 15) = HIBYTE(v3);
v4 = *(_QWORD *)BugCheckParameter3 ^ (*(_DWORD *)BugCheckParameter3 ^ (v3 << 8)) & 0xFFFFFF00 | 0x40i64;
goto LABEL_8;
}
*((_BYTE *)BugCheckParameter3 + 15) = *((_BYTE *)BugCheckParameter4 + 11);
v4 = *(_QWORD *)BugCheckParameter3 & 0xFFFFFFFF000000BFui64;
*(_QWORD *)BugCheckParameter3 = v4 | ((unsigned __int64)(*((_DWORD *)BugCheckParameter4 + 2) & 0xFFFFFF) << 8);
return v4;
}Referenced by:
HsaUpdateRemappingTableEntry