PopDiagTraceFxPerfRequest

VOID __stdcall PopDiagTraceFxPerfRequest(
        _POP_FX_PERF_INFO *FxPerf,
        UINT64 PerfChangesCount,
        _PO_FX_PERF_STATE_CHANGE *PerfChanges){
  unsigned int v4; 
  REGHANDLE v6; 
  __int64 v7; 
  __int64 v8; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  __int64 v10; 
  int v11; 
  int v12; 
  int *v13; 
  int v14; 
  int v15; 
  _PO_FX_PERF_STATE_CHANGE *v16; 
  unsigned int v17; 
  int v18; 
  int v19; 

  v19 = PerfChangesCount;
  v4 = PerfChangesCount;
  if( PopDiagHandleRegistered )
  {
    v6 = PopDiagHandle;
    if( EtwEventEnabled(PopDiagHandle, &POP_ETW_EVENT_COMPONENT_PERFORMANCE_STATE_INITIATING) )
    {
      v7 = *(_QWORD *)FxPerf;
      v8 = *(_QWORD *)(*(_QWORD *)FxPerf + 80i64);
      UserData.Reserved = 0;
      v12 = 0;
      v15 = 0;
      UserData.Ptr = v8 + 48;
      v10 = v7 + 16;
      UserData.Size = 8;
      v13 = &v19;
      v11 = 4;
      v14 = 4;
      if( 16 * (unsigned __int64)v4 <= 0xFFFFFFFF )
      {
        v18 = 0;
        v17 = 16 * v4;
        v16 = PerfChanges;
        EtwWriteEx(v6, &POP_ETW_EVENT_COMPONENT_PERFORMANCE_STATE_INITIATING, 0i64, 0, 0, 0, 4u, &UserData);
      }
    }
  }
}

Referenced by:

PopFxIssueComponentPerfStateChanges