PopDiagTraceDevicesLevel
VOID __stdcall PopDiagTraceDevicesLevel(UINT64 Level, _POP_DEVICE_LEVEL_TYPE Type, UINT8 MinorFunction, UINT8 Start){
__int64 *v4;
__int64 *v5;
REGHANDLE v6;
_EVENT_DATA_DESCRIPTOR UserData;
UINT8 *v8;
int v9;
int v10;
int v11;
UINT8 v12;
v12 = MinorFunction;
v11 = Level;
if( Type )
{
v4 = POP_ETW_EVENT_DEVICESWAKELEVEL_END;
v5 = POP_ETW_EVENT_DEVICESWAKELEVEL;
}
else
{
v4 = (__int64 *)&POP_ETW_EVENT_DEVICESSUSPENDLEVEL_END;
v5 = POP_ETW_EVENT_DEVICESSUSPENDLEVEL;
}
if( !Start )
v5 = v4;
if( PopDiagHandleRegistered )
{
v6 = PopDiagHandle;
if( EtwEventEnabled(PopDiagHandle, (PCEVENT_DESCRIPTOR)v5) )
{
UserData.Reserved = 0;
v10 = 0;
UserData.Ptr = (unsigned __int64)&v11;
UserData.Size = 4;
v8 = &v12;
v9 = 1;
EtwWrite(v6, (PCEVENT_DESCRIPTOR)v5, 0, 2u, &UserData);
}
}
}Referenced by:
PoBroadcastSystemState