Hey everyone

I just released the first version of a 80x86 disassembler I wrote.
diStorm is an 80x86 disassembler module both for Python and as a C library file.
The first version is capable of decoding all 80x86 related instruction set in 16 and 32 bits modes.
It decodes instructions as accurately as possible.
For more info, please visit http://ragestorm.net/distorm/

Hope this one will help the community,
have fun  ;)

Posted on 2005-06-06 01:25:36 by arkon
Uhm, why is this in the "Recruitment" forum? :?:

Interesting work BTW :)
Posted on 2005-06-06 18:05:38 by QvasiModo
your program has a memory leak. it allocates some memory, and isnt freed when the disassembled stuff is emtpyed from the ll_get function., i try and delete [] head and di but it doesnt work. also, ive noticed afer a few hunred thousand calls, it will get an error accessing a memory address.
Posted on 2005-06-20 17:47:55 by Qages

Doing delete [] won't work, since it's not an array, but another data structure I came up with.
Anyways, I will contact you on ICQ to get more details in order to fix the memory leak.

Thanks for the information
Posted on 2005-07-09 06:02:33 by arkon
You should consider some better memory handling method than manual new/delete - perhaps smart pointers? Manual memory (de)allocation is pretty error prone.
Posted on 2005-07-09 07:34:33 by f0dder
Because the decoding routine has to return a mass of structures filled with the decoded instructions' information,
I couldn't allow using malloc per structure. The code is written in C as I stated before, so no NEW/DELETE operators are used, or any "smart pointers", etc..

There seems to be some memory leak indeed, I'm working on it.

Posted on 2005-07-09 14:00:02 by arkon
Anyways, I just uploaded new version for the C library, it seems to me that the leak is fixed.
I would appreciate if Qages could give it a try.

Posted on 2005-07-09 15:11:12 by arkon