PopDiagTraceDevicesLevel
char __fastcall PopDiagTraceDevicesLevel(int a1, int a2, EVENT_DESCRIPTOR *a3, char a4){
__int64 *v4;
__int64 *v5;
UINT64 v6;
EVENT_DATA_DESCRIPTOR UserData;
char *v9;
int v10;
int v11;
int v12;
char v13;
v13 = (char)a3;
v12 = a1;
if( a2 )
{
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( !a4 )
v5 = v4;
if( PopDiagHandleRegistered )
{
v6 = PopDiagHandle;
LOBYTE(v4) = EtwEventEnabled(PopDiagHandle, (EVENT_DESCRIPTOR *)v5, a3);
if( (_BYTE)v4 )
{
UserData.Reserved = 0;
v11 = 0;
UserData.Ptr = (unsigned __int64)&v12;
UserData.Size = 4;
v9 = &v13;
v10 = 1;
LOBYTE(v4) = EtwWrite(v6, (EVENT_DESCRIPTOR *)v5, 0i64, 2ui64, &UserData);
}
}
return(char)v4;
}Referenced by:
PoBroadcastSystemState