HalpInterruptRequestSecondaryInterrupt
NTSTATUS __stdcall HalpInterruptRequestSecondaryInterrupt(UINT64 Gsiv){
unsigned int v1;
_LIST_ENTRY *SecondaryIcEntry;
INT64 v3;
NTSTATUS v5;
int v6;
v1 = Gsiv;
if( !byte_140C50754 || !((unsigned __int8(__fastcall *)(_QWORD, _QWORD))off_140C00780[0])(0i64, (unsigned int)Gsiv) )
return -1073741811;
SecondaryIcEntry = HalpFindSecondaryIcEntry(v1);
v3 = (INT64)SecondaryIcEntry;
if( !SecondaryIcEntry )
return -1073700575;
v6 = -1;
if( BYTE4(SecondaryIcEntry[v1 - LODWORD(SecondaryIcEntry[1].Flink) + 10].Blink) )
v5 = ((__int64(__fastcall *)(_LIST_ENTRY *, _QWORD, int *))SecondaryIcEntry[6].Flink)(
SecondaryIcEntry[2].Flink,
v1,
&v6);
else
v5 = -1073741823;
HalpReleaseSecondaryIcEntryShared(v3, 1);
if( v5 < 0 || v6 == -1 )
return v5;
else
return off_140C00810[0]();
}Referenced by:
HalpInterruptRequestInterrupt