Zydis
v3.2.0
|
Go to the source code of this file.
Data Structures | |
struct | ZydisDecoderTreeNode_ |
Defines the ZydisDecoderTreeNode struct. More... | |
struct | ZydisInstructionEncodingInfo_ |
Defines the ZydisInstructionEncodingInfo struct. More... | |
Macros | |
#define | ZYDIS_INSTR_ENC_FLAG_HAS_MODRM 0x01 |
The instruction has an optional modrm byte. More... | |
#define | ZYDIS_INSTR_ENC_FLAG_HAS_DISP 0x02 |
The instruction has an optional displacement value. More... | |
#define | ZYDIS_INSTR_ENC_FLAG_HAS_IMM0 0x04 |
The instruction has an optional immediate value. More... | |
#define | ZYDIS_INSTR_ENC_FLAG_HAS_IMM1 0x08 |
The instruction has a second optional immediate value. More... | |
#define | ZYDIS_INSTR_ENC_FLAG_FORCE_REG_FORM 0x10 |
The instruction ignores the value of modrm.mod and always assumes modrm.mod == 3 ("reg, reg" - form). More... | |
Typedefs | |
typedef ZyanU8 | ZydisDecoderTreeNodeType |
Defines the ZydisDecoderTreeNodeType data-type. More... | |
typedef ZyanU16 | ZydisDecoderTreeNodeValue |
Defines the ZydisDecoderTreeNodeValue data-type. More... | |
typedef struct ZydisDecoderTreeNode_ | ZydisDecoderTreeNode |
Defines the ZydisDecoderTreeNode struct. More... | |
typedef ZyanU8 | ZydisInstructionEncodingFlags |
Defines the ZydisInstructionEncodingFlags data-type. More... | |
typedef struct ZydisInstructionEncodingInfo_ | ZydisInstructionEncodingInfo |
Defines the ZydisInstructionEncodingInfo struct. More... | |
Functions | |
ZYAN_INLINE const ZydisDecoderTreeNode * | ZydisDecoderTreeGetRootNode (void) |
Returns the root node of the instruction tree. More... | |
ZYDIS_NO_EXPORT const ZydisDecoderTreeNode * | ZydisDecoderTreeGetChildNode (const ZydisDecoderTreeNode *parent, ZyanU16 index) |
Returns the child node of parent specified by index . More... | |
ZYDIS_NO_EXPORT void | ZydisGetInstructionEncodingInfo (const ZydisDecoderTreeNode *node, const ZydisInstructionEncodingInfo **info) |
Returns information about optional instruction parts (like modrm, displacement or immediates) for the instruction that is linked to the given node . More... | |
Variables | |
const ZydisDecoderTreeNode | zydis_decoder_tree_root |
#define ZYDIS_INSTR_ENC_FLAG_FORCE_REG_FORM 0x10 |
The instruction ignores the value of modrm.mod
and always assumes modrm.mod == 3
("reg, reg" - form).
Instructions with this flag can't have a SIB byte or a displacement value.
#define ZYDIS_INSTR_ENC_FLAG_HAS_DISP 0x02 |
The instruction has an optional displacement value.
#define ZYDIS_INSTR_ENC_FLAG_HAS_IMM0 0x04 |
The instruction has an optional immediate value.
#define ZYDIS_INSTR_ENC_FLAG_HAS_IMM1 0x08 |
The instruction has a second optional immediate value.
#define ZYDIS_INSTR_ENC_FLAG_HAS_MODRM 0x01 |
The instruction has an optional modrm byte.
typedef struct ZydisDecoderTreeNode_ ZydisDecoderTreeNode |
Defines the ZydisDecoderTreeNode
struct.
typedef ZyanU8 ZydisDecoderTreeNodeType |
Defines the ZydisDecoderTreeNodeType
data-type.
typedef ZyanU16 ZydisDecoderTreeNodeValue |
Defines the ZydisDecoderTreeNodeValue
data-type.
typedef ZyanU8 ZydisInstructionEncodingFlags |
Defines the ZydisInstructionEncodingFlags
data-type.
typedef struct ZydisInstructionEncodingInfo_ ZydisInstructionEncodingInfo |
Defines the ZydisInstructionEncodingInfo
struct.
Values that represent zydis decoder tree node types.
ZYDIS_NO_EXPORT const ZydisDecoderTreeNode* ZydisDecoderTreeGetChildNode | ( | const ZydisDecoderTreeNode * | parent, |
ZyanU16 | index | ||
) |
Returns the child node of parent
specified by index
.
parent | The parent node. |
index | The index of the child node to retrieve. |
ZYAN_INLINE const ZydisDecoderTreeNode* ZydisDecoderTreeGetRootNode | ( | void | ) |
Returns the root node of the instruction tree.
ZYDIS_NO_EXPORT void ZydisGetInstructionEncodingInfo | ( | const ZydisDecoderTreeNode * | node, |
const ZydisInstructionEncodingInfo ** | info | ||
) |
Returns information about optional instruction parts (like modrm, displacement or immediates) for the instruction that is linked to the given node
.
node | The instruction definition node. |
info | A pointer to the ZydisInstructionParts struct. |
|
extern |