What have you built this with ? I downloaded the latest version of ML.EXE but it throws an error on "movd".
Microsoft (R) Macro Assembler Version 14.15.26730.0
Copyright (C) Microsoft Corporation. All rights reserved.
Assembling: K:\asm32\gabriel\2\dwordToByte.asm
K:\asm32\gabriel\2\dwordToByte.asm(90) : error A2070:invalid instruction operands
K:\asm32\gabriel\2\dwordToByte.asm(91) : error A2070:invalid instruction operands
K:\asm32\gabriel\2\dwordToByte.asm(182) : error A2070:invalid instruction operands
OK, that was easy to fix, just added DWORD PTR to the three lines and it builds into an object module with no problems.
I prototyped the three procedures so it should be callable using normal MASM "invoke".
dwordToByte PROTO dst:dword, src:dword, sz:dword
dwordToByteSSE2 PROTO dst:dword, src:dword, sz:dword
dwordToByteSSSE3 PROTO dst:dword, src:dword, sz:dword
Now all I need is the data format that calls the three procedures.