PopSqmThermalCriticalEvent

VOID __stdcall PopSqmThermalCriticalEvent(_POP_THERMAL_ZONE *ThermalZone, UINT64 TripPoint, UINT64 MitigationType){
  unsigned int v3; 
  int v5; 
  _DEVICE_OBJECT *DeviceAttachmentBaseRefWithTag; 
  _DEVICE_OBJECT *v7; 
  void *DeviceNode; 
  __int64 v9; 
  unsigned int v10; 
  char v11; 
  bool v12; 
  const WCHAR *v13; 
  const WCHAR *v14; 
  bool v15; 
  char v16; 
  bool v17; 
  bool v18; 
  int v19; 
  unsigned int v20; 
  unsigned int v21; 
  _EVENT_DATA_DESCRIPTOR v22; 
  bool *v23; 
  int v24; 
  int v25; 
  char *v26; 
  int v27; 
  int v28; 
  bool *v29; 
  int v30; 
  int v31; 
  int *v32; 
  int v33; 
  int v34; 
  int *v35; 
  int v36; 
  int v37; 
  int *v38; 
  int v39; 
  int v40; 
  bool *v41; 
  int v42; 
  int v43; 
  char v44[16]; 
  char v45[16]; 

  v3 = TripPoint;
  v5 = MitigationType;
  DeviceAttachmentBaseRefWithTag = IoGetDeviceAttachmentBaseRefWithTag(
                                     *((_DEVICE_OBJECT **)ThermalZone + 6),
                                     0x67446F50ui64);
  v7 = DeviceAttachmentBaseRefWithTag;
  if( DeviceAttachmentBaseRefWithTag )
    DeviceNode = DeviceAttachmentBaseRefWithTag->DeviceObjectExtension->DeviceNode;
  else
    DeviceNode = 0i64;
  if( DeviceNode && *(&stru_140C00F40 + 1194) > 5u && tlgKeywordOn((__int64)&stru_140C00F40 + 4776, 0x800000000000i64) )
  {
    v11 = *((_BYTE *)ThermalZone + 65);
    v12 = *((_BYTE *)ThermalZone + 228) == 0;
    v23 = &v15;
    v15 = !v12;
    v24 = 1;
    v25 = 0;
    v28 = 0;
    v31 = 0;
    v34 = 0;
    v37 = 0;
    v40 = 0;
    v16 = v11 & 1;
    v26 = &v16;
    v29 = &v17;
    v32 = &v19;
    v35 = (int *)&v20;
    v17 = (v11 & 4) != 0;
    v38 = (int *)&v21;
    v27 = 1;
    v30 = 1;
    v33 = 4;
    v36 = 4;
    v18 = v10 > v3;
    v43 = 0;
    v39 = 4;
    v42 = 1;
    v13 = *(const WCHAR **)(v9 + 136);
    v41 = &v18;
    v19 = v5;
    v20 = v10;
    v21 = v3;
    tlgCreate1Sz_wchar_t((__int64)v44, v13);
    tlgCreate1Sz_wchar_t((__int64)v45, v14);
    tlgWriteTransfer_EtwWriteTransfer(
      (__int64)&stru_140C00F40 + 4776,
      (unsigned __int8 *)byte_1400298FD,
      0i64,
      0i64,
      0xBu,
      &v22);
  }
  if( v7 )
    ObfDereferenceObjectWithTag(v7, 0x67446F50ui64);
}

Referenced by:

PopSqmThermalCriticalShutdown
PopSqmThermalHibernate