AlpcpInsertMessageCanceledQueue
VOID __fastcall AlpcpInsertMessageCanceledQueue(INT64 a1, INT64 a2){
volatile INT64 *v2;
v2 = (volatile INT64 *)(a1 + 136);
ExAcquirePushLockExclusiveEx(a1 + 136, 0i64);
*(_QWORD *)(a2 + 88) = *(_QWORD *)(a1 + 392);
*(_QWORD *)(a2 + 80) = a1 + 384;
**(_QWORD **)(a1 + 392) = a2 + 80;
*(_QWORD *)(a1 + 392) = a2 + 80;
*(_DWORD *)(a2 + 40) |= 0x10000u;
++*(_DWORD *)(a1 + 464);
if( (_InterlockedExchangeAdd64(v2, 0xFFFFFFFFFFFFFFFFui64) & 6) == 2 )
ExfTryToWakePushLock(v2);
KeAbPostRelease((PVOID)v2);
}Referenced by:
AlpcpCancelMessage
AlpcpDisconnectPort
AlpcpReturnMessageOnInsufficientBuffer