I am not used to avx syntax avxmnemonic ymm0,ymm1,ymm2 yet
which is annoying
outc db 32 dup("0")
asciimul dw 1000,100,10,1,1000,100,10,1,1000,100,10,1,1000,100,10,1
digits = ascii input
lea eax, outc
lea ebx, asciimul
vmovaps ymm0, digits
vmovups ymm7, [eax]
vmovups ymm6, [ebx]
vpsubb ymm1, ymm0, ymm7
VPUNPCKLBW ymm1, ymm2, ymm0
; VPUNPCKHBW ymm1, ymm2, ymm0
vpmullw ymm4,ymm1,ymm6
VPHADDW ymm1,ymm2,ymm3
vmovd eax,xmm3