squidge
September 3rd, 2002, 22:24
I'm trying to find the serial checking algorithm in the program "PE Explorer" by HeavenTools, but seem to be having a hard time. I've DeDe'd the executable, which is in Delphi 3 format (from running PEID on it) and I've got a IDA and WDASM89 listing.
Now, upon select "About" from the help menu, it seems to call a routine at 42CA94 to check if the program is registered or not, and if not, puts up a nag box before the About box. If the program has expired, the nag box changes to a "Buy Info" and "Quit Program" box. This box seems to be created by a routine at 42FB50.
I notice that choosing the registration option and entering bad data doesn't give any clues like "Invalid serial code", but simply calls the same routine as the about box routine calls. Now considering I can't find any code in the registration form for checking or generating any kind of hash or serial, I can only assume it's done each time from 42CA94.
However, even running it through the debugger in W32DASM and through SoftICE, I fail to see any of my text that I previously entered into the registration box in any of the routines prior to the nag-box appearing.
Has anyone got some ideas on more how this program works? I'm not interested in a crack or keygen, but more about where in the program the actual checking algorithm is, so I can create a keygen for it. I can patch the program to be registered, but I'd rather not, and generate a valid serial without modifying the original code.
Now, upon select "About" from the help menu, it seems to call a routine at 42CA94 to check if the program is registered or not, and if not, puts up a nag box before the About box. If the program has expired, the nag box changes to a "Buy Info" and "Quit Program" box. This box seems to be created by a routine at 42FB50.
I notice that choosing the registration option and entering bad data doesn't give any clues like "Invalid serial code", but simply calls the same routine as the about box routine calls. Now considering I can't find any code in the registration form for checking or generating any kind of hash or serial, I can only assume it's done each time from 42CA94.
However, even running it through the debugger in W32DASM and through SoftICE, I fail to see any of my text that I previously entered into the registration box in any of the routines prior to the nag-box appearing.
Has anyone got some ideas on more how this program works? I'm not interested in a crack or keygen, but more about where in the program the actual checking algorithm is, so I can create a keygen for it. I can patch the program to be registered, but I'd rather not, and generate a valid serial without modifying the original code.