call stack
INI:
mss64.dll!00007ff8f5a35eb5() Unknown
mss64.dll!00007ff8f5a37211() Unknown
mss64.dll!00007ff8f5a282da() Unknown
mss64.dll!00007ff8f5a302b4() Unknown
mss64.dll!00007ff8f5a1dd1a() Unknown
eqgame.exe!00007ff73957904a() Unknown
eqgame.exe!00007ff739578f3b() Unknown
eqgame.exe!00007ff739577fae() Unknown
eqgame.exe!00007ff7395777b8() Unknown
eqgame.exe!00007ff739414c65() Unknown
eqgame.exe!00007ff7394af6b1() Unknown
eqgame.exe!00007ff7394d861e() Unknown
eqgame.exe!00007ff7394c61f8() Unknown
eqgame.exe!00007ff73958a745() Unknown
eqgame.exe!00007ff739590300() Unknown
eqgame.exe!00007ff739920d5a() Unknown
[Frames may be missing, no binary loaded for KERNEL32.DLL]
[External Code]
The game crashed while starting a sound effect, here is the stack resolved against it, from the top down:
| Frame | Function | What it is |
|---|
| mss64.dll ×5 | Miles internals | Inside AIL_start_sample |
| +0x34904A | FUN_140348f50 | Sets up a 3D sound and plays it: sets the sample file, 3D position, distances, loop count, reverb, and volume, then calls AIL_start_sample. The return address is the instruction right after that call, which confirms Miles crashed while starting the sample. |
| +0x348F3B | FUN_140348d20 | Takes a free sound slot from a pool, does a distance check against the listener, and calls the play function through a vtable |
| +0x347FAE | FUN_140347a10 | Sound-emitter update |
| +0x3477B8 | FUN_1403477a0 | Small wrapper around the emitter update |
| +0x1E4C65 | FUN_1401e4c40 | Per-object sound update. It runs several sound subsystems in turn and is skipped when a “disabled” flag is set. |
| +0x27F6B1, +0x2A861E, +0x2961F8 | Large unnamed functions | The per-frame world and game processing |
| +0x35A745 | FUN_140359e00 | One frame of the main loop |
| +0x360300 | FUN_14035f870 | WinMain and the outer game loop |
| +0x6F0D5A | CRT startup | The program’s entry point |
What this means: on an ordinary frame, the game updated a sound emitter in the world, decided a 3D sound was in range, and asked Miles to play it. Miles then crashed inside its own code.
The most likely causes, in order:
- The audio device changed or disappeared (headset unplugged, Bluetooth dropout, or a change to the Windows default output device). Starting a sample is exactly where Miles first touches a stale device.
- A bad sound file. AIL_set_sample_file accepted it, but decoding fails once playback starts. The launcher’s file check fixes this.
- Heap corruption from somewhere else. This is only likely if the crash is new and you can reproduce it.