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