Wie gesagt, ein einziges Byte an anderer/neuer Stelle im
RAM und schon kann es das gewesen sein.
Mit FastMM kann man sich gern eine Memory-Map von seinem Programm generieren lassen und sieht dann wie/wo der Speicher belegt ist.
Da klappt es in beiden Varianten sowohl als 64bit als auch als 32bit Version.
Warum es mit 64 Bit klappt, hatte ich ja bereits geschrieben.
Nimm dir einen der abschließenden Punkte von Post #2 und schon ist das Problem behoben.