Hi,
is there a way to disable or patch out crypto stuff permanently? I mean, no matter, what "key packet" you'll send, the client accepts it, responses that a valid packet has received (e.g. 0x010A chara server) but sends not encrypted packets and also accepts unencrypted packets?
The c# version of server is done, without crypto stuff. If you ignore these packets and continue with chara data for example, you'll get til chara screen with this emu. But there is a drawback, you can't create charas, join world, ... these packets aren't send from client, because crypto stuff was not validated. For the newest client, protocol hasn't changed til this point, that means, you'll get as ever to chara selection. Dumping and binary injecting blar0's public key works too. Address, where key is found has changed. It's now found at 0x00F4F650 in raw hex dump. (change to 0xF52050 in replace_pub.c).
If've ignored inter server communication between lobby and chara (regarding "ping" packets). Lobby server is sending ping packets at a defined interval, so that you won't disconnect. The connection is stable, no disconnects or crashs, but as explained no interaction is possible.
Blar0 if you got a clou how to disable crypto, it would be nice if you can post the addresses what to patch or assembler instructions. Thx.