Question IDA Pro

tippythop

Distinguished
Jun 5, 2009
7
0
18,510
0
Anyone skilled with IDA Pro? I have a puzzle I'm trying to solve with an mmo game client whose servers no longer exist. The game client used DirectPlay8 to access the game server. The main issue I am am having is finding where in the mess of code that the game client calls to directplay. I am skilled in C++ and can decipher a decent bit of what goes on with the game client. But for some reason nowhere does it mention calls to directplay. The only thing I see really is calls to ole32.dll.

The game client when inspected with process explorer shows DPNET.dll being hooked by the game client but the debugger in IDA Pro when ran doesn't show dpnet.dll being called at all. What I either want to do is re-code a dp8 server or completely re-write a new game client using something like raknet. The game client in wireshark does an initial call to find the dp8 server on an ip address which is visible in ida pro. This initial call according to microsoft dp8 protocol is an enum query. I have coded a small dp8 server with matching GUID of the game client but the game client just doesn't see it. I thought this would be as simple as making a dp8 server with matching guid of the app but I'm getting nowhere.

Any help would be appreciated. I haven't found a single person that knows anything about Directplay8 or its network protocols.
 
I can't help you, but say two things:
  • what you're doing is most probably against ToS of said game. It does not matter whether their servers are off;
  • it's quite popular in applications (games especially) to have presence of debugger, and act differently. IDA is quite popular tool.
 

tippythop

Distinguished
Jun 5, 2009
7
0
18,510
0
I can't help you, but say two things:
  • what you're doing is most probably against ToS of said game. It does not matter whether their servers are off;
  • it's quite popular in applications (games especially) to have presence of debugger, and act differently. IDA is quite popular tool.
This game is abandonware as the company no longer is in operation, as well as copyrights. I've already done my research on it prior to even think about messing with it. Believe it or not I've actually talked to the ceo and creator on a phone call and he didn't mind me messing with it but wouldn't give me any insight into how the back end ran which I don't blame him. However since I have free reign over it I am just trying to get some kind of framework laid out for it.
 

ASK THE COMMUNITY