HalpUpdateCoolingPacket

char __fastcall HalpUpdateCoolingPacket(__int64 a1){
  unsigned __int8 v2; 
  char v3; 
  unsigned __int64 v4; 

  v2 = ExAcquireSpinLockExclusive((INT64 *)&CmpDummyThreadEvent + 490);
  v3 = *(&CmpDummyThreadEvent + 4072);
  v4 = v2;
  if( a1 && !*(&CmpDummyThreadEvent + 4072) )
  {
    *(&CmpDummyThreadEvent + 246) = *(_OWORD *)a1;
    *(&CmpDummyThreadEvent + 4072) = 1;
    *(&CmpDummyThreadEvent + 247) = *(_OWORD *)(a1 + 16);
    *(&CmpDummyThreadEvent + 248) = *(_OWORD *)(a1 + 32);
    *(&CmpDummyThreadEvent + 249) = *(_OWORD *)(a1 + 48);
    *(&CmpDummyThreadEvent + 250) = *(_OWORD *)(a1 + 64);
    *(&CmpDummyThreadEvent + 251) = *(_OWORD *)(a1 + 80);
    *(&CmpDummyThreadEvent + 252) = *(_OWORD *)(a1 + 96);
    *(&CmpDummyThreadEvent + 253) = *(_OWORD *)(a1 + 112);
    *(&CmpDummyThreadEvent + 508) = *(_QWORD *)(a1 + 72);
  }
  ExReleaseSpinLockExclusiveFromDpcLevel((INT64 *)&CmpDummyThreadEvent + 490);
  __writecr8(v4);
  return v3;
}

Referenced by:

HalpStartPccCommand