For some reason using movaps randomly threw segfault exceptions on me, even though the adress%16=0;
You learn something new every day [smile]
also, although it is valid to use the memory as one of the parameters for the parallel instructions, you're better off movups'ing the values to a MMX register instead of using the memory location directly because of the same reason to favor movups over movaps.
DONT SAY I DIDNT WARNED YOU!