Does this software contain Windows-specific code? The best tool for debugging these sorts of issues is valgrind, but it's only available on Linux (and I think OSX).

There are similar tools available for Windows, but they aren't free (so far as I know). What you want is a dynamic code analysis tool.

By the way, usage of STL containers does not guarantee lack of out-of-bounds access. It's true that Microsoft's vector implementation does bounds-checking by default on both [] and at(), but this can be disabled (and often is for speed reasons), and checking of [] is actually not mandated by the standard so if you aren't using the default Dinkumware implementation, you may not even get this.