HalpFindSecondaryIcEntry
_LIST_ENTRY *__stdcall HalpFindSecondaryIcEntry(UINT64 InputGsiv){
unsigned int v1;
unsigned __int8 v2;
__int64 *v3;
unsigned __int64 v4;
_LIST_ENTRY *v5;
unsigned int v6;
v1 = InputGsiv;
v2 = HalpAcquireHighLevelLock((UINT64 *)&CmpDummyThreadEvent + 994);
v3 = (__int64 *)*(&CmpDummyThreadEvent + 992);
v4 = v2;
v5 = 0i64;
while( v3 != (__int64 *)((char *)&CmpDummyThreadEvent + 7936) )
{
v6 = *((_DWORD *)v3 + 4);
if( v1 >= v6 && v1 < v6 + *((_DWORD *)v3 + 5) )
{
v5 = (_LIST_ENTRY *)v3;
_InterlockedIncrement((volatile signed __int32 *)v3 + 28);
break;
}
v3 = (__int64 *)*v3;
}
KxReleaseSpinLock((UINT64 *)&CmpDummyThreadEvent + 994);
__writecr8(v4);
return v5;
}Referenced by:
HalpDisableSecondaryInterrupt
HalpEnableSecondaryInterrupt
HalpHandleMaskUnmaskSecondaryInterrupt
HalpInterruptRequestSecondaryInterrupt
HalpQueryPrimaryInterruptInformation