On Monday, 17 December 2012 at 09:29:28 UTC, Walter Bright wrote:
On 12/17/2012 1:15 AM, Paulo Pinto wrote:
http://www.hopperapp.com/
I really like the way it generates pseudo-code and basic block
graphs out of
instruction sequences.
I looked at their examples. Sorry, that's just step one of
reverse engineering an object file. It's a loooooong way from
turning it into source code.
For example, consider an optimizer that puts variables int x,
class c, and pointer p all in register EBX. Figure that one out
programmatically. Or the result of a CTFE calculation. Or a
template after it's been expanded and inlined.
I didn't say it was easy, but it is possible.
You don't need to fully get the source code of CTFE or templates.
It suffices to get the general algorithm behind the code, and
that is impossible to hide, unless the developer resorts to
cryptography.
Then again, I heard that universities no longer teach assembly.
--
Paulo