Function at 0x1006c4e0
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov eax, dword [esp + 0x10]
movd xmm2, dword [esp + 0x14]
movdqu xmm0, xmmword [0x102b1410]
mov ecx, dword [esp + 8]
psrad xmm0, xmm2
mov edx, dword [esp + 0xc]
movdqu xmm1, xmmword [0x102b1400]
cmp eax, 0xb
jl 0x1006c95c
test dl, 3
jne 0x1006c7a1
mov ebx, edx
and ebx, 0xf
je 0x1006c5ec
neg ebx
test bl, 8
je 0x1006c589
movq xmm5, qword [ecx]
add ecx, 8
add eax, 0xfffffffe
movq xmm6, qword [edx]
movdqa xmm4, xmm5
paddd xmm4, xmm6
pxor xmm6, xmm5
movdqa xmm3, xmm6
pandn xmm6, xmm5
movdqa xmm7, xmm4
pand xmm3, xmm4
pand xmm7, xmm0
pslld xmm4, xmm2
por xmm3, xmm6
psrad xmm3, 0x1f
movdqa xmm5, xmm3
pxor xmm3, xmm1
pand xmm5, xmm0
pcmpeqd xmm5, xmm7
pand xmm4, xmm5
pandn xmm5, xmm3
por xmm4, xmm5
movq qword [edx], xmm4
add edx, 8
test bl, 4
je 0x1006c5ec
movd xmm5, dword [ecx]
add ecx, 4
add eax, 0xffffffff
movd xmm6, dword [edx]
movdqa xmm4, xmm5
paddd xmm4, xmm6
pxor xmm6, xmm5
movdqa xmm3, xmm6
pandn xmm6, xmm5
movdqa xmm7, xmm4
pand xmm3, xmm4
pand xmm7, xmm0
pslld xmm4, xmm2
por xmm3, xmm6
psrad xmm3, 0x1f
movdqa xmm5, xmm3
pxor xmm3, xmm1
pand xmm5, xmm0
pcmpeqd xmm5, xmm7
pand xmm4, xmm5
pandn xmm5, xmm3
por xmm4, xmm5
movd dword [edx], xmm4
add edx, 4
mov ebx, eax
and eax, 7
sar ebx, 3
test cl, 0xf
jne 0x1006c6e0
nop dword [eax]
movdqu xmm7, xmmword [ecx]
movdqu xmm3, xmmword [edx]
movdqa xmm6, xmm7
paddd xmm6, xmm3
pxor xmm3, xmm7
movdqa xmm5, xmm3
pandn xmm3, xmm7
movdqa xmm4, xmm6
pand xmm5, xmm6
pand xmm4, xmm0
pslld xmm6, xmm2
por xmm5, xmm3
psrad xmm5, 0x1f
movdqa xmm3, xmm5
pxor xmm5, xmm1
pand xmm3, xmm0
pcmpeqd xmm3, xmm4
pand xmm6, xmm3
pandn xmm3, xmm5
movdqu xmm5, xmmword [ecx + 0x10]
por xmm6, xmm3
add ecx, 0x20
movdqu xmmword [edx], xmm6
movdqu xmm6, xmmword [edx + 0x10]
movdqa xmm4, xmm6
pxor xmm6, xmm5
paddd xmm4, xmm5
movdqa xmm3, xmm6
pandn xmm6, xmm5
pand xmm3, xmm4
movdqa xmm5, xmm4
pslld xmm4, xmm2
por xmm3, xmm6
pand xmm5, xmm0
psrad xmm3, 0x1f
movdqa xmm7, xmm3
pxor xmm3, xmm1
pand xmm7, xmm0
pcmpeqd xmm7, xmm5
pand xmm4, xmm7
pandn xmm7, xmm3
por xmm4, xmm7
movdqu xmmword [edx + 0x10], xmm4
add edx, 0x20
add ebx, 0xffffffff
jne 0x1006c600
jmp 0x1006c95c
movdqu xmm7, xmmword [ecx]
movdqu xmm3, xmmword [edx]
movdqa xmm6, xmm3
pxor xmm3, xmm7
paddd xmm6, xmm7
movdqa xmm5, xmm3
pandn xmm3, xmm7
pand xmm5, xmm6
movdqa xmm4, xmm6
pslld xmm6, xmm2
por xmm5, xmm3
pand xmm4, xmm0
psrad xmm5, 0x1f
movdqa xmm3, xmm5
pxor xmm5, xmm1
pand xmm3, xmm0
pcmpeqd xmm3, xmm4
pand xmm6, xmm3
pandn xmm3, xmm5
movdqu xmm5, xmmword [ecx + 0x10]
por xmm6, xmm3
add ecx, 0x20
movdqu xmmword [edx], xmm6
movdqu xmm6, xmmword [edx + 0x10]
movdqa xmm4, xmm6
pxor xmm6, xmm5
paddd xmm4, xmm5
movdqa xmm3, xmm6
pandn xmm6, xmm5
pand xmm3, xmm4
movdqa xmm5, xmm4
pslld xmm4, xmm2
por xmm3, xmm6
pand xmm5, xmm0
psrad xmm3, 0x1f
movdqa xmm7, xmm3
pxor xmm3, xmm1
pand xmm7, xmm0
pcmpeqd xmm7, xmm5
pand xmm4, xmm7
pandn xmm7, xmm3
por xmm4, xmm7
movdqu xmmword [edx + 0x10], xmm4
add edx, 0x20
add ebx, 0xffffffff
jne 0x1006c6e0
jmp 0x1006c95c
mov ebx, eax
and eax, 7
sar ebx, 3
test cl, 0xf
jne 0x1006c8a0
nop dword [eax]
nop dword [eax]
movdqu xmm7, xmmword [ecx]
movdqu xmm3, xmmword [edx]
movdqa xmm6, xmm7
paddd xmm6, xmm3
pxor xmm3, xmm7
movdqa xmm5, xmm3
pandn xmm3, xmm7
movdqa xmm4, xmm6
pand xmm5, xmm6
pand xmm4, xmm0
pslld xmm6, xmm2
por xmm5, xmm3
psrad xmm5, 0x1f
movdqa xmm3, xmm5
pxor xmm5, xmm1
pand xmm3, xmm0
pcmpeqd xmm3, xmm4
pand xmm6, xmm3
pandn xmm3, xmm5
movdqu xmm5, xmmword [ecx + 0x10]
por xmm6, xmm3
movdqa xmm4, xmm5
add ecx, 0x20
movdqu xmmword [edx], xmm6
movdqu xmm6, xmmword [edx + 0x10]
paddd xmm4, xmm6
pxor xmm6, xmm5
movdqa xmm3, xmm6
pandn xmm6, xmm5
movdqa xmm5, xmm4
pand xmm3, xmm4
pand xmm5, xmm0
pslld xmm4, xmm2
por xmm3, xmm6
psrad xmm3, 0x1f
movdqa xmm7, xmm3
pxor xmm3, xmm1
pand xmm7, xmm0
pcmpeqd xmm7, xmm5
pand xmm4, xmm7
pandn xmm7, xmm3
por xmm4, xmm7
movdqu xmmword [edx + 0x10], xmm4
add edx, 0x20
add ebx, 0xffffffff
jne 0x1006c7c0
jmp 0x1006c95c
movdqu xmm7, xmmword [ecx]
movdqu xmm3, xmmword [edx]
movdqa xmm6, xmm7
paddd xmm6, xmm3
pxor xmm3, xmm7
movdqa xmm5, xmm3
pandn xmm3, xmm7
movdqa xmm4, xmm6
pand xmm5, xmm6
pand xmm4, xmm0
pslld xmm6, xmm2
por xmm5, xmm3
psrad xmm5, 0x1f
movdqa xmm3, xmm5
pxor xmm5, xmm1
pand xmm3, xmm0
pcmpeqd xmm3, xmm4
pand xmm6, xmm3
pandn xmm3, xmm5
movdqu xmm5, xmmword [ecx + 0x10]
por xmm6, xmm3
add ecx, 0x20
movdqu xmmword [edx], xmm6
movdqu xmm6, xmmword [edx + 0x10]
movdqa xmm4, xmm6
pxor xmm6, xmm5
paddd xmm4, xmm5
movdqa xmm3, xmm6
pandn xmm6, xmm5
pand xmm3, xmm4
movdqa xmm5, xmm4
pslld xmm4, xmm2
por xmm3, xmm6
pand xmm5, xmm0
psrad xmm3, 0x1f
movdqa xmm7, xmm3
pxor xmm3, xmm1
pand xmm7, xmm0
pcmpeqd xmm7, xmm5
pand xmm4, xmm7
pandn xmm7, xmm3
por xmm4, xmm7
movdqu xmmword [edx + 0x10], xmm4
add edx, 0x20
add ebx, 0xffffffff
jne 0x1006c8a0
cmp eax, 4
jl 0x1006c9e3
nop dword [eax + eax]
nop dword [eax]
nop dword [eax + eax]
nop dword [eax]
movdqu xmm5, xmmword [ecx]
add eax, 0xfffffffc
add ecx, 0x10
movdqu xmm6, xmmword [edx]
movdqa xmm4, xmm5
paddd xmm4, xmm6
pxor xmm6, xmm5
movdqa xmm3, xmm6
pandn xmm6, xmm5
movdqa xmm7, xmm4
pand xmm3, xmm4
pand xmm7, xmm0
pslld xmm4, xmm2
por xmm3, xmm6
psrad xmm3, 0x1f
movdqa xmm5, xmm3
pxor xmm3, xmm1
pand xmm5, xmm0
pcmpeqd xmm5, xmm7
pand xmm4, xmm5
pandn xmm5, xmm3
por xmm4, xmm5
movdqu xmmword [edx], xmm4
add edx, 0x10
cmp eax, 4
jge 0x1006c980
test al, 2
je 0x1006ca42
movq xmm5, qword [ecx]
add ecx, 8
movq xmm6, qword [edx]
movdqa xmm4, xmm5
paddd xmm4, xmm6
pxor xmm6, xmm5
movdqa xmm3, xmm6
pandn xmm6, xmm5
movdqa xmm7, xmm4
pand xmm3, xmm4
pand xmm7, xmm0
pslld xmm4, xmm2
por xmm3, xmm6
psrad xmm3, 0x1f
movdqa xmm5, xmm3
pxor xmm3, xmm1
pand xmm5, xmm0
pcmpeqd xmm5, xmm7
pand xmm4, xmm5
pandn xmm5, xmm3
por xmm4, xmm5
movq qword [edx], xmm4
add edx, 8
test al, 1
je 0x1006ca97
movd xmm3, dword [ecx]
movd xmm4, dword [edx]
movdqa xmm7, xmm3
paddd xmm7, xmm4
pxor xmm4, xmm3
movdqa xmm5, xmm4
pandn xmm4, xmm3
pand xmm5, xmm7
por xmm5, xmm4
psrad xmm5, 0x1f
movdqa xmm6, xmm5
pxor xmm5, xmm1
pand xmm6, xmm0
pand xmm0, xmm7
pslld xmm7, xmm2
pcmpeqd xmm6, xmm0
pand xmm7, xmm6
pandn xmm6, xmm5
por xmm7, xmm6
movd dword [edx], xmm7
pop ebx
ret