KiIntSteerLogStatus
VOID __stdcall KiIntSteerLogStatus(UINT8 Rundown){
EVENT_DESCRIPTOR *v2;
EVENT_DESCRIPTOR *v3;
EVENT_DESCRIPTOR *v4;
EVENT_DESCRIPTOR *v5;
INT64 *i;
INT64 *j;
UINT64 UserDataCount;
unsigned int v9;
unsigned __int16 *v10[2];
__int16 v11;
int v12;
__int16 v13;
EVENT_DATA_DESCRIPTOR v14;
__int64 v15;
__int64 v16;
EVENT_DATA_DESCRIPTOR UserData;
int *v18;
__int64 v19;
int *v20;
__int64 v21;
_KAFFINITY_EX *v22;
__int64 v23;
unsigned __int64 *Bitmap;
int v25;
int v26;
v2 = (EVENT_DESCRIPTOR *)&PPM_ETW_INTERRUPT_STEERING_MASK_CHANGE;
if( Rundown )
v2 = (EVENT_DESCRIPTOR *)&KMPnPRundownEvt_SleepStudy_ConnectionResource;
if( KiIntSteerEtwEventEnabled(v2) )
{
*(_QWORD *)&UserData.Size = 4i64;
UserData.Ptr = (unsigned __int64)&KiIntSteerLoadPercent;
v19 = 4i64;
v18 = &KiIntTrackRootCount;
v21 = 4i64;
v20 = &KiIntSteerMaskCount;
v23 = 2i64;
v22 = &KiIntSteerMask;
v26 = 0;
Bitmap = KiIntSteerMask.Bitmap;
LODWORD(UserDataCount) = 5;
v25 = 160 * KiIntSteerMask.Count;
EtwWriteEx(KiIntSteerEtwHandle, v3, 0i64, 0i64, 0i64, 0i64, UserDataCount, &UserData);
}
v12 = 0;
v13 = 0;
v4 = (EVENT_DESCRIPTOR *)&PPM_ETW_INTERRUPT_STEERING_PROC_CHANGE;
v9 = 0;
if( Rundown )
v4 = (EVENT_DESCRIPTOR *)&PPM_ETW_INTERRUPT_STEERING_PROC_RUNDOWN;
if( KiIntSteerEtwEventEnabled(v4) )
{
v10[1] = (unsigned __int16 *)KeActiveProcessors.Bitmap[0];
v10[0] = (unsigned __int16 *)&KeActiveProcessors;
v11 = 0;
while( !(unsigned int)KeEnumerateNextProcessor(&v9, v10) )
{
*(_QWORD *)&v14.Size = 4i64;
v14.Ptr = (unsigned __int64)&v9;
v16 = 4i64;
v15 = (__int64)*(&KiProcessorBlock + v9) + 11672;
LODWORD(UserDataCount) = 2;
EtwWriteEx(KiIntSteerEtwHandle, v4, 0i64, 0i64, 0i64, 0i64, UserDataCount, &v14);
}
}
v5 = (EVENT_DESCRIPTOR *)&PPM_ETW_INTERRUPT_STEERING_STATE_RETARGET;
if( Rundown )
v5 = (EVENT_DESCRIPTOR *)&PPM_ETW_INTERRUPT_STEERING_STATE_RUNDOWN;
if( KiIntSteerEtwEventEnabled(v5) )
{
for( i = (INT64 *)KiIntTrackRootList; i != &KiIntTrackRootList; i = (INT64 *)*i )
{
if( Rundown || i[22] != i[20] )
{
for( j = (INT64 *)i[2]; j != i + 2; j = (INT64 *)*j )
KiIntSteerLogState((INT64)j, v5);
}
}
}
}Referenced by:
KiIntSteerEventTraceControlCallback