32 #ifndef ZYDIS_DECODER_H
33 #define ZYDIS_DECODER_H
137 const void* buffer,
size_t bufferLen, uint64_t instructionPointer,
Includes and defines some default datatypes.
Defines the basic ZydisDecodedInstruction and ZydisDecodedOperand structs.
ZYDIS_EXPORT ZydisStatus ZydisDecoderInitEx(ZydisDecoder *decoder, ZydisMachineMode machineMode, ZydisAddressWidth addressWidth, ZydisDecodeGranularity granularity)
Initializes the given ZydisDecoder instance.
uint8_t ZydisDecodeGranularity
Defines the ZydisDecodeGranularity datatype.
Definition: Decoder.h:51
struct ZydisDecoder_ ZydisDecoder
Defines the ZydisDecoder struct.
ZydisDecodeGranularities
Decoder modes defining how granular the instruction should be decoded.
Definition: Decoder.h:57
@ ZYDIS_DECODE_GRANULARITY_MAX_VALUE
Maximum value of this enum.
Definition: Decoder.h:80
@ ZYDIS_DECODE_GRANULARITY_FULL
Full physical and semantic instruction-decoding.
Definition: Decoder.h:76
@ ZYDIS_DECODE_GRANULARITY_MINIMAL
Minimal instruction decoding without semantic analysis.
Definition: Decoder.h:72
@ ZYDIS_DECODE_GRANULARITY_DEFAULT
Defaults to ZYDIS_DECODE_GRANULARITY_FULL.
Definition: Decoder.h:61
ZYDIS_EXPORT ZydisStatus ZydisDecoderDecodeBuffer(const ZydisDecoder *decoder, const void *buffer, size_t bufferLen, uint64_t instructionPointer, ZydisDecodedInstruction *instruction)
Decodes the instruction in the given input buffer.
ZYDIS_EXPORT ZydisStatus ZydisDecoderInit(ZydisDecoder *decoder, ZydisMachineMode machineMode, ZydisAddressWidth addressWidth)
Initializes the given ZydisDecoder instance.
General helper and platform detection macros.
uint8_t ZydisMachineMode
Defines the ZydisMachineMode datatype.
Definition: SharedTypes.h:65
uint8_t ZydisAddressWidth
Defines the ZydisAddressWidth datatype.
Definition: SharedTypes.h:110
Status code definitions and check macros.
uint32_t ZydisStatus
Defines the ZydisStatus datatype.
Definition: Status.h:48
Defines the ZydisDecodedInstruction struct.
Definition: DecoderTypes.h:740
Defines the ZydisDecoder struct.
Definition: Decoder.h:87
ZydisDecodeGranularity granularity
Definition: Decoder.h:90
ZydisAddressWidth addressWidth
Definition: Decoder.h:89
ZydisMachineMode machineMode
Definition: Decoder.h:88