Yes, it doesn't look like a simple over-run to me. In the heap which fails on the assert, it has this second stack inside it (not near the ends) which is very malformed. It looks more like some kind of object overrun rather than the heap.