PopAcquireCoolingInterface

INT64 __fastcall PopAcquireCoolingInterface(INT64 a1){
  IRP *Irp; 
  IRP *v3; 
  __int64 v4; 
  unsigned int v5; 
  Irp = IoAllocateIrp(*(_BYTE *)(*(_QWORD *)(a1 + 48) + 76i64), 0);
  v3 = Irp;
  if( Irp )
  {
    v4 = *((_QWORD *)Irp + 23);
    *(_QWORD *)(v4 - 40) = 0i64;
    *(_QWORD *)(v4 - 64) = &GUID_THERMAL_COOLING_INTERFACE;
    *(_QWORD *)(v4 - 48) = a1 + 88;
    *(_WORD *)(v4 - 72) = 2075;
    *(_DWORD *)(v4 - 56) = 65592;
    *((_DWORD *)Irp + 12) = -1073741637;
    v5 = IoSynchronousCallDriver(*(_DEVICE_OBJECT **)(a1 + 48), Irp);
    IoFreeIrp(v3);
  }
  else
  {
    return(unsigned int)-1073741670;
  }
  return v5;
}

Referenced by:

PopAssociateThermalRequest
PopCoolingExtensionPnpNotification