PopThermalTraceRundownEvents
VOID __stdcall PopThermalTraceRundownEvents(){
__int64 *i;
char v1;
_DEVICE_OBJECT *v2;
unsigned __int8 v3;
char v4;
_DEVICE_OBJECT *DeviceAttachmentBaseRefWithTag;
_DEVICE_OBJECT *v6;
_WORD *DeviceNode;
int v8;
int v9;
__int16 v10;
__int16 v11;
int v12;
__int16 v13;
int v14;
int v15;
int v16;
__int64 v17;
_EVENT_DATA_DESCRIPTOR UserData;
__int64 v19;
int v20;
int v21;
__int16 *v22;
__int64 v23;
int *v24;
__int64 v25;
int *v26;
__int64 v27;
int *v28;
__int64 v29;
int *v30;
__int64 v31;
__int64 *v32;
__int64 v33;
__int16 *v34;
__int64 v35;
__int64 v36;
int v37;
int v38;
PopAcquireRwLockShared((UINT64)&PopPolicyDeviceLock);
for( i = (__int64 *)*(&stru_140C23628 + 181); i != (__int64 *)((char *)&stru_140C23628 + 1448); i = (__int64 *)*i )
{
v1 = *((_BYTE *)i + 65);
if( (v1 & 2) != 0 )
{
v2 = (_DEVICE_OBJECT *)i[6];
v3 = v1 & 1;
LODWORD(v17) = *((unsigned __int8 *)i + 73);
v4 = v1 & 4;
v16 = *((unsigned __int8 *)i + 72);
v15 = *((_DWORD *)i + 20);
v14 = *((unsigned __int8 *)i + 69);
v11 = 0;
v13 = 0;
v10 = 0;
LOWORD(v12) = 0;
if( PopDiagHandleRegistered )
{
if( EtwEventEnabled(PopDiagHandle, &POP_ETW_EVENT_THERMAL_ZONE_RUNDOWN) )
{
DeviceAttachmentBaseRefWithTag = IoGetDeviceAttachmentBaseRefWithTag(v2, 0x67446F50ui64);
v6 = DeviceAttachmentBaseRefWithTag;
if( DeviceAttachmentBaseRefWithTag )
DeviceNode = DeviceAttachmentBaseRefWithTag->DeviceObjectExtension->DeviceNode;
else
DeviceNode = 0i64;
if( DeviceNode )
{
v8 = DeviceNode[64] >> 1;
UserData.Ptr = (unsigned __int64)&v10;
v10 = v8;
*(_QWORD *)&UserData.Size = 2i64;
v19 = *((_QWORD *)DeviceNode + 17);
v20 = 2 * v8;
v9 = *((unsigned __int16 *)i + 520);
v11 = v4 != 0;
v37 = v9;
v22 = &v11;
v24 = &v14;
LOWORD(v12) = v3;
v26 = &v12;
v28 = &v15;
v30 = &v16;
v32 = &v17;
v13 = (unsigned __int16)v9 >> 1;
v34 = &v13;
v36 = i[131];
v21 = 0;
v23 = 2i64;
v25 = 4i64;
v27 = 2i64;
v29 = 4i64;
v31 = 4i64;
v33 = 4i64;
v35 = 2i64;
v38 = 0;
EtwWriteEx(PopDiagHandle, &POP_ETW_EVENT_THERMAL_ZONE_RUNDOWN, 0i64, 0, 0, 0, 0xAu, &UserData);
}
if( v6 )
ObfDereferenceObjectWithTag(v6, 0x67446F50ui64);
}
}
}
}
PopReleaseRwLock((_POP_RW_LOCK *)&PopPolicyDeviceLock);
}Referenced by:
PopDiagTraceControlCallback