x86 向けのコードをベースにしているので、ポインタの計算とかはたいてい 32bit で行なわれていた
mov %edx, %eax
でもこれだと x86-64 ではポインタが壊れてしまう
しかし、 malloc(10) など小さい allocation とかだと32bit におさまる数値がかえってきたりするため、デカいデータになってはじめてバグが再現したりする