Откуда оно береться? оператором new возвращаеться 0, а GetLastError возвращает 988 - Invalid access to memory location.
Пахнет heap corruption. Проверь new/delete в других частях кода - всё правильно? Так же попробуй gflags.exe (Start->Run->gflags). Закладка Image Flags. Выберай свой екзешник. Включай "Enable heap *".