Hacker News new | ask | show | jobs
by derac 20 days ago
This is cool, maybe "target left arm" implies that it's your left, when targetting them and you're facing each other. So, their right arm.
1 comments

Btw, I recently did my first patches with ghidra. Is there any way to avoid jumping into a code cave by shifting all the instructions up then updating any statements referring to those memory locations? Seems like it should be simple enoigh in theory, but I didn't find an implementation on a cursory search. Could probably code up a plugin pretty easily.
It's basically re-linking the executable. Way too easy to shoot foot - miss one reference and things break in a spectacular, or, worse, subtle fashion. Which means: you definitely need to know where all the references are and what they point to.

References are under no obligation to be presented in a sensible, decompiler-friendly way.

Which is why "jump out into the patch, jump back in" is such a staple of patching. The other way is the hard way, full of pitfalls and potential issues.

Thanks for this explanation!
How can you be dead certain that all references are known in Ghidra?

Just non-disassembled function or unidentified struct would ruin your plans…