Function at 0x6c9130
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x948
mov dword [esp + 0x104], ecx
movdqa xmm1, xmmword [0xadc500]
movdqa xmm2, xmmword [0xadc510]
xor ecx, ecx
movdqa xmm3, xmmword [str._a_a_a_a]
nop dword [eax + eax]
movdqu xmmword [esp + 0x40], xmm2
movdqu xmmword [esp + 0x50], xmm1
movzx eax, byte [edx]
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm6, xmm0, 0
pxor xmm0, xmm0
punpcklbw xmm6, xmm0
punpcklwd xmm6, xmm0
movdqu xmm7, xmmword [esp + 0x40]
movdqu xmm1, xmmword [esp + 0x50]
pand xmm1, xmm3
pshufd xmm0, xmm1, 0xee
pshuflw xmm2, xmm0, 0xfe
movdqa xmm5, xmm6
psrld xmm5, xmm2
pshuflw xmm2, xmm0, 0x54
movdqa xmm0, xmm6
psrld xmm0, xmm2
pand xmm7, xmm3
punpckhqdq xmm0, xmm5
pshuflw xmm2, xmm1, 0xfe
movdqa xmm5, xmm6
psrld xmm5, xmm2
pshuflw xmm2, xmm1, 0x54
movdqa xmm1, xmm6
psrld xmm1, xmm2
punpcklqdq xmm1, xmm5
pshufd xmm2, xmm7, 0xee
pshuflw xmm5, xmm2, 0xfe
movdqa xmm3, xmm6
psrld xmm3, xmm5
pshuflw xmm2, xmm2, 0x54
movdqa xmm5, xmm6
psrld xmm5, xmm2
pshuflw xmm2, xmm7, 0xfe
movdqa xmm4, xmm6
psrld xmm4, xmm2
shufps xmm1, xmm0, 0xcc
pshuflw xmm0, xmm7, 0x54
movdqu xmm2, xmmword [esp + 0x40]
psrld xmm6, xmm0
movdqa xmm0, xmmword [0xadc530]
punpckhqdq xmm5, xmm3
movdqa xmm3, xmmword [str._a_a_a_a]
punpcklqdq xmm6, xmm4
shufps xmm6, xmm5, 0xcc
packuswb xmm6, xmm1
movdqu xmm1, xmmword [esp + 0x50]
packuswb xmm6, xmm6
pand xmm6, xmm0
movdqa xmm0, xmmword [0xadc540]
movq qword [esp + ecx + 0x2a8], xmm6
add ecx, 8
paddd xmm2, xmm0
paddd xmm1, xmm0
inc edx
cmp ecx, 0x100
jne 0x6c9160
xor edi, edi
mov ecx, 1
mov eax, 2
mov esi, 3
mov ebx, 4
mov ebp, 5
jmp 0x6c92c9
mov eax, dword [esp]
mov byte [esp + edi + 0x2a8], al
mov byte [esp + edi + 0x2ae], 0
nop word cs:[eax + eax]
inc ecx
mov eax, dword [esp + 0x40]
inc eax
inc esi
inc ebx
inc ebp
mov edi, dword [esp + 0x50]
cmp edi, 0x100
je 0x6c968c
mov dword [esp + 0x40], eax
lea eax, [edi + 1]
mov dword [esp + 0x50], eax
cmp edi, 0xfe
ja 0x6c92b0
cmp byte [esp + edi + 0x2a8], 0
je 0x6c92b0
mov eax, dword [esp + 0x50]
movsx edx, byte [esp + eax + 0x2a8]
test edx, edx
je 0x6c9360
mov dword [esp], ecx
movsx eax, byte [esp + edi + 0x2a8]
lea ecx, [eax + edx*2]
cmp ecx, 0xf
jg 0x6c9325
mov byte [esp + edi + 0x2a8], cl
mov byte [esp + edi + 0x2a9], 0
mov ecx, dword [esp]
cmp edi, 0xfd
ja 0x6c92b0
jmp 0x6c936c
add edx, edx
sub eax, edx
cmp eax, 0xfffffff1
mov ecx, dword [esp]
jl 0x6c92b0
mov byte [esp + edi + 0x2a8], al
mov eax, edi
nop
cmp byte [esp + eax + 0x2a9], 0
je 0x6c9441
mov byte [esp + eax + 0x2a9], 0
inc eax
cmp eax, 0xff
jb 0x6c9340
nop
cmp edi, 0xfd
ja 0x6c92b0
movsx edx, byte [esp + edi + 0x2aa]
test edx, edx
je 0x6c93ee
movsx eax, byte [esp + edi + 0x2a8]
mov dword [esp + 4], eax
lea eax, [eax + edx*4]
mov dword [esp], eax
cmp eax, 0x10
jge 0x6c93af
mov eax, dword [esp]
mov byte [esp + edi + 0x2a8], al
mov byte [esp + edi + 0x2aa], 0
cmp edi, 0xfd
je 0x6c92b0
jmp 0x6c93fa
shl edx, 2
mov eax, dword [esp + 4]
sub eax, edx
cmp eax, 0xfffffff1
jl 0x6c92b0
mov byte [esp + edi + 0x2a8], al
mov eax, ecx
nop word [eax + eax]
cmp byte [esp + eax + 0x2a9], 0
je 0x6c94f3
mov byte [esp + eax + 0x2a9], 0
inc eax
cmp eax, 0xff
jb 0x6c93d0
cmp edi, 0xfd
je 0x6c92b0
movsx edx, byte [esp + edi + 0x2ab]
test edx, edx
je 0x6c949e
movsx eax, byte [esp + edi + 0x2a8]
mov dword [esp + 4], eax
lea eax, [eax + edx*8]
mov dword [esp], eax
cmp eax, 0x10
jge 0x6c945a
mov eax, dword [esp]
mov byte [esp + edi + 0x2a8], al
mov byte [esp + edi + 0x2ab], 0
cmp edi, 0xfb
ja 0x6c92b0
jmp 0x6c94aa
mov byte [esp + eax + 0x2a9], 1
cmp edi, 0xfd
ja 0x6c92b0
jmp 0x6c936c
shl edx, 3
mov eax, dword [esp + 4]
sub eax, edx
cmp eax, 0xfffffff1
jl 0x6c92b0
mov byte [esp + edi + 0x2a8], al
mov eax, dword [esp + 0x40]
nop word [eax + eax]
cmp byte [esp + eax + 0x2a9], 0
je 0x6c9597
mov byte [esp + eax + 0x2a9], 0
inc eax
cmp eax, 0xff
jb 0x6c9480
cmp edi, 0xfb
ja 0x6c92b0
movsx edx, byte [esp + edi + 0x2ac]
test edx, edx
je 0x6c954e
movsx eax, byte [esp + edi + 0x2a8]
shl edx, 4
mov dword [esp + 4], eax
add eax, edx
mov dword [esp], eax
cmp eax, 0x10
jge 0x6c950c
mov eax, dword [esp]
mov byte [esp + edi + 0x2a8], al
mov byte [esp + edi + 0x2ac], 0
cmp edi, 0xfb
je 0x6c92b0
jmp 0x6c955a
mov byte [esp + eax + 0x2a9], 1
cmp edi, 0xfd
je 0x6c92b0
jmp 0x6c93fa
mov eax, dword [esp + 4]
sub eax, edx
cmp eax, 0xfffffff1
jl 0x6c92b0
mov byte [esp + edi + 0x2a8], al
mov eax, esi
nop word cs:[eax + eax]
cmp byte [esp + eax + 0x2a9], 0
je 0x6c95ec
mov byte [esp + eax + 0x2a9], 0
inc eax
cmp eax, 0xff
jb 0x6c9530
cmp edi, 0xfb
je 0x6c92b0
movsx edx, byte [esp + edi + 0x2ad]
test edx, edx
je 0x6c960d
movsx eax, byte [esp + edi + 0x2a8]
shl edx, 5
mov dword [esp + 4], eax
add eax, edx
mov dword [esp], eax
cmp eax, 0x10
jge 0x6c95b0
mov eax, dword [esp]
mov byte [esp + edi + 0x2a8], al
mov byte [esp + edi + 0x2ad], 0
jmp 0x6c960d
mov byte [esp + eax + 0x2a9], 1
cmp edi, 0xfb
ja 0x6c92b0
jmp 0x6c94aa
mov eax, dword [esp + 4]
sub eax, edx
cmp eax, 0xfffffff1
jl 0x6c92b0
mov byte [esp + edi + 0x2a8], al
mov eax, ebx
nop dword [eax + eax]
cmp byte [esp + eax + 0x2a9], 0
je 0x6c9605
mov byte [esp + eax + 0x2a9], 0
inc eax
cmp eax, 0xff
jb 0x6c95d0
jmp 0x6c960d
mov byte [esp + eax + 0x2a9], 1
cmp edi, 0xfb
je 0x6c92b0
jmp 0x6c955a
mov byte [esp + eax + 0x2a9], 1
cmp edi, 0xf9
ja 0x6c92b0
movsx edx, byte [esp + edi + 0x2ae]
test edx, edx
je 0x6c92b0
movsx eax, byte [esp + edi + 0x2a8]
shl edx, 6
mov dword [esp + 4], eax
add eax, edx
mov dword [esp], eax
cmp eax, 0x10
jl 0x6c9290
mov eax, dword [esp + 4]
sub eax, edx
cmp eax, 0xfffffff1
jl 0x6c92b0
mov byte [esp + edi + 0x2a8], al
mov eax, ebp
nop
cmp byte [esp + eax + 0x2a9], 0
je 0x6c967f
mov byte [esp + eax + 0x2a9], 0
inc eax
cmp eax, 0xff
jb 0x6c9660
jmp 0x6c92b0
mov byte [esp + eax + 0x2a9], 1
jmp 0x6c92b0
movdqa xmm1, xmmword [0xadc500]
movdqa xmm2, xmmword [0xadc510]
xor ecx, ecx
mov edx, dword [esp + 0x960]
nop word cs:[eax + eax]
movdqu xmmword [esp + 0x40], xmm2
movdqu xmmword [esp + 0x50], xmm1
movzx eax, byte [edx]
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm6, xmm0, 0
pxor xmm0, xmm0
punpcklbw xmm6, xmm0
punpcklwd xmm6, xmm0
movdqu xmm7, xmmword [esp + 0x40]
movdqu xmm1, xmmword [esp + 0x50]
pand xmm1, xmm3
pshufd xmm0, xmm1, 0xee
pshuflw xmm2, xmm0, 0xfe
movdqa xmm5, xmm6
psrld xmm5, xmm2
pshuflw xmm2, xmm0, 0x54
movdqa xmm0, xmm6
psrld xmm0, xmm2
pand xmm7, xmm3
punpckhqdq xmm0, xmm5
pshuflw xmm2, xmm1, 0xfe
movdqa xmm5, xmm6
psrld xmm5, xmm2
pshuflw xmm2, xmm1, 0x54
movdqa xmm1, xmm6
psrld xmm1, xmm2
punpcklqdq xmm1, xmm5
pshufd xmm2, xmm7, 0xee
pshuflw xmm5, xmm2, 0xfe
movdqa xmm3, xmm6
psrld xmm3, xmm5
pshuflw xmm2, xmm2, 0x54
movdqa xmm5, xmm6
psrld xmm5, xmm2
pshuflw xmm2, xmm7, 0xfe
movdqa xmm4, xmm6
psrld xmm4, xmm2
shufps xmm1, xmm0, 0xcc
pshuflw xmm0, xmm7, 0x54
movdqu xmm2, xmmword [esp + 0x40]
psrld xmm6, xmm0
movdqa xmm0, xmmword [0xadc540]
punpckhqdq xmm5, xmm3
movdqa xmm3, xmmword [str._a_a_a_a]
punpcklqdq xmm6, xmm4
shufps xmm6, xmm5, 0xcc
packuswb xmm6, xmm1
movdqu xmm1, xmmword [esp + 0x50]
packuswb xmm6, xmm6
pand xmm6, xmmword [0xadc530]
movq qword [esp + ecx + 0x1a8], xmm6
add ecx, 8
paddd xmm2, xmm0
paddd xmm1, xmm0
inc edx
cmp ecx, 0x100
jne 0x6c96b0
xor ebp, ebp
mov eax, 1
mov ecx, 2
mov edx, 3
mov esi, 4
mov ebx, 5
jmp 0x6c9809
mov ecx, dword [esp]
mov byte [esp + ebp + 0x1a8], cl
mov byte [esp + ebp + 0x1ae], 0
nop
inc eax
mov ecx, dword [esp + 0x40]
inc ecx
inc edx
inc esi
inc ebx
mov ebp, dword [esp + 0x50]
cmp ebp, 0x100
je 0x6c9bcd
mov dword [esp + 0x40], ecx
lea ecx, [ebp + 1]
mov dword [esp + 0x50], ecx
cmp ebp, 0xfe
ja 0x6c97f0
cmp byte [esp + ebp + 0x1a8], 0
je 0x6c97f0
mov ecx, dword [esp + 0x50]
movsx edi, byte [esp + ecx + 0x1a8]
test edi, edi
je 0x6c98a0
mov dword [esp], eax
movsx ecx, byte [esp + ebp + 0x1a8]
lea eax, [ecx + edi*2]
cmp eax, 0xf
jg 0x6c9865
mov byte [esp + ebp + 0x1a8], al
mov byte [esp + ebp + 0x1a9], 0
mov eax, dword [esp]
cmp ebp, 0xfd
ja 0x6c97f0
jmp 0x6c98ac
add edi, edi
sub ecx, edi
cmp ecx, 0xfffffff1
mov eax, dword [esp]
jl 0x6c97f0
mov byte [esp + ebp + 0x1a8], cl
mov ecx, ebp
nop
cmp byte [esp + ecx + 0x1a9], 0
je 0x6c9982
mov byte [esp + ecx + 0x1a9], 0
inc ecx
cmp ecx, 0xff
jb 0x6c9880
nop
cmp ebp, 0xfd
ja 0x6c97f0
movsx edi, byte [esp + ebp + 0x1aa]
test edi, edi
je 0x6c992f
movsx ecx, byte [esp + ebp + 0x1a8]
mov dword [esp + 4], ecx
lea ecx, [ecx + edi*4]
mov dword [esp], ecx
cmp ecx, 0x10
jge 0x6c98ef
mov ecx, dword [esp]
mov byte [esp + ebp + 0x1a8], cl
mov byte [esp + ebp + 0x1aa], 0
cmp ebp, 0xfd
je 0x6c97f0
jmp 0x6c993b
shl edi, 2
mov ecx, dword [esp + 4]
sub ecx, edi
cmp ecx, 0xfffffff1
jl 0x6c97f0
mov byte [esp + ebp + 0x1a8], cl
mov ecx, eax
nop word [eax + eax]
cmp byte [esp + ecx + 0x1a9], 0
je 0x6c9a34
mov byte [esp + ecx + 0x1a9], 0
inc ecx
cmp ecx, 0xff
jb 0x6c9910
cmp ebp, 0xfd
je 0x6c97f0
movsx edi, byte [esp + ebp + 0x1ab]
test edi, edi
je 0x6c99df
movsx ecx, byte [esp + ebp + 0x1a8]
mov dword [esp + 4], ecx
lea ecx, [ecx + edi*8]
mov dword [esp], ecx
cmp ecx, 0x10
jge 0x6c999b
mov ecx, dword [esp]
mov byte [esp + ebp + 0x1a8], cl
mov byte [esp + ebp + 0x1ab], 0
cmp ebp, 0xfb
ja 0x6c97f0
jmp 0x6c99eb
mov byte [esp + ecx + 0x1a9], 1
cmp ebp, 0xfd
ja 0x6c97f0
jmp 0x6c98ac
shl edi, 3
mov ecx, dword [esp + 4]
sub ecx, edi
cmp ecx, 0xfffffff1
jl 0x6c97f0
mov byte [esp + ebp + 0x1a8], cl
mov ecx, dword [esp + 0x40]
nop dword [eax + eax]
cmp byte [esp + ecx + 0x1a9], 0
je 0x6c9ad8
mov byte [esp + ecx + 0x1a9], 0
inc ecx
cmp ecx, 0xff
jb 0x6c99c0
cmp ebp, 0xfb
ja 0x6c97f0
movsx edi, byte [esp + ebp + 0x1ac]
test edi, edi
je 0x6c9a8f
movsx ecx, byte [esp + ebp + 0x1a8]
shl edi, 4
mov dword [esp + 4], ecx
add ecx, edi
mov dword [esp], ecx
cmp ecx, 0x10
jge 0x6c9a4d
mov ecx, dword [esp]
mov byte [esp + ebp + 0x1a8], cl
mov byte [esp + ebp + 0x1ac], 0
cmp ebp, 0xfb
je 0x6c97f0
jmp 0x6c9a9b
mov byte [esp + ecx + 0x1a9], 1
cmp ebp, 0xfd
je 0x6c97f0
jmp 0x6c993b
mov ecx, dword [esp + 4]
sub ecx, edi
cmp ecx, 0xfffffff1
jl 0x6c97f0
mov byte [esp + ebp + 0x1a8], cl
mov ecx, edx
nop word cs:[eax + eax]
cmp byte [esp + ecx + 0x1a9], 0
je 0x6c9b2d
mov byte [esp + ecx + 0x1a9], 0
inc ecx
cmp ecx, 0xff
jb 0x6c9a70
cmp ebp, 0xfb
je 0x6c97f0
movsx edi, byte [esp + ebp + 0x1ad]
test edi, edi
je 0x6c9b4e
movsx ecx, byte [esp + ebp + 0x1a8]
shl edi, 5
mov dword [esp + 4], ecx
add ecx, edi
mov dword [esp], ecx
cmp ecx, 0x10
jge 0x6c9af1
mov ecx, dword [esp]
mov byte [esp + ebp + 0x1a8], cl
mov byte [esp + ebp + 0x1ad], 0
jmp 0x6c9b4e
mov byte [esp + ecx + 0x1a9], 1
cmp ebp, 0xfb
ja 0x6c97f0
jmp 0x6c99eb
mov ecx, dword [esp + 4]
sub ecx, edi
cmp ecx, 0xfffffff1
jl 0x6c97f0
mov byte [esp + ebp + 0x1a8], cl
mov ecx, esi
nop dword [eax]
cmp byte [esp + ecx + 0x1a9], 0
je 0x6c9b46
mov byte [esp + ecx + 0x1a9], 0
inc ecx
cmp ecx, 0xff
jb 0x6c9b10
jmp 0x6c9b4e
mov byte [esp + ecx + 0x1a9], 1
cmp ebp, 0xfb
je 0x6c97f0
jmp 0x6c9a9b
mov byte [esp + ecx + 0x1a9], 1
cmp ebp, 0xf9
ja 0x6c97f0
movsx edi, byte [esp + ebp + 0x1ae]
test edi, edi
je 0x6c97f0
movsx ecx, byte [esp + ebp + 0x1a8]
shl edi, 6
mov dword [esp + 4], ecx
add ecx, edi
mov dword [esp], ecx
cmp ecx, 0x10
jl 0x6c97dc
mov ecx, dword [esp + 4]
sub ecx, edi
cmp ecx, 0xfffffff1
jl 0x6c97f0
mov byte [esp + ebp + 0x1a8], cl
mov ecx, ebx
nop
cmp byte [esp + ecx + 0x1a9], 0
je 0x6c9bc0
mov byte [esp + ecx + 0x1a9], 0
inc ecx
cmp ecx, 0xff
jb 0x6c9ba0
jmp 0x6c97f0
mov byte [esp + ecx + 0x1a9], 1
jmp 0x6c97f0
lea ecx, [esp + 0x448]
mov esi, dword [esp + 0x95c]
mov edx, esi
call fcn.006cf560
movsd xmm0, qword [esi + 0x20]
movsd qword [esp + 0x128], xmm0
movups xmm0, xmmword [esi]
movups xmm1, xmmword [esi + 0x10]
movups xmmword [esp + 0x118], xmm1
movups xmmword [esp + 0x108], xmm0
movups xmm0, xmmword [esi + 0x28]
movups xmm1, xmmword [esi + 0x38]
movups xmmword [esp + 0x130], xmm0
movups xmmword [esp + 0x140], xmm1
movsd xmm0, qword [esi + 0x48]
movsd qword [esp + 0x150], xmm0
movups xmm0, xmmword [esi + 0x50]
movdqu xmm1, xmmword [esi + 0x60]
movups xmmword [esp + 0x158], xmm0
movdqu xmmword [esp + 0x168], xmm1
movsd xmm0, qword [esi + 0x70]
movsd qword [esp + 0x178], xmm0
lea ebp, [esp + 0x60]
lea edx, [esp + 0x108]
mov ecx, ebp
call fcn.006cdac0
lea eax, [esp + 0xd8]
lea ecx, [esp + 0x3a8]
mov edx, ebp
push eax
mov esi, eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x3d0]
lea edi, [esp + 0x88]
lea ebx, [esp + 0xb0]
mov edx, edi
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x3f8]
mov edx, ebx
push esi
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x420]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
mov ecx, ebp
lea edx, [esp + 0x3a8]
lea eax, [esp + 0x448]
push eax
call fcn.006cf640
add esp, 4
lea ecx, [esp + 0x108]
mov edx, ebp
push esi
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
mov edx, edi
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, ebx
push esi
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
lea esi, [esp + 0x4e8]
mov ecx, esi
lea edx, [esp + 0x108]
call fcn.006cf560
mov ecx, ebp
lea edx, [esp + 0x3a8]
push esi
call fcn.006cf640
add esp, 4
lea ecx, [esp + 0x108]
mov edx, ebp
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
mov edx, edi
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, ebx
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
lea esi, [esp + 0x588]
mov ecx, esi
lea edx, [esp + 0x108]
call fcn.006cf560
mov ecx, ebp
lea edx, [esp + 0x3a8]
push esi
call fcn.006cf640
add esp, 4
lea ecx, [esp + 0x108]
mov edx, ebp
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
mov edx, edi
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, ebx
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
lea esi, [esp + 0x628]
mov ecx, esi
lea edx, [esp + 0x108]
call fcn.006cf560
mov ecx, ebp
lea edx, [esp + 0x3a8]
push esi
call fcn.006cf640
add esp, 4
lea ecx, [esp + 0x108]
mov edx, ebp
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
mov edx, edi
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, ebx
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
lea esi, [esp + 0x6c8]
mov ecx, esi
lea edx, [esp + 0x108]
call fcn.006cf560
mov ecx, ebp
lea edx, [esp + 0x3a8]
push esi
call fcn.006cf640
add esp, 4
lea ecx, [esp + 0x108]
mov edx, ebp
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
mov edx, edi
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, ebx
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
lea esi, [esp + 0x768]
mov ecx, esi
lea edx, [esp + 0x108]
call fcn.006cf560
mov ecx, ebp
lea edx, [esp + 0x3a8]
push esi
call fcn.006cf640
add esp, 4
lea ecx, [esp + 0x108]
mov edx, ebp
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
mov edx, edi
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, ebx
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
lea esi, [esp + 0x808]
mov ecx, esi
lea edx, [esp + 0x108]
call fcn.006cf560
mov ecx, ebp
lea edx, [esp + 0x3a8]
push esi
call fcn.006cf640
add esp, 4
lea ecx, [esp + 0x108]
mov esi, ecx
mov edx, ebp
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
mov edx, edi
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, ebx
lea eax, [esp + 0xd8]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x8a8]
mov edx, esi
call fcn.006cf560
xorps xmm0, xmm0
mov ebp, dword [esp + 0x104]
movsd qword [ebp + 0x20], xmm0
xorps xmm0, xmm0
movups xmmword [ebp + 0x10], xmm0
movups xmmword [ebp], xmm0
lea eax, [ebp + 0x28]
mov dword [esp], eax
movups xmmword [ebp + 0x2c], xmm0
movups xmmword [ebp + 0x3c], xmm0
mov dword [ebp + 0x4c], 0
mov dword [ebp + 0x28], 1
lea eax, [ebp + 0x50]
mov dword [esp + 4], eax
movups xmmword [ebp + 0x54], xmm0
movups xmmword [ebp + 0x64], xmm0
mov dword [ebp + 0x74], 0
mov dword [ebp + 0x50], 1
mov dword [esp + 0x50], 0xff
mov eax, 0xfe
nop word cs:[eax + eax]
cmp byte [esp + eax + 0x2a9], 0
jne 0x6ca0ce
cmp byte [esp + eax + 0x1a9], 0
jne 0x6ca0d3
cmp byte [esp + eax + 0x2a8], 0
jne 0x6cacb8
cmp byte [esp + eax + 0x1a8], 0
jne 0x6ca0cf
add dword [esp + 0x50], 0xfffffffe
add eax, 0xfffffffe
cmp eax, 0xfffffffe
jne 0x6ca090
jmp 0x6cacc7
inc eax
mov dword [esp + 0x50], eax
cmp dword [esp + 0x50], 0
js 0x6cacc7
inc dword [esp + 0x50]
jmp 0x6ca1c0
lea ecx, [esp + 0x108]
lea edx, [esp + 0x60]
lea ebp, [esp + 0xd8]
push ebp
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
lea esi, [esp + 0x88]
mov edx, esi
lea edi, [esp + 0xb0]
push edi
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, edi
push ebp
lea ebp, [esp + 0x64]
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push esi
call fcn.006cc420
add esp, 4
shr ebx, 1
imul eax, ebx, 0x78
lea eax, [eax + 0xae3e68]
mov ecx, ebp
lea edx, [esp + 0x108]
push eax
call fcn.006cd7d0
add esp, 4
lea edi, [esp + 0xb0]
mov ebp, dword [esp + 0x104]
mov ecx, ebp
lea edx, [esp + 0x60]
lea ebx, [esp + 0xd8]
push ebx
call fcn.006cc420
add esp, 4
mov ecx, dword [esp]
lea edx, [esp + 0x88]
push edi
call fcn.006cc420
add esp, 4
mov ecx, dword [esp + 4]
mov edx, edi
push ebx
call fcn.006cc420
add esp, 4
dec dword [esp + 0x50]
jle 0x6cacc7
lea ecx, [esp + 0x60]
mov edx, ebp
call fcn.006cdac0
mov eax, dword [esp + 0x50]
movzx eax, byte [esp + eax + 0x2a7]
test al, al
jle 0x6ca290
mov dword [esp + 0x40], eax
lea ecx, [esp + 0x108]
lea edx, [esp + 0x60]
lea ebx, [esp + 0xd8]
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
lea edi, [esp + 0x88]
mov edx, edi
lea esi, [esp + 0xb0]
push esi
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, esi
lea ebp, [esp + 0x60]
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
mov eax, dword [esp + 0x40]
shr eax, 1
lea eax, [eax + eax*4]
shl eax, 5
add eax, esp
add eax, 0x448
mov ecx, ebp
lea edx, [esp + 0x108]
push eax
call fcn.006cf640
add esp, 4
mov eax, dword [esp + 0x50]
movzx ebx, byte [esp + eax + 0x1a7]
test bl, bl
jg 0x6ca0f0
jmp 0x6ca2ac
test al, al
js 0x6ca774
mov eax, dword [esp + 0x50]
movzx ebx, byte [esp + eax + 0x1a7]
test bl, bl
jg 0x6ca0f0
test bl, bl
jns 0x6ca170
lea ecx, [esp + 0x108]
lea edx, [esp + 0x60]
lea ebp, [esp + 0xd8]
push ebp
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
lea edx, [esp + 0x88]
mov esi, edx
lea edi, [esp + 0xb0]
push edi
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, edi
push ebp
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
lea edx, [esp + 0x60]
push esi
call fcn.006cc420
add esp, 4
mov edx, dword [esp + 0x130]
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0x108]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x10c]
mov dword [esp + 0x14], ecx
add eax, edx
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x134]
mov dword [esp + 0x10], eax
lea eax, [ecx + eax]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x138]
mov dword [esp + 0x34], ecx
mov eax, dword [esp + 0x110]
mov dword [esp + 0x38], eax
lea eax, [eax + ecx]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0x2c], ecx
mov eax, dword [esp + 0x114]
mov dword [esp + 0x30], eax
lea eax, [eax + ecx]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x140]
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x118]
mov dword [esp + 0x28], eax
lea eax, [eax + ecx]
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x144]
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x11c]
mov dword [esp + 0x24], eax
lea eax, [eax + ecx]
mov dword [esp + 0x74], eax
mov ebp, dword [esp + 0x148]
mov eax, dword [esp + 0x120]
mov dword [esp + 0x18], eax
lea eax, [eax + ebp]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x124]
mov dword [esp + 0x3c], eax
mov edx, dword [esp + 0x14c]
lea ecx, [eax + edx]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x150]
mov eax, dword [esp + 0x128]
mov dword [esp + 0x100], eax
lea esi, [eax + ecx]
mov dword [esp + 0x80], esi
mov edi, dword [esp + 0x154]
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x1c], eax
lea esi, [eax + edi]
mov dword [esp + 0x84], esi
mov esi, dword [esp + 0xc]
sub esi, dword [esp + 0x40]
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0x10]
sub esi, dword [esp + 0x14]
mov dword [esp + 0x8c], esi
mov esi, dword [esp + 0x34]
sub esi, dword [esp + 0x38]
mov dword [esp + 0x90], esi
mov esi, dword [esp + 0x2c]
sub esi, dword [esp + 0x30]
mov dword [esp + 0x94], esi
mov esi, dword [esp + 8]
sub esi, dword [esp + 0x28]
mov dword [esp + 0x98], esi
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 0x24]
mov dword [esp + 0x9c], eax
sub ebp, dword [esp + 0x18]
mov dword [esp + 0xa0], ebp
sub edx, dword [esp + 0x3c]
mov dword [esp + 0xa4], edx
sub ecx, dword [esp + 0x100]
mov dword [esp + 0xa8], ecx
neg bl
shr bl, 1
movzx eax, bl
imul ebx, eax, 0x78
sub edi, dword [esp + 0x1c]
lea esi, [ebx + 0xae3e68]
mov dword [esp + 0xac], edi
lea eax, [ebx + 0xae3e90]
lea ecx, [esp + 0xb0]
lea edx, [esp + 0x60]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x88]
mov edx, ecx
push esi
call fcn.006cc420
add esp, 4
lea edx, [ebx + 0xae3eb8]
lea ecx, [esp + 0xd8]
lea eax, [esp + 0x180]
push eax
call fcn.006cc420
add esp, 4
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x40], eax
mov edx, dword [esp + 0x88]
mov dword [esp + 0x14], edx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0xc], ecx
sub eax, edx
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x10], eax
sub eax, ecx
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x34], ecx
sub eax, ecx
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x2c], ecx
sub eax, ecx
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x98]
mov dword [esp + 8], ecx
sub eax, ecx
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x24], eax
mov ebx, dword [esp + 0x9c]
sub eax, ebx
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0xa0]
sub eax, edi
mov esi, dword [esp + 0xa4]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x1c], eax
sub eax, esi
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x18], eax
mov edx, dword [esp + 0xa8]
sub eax, edx
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xd4]
mov ecx, dword [esp + 0xac]
mov ebp, eax
sub ebp, ecx
mov dword [esp + 0x84], ebp
mov ebp, dword [esp + 0x14]
add ebp, dword [esp + 0x40]
mov dword [esp + 0x88], ebp
mov ebp, dword [esp + 0xc]
add ebp, dword [esp + 0x10]
mov dword [esp + 0x8c], ebp
mov ebp, dword [esp + 0x34]
add ebp, dword [esp + 0x38]
mov dword [esp + 0x90], ebp
mov ebp, dword [esp + 0x2c]
add ebp, dword [esp + 0x30]
mov dword [esp + 0x94], ebp
mov ebp, dword [esp + 8]
add ebp, dword [esp + 0x28]
mov dword [esp + 0x98], ebp
add ebx, dword [esp + 0x24]
mov dword [esp + 0x9c], ebx
add edi, dword [esp + 0x20]
mov dword [esp + 0xa0], edi
add esi, dword [esp + 0x1c]
mov dword [esp + 0xa4], esi
add edx, dword [esp + 0x18]
mov dword [esp + 0xa8], edx
add ecx, eax
mov dword [esp + 0xac], ecx
movdqu xmm0, xmmword [esp + 0x158]
movdqu xmm1, xmmword [esp + 0x168]
paddd xmm0, xmm0
movdqu xmm3, xmmword [esp + 0xd8]
movdqu xmm2, xmmword [esp + 0xe8]
movdqa xmm4, xmm0
psubd xmm4, xmm3
movdqu xmmword [esp + 0xb0], xmm4
paddd xmm1, xmm1
movdqa xmm4, xmm1
psubd xmm4, xmm2
movdqu xmmword [esp + 0xc0], xmm4
movdqa xmm4, xmm0
paddd xmm0, xmm3
shufps xmm3, xmm2, 3
shufps xmm3, xmm2, 0x98
shufps xmm4, xmm1, 3
shufps xmm4, xmm1, 0x98
paddd xmm4, xmm3
movdqu xmmword [esp + 0xe4], xmm4
paddd xmm1, xmm2
pshufd xmm1, xmm1, 0xff
movd dword [esp + 0xf4], xmm1
movq xmm1, qword [esp + 0x178]
paddd xmm1, xmm1
movq xmm2, qword [esp + 0xf8]
movdqa xmm3, xmm1
psubd xmm3, xmm2
movd dword [esp + 0xd0], xmm3
pshufd xmm3, xmm1, 0x44
punpcklqdq xmm4, xmm2
psubd xmm3, xmm4
shufps xmm3, xmm0, 3
shufps xmm3, xmm0, 0x98
movups xmmword [esp + 0xd4], xmm3
paddd xmm1, xmm2
movq qword [esp + 0xf8], xmm1
jmp 0x6ca170
lea ecx, [esp + 0x108]
lea ebp, [esp + 0x60]
mov edx, ebp
mov dword [esp + 0x40], eax
lea ebx, [esp + 0xd8]
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x130]
lea edx, [esp + 0x88]
mov edi, edx
lea esi, [esp + 0xb0]
push esi
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x158]
mov edx, esi
push ebx
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x180]
mov edx, ebp
push edi
call fcn.006cc420
add esp, 4
mov edi, dword [esp + 0x130]
mov eax, dword [esp + 0x108]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x10c]
mov dword [esp + 0x10], ecx
add eax, edi
mov dword [esp + 0x60], eax
mov ebx, dword [esp + 0x134]
lea eax, [ecx + ebx]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x138]
mov dword [esp + 0x38], ecx
mov eax, dword [esp + 0x110]
mov dword [esp + 0xc], eax
lea eax, [eax + ecx]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x13c]
mov dword [esp + 0x30], ecx
mov eax, dword [esp + 0x114]
mov dword [esp + 0x34], eax
lea eax, [eax + ecx]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x140]
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x118]
mov dword [esp + 0x2c], eax
lea eax, [eax + ecx]
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x144]
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x11c]
mov dword [esp + 8], eax
lea eax, [eax + ecx]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0x148]
mov dword [esp + 0x18], ecx
mov eax, dword [esp + 0x120]
mov dword [esp + 0x1c], eax
lea eax, [eax + ecx]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x124]
mov dword [esp + 0x3c], eax
mov edx, dword [esp + 0x14c]
lea ecx, [eax + edx]
mov dword [esp + 0x7c], ecx
mov esi, dword [esp + 0x150]
mov eax, dword [esp + 0x128]
mov dword [esp + 0x100], eax
lea ebp, [eax + esi]
mov dword [esp + 0x80], ebp
mov ecx, dword [esp + 0x154]
mov eax, dword [esp + 0x12c]
mov dword [esp + 0x24], eax
lea ebp, [eax + ecx]
mov dword [esp + 0x84], ebp
sub edi, dword [esp + 0x14]
mov dword [esp + 0x88], edi
sub ebx, dword [esp + 0x10]
mov dword [esp + 0x8c], ebx
mov edi, dword [esp + 0x38]
sub edi, dword [esp + 0xc]
mov dword [esp + 0x90], edi
mov edi, dword [esp + 0x30]
sub edi, dword [esp + 0x34]
mov dword [esp + 0x94], edi
mov edi, dword [esp + 0x28]
sub edi, dword [esp + 0x2c]
mov dword [esp + 0x98], edi
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 8]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x18]
sub eax, dword [esp + 0x1c]
mov dword [esp + 0xa0], eax
sub edx, dword [esp + 0x3c]
mov dword [esp + 0xa4], edx
sub esi, dword [esp + 0x100]
mov dword [esp + 0xa8], esi
mov eax, dword [esp + 0x40]
neg al
shr al, 1
movzx eax, al
lea esi, [eax + eax*4]
shl esi, 5
sub ecx, dword [esp + 0x24]
lea ebx, [esp + esi]
add ebx, 0x448
mov dword [esp + 0xac], ecx
lea eax, [esp + esi + 0x470]
lea ecx, [esp + 0xb0]
lea edx, [esp + 0x60]
push eax
call fcn.006cc420
add esp, 4
lea ecx, [esp + 0x88]
mov edx, ecx
push ebx
call fcn.006cc420
add esp, 4
lea edx, [esp + esi]
add edx, 0x4c0
lea ecx, [esp + 0xd8]
lea eax, [esp + 0x180]
push eax
call fcn.006cc420
add esp, 4
lea eax, [esp + esi]
add eax, 0x498
lea ecx, [esp + 0x60]
lea edx, [esp + 0x158]
push eax
call fcn.006cc420
add esp, 4
mov edx, dword [esp + 0xb0]
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x14], ecx
mov ecx, edx
sub ecx, eax
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0xb4]
mov esi, dword [esp + 0xb8]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x90]
mov dword [esp + 0xc], esi
add eax, edx
mov edx, dword [esp + 0xbc]
mov dword [esp + 0x3c], edx
mov esi, dword [esp + 0x94]
mov edx, dword [esp + 0xc0]
mov dword [esp + 8], edx
mov edi, dword [esp + 0x98]
mov edx, dword [esp + 0xc4]
mov dword [esp + 0x18], edx
mov ebx, dword [esp + 0x9c]
mov edx, dword [esp + 0xc8]
mov dword [esp + 0x1c], edx
mov ebp, dword [esp + 0xa0]
mov edx, dword [esp + 0xcc]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0xa4]
mov dword [esp + 0x20], edx
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0xa8]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0xd4]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0xac]
mov dword [esp + 0x30], edx
mov dword [esp + 0x88], eax
mov edx, ecx
mov eax, dword [esp + 0x14]
sub ecx, eax
mov dword [esp + 0x38], ecx
add eax, edx
mov dword [esp + 0x8c], eax
mov ecx, dword [esp + 0x10]
mov edx, ecx
mov eax, dword [esp + 0xc]
sub edx, eax
mov dword [esp + 0x14], edx
add eax, ecx
mov dword [esp + 0x90], eax
mov ecx, dword [esp + 0x3c]
mov eax, ecx
sub eax, esi
mov dword [esp + 0xc], eax
add esi, ecx
mov dword [esp + 0x94], esi
mov ecx, dword [esp + 8]
mov eax, ecx
sub eax, edi
mov dword [esp + 0x10], eax
add edi, ecx
mov dword [esp + 0x98], edi
mov ecx, dword [esp + 0x18]
mov eax, ecx
sub eax, ebx
mov dword [esp + 8], eax
add ebx, ecx
mov dword [esp + 0x9c], ebx
mov ecx, dword [esp + 0x1c]
mov eax, ecx
sub eax, ebp
add ebp, ecx
mov dword [esp + 0xa0], ebp
mov edx, dword [esp + 0x24]
mov ecx, edx
mov esi, dword [esp + 0x20]
sub ecx, esi
add esi, edx
mov dword [esp + 0xa4], esi
mov edx, dword [esp + 0x2c]
mov edi, edx
mov esi, dword [esp + 0x28]
sub edi, esi
add esi, edx
mov dword [esp + 0xa8], esi
mov esi, dword [esp + 0x34]
mov edx, esi
mov ebx, dword [esp + 0x30]
sub edx, ebx
add ebx, esi
mov dword [esp + 0xac], ebx
movdqu xmm0, xmmword [esp + 0x60]
movdqu xmm2, xmmword [esp + 0x70]
mov esi, dword [esp + 0x40]
mov dword [esp + 0x60], esi
mov esi, dword [esp + 0x38]
mov dword [esp + 0x64], esi
mov esi, dword [esp + 0x14]
mov dword [esp + 0x68], esi
mov esi, dword [esp + 0xc]
mov dword [esp + 0x6c], esi
paddd xmm0, xmm0
movdqu xmm1, xmmword [esp + 0xd8]
movdqa xmm3, xmm0
psubd xmm3, xmm1
movdqu xmmword [esp + 0xb0], xmm3
mov esi, dword [esp + 0x10]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 8]
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
paddd xmm2, xmm2
movdqu xmm3, xmmword [esp + 0xe8]
movdqa xmm4, xmm2
psubd xmm4, xmm3
movdqu xmmword [esp + 0xc0], xmm4
movdqa xmm4, xmm1
shufps xmm4, xmm3, 3
shufps xmm4, xmm3, 0x98
movdqa xmm5, xmm0
shufps xmm5, xmm2, 3
shufps xmm5, xmm2, 0x98
paddd xmm5, xmm4
movdqu xmmword [esp + 0xe4], xmm5
paddd xmm2, xmm3
pshufd xmm2, xmm2, 0xff
movd dword [esp + 0xf4], xmm2
movq xmm2, qword [esp + 0x80]
mov dword [esp + 0x80], edi
mov dword [esp + 0x84], edx
paddd xmm0, xmm1
paddd xmm2, xmm2
movq xmm1, qword [esp + 0xf8]
movdqa xmm3, xmm2
psubd xmm3, xmm1
movd dword [esp + 0xd0], xmm3
pshufd xmm3, xmm2, 0x44
punpcklqdq xmm4, xmm1
psubd xmm3, xmm4
shufps xmm3, xmm0, 3
shufps xmm3, xmm0, 0x98
movups xmmword [esp + 0xd4], xmm3
paddd xmm2, xmm1
movq qword [esp + 0xf8], xmm2
mov eax, dword [esp + 0x50]
movzx ebx, byte [esp + eax + 0x1a7]
test bl, bl
jg 0x6ca0f0
jmp 0x6ca2ac
dec dword [esp + 0x50]
cmp dword [esp + 0x50], 0
jns 0x6ca0de
add esp, 0x948
pop esi
pop edi
pop ebx
pop ebp
ret