This corruption can be observed when compiling with Optimization on and local Double variables are stored in XMM6 onwards.
Code blocks similar to the {$IFNDEF LINUX} blocks in sha256_sse4 from Intel are needed for the X64 assembler routines which use XMM6-XMM15.
aesni(en|de)crypt128 (xmm6-xmm11), aesni(en|de)crypt192 (xmm6-xmm13), aesni(de|en)crypt256 (xmm6-xmm15)
MakeDecrKeyAesNi (xmm6-xmm7), AesNiEncryptOFB_128 (xmm6-xmm11), AesNiEncryptOFB_256 (xmm6-xmm15).