keystone icon indicating copy to clipboard operation
keystone copied to clipboard

adr register,constant error

Open 0xjacklove opened this issue 3 years ago • 0 comments

`>>> import keystone

import capstone KS_THUMB = keystone.Ks(keystone.KS_ARCH_ARM, keystone.KS_MODE_THUMB) encoding, count = KS_THUMB.asm("adr r8,0x8fb8",0x13AAE) bytes(encoding).hex() 'aff6f828'

` image

constant should be 0x8fb8, but when the code is decompiled, the constant becomes 0x12FB8

when i use capstone,the result becomes

`>>> import keystone

import capstone KS_THUMB = keystone.Ks(keystone.KS_ARCH_ARM, keystone.KS_MODE_THUMB) encoding, count = KS_THUMB.asm("adr r8,0x8fb8",0x13AAE) bytes(encoding).hex() 'aff6f828' codes = [] addr = 0x13AAE code = bytes(encoding) for i in CS_THUMB.disasm(code, addr): ... codes.append(i) ... codes [<CsInsn 0x13aae [aff6f828]: subw r8, pc, #0xaf8>]`

0xjacklove avatar Jun 07 '22 05:06 0xjacklove