Function at 0x433560
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x7f7e10
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xa30
mov eax, dword [0x90cf34]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0xa3c], esi
push 0
push 2
mov dword [ebp - 0xa30], 0x22c
call dword [0x81032c]
mov ecx, dword [0x18011f4]
mov edx, 1
mov dword [ebp - 0xa40], eax
test eax, eax
je 0x43a29c
movups xmm0, xmmword [0x8d3d1c]
mov eax, dword [0x8d3d3c]
xor edi, edi
mov dword [ebp - 0x700], eax
movups xmmword [ebp - 0x720], xmm0
movups xmm0, xmmword [0x8d3d2c]
movups xmmword [ebp - 0x710], xmm0
cmp ecx, 2
jl 0x433730
movaps xmm4, xmmword [0x8d5c60]
mov eax, 0x1f
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, edx
movd xmm7, eax
nop word [eax + eax]
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x720]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x720], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x718]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x718], xmm1
add edi, 8
cmp edi, 0x10
jl 0x433630
cmp edi, 0x12
jge 0x433758
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x720], cx
inc edi
cmp edi, 0x12
jl 0x433730
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x2a0]
call fcn.0040d940
mov dword [ebp - 4], 0
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3d00]
mov ax, word [0x8d3d18]
mov word [ebp - 0x6c4], ax
movups xmmword [ebp - 0x6dc], xmm0
movq xmm0, qword [0x8d3d10]
movq qword [ebp - 0x6cc], xmm0
jl 0x4338b0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3d00
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6dc], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d4]
pxor xmm1, xmm0
movq qword [ebp - 0x6d4], xmm1
nop
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6dc], cx
inc edi
cmp edi, 0xd
jl 0x4338b0
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x288]
call fcn.0040d940
mov byte [ebp - 4], 1
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3cd0]
movups xmmword [ebp - 0x758], xmm0
movups xmm0, xmmword [0x8d3ce0]
movups xmmword [ebp - 0x748], xmm0
movups xmm0, xmmword [0x8d3cf0]
movups xmmword [ebp - 0x738], xmm0
jl 0x433a45
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
xor ecx, ecx
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x758]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + ecx*2 - 0x758], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x750]
pxor xmm1, xmm0
movq qword [ebp + ecx*2 - 0x750], xmm1
add ecx, 8
cmp ecx, 0x18
jl 0x433950
jmp 0x433a6d
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x758], cx
inc edi
cmp edi, 0x18
jl 0x433a45
lea eax, [ebp - 0x758]
push eax
lea ecx, [ebp - 0x270]
call fcn.0040d940
mov byte [ebp - 4], 2
movups xmm0, xmmword [0x8d3cb0]
movups xmmword [ebp - 0x71c], xmm0
movups xmm0, xmmword [0x8d3cc0]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x70c], xmm0
test ax, ax
je 0x433c0d
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x433be5
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
xor ecx, ecx
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x71c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + ecx*2 - 0x71c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x714]
pxor xmm1, xmm0
movq qword [ebp + ecx*2 - 0x714], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x433af0
jmp 0x433c0d
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x71c], cx
inc edi
cmp edi, 0x10
jl 0x433be5
lea eax, [ebp - 0x71c]
push eax
lea ecx, [ebp - 0x258]
call fcn.0040d940
mov byte [ebp - 4], 3
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3c94]
mov ax, word [0x8d3cac]
mov word [ebp - 0x6c4], ax
movups xmmword [ebp - 0x6dc], xmm0
movq xmm0, qword [0x8d3ca4]
movq qword [ebp - 0x6cc], xmm0
jl 0x433d60
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3c94
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6dc], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d4]
pxor xmm1, xmm0
movq qword [ebp - 0x6d4], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6dc], cx
inc edi
cmp edi, 0xd
jl 0x433d60
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x240]
call fcn.0040d940
mov dword [ebp - 4], 4
movups xmm0, xmmword [0x8d3c84]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x738], xmm0
test ax, ax
je 0x433ef8
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x433ed0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3c84
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x738], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x730]
pxor xmm1, xmm0
movq qword [ebp - 0x730], xmm1
jmp 0x433ef8
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x738], cx
inc edi
cmp edi, 8
jl 0x433ed0
lea eax, [ebp - 0x738]
push eax
lea ecx, [ebp - 0x4f8]
call fcn.0040d940
mov byte [ebp - 4], 5
cmp word [0x8d3c82], 0
movups xmm0, xmmword [0x8d3c6c]
movups xmmword [ebp - 0x714], xmm0
movq xmm0, qword [0x8d3c7c]
movq qword [ebp - 0x704], xmm0
je 0x434078
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x434050
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3c6c
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x714], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x70c]
pxor xmm1, xmm0
movq qword [ebp - 0x70c], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x714], cx
inc edi
cmp edi, 0xc
jl 0x434050
lea eax, [ebp - 0x714]
push eax
lea ecx, [ebp - 0x4e0]
call fcn.0040d940
mov byte [ebp - 4], 6
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3c4c]
mov eax, dword [0x8d3c64]
mov dword [ebp - 0x6c8], eax
mov ax, word [0x8d3c68]
movups xmmword [ebp - 0x6e0], xmm0
mov word [ebp - 0x6c4], ax
movq xmm0, qword [0x8d3c5c]
movq qword [ebp - 0x6d0], xmm0
jl 0x4341d6
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3c4c
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6e0], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp - 0x6d8], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0xf
jl 0x4341d6
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x4c8]
call fcn.0040d940
mov byte [ebp - 4], 7
xor edi, edi
mov eax, dword [0x8d3c44]
movups xmm0, xmmword [0x8d3c34]
mov dword [ebp - 0x730], eax
mov ax, word [0x8d3c48]
movups xmmword [ebp - 0x740], xmm0
mov word [ebp - 0x72c], ax
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x740], cx
inc edi
cmp edi, 0xb
jl 0x434240
lea eax, [ebp - 0x740]
push eax
lea ecx, [ebp - 0x4b0]
call fcn.0040d940
mov byte [ebp - 4], 8
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3c18]
mov ax, word [0x8d3c30]
mov word [ebp - 0x6c4], ax
movups xmmword [ebp - 0x6dc], xmm0
movq xmm0, qword [0x8d3c28]
movq qword [ebp - 0x6cc], xmm0
jl 0x4343c0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3c18
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6dc], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d4]
pxor xmm1, xmm0
movq qword [ebp - 0x6d4], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6dc], cx
inc edi
cmp edi, 0xd
jl 0x4343c0
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x498]
call fcn.0040d940
mov byte [ebp - 4], 9
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3bec]
mov eax, dword [0x8d3c14]
mov dword [ebp - 0x700], eax
movups xmmword [ebp - 0x728], xmm0
movups xmm0, xmmword [0x8d3bfc]
movups xmmword [ebp - 0x718], xmm0
movq xmm0, qword [0x8d3c0c]
movq qword [ebp - 0x708], xmm0
jl 0x434570
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop dword [eax + eax]
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x728]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x728], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x720]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x720], xmm1
add edi, 8
cmp edi, 0x10
jl 0x434470
cmp edi, 0x16
jge 0x434598
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x728], cx
inc edi
cmp edi, 0x16
jl 0x434570
lea eax, [ebp - 0x728]
push eax
lea ecx, [ebp - 0x480]
call fcn.0040d940
mov byte [ebp - 4], 0xa
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3bc0]
mov eax, dword [0x8d3be8]
mov dword [ebp - 0x72c], eax
movups xmmword [ebp - 0x754], xmm0
movups xmm0, xmmword [0x8d3bd0]
movups xmmword [ebp - 0x744], xmm0
movq xmm0, qword [0x8d3be0]
movq qword [ebp - 0x734], xmm0
jl 0x434720
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop dword [eax + eax]
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x754]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x754], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x74c]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x74c], xmm1
add edi, 8
cmp edi, 0x10
jl 0x434620
cmp edi, 0x16
jge 0x434748
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x754], cx
inc edi
cmp edi, 0x16
jl 0x434720
lea eax, [ebp - 0x754]
push eax
lea ecx, [ebp - 0x468]
call fcn.0040d940
mov byte [ebp - 4], 0xb
movups xmm0, xmmword [0x8d3ba0]
movups xmmword [ebp - 0x6e0], xmm0
movups xmm0, xmmword [0x8d3bb0]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x6d0], xmm0
test ax, ax
je 0x4348dd
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x4348b5
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
xor ecx, ecx
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6e0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + ecx*2 - 0x6e0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp + ecx*2 - 0x6d8], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x4347c0
jmp 0x4348dd
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0x10
jl 0x4348b5
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x450]
call fcn.0040d940
mov byte [ebp - 4], 0xc
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3b7c]
mov eax, dword [0x8d3b9c]
mov dword [ebp - 0x700], eax
movups xmmword [ebp - 0x720], xmm0
movups xmm0, xmmword [0x8d3b8c]
movups xmmword [ebp - 0x710], xmm0
jl 0x434a50
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x720]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x720], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x718]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x718], xmm1
add edi, 8
cmp edi, 0x10
jl 0x434950
cmp edi, 0x12
jge 0x434a78
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x720], cx
inc edi
cmp edi, 0x12
jl 0x434a50
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x438]
call fcn.0040d940
mov byte [ebp - 4], 0xd
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3b44]
movups xmmword [ebp - 0x6f8], xmm0
movups xmm0, xmmword [0x8d3b54]
movups xmmword [ebp - 0x6e8], xmm0
movups xmm0, xmmword [0x8d3b64]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d3b74]
movq qword [ebp - 0x6c8], xmm0
jl 0x434c00
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x6f8]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x6f8], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x6f0]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x6f0], xmm1
add edi, 8
cmp edi, 0x18
jl 0x434b00
cmp edi, 0x1c
jge 0x434c28
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6f8], cx
inc edi
cmp edi, 0x1c
jl 0x434c00
lea eax, [ebp - 0x6f8]
push eax
lea ecx, [ebp - 0x420]
call fcn.0040d940
mov byte [ebp - 4], 0xe
cmp word [0x8d3b42], 0
movups xmm0, xmmword [0x8d3b2c]
movups xmmword [ebp - 0x714], xmm0
movq xmm0, qword [0x8d3b3c]
movq qword [ebp - 0x704], xmm0
je 0x434da8
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x434d80
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3b2c
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x714], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x70c]
pxor xmm1, xmm0
movq qword [ebp - 0x70c], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x714], cx
inc edi
cmp edi, 0xc
jl 0x434d80
lea eax, [ebp - 0x714]
push eax
lea ecx, [ebp - 0x408]
call fcn.0040d940
mov byte [ebp - 4], 0xf
cmp word [0x8d3b2a], 0
movups xmm0, xmmword [0x8d3b14]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d3b24]
movq qword [ebp - 0x6c8], xmm0
je 0x434f28
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x434f00
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3b14
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x434f00
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x3f0]
call fcn.0040d940
mov byte [ebp - 4], 0x10
xor edi, edi
mov eax, dword [0x8d3b0c]
movups xmm0, xmmword [0x8d3afc]
mov dword [ebp - 0x730], eax
mov ax, word [0x8d3b10]
movups xmmword [ebp - 0x740], xmm0
mov word [ebp - 0x72c], ax
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x740], cx
inc edi
cmp edi, 0xb
jl 0x434f66
lea eax, [ebp - 0x740]
push eax
lea ecx, [ebp - 0x3d8]
call fcn.0040d940
mov byte [ebp - 4], 0x11
cmp word [0x8d3afa], 0
movups xmm0, xmmword [0x8d3ae4]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d3af4]
movq qword [ebp - 0x6c8], xmm0
je 0x43510a
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x4350e2
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3ae4
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x4350e2
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x3c0]
call fcn.0040d940
mov byte [ebp - 4], 0x12
cmp word [0x8d3ae2], 0
movups xmm0, xmmword [0x8d3acc]
movups xmmword [ebp - 0x714], xmm0
movq xmm0, qword [0x8d3adc]
movq qword [ebp - 0x704], xmm0
je 0x435288
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x435260
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3acc
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x714], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x70c]
pxor xmm1, xmm0
movq qword [ebp - 0x70c], xmm1
nop
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x714], cx
inc edi
cmp edi, 0xc
jl 0x435260
lea eax, [ebp - 0x714]
push eax
lea ecx, [ebp - 0x3a8]
call fcn.0040d940
mov byte [ebp - 4], 0x13
xor edi, edi
movups xmm0, xmmword [0x8d3ab8]
mov ax, word [0x8d3ac8]
mov word [ebp - 0x72c], ax
movups xmmword [ebp - 0x73c], xmm0
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x73c], cx
inc edi
cmp edi, 9
jl 0x4352c0
lea eax, [ebp - 0x73c]
push eax
lea ecx, [ebp - 0x390]
call fcn.0040d940
mov byte [ebp - 4], 0x14
xor edi, edi
mov eax, dword [0x8d3ab0]
movups xmm0, xmmword [0x8d3aa0]
mov dword [ebp - 0x700], eax
mov ax, word [0x8d3ab4]
movups xmmword [ebp - 0x710], xmm0
mov word [ebp - 0x6fc], ax
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x710], cx
inc edi
cmp edi, 0xb
jl 0x435326
lea eax, [ebp - 0x710]
push eax
lea ecx, [ebp - 0x378]
call fcn.0040d940
mov byte [ebp - 4], 0x15
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3a7c]
mov eax, dword [0x8d3a9c]
mov dword [ebp - 0x700], eax
movups xmmword [ebp - 0x720], xmm0
movups xmm0, xmmword [0x8d3a8c]
movups xmmword [ebp - 0x710], xmm0
jl 0x4354c0
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x720]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x720], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x718]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x718], xmm1
add edi, 8
cmp edi, 0x10
jl 0x4353c1
cmp edi, 0x12
jge 0x4354e8
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x720], cx
inc edi
cmp edi, 0x12
jl 0x4354c0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0xa4]
call fcn.0040d940
mov byte [ebp - 4], 0x16
cmp word [0x8d3a7a], 0
movups xmm0, xmmword [0x8d3a64]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d3a74]
movq qword [ebp - 0x6c8], xmm0
je 0x435668
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x435640
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3a64
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x435640
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x8c]
call fcn.0040d940
mov byte [ebp - 4], 0x17
cmp word [0x8d3a62], 0
movups xmm0, xmmword [0x8d3a50]
mov eax, dword [0x8d3a60]
mov dword [ebp - 0x72c], eax
movups xmmword [ebp - 0x73c], xmm0
je 0x4356cb
xor edi, edi
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x73c], cx
inc edi
cmp edi, 0xa
jl 0x4356a3
lea eax, [ebp - 0x73c]
push eax
lea ecx, [ebp - 0x360]
call fcn.0040d940
mov byte [ebp - 4], 0x18
movups xmm0, xmmword [0x8d3a30]
movups xmmword [ebp - 0x6e0], xmm0
movups xmm0, xmmword [0x8d3a40]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x6d0], xmm0
test ax, ax
je 0x435868
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x435840
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
xor ecx, ecx
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6e0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + ecx*2 - 0x6e0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp + ecx*2 - 0x6d8], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x435743
jmp 0x435868
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0x10
jl 0x435840
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x348]
call fcn.0040d940
mov byte [ebp - 4], 0x19
xor edi, edi
mov eax, dword [0x8d3a28]
movups xmm0, xmmword [0x8d3a18]
mov dword [ebp - 0x700], eax
mov ax, word [0x8d3a2c]
movups xmmword [ebp - 0x710], xmm0
mov word [ebp - 0x6fc], ax
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x710], cx
inc edi
cmp edi, 0xb
jl 0x4358a6
lea eax, [ebp - 0x710]
push eax
lea ecx, [ebp - 0x330]
call fcn.0040d940
mov byte [ebp - 4], 0x1a
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d39fc]
mov ax, word [0x8d3a14]
mov word [ebp - 0x6c4], ax
movups xmmword [ebp - 0x6dc], xmm0
movq xmm0, qword [0x8d3a0c]
movq qword [ebp - 0x6cc], xmm0
jl 0x435a21
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d39fc
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6dc], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d4]
pxor xmm1, xmm0
movq qword [ebp - 0x6d4], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6dc], cx
inc edi
cmp edi, 0xd
jl 0x435a21
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x318]
call fcn.0040d940
mov byte [ebp - 4], 0x1b
cmp word [0x8d39fa], 0
movups xmm0, xmmword [0x8d39e0]
mov eax, dword [0x8d39f8]
mov dword [ebp - 0x700], eax
movups xmmword [ebp - 0x718], xmm0
movq xmm0, qword [0x8d39f0]
movq qword [ebp - 0x708], xmm0
je 0x435bd8
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x435bb0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d39e0
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x718], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x710]
pxor xmm1, xmm0
movq qword [ebp - 0x710], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x718], cx
inc edi
cmp edi, 0xe
jl 0x435bb0
lea eax, [ebp - 0x718]
push eax
lea ecx, [ebp - 0x300]
call fcn.0040d940
mov byte [ebp - 4], 0x1c
cmp word [0x8d39de], 0
movups xmm0, xmmword [0x8d39c8]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d39d8]
movq qword [ebp - 0x6c8], xmm0
je 0x435d58
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x435d30
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d39c8
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x435d30
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x2e8]
call fcn.0040d940
mov byte [ebp - 4], 0x1d
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d39a4]
mov ax, word [0x8d39c4]
mov word [ebp - 0x6fc], ax
movups xmmword [ebp - 0x71c], xmm0
movups xmm0, xmmword [0x8d39b4]
movups xmmword [ebp - 0x70c], xmm0
jl 0x435ed0
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop dword [eax]
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x71c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x71c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x714]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x714], xmm1
add edi, 8
cmp edi, 0x10
jl 0x435dd0
cmp edi, 0x11
jge 0x435ef8
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x71c], cx
inc edi
cmp edi, 0x11
jl 0x435ed0
lea eax, [ebp - 0x71c]
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0040d940
mov byte [ebp - 4], 0x1e
cmp word [0x8d39a2], 0
movups xmm0, xmmword [0x8d398c]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d399c]
movq qword [ebp - 0x6c8], xmm0
je 0x436078
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x436050
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d398c
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x436050
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x2b8]
call fcn.0040d940
mov byte [ebp - 4], 0x1f
cmp word [0x8d398a], 0
movups xmm0, xmmword [0x8d3974]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d3984]
movq qword [ebp - 0x6c8], xmm0
je 0x4361f8
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x4361d0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3974
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x4361d0
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x228]
call fcn.0040d940
mov byte [ebp - 4], 0x20
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3958]
mov ax, word [0x8d3970]
mov word [ebp - 0x6fc], ax
movups xmmword [ebp - 0x714], xmm0
movq xmm0, qword [0x8d3968]
movq qword [ebp - 0x704], xmm0
jl 0x436350
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3958
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x714], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x70c]
pxor xmm1, xmm0
movq qword [ebp - 0x70c], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x714], cx
inc edi
cmp edi, 0xd
jl 0x436350
lea eax, [ebp - 0x714]
push eax
lea ecx, [ebp - 0x210]
call fcn.0040d940
mov byte [ebp - 4], 0x21
cmp word [0x8d3956], 0
movups xmm0, xmmword [0x8d3940]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d3950]
movq qword [ebp - 0x6c8], xmm0
je 0x4364f8
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x4364d0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3940
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x4364d0
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x1f8]
call fcn.0040d940
mov byte [ebp - 4], 0x22
cmp word [0x8d393e], 0
movups xmm0, xmmword [0x8d3924]
mov eax, dword [0x8d393c]
mov dword [ebp - 0x700], eax
movups xmmword [ebp - 0x718], xmm0
movq xmm0, qword [0x8d3934]
movq qword [ebp - 0x708], xmm0
je 0x43667f
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x436657
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3924
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x718], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x710]
pxor xmm1, xmm0
movq qword [ebp - 0x710], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x718], cx
inc edi
cmp edi, 0xe
jl 0x436657
lea eax, [ebp - 0x718]
push eax
lea ecx, [ebp - 0x1e0]
call fcn.0040d940
mov byte [ebp - 4], 0x23
cmp word [0x8d3922], 0
movups xmm0, xmmword [0x8d390c]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d391c]
movq qword [ebp - 0x6c8], xmm0
je 0x4367fb
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x4367d3
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d390c
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x4367d3
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x1c8]
call fcn.0040d940
mov byte [ebp - 4], 0x24
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d38f0]
mov ax, word [0x8d3908]
mov word [ebp - 0x6c4], ax
movups xmmword [ebp - 0x6dc], xmm0
movq xmm0, qword [0x8d3900]
movq qword [ebp - 0x6cc], xmm0
jl 0x436950
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d38f0
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6dc], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d4]
pxor xmm1, xmm0
movq qword [ebp - 0x6d4], xmm1
nop
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6dc], cx
inc edi
cmp edi, 0xd
jl 0x436950
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x7d0]
call fcn.0040d940
mov byte [ebp - 4], 0x25
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d38d4]
mov ax, word [0x8d38ec]
mov word [ebp - 0x6fc], ax
movups xmmword [ebp - 0x714], xmm0
movq xmm0, qword [0x8d38e4]
movq qword [ebp - 0x704], xmm0
jl 0x436ad0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d38d4
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x714], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x70c]
pxor xmm1, xmm0
movq qword [ebp - 0x70c], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x714], cx
inc edi
cmp edi, 0xd
jl 0x436ad0
lea eax, [ebp - 0x714]
push eax
lea ecx, [ebp - 0x7b8]
call fcn.0040d940
mov byte [ebp - 4], 0x26
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d38b4]
mov eax, dword [0x8d38cc]
mov dword [ebp - 0x6c8], eax
mov ax, word [0x8d38d0]
movups xmmword [ebp - 0x6e0], xmm0
mov word [ebp - 0x6c4], ax
movq xmm0, qword [0x8d38c4]
movq qword [ebp - 0x6d0], xmm0
jl 0x436c56
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d38b4
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6e0], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp - 0x6d8], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0xf
jl 0x436c56
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x7a0]
call fcn.0040d940
mov byte [ebp - 4], 0x27
cmp word [0x8d38b2], 0
movups xmm0, xmmword [0x8d389c]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d38ac]
movq qword [ebp - 0x6c8], xmm0
je 0x436dfa
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x436dd2
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d389c
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x436dd2
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x138]
call fcn.0040d940
mov byte [ebp - 4], 0x28
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3880]
mov ax, word [0x8d3898]
mov word [ebp - 0x6fc], ax
movups xmmword [ebp - 0x714], xmm0
movq xmm0, qword [0x8d3890]
movq qword [ebp - 0x704], xmm0
jl 0x436f50
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3880
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x714], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x70c]
pxor xmm1, xmm0
movq qword [ebp - 0x70c], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x714], cx
inc edi
cmp edi, 0xd
jl 0x436f50
lea eax, [ebp - 0x714]
push eax
lea ecx, [ebp - 0x120]
call fcn.0040d940
mov byte [ebp - 4], 0x29
cmp word [0x8d387e], 0
movups xmm0, xmmword [0x8d3868]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d3878]
movq qword [ebp - 0x6c8], xmm0
je 0x4370f8
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x4370d0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3868
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x4370d0
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x108]
call fcn.0040d940
mov byte [ebp - 4], 0x2a
cmp word [0x8d3866], 0
movups xmm0, xmmword [0x8d384c]
mov eax, dword [0x8d3864]
mov dword [ebp - 0x6c4], eax
movups xmmword [ebp - 0x6dc], xmm0
movq xmm0, qword [0x8d385c]
movq qword [ebp - 0x6cc], xmm0
je 0x43727f
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x437257
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d384c
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6dc], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d4]
pxor xmm1, xmm0
movq qword [ebp - 0x6d4], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6dc], cx
inc edi
cmp edi, 0xe
jl 0x437257
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x6c0]
call fcn.0040d940
mov byte [ebp - 4], 0x2b
movups xmm0, xmmword [0x8d382c]
movups xmmword [ebp - 0x71c], xmm0
movups xmm0, xmmword [0x8d383c]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x70c], xmm0
test ax, ax
je 0x43741d
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x4373f5
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
xor ecx, ecx
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop word [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x71c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + ecx*2 - 0x71c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x714]
pxor xmm1, xmm0
movq qword [ebp + ecx*2 - 0x714], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x437300
jmp 0x43741d
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x71c], cx
inc edi
cmp edi, 0x10
jl 0x4373f5
lea eax, [ebp - 0x71c]
push eax
lea ecx, [ebp - 0x6a8]
call fcn.0040d940
mov byte [ebp - 4], 0x2c
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3810]
mov ax, word [0x8d3828]
mov word [ebp - 0x6c4], ax
movups xmmword [ebp - 0x6dc], xmm0
movq xmm0, qword [0x8d3820]
movq qword [ebp - 0x6cc], xmm0
jl 0x437570
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3810
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6dc], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d4]
pxor xmm1, xmm0
movq qword [ebp - 0x6d4], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6dc], cx
inc edi
cmp edi, 0xd
jl 0x437570
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x690]
call fcn.0040d940
mov byte [ebp - 4], 0x2d
cmp word [0x8d380e], 0
movups xmm0, xmmword [0x8d37fc]
mov eax, dword [0x8d380c]
mov dword [ebp - 0x72c], eax
movups xmmword [ebp - 0x73c], xmm0
je 0x4375fb
xor edi, edi
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x73c], cx
inc edi
cmp edi, 0xa
jl 0x4375d3
lea eax, [ebp - 0x73c]
push eax
lea ecx, [ebp - 0x678]
call fcn.0040d940
mov byte [ebp - 4], 0x2e
xor edi, edi
mov eax, dword [0x8d37f4]
movups xmm0, xmmword [0x8d37e4]
mov dword [ebp - 0x700], eax
mov ax, word [0x8d37f8]
movups xmmword [ebp - 0x710], xmm0
mov word [ebp - 0x6fc], ax
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x710], cx
inc edi
cmp edi, 0xb
jl 0x437640
lea eax, [ebp - 0x710]
push eax
lea ecx, [ebp - 0x660]
call fcn.0040d940
mov byte [ebp - 4], 0x2f
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d37c8]
mov ax, word [0x8d37e0]
mov word [ebp - 0x6c4], ax
movups xmmword [ebp - 0x6dc], xmm0
movq xmm0, qword [0x8d37d8]
movq qword [ebp - 0x6cc], xmm0
jl 0x4377c0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d37c8
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6dc], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d4]
pxor xmm1, xmm0
movq qword [ebp - 0x6d4], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6dc], cx
inc edi
cmp edi, 0xd
jl 0x4377c0
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x648]
call fcn.0040d940
mov byte [ebp - 4], 0x30
movups xmm0, xmmword [0x8d37b8]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x738], xmm0
test ax, ax
je 0x437958
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x437930
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d37b8
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x738], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x730]
pxor xmm1, xmm0
movq qword [ebp - 0x730], xmm1
jmp 0x437958
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x738], cx
inc edi
cmp edi, 8
jl 0x437930
lea eax, [ebp - 0x738]
push eax
lea ecx, [ebp - 0x630]
call fcn.0040d940
mov byte [ebp - 4], 0x31
cmp word [0x8d37b6], 0
movups xmm0, xmmword [0x8d37a0]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d37b0]
movq qword [ebp - 0x6c8], xmm0
je 0x437ad8
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x437ab0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d37a0
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x437ab0
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x618]
call fcn.0040d940
mov byte [ebp - 4], 0x32
cmp word [0x8d379e], 0
movups xmm0, xmmword [0x8d3784]
mov eax, dword [0x8d379c]
mov dword [ebp - 0x700], eax
movups xmmword [ebp - 0x718], xmm0
movq xmm0, qword [0x8d3794]
movq qword [ebp - 0x708], xmm0
je 0x437c5f
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x437c37
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3784
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x718], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x710]
pxor xmm1, xmm0
movq qword [ebp - 0x710], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x718], cx
inc edi
cmp edi, 0xe
jl 0x437c37
lea eax, [ebp - 0x718]
push eax
lea ecx, [ebp - 0x600]
call fcn.0040d940
mov byte [ebp - 4], 0x33
movups xmm0, xmmword [0x8d3774]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x738], xmm0
test ax, ax
je 0x437dc8
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x437da0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3774
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x738], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x730]
pxor xmm1, xmm0
movq qword [ebp - 0x730], xmm1
jmp 0x437dc8
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x738], cx
inc edi
cmp edi, 8
jl 0x437da0
lea eax, [ebp - 0x738]
push eax
lea ecx, [ebp - 0x5e8]
call fcn.0040d940
mov byte [ebp - 4], 0x34
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3758]
mov ax, word [0x8d3770]
mov word [ebp - 0x6c4], ax
movups xmmword [ebp - 0x6dc], xmm0
movq xmm0, qword [0x8d3768]
movq qword [ebp - 0x6cc], xmm0
jl 0x437f20
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3758
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6dc], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d4]
pxor xmm1, xmm0
movq qword [ebp - 0x6d4], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6dc], cx
inc edi
cmp edi, 0xd
jl 0x437f20
lea eax, [ebp - 0x6dc]
push eax
lea ecx, [ebp - 0x5d0]
call fcn.0040d940
mov byte [ebp - 4], 0x35
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d373c]
mov ax, word [0x8d3754]
mov word [ebp - 0x6fc], ax
movups xmmword [ebp - 0x714], xmm0
movq xmm0, qword [0x8d374c]
movq qword [ebp - 0x704], xmm0
jl 0x4380a0
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d373c
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x714], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x70c]
pxor xmm1, xmm0
movq qword [ebp - 0x70c], xmm1
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x714], cx
inc edi
cmp edi, 0xd
jl 0x4380a0
lea eax, [ebp - 0x714]
push eax
lea ecx, [ebp - 0x5b8]
call fcn.0040d940
mov byte [ebp - 4], 0x36
cmp word [0x8d373a], 0
movups xmm0, xmmword [0x8d3724]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d3734]
movq qword [ebp - 0x6c8], xmm0
je 0x438248
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x438220
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3724
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6d8], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d0]
pxor xmm1, xmm0
movq qword [ebp - 0x6d0], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6d8], cx
inc edi
cmp edi, 0xc
jl 0x438220
lea eax, [ebp - 0x6d8]
push eax
lea ecx, [ebp - 0x5a0]
call fcn.0040d940
mov byte [ebp - 4], 0x37
cmp word [0x8d3722], 0
movups xmm0, xmmword [0x8d3708]
mov eax, dword [0x8d3720]
mov dword [ebp - 0x72c], eax
movups xmmword [ebp - 0x744], xmm0
movq xmm0, qword [0x8d3718]
movq qword [ebp - 0x734], xmm0
je 0x4383cf
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x4383a7
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3708
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x744], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x73c]
pxor xmm1, xmm0
movq qword [ebp - 0x73c], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x744], cx
inc edi
cmp edi, 0xe
jl 0x4383a7
lea eax, [ebp - 0x744]
push eax
lea ecx, [ebp - 0x588]
call fcn.0040d940
mov byte [ebp - 4], 0x38
xor edi, edi
mov eax, dword [0x8d3700]
movups xmm0, xmmword [0x8d36f0]
mov dword [ebp - 0x700], eax
mov ax, word [0x8d3704]
movups xmmword [ebp - 0x710], xmm0
mov word [ebp - 0x6fc], ax
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x710], cx
inc edi
cmp edi, 0xb
jl 0x438410
lea eax, [ebp - 0x710]
push eax
lea ecx, [ebp - 0x570]
call fcn.0040d940
mov byte [ebp - 4], 0x39
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d36d0]
mov eax, dword [0x8d36e8]
mov dword [ebp - 0x6c8], eax
mov ax, word [0x8d36ec]
movups xmmword [ebp - 0x6e0], xmm0
mov word [ebp - 0x6c4], ax
movq xmm0, qword [0x8d36e0]
movq qword [ebp - 0x6d0], xmm0
jl 0x438596
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d36d0
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6e0], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp - 0x6d8], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0xf
jl 0x438596
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x558]
call fcn.0040d940
mov byte [ebp - 4], 0x3a
xor edi, edi
mov eax, dword [0x8d36c8]
movups xmm0, xmmword [0x8d36b8]
mov dword [ebp - 0x700], eax
mov ax, word [0x8d36cc]
movups xmmword [ebp - 0x710], xmm0
mov word [ebp - 0x6fc], ax
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x710], cx
inc edi
cmp edi, 0xb
jl 0x438600
lea eax, [ebp - 0x710]
push eax
lea ecx, [ebp - 0x540]
call fcn.0040d940
mov byte [ebp - 4], 0x3b
xor edi, edi
mov eax, dword [0x8d36b0]
movups xmm0, xmmword [0x8d36a0]
mov dword [ebp - 0x730], eax
mov ax, word [0x8d36b4]
movups xmmword [ebp - 0x740], xmm0
mov word [ebp - 0x72c], ax
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x740], cx
inc edi
cmp edi, 0xb
jl 0x438666
lea eax, [ebp - 0x740]
push eax
lea ecx, [ebp - 0x528]
call fcn.0040d940
mov byte [ebp - 4], 0x3c
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d367c]
mov eax, dword [0x8d369c]
mov dword [ebp - 0x6c4], eax
movups xmmword [ebp - 0x6e4], xmm0
movups xmm0, xmmword [0x8d368c]
movups xmmword [ebp - 0x6d4], xmm0
jl 0x438800
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x6e4]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x6e4], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x6dc]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x6dc], xmm1
add edi, 8
cmp edi, 0x10
jl 0x438701
cmp edi, 0x12
jge 0x438828
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e4], cx
inc edi
cmp edi, 0x12
jl 0x438800
lea eax, [ebp - 0x6e4]
push eax
lea ecx, [ebp - 0x510]
call fcn.0040d940
mov byte [ebp - 4], 0x3d
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3658]
mov ax, word [0x8d3678]
mov word [ebp - 0x6fc], ax
movups xmmword [ebp - 0x71c], xmm0
movups xmm0, xmmword [0x8d3668]
movups xmmword [ebp - 0x70c], xmm0
jl 0x4389a0
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop dword [eax]
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x71c]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x71c], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x714]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x714], xmm1
add edi, 8
cmp edi, 0x10
jl 0x4388a0
cmp edi, 0x11
jge 0x4389c8
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x71c], cx
inc edi
cmp edi, 0x11
jl 0x4389a0
lea eax, [ebp - 0x71c]
push eax
lea ecx, [ebp - 0x1b0]
call fcn.0040d940
mov byte [ebp - 4], 0x3e
movups xmm0, xmmword [0x8d3638]
movups xmmword [ebp - 0x6e0], xmm0
movups xmm0, xmmword [0x8d3648]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x6d0], xmm0
test ax, ax
je 0x438b5d
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x438b35
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
xor ecx, ecx
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6e0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + ecx*2 - 0x6e0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp + ecx*2 - 0x6d8], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x438a40
jmp 0x438b5d
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0x10
jl 0x438b35
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x198]
call fcn.0040d940
mov byte [ebp - 4], 0x3f
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3614]
mov eax, dword [0x8d3634]
mov dword [ebp - 0x700], eax
movups xmmword [ebp - 0x720], xmm0
movups xmm0, xmmword [0x8d3624]
movups xmmword [ebp - 0x710], xmm0
jl 0x438cd0
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x720]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x720], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x718]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x718], xmm1
add edi, 8
cmp edi, 0x10
jl 0x438bd0
cmp edi, 0x12
jge 0x438cf8
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x720], cx
inc edi
cmp edi, 0x12
jl 0x438cd0
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0x180]
call fcn.0040d940
mov byte [ebp - 4], 0x40
movups xmm0, xmmword [0x8d35f4]
movups xmmword [ebp - 0x6e0], xmm0
movups xmm0, xmmword [0x8d3604]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x6d0], xmm0
test ax, ax
je 0x438e8d
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x438e65
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
xor ecx, ecx
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6e0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + ecx*2 - 0x6e0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp + ecx*2 - 0x6d8], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x438d70
jmp 0x438e8d
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0x10
jl 0x438e65
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x168]
call fcn.0040d940
mov byte [ebp - 4], 0x41
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d35c8]
mov eax, dword [0x8d35f0]
mov dword [ebp - 0x700], eax
movups xmmword [ebp - 0x728], xmm0
movups xmm0, xmmword [0x8d35d8]
movups xmmword [ebp - 0x718], xmm0
movq xmm0, qword [0x8d35e8]
movq qword [ebp - 0x708], xmm0
jl 0x439010
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x728]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x728], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x720]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x720], xmm1
add edi, 8
cmp edi, 0x10
jl 0x438f10
cmp edi, 0x16
jge 0x439038
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x728], cx
inc edi
cmp edi, 0x16
jl 0x439010
lea eax, [ebp - 0x728]
push eax
lea ecx, [ebp - 0x150]
call fcn.0040d940
mov byte [ebp - 4], 0x42
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d35a8]
mov eax, dword [0x8d35c0]
mov dword [ebp - 0x6c8], eax
mov ax, word [0x8d35c4]
movups xmmword [ebp - 0x6e0], xmm0
mov word [ebp - 0x6c4], ax
movq xmm0, qword [0x8d35b8]
movq qword [ebp - 0x6d0], xmm0
jl 0x439196
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d35a8
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x6e0], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp - 0x6d8], xmm1
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0xf
jl 0x439196
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0xf0]
call fcn.0040d940
mov byte [ebp - 4], 0x43
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3588]
mov eax, dword [0x8d35a0]
mov dword [ebp - 0x700], eax
mov ax, word [0x8d35a4]
movups xmmword [ebp - 0x718], xmm0
mov word [ebp - 0x6fc], ax
movq xmm0, qword [0x8d3598]
movq qword [ebp - 0x708], xmm0
jl 0x439320
movaps xmm2, xmmword [0x8d5c60]
mov eax, 1
movaps xmm4, xmmword [0x8d5cd0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
mov edi, 8
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
movd xmm5, eax
mov eax, 0x1f
psrad xmm1, xmm5
movaps xmm0, xmm1
movd xmm6, eax
mov eax, 0x8d3588
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x8d5c70]
paddd xmm2, xmmword [0x8d5c60]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [eax]
pxor xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x718], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm6
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x8d5c80]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x710]
pxor xmm1, xmm0
movq qword [ebp - 0x710], xmm1
nop dword [eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x718], cx
inc edi
cmp edi, 0xf
jl 0x439320
lea eax, [ebp - 0x718]
push eax
lea ecx, [ebp - 0xd8]
call fcn.0040d940
mov byte [ebp - 4], 0x44
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d3560]
movups xmmword [ebp - 0x6e8], xmm0
movups xmm0, xmmword [0x8d3570]
movups xmmword [ebp - 0x6d8], xmm0
movq xmm0, qword [0x8d3580]
movq qword [ebp - 0x6c8], xmm0
jl 0x4394c0
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x6e8]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x6e8], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x6e0]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x6e0], xmm1
add edi, 8
cmp edi, 0x10
jl 0x4393c0
cmp edi, 0x14
jge 0x4394e8
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e8], cx
inc edi
cmp edi, 0x14
jl 0x4394c0
lea eax, [ebp - 0x6e8]
push eax
lea ecx, [ebp - 0xc0]
call fcn.0040d940
mov byte [ebp - 4], 0x45
xor edi, edi
mov eax, dword [0x8d3558]
movups xmm0, xmmword [0x8d3548]
mov dword [ebp - 0x700], eax
mov ax, word [0x8d355c]
movups xmmword [ebp - 0x710], xmm0
mov word [ebp - 0x6fc], ax
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x710], cx
inc edi
cmp edi, 0xb
jl 0x439526
lea eax, [ebp - 0x710]
push eax
lea ecx, [ebp - 0x44]
call fcn.0040d940
mov byte [ebp - 4], 0x46
movups xmm0, xmmword [0x8d3528]
movups xmmword [ebp - 0x6e0], xmm0
movups xmm0, xmmword [0x8d3538]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x6d0], xmm0
test ax, ax
je 0x4396e8
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x4396c0
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
xor ecx, ecx
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6e0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + ecx*2 - 0x6e0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp + ecx*2 - 0x6d8], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x4395c3
jmp 0x4396e8
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0x10
jl 0x4396c0
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x74]
call fcn.0040d940
mov byte [ebp - 4], 0x47
xor edi, edi
cmp dword [0x18011f4], 2
movups xmm0, xmmword [0x8d34f8]
mov eax, dword [0x8d3520]
mov dword [ebp - 0x700], eax
mov ax, word [0x8d3524]
movups xmmword [ebp - 0x728], xmm0
mov word [ebp - 0x6fc], ax
movups xmm0, xmmword [0x8d3508]
movups xmmword [ebp - 0x718], xmm0
movq xmm0, qword [0x8d3518]
movq qword [ebp - 0x708], xmm0
jl 0x439880
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop word [eax + eax]
movd xmm0, edi
lea eax, [edi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x728]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + edi*2 - 0x728], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + edi*2 - 0x720]
pxor xmm1, xmm0
movq qword [ebp + edi*2 - 0x720], xmm1
add edi, 8
cmp edi, 0x10
jl 0x439780
cmp edi, 0x17
jge 0x4398a8
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x728], cx
inc edi
cmp edi, 0x17
jl 0x439880
lea eax, [ebp - 0x728]
push eax
lea ecx, [ebp - 0x5c]
call fcn.0040d940
mov byte [ebp - 4], 0x48
movups xmm0, xmmword [0x8d34d8]
movups xmmword [ebp - 0x6e0], xmm0
movups xmm0, xmmword [0x8d34e8]
pextrw eax, xmm0, 7
movups xmmword [ebp - 0x6d0], xmm0
test ax, ax
je 0x439a3d
xor edi, edi
cmp dword [0x18011f4], 2
jl 0x439a15
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
xor ecx, ecx
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop dword [eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6e0]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + ecx*2 - 0x6e0], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + ecx*2 - 0x6d8]
pxor xmm1, xmm0
movq qword [ebp + ecx*2 - 0x6d8], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x439920
jmp 0x439a3d
mov eax, 0x94f2095
mov ecx, edi
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + edi*2 - 0x6e0], cx
inc edi
cmp edi, 0x10
jl 0x439a15
lea eax, [ebp - 0x6e0]
push eax
lea ecx, [ebp - 0x2c]
call fcn.0040d940
lea eax, [ebp - 0xa30]
mov byte [ebp - 4], 0x49
push eax
push dword [ebp - 0xa40]
call dword [0x810328]
mov edi, dword [0x8106f8]
jmp 0x439a76
lea eax, [ebp - 0x2a0]
mov dword [ebp - 0xa38], 0
mov dword [ebp - 0xa34], eax
nop dword [eax]
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x439a9a
mov ecx, dword [eax]
lea eax, [ebp - 0xa0c]
push eax
push ecx
call edi
test eax, eax
je 0x439acb
mov ecx, dword [ebp - 0xa38]
mov eax, dword [ebp - 0xa34]
inc ecx
add eax, 0x18
mov dword [ebp - 0xa38], ecx
mov dword [ebp - 0xa34], eax
cmp ecx, 5
jb 0x439a90
jmp 0x439ace
or dword [esi], 1
lea eax, [ebp - 0x4f8]
mov dword [ebp - 0xa34], 0
mov dword [ebp - 0xa38], eax
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x439aee
mov ecx, dword [eax]
lea eax, [ebp - 0xa0c]
push eax
push ecx
call edi
test eax, eax
je 0x439b1f
mov ecx, dword [ebp - 0xa34]
mov eax, dword [ebp - 0xa38]
inc ecx
add eax, 0x18
mov dword [ebp - 0xa34], ecx
mov dword [ebp - 0xa38], eax
cmp ecx, 0x11
jb 0x439ae4
jmp 0x439b22
or dword [esi], 2
lea eax, [ebp - 0x6c0]
mov dword [ebp - 0xa34], 0
mov dword [ebp - 0xa38], eax
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x439b42
mov ecx, dword [eax]
lea eax, [ebp - 0xa0c]
push eax
push ecx
call edi
test eax, eax
je 0x439b73
mov ecx, dword [ebp - 0xa34]
mov eax, dword [ebp - 0xa38]
inc ecx
add eax, 0x18
mov dword [ebp - 0xa34], ecx
mov dword [ebp - 0xa38], eax
cmp ecx, 0x13
jb 0x439b38
jmp 0x439b76
or dword [esi], 4
lea eax, [ebp - 0xa4]
mov dword [ebp - 0xa34], 0
mov dword [ebp - 0xa38], eax
nop dword [eax]
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x439b9a
mov ecx, dword [eax]
lea eax, [ebp - 0xa0c]
push eax
push ecx
call edi
test eax, eax
je 0x439bcb
mov ecx, dword [ebp - 0xa34]
mov eax, dword [ebp - 0xa38]
inc ecx
add eax, 0x18
mov dword [ebp - 0xa34], ecx
mov dword [ebp - 0xa38], eax
cmp ecx, 2
jb 0x439b90
jmp 0x439c11
or dword [esi + 4], 1
mov ecx, esi
push 1
call fcn.0043a560
test eax, eax
jne 0x439c11
push 1
lea ecx, [ebp - 0x6d8]
call fcn.0045ee70
lea eax, [ebp - 0x6d8]
mov byte [ebp - 4], 0x4a
push eax
lea ecx, [esi + 8]
call fcn.004604f0
lea ecx, [ebp - 0x6d8]
mov byte [ebp - 4], 0x49
call fcn.0045f310
mov esi, dword [ebp - 0xa3c]
lea eax, [ebp - 0x228]
mov dword [ebp - 0xa34], 0
mov dword [ebp - 0xa38], eax
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x439c31
mov ecx, dword [eax]
lea eax, [ebp - 0xa0c]
push eax
push ecx
call edi
test eax, eax
je 0x439c62
mov ecx, dword [ebp - 0xa34]
mov eax, dword [ebp - 0xa38]
inc ecx
add eax, 0x18
mov dword [ebp - 0xa34], ecx
mov dword [ebp - 0xa38], eax
cmp ecx, 5
jb 0x439c27
jmp 0x439ca2
or dword [esi + 4], 4
mov ecx, esi
push 4
call fcn.0043a560
test eax, eax
jne 0x439ca2
push 4
lea ecx, [ebp - 0x6d8]
call fcn.0045ee70
lea eax, [ebp - 0x6d8]
mov byte [ebp - 4], 0x4b
push eax
lea ecx, [esi + 8]
call fcn.004604f0
lea ecx, [ebp - 0x6d8]
mov byte [ebp - 4], 0x49
call fcn.0045f310
mov dword [ebp - 0xa34], 0
lea esi, [ebp - 0x360]
cmp dword [esi + 0x14], 8
mov eax, esi
jb 0x439cbc
mov eax, dword [esi]
lea ecx, [ebp - 0xa0c]
push ecx
push eax
call edi
test eax, eax
je 0x439ce1
mov eax, dword [ebp - 0xa34]
add esi, 0x18
inc eax
mov dword [ebp - 0xa34], eax
cmp eax, 8
jb 0x439cb2
jmp 0x439d27
mov esi, dword [ebp - 0xa3c]
mov ecx, esi
push 8
or dword [esi + 4], 8
call fcn.0043a560
test eax, eax
jne 0x439d2d
push 8
lea ecx, [ebp - 0x6d8]
call fcn.0045ee70
lea eax, [ebp - 0x6d8]
mov byte [ebp - 4], 0x4c
push eax
lea ecx, [esi + 8]
call fcn.004604f0
lea ecx, [ebp - 0x6d8]
mov byte [ebp - 4], 0x49
call fcn.0045f310
mov esi, dword [ebp - 0xa3c]
lea eax, [ebp - 0x7d0]
mov dword [ebp - 0xa34], 0
mov dword [ebp - 0xa38], eax
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x439d4d
mov ecx, dword [eax]
lea eax, [ebp - 0xa0c]
push eax
push ecx
call edi
test eax, eax
je 0x439d7e
mov ecx, dword [ebp - 0xa34]
mov eax, dword [ebp - 0xa38]
inc ecx
add eax, 0x18
mov dword [ebp - 0xa34], ecx
mov dword [ebp - 0xa38], eax
cmp ecx, 3
jb 0x439d43
jmp 0x439dbe
or dword [esi + 4], 0x40
mov ecx, esi
push 0x40
call fcn.0043a560
test eax, eax
jne 0x439dbe
push 0x40
lea ecx, [ebp - 0x6d8]
call fcn.0045ee70
lea eax, [ebp - 0x6d8]
mov byte [ebp - 4], 0x4d
push eax
lea ecx, [esi + 8]
call fcn.004604f0
lea ecx, [ebp - 0x6d8]
mov byte [ebp - 4], 0x49
call fcn.0045f310
mov dword [ebp - 0xa34], 0
lea esi, [ebp - 0x1b0]
nop
cmp dword [esi + 0x14], 8
mov eax, esi
jb 0x439dda
mov eax, dword [esi]
lea ecx, [ebp - 0xa0c]
push ecx
push eax
call edi
test eax, eax
je 0x439dff
mov eax, dword [ebp - 0xa34]
add esi, 0x18
inc eax
mov dword [ebp - 0xa34], eax
cmp eax, 5
jb 0x439dd0
jmp 0x439e4e
mov esi, dword [ebp - 0xa3c]
mov ecx, esi
push 0x200
or dword [esi + 4], 0x200
call fcn.0043a560
test eax, eax
jne 0x439e54
push 0x200
lea ecx, [ebp - 0x6d8]
call fcn.0045ee70
lea eax, [ebp - 0x6d8]
mov byte [ebp - 4], 0x4e
push eax
lea ecx, [esi + 8]
call fcn.004604f0
lea ecx, [ebp - 0x6d8]
mov byte [ebp - 4], 0x49
call fcn.0045f310
mov esi, dword [ebp - 0xa3c]
lea eax, [ebp - 0xf0]
mov dword [ebp - 0xa34], 0
mov dword [ebp - 0xa38], eax
nop word [eax + eax]
cmp dword [eax + 0x14], 8
mov ecx, eax
jb 0x439e7a
lea ecx, [ebp - 0x788]
call fcn.0045ced0
push 0x80000002
lea ecx, [ebp - 0x788]
mov dword [ebp - 4], 0x54
call fcn.0045cd10
mov ecx, 0x1e
lea edi, [ebp - 0x800]
mov esi, 0x8d3460
rep movsd dword es:[edi], dword [esi]
xor esi, esi
cmp dword [0x18011f4], 2
jl 0x43a410
movaps xmm4, xmmword [0x8d5c60]
mov eax, 1
movaps xmm3, xmmword [0x8d5cd0]
movaps xmm6, xmmword [0x8d5c80]
movd xmm5, eax
mov eax, 0x1f
movd xmm7, eax
nop word [eax + eax]
movd xmm0, esi
lea eax, [esi + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + esi*2 - 0x800]
pxor xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movq qword [ebp + esi*2 - 0x800], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm5
movaps xmm0, xmm1
psrld xmm0, xmm7
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [0x8d5cb0]
paddw xmm1, xmm0
movq xmm0, qword [ebp + esi*2 - 0x7f8]
pxor xmm1, xmm0
movq qword [ebp + esi*2 - 0x7f8], xmm1
add esi, 8
cmp esi, 0x38
jl 0x43a310
cmp esi, 0x3c
jge 0x43a438
nop dword [eax + eax]
mov eax, 0x94f2095
mov ecx, esi
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + esi*2 - 0x800], cx
inc esi
cmp esi, 0x3c
jl 0x43a410
lea eax, [ebp - 0x800]
push eax
lea ecx, [ebp - 0x788]
call fcn.0045d0c0
test al, al
je 0x43a52f
push 0x8d2afc
lea eax, [ebp - 0x740]
push eax
lea ecx, [ebp - 0x788]
call fcn.0045cfc0
mov byte [ebp - 4], 0x55
xor esi, esi
mov eax, dword [0x8d3454]
movups xmm0, xmmword [0x8d3444]
mov dword [ebp - 0x700], eax
mov ax, word [0x8d3458]
movups xmmword [ebp - 0x710], xmm0
mov word [ebp - 0x6fc], ax
mov eax, 0x94f2095
mov ecx, esi
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x37
sub ecx, eax
add ecx, 0x32
xor word [ebp + esi*2 - 0x710], cx
inc esi
cmp esi, 0xb
jl 0x43a495
lea eax, [ebp - 0x710]
push eax
lea ecx, [ebp - 0x740]
call fcn.00416830
test al, al
je 0x43a519
mov esi, dword [ebp - 0xa3c]
mov ecx, esi
push 2
or dword [esi + 4], 2
call fcn.0043a560
test eax, eax
jne 0x43a519
push 2
lea ecx, [ebp - 0x6d8]
call fcn.0045ee70
lea eax, [ebp - 0x6d8]
mov byte [ebp - 4], 0x56
push eax
lea ecx, [esi + 8]
call fcn.004604f0
lea ecx, [ebp - 0x6d8]
mov byte [ebp - 4], 0x55
call fcn.0045f310
lea ecx, [ebp - 0x788]
call fcn.0045cd70
lea ecx, [ebp - 0x740]
call fcn.00406720
lea ecx, [ebp - 0x788]
call fcn.0045d640
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0059961f
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret