From c02dd23b12fd687a041ab3b872b3f989cd1342dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguy=E1=BB=85n=20Gia=20Phong?= Date: Mon, 18 Nov 2024 15:13:17 +0900 Subject: [PATCH] Make compatible with Zydis 4 --- src/e9tool/e9x86_64.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/e9tool/e9x86_64.cpp b/src/e9tool/e9x86_64.cpp index 6a7f5cf..03eb3a4 100644 --- a/src/e9tool/e9x86_64.cpp +++ b/src/e9tool/e9x86_64.cpp @@ -152,8 +152,7 @@ void e9tool::getInstrInfo(const ELF *elf, const Instr *I, InstrInfo *info, ZydisDecodedOperand operands[ZYDIS_MAX_OPERAND_COUNT]; ZyanStatus result = ZydisDecoderDecodeFull(&decoder, - elf->data + I->offset, I->size, D, operands, ZYDIS_MAX_OPERAND_COUNT, - 0); + elf->data + I->offset, I->size, D, operands); if (!ZYAN_SUCCESS(result) || I->size != D->length || D->operand_count > sizeof(info->op) / sizeof(info->op[0])) error("failed to decompress instruction at address 0x%lx; decode " @@ -336,7 +335,7 @@ void e9tool::getInstrInfo(const ELF *elf, const Instr *I, InstrInfo *info, info->string.section = elf->strs + shdr->sh_name; result = ZydisFormatterFormatInstruction(&formatter, D, operands, D->operand_count_visible, info->string.instr, - sizeof(info->string.instr)-1, I->address); + sizeof(info->string.instr)-1, I->address, ZYAN_NULL); if (!ZYAN_SUCCESS(result)) error("failed to decompress instruction at address 0x%lx; " "formatting failed", I->address);