DragonHunter the "Advanced cracker" I Believe you went too fast in order to gain money ;D. First your protection will be cracked in 1 second. You must have a server verification for this, Else you can just replace your system folder like the others said. And why do you make it a standalone program like macdonald said? Makes no sense. Make a dll and attach it to l2.exe then make the game client require this dll to communicate with server.
You can try this:
1) Make your module change the blowfish key in engine.dll @ DLL_PROCESS_ATTACH ( Easy to bypass by remove module and change blowfish to current one, but that is how nophx by fyyre does it )
2) Step 1 + Make a connection between the client module and server, Server send like a "ping" to the client, If the client + ( module ) not give any answer the socket will be disconnected etc. It exist many ways to do this, One way is to use gameguard querys. ( Harder to bypass )
Good luck :)
ps, loled hard to this part ::).
tip:
Lock Process
Get system default LCID and compare
Maybe file system checksums checks downloaded from a server
Check for bounded ip's etc
Many more ways, But search for window text for 1euro each string and searching for running .dll files is just noobish idea and you know that.