x64 / ntdllntoskrnl /

_IRP

← 10.0.28000.3231 22 builds latest →
struct _IRP {
short Type;/* 0x0 2 */
unsigned short Size;/* 0x2 2 */
unsigned short AllocationProcessorNumber;/* 0x4 2 */
unsigned short Reserved1;/* 0x6 2 */
unsigned long Flags;/* 0x10 4 */
unsigned long Reserved2;/* 0x14 4 */
union {
long IrpCount;/* 0x18 4 */
void* SystemBuffer;/* 0x18 8 */
} AssociatedIrp;/* 0x18 8 */
/* ── cacheline 1 boundary (64 bytes) ── */
char RequestorMode;/* 0x40 1 */
unsigned char PendingReturned;/* 0x41 1 */
char StackCount;/* 0x42 1 */
char CurrentLocation;/* 0x43 1 */
unsigned char Cancel;/* 0x44 1 */
unsigned char CancelIrql;/* 0x45 1 */
char ApcEnvironment;/* 0x46 1 */
unsigned char AllocationFlags;/* 0x47 1 */
union {
void* IoRingContext;/* 0x48 8 */
};/* 0x48 8 */
union {
struct {
union {
void (*UserApcRoutine)(void*, struct _IO_STATUS_BLOCK*, unsigned long);/* 0x58 8 */
void* IssuingProcess;/* 0x58 8 */
};/* 0x58 8 */
union {
void* UserApcContext;/* 0x60 8 */
};/* 0x60 8 */
} AsynchronousParameters;/* 0x58 16 */
} Overlay;/* 0x58 16 */
void (*CancelRoutine)(struct _DEVICE_OBJECT*, struct _IRP*);/* 0x68 8 */
void* UserBuffer;/* 0x70 8 */
union {
struct {
union {
void* DriverContext[4];/* 0x78 32 */
};/* 0x78 32 */
char* AuxiliaryBuffer;/* 0xa0 8 */
union {
unsigned long PacketType;/* 0xb8 4 */
};/* 0xb8 8 */
void* IrpExtension;/* 0xc8 8 */
} Overlay;/* 0x78 88 */
void* CompletionKey;/* 0x78 8 */
} Tail;/* 0x78 88 */
};
size 208 (0xd0)25 members0 holespadding 04 cachelines
Used in (20)