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