diff --git a/src/Decoder.c b/src/Decoder.c index 5e5d0e3..ac48f27 100644 --- a/src/Decoder.c +++ b/src/Decoder.c @@ -3494,7 +3494,7 @@ static void ZydisSetEffectiveAddressWidth(ZydisDecoderContext* context, ZYDIS_ASSERT(context); ZYDIS_ASSERT(instruction); - ZydisBool hasOverride = definition->acceptsAddressSizeOverride && + const ZydisBool hasOverride = definition->acceptsAddressSizeOverride && (instruction->attributes & ZYDIS_ATTRIB_HAS_ADDRESSSIZE); switch (context->decoder->addressWidth) diff --git a/src/Utils.c b/src/Utils.c index a0ad7c9..2258aac 100644 --- a/src/Utils.c +++ b/src/Utils.c @@ -50,7 +50,7 @@ ZydisStatus ZydisCalcAbsoluteAddress(const ZydisDecodedInstruction* instruction, } if (operand->mem.base == ZYDIS_REGISTER_EIP) { - *address = (ZydisU64)((ZydisU32)instruction->instrAddress + instruction->length + + *address = ((ZydisU32)instruction->instrAddress + instruction->length + (ZydisU32)operand->mem.disp.value); return ZYDIS_STATUS_SUCCESS; }