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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x491c
call fcn.00466fe0
mov eax, dword [0x4b3080]
xor eax, esp
mov dword [esp + 0x4918], eax
push ebx
push esi
push edi
mov dword [esp + 0x58], edx
mov esi, ecx
mov dword [esp + 0x40], esi
mov eax, dword [ebp + 8]
mov dword [esp + 0x60], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [ebp + 0x20]
mov dword [esp + 0x2c], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x20], eax
lea eax, [ebx + ebx*4]
shl eax, 3
sar eax, 3
mov dword [esp + 0x44], eax
lea eax, [ebx + ebx]
mov dword [esp + 0x54], eax
lea eax, [ebx + ebx*8]
add eax, eax
push 0xdd0
mov dword [esp + 0x60], eax
lea eax, [esp + 0xbd4]
push 0
push eax
call fcn.00467a60
add esp, 0xc
cmp ebx, 0xc
jne 0x42cbe0
xorps xmm0, xmm0
lea ecx, [esp + 0x130]
push 0x1e0
mov edx, esi
movq qword [esp + 0x8c], xmm0
movups xmmword [esp + 0x7c], xmm0
call fcn.0042c8c0
lea eax, [esp + 0x134]
push eax
lea edx, [esp + 0x46a8]
lea ecx, [esp + 0x80]
call fcn.004313f0
add esp, 4
lea edx, [esp + 0x46a4]
lea ecx, [esp + 0x134]
call fcn.0042ca30
add esp, 4
jmp 0x42cec4
cmp ebx, 0x10
jne 0x42ccf9
cmp dword [esp + 0x20], 2
lea eax, [esp + 0x19a0]
push 0x140
push eax
lea eax, [esp + 0x138]
xorps xmm0, xmm0
lea edx, [esp + 0x80]
mov ecx, esi
push eax
jne 0x42cc26
movups xmmword [esp + 0x84], xmm0
call fcn.004311f0
add esp, 0xc
jmp 0x42cecf
movq qword [esp + 0x84], xmm0
call fcn.00430d20
add esp, 0xc
push 0xa0
lea eax, [esp + 0x19a4]
xorps xmm0, xmm0
push eax
lea eax, [esp + 0x46a8]
movq qword [esp + 0x80], xmm0
push eax
lea edx, [esp + 0x84]
lea ecx, [esp + 0x13c]
call fcn.00430d20
add esp, 0xc
mov eax, 0x9f
movss xmm0, dword [esp + eax*4 + 0x469c]
addss xmm0, dword [esp + eax*4 + 0x46a0]
movss dword [esp + eax*4 + 0x46a0], xmm0
dec eax
test eax, eax
jg 0x42cc73
lea ebx, [esp + 0x47c0]
mov dword [esp + 0x1c], 2
mov dword [esp + 0x18], ebx
mov edx, 0x28
mov ecx, ebx
mov esi, ebx
call fcn.0042f170
movaps xmm3, xmm0
lea eax, [ebx + 0x20]
addsd xmm3, qword [0x4a7a58]
push 0x28
mov edx, ebx
mov dword [esp + 0x38], eax
mov ecx, eax
movsd qword [esp + 0x74], xmm3
call fcn.00430bd0
movsd qword [esp + 0x6c], xmm0
xorps xmm1, xmm1
movaps xmm0, xmm3
add esp, 4
ucomisd xmm1, xmm0
ja 0x42cf07
sqrtsd xmm0, xmm0
jmp 0x42cf0c
cmp ebx, 0x18
jne 0x42ceb6
push 0x3c0
mov edx, esi
lea ecx, [esp + 0x134]
call fcn.0042c8c0
xorps xmm0, xmm0
lea edx, [esp + 0x134]
mov ecx, 0x3c0
mov dword [esp + 0x20], edx
lea eax, [esp + 0x46a4]
mov dword [esp + 0x34], ecx
add esp, 4
mov dword [esp + 0x18], eax
movups xmmword [esp + 0x78], xmm0
movups xmmword [esp + 0x88], xmm0
movups xmmword [esp + 0x19a0], xmm0
mov ebx, 0x1e0
movq qword [esp + 0x19b0], xmm0
cmp ecx, ebx
cmovb ebx, ecx
lea ecx, [esp + 0x90]
push ebx
push 0x49def8
push edx
lea edx, [esp + 0x19c4]
mov dword [esp + 0x58], ebx
call fcn.0042f5c0
add esp, 0xc
cmp ebx, 2
jbe 0x42ce66
mov edi, dword [esp + 0x19a0]
lea eax, [esp + 0x19a4]
mov esi, dword [esp + 0x19a4]
lea ecx, [ebx - 3]
mov dword [esp + 0x10], eax
mov eax, 0xaaaaaaab
mul ecx
mov eax, dword [esp + 0x10]
mov ebx, edx
shr ebx, 1
inc ebx
mov edx, dword [eax + 0xc]
lea ecx, [eax + 0xc]
add edx, esi
mov dword [esp + 0x10], ecx
mov ecx, dword [eax + 8]
mov esi, dword [eax + 4]
add esi, ecx
mov dword [esp + 0x34], ecx
mov ecx, dword [eax + 0x10]
add ecx, edi
movzx eax, dx
imul edi, eax, 0x64e
movzx eax, cx
imul eax, eax, 0x37a
sar edx, 0x10
sar ecx, 0x10
sar edi, 0x10
sar eax, 0x10
add edi, eax
movzx eax, si
imul eax, eax, 0x864
sar esi, 0x10
sar eax, 0x10
add edi, eax
imul eax, edx, 0x64e
add edi, eax
imul eax, ecx, 0x37a
add edi, eax
imul eax, esi, 0x864
add edi, eax
sar edi, 5
inc edi
sar edi, 1
cmp edi, 0x7fff
jle 0x42ce33
mov edi, 0x7fff
jmp 0x42ce41
cmp edi, 0xffff8000
mov eax, 0xffff8000
cmovl edi, eax
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
mov word [esi], di
add esi, 2
mov edi, dword [esp + 0x34]
mov dword [esp + 0x18], esi
mov esi, dword [eax]
sub ebx, 1
jne 0x42cdb8
mov ebx, dword [esp + 0x4c]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
sub ecx, ebx
mov dword [esp + 0x30], ecx
lea edx, [edx + ebx*2]
mov dword [esp + 0x1c], edx
test ecx, ecx
jle 0x42ce9d
movups xmm0, xmmword [esp + ebx*4 + 0x19a0]
movups xmmword [esp + 0x19a0], xmm0
movq xmm0, qword [esp + ebx*4 + 0x19b0]
jmp 0x42cd4f
push ecx
lea edx, [esp + 0x46a4]
lea ecx, [esp + 0x134]
call fcn.0042ca30
add esp, 4
jmp 0x42cec4
mov ecx, 0x140
lea edi, [esp + 0x130]
rep movsd dword es:[edi], dword [esi]
cmp dword [esp + 0x20], 2
jne 0x42cc37
push 0xa0
lea eax, [esp + 0x19a4]
xorps xmm0, xmm0
push eax
lea eax, [esp + 0x46a8]
push eax
lea edx, [esp + 0x84]
lea ecx, [esp + 0x13c]
movups xmmword [esp + 0x84], xmm0
call fcn.004311f0
jmp 0x42cc6b
call fcn.00485ad0
movsd xmm1, qword [esp + 0x68]
mov edi, 9
divsd xmm1, xmm0
mov ebx, dword [esp + 0x34]
cvtpd2ps xmm0, xmm1
addss xmm0, dword [esp + 0xbf0]
movss dword [esp + 0xbf0], xmm0
nop word [eax + eax]
movss xmm1, dword [esi - 4]
sub esi, 4
movsd xmm3, qword [esp + 0x70]
mov edx, esi
mulss xmm1, xmm1
mov ecx, ebx
push 0x28
movss xmm0, dword [esi + 0xa0]
mulss xmm0, xmm0
subss xmm1, xmm0
cvtps2pd xmm0, xmm1
addsd xmm3, xmm0
movsd qword [esp + 0x74], xmm3
call fcn.00430bd0
movsd qword [esp + 0x6c], xmm0
xorps xmm1, xmm1
movaps xmm0, xmm3
add esp, 4
ucomisd xmm1, xmm0
ja 0x42cf95
sqrtsd xmm0, xmm0
jmp 0x42cf9a
call fcn.00485ad0
movsd xmm1, qword [esp + 0x68]
divsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
addss xmm0, dword [esp + edi*4 + 0xbd0]
movss dword [esp + edi*4 + 0xbd0], xmm0
inc edi
cmp edi, 0x48
jle 0x42cf40
mov ebx, dword [esp + 0x18]
add ebx, 0xa0
sub dword [esp + 0x1c], 1
mov dword [esp + 0x18], ebx
jne 0x42cca6
movss xmm2, dword [0x4a7614]
mov eax, 0x48
nop word [eax + eax]
movss xmm1, dword [esp + eax*4 + 0xbd0]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
mulss xmm0, xmm2
subss xmm1, xmm0
movss dword [esp + eax*4 + 0xbd0], xmm1
dec eax
cmp eax, 8
jge 0x42cff0
mov eax, dword [esp + 0x20]
lea edx, [esp + 0xd0]
lea esi, [eax*2 + 4]
push esi
push ecx
lea ecx, [esp + 0xbf8]
call fcn.00431080
movsd xmm1, qword [0x4a7a18]
add esp, 8
xor eax, eax
nop dword [eax + eax]
movss xmm0, dword [esp + eax*4 + 0x47e0]
inc eax
mulss xmm0, xmm0
cvtps2pd xmm0, xmm0
addsd xmm1, xmm0
cmp eax, 0x50
jl 0x42d050
movss xmm2, dword [esp + 0xbf0]
mov ebx, 1
mulsd xmm1, qword [0x4a7810]
movaps xmm0, xmm2
mulss xmm0, xmm2
cvtps2pd xmm0, xmm0
comisd xmm1, xmm0
ja 0x42da6d
mulss xmm2, dword [ebp + 0x18]
xor edx, edx
test esi, esi
jle 0x42d0d0
xor ecx, ecx
movss xmm0, dword [esp + ecx + 0xbf0]
comiss xmm0, xmm2
jbe 0x42d0ce
mov eax, dword [esp + ecx + 0xd0]
inc edx
lea eax, [eax*2 + 0x10]
mov dword [esp + ecx + 0xd0], eax
add ecx, 4
cmp edx, esi
jl 0x42d0a1
jmp 0x42d0d0
mov esi, edx
mov eax, 0x16
cmp eax, 0x1ba
jae 0x42daac
xor ecx, ecx
mov word [esp + eax + 0x46a0], cx
add eax, 2
cmp eax, 0x12a
jl 0x42d0d5
test esi, esi
jle 0x42d114
nop dword [eax + eax]
mov eax, dword [esp + ecx*4 + 0xd0]
inc ecx
mov word [esp + eax*2 + 0x46a0], bx
cmp ecx, esi
jl 0x42d100
mov ecx, 0x93
nop dword [eax]
mov ax, word [esp + ecx*2 + 0x469c]
add ax, word [esp + ecx*2 + 0x469e]
add word [esp + ecx*2 + 0x46a0], ax
dec ecx
cmp ecx, 0x10
jge 0x42d120
xor ecx, ecx
mov eax, 0x10
cmp word [esp + eax*2 + 0x46a2], 0
jle 0x42d158
mov dword [esp + ecx*4 + 0xd0], eax
inc ecx
inc eax
cmp eax, 0x91
jl 0x42d145
movzx ebx, word [esp + 0x47c2]
lea esi, [esp + 0x47c2]
mov dword [esp + 0x3c], ecx
mov edi, 0x84
nop dword [eax + eax]
mov ax, word [esi + 2]
lea ecx, [esi]
movzx edx, word [ecx - 2]
lea esi, [ecx - 2]
add ax, dx
add ax, bx
mov ebx, edx
add word [ecx + 4], ax
sub edi, 1
jne 0x42d180
xor esi, esi
mov ecx, 0x10
cmp word [esp + ecx*2 + 0x46a0], 0
jle 0x42d1bc
lea eax, [ecx - 2]
mov word [esp + esi*2 + 0x46a0], ax
inc esi
inc ecx
cmp ecx, 0x94
jl 0x42d1a5
push 0xdd0
lea eax, [esp + 0xbd4]
mov dword [esp + 0x1c], esi
push 0
push eax
call fcn.00467a60
lea edi, [esp + 0x3bc]
mov dword [esp + 0x1c], 0
add esp, 0xc
mov dword [esp + 0x14], edi
mov edx, 0x28
mov ecx, edi
call fcn.0042f170
xor ebx, ebx
movaps xmm7, xmm0
test esi, esi
jle 0x42d284
nop dword [eax]
movsx esi, word [esp + ebx*2 + 0x46a0]
mov edx, dword [esp + 0x14]
push 0x28
lea eax, [esi*4]
sub edi, eax
mov ecx, edi
call fcn.00430bd0
add esi, dword [esp + 0x14]
movaps xmm6, xmm0
add esp, 4
comisd xmm6, xmmword [0x4a75c0]
jbe 0x42d26b
mov edx, 0x28
mulsd xmm6, xmm6
mov ecx, edi
call fcn.0042f170
mulsd xmm0, xmm7
addsd xmm0, qword [0x4a76d0]
divsd xmm6, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm6
jmp 0x42d26e
xorps xmm0, xmm0
mov edi, dword [esp + 0x14]
inc ebx
movss dword [esp + esi*4 + 0xbd0], xmm0
mov esi, dword [esp + 0x18]
cmp ebx, esi
jl 0x42d210
mov eax, dword [esp + 0x10]
add edi, 0xa0
add eax, 0xdd
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], eax
cmp eax, 0x374
jl 0x42d1f3
movss xmm1, dword [0x4a7bdc]
xor eax, eax
mov ecx, dword [ebp + 0x14]
xorps xmm3, xmm3
mov esi, dword [ebp + 0x20]
movss dword [esp + 0x14], xmm3
movss dword [esp + 0x4c], xmm1
movss dword [esp + 0x30], xmm1
mov dword [esp + 0x38], eax
mov dword [esp + 0x28], 0xffffffff
test ecx, ecx
jle 0x42d336
cmp esi, 0xc
jne 0x42d2f2
add ecx, ecx
mov eax, 0x55555556
imul ecx
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jmp 0x42d307
cmp esi, 0x10
je 0x42d305
cmp esi, 0x18
jne 0x42d30a
mov eax, 0xaaaaaaab
mul ecx
mov ecx, edx
shr ecx, 1
mov dword [ebp + 0x14], ecx
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
call fcn.00484a40
mulsd xmm0, qword [0x4a79a8]
xorps xmm3, xmm3
movss xmm1, dword [0x4a7bdc]
cvtsd2ss xmm0, xmm0
movss dword [esp + 0x1c], xmm0
jmp 0x42d33c
movss dword [esp + 0x1c], xmm3
cmp esi, 8
jne 0x42d34b
cmp dword [esp + 0x20], 0
lea eax, [esi + 3]
jg 0x42d350
mov eax, 3
xor ecx, ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x24], ecx
cmp dword [esp + 0x3c], ecx
jle 0x42da68
nop dword [eax]
nop dword [eax + eax]
mov edi, dword [esp + ecx*4 + 0xd0]
lea esi, [esp + 0x78]
mov ebx, 0x49f8c0
mov dword [esp + 0x18], eax
movaps xmm0, xmm3
xor ecx, ecx
mov edx, ebx
nop dword [eax + eax]
movsx eax, word [edx]
add edx, 0x16
add eax, ecx
add ecx, 0xdd
add eax, edi
addss xmm0, dword [esp + eax*4 + 0xbd0]
movss dword [esi], xmm0
cmp ecx, 0x374
jl 0x42d390
add esi, 4
add ebx, 2
sub dword [esp + 0x18], 1
jne 0x42d384
mov edx, dword [esp + 0x10]
xor esi, esi
xor ecx, ecx
nop word [eax + eax]
movss xmm0, dword [esp + ecx*4 + 0x78]
movaps xmm2, xmm1
comiss xmm0, xmm1
jbe 0x42d3e1
movaps xmm1, xmm0
comiss xmm0, xmm2
mov eax, ecx
cmovbe eax, esi
inc ecx
mov esi, eax
cmp ecx, edx
jl 0x42d3d0
movaps xmm0, xmm3
maxss xmm0, xmm1
movss dword [esp + 0x34], xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
call fcn.00484a40
cmp dword [ebp + 0x14], 0
xorps xmm1, xmm1
mulsd xmm0, qword [0x4a79a8]
movss xmm4, dword [0x4a775c]
movss xmm3, dword [esp + 0x34]
movaps xmm2, xmm3
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm1
mulss xmm0, xmm4
subss xmm2, xmm0
jle 0x42d465
subss xmm1, dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
movss xmm0, dword [eax]
mulss xmm1, xmm1
mulss xmm0, xmm4
mulss xmm0, xmm1
addss xmm1, dword [0x4a7714]
divss xmm0, xmm1
subss xmm2, xmm0
comiss xmm2, dword [esp + 0x30]
jbe 0x42d4a9
movss xmm0, dword [ebp + 0x1c]
mulss xmm0, dword [0x4a7a14]
mulss xmm0, dword [ebp + 0x1c]
comiss xmm3, xmm0
jbe 0x42d4a9
cmp word [esi*2 + 0x49f8c0], 0x10
jg 0x42d4a9
movss dword [esp + 0x30], xmm2
mov ebx, edi
movaps xmm2, xmm3
mov dword [esp + 0x28], ebx
movss dword [esp + 0x14], xmm2
mov dword [esp + 0x38], esi
jmp 0x42d4b7
movss xmm2, dword [esp + 0x14]
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x38]
mov ecx, dword [esp + 0x24]
xorps xmm3, xmm3
movss xmm1, dword [0x4a7bdc]
inc ecx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x24], ecx
cmp ecx, dword [esp + 0x3c]
jl 0x42d370
cmp ebx, 0xffffffff
je 0x42da68
mov eax, dword [ebp + 0x20]
cmp eax, 8
jle 0x42d9d8
cmp eax, 0xc
jne 0x42d504
movsx eax, bx
lea eax, [eax + eax*2]
mov ecx, eax
and eax, 1
sar ecx, 1
add ecx, eax
jmp 0x42d514
cmp eax, 0x10
jne 0x42d50e
lea ecx, [ebx + ebx]
jmp 0x42d514
movsx eax, bx
lea ecx, [eax + eax*2]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x54]
cmp ebx, edx
jle 0x42d52f
cmp ecx, ebx
jle 0x42d528
mov ecx, ebx
jmp 0x42d540
cmp ecx, edx
cmovl ecx, edx
jmp 0x42d540
cmp ecx, edx
jle 0x42d53b
mov ecx, edx
mov dword [esp + 0x10], edx
jmp 0x42d544
cmp ecx, ebx
cmovl ecx, ebx
mov dword [esp + 0x10], ecx
mulss xmm2, dword [0x4a76c8]
lea eax, [ecx - 2]
cmp eax, ebx
mov esi, ebx
xorps xmm1, xmm1
cmovg esi, eax
lea eax, [ecx + 2]
cvtps2pd xmm0, xmm2
cmp eax, edx
mov dword [esp + 0x30], esi
mov ecx, edx
cmovl ecx, eax
xor eax, eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
ucomisd xmm1, xmm0
ja 0x42d580
sqrtsd xmm0, xmm0
jmp 0x42d585
call fcn.00485ad0
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 0x20]
mov edx, dword [esp + 0x40]
cvtsd2ss xmm0, xmm0
mov dword [esp + 0x40], 4
movsx ecx, word [edi*2 + 0x49f948]
movsx ebx, word [edi*2 + 0x49f950]
shl edi, 4
mov dword [esp + 0x14], ecx
movss dword [eax], xmm0
mov eax, dword [esp + 0x44]
shl eax, 4
add edx, eax
mov dword [esp + 0x48], ebx
lea eax, [ebx + ecx]
mov dword [esp + 0x1c], edx
lea ebx, [edi + 0x49f91a]
mov dword [esp + 0x28], edx
lea edi, [ecx*2 + 0x49f7b0]
mov dword [esp + 0x2c], eax
lea ecx, [ecx + ecx*4]
mov dword [esp + 0x20], ebx
shl ecx, 2
mov dword [esp + 0x70], ecx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x18], edi
lea ecx, [esp + ecx + 0x134]
mov dword [esp + 0x24], edi
mov dword [esp + 0x50], ecx
nop word [eax + eax]
movsx ecx, word [ebx - 2]
movsx edi, word [ebx]
mov dword [esp + 0x68], ecx
cmp ecx, edi
jg 0x42d666
lea eax, [ecx + esi]
sub edi, ecx
shl eax, 2
lea ebx, [esp + 0x78]
mov esi, edx
sub esi, eax
inc edi
push dword [esp + 0x44]
mov ecx, dword [esp + 0x2c]
mov edx, esi
call fcn.00430bd0
cvtsd2ss xmm0, xmm0
add esp, 4
lea ebx, [ebx + 4]
sub esi, 4
movss dword [ebx - 4], xmm0
sub edi, 1
jne 0x42d630
mov esi, dword [esp + 0x30]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x3c]
cmp dword [esp + 0x14], eax
jge 0x42d6cc
mov edx, dword [esp + 0x50]
mov edi, dword [esp + 0x24]
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x68]
nop dword [eax]
movsx ecx, word [edi]
lea edi, [edi + 2]
sub ecx, esi
lea edx, [edx + 0x14]
mov eax, dword [esp + ecx*4 + 0x78]
mov dword [edx - 0x18], eax
mov eax, dword [esp + ecx*4 + 0x7c]
mov dword [edx - 0x14], eax
mov eax, dword [esp + ecx*4 + 0x80]
mov dword [edx - 0x10], eax
mov eax, dword [esp + ecx*4 + 0x84]
mov dword [edx - 0xc], eax
mov eax, dword [esp + ecx*4 + 0x88]
mov dword [edx - 8], eax
sub ebx, 1
jne 0x42d680
mov esi, dword [esp + 0x30]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x44]
add ebx, 4
add dword [esp + 0x50], 0x2a8
add dword [esp + 0x24], 0x44
mov dword [esp + 0x3c], ebx
lea ecx, [edi*4]
add edx, ecx
sub dword [esp + 0x40], 1
mov dword [esp + 0x28], edx
jne 0x42d610
mov eax, dword [esp + 0x70]
lea edx, [esp + 0x19a4]
movsd xmm6, qword [0x4a7770]
add eax, edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x40], 4
movsx eax, word [eax - 2]
mov ebx, edx
mov edx, dword [esp + 0x44]
add eax, esi
shl eax, 2
sub ebx, eax
mov ecx, ebx
call fcn.0042f170
mov ecx, dword [esp + 0x20]
movaps xmm2, xmm0
addsd xmm2, xmm6
xorps xmm1, xmm1
movsx eax, word [ecx - 2]
movsx edi, word [ecx]
cvtsd2ss xmm1, xmm2
sub edi, eax
mov eax, 1
inc edi
movss dword [esp + 0x78], xmm1
cmp edi, eax
jle 0x42d7ad
mov edx, dword [esp + 0x44]
lea ecx, [ebx - 4]
dec edx
lea edx, [ebx + edx*4]
movss xmm0, dword [edx]
sub edx, 4
movss xmm1, dword [ecx]
sub ecx, 4
mulss xmm0, xmm0
mulss xmm1, xmm1
cvtps2pd xmm0, xmm0
subsd xmm2, xmm0
cvtps2pd xmm0, xmm1
addsd xmm2, xmm0
movaps xmm0, xmm2
maxsd xmm0, xmm6
cvtsd2ss xmm0, xmm0
movss dword [esp + eax*4 + 0x78], xmm0
inc eax
cmp eax, edi
jl 0x42d773
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
cmp ecx, edi
jge 0x42d81c
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x48]
mov ebx, dword [esp + 0x20]
nop dword [eax]
movsx ecx, word [esi]
lea esi, [esi + 2]
movsx eax, word [ebx - 2]
lea edx, [edx + 0x14]
sub ecx, eax
mov eax, dword [esp + ecx*4 + 0x78]
mov dword [edx - 0x18], eax
mov eax, dword [esp + ecx*4 + 0x7c]
mov dword [edx - 0x14], eax
mov eax, dword [esp + ecx*4 + 0x80]
mov dword [edx - 0x10], eax
mov eax, dword [esp + ecx*4 + 0x84]
mov dword [edx - 0xc], eax
mov eax, dword [esp + ecx*4 + 0x88]
mov dword [edx - 8], eax
sub edi, 1
jne 0x42d7d0
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x44]
mov edx, dword [esp + 0x1c]
add dword [esp + 0x24], 0x2a8
add dword [esp + 0x18], 0x44
lea eax, [ebx*4]
add edx, eax
mov eax, dword [esp + 0x20]
add eax, 4
mov dword [esp + 0x1c], edx
sub dword [esp + 0x40], 1
mov dword [esp + 0x20], eax
jne 0x42d725
mov ebx, dword [esp + 0x10]
xor eax, eax
movss xmm5, dword [0x4a767c]
mov dword [esp + 0x48], eax
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
divss xmm5, xmm0
cmp esi, dword [esp + 0x34]
jg 0x42d9a5
movss xmm6, dword [0x4a77b4]
mov edx, ecx
cmp ecx, edi
jge 0x42d995
lea ecx, [eax + ecx*4]
xorps xmm1, xmm1
add ecx, dword [esp + 0x14]
shl ecx, 2
nop word [eax + eax]
movss xmm4, dword [esp + ecx + 0x19a0]
movss xmm0, dword [esp + ecx + 0x1c48]
cvtps2pd xmm0, xmm0
cvtps2pd xmm4, xmm4
movss xmm2, dword [esp + ecx + 0x130]
addsd xmm4, qword [0x4a76d0]
cvtps2pd xmm2, xmm2
addsd xmm4, xmm0
movss xmm0, dword [esp + ecx + 0x1ef0]
cvtps2pd xmm0, xmm0
addsd xmm2, xmm1
addsd xmm4, xmm0
movss xmm0, dword [esp + ecx + 0x2198]
cvtps2pd xmm0, xmm0
addsd xmm4, xmm0
movss xmm0, dword [esp + ecx + 0x3d8]
cvtps2pd xmm0, xmm0
addsd xmm2, xmm0
movss xmm0, dword [esp + ecx + 0x680]
cvtps2pd xmm0, xmm0
addsd xmm2, xmm0
movss xmm0, dword [esp + ecx + 0x928]
cvtps2pd xmm0, xmm0
addsd xmm2, xmm0
comisd xmm2, xmm1
jbe 0x42d95b
mulsd xmm2, xmm2
lea eax, [edx - 0x11]
movd xmm0, eax
movaps xmm3, xmm6
cvtdq2ps xmm0, xmm0
divsd xmm2, xmm4
movaps xmm1, xmm0
mulss xmm1, xmm5
mulss xmm1, xmm0
cvtpd2ps xmm0, xmm2
subss xmm3, xmm1
xorps xmm1, xmm1
mulss xmm3, xmm0
jmp 0x42d95e
xorps xmm3, xmm3
comiss xmm3, dword [esp + 0x4c]
jbe 0x42d981
movsx eax, word [edx*2 + 0x49f7b0]
add eax, esi
cmp eax, dword [esp + 0x5c]
jg 0x42d981
movss dword [esp + 0x4c], xmm3
mov ebx, esi
mov dword [esp + 0x38], edx
inc edx
add ecx, 0x14
cmp edx, edi
jl 0x42d8a0
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x14]
inc eax
inc esi
mov dword [esp + 0x48], eax
cmp esi, dword [esp + 0x34]
jle 0x42d883
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x58]
movsx eax, word [esi*2 + 0x49f7b0]
movsx ecx, word [esi*2 + 0x49f87c]
add eax, ebx
mov dword [edi], eax
movsx eax, word [esi*2 + 0x49f7f4]
add eax, ebx
mov dword [edi + 4], eax
movsx eax, word [esi*2 + 0x49f838]
jmp 0x42da30
mulss xmm2, dword [0x4a76c8]
xorps xmm1, xmm1
cvtps2pd xmm0, xmm2
ucomisd xmm1, xmm0
ja 0x42d9f2
sqrtsd xmm0, xmm0
jmp 0x42d9f7
call fcn.00485ad0
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 0x58]
movsx ecx, word [esi*2 + 0x49f902]
cvtsd2ss xmm0, xmm0
movss dword [eax], xmm0
movsx eax, word [esi*2 + 0x49f8c0]
add eax, ebx
mov dword [edi], eax
movsx eax, word [esi*2 + 0x49f8d6]
add eax, ebx
mov dword [edi + 4], eax
movsx eax, word [esi*2 + 0x49f8ec]
add eax, ebx
mov edx, 0xc
mov dword [edi + 8], eax
add ecx, ebx
mov eax, ebx
sub eax, dword [esp + 0x54]
mov dword [edx + edi], ecx
mov ecx, dword [esp + 0x60]
mov dword [ecx], eax
mov eax, dword [esp + 0x64]
mov dword [eax], esi
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x4918]
xor ecx, esp
call fcn.004661fb
mov esp, ebp
pop ebp
ret
mov ebx, 1
mov ecx, dword [esp + 0x58]
xorps xmm0, xmm0
mov eax, dword [esp + 0x2c]
pop edi
pop esi
movups xmmword [ecx], xmm0
mov ecx, dword [esp + 0x58]
mov dword [eax], 0
mov eax, dword [esp + 0x5c]
mov dword [ecx], 0
mov ecx, dword [esp + 0x491c]
mov dword [eax], 0
mov eax, ebx
pop ebx
xor ecx, esp
call fcn.004661fb
mov esp, ebp
pop ebp
ret
call fcn.00466833
int3