Vampire The Masquerade: Bloodlines
Isolating the problem
The first step is to find out who is printing the error message. Is it vampire.exe or one of the Source engine DLLs it loads?
To find that out I used grep in a Cygwin shell but I could easily have used the DOS findstr command or one of any number of programs offering to find strings in files.
It so happens the message was contained in engine.dll, one of the Source engine files. Let's disassemble the file with W32Dasm!
Jump to a section
intro | part 1: Isolating the problem | part 2: Disassembly | part 3: GlobalMemoryStatus() | part 4: The solution | part 5: Patches | part 6: Low res textures