PopBatteryTraceSystemBatteryStatus

VOID __stdcall PopBatteryTraceSystemBatteryStatus(UINT8 Rundown){
  EVENT_DESCRIPTOR *v1; 
  EVENT_DESCRIPTOR *v2; 
  UINT64 v3; 
  int v4; 
  UINT64 UserDataCount; 
  __int64 v6; 
  int v7; 
  EVENT_DATA_DESCRIPTOR UserData; 
  __int64 *v9; 
  int v10; 
  int v11; 
  __int64 v12; 
  int v13; 
  int v14; 
  v2 = (EVENT_DESCRIPTOR *)BATTERY_EVT_SYSTEM_BATTERY_STATUS_CHANGE;
  if( Rundown )
    v2 = (EVENT_DESCRIPTOR *)&BATTERY_EVT_SYSTEM_BATTERY_STATUS_RUNDOWN;
  if( PopBatteryEtwRegistered )
  {
    v3 = PopBatteryEtwHandle;
    if( EtwEventEnabled(PopBatteryEtwHandle, v2, v1) )
    {
      if( (_DWORD)dword_140C23534 )
      {
        v6 = qword_140C23560;
        v4 = 1;
      }
      else
      {
        v6 = 0i64;
        v4 = 0;
      }
      UserData.Reserved = 0;
      v11 = 0;
      v14 = 0;
      v7 = v4;
      UserData.Size = 4;
      UserData.Ptr = (unsigned __int64)&v7;
      v9 = &v6;
      v12 = (__int64)&v6 + 4;
      LODWORD(UserDataCount) = 3;
      v10 = 4;
      v13 = 4;
      EtwWriteEx(v3, v2, 0i64, 0i64, 0i64, 0i64, UserDataCount, &UserData);
    }
  }
}

Referenced by:

PopBatteryApplyCompositeState
PopBatteryEtwCallback