PiUEventDequeuePendingEventWorker

VOID *__fastcall PiUEventDequeuePendingEventWorker(__int64 a1, void *a2, char a3){
  void **v4; 
  void **v5; 

  v4 = *(void ***)a2;
  if( v4[1] != a2 || (v5 = (void **)*((_QWORD *)a2 + 1), *v5 != a2) )
    __fastfail(3u);
  *v5 = v4;
  v4[1] = v5;
  if( !a3 )
    --*(_DWORD *)(a1 + 128);
  PiUEventDereferenceEventEntry(*((PVOID *)a2 + 3));
  return ExFreePoolWithTag(a2, 0x59706E50u);
}

Referenced by:

PiUEventFreeClientRegistrationContext
PiUEventHandleGetEvent
PiUEventHandleVetoEvent
PiUEventNotifyClient