MarkdownPad 2 Free - Limitations |
Declaimer:
I am not responsible for the misuse of the material you are about to see.
This article is only for educational purposes.
Hands on...
Tools needed:
- .NET Decompiler (Reflector.NET, ILSpy);
- IDA;
- Hex editor (anyone).
Open MarkdownPad.exe with the decompiler, look around just to have some understanding about the application. Open the License Engine, partially the "VerifyLicense" method which looks like this...
As you can see, in the very first verification if the license key or the email are empty or null our license is invalid, which is our the case. So, the strategy is very simple, we will modify the "return false;" to "return true;", easy, one byte patch.
Let's open MardownPad with IDA and locate the hexadecimal sequence to the our "return false;".
To easily locate the "VerifyLicense" method just focus the "Function Window" and press ALT-T. After you locate the method, let's take a look to the mnemonics...
A very nice list of CIL instructions.
So the idea is really simple, just change the byte 0x16 to 0x17. Switch to the hex editor in the "ldc.i4.0"...
So the idea is really simple, just change the byte 0x16 to 0x17. Switch to the hex editor in the "ldc.i4.0"...
Search for the selected pattern "16 2A 02 02 ..." in the hex editor...
Now, just change the 0x16 to 0x17 (which means "ldc.i4.1") and save the file. To verify the modification open again the MarkdownPad executable with your .NET decompiler and you should see something like this in the "VerifyLicense" method...
All done! :)
Support the developers, if you want MarkdownPad 2 Pro, just go to this page (it's only 15$).