PopDiagTraceBatteryTriggerMet

CHAR __fastcall PopDiagTraceBatteryTriggerMet(INT64 a1, INT64 a2, INT64 *a3){
  void **v3; 
  int v4; 
  int v5; 
  int v6; 
  int v7; 
  int v8; 
  EVENT_DESCRIPTOR *v9; 
  int v10; 
  int v11; 
  _BOOL8 v12; 
  bool v13; 
  _BOOL8 v14; 
  unsigned int v15; 
  UINT64 v16; 
  int v17; 
  int v18; 
  int v19; 
  int v21; 
  int v22; 
  unsigned int v23; 
  int v24; 
  int v25; 
  int v26; 
  int v27; 
  int v28; 
  int v29; 
  int v30; 
  BOOL v31; 
  BOOL v32; 
  int v33; 
  int v34; 
  int v35; 
  int v36; 
  unsigned int v37; 
  int v38; 
  BOOL v39; 
  BOOL v40; 
  int v41; 
  int v42; 
  int v43; 
  EVENT_DATA_DESCRIPTOR UserData; 
  int *v45; 
  __int64 v46; 
  int *v47; 
  __int64 v48; 
  int *v49; 
  __int64 v50; 
  int *v51; 
  __int64 v52; 
  BOOL *v53; 
  __int64 v54; 
  BOOL *v55; 
  __int64 v56; 
  int *v57; 
  __int64 v58; 
  int *v59; 
  __int64 v60; 
  int *v61; 
  __int64 v62; 
  int *v63; 
  __int64 v64; 
  struct _EVENT_DATA_DESCRIPTOR v65; 
  int *v66; 
  __int64 v67; 
  int *v68; 
  __int64 v69; 
  int *v70; 
  __int64 v71; 
  int *v72; 
  __int64 v73; 
  int *v74; 
  __int64 v75; 
  int *v76; 
  __int64 v77; 
  int *v78; 
  __int64 v79; 
  int *v80; 
  __int64 v81; 
  int *v82; 
  __int64 v83; 
  int *v84; 
  __int64 v85; 
  int *v86; 
  __int64 v87; 
  int *v88; 
  __int64 v89; 
  void *retaddr; 
  v3 = &retaddr;
  v4 = *(_DWORD *)a3;
  if( *(_DWORD *)a3 <= 1u )
  {
    v5 = *(_DWORD *)(a1 + 4);
    v6 = *(_DWORD *)(a2 + 8);
    v7 = *(_DWORD *)(a2 + 4);
    v8 = *(_DWORD *)(a2 + 16);
    v9 = (EVENT_DESCRIPTOR *)*(unsigned int *)(a2 + 20);
    v10 = dword_140C23534;
    v11 = qword_140C23560 & 1;
    v26 = dword_140C236AC;
    v12 = byte_140C23640 != 0;
    v27 = dword_140C23534;
    v22 = v5;
    v13 = *(_BYTE *)a2 == 0;
    v28 = v5;
    v14 = !v13;
    v29 = v4;
    LOBYTE(v3) = -45 * (dword_140C236AC - 12);
    v30 = v11;
    v31 = byte_140C23640 != 0;
    v15 = (dword_140C236AC + 500) / 0x3E8u;
    v32 = !v13;
    v23 = v6;
    v33 = v6;
    v24 = v7;
    v34 = v7;
    v25 = v8;
    v35 = v8;
    v21 = (int)v9;
    v36 = (int)v9;
    v37 = v15;
    if( PopDiagHandleRegistered )
    {
      v16 = PopDiagHandle;
      LOBYTE(v3) = EtwEventEnabled(PopDiagHandle, (EVENT_DESCRIPTOR *)&POP_ETW_EVENT_BATTERY_TRIGGER_MET, v9);
      if( (_BYTE)v3 )
      {
        *(_QWORD *)&UserData.Size = 4i64;
        UserData.Ptr = (unsigned __int64)&v29;
        v46 = 4i64;
        v45 = &v27;
        v48 = 4i64;
        v47 = (int *)&v37;
        v50 = 4i64;
        v49 = &v30;
        v52 = 4i64;
        v51 = &v28;
        v53 = &v31;
        v55 = &v32;
        v57 = &v33;
        v59 = &v34;
        v61 = &v35;
        v63 = &v36;
        v54 = 4i64;
        v56 = 4i64;
        v58 = 4i64;
        v60 = 4i64;
        v62 = 4i64;
        v64 = 4i64;
        EtwWrite(v16, (EVENT_DESCRIPTOR *)&POP_ETW_EVENT_BATTERY_TRIGGER_MET, 0i64, 0xBui64, &UserData);
        LOBYTE(v3) = v36;
        v10 = v27;
        v4 = v29;
        v11 = v30;
        LODWORD(v12) = v31;
        LODWORD(v14) = v32;
        v8 = v35;
        v15 = v37;
        v21 = v36;
      }
      else
      {
        v8 = v25;
      }
    }
    if( (unsigned int)dword_140C021E8 > 5 )
    {
      LOBYTE(v3) = tlgKeywordOn((__int64)&dword_140C021E8, 0x400000000000i64);
      if( (_BYTE)v3 )
      {
        v38 = v17;
        v66 = &v25;
        v25 = v4;
        v68 = &v24;
        v67 = 4i64;
        v70 = (int *)&v23;
        v72 = &v26;
        v74 = &v22;
        v76 = &v38;
        v78 = &v39;
        v80 = &v40;
        v82 = &v41;
        v84 = &v42;
        v86 = &v43;
        v88 = &v21;
        v24 = v10;
        v69 = 4i64;
        v23 = v15;
        v71 = 4i64;
        v73 = 4i64;
        v22 = v11;
        v75 = 4i64;
        v77 = 4i64;
        v39 = v12;
        v79 = 4i64;
        v40 = v14;
        v81 = 4i64;
        v41 = v18;
        v83 = 4i64;
        v42 = v19;
        v85 = 4i64;
        v43 = v8;
        v87 = 4i64;
        v89 = 4i64;
        LOBYTE(v3) = tlgWriteTransfer_EtwWriteTransfer(
                       (__int64)&dword_140C021E8,
                       (unsigned __int8 *)word_1400264DA,
                       0i64,
                       0i64,
                       0xEu,
                       &v65);
      }
    }
  }
  return(char)v3;
}

Referenced by:

PopBatteryApplyCompositeState