So, to start off, I am by no means a coding professional. I barely passed my grade 11 programming class, and after over 3 years, I remember none of it. However, I still want to learn how to read any program's source code. More specifically, I want to be able to read "Microsoft Activator 2.5.3 (Microsoft Toolkit)" code. I want to learn how it works, and whether it is injecting anything other than a product key into my PC...
So how do I do it? I looked online and couldn't find anything on how to read raw source code (from a .exe file in this case), so i'm asking the smart people of TekSyndicate on how to do it.
Hopefully someone can give me some inside and help! Thanks! :D
For most closed-source applications, you can't. They're obfuscated in such a way that they're not meant to be read or modified by anyone except the developer.
Your only real way of doing this is to reverse engineer the code and attempt to interpret what it does. This gets pretty involved. You'll need to be very familiar with how different languages work and be extremely friendly with a debugger in order to properly reconstruct the code yourself.
You can always play around in a virtual machine and closely monitor what the application does from start to finish to get an idea of what it does.
Not much help, I know, but what I can tell you is most, if not all, 3rd party activation warez do contain malware, and depending on how long they've been doing it, it can be very well hidden and hard to detect.
Your best bet would be to activate whatever Microsoft products you have with actual keys.
it's not that it's "obfuscated", it's that you don't have the source code. You have a compiled binary. In this case, the source code is somewhere at Microsoft.
Once a program is compiled, it's pretty much game over for tinkering with the src. The compiler compiles the files so only the appropriate interpreter can read and execute the files.
There may be some program that can reverse compile some files, but i highly doubt you would ever find one which can do it properly for anything other than a standard "Hello world" program.
Source code is human readable, but once you compile it; the compiler translates the source into machine code. Made for machines. You're not gonna be able to read that.
You can use disassemblers to reverse engineer programs. Note that you'll probably need a bit of assembly knowledge, at the very least.
ltrace, strace, etc (I don't know the Windows equivalent) can also be used to figure what the program is doing. Using some tool to track system calls (which is what strace does on Linux) would probably be the easiest way to find what its doing to your machine. You'd need to run the program from a VM to be safe though.