Arm64 and Arm32 instruction information links are all 404
Describe the bug
Links presented for arm64 and arm32 instructions' descriptions are out of date. For example, umull points to:
https://www.keil.com/support/man/docs/armclang_asm/armclang_asm_pge1427897719730.htm
Offending instruction information With the instruction that causes the bug selected, please run the following commands in the Binary Ninja console and paste the output:
>>> from ehennenfent_binja_explain_instruction import debug_instruction
>>> debug_instruction(bv, here)
Address:
0x100003c5c
Architecture:
aarch64
bv.read:
087da99b
bv.get_disassembly:
umull x8, w8, w9
function.get_lifted_il_at:
x8 = mulu.dp.q(w8, w9)
function.get_lifted_ils_at:
[<llil: x8 = mulu.dp.q(w8, w9)>]
function.get_llil_at:
x8 = mulu.dp.q(w8, w9)
function.get_llils_at:
[<llil: x8 = mulu.dp.q(w8, w9)>]
architecture.get_low_level_il_from_bytes:
x8 = mulu.dp.q(w8, w9)
Expected behavior Clicking links in the Explain Instruction sidebar should lead to valid URLs for the instruction's documentation.
Platform Information (please complete the following information):
- Binary Ninja Version: 3.1.3645-dev
- OS: MacOS 12.5.1
- Python Interpreter MacPorts Python 3.10.6
Additional context Wayback machine shows the above link was valid on 9/2018: https://web.archive.org/web/20180914001719/http://www.keil.com/support/man/docs/armclang_asm/armclang_asm_pge1427897719730.htm
Just wanted to add that this is a great plugin, very useful and well-designed. Thank you for this!
P.S. For anyone stumbling across this issue before it gets fixed, as a horrible kludge workaround, I checked out the repo into my plugins folder and ran this inside of it:
grep -rl keil | xargs -L1 sed -i.bak 's+http://www.keil+https://web.archive.org/web/20180914001719/http://www.keil+'```