PopDiagTraceCsDripsWatchdog

VOID __stdcall PopDiagTraceCsDripsWatchdog(
        UINT64 ResiliencyPhaseNoActivatorsNoDripsMs,
        UINT64 NonActivatedCpuTimeMs,
        UINT64 DurationThisPeriodMs,
        UINT8 OnAc,
        UINT64 EnergyDrain,
        UINT8 DeviceConstraint,
        UINT8 ActionsTaken,
        _UNICODE_STRING *DeviceServiceName,
        _UNICODE_STRING *ChildServiceName,
        UINT64 VetoCode){
  int v10; 
  REGHANDLE v11; 
  wchar_t *Buffer; 
  __int16 v13; 
  wchar_t *v14; 
  __int16 v15; 
  int v16; 
  int v17; 
  int v18; 
  int v19; 
  _EVENT_DATA_DESCRIPTOR UserData; 
  int *v21; 
  __int64 v22; 
  int *v23; 
  __int64 v24; 
  int *v25; 
  __int64 v26; 
  UINT64 *p_EnergyDrain; 
  __int64 v28; 
  int *v29; 
  __int64 v30; 
  UINT8 *p_ActionsTaken; 
  __int64 v32; 
  int *v33; 
  __int64 v34; 
  wchar_t *v35; 
  __int64 Length; 
  int *v37; 
  __int64 v38; 
  wchar_t *v39; 
  __int64 v40; 
  UINT64 *p_VetoCode; 
  __int64 v42; 
  char *v43; 
  __int64 v44; 
  int v45; 
  int v46; 
  int v47; 
  char v48; 

  v47 = DurationThisPeriodMs;
  v46 = NonActivatedCpuTimeMs;
  v45 = ResiliencyPhaseNoActivatorsNoDripsMs;
  v10 = OnAc;
  if( PopDiagHandleRegistered )
  {
    v11 = PopDiagHandle;
    if( EtwEventEnabled(PopDiagHandle, &POP_ETW_EVENT_CS_DRIPS_WATCHDOG) )
    {
      v19 = DeviceConstraint;
      UserData.Ptr = (unsigned __int64)&v45;
      v21 = &v46;
      v23 = &v47;
      v25 = &v18;
      p_EnergyDrain = &EnergyDrain;
      v29 = &v19;
      p_ActionsTaken = &ActionsTaken;
      v18 = v10;
      *(_QWORD *)&UserData.Size = 4i64;
      v22 = 4i64;
      v24 = 4i64;
      v26 = 4i64;
      v28 = 4i64;
      v30 = 4i64;
      v32 = 4i64;
      v34 = 2i64;
      if( DeviceServiceName )
      {
        Buffer = DeviceServiceName->Buffer;
        Length = DeviceServiceName->Length;
        v35 = Buffer;
        v13 = (unsigned __int16)Length >> 1;
        v33 = &v16;
      }
      else
      {
        v35 = 0i64;
        v33 = &v16;
        v13 = 0;
        Length = 0i64;
      }
      LOWORD(v16) = v13;
      v38 = 2i64;
      if( ChildServiceName )
      {
        v14 = ChildServiceName->Buffer;
        v40 = ChildServiceName->Length;
        v39 = v14;
        v15 = (unsigned __int16)v40 >> 1;
        v37 = &v17;
      }
      else
      {
        v39 = 0i64;
        v37 = &v17;
        v15 = 0;
        v40 = 0i64;
      }
      LOWORD(v17) = v15;
      p_VetoCode = &VetoCode;
      v42 = 4i64;
      v43 = &v48;
      v44 = 4i64;
      EtwWriteEx(v11, &POP_ETW_EVENT_CS_DRIPS_WATCHDOG, 0i64, 0, 0, 0, 0xDu, &UserData);
    }
  }
}

Referenced by:

PopDripsWatchdogTakeAction