struct _KALPC_MESSAGE { struct _LIST_ENTRY Entry;/* 0x0 8 */ struct _ALPC_PORT* PortQueue;/* 0x8 4 */ struct _ALPC_PORT* OwnerPort;/* 0xc 4 */ struct _ETHREAD* WaitingThread;/* 0x10 4 */ union { struct { unsigned long QueueType : 3;/* 0x14:0 4 */ unsigned long QueuePortType : 4;/* 0x14:3 4 */ unsigned long Canceled : 1;/* 0x14:7 4 */ unsigned long Ready : 1;/* 0x14:8 4 */ unsigned long ReleaseMessage : 1;/* 0x14:9 4 */ unsigned long SharedQuota : 1;/* 0x14:10 4 */ unsigned long ReplyWaitReply : 1;/* 0x14:11 4 */ unsigned long OwnerPortReference : 1;/* 0x14:12 4 */ unsigned long ReceiverReference : 1;/* 0x14:13 4 */ unsigned long ViewAttributeRetrieved : 1;/* 0x14:14 4 */ unsigned long InDispatch : 1;/* 0x14:15 4 */ unsigned long InCanceledQueue : 1;/* 0x14:16 4 */ } s1;/* 0x14 4 */ unsigned long State;/* 0x14 4 */ } u1;/* 0x14 4 */ long SequenceNo;/* 0x18 4 */ union { struct _EPROCESS* QuotaProcess;/* 0x1c 4 */ void* QuotaBlock;/* 0x1c 4 */ };/* 0x1c 4 */ struct _ALPC_PORT* CancelSequencePort;/* 0x20 4 */ struct _ALPC_PORT* CancelQueuePort;/* 0x24 4 */ long CancelSequenceNo;/* 0x28 4 */ struct _LIST_ENTRY CancelListEntry;/* 0x2c 8 */ struct _KALPC_RESERVE* Reserve;/* 0x34 4 */ struct _KALPC_MESSAGE_ATTRIBUTES MessageAttributes;/* 0x38 40 */ /* ── cacheline 1 boundary (64 bytes) ── */ void* DataUserVa;/* 0x60 4 */ struct _ALPC_COMMUNICATION_INFO* CommunicationInfo;/* 0x64 4 */ struct _ALPC_PORT* ConnectionPort;/* 0x68 4 */ struct _ETHREAD* ServerThread;/* 0x6c 4 */ void* WakeReference;/* 0x70 4 */ void* WakeReference2;/* 0x74 4 */ void* ExtensionBuffer;/* 0x78 4 */ unsigned long ExtensionBufferSize;/* 0x7c 4 */ /* ── cacheline 2 boundary (128 bytes) ── */ struct _PORT_MESSAGE PortMessage;/* 0x80 24 */};size 152 (0x98)23 members0 holespadding 03 cachelines
Used in (4)