PopReadyChildWake

INT64 __fastcall PopReadyChildWake(_PO_DEVICE_NOTIFY *Notify, _PO_DEVICE_NOTIFY_ORDER *Order, INT64 OrderLevel){
  char v3; 
  bool v4; 
  INT64 result; 
  _LIST_ENTRY *Flink; 
  _LIST_ENTRY *Blink; 
  _LIST_ENTRY *v9; 
  v4 = 0;
  if( !v3 || (result = LODWORD(Notify[5].DriverName), (result & 0x30000) != 0) )
  {
    result = ++Notify->ActiveParent;
    if( (unsigned int)result >= Notify->ParentCount )
    {
      Flink = Notify->Link.Flink;
      if( (_PO_DEVICE_NOTIFY *)Notify->Link.Flink->Blink != Notify
        || (Blink = Notify->Link.Blink, (_PO_DEVICE_NOTIFY *)Blink->Flink != Notify)
        || (Blink->Flink = Flink,
            Flink->Blink = Blink,
            result = (INT64)&Order->OrderLevel[0].ReadyS0 + 64 * Notify->OrderLevel + 8 * Notify->OrderLevel,
            v9 = *(_LIST_ENTRY **)(result + 8),
            v9->Flink != (_LIST_ENTRY *)result) )
      {
        __fastfail(3u);
      }
      Notify->Link.Flink = (_LIST_ENTRY *)result;
      Notify->Link.Blink = v9;
      v9->Flink = &Notify->Link;
      *(_QWORD *)(result + 8) = Notify;
      v4 = Notify->OrderLevel == (unsigned __int8)OrderLevel;
    }
  }
  LOBYTE(result) = v4;
  return result;
}

Referenced by:

PopCompleteNotifyTransitionCommon