diff --git a/arch/arm64/disassembler/decode_scratchpad.c b/arch/arm64/disassembler/decode_scratchpad.c index c1f63c10a..4f5781a57 100644 --- a/arch/arm64/disassembler/decode_scratchpad.c +++ b/arch/arm64/disassembler/decode_scratchpad.c @@ -4625,7 +4625,7 @@ int decode_scratchpad(context* ctx, Instruction* instr) case ENC_BFI_BFM_32M_BITFIELD: case ENC_SBFIZ_SBFM_32M_BITFIELD: case ENC_UBFIZ_UBFM_32M_BITFIELD: - lsb = -IMMR % 32; + lsb = -(int64_t)IMMR % 32; width = IMMS + 1; break; default: