PerfInfoLogInterrupt

VOID __fastcall PerfInfoLogInterrupt(INT64 a1, INT64 a2, INT64 a3){
  int v4; 
  __int16 v5; 
  unsigned int v6; 
  bool i; 
  unsigned int v8; 
  __int64 v9; 
  __int64 v10; 
  __int64 v11; 
  UINT64 Flag; 
  UINT64 v13; 
  __int64 v14; 
  int v15; 
  int v16; 
  EVENT_DATA_DESCRIPTOR EventData; 
  __int64 *v18; 
  int v19; 
  int v20; 
  v16 = 0;
  if( *(_BYTE *)(a1 + 93) )
  {
    if( *(_QWORD *)(a1 + 32) )
    {
      v14 = *(_QWORD *)(a1 + 32);
      v4 = 16;
      v5 = 3890;
      v16 = *(_DWORD *)(a1 + 40);
    }
    else
    {
      v5 = 3907;
      v14 = *(_QWORD *)(a1 + 24);
      v4 = 12;
    }
  }
  else
  {
    v5 = 3935;
    v14 = *(_QWORD *)(a1 + 24);
    v4 = 12;
  }
  v15 = a2;
  v18 = &v14;
  v19 = v4;
  v20 = 0;
  v6 = *(_DWORD *)(EtwpHostSiloState + 4224);
  for( i = !_BitScanForward(&v8, v6); !i; i = !_BitScanForward(&v8, v6) )
  {
    v6 &= v6 - 1;
    v9 = v8;
    v10 = 32i64 * v8 + EtwpHostSiloState + 4260;
    if( v10 )
    {
      if( (*(_DWORD *)(v10 + 4) & 0x4000) != 0 )
      {
        v11 = *(unsigned __int8 *)(EtwpHostSiloState + 2 * v9 + 4209) - 1i64;
        *(_QWORD *)&EventData.Size = 8i64;
        LODWORD(v13) = 4196866;
        LOWORD(Flag) = v5;
        EventData.Ptr = a3 + 8 * v11;
        EtwpLogKernelEvent(
          &EventData,
          EtwpHostSiloState,
          *(unsigned __int8 *)(EtwpHostSiloState + 2 * v9 + 4208),
          2u,
          Flag,
          v13);
      }
    }
  }
}

Referenced by:

KiInterruptSubDispatch
KiInterruptSubDispatchNoLock
KiInvokeInterruptServiceRoutine
KiScanInterruptObjectList