From: Willow on
Hi,
CRUDASM3 has now hit release 7. I (re-)started the project January 1st
or so of this year. It disassembles 32bit x86 Windows EXE/DLL files. I'm
trying to find bugs in it and get some feedback from users about what
works and what doesn't.
If anyone out there is interested, the disassembler was written in C++
and is released under GPL 3. It is driven by a script file that
specifies all the information needed to automatically generate a
disassembelr, an emulator, and a decompiler, all from one script file.
I was disappointed to learn that the DCC Decompiler doesn't structure
switch/cases, as it looks like I'm headed into uncharted territory in
trying to make a disassembler that (in the future) does control flow
analysis.
In particular I plan to generate HLL-style switch blocks, loops, and
if's, and recognize ||'s and &&s. I understand Hex Rays might do this
already but mine is open source and will support 64bit EXE/DLLs
eventually, plus it will be free.
I do not know how good REC or other decompilers are at structuring
switch's. I run into trouble with interval theory, dominators, and
depth-first spanning trees. All this theory makes me dizzy, but it's OK,
I'm on Winter break and I can handle it!
If interested please check out the latest version at the top of this
site: http://code.google.com/p/vm64dec/downloads/list
If you try it on an EXE/DLL, I'd appreciate a reply posted to
alt.lang.asm so I can get some feedback, if it's not too much trouble.
Thanks!

Willow