EXETOOLS FORUM

EXETOOLS FORUM (https://forum.exetools.com/index.php)
-   x64 OS (https://forum.exetools.com/forumdisplay.php?f=44)
-   -   x64 Disassembler (https://forum.exetools.com/showthread.php?t=12527)

Enigma 10-28-2009 21:58

x64 Disassembler
 
Guys, could anyone suggest x64 disassembler written in Dephi (pascal)?

Maybe just simple disasm, or at least length disasm.

Engines written in assembler could be also suggested.. one of such I saw in the main thread, BeaEngine...

Thanks!

Av0id 10-29-2009 00:49

checkout distorm

Enigma 10-29-2009 01:14

Quote:

Originally Posted by Av0id (Post 65687)
checkout distorm

It is written on C... I need pascal, or, at least, assembler...

lena151 10-29-2009 01:59

There comes one with the fdbg package (in fasm, only for non-commercial use).

Latest version is here:
Quote:

http://fdbg.x86asm.net/fdbg0020.zip
lena151.

Enigma 10-29-2009 17:41

lena151 thanks, it is much closer to the stuff that I want, but it's sources are realy huge.. I wanna something more simple... moreover it is not for commercial use..

Do you use this engine in your Larp?

metr0 10-29-2009 21:22

As lARP is a commercial protection system (I can only assume you're referring to lARP64), probably not. Thought she might have done so for x86 lARP, that's up to her to answer.

Where's the problem with C code anyway? It should be pretty easy to convert it to Delphi/Pascal. Hde64 is written in C as well, if you'd like to have a look (which is worth the risk, I guess ;)).

lena151 10-29-2009 23:06

Quote:

Originally Posted by metr0 (Post 65695)
As lARP is a commercial protection system (I can only assume you're referring to lARP64), probably not. Thought she might have done so for x86 lARP, that's up to her to answer.

Quote:

Originally Posted by Enigma (Post 65693)
Do you use this engine in your Larp?


Like metr0 says, indeed not, for neither version though its sources gave me a few ideas and are recommendable to anybody who wants to venture in 64bit assembler. Feryno took the time to comment them meticulously, maybe they earn a place in Evilcry's webpointers topic (?)

Slightly off-topic but the debugger itself has become pretty neat too since the last updates ;)

lena151.

Enigma 10-30-2009 17:19

Quote:

Originally Posted by metr0 (Post 65695)
As lARP is a commercial protection system (I can only assume you're referring to lARP64), probably not. Thought she might have done so for x86 lARP, that's up to her to answer.

Where's the problem with C code anyway? It should be pretty easy to convert it to Delphi/Pascal. Hde64 is written in C as well, if you'd like to have a look (which is worth the risk, I guess ;)).

Not for commercial use does not mean that is can't be used for commercial products, it probably just requires additional fees for author (licensing).

Rewrite C to Pascal, oh, nice idea, but I do not want to spend my time to develop a bicycle, when it is already developed...

Quote:

Originally Posted by lena151 (Post 65695)
Slightly off-topic but the debugger itself has become pretty neat too since the last updates

Just interesting to know, about what debugger you are talking? :)

metr0 10-30-2009 18:42

I think she talks about fdbg itself (link here), a x64 debugger.

Thanks for the notice on the commercial part, didn't think about fees and the like. As for the Pascal thing, I'm not sure if there's one (no popular example coming to my mind), but you might want to try to contact SuperCracker as I remember him writing a disassembly engine in Delphi hell of a time ago (didn't hear any news though).

redbull 11-05-2009 00:34

Enigma,

Have you tried linking the c library in delphi and using external far calls?

Here is a good article.

http://rvelthuis.de/articles/articles-cobjs.html

Duuno if there are 64bit restrictions.

Just link the .LIB file into your delphi source.

This might need some tweaking.
Code:

{$LINK 'distorm.lib'}

function distorm_decode64(codeOffset: LongInt;code:pchar; codeLen: Integer;DecodeType:shortint; DecodeRestult : array of _DecodedInst; maxInstructions:integer; var usedInstructionsCount:integer) : Integer; cdecl; external;

Give it a shot with other libraries if Distorm does not do it for you.

Enigma 11-05-2009 05:25

hi redbull, thanks for useful post...
But I need to compile disasm in FreePascal x64, your example will work only in 32b Delphi... I'm not sure that FPC allows to link x64 libs...
I thought that there maybe are some open sources disasms written in pascal, so it will be very easy to embed it to my project.. But seems there is no..

redbull 11-06-2009 14:37

Yo Yo,

Did you see the posting about the new BEADissasembler
It comes with a delphi lib and does 64 bit. (Have not confirmed it myself).

Newest release yesterday
http://beatrix2004.free.fr/BeaEngine/index1.php

Enigma 11-06-2009 18:00

Thanks redbull, I've already seen this engine!

Seems you are right, I will try to make something magic with lib (or obj) and compile it with Free Pascal!

iconstart 04-11-2013 13:29

Quote:

Originally Posted by lena151 (Post 65689)
There comes one with the fdbg package (in fasm, only for non-commercial use).

Latest version is here:

lena151.

thanks for
sharing

virologizt 05-13-2013 17:13

Or you can take a look at Cheat Engine source code. Everything except for the kernel driver was written in Free Pascal. :)


All times are GMT +8. The time now is 20:04.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX