AO not finding functions

Marius Grigoriu <[email protected]>
Newsgroups gmane.comp.emulators.winex.devel
Message-ID <[email protected]>
I've been spending quite a while on trying to track the latest crash 
with Anarchy Online. The crash is within one of the game dlls, not 
winex. warn+debugstr shows two error messages the game sends out and I 
suspect that it is related to the crash. I linked to part of my logfile 
for warn+debugstr, +seh, +snoop,+relay where I believe the bug might be 
happening. AO uses serialized objects to store certain data. The object 
is instantiated with a call to Instantiate.<class> where the class is 
stored in the blob read. The problem is that the game reports that the 
Instantiate function for that class is not found. When the dll 
containing the function is loaded, it is listed in the exports table, 
but there was no GetProcAddress even trying to look up the function. In 
the log, I believe that by the time it gets to CreateToolhelp32Snapshot, 
the error has already occurred. The log is mostly string function calls 
and I do see bits of the function signature, 
?Instantiate@RTriMesh_t@@SAPAV1@PAVObjectArchive_c@fun@@@Z, on various 
lines. There is a memcmp that compares the class name, RTriMesh_t 
against something, but its only for the first 3 bytes.


Any ideas on what might be going wrong? If the game creates a list of 
available functions eariler on, then the problem might not be in this 
part of the log. It's a bit daunting to wade through 1gig+ of logfile.

http://www.csh.rit.edu/~marius/winex/log5
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.