"pretty" example of DCC (GNU disassembler)
http://www.itee.uq.edu.au/~csmweb/dcc.html#thesis
but from above, sounds like SoftIce is way better.
Re: "pretty" example of DCC (GNU disassembler)
that link doesn't work for me todd
Jase
http://www.slideshowdesktop.com
View your images and photos on your desktop with ease using SlideShow Desktop, the desktop wallpaper manager for Microsoft Windows.
Re: "pretty" example of DCC (GNU disassembler)
Todd don't worry. Unless you write in straight assembly language, your source code is safe. See my responses to jase and kbomb.
Basically, I said that if the source code can be recovered, then why do backups? Just get Soft-Ice, and you can throw all your source away.
I have done a lot of assembly coding in the past, and have a lot of knowledge in how hackers work. They only have good assumptions in what a certain module is doing using a tool such as soft-ice. Yes they can get the functions as symbols, and can detect a function call by seeing what is pushed onto the stack. But no, they won't see your Super-Sophisticated 3-d cad source code.
A hacker cannot get the original Cor C++ source unless you give it to him/her.
Regards,
Paul McKenzie
You all missed a very important point!
Every one talking about whether reverse-engineering can give back exactly the same original C/C++ code or not. You all missed one important point. That is, the reverse engineered C/C++ code, no matter what they look like, they do indeed compile into exactly the same executable binary and do exactly the same thing your program does.
So, forget about whether the reverse engineered code looks like your original source code or not. That question is irrelevant since both will compile into exactly the same program executable binary.
The real question to ask is, looking at the reverse-engineered source code, can a potential hacker make any sense out of it? Given a little bit of skill, the answer is a definite YES.
And, if your original source code was written in a real bad coding style, chances are that the reverse-engineered code could be actually even easier to read, and hence makes more sense than your original source code!
Any one who knows he/she is not smart is smart.
Any one who knows he/she is smart is not smart.
You ask me if I am smart or not? Well...
I don't know - you tell me :-)
Can A block of code be stripped and used?
If a potential hacker can identify functions by using SI..aka Tools can he just get that function in bin/obj/exe form and use that somewhere else in his own project?
Rating Helps!!
Re: Can A block of code be stripped and used?
Sure it can be done. But it's all a balance of what it takes to write your own and what it takes to identify what a specific portion of an exe is trying to do.
There are cases where reverse engineering was done. One famous example is the RC4 algorithm. RSA never published RC4, but some one figured it out from the binary and released it on the net. Now every one has access to RC4. Mind you, though, you can not call your stuff RC4, because the name is trade-marked.
Any one who knows he/she is not smart is smart.
Any one who knows he/she is smart is not smart.
You ask me if I am smart or not? Well...
I don't know - you tell me :-)
Re: Getting C++ from original EXE
Sheesh, who would have known this would blowup into such a large thread? Ok, my bad.. you can't get the "exact" C++ code from an EXE using SoftICE. However, lets face it: hackers breaking/stealing our software suck. The threat is there. Even if they can't get the exact code, they can still get a different interpretation of it such as ASM code and work their way through to crack it.
My point was just that when you write an important product, you should consider making it that much harder for the hacker by including not-so-obvious keywords instead of bIsRegistered, how about using bIsR. Also including CRC checks can help prevent (or slow down) hex editors. Etc.
One of my products was hacked for every version I released, until I developed a Security class for it. This class included a multitude of techniques to help slow-down a hacker. No security will "stop" a hacker if he has enough time. But the goal is for the hacker to skip over yours saying "screw this one", and move on to the next app to crack.
Anyways, don't spend too much time on security. As the other posters explained, it is not worth wasting your time. But do include *some* security even if only minimal.
And thanks for the wonderful discussion on this topic. We definately have some experts on here! :)