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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x134
push ebx
push esi
push edi
mov esi, ecx
lea eax, [esp + 0xc8]
push eax
lea ecx, [esp + 0xd4]
push ecx
lea edx, [esp + 0xe8]
push edx
lea eax, [esp + 0xe4]
xor edi, edi
push eax
mov ecx, esi
mov dword [esp + 0x88], edi
mov dword [esp + 0x78], edi
mov byte [esp + 0x72], 0
call fcn.004a3fa0
test al, al
jne 0x4a4e47
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
movsd xmm0, qword [0x57e350]
mov ecx, dword [ebp + 0xc]
movsd qword [ecx], xmm0
xorps xmm0, xmm0
xor edx, edx
mov byte [esp + 0x63], 0
movsd qword [esp + 0xc0], xmm0
movsd qword [esp + 0xb8], xmm0
movsd qword [esp + 0xb0], xmm0
movsd qword [esp + 0xa0], xmm0
movsd qword [esp + 0x98], xmm0
movsd qword [esp + 0x90], xmm0
mov dword [esp + 0x40], edx
cmp dword [esi + 0x14], edi
jle 0x4a5047
mov eax, dword [esi + 0x10]
lea ecx, [eax + 1]
imul ecx, edx
xor ebx, ebx
mov dword [esp + 0x50], ecx
test eax, eax
jle 0x4a5032
lea ecx, [ecx + ecx*2]
add ecx, ecx
add ecx, ecx
mov dword [esp + 0x3c], ecx
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x3c]
add eax, ebx
lea eax, [eax + edx + 1]
lea edi, [eax + eax*2]
mov eax, dword [esi + 0xc0]
add ecx, eax
add edi, edi
add edi, edi
add eax, edi
push eax
mov eax, dword [ebp + 0x10]
lea edx, [ecx + 0xc]
push edx
push ecx
push eax
lea ecx, [esp + 0xb8]
push ecx
lea edx, [esp + 0xc4]
push edx
call fcn.004baa90
add esp, 0x18
test eax, eax
je 0x4a4f7a
mov eax, dword [ebp + 0xc]
movsd xmm1, qword [eax]
movsd xmm0, qword [esp + 0xa8]
comisd xmm1, xmm0
jbe 0x4a4f7a
movq xmm1, qword [esp + 0xb0]
movq qword [esp + 0x90], xmm1
movq xmm1, qword [esp + 0xb8]
movq qword [esp + 0x98], xmm1
movq xmm1, qword [esp + 0xc0]
movsd qword [eax], xmm0
mov eax, dword [esp + 0x40]
movq qword [esp + 0xa0], xmm1
movsd xmm1, qword [ebp + 0x14]
comisd xmm1, xmm0
mov byte [esp + 0x63], 1
mov dword [esp + 0x78], ebx
mov dword [esp + 0x68], eax
ja 0x4a5042
mov eax, dword [esi + 0xc0]
lea ecx, [eax + edi]
push ecx
add ecx, 0xc
push ecx
mov ecx, dword [esp + 0x44]
lea edx, [eax + ecx + 0xc]
mov eax, dword [ebp + 0x10]
push edx
push eax
lea ecx, [esp + 0xb8]
push ecx
lea edx, [esp + 0xc4]
push edx
call fcn.004baa90
add esp, 0x18
test eax, eax
je 0x4a501d
mov eax, dword [ebp + 0xc]
movsd xmm1, qword [eax]
movsd xmm0, qword [esp + 0xa8]
comisd xmm1, xmm0
jbe 0x4a501d
movq xmm1, qword [esp + 0xb0]
movq qword [esp + 0x90], xmm1
movq xmm1, qword [esp + 0xb8]
movq qword [esp + 0x98], xmm1
movq xmm1, qword [esp + 0xc0]
movsd qword [eax], xmm0
mov eax, dword [esp + 0x40]
movq qword [esp + 0xa0], xmm1
movsd xmm1, qword [ebp + 0x14]
comisd xmm1, xmm0
mov byte [esp + 0x63], 1
mov dword [esp + 0x78], ebx
mov dword [esp + 0x68], eax
ja 0x4a5042
mov eax, dword [esi + 0x10]
add dword [esp + 0x3c], 0xc
inc ebx
cmp ebx, eax
jl 0x4a4ec5
mov edx, dword [esp + 0x40]
inc edx
mov dword [esp + 0x40], edx
cmp edx, dword [esi + 0x14]
jl 0x4a4ea3
jmp 0x4a5047
mov byte [esp + 0x62], 1
cmp byte [esp + 0x63], 0
xorps xmm0, xmm0
mov dword [esp + 0x3c], 0
jne 0x4a51b8
cmp dword [esi + 0x14], 0
mov eax, dword [ebp + 0x10]
movq xmm1, qword [eax]
movq qword [esp + 0x90], xmm1
movq xmm1, qword [eax + 8]
movq qword [esp + 0x98], xmm1
movq xmm1, qword [eax + 0x10]
movq qword [esp + 0xa0], xmm1
mov dword [esp + 0x40], 0
jl 0x4a51b8
jmp 0x4a50a0
xor edi, edi
cmp dword [esi + 0x10], edi
jl 0x4a519a
mov ebx, dword [esp + 0x3c]
lea ebx, [ebx + ebx*2]
add ebx, ebx
add ebx, ebx
jmp 0x4a50c0
mov ecx, dword [ebp + 0x10]
mov eax, dword [esi + 0xc0]
movsd xmm1, qword [ecx]
movss dword [esp + 0x74], xmm0
movss dword [esp + 0x70], xmm0
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [eax + ebx]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm0, xmm1
movsd xmm1, qword [ecx + 8]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [eax + ebx + 4]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm0, xmm1
movsd xmm1, qword [ecx + 0x10]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x70], xmm0
movss xmm0, dword [eax + ebx + 8]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x6c]
movss dword [esp + 0x74], xmm0
call fcn.004ce250
fst qword [esp + 0xa8]
mov ecx, dword [ebp + 0xc]
fld qword [ecx]
fcompi st(1)
fstp st(0)
jbe 0x4a5186
movsd xmm0, qword [esp + 0xa8]
mov eax, dword [esp + 0x40]
movsd xmm1, qword [ebp + 0x14]
comisd xmm1, xmm0
mov edx, ecx
movsd qword [edx], xmm0
mov dword [esp + 0x78], edi
mov dword [esp + 0x68], eax
ja 0x4a51b5
inc dword [esp + 0x3c]
xorps xmm0, xmm0
inc edi
add ebx, 0xc
cmp edi, dword [esi + 0x10]
jle 0x4a50c0
cmp byte [esp + 0x62], 0
jne 0x4a51b8
mov eax, dword [esp + 0x40]
inc eax
mov dword [esp + 0x40], eax
cmp eax, dword [esi + 0x14]
jle 0x4a50a0
jmp 0x4a51b8
xorps xmm0, xmm0
mov ecx, dword [ebp + 0xc]
movsd xmm1, qword [ecx]
comisd xmm1, xmmword [0x57b810]
jbe 0x4a5a2c
cmp byte [esi + 0x1e], 0
movss xmm1, dword [0x57db50]
je 0x4a53e4
cmp dword [esp + 0x68], 0
jne 0x4a53e4
mov ecx, dword [esi + 0x10]
xor ebx, ebx
movss dword [esp + 0x3c], xmm1
test ecx, ecx
js 0x4a5608
movsd xmm1, qword [esp + 0x90]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x40], xmm1
movsd xmm1, qword [esp + 0x98]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x88], xmm1
movsd xmm1, qword [esp + 0xa0]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x64], xmm1
xor edi, edi
jmp 0x4a5240
mov eax, dword [esi + 0xc0]
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x54], xmm0
movss dword [esp + 0x50], xmm0
movss xmm1, dword [eax + edi]
lea ecx, [ecx + ebx + 1]
lea edx, [ecx + ecx*2]
movss xmm0, dword [eax + edx*4]
cvtps2pd xmm0, xmm0
lea ecx, [eax + edx*4]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x50], xmm0
movss xmm0, dword [ecx + 4]
movss xmm1, dword [eax + edi + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x54], xmm0
movss xmm0, dword [ecx + 8]
movss xmm1, dword [eax + edi + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x50]
movss dword [esp + 0x58], xmm0
call fcn.004ce2b0
fstp st(0)
xorps xmm0, xmm0
mov eax, dword [esi + 0xc0]
movss xmm1, dword [esp + 0x40]
movss dword [esp + 0x4c], xmm0
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [esp + 0x88]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [esp + 0x64]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x48], xmm0
movss xmm0, dword [eax + edi + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x44]
movss dword [esp + 0x4c], xmm0
call fcn.004ce2b0
fstp st(0)
movss xmm1, dword [esp + 0x50]
movss xmm0, dword [esp + 0x44]
movss xmm2, dword [esp + 0x54]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x48]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movss xmm2, dword [esp + 0x58]
addsd xmm0, xmm1
movss xmm1, dword [esp + 0x4c]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
xorps xmm0, xmmword [0x57db40]
xorps xmm1, xmm1
cvtps2pd xmm1, xmm0
movss xmm2, dword [esp + 0x3c]
cvtps2pd xmm2, xmm2
addsd xmm2, qword [0x57e388]
comisd xmm1, xmm2
jbe 0x4a53cd
movss dword [esp + 0x3c], xmm0
mov dword [esp + 0x78], ebx
mov ecx, dword [esi + 0x10]
xorps xmm0, xmm0
inc ebx
add edi, 0xc
cmp ebx, ecx
jle 0x4a5240
jmp 0x4a5600
cmp byte [esi + 0x1f], 0
je 0x4a5608
mov eax, dword [esp + 0x68]
cmp eax, dword [esi + 0x14]
jne 0x4a5608
xor ebx, ebx
movss dword [esp + 0x3c], xmm1
cmp dword [esi + 0x10], ebx
jl 0x4a5608
movsd xmm1, qword [esp + 0x90]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x40], xmm1
movsd xmm1, qword [esp + 0x98]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x88], xmm1
movsd xmm1, qword [esp + 0xa0]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x64], xmm1
jmp 0x4a5450
mov edx, dword [esi + 0x10]
mov ecx, dword [esi + 0xc0]
lea eax, [edx + 1]
imul eax, dword [esi + 0x14]
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x54], xmm0
movss dword [esp + 0x50], xmm0
lea edi, [eax + ebx]
sub eax, edx
add eax, ebx
lea edi, [edi + edi*2]
lea edx, [eax + eax*2]
movss xmm0, dword [ecx + edx*4 - 0xc]
cvtps2pd xmm0, xmm0
lea eax, [ecx + edx*4 - 0xc]
add edi, edi
add edi, edi
movss xmm1, dword [ecx + edi]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x50], xmm0
movss xmm1, dword [ecx + edi + 4]
movss xmm0, dword [eax + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x54], xmm0
movss xmm1, dword [ecx + edi + 8]
movss xmm0, dword [eax + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x50]
movss dword [esp + 0x58], xmm0
call fcn.004ce2b0
fstp st(0)
xorps xmm0, xmm0
mov eax, dword [esi + 0xc0]
movss xmm1, dword [esp + 0x40]
movss dword [esp + 0x4c], xmm0
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [esp + 0x88]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [esp + 0x64]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x48], xmm0
movss xmm0, dword [eax + edi + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x44]
movss dword [esp + 0x4c], xmm0
call fcn.004ce2b0
fstp st(0)
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 0x50]
movss xmm2, dword [esp + 0x54]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x48]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
addsd xmm0, xmm1
movss xmm1, dword [esp + 0x4c]
cvtps2pd xmm1, xmm1
movss xmm2, dword [esp + 0x58]
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movss xmm2, dword [esp + 0x3c]
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
xorps xmm0, xmmword [0x57db40]
xorps xmm1, xmm1
cvtps2pd xmm2, xmm2
addsd xmm2, qword [0x57e388]
cvtps2pd xmm1, xmm0
comisd xmm1, xmm2
jbe 0x4a55f3
movss dword [esp + 0x3c], xmm0
mov dword [esp + 0x78], ebx
xorps xmm0, xmm0
inc ebx
cmp ebx, dword [esi + 0x10]
jle 0x4a5450
movss xmm1, dword [0x57db50]
cmp byte [esi + 0x1c], 0
je 0x4a5814
cmp dword [esp + 0x78], 0
jne 0x4a5814
xor ebx, ebx
movss dword [esp + 0x3c], xmm1
cmp dword [esi + 0x14], ebx
jl 0x4a5a2c
movsd xmm1, qword [esp + 0x90]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x40], xmm1
movsd xmm1, qword [esp + 0x98]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x88], xmm1
movsd xmm1, qword [esp + 0xa0]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x64], xmm1
lea ebx, [ebx]
mov eax, dword [esi + 0x10]
inc eax
imul eax, ebx
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x54], xmm0
movss dword [esp + 0x50], xmm0
lea edi, [eax + eax*2]
mov eax, dword [esi + 0xc0]
add edi, edi
add edi, edi
movss xmm0, dword [eax + edi + 0xc]
movss xmm1, dword [eax + edi]
cvtps2pd xmm0, xmm0
add eax, edi
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x50], xmm0
movss xmm0, dword [eax + 0x10]
movss xmm1, dword [eax + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x54], xmm0
movss xmm0, dword [eax + 0x14]
movss xmm1, dword [eax + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x50]
movss dword [esp + 0x58], xmm0
call fcn.004ce2b0
fstp st(0)
xorps xmm0, xmm0
mov eax, dword [esi + 0xc0]
movss xmm1, dword [esp + 0x40]
movss dword [esp + 0x4c], xmm0
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [esp + 0x88]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [esp + 0x64]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x48], xmm0
movss xmm0, dword [eax + edi + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x44]
movss dword [esp + 0x4c], xmm0
call fcn.004ce2b0
fstp st(0)
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 0x50]
movss xmm2, dword [esp + 0x54]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x48]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movss xmm2, dword [esp + 0x58]
addsd xmm0, xmm1
movss xmm1, dword [esp + 0x4c]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
addsd xmm0, xmm1
movss xmm2, dword [esp + 0x3c]
cvtpd2ps xmm0, xmm0
xorps xmm0, xmmword [0x57db40]
xorps xmm1, xmm1
cvtps2pd xmm2, xmm2
addsd xmm2, qword [0x57e388]
cvtps2pd xmm1, xmm0
comisd xmm1, xmm2
jbe 0x4a5802
movss dword [esp + 0x3c], xmm0
mov dword [esp + 0x68], ebx
xorps xmm0, xmm0
inc ebx
cmp ebx, dword [esi + 0x14]
jle 0x4a5670
jmp 0x4a5a2c
cmp byte [esi + 0x1d], 0
je 0x4a5a2c
mov ecx, dword [esp + 0x78]
cmp ecx, dword [esi + 0x10]
jne 0x4a5a2c
cmp dword [esi + 0x14], 0
movss dword [esp + 0x50], xmm1
mov dword [esp + 0x3c], 0
jl 0x4a5a2c
movsd xmm1, qword [esp + 0x90]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x40], xmm1
movsd xmm1, qword [esp + 0x98]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x88], xmm1
movsd xmm1, qword [esp + 0xa0]
cvtpd2ps xmm1, xmm1
movss dword [esp + 0x64], xmm1
nop
mov eax, dword [esi + 0x10]
mov ebx, dword [esp + 0x3c]
inc eax
inc ebx
imul eax, ebx
movss dword [esp + 0x74], xmm0
movss dword [esp + 0x70], xmm0
movss dword [esp + 0x6c], xmm0
lea edi, [eax + eax*2 - 3]
mov eax, dword [esi + 0xc0]
add edi, edi
add edi, edi
movss xmm0, dword [eax + edi - 0xc]
movss xmm1, dword [eax + edi]
cvtps2pd xmm0, xmm0
add eax, edi
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [eax - 8]
movss xmm1, dword [eax + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x70], xmm0
movss xmm0, dword [eax - 4]
movss xmm1, dword [eax + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x6c]
movss dword [esp + 0x74], xmm0
call fcn.004ce2b0
fstp st(0)
xorps xmm0, xmm0
mov eax, dword [esi + 0xc0]
movss xmm1, dword [esp + 0x40]
movss dword [esp + 0x4c], xmm0
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [esp + 0x88]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [esp + 0x64]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x48], xmm0
movss xmm0, dword [eax + edi + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x44]
movss dword [esp + 0x4c], xmm0
call fcn.004ce2b0
fstp st(0)
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 0x6c]
movss xmm2, dword [esp + 0x70]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x48]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movss xmm2, dword [esp + 0x74]
addsd xmm0, xmm1
movss xmm1, dword [esp + 0x4c]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movss xmm2, dword [esp + 0x50]
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
xorps xmm0, xmmword [0x57db40]
xorps xmm1, xmm1
cvtps2pd xmm2, xmm2
addsd xmm2, qword [0x57e388]
cvtps2pd xmm1, xmm0
comisd xmm1, xmm2
jbe 0x4a5a1c
mov eax, dword [esp + 0x3c]
movss dword [esp + 0x50], xmm0
mov dword [esp + 0x68], eax
xorps xmm0, xmm0
mov dword [esp + 0x3c], ebx
cmp ebx, dword [esi + 0x14]
jle 0x4a5880
mov eax, dword [esi + 0x10]
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x78]
movsd xmm1, qword [esi + 0x30]
lea ebx, [eax + 1]
mov dword [esp + 0x64], ebx
imul ebx, edx
add ebx, ecx
movsd qword [esp + 0x50], xmm1
cmp ecx, eax
jne 0x4a5a5f
movsd xmm1, qword [esi + 0x38]
movsd qword [esp + 0x50], xmm1
jmp 0x4a5a85
test ecx, ecx
jle 0x4a5a85
xorps xmm2, xmm2
lea eax, [ecx - 1]
cvtsi2sd xmm2, eax
mulsd xmm2, qword [esi + 0x20]
addsd xmm2, qword [esp + 0xd8]
addsd xmm2, xmm1
movsd qword [esp + 0x50], xmm2
movsd xmm1, qword [esi + 0x40]
movsd qword [esp + 0x88], xmm1
cmp edx, dword [esi + 0x14]
jne 0x4a5aa8
movsd xmm1, qword [esi + 0x48]
movsd qword [esp + 0x88], xmm1
jmp 0x4a5acf
test edx, edx
jle 0x4a5acf
xorps xmm2, xmm2
dec edx
cvtsi2sd xmm2, edx
mulsd xmm2, qword [esi + 0x28]
addsd xmm2, qword [esp + 0xd0]
addsd xmm2, xmm1
movsd qword [esp + 0x88], xmm2
cmp ecx, dword [esi + 0x10]
lea ecx, [ebx + 1]
jl 0x4a5ada
lea ecx, [ebx - 1]
mov eax, dword [esi + 0xc0]
movss dword [esp + 0x84], xmm0
movss dword [esp + 0x80], xmm0
movss dword [esp + 0x7c], xmm0
lea edi, [ebx + ebx*2]
lea ecx, [ecx + ecx*2]
movss xmm0, dword [eax + ecx*4]
cvtps2pd xmm0, xmm0
lea ecx, [eax + ecx*4]
add edi, edi
add edi, edi
movss xmm1, dword [eax + edi]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x7c], xmm0
movss xmm0, dword [ecx + 4]
movss xmm1, dword [eax + edi + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x80], xmm0
movss xmm0, dword [ecx + 8]
movss xmm1, dword [eax + edi + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x7c]
movss dword [esp + 0x84], xmm0
call fcn.004ce2b0
fstp dword [esp + 0x40]
fld qword [0x57b810]
movsd xmm1, qword [0x57b708]
fld dword [esp + 0x40]
fcompi st(1)
fstp st(0)
jbe 0x4a5f16
xorps xmm0, xmm0
mov eax, dword [esi + 0xc0]
movsd xmm1, qword [esp + 0x90]
movss dword [esp + 0x4c], xmm0
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm0, xmm1
movsd xmm1, qword [esp + 0x98]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi + 4]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm0, xmm1
movsd xmm1, qword [esp + 0xa0]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x48], xmm0
movss xmm0, dword [eax + edi + 8]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x44]
movss dword [esp + 0x4c], xmm0
call fcn.004ce2b0
fstp dword [esp + 0x3c]
fld qword [0x57b810]
fld dword [esp + 0x3c]
fcompi st(1)
fstp st(0)
jbe 0x4a5f0e
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x80]
mov eax, dword [esi + 0x10]
mov ecx, dword [esp + 0x78]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x48]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movss xmm2, dword [esp + 0x84]
addsd xmm0, xmm1
movss xmm1, dword [esp + 0x4c]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
addsd xmm0, xmm1
movss xmm1, dword [0x57db40]
cvtpd2ps xmm0, xmm0
xorps xmm0, xmm1
cmp ecx, eax
jne 0x4a5d12
movsd xmm1, qword [0x57ca30]
cvtps2pd xmm0, xmm0
andpd xmm0, xmm1
movss xmm1, dword [esp + 0x3c]
cvtsd2ss xmm0, xmm0
cvtps2pd xmm1, xmm1
cvtss2sd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x40]
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
movsd xmm1, qword [0x57b708]
comisd xmm1, xmm0
jbe 0x4a5f16
mulsd xmm0, qword [esp + 0xe0]
movsd xmm2, qword [esp + 0x50]
subsd xmm2, xmm0
movapd xmm0, xmm2
movsd qword [esp + 0x50], xmm0
jmp 0x4a5f1c
comiss xmm0, dword [0x57b9e0]
jbe 0x4a5da9
movss xmm1, dword [esp + 0x3c]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x40]
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
movsd xmm1, qword [0x57b708]
comisd xmm0, xmm1
jbe 0x4a5d4e
movapd xmm0, xmm1
dec eax
cmp ecx, eax
jne 0x4a5d6d
mulsd xmm0, qword [esp + 0xe0]
addsd xmm0, qword [esp + 0x50]
movsd qword [esp + 0x50], xmm0
jmp 0x4a5f1c
test ecx, ecx
jne 0x4a5d8b
mulsd xmm0, qword [esp + 0xd8]
addsd xmm0, qword [esp + 0x50]
movsd qword [esp + 0x50], xmm0
jmp 0x4a5f1c
movsd xmm2, qword [esi + 0x20]
mulsd xmm2, xmm0
addsd xmm2, qword [esp + 0x50]
movapd xmm0, xmm2
movsd qword [esp + 0x50], xmm0
jmp 0x4a5f1c
test ecx, ecx
je 0x4a5f0e
mov eax, dword [esi + 0xc0]
movss xmm0, dword [eax + edi - 0xc]
movss xmm1, dword [eax + edi]
cvtps2pd xmm0, xmm0
add eax, edi
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [eax + 4]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [eax - 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [eax + 8]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x70], xmm0
movss xmm0, dword [eax - 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x74], xmm0
mov eax, dword [esp + 0x74]
movq xmm0, qword [esp + 0x6c]
lea ecx, [esp + 0x7c]
movq qword [esp + 0x7c], xmm0
mov dword [esp + 0x84], eax
call fcn.004ce2b0
fstp dword [esp + 0x40]
fld qword [0x57b810]
fld dword [esp + 0x40]
fcompi st(1)
fstp st(0)
jbe 0x4a5f0e
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x80]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x48]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movss xmm2, dword [esp + 0x84]
addsd xmm0, xmm1
movss xmm1, dword [esp + 0x4c]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
addsd xmm0, xmm1
movsd xmm1, qword [0x57ca30]
cvtpd2ps xmm0, xmm0
cvtss2sd xmm0, xmm0
andpd xmm0, xmm1
movss xmm1, dword [esp + 0x3c]
cvtsd2ss xmm0, xmm0
cvtps2pd xmm1, xmm1
cvtss2sd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x40]
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
movsd xmm1, qword [0x57b708]
comisd xmm0, xmm1
jbe 0x4a5ee6
movapd xmm0, xmm1
jmp 0x4a5ef3
xorps xmm2, xmm2
comisd xmm2, xmm0
jbe 0x4a5ef3
movapd xmm0, xmm2
movsd xmm2, qword [esi + 0x20]
mulsd xmm2, xmm0
movsd xmm0, qword [esp + 0x50]
subsd xmm0, xmm2
movsd qword [esp + 0x50], xmm0
jmp 0x4a5f1c
movsd xmm1, qword [0x57b708]
movsd xmm0, qword [esp + 0x50]
cmp byte [esi + 0x18], 0
jne 0x4a5f2c
cmp byte [esi + 0x1a], 0
je 0x4a5fc9
cmp dword [esi + 0xc], 0x3b
jne 0x4a5f92
mov eax, dword [esi + 0xd0]
mov ecx, dword [esi + 0xc8]
add ecx, eax
cmp dword [esi + 0xfc], ecx
jl 0x4a5f6f
mov edx, dword [esi + 0xd8]
shr edx, 2
test dl, 1
mov edx, dword [esi + 0xf4]
je 0x4a5f64
movsd xmm1, qword [edx + ecx*8 - 8]
jmp 0x4a5f6f
mov ecx, dword [esi + 0xc8]
movsd xmm1, qword [edx + ecx*8]
cmp dword [esi + 0xfc], eax
jl 0x4a5f89
mov ecx, dword [esi + 0xf4]
movsd xmm2, qword [ecx + eax*8 - 8]
subsd xmm1, xmm2
jmp 0x4a5fa4
xorps xmm2, xmm2
subsd xmm1, xmm2
jmp 0x4a5fa4
cmp byte [esi + 0x1a], 0
je 0x4a5f9f
movsd xmm1, qword [esi + 0x70]
jmp 0x4a5fa4
movsd xmm1, qword [esi + 0x38]
xorps xmm2, xmm2
comisd xmm2, xmm0
jbe 0x4a5fb9
addsd xmm1, xmm0
movsd qword [esp + 0x50], xmm1
jmp 0x4a5fc9
comisd xmm0, xmm1
jbe 0x4a5fc9
subsd xmm0, xmm1
movsd qword [esp + 0x50], xmm0
mov edx, dword [esp + 0x68]
cmp edx, dword [esi + 0x14]
jge 0x4a5fdb
mov eax, dword [esp + 0x64]
lea ecx, [ebx + eax]
jmp 0x4a5fe1
mov ecx, ebx
sub ecx, dword [esp + 0x64]
mov eax, dword [esi + 0xc0]
movss xmm1, dword [eax + edi]
lea ecx, [ecx + ecx*2]
movss xmm0, dword [eax + ecx*4]
cvtps2pd xmm0, xmm0
lea ecx, [eax + ecx*4]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [eax + edi + 4]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [ecx + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [eax + edi + 8]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x70], xmm0
movss xmm0, dword [ecx + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x74], xmm0
mov edx, dword [esp + 0x74]
movq xmm0, qword [esp + 0x6c]
lea ecx, [esp + 0x7c]
movq qword [esp + 0x7c], xmm0
mov dword [esp + 0x84], edx
call fcn.004ce2b0
fstp dword [esp + 0x40]
fld qword [0x57b810]
fld dword [esp + 0x40]
fcompi st(1)
fstp st(0)
jbe 0x4a63f0
xorps xmm0, xmm0
mov eax, dword [esi + 0xc0]
movsd xmm1, qword [esp + 0x90]
movss dword [esp + 0x4c], xmm0
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm0, xmm1
movsd xmm1, qword [esp + 0x98]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + edi + 4]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm0, xmm1
movsd xmm1, qword [esp + 0xa0]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x48], xmm0
movss xmm0, dword [eax + edi + 8]
cvtps2pd xmm0, xmm0
cvtpd2ps xmm1, xmm1
cvtss2sd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ecx, [esp + 0x44]
movss dword [esp + 0x4c], xmm0
call fcn.004ce2b0
fstp dword [esp + 0x3c]
fld qword [0x57b810]
fld dword [esp + 0x3c]
fcompi st(1)
fstp st(0)
jbe 0x4a63f0
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x80]
mov eax, dword [esi + 0x14]
mov ecx, dword [esp + 0x68]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x48]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movss xmm2, dword [esp + 0x84]
addsd xmm0, xmm1
movss xmm1, dword [esp + 0x4c]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
addsd xmm0, xmm1
movss xmm1, dword [0x57db40]
cvtpd2ps xmm0, xmm0
xorps xmm0, xmm1
cmp ecx, eax
jne 0x4a6200
movsd xmm1, qword [0x57ca30]
movsd xmm2, qword [0x57b708]
cvtps2pd xmm0, xmm0
andpd xmm0, xmm1
movss xmm1, dword [esp + 0x3c]
cvtsd2ss xmm0, xmm0
cvtps2pd xmm1, xmm1
cvtss2sd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x40]
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
comisd xmm2, xmm0
jbe 0x4a63f8
mulsd xmm0, qword [esp + 0xc8]
movsd xmm1, qword [esp + 0x88]
subsd xmm1, xmm0
movapd xmm0, xmm1
jmp 0x4a6401
comiss xmm0, dword [0x57b9e0]
jbe 0x4a6285
movss xmm1, dword [esp + 0x3c]
movsd xmm2, qword [0x57b708]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x40]
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
comisd xmm0, xmm2
jbe 0x4a6238
movapd xmm0, xmm2
dec eax
cmp ecx, eax
jne 0x4a6254
mulsd xmm0, qword [esp + 0xc8]
addsd xmm0, qword [esp + 0x88]
jmp 0x4a6401
xorps xmm1, xmm1
test ecx, ecx
jne 0x4a6272
mulsd xmm0, qword [esp + 0xd0]
addsd xmm0, qword [esp + 0x88]
jmp 0x4a6404
mulsd xmm0, qword [esi + 0x28]
addsd xmm0, qword [esp + 0x88]
jmp 0x4a6404
test ecx, ecx
je 0x4a63f0
mov eax, dword [esi + 0xc0]
sub ebx, dword [esp + 0x64]
movss xmm1, dword [eax + edi]
lea ecx, [ebx + ebx*2]
movss xmm0, dword [eax + ecx*4]
cvtps2pd xmm0, xmm0
lea ecx, [eax + ecx*4]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [eax + edi + 4]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [ecx + 4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
movss xmm1, dword [eax + edi + 8]
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x70], xmm0
movss xmm0, dword [ecx + 8]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [esp + 0x74], xmm0
mov edx, dword [esp + 0x74]
movq xmm0, qword [esp + 0x6c]
lea ecx, [esp + 0x7c]
movq qword [esp + 0x7c], xmm0
mov dword [esp + 0x84], edx
call fcn.004ce2b0
fstp dword [esp + 0x40]
fld qword [0x57b810]
fld dword [esp + 0x40]
fcompi st(1)
fstp st(0)
jbe 0x4a63f0
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 0x7c]
movss xmm2, dword [esp + 0x80]
cvtps2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x48]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movss xmm2, dword [esp + 0x84]
addsd xmm0, xmm1
movss xmm1, dword [esp + 0x4c]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
mulsd xmm1, xmm2
movsd xmm2, qword [0x57b708]
addsd xmm0, xmm1
movsd xmm1, qword [0x57ca30]
cvtpd2ps xmm0, xmm0
cvtss2sd xmm0, xmm0
andpd xmm0, xmm1
movss xmm1, dword [esp + 0x3c]
cvtsd2ss xmm0, xmm0
cvtps2pd xmm1, xmm1
cvtss2sd xmm0, xmm0
mulsd xmm0, xmm1
movss xmm1, dword [esp + 0x40]
cvtps2pd xmm1, xmm1
divsd xmm0, xmm1
comisd xmm0, xmm2
xorps xmm1, xmm1
jbe 0x4a63ce
movapd xmm0, xmm2
jmp 0x4a63d8
comisd xmm1, xmm0
jbe 0x4a63d8
movapd xmm0, xmm1
movsd xmm3, qword [esi + 0x28]
mulsd xmm3, xmm0
movsd xmm0, qword [esp + 0x88]
subsd xmm0, xmm3
jmp 0x4a6404
movsd xmm2, qword [0x57b708]
movsd xmm0, qword [esp + 0x88]
xorps xmm1, xmm1
cmp byte [esi + 0x19], 0
jne 0x4a6414
cmp byte [esi + 0x1b], 0
je 0x4a64a2
cmp dword [esi + 0xc], 0x3b
jne 0x4a647a
mov eax, dword [esi + 0xd4]
mov ecx, dword [esi + 0xcc]
mov edx, dword [esi + 0x108]
lea edi, [ecx + eax]
cmp edx, edi
jl 0x4a645a
mov ebx, dword [esi + 0xd8]
shr ebx, 4
test bl, 1
je 0x4a644f
mov ecx, dword [esi + 0x100]
movsd xmm2, qword [ecx + edi*8 - 8]
jmp 0x4a645a
mov edi, dword [esi + 0x100]
movsd xmm2, qword [edi + ecx*8]
cmp edx, eax
jl 0x4a6470
mov edx, dword [esi + 0x100]
movsd xmm3, qword [edx + eax*8 - 8]
subsd xmm2, xmm3
jmp 0x4a648c
movapd xmm3, xmm1
subsd xmm2, xmm3
jmp 0x4a648c
cmp byte [esi + 0x1b], 0
je 0x4a6487
movsd xmm2, qword [esi + 0x78]
jmp 0x4a648c
movsd xmm2, qword [esi + 0x48]
comisd xmm1, xmm0
jbe 0x4a6498
addsd xmm0, xmm2
jmp 0x4a64a2
comisd xmm0, xmm2
jbe 0x4a64a2
subsd xmm0, xmm2
mov edi, dword [ebp + 8]
movsd xmm2, qword [esp + 0x50]
sub esp, 8
movsd qword [esp], xmm1
movsd qword [edi], xmm2
movsd qword [edi + 8], xmm0
mov eax, dword [esi]
mov edx, dword [eax + 0x80]
push edi
lea ecx, [esp + 0xf4]
push ecx
mov ecx, esi
movsd qword [esp + 0x100], xmm1
movsd qword [esp + 0xf8], xmm1
movsd qword [esp + 0x118], xmm1
movsd qword [esp + 0x110], xmm1
movsd qword [esp + 0x108], xmm1
movsd qword [esp + 0x130], xmm1
movsd qword [esp + 0x128], xmm1
movsd qword [esp + 0x120], xmm1
movsd qword [esp + 0x148], xmm1
movsd qword [esp + 0x140], xmm1
movsd qword [esp + 0x138], xmm1
call edx
movq xmm0, qword [esp + 0xf8]
mov eax, dword [ebp + 0x10]
movq qword [edi + 0x10], xmm0
movq xmm0, qword [esp + 0x100]
movq qword [edi + 0x18], xmm0
movq xmm0, qword [esp + 0x108]
movq qword [edi + 0x20], xmm0
movsd xmm0, qword [edi + 0x10]
subsd xmm0, qword [eax]
movsd qword [esp + 0x90], xmm0
movsd xmm0, qword [edi + 0x18]
subsd xmm0, qword [eax + 8]
movsd qword [esp + 0x98], xmm0
movsd xmm0, qword [edi + 0x20]
subsd xmm0, qword [eax + 0x10]
lea ecx, [esp + 0x90]
movsd qword [esp + 0xa0], xmm0
call fcn.00473c80
mov eax, dword [ebp + 0xc]
pop edi
fstp qword [eax]
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x14