PpmEventTraceExpectedUtility

VOID __stdcall PpmEventTraceExpectedUtility(_KPRCB *Prcb){
  const _EVENT_DESCRIPTOR *v2; 
  const _EVENT_DESCRIPTOR *v3; 
  REGHANDLE v4; 
  _ETHREAD *CurrentThread; 
  unsigned int CycleTime; 
  unsigned __int64 v7; 
  unsigned int v8; 
  int v9; 
  int v10; 
  int v11; 
  int v12; 
  int v13; 
  int v14; 
  unsigned int v15; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  int *v17; 
  int v18; 
  int v19; 
  int *v20; 
  int v21; 
  int v22; 
  int *v23; 
  int v24; 
  int v25; 
  int *v26; 
  int v27; 
  int v28; 
  __int64 v29[2]; 

  v12 = 0;
  LODWORD(v2) = PpmEventGetEventDescriptorAndProcessorId(
                  (INT64)Prcb,
                  (INT64)&PPM_ETW_EXPECTED_UTILITY,
                  (INT64)&PPM_ETW_EXPECTED_UTILITY_HV,
                  (INT64)&v12,
                  (INT64)v29);
  v3 = v2;
  if( PpmEtwRegistered )
  {
    v4 = PpmEtwHandle;
    if( EtwEventEnabled(PpmEtwHandle, v2) )
    {
      UserData.Reserved = 0;
      UserData.Ptr = (unsigned __int64)&PopIrpWorkerControlEvent + 1216;
      CurrentThread = Prcb->CurrentThread;
      UserData.Size = 8;
      if( CurrentThread )
        CycleTime = CurrentThread->Tcb.CycleTime;
      else
        CycleTime = 100;
      v15 = CycleTime;
      v7 = *(&PopIrpWorkerControlEvent + 160) / 0x2710ui64;
      v8 = ((unsigned int)(*(&PopIrpWorkerControlEvent + 160) / 0x2710ui64) * (LODWORD(Prcb->RspBase) / CycleTime) + 50)
         / 0x64;
      v11 = v8;
      if( v8 <= (unsigned int)(*(&PopIrpWorkerControlEvent + 160) / 0x2710ui64) )
      {
        v9 = v7 - v8;
        v10 = 0;
      }
      else
      {
        v9 = 0;
        v11 = *(&PopIrpWorkerControlEvent + 160) / 0x2710ui64;
        v10 = v8 - v7;
      }
      v19 = 0;
      v22 = 0;
      v25 = 0;
      v28 = 0;
      v13 = v9;
      v17 = &v13;
      v20 = &v11;
      v23 = &v14;
      v26 = (int *)&v15;
      v14 = v10;
      v18 = 4;
      v21 = 4;
      v24 = 4;
      v27 = 4;
      EtwWriteEx(v4, v3, 0i64, 0, 0, 0, 6u, &UserData);
    }
  }
}

Referenced by:

PpmPerfApplyProcessorState