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

Disassembly:
sub esp, 0x58
mov ecx, dword [esp + 0x5c]
push ebx
mov ebx, dword [esp + 0x64]
push ebp
mov ebp, ecx
imul ebp, dword [esp + 0x68]
push esi
lea esi, [ebp + ebp]
push edi
mov dword [esp + 0x28], ebp
mov edi, ebp
mov dword [esp + 0x10], esi
xor esi, esi
lea ebp, [ebp + ebp*2]
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x20], esi
cmp ebx, 4
jl 0x4663e8
add ebx, 0xfffffffc
shr ebx, 2
inc ebx
mov dword [esp + 0x3c], ebx
add ebx, ebx
add ebx, ebx
mov dword [esp + 0x20], ebx
mov edi, edi
movss xmm1, dword [eax + ebp*4]
movss xmm0, dword [eax + edi*4]
movss xmm2, dword [eax + esi*4]
mov ebx, dword [esp + 0x10]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
addsd xmm0, xmm1
movss xmm1, dword [eax + ebx*4]
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
addsd xmm1, xmm2
cvtpd2ps xmm1, xmm1
xorps xmm2, xmm2
cvtss2sd xmm2, xmm1
cvtss2sd xmm1, xmm1
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
cvtss2sd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtpd2ps xmm0, xmm1
addsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
lea ebx, [esi*4]
movss dword [edx + ebx*4], xmm2
lea ebp, [ebx + ecx*4]
movss dword [edx + ebp*4 - 4], xmm0
movss xmm0, dword [eax + esi*4]
cvtps2pd xmm0, xmm0
lea ebx, [ebx + ecx*2]
lea ebp, [ecx + ecx]
mov ebp, dword [esp + 0x10]
movss xmm1, dword [eax + ebp*4]
mov ebp, dword [esp + 0x6c]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [edx + ebx*4 - 4], xmm0
movss xmm0, dword [eax + ebp*4]
movss xmm1, dword [eax + edi*4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [edx + ebx*4], xmm0
mov ebx, dword [esp + 0x10]
add ebp, ecx
movss xmm1, dword [eax + ebp*4]
cvtps2pd xmm1, xmm1
add edi, ecx
movss xmm0, dword [eax + edi*4]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
add esi, ecx
movss xmm2, dword [eax + esi*4]
add ebx, ecx
movss xmm1, dword [eax + ebx*4]
cvtps2pd xmm2, xmm2
cvtps2pd xmm1, xmm1
addsd xmm1, xmm2
cvtpd2ps xmm0, xmm0
cvtpd2ps xmm1, xmm1
xorps xmm2, xmm2
cvtss2sd xmm2, xmm1
mov dword [esp + 0x10], ebx
lea ebx, [esi*4]
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
cvtss2sd xmm0, xmm0
cvtss2sd xmm1, xmm1
subsd xmm1, xmm0
mov dword [esp + 0x6c], ebp
addsd xmm2, xmm3
lea ebp, [ebx + ecx*4]
cvtpd2ps xmm2, xmm2
movss dword [edx + ebx*4], xmm2
xorps xmm0, xmm0
cvtpd2ps xmm0, xmm1
movss dword [edx + ebp*4 - 4], xmm0
lea ebx, [ebx + ecx*2]
movss xmm0, dword [eax + esi*4]
cvtps2pd xmm0, xmm0
lea ebp, [ecx + ecx]
mov ebp, dword [esp + 0x10]
movss xmm1, dword [eax + ebp*4]
mov ebp, dword [esp + 0x6c]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [edx + ebx*4 - 4], xmm0
movss xmm0, dword [eax + ebp*4]
movss xmm1, dword [eax + edi*4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [edx + ebx*4], xmm0
mov ebx, dword [esp + 0x10]
add ebp, ecx
movss xmm1, dword [eax + ebp*4]
cvtps2pd xmm1, xmm1
add edi, ecx
movss xmm0, dword [eax + edi*4]
cvtps2pd xmm0, xmm0
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
add ebx, ecx
movss xmm1, dword [eax + ebx*4]
cvtps2pd xmm1, xmm1
add esi, ecx
movss xmm2, dword [eax + esi*4]
cvtps2pd xmm2, xmm2
addsd xmm1, xmm2
cvtpd2ps xmm1, xmm1
mov dword [esp + 0x10], ebx
mov dword [esp + 0x6c], ebp
xorps xmm2, xmm2
cvtss2sd xmm2, xmm1
cvtss2sd xmm1, xmm1
lea ebx, [esi*4]
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
cvtss2sd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtpd2ps xmm0, xmm1
lea ebp, [ebx + ecx*4]
addsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
movss dword [edx + ebx*4], xmm2
movss dword [edx + ebp*4 - 4], xmm0
movss xmm0, dword [eax + esi*4]
cvtps2pd xmm0, xmm0
lea ebp, [ecx + ecx]
mov ebp, dword [esp + 0x10]
movss xmm1, dword [eax + ebp*4]
mov ebp, dword [esp + 0x6c]
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ebx, [ebx + ecx*2]
movss dword [edx + ebx*4 - 4], xmm0
movss xmm0, dword [eax + ebp*4]
movss xmm1, dword [eax + edi*4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [edx + ebx*4], xmm0
mov ebx, dword [esp + 0x10]
add ebp, ecx
movss xmm1, dword [eax + ebp*4]
add edi, ecx
movss xmm0, dword [eax + edi*4]
add esi, ecx
add ebx, ecx
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x10], ebx
addsd xmm0, xmm1
movss xmm1, dword [eax + ebx*4]
movss xmm2, dword [eax + esi*4]
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
addsd xmm1, xmm2
cvtpd2ps xmm1, xmm1
xorps xmm2, xmm2
cvtss2sd xmm2, xmm1
cvtss2sd xmm1, xmm1
lea ebx, [esi*4]
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
cvtss2sd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtpd2ps xmm0, xmm1
lea ebp, [ebx + ecx*4]
addsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
movss dword [edx + ebx*4], xmm2
movss dword [edx + ebp*4 - 4], xmm0
movss xmm0, dword [eax + esi*4]
cvtps2pd xmm0, xmm0
lea ebp, [ecx + ecx]
mov ebp, dword [esp + 0x10]
movss xmm1, dword [eax + ebp*4]
mov ebp, dword [esp + 0x6c]
add dword [esp + 0x10], ecx
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ebx, [ebx + ecx*2]
movss dword [edx + ebx*4 - 4], xmm0
movss xmm0, dword [eax + ebp*4]
movss xmm1, dword [eax + edi*4]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
add ebp, ecx
subsd xmm0, xmm1
add edi, ecx
add esi, ecx
dec dword [esp + 0x3c]
cvtpd2ps xmm0, xmm0
movss dword [edx + ebx*4], xmm0
mov dword [esp + 0x6c], ebp
jne 0x4660b0
mov ebx, dword [esp + 0x70]
cmp dword [esp + 0x20], ebx
jge 0x4664fa
mov ebx, dword [esp + 0x6c]
lea ebx, [eax + ebx*4]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x10]
lea ebx, [eax + ebx*4]
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x70]
sub ebx, dword [esp + 0x20]
lea edi, [eax + edi*4]
lea ebp, [ecx*4]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], ebx
movss xmm0, dword [edi]
mov edi, dword [esp + 0x24]
movss xmm1, dword [edi]
movss xmm2, dword [eax + esi*4]
mov edi, dword [esp + 0x6c]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
addsd xmm0, xmm1
movss xmm1, dword [edi]
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
addsd xmm1, xmm2
cvtpd2ps xmm1, xmm1
xorps xmm2, xmm2
cvtss2sd xmm2, xmm1
cvtss2sd xmm1, xmm1
lea ebx, [esi*4]
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
cvtss2sd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtpd2ps xmm0, xmm1
lea edi, [ebx + ebp]
addsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
movss dword [edx + ebx*4], xmm2
movss dword [edx + edi*4 - 4], xmm0
mov edi, dword [esp + 0x6c]
movss xmm1, dword [edi]
movss xmm0, dword [eax + esi*4]
mov edi, dword [esp + 0x24]
add dword [esp + 0x6c], ebp
add dword [esp + 0x24], ebp
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
lea ebx, [ebx + ecx*2]
movss dword [edx + ebx*4 - 4], xmm0
movss xmm0, dword [edi]
mov edi, dword [esp + 0x3c]
movss xmm1, dword [edi]
cvtps2pd xmm0, xmm0
cvtps2pd xmm1, xmm1
add edi, ebp
subsd xmm0, xmm1
add esi, ecx
dec dword [esp + 0x38]
cvtpd2ps xmm0, xmm0
movss dword [edx + ebx*4], xmm0
mov dword [esp + 0x3c], edi
jne 0x466422
mov ebx, dword [esp + 0x70]
cmp ecx, 2
jl 0x466e72
je 0x46691a
xor ebx, ebx
mov dword [esp + 0x10], ebx
cmp dword [esp + 0x70], ebx
jle 0x46690d
mov edi, dword [esp + 0x28]
lea ebp, [edi + edi*2]
lea edi, [eax + edi*4]
mov esi, ecx
mov dword [esp + 0x38], edi
mov edi, dword [esp + 0x70]
shl esi, 4
lea ebp, [eax + ebp*4]
mov dword [esp + 0x64], esi
mov dword [esp + 0x34], edx
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x4c], edi
lea ebp, [ecx + ecx]
lea edi, [ebp + ebx*4]
cmp ecx, 2
jle 0x4668ea
lea esi, [edx + edi*4]
add edi, ebp
lea ebp, [ebp + ebx*4]
lea ebp, [edx + ebp*4]
mov dword [esp + 0x2c], ebp
mov ebp, dword [esp + 0x28]
mov dword [esp + 0x14], esi
lea esi, [eax + ebx*4]
lea ebx, [ebx + ebp*2]
mov ebp, dword [esp + 0x74]
lea ebx, [eax + ebx*4]
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x78]
sub ebx, ebp
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 0x7c]
lea edi, [edx + edi*4]
sub ebx, ebp
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x34]
mov dword [esp + 0x58], ebx
mov ebx, dword [esp + 0x78]
sub ebx, dword [esp + 0x7c]
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x7c]
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x74]
lea ebx, [ecx - 3]
shr ebx, 1
add edi, 4
inc ebx
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x1c]
jmp 0x4665e0
movss xmm2, dword [edi]
movss xmm0, dword [edi - 4]
add dword [esp + 0x20], 8
mov ebp, dword [esp + 0x20]
movss xmm3, dword [ebp]
movss xmm1, dword [ebp - 4]
mov ebp, dword [esp + 0x50]
cvtps2pd xmm6, xmm0
cvtps2pd xmm5, xmm2
add dword [esp + 0x6c], 8
cvtps2pd xmm4, xmm3
cvtps2pd xmm0, xmm0
mulsd xmm4, xmm5
cvtps2pd xmm3, xmm3
cvtps2pd xmm5, xmm1
mulsd xmm3, xmm0
mulsd xmm5, xmm6
cvtps2pd xmm0, xmm2
add ebx, 8
cvtps2pd xmm1, xmm1
mulsd xmm0, xmm1
movss xmm1, dword [ebx - 4]
cvtps2pd xmm6, xmm1
subsd xmm3, xmm0
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x24]
movss xmm2, dword [ebx + ebp]
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x6c]
cvtps2pd xmm7, xmm2
mulsd xmm6, xmm7
addsd xmm4, xmm5
xorps xmm0, xmm0
cvtpd2ps xmm0, xmm3
movss xmm3, dword [edi + ebx]
mov ebx, dword [esp + 0x1c]
movss xmm5, dword [ebx]
cvtps2pd xmm7, xmm3
cvtps2pd xmm5, xmm5
mulsd xmm5, xmm7
addsd xmm6, xmm5
cvtps2pd xmm2, xmm2
add dword [esp + 0x18], 8
add dword [esp + 0x2c], 8
sub dword [esp + 0x14], 8
xorps xmm5, xmm5
cvtpd2ps xmm5, xmm6
movss xmm6, dword [ebx]
cvtps2pd xmm6, xmm6
mulsd xmm6, xmm2
cvtps2pd xmm2, xmm3
cvtps2pd xmm1, xmm1
mulsd xmm1, xmm2
movss xmm2, dword [ebp - 4]
mov ebp, dword [esp + 0x24]
movss xmm3, dword [ebp]
mov ebp, dword [esp + 0x58]
subsd xmm6, xmm1
xorps xmm1, xmm1
cvtpd2ps xmm1, xmm6
movss xmm6, dword [edi + ebp]
mov ebp, dword [esp + 0x6c]
movss xmm7, dword [ebp]
mov ebp, dword [esp + 0x24]
movss dword [esp + 0x5c], xmm7
cvtps2pd xmm3, xmm3
movss dword [esp + 0x60], xmm6
cvtps2pd xmm6, xmm6
cvtps2pd xmm7, xmm2
mulsd xmm3, xmm7
movss xmm7, dword [esp + 0x5c]
cvtps2pd xmm7, xmm7
mulsd xmm6, xmm7
addsd xmm3, xmm6
movss xmm6, dword [ebp]
mov ebp, dword [esp + 0x6c]
add esi, 8
sub dword [esp + 0x30], 8
cvtpd2ps xmm4, xmm4
cvtpd2ps xmm3, xmm3
cvtps2pd xmm7, xmm6
movss xmm6, dword [ebp]
cvtps2pd xmm6, xmm6
mulsd xmm7, xmm6
movss xmm6, dword [esp + 0x60]
cvtps2pd xmm2, xmm2
cvtps2pd xmm6, xmm6
mulsd xmm6, xmm2
subsd xmm7, xmm6
xorps xmm2, xmm2
cvtpd2ps xmm2, xmm7
xorps xmm7, xmm7
cvtss2sd xmm7, xmm4
cvtss2sd xmm4, xmm4
xorps xmm6, xmm6
cvtss2sd xmm6, xmm3
addsd xmm6, xmm7
mov ebp, dword [esp + 0x18]
cvtps2pd xmm7, xmm0
cvtss2sd xmm3, xmm3
subsd xmm3, xmm4
cvtps2pd xmm4, xmm2
addsd xmm4, xmm7
cvtps2pd xmm2, xmm2
cvtps2pd xmm7, xmm1
cvtps2pd xmm0, xmm0
subsd xmm0, xmm2
movss xmm2, dword [esi]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
addsd xmm2, xmm7
movss xmm7, dword [esi]
cvtps2pd xmm7, xmm7
subsd xmm7, xmm1
xorps xmm1, xmm1
cvtpd2ps xmm1, xmm7
movss dword [esp + 0x44], xmm1
movss xmm1, dword [esi - 4]
cvtps2pd xmm1, xmm1
cvtps2pd xmm7, xmm5
cvtps2pd xmm5, xmm5
addsd xmm1, xmm7
movss xmm7, dword [esi - 4]
cvtps2pd xmm7, xmm7
subsd xmm7, xmm5
cvtpd2ps xmm6, xmm6
cvtpd2ps xmm5, xmm7
movss dword [esp + 0x40], xmm5
xorps xmm5, xmm5
xorps xmm7, xmm7
cvtss2sd xmm7, xmm6
cvtpd2ps xmm1, xmm1
cvtss2sd xmm5, xmm1
addsd xmm5, xmm7
cvtpd2ps xmm5, xmm5
movss dword [ebp - 4], xmm5
xorps xmm5, xmm5
xorps xmm7, xmm7
cvtpd2ps xmm4, xmm4
cvtss2sd xmm7, xmm4
cvtpd2ps xmm2, xmm2
cvtss2sd xmm5, xmm2
addsd xmm5, xmm7
cvtpd2ps xmm5, xmm5
movss dword [ebp], xmm5
movss xmm5, dword [esp + 0x40]
mov ebp, dword [esp + 0x14]
cvtps2pd xmm5, xmm5
xorps xmm7, xmm7
cvtpd2ps xmm0, xmm0
cvtss2sd xmm7, xmm0
subsd xmm5, xmm7
movss xmm7, dword [esp + 0x44]
cvtsd2ss xmm5, xmm5
movss dword [ebp - 4], xmm5
xorps xmm5, xmm5
cvtpd2ps xmm3, xmm3
cvtss2sd xmm5, xmm3
cvtps2pd xmm7, xmm7
subsd xmm5, xmm7
cvtpd2ps xmm5, xmm5
movss dword [ebp], xmm5
movss xmm5, dword [esp + 0x40]
mov ebp, dword [esp + 0x2c]
cvtss2sd xmm0, xmm0
add dword [esp + 0x24], 8
cvtps2pd xmm5, xmm5
addsd xmm5, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm5
movss dword [ebp - 4], xmm0
movss xmm0, dword [esp + 0x44]
cvtps2pd xmm0, xmm0
cvtss2sd xmm3, xmm3
addsd xmm0, xmm3
cvtsd2ss xmm0, xmm0
movss dword [ebp], xmm0
mov ebp, dword [esp + 0x30]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
xorps xmm1, xmm1
cvtss2sd xmm1, xmm6
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [ebp - 4], xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm4
xorps xmm1, xmm1
cvtss2sd xmm1, xmm2
subsd xmm0, xmm1
add edi, 8
dec dword [esp + 0x48]
cvtpd2ps xmm0, xmm0
movss dword [ebp], xmm0
jne 0x4665e0
mov esi, dword [esp + 0x64]
mov ebx, dword [esp + 0x10]
add dword [esp + 0x34], esi
lea edi, [ecx*4]
add dword [esp + 0x38], edi
add dword [esp + 0x3c], edi
add ebx, ecx
dec dword [esp + 0x4c]
mov dword [esp + 0x10], ebx
jne 0x466543
test cl, 1
jne 0x466e72
mov ebx, dword [esp + 0x70]
mov esi, dword [esp + 0x28]
movss xmm0, dword [0x570894]
movss xmm5, dword [0x4c8bb0]
lea edi, [esi + ecx - 1]
lea esi, [edi + esi*2]
mov dword [esp + 0x6c], esi
mov dword [esp + 0x10], edi
mov esi, ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], 0
cmp ebx, 4
jl 0x466d46
add edi, dword [esp + 0x28]
lea ebx, [ecx*4]
add ebx, ebx
add ebx, ebx
lea ebp, [ecx + ecx*2]
lea ebp, [edx + ebp*4]
mov dword [esp + 0x14], ebp
mov dword [esp + 0x24], ebx
lea ebx, [ecx*4]
lea ebp, [ebx + eax - 4]
mov dword [esp + 0x18], ebp
mov ebp, dword [esp + 0x70]
add ebp, 0xfffffffc
shr ebp, 2
inc ebp
mov dword [esp + 0x4c], ebp
add ebp, ebp
add ebp, ebp
movaps xmm1, xmm0
xorps xmm1, xmm5
lea edi, [eax + edi*4]
mov dword [esp + 0x20], ebp
mov ebp, dword [esp + 0x6c]
movss xmm2, dword [eax + ebp*4]
mov ebp, dword [esp + 0x10]
movss xmm3, dword [eax + ebp*4]
cvtps2pd xmm6, xmm2
mov ebp, dword [esp + 0x18]
cvtps2pd xmm4, xmm3
cvtps2pd xmm2, xmm2
cvtps2pd xmm3, xmm3
subsd xmm3, xmm2
xorps xmm2, xmm2
cvtss2sd xmm2, xmm0
mulsd xmm3, xmm2
addsd xmm4, xmm6
xorps xmm2, xmm2
cvtpd2ps xmm2, xmm3
movss xmm3, dword [ebp]
xorps xmm6, xmm6
cvtps2pd xmm3, xmm3
cvtss2sd xmm6, xmm1
mulsd xmm4, xmm6
add dword [esp + 0x10], ecx
add dword [esp + 0x6c], ecx
add dword [esp + 0x1c], ecx
cvtpd2ps xmm4, xmm4
cvtps2pd xmm6, xmm2
addsd xmm3, xmm6
cvtps2pd xmm2, xmm2
cvtpd2ps xmm3, xmm3
movss dword [edx + esi*4 - 4], xmm3
movss xmm3, dword [ebp]
mov ebp, dword [esp + 0x14]
cvtps2pd xmm3, xmm3
subsd xmm3, xmm2
cvtpd2ps xmm2, xmm3
movss dword [ebp - 4], xmm2
movss xmm3, dword [edi]
xorps xmm2, xmm2
cvtss2sd xmm2, xmm4
cvtps2pd xmm3, xmm3
subsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
movss dword [edx + esi*4], xmm2
movss xmm2, dword [edi]
cvtps2pd xmm2, xmm2
xorps xmm3, xmm3
cvtss2sd xmm3, xmm4
addsd xmm2, xmm3
add edi, ebx
cvtpd2ps xmm2, xmm2
movss dword [ebp], xmm2
lea ebx, [ecx*4]
add esi, ebx
mov ebx, dword [esp + 0x24]
add dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x18]
lea ebp, [ecx*4]
add ebx, ebp
mov ebp, dword [esp + 0x6c]
movss xmm2, dword [eax + ebp*4]
mov ebp, dword [esp + 0x10]
movss xmm3, dword [eax + ebp*4]
cvtps2pd xmm6, xmm2
cvtps2pd xmm4, xmm3
addsd xmm4, xmm6
cvtps2pd xmm2, xmm2
cvtps2pd xmm3, xmm3
subsd xmm3, xmm2
xorps xmm6, xmm6
cvtss2sd xmm6, xmm1
xorps xmm2, xmm2
cvtss2sd xmm2, xmm0
mulsd xmm3, xmm2
xorps xmm2, xmm2
cvtpd2ps xmm2, xmm3
movss xmm3, dword [ebx]
mulsd xmm4, xmm6
mov dword [esp + 0x18], ebx
cvtpd2ps xmm4, xmm4
cvtps2pd xmm3, xmm3
cvtps2pd xmm6, xmm2
addsd xmm3, xmm6
cvtps2pd xmm2, xmm2
cvtpd2ps xmm3, xmm3
movss dword [edx + esi*4 - 4], xmm3
movss xmm3, dword [ebx]
mov ebx, dword [esp + 0x14]
cvtps2pd xmm3, xmm3
subsd xmm3, xmm2
cvtpd2ps xmm2, xmm3
movss dword [ebx - 4], xmm2
movss xmm3, dword [edi]
xorps xmm2, xmm2
cvtss2sd xmm2, xmm4
add dword [esp + 0x6c], ecx
add dword [esp + 0x1c], ecx
cvtps2pd xmm3, xmm3
subsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
movss dword [edx + esi*4], xmm2
movss xmm2, dword [edi]
xorps xmm3, xmm3
cvtss2sd xmm3, xmm4
cvtps2pd xmm2, xmm2
addsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
movss dword [ebx], xmm2
add ebx, dword [esp + 0x24]
add ebp, ecx
mov dword [esp + 0x10], ebp
lea ebp, [ecx*4]
add edi, ebp
lea ebp, [ecx*4]
add esi, ebp
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x18]
lea ebp, [ecx*4]
add ebx, ebp
mov ebp, dword [esp + 0x6c]
movss xmm2, dword [eax + ebp*4]
mov ebp, dword [esp + 0x10]
movss xmm3, dword [eax + ebp*4]
cvtps2pd xmm4, xmm3
cvtps2pd xmm6, xmm2
cvtps2pd xmm3, xmm3
cvtps2pd xmm2, xmm2
subsd xmm3, xmm2
xorps xmm2, xmm2
cvtss2sd xmm2, xmm0
mulsd xmm3, xmm2
addsd xmm4, xmm6
xorps xmm2, xmm2
cvtpd2ps xmm2, xmm3
movss xmm3, dword [ebx]
xorps xmm6, xmm6
cvtss2sd xmm6, xmm1
cvtps2pd xmm3, xmm3
mulsd xmm4, xmm6
mov dword [esp + 0x18], ebx
cvtpd2ps xmm4, xmm4
cvtps2pd xmm6, xmm2
cvtps2pd xmm2, xmm2
addsd xmm3, xmm6
cvtpd2ps xmm3, xmm3
movss dword [edx + esi*4 - 4], xmm3
movss xmm3, dword [ebx]
mov ebx, dword [esp + 0x14]
cvtps2pd xmm3, xmm3
subsd xmm3, xmm2
cvtpd2ps xmm2, xmm3
movss dword [ebx - 4], xmm2
movss xmm3, dword [edi]
xorps xmm2, xmm2
cvtss2sd xmm2, xmm4
cvtps2pd xmm3, xmm3
subsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
movss dword [edx + esi*4], xmm2
movss xmm2, dword [edi]
xorps xmm3, xmm3
cvtps2pd xmm2, xmm2
cvtss2sd xmm3, xmm4
addsd xmm2, xmm3
add dword [esp + 0x6c], ecx
cvtpd2ps xmm2, xmm2
movss dword [ebx], xmm2
add ebx, dword [esp + 0x24]
add ebp, ecx
mov dword [esp + 0x10], ebp
lea ebp, [ecx*4]
add edi, ebp
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x18]
lea ebp, [ecx*4]
add esi, ebp
lea ebp, [ecx*4]
add ebx, ebp
mov ebp, dword [esp + 0x6c]
movss xmm2, dword [eax + ebp*4]
mov ebp, dword [esp + 0x10]
movss xmm3, dword [eax + ebp*4]
cvtps2pd xmm6, xmm2
cvtps2pd xmm4, xmm3
cvtps2pd xmm2, xmm2
cvtps2pd xmm3, xmm3
subsd xmm3, xmm2
xorps xmm2, xmm2
cvtss2sd xmm2, xmm0
mulsd xmm3, xmm2
addsd xmm4, xmm6
xorps xmm2, xmm2
cvtpd2ps xmm2, xmm3
movss xmm3, dword [ebx]
add dword [esp + 0x1c], ecx
xorps xmm6, xmm6
cvtss2sd xmm6, xmm1
cvtps2pd xmm3, xmm3
add dword [esp + 0x6c], ecx
add dword [esp + 0x1c], ecx
mulsd xmm4, xmm6
mov dword [esp + 0x18], ebx
cvtps2pd xmm6, xmm2
cvtps2pd xmm2, xmm2
addsd xmm3, xmm6
cvtpd2ps xmm3, xmm3
movss dword [edx + esi*4 - 4], xmm3
movss xmm3, dword [ebx]
mov ebx, dword [esp + 0x14]
cvtps2pd xmm3, xmm3
subsd xmm3, xmm2
cvtpd2ps xmm2, xmm3
movss dword [ebx - 4], xmm2
movss xmm3, dword [edi]
xorps xmm2, xmm2
cvtpd2ps xmm4, xmm4
cvtss2sd xmm2, xmm4
cvtps2pd xmm3, xmm3
subsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
movss dword [edx + esi*4], xmm2
movss xmm2, dword [edi]
cvtps2pd xmm2, xmm2
xorps xmm3, xmm3
add ebp, ecx
cvtss2sd xmm3, xmm4
addsd xmm2, xmm3
cvtpd2ps xmm2, xmm2
movss dword [ebx], xmm2
add ebx, dword [esp + 0x24]
mov dword [esp + 0x10], ebp
lea ebp, [ecx*4]
add edi, ebp
mov dword [esp + 0x14], ebx
lea ebp, [ecx*4]
lea ebx, [ecx*4]
add dword [esp + 0x18], ebx
add esi, ebp
dec dword [esp + 0x4c]
jne 0x4669a0
mov ebx, dword [esp + 0x70]
cmp dword [esp + 0x20], ebx
jge 0x466e72
lea edi, [ecx*4]
add edi, edi
lea ebp, [edx + esi*4]
add edi, edi
mov dword [esp + 0x24], edi
lea edi, [ecx*4]
lea ecx, [esi + ecx*2]
mov esi, dword [esp + 0x10]
add esi, dword [esp + 0x28]
sub ebx, dword [esp + 0x20]
lea edx, [edx + ecx*4]
lea ecx, [eax + esi*4]
mov esi, dword [esp + 0x6c]
lea esi, [eax + esi*4]
mov dword [esp + 0x64], ebp
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x1c]
lea ebp, [eax + ebp*4]
movaps xmm4, xmm0
lea eax, [eax + esi*4 - 4]
mov esi, dword [esp + 0x64]
xorps xmm4, xmm5
mov dword [esp + 0x6c], ebx
lea ebx, [ebx]
movss xmm2, dword [ebp]
mov ebx, dword [esp + 0x70]
movss xmm1, dword [ebx]
cvtps2pd xmm3, xmm1
cvtps2pd xmm5, xmm2
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm2
subsd xmm2, xmm1
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
mulsd xmm2, xmm1
addsd xmm3, xmm5
xorps xmm1, xmm1
cvtpd2ps xmm1, xmm2
movss xmm2, dword [eax]
xorps xmm5, xmm5
cvtss2sd xmm5, xmm4
cvtps2pd xmm2, xmm2
mulsd xmm3, xmm5
cvtpd2ps xmm3, xmm3
add ebx, edi
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0x24]
cvtps2pd xmm5, xmm1
cvtps2pd xmm1, xmm1
addsd xmm2, xmm5
cvtpd2ps xmm2, xmm2
movss dword [esi - 4], xmm2
movss xmm2, dword [eax]
cvtps2pd xmm2, xmm2
subsd xmm2, xmm1
cvtpd2ps xmm1, xmm2
movss dword [edx - 4], xmm1
movss xmm2, dword [ecx]
xorps xmm1, xmm1
cvtss2sd xmm1, xmm3
cvtps2pd xmm2, xmm2
subsd xmm1, xmm2
cvtpd2ps xmm1, xmm1
movss dword [esi], xmm1
movss xmm1, dword [ecx]
cvtps2pd xmm1, xmm1
xorps xmm2, xmm2
cvtss2sd xmm2, xmm3
addsd xmm1, xmm2
cvtpd2ps xmm1, xmm1
movss dword [edx], xmm1
add ebp, edi
add eax, edi
add ecx, edi
add esi, ebx
add edx, ebx
dec dword [esp + 0x6c]
jne 0x466db0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret