PopCompleteDirectedPowerTransitionCallback

INT64 __fastcall PopCompleteDirectedPowerTransitionCallback(INT64 a1, INT64 a2, INT64 a3){
  DEVICE_OBJECT *v4; 
  int v6; 
  UINT64 v7; 
  v4 = 0i64;
  v6 = *(_DWORD *)(a2 + 4);
  if( (int)a3 < 0 )
    v4 = *(DEVICE_OBJECT **)(a1 + 96);
  PopCompleteNotifyTransitionCommon(a2, (INT64 *)(*(_QWORD *)(a1 + 48) + 160i64), a3, v4);
  if( *(_BYTE *)a2 == 2 && v6 == 1 )
    PoFxIdleDevice(*(DEVICE_OBJECT **)(*(_QWORD *)(a1 + 48) + 32i64));
  return KeReleaseSemaphoreEx(*(KSEMAPHORE **)(a2 + 40), 0i64, 1i64, v7);
}

Referenced by:

PopFxCompleteDirectedPowerTransition
PopIssueDirectedPowerTransition