PpmEventQosSupport

CHAR __stdcall PpmEventQosSupport(CHAR a1, INT64 a2, NPTEXTMETRIC *a3){
  const _EVENT_DESCRIPTOR *v3; 
  const _EVENT_DESCRIPTOR *v4; 
  REGHANDLE v5; 
  _BOOL4 v7; 
  _BOOL4 v8; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  _BOOL4 *v10; 
  int v11; 
  int v12; 
  int *v13; 
  int v14; 
  int v15; 

  v3 = &PPM_ETW_QOS_SUPPORT_CHANGED;
  v4 = (const _EVENT_DESCRIPTOR *)PPM_ETW_QOS_SUPPORT_RUNDOWN;
  if( !a1 )
    v4 = &PPM_ETW_QOS_SUPPORT_CHANGED;
  if( PpmEtwRegistered )
  {
    v5 = PpmEtwHandle;
    LOBYTE(v3) = EtwEventEnabled(PpmEtwHandle, v4);
    if( (_BYTE)v3 )
    {
      UserData.Size = 4;
      v11 = 4;
      v7 = PpmPerfSchedulerDirectedPerfStatesSupported != 0;
      v14 = 4;
      UserData.Reserved = 0;
      v12 = 0;
      v15 = 0;
      v8 = PpmPerfQosEnabled != 0;
      UserData.Ptr = (unsigned __int64)&v7;
      v10 = &v8;
      v13 = &PpmPerfQosDisableReasons;
      LOBYTE(v3) = EtwWrite(v5, v4, 0, 3u, &UserData);
    }
  }
  return(char)v3;
}

Referenced by:

PpmEventTraceControlCallback
PpmPerfUpdateDomainPolicy