The MOVDQU instruction is:
F3 0F 6F /r MOVDQU xmm1, xmm2/m128
Move unaligned packed integer values from xmm2/m128 to xmm1.
Comment #2 by bugzilla — 2020-08-12T04:32:35Z
What's happening is in iasm.d the operand size is encoded into 5 bit flags, and there isn't room for another _128 bit, so the assembler just accepts any size.
The solution is to refactor the way operand sizes are encoded to accept more values.