Well, I wrote
a disassembler which is specifically designed for
humans to pick apart code and figure out what it does and/or how it
does it.
What does it do besides disassembling that helps humans figure out
the code?
It lets the human driving it interactively mark things as
"instruction", "8-byte number", "character string",
"pointer to memory
location", etc. The user can also define symbols (which appear in the
targets of jumps and branches when appropriate), add comments, and
suchlike. As an exmaple of the sort of thing it can produce, see
http://216.46.5.1:18804/, which is a text save straight from the
disassembler.
/~\ The ASCII der Mouse
\ / Ribbon Campaign
X Against HTML mouse at rodents.montreal.qc.ca
/ \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B