Когда сбой происходит внутри malloc или free, причиной, скорее всего, является повреждение кучи.Возможно, причина повреждения произошла в коде, не связанном с текущим стеком.Чтобы проверить, не повреждена ли куча, используйте
!heap –s –v
. Для этого вам понадобятся символы, заранее используйте
.symfix
Возможно, вы вообще не свободны из-за отсутствияСимволы стек отображается со смещением до ближайшего экспорта, отсюда и большое смещение (бесплатно + 0x1cc). Проверьте стек после .symfix и наслаждайтесь!
Чтобы найти основную причину повреждения памяти, можно использовать разные подходы, но, если это возможно, полезна полная страница.