32 #ifndef ZYDIS_SEGMENT_H
33 #define ZYDIS_SEGMENT_H
35 #include <Zycore/Defines.h>
57 #define ZYDIS_MAX_INSTRUCTION_SEGMENT_COUNT 9
Defines the basic ZydisDecodedInstruction and ZydisDecodedOperand structs.
#define ZYDIS_EXPORT
Symbol is exported in shared library builds.
Definition: Defines.h:67
Status code definitions and check macros.
ZYDIS_EXPORT ZyanStatus ZydisGetInstructionSegments(const ZydisDecodedInstruction *instruction, ZydisInstructionSegments *segments)
Returns offsets and sizes of all logical instruction segments (e.g.
enum ZydisInstructionSegment_ ZydisInstructionSegment
Defines the ZydisInstructionSegment struct.
#define ZYDIS_MAX_INSTRUCTION_SEGMENT_COUNT
Definition: Segment.h:57
struct ZydisInstructionSegments_ ZydisInstructionSegments
Defines the ZydisInstructionSegments struct.
ZydisInstructionSegment_
Defines the ZydisInstructionSegment struct.
Definition: Segment.h:69
@ ZYDIS_INSTR_SEGMENT_NONE
Definition: Segment.h:70
@ ZYDIS_INSTR_SEGMENT_XOP
The XOP prefix bytes.
Definition: Segment.h:82
@ ZYDIS_INSTR_SEGMENT_IMMEDIATE
The immediate bytes.
Definition: Segment.h:114
@ ZYDIS_INSTR_SEGMENT_OPCODE
The opcode bytes.
Definition: Segment.h:98
@ ZYDIS_INSTR_SEGMENT_MODRM
The ModRM byte.
Definition: Segment.h:102
@ ZYDIS_INSTR_SEGMENT_MVEX
The MVEX prefix bytes.
Definition: Segment.h:94
@ ZYDIS_INSTR_SEGMENT_REX
The effective REX prefix byte.
Definition: Segment.h:78
@ ZYDIS_INSTR_SEGMENT_SIB
The SIB byte.
Definition: Segment.h:106
@ ZYDIS_INSTR_SEGMENT_REQUIRED_BITS
The minimum number of bits required to represent all values of this enum.
Definition: Segment.h:123
@ ZYDIS_INSTR_SEGMENT_EVEX
The EVEX prefix bytes.
Definition: Segment.h:90
@ ZYDIS_INSTR_SEGMENT_VEX
The VEX prefix bytes.
Definition: Segment.h:86
@ ZYDIS_INSTR_SEGMENT_DISPLACEMENT
The displacement bytes.
Definition: Segment.h:110
@ ZYDIS_INSTR_SEGMENT_PREFIXES
The legacy prefixes (including ignored REX prefixes).
Definition: Segment.h:74
@ ZYDIS_INSTR_SEGMENT_MAX_VALUE
Maximum value of this enum.
Definition: Segment.h:119
Information about a decoded instruction.
Definition: DecoderTypes.h:1252
Defines the ZydisInstructionSegments struct.
Definition: Segment.h:130
ZyanU8 count
The number of logical instruction segments.
Definition: Segment.h:134
ZyanU8 size
The size of the segment, in bytes.
Definition: Segment.h:148
struct ZydisInstructionSegments_::@15 segments[ZYDIS_MAX_INSTRUCTION_SEGMENT_COUNT]
ZydisInstructionSegment type
The type of the segment.
Definition: Segment.h:140
ZyanU8 offset
The offset of the segment relative to the start of the instruction (in bytes).
Definition: Segment.h:144