PopTraceThermalZonePassiveHistogram

CHAR __fastcall PopTraceThermalZonePassiveHistogram(INT64 a1){
  DEVICE_OBJECT *DeviceAttachmentBaseRefWithTag; 
  DEVICE_OBJECT *v3; 
  __int64 v4; 
  const WCHAR *v5; 
  struct _EVENT_DATA_DESCRIPTOR v7; 
  _DWORD *v8; 
  __int64 v9; 
  __int64 v10; 
  _DWORD v11[2]; 
  char v12[16]; 
  int *v13; 
  int v14; 
  int v15; 
  __int64 *v16; 
  int v17; 
  int v18; 
  int v19[24]; 
  DeviceAttachmentBaseRefWithTag = IoGetDeviceAttachmentBaseRefWithTag(*(DEVICE_OBJECT **)(a1 + 48), 0x67446F50ui64);
  v3 = DeviceAttachmentBaseRefWithTag;
  if( DeviceAttachmentBaseRefWithTag )
    v4 = *(_QWORD *)(*((_QWORD *)DeviceAttachmentBaseRefWithTag + 39) + 40i64);
  else
    v4 = 0i64;
  if( v4 )
  {
    LOBYTE(DeviceAttachmentBaseRefWithTag) = PopDiagSnapPassiveHistogram(a1 + 504, v19);
    if( (_BYTE)DeviceAttachmentBaseRefWithTag || PopThermalTelemetryVerbosity )
    {
      DeviceAttachmentBaseRefWithTag = *(DEVICE_OBJECT **)(a1 + 1048);
      if( (unsigned int)dword_140C021E8 > 5 )
      {
        LOBYTE(DeviceAttachmentBaseRefWithTag) = tlgKeywordOn((__int64)&dword_140C021E8, 0x400000000000i64);
        if( (_BYTE)DeviceAttachmentBaseRefWithTag )
        {
          v11[1] = 0;
          v8 = v11;
          v10 = *(_QWORD *)(v4 + 136);
          v11[0] = *(unsigned __int16 *)(v4 + 128);
          v9 = 2i64;
          tlgCreate1Sz_wchar_t((__int64)v12, v5);
          v15 = 0;
          v18 = 0;
          v16 = PopThermalTrackingThresholds;
          v13 = v19;
          v14 = 84;
          v17 = 21;
          LOBYTE(DeviceAttachmentBaseRefWithTag) = tlgWriteTransfer_EtwWriteTransfer(
                                                     (__int64)&dword_140C021E8,
                                                     (unsigned __int8 *)&byte_1400271CF,
                                                     0i64,
                                                     0i64,
                                                     7u,
                                                     &v7);
        }
      }
    }
  }
  if( v3 )
    LOBYTE(DeviceAttachmentBaseRefWithTag) = ObfDereferenceObjectWithTag(v3, 0x67446F50ui64);
  return(char)DeviceAttachmentBaseRefWithTag;
}

Referenced by:

PopThermalSxEntry
PopThermalTelemetryWorker
PopThermalZoneRemove