decompiler

Blitz3D Forums/Blitz3D Programming/decompiler

blade007(Posted 2007) [#1]
did blitz every make a decomplier for *.exe to *.bb ,or aleast an unoffical website?


_33(Posted 2007) [#2]
What would you understand with labels such as a_000021, c_000012.

Say:
 l_000009% = PeekInt (b_000119[l_000002+11]\b_000199, l_000004)


Not to mention that it would be in a function such as:
 Function f_000038(l_000001%, l_000002%)



blade007(Posted 2007) [#3]
.....what?


blade007(Posted 2007) [#4]
is that written in c++?


_33(Posted 2007) [#5]
.....what?
That's what I tought.

That's written in Blitz3D but since usually a decompiler can't retrieve the original labels (which are gone from being compiled byte code), the decompiler converts everything to numeric labels such as the example I posted.


blade007(Posted 2007) [#6]
so did they(someone) make a decomplier?


blade007(Posted 2007) [#7]
oh i get it


_33(Posted 2007) [#8]
I don't have time to make a decompiler. I'm spending time on something more constructive.


blade007(Posted 2007) [#9]
sorry


_33(Posted 2007) [#10]
Well why would you even want to decompile code??? IMHO it's useless.


blade007(Posted 2007) [#11]
say like ,u make an exe and deleted the original source code ,and u wanted to make an update for the game.


Naughty Alien(Posted 2007) [#12]
..backup is not good enough for that purpose?


blade007(Posted 2007) [#13]
well what if u want to decomplier some 1 elses?


Yahfree(Posted 2007) [#14]
wouldnt that be some sort of piracy? stealing source code (no offense puki :D)


blade007(Posted 2007) [#15]
lol nevermind


blade007(Posted 2007) [#16]
ahh dont eat me!


Who was John Galt?(Posted 2007) [#17]
blade-

No I'm pretty sure such a beast doesn't exist. I imagine it is unlikely one ever will be. It would be quite a tall order.


Paul "Taiphoz"(Posted 2007) [#18]
there was one, but it only returned 90% of your code, and all of the code was in 1 single bb file, and not in the same order as the original source. which meant that if it was your code you could put it all back together easy enough, but if it was not your code you would probably only be able to steal some of the functions.

No I dont have it any more , was about 3 years ago, maby longer.


bytecode77(Posted 2007) [#19]
it is NOT possible to de-compile an exe to bb or to c++.
it is only possible to de-compile an exe to assembly. but thats useless...

i know people, who only save as exe and not as bb. this is stupid :/


popcade(Posted 2007) [#20]
For compiled machine code, you can't reverse it completely because they're re-arranged by the compiler.

BTW, what's your intention for this? It's very doubtful and your words makes you sounds very immature, if you're planning to stealing some else's work, what you'll get is just banned.


Vertigo(Posted 2007) [#21]
You can decompile .net exes to misl which is rather very hackable. One can disasm an exe to its native machine language. You have to consider how much chopping and modifying the linker and compiler do to your code when it is made into an exe file. The are arranged by blitzcc into native code for x86 platforms. Sure you can take this code, but it will be nothing like youre used to, nor would it be(sanely) possible to port it back into blitz code. Reverse engineering executable files takes patience and a LONG LONG time if one were to do so. Its not like a simple file converter here, you wouldnt be taking apart a puzzle or anything. Rather taking a shotgun to it and trying to put it back together at a molecular level haha


Seldon(Posted 2007) [#22]
A Blitz EXE is a funny thing in a way. It is basically a run-time module that reads the resource number 111 from the resource section of the EXE. The resource number 111 is your own Blitz program (compiled in real x86 code I guess or maybe byte-code). The run-time then makes the final touches to the Blitz module and runs it.


_33(Posted 2007) [#23]
I would prefer to think that it's byte code because of it's speed (relative to C code, or to BM code).


jfk EO-11110(Posted 2007) [#24]
No, I guess it's machine code, but there are tons of stability-for-dummies built in that's why it's slower than optimized pure C or so. Example:

for i=1 to 2 step -1

I remember several compilers that will produce an endlessloop here, where Blitz simply skips the loop. Some benchmark tests I remember showed a Blitz FOR loop reaches about 67% of the speed of an equivalent code in C++.