Keeping in shape

Just seeing if I was still capable of breaking the typical registration check in a program. Today’s exercise was Konfabulator, a prettification program for Windows and the Mac. Long and the short of it. Find out where the registration code is stored. It was in the registry. Find out what the registration key is (Registration). Found two functions referencing the registry key as two separate strings (Bad optimization on the compiler). One of them looked like it was trying to check the registration code, the other made internet check calls (part of the registration process – it’s over the internet). Went to the call that wasn’t over the internet and backtracked it – it was a very short, stubby routine with an setnz immediately following the call to the check. Replaced this with an setz, and the program executed flawlessly.
I was attempting to produce a keygen, but the one byte change was easier. I’m not planning on using the software anyhow, this was just me trying something out.
On other details, I have a chunk of encrypted data that I need to decode. I’ve deduced the structure size based on repeating patterns, now I need to find out the encryption scheme for the data – that way we can upsize it to the windows systems. There’s encryption on the data. The key for encrypting the data is in the application. The only reasonable conclusion I can come to about the encryption is that it is intended to prevent people from porting their data from the old system to a new one.
Of course I went to the Konfabulator web site to find out that it’s all free gratis and for nothing now – they’ve been acquired by Yahoo.