Chances are one already exists out there, so a search on google should do it.
If this is for educational purposes, all you have to do is learn x86 assembly and C, and in this case, Win32 APIs, and get familiar with some tools like OllyDBG (debugger) and IDA Pro(disassembler). That should be enough for you to be able to understand what some piece of compiled code does, and all you'd have to do after that is modify or transform that piece of code to do what you want (as opposed to what it does now).
Reading SICP doesn't have anything to do with 'cracking', but it has everything to do with programming and this board and being a good programmer will also make one a much better reverse engineer(someone who understands programs in whatever form they are in), which is what you seem to be interested in.