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

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x44
mov ebp, ecx
mov ebx, edx
movss xmm3, dword [eax]
mov edi, dword [esp + 0x68]
mov esi, dword [esp + 0x70]
mov edx, dword [esp + 0x84]
mov ecx, dword [esp + 0x88]
movss xmm4, dword [esi]
movss xmm5, dword [edi]
movss xmm0, dword [0x46187c]
mov eax, dword [esp + 0x6c]
movss xmm1, dword [ecx]
mulss xmm0, xmm3
movss dword [esp + 0x34], xmm0
movaps xmm0, xmm4
subss xmm1, xmm5
andps xmm1, xmmword [0x461630]
mov dword [edx], 0
subss xmm0, xmm3
subss xmm0, xmm3
comiss xmm0, xmm1
movss xmm3, dword [eax]
jbe 0x418513
mov eax, dword [esp + 0x8c]
movss xmm1, dword [eax]
subss xmm1, xmm3
andps xmm1, xmmword [0x461630]
comiss xmm0, xmm1
jbe 0x418513
lea eax, [esp]
push eax
push dword [esp + 0x90]
push dword [esp + 0x90]
push dword [esp + 0x78]
push dword [esp + 0x78]
movss dword [esp + 0x44], xmm0
call fcn.0040aaa0
movss xmm0, dword [esp + 0x30]
comiss xmm0, dword [esp]
jbe 0x4184fb
mov eax, dword [esp + 0x84]
mov dword [eax], 1
add esp, 0x44
pop ebx
pop ebp
pop esi
pop edi
ret 0x38
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
movss xmm4, dword [eax]
movss xmm5, dword [edx]
movss xmm3, dword [ecx]
movaps xmm1, xmm5
mov eax, dword [esp + 0x80]
mov edi, dword [esp + 0x7c]
mov edx, dword [esp + 0x78]
mov esi, dword [eax]
mov ecx, dword [edx + esi*4 - 4]
cmp ecx, dword [ebx]
mov edi, dword [edi]
addss xmm1, xmm4
cvtss2sd xmm2, xmm1
subss xmm5, xmm4
cvtss2sd xmm1, xmm5
movaps xmm5, xmm4
lea eax, [esi - 1]
cmovl eax, esi
addss xmm5, xmm3
subss xmm3, xmm4
mov ecx, 1
test edi, edi
cmovle edi, ecx
cmp eax, edi
jl 0x418a36
mov esi, dword [esp + 0x64]
movss dword [esp + 0x38], xmm5
movss dword [esp + 0x30], xmm0
mov dword [esp + 0x3c], eax
lea ecx, [ebp + 4]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x40], ebx
lea ecx, [esi + 4]
mov ebx, edx
mov dword [esp + 0x28], ecx
mov eax, dword [ebx + edi*4 - 4]
cmp eax, 1
je 0x418c16
cvtss2sd xmm0, dword [ebp + eax*4 - 4]
mov ecx, dword [esp + 0x7c]
cmp edi, dword [ecx]
jne 0x418743
comisd xmm0, xmm2
jbe 0x4185bf
cvtss2sd xmm4, dword [ebp + eax*4 - 8]
comisd xmm4, xmm2
ja 0x418749
comisd xmm1, xmm0
jbe 0x4185e0
cvtss2sd xmm4, dword [ebp + eax*4 - 8]
comisd xmm1, xmm4
jbe 0x4185e0
comisd xmm0, xmm2
ja 0x418749
jmp 0x41875f
movss xmm5, dword [esi + eax*4 - 4]
comiss xmm5, dword [esp + 0x38]
jbe 0x4185fe
movss xmm4, dword [esi + eax*4 - 8]
comiss xmm4, dword [esp + 0x38]
ja 0x418743
comiss xmm3, xmm5
jbe 0x41860e
comiss xmm3, dword [esi + eax*4 - 8]
ja 0x418743
mov dword [esp + 0x20], edi
lea edx, [esi + eax*4]
lea ebx, [ebp + eax*4]
lea edi, [ebx - 4]
lea esi, [edx - 4]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
add ebx, 0xfffffff8
add edx, 0xfffffff8
push ecx
push edx
push ebx
push esi
push edi
push dword [esp + 0x84]
push dword [esp + 0x84]
lea eax, [esp + 0x34]
push eax
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x44]
mov ebx, dword [esp + 0x9c]
movss dword [esp + 0x48], xmm3
movsd qword [esp + 0x28], xmm1
movsd qword [esp + 0x30], xmm2
call fcn.0040ab70
movsd xmm2, qword [esp + 0xc]
movsd xmm1, qword [esp + 4]
movss xmm3, dword [esp + 0x24]
mov eax, dword [esp + 0x68]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0x18]
movss xmm0, dword [esp + 0x30]
andps xmm4, xmmword [0x461630]
comiss xmm0, xmm4
jbe 0x4186c1
mov eax, dword [esp + 0x6c]
movss xmm0, dword [esp + 0x30]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0x1c]
andps xmm4, xmmword [0x461630]
comiss xmm0, xmm4
ja 0x4186cd
mov eax, dword [ebx + edi*4 - 4]
cvtss2sd xmm0, dword [ebp + eax*4 - 4]
jmp 0x418743
lea eax, [esp]
push eax
lea ecx, [esp + 0x20]
push ecx
lea eax, [esp + 0x20]
push eax
push dword [esp + 0x78]
push dword [esp + 0x78]
movss dword [esp + 0x38], xmm3
movsd qword [esp + 0x18], xmm1
movsd qword [esp + 0x20], xmm2
call fcn.0040aaa0
cmp dword [esp + 0x14], 0
movsd xmm2, qword [esp + 0xc]
movsd xmm1, qword [esp + 4]
movss xmm3, dword [esp + 0x24]
jne 0x418725
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x34]
movss dword [esp], xmm4
jmp 0x41872a
movss xmm4, dword [esp]
movss xmm0, dword [esp + 0x30]
comiss xmm0, xmm4
ja 0x418a40
mov eax, dword [ebx + edi*4 - 4]
cvtss2sd xmm0, dword [ebp + eax*4 - 4]
comisd xmm0, xmm2
jbe 0x418759
cvtss2sd xmm4, dword [ebp + eax*4]
comisd xmm4, xmm2
ja 0x4188be
comisd xmm1, xmm0
jbe 0x41876f
cvtss2sd xmm0, dword [ebp + eax*4]
comisd xmm1, xmm0
ja 0x4188be
movss xmm4, dword [esi + eax*4 - 4]
comiss xmm4, dword [esp + 0x38]
jbe 0x41878c
movss xmm0, dword [esi + eax*4]
comiss xmm0, dword [esp + 0x38]
ja 0x4188be
comiss xmm3, xmm4
jbe 0x41879b
comiss xmm3, dword [esi + eax*4]
ja 0x4188be
mov dword [esp + 0x20], edi
lea edx, [esi + eax*4]
lea ebx, [ebp + eax*4]
lea edi, [ebx - 4]
lea esi, [edx - 4]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
push ecx
push edx
push ebx
push esi
push edi
push dword [esp + 0x84]
push dword [esp + 0x84]
lea eax, [esp + 0x34]
push eax
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x44]
mov ebx, dword [esp + 0x9c]
movss dword [esp + 0x48], xmm3
movsd qword [esp + 0x28], xmm1
movsd qword [esp + 0x30], xmm2
call fcn.0040ab70
movsd xmm2, qword [esp + 0xc]
movsd xmm1, qword [esp + 4]
movss xmm3, dword [esp + 0x24]
mov eax, dword [esp + 0x68]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0x18]
movss xmm0, dword [esp + 0x30]
andps xmm4, xmmword [0x461630]
comiss xmm0, xmm4
jbe 0x418848
mov eax, dword [esp + 0x6c]
movss xmm0, dword [esp + 0x30]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0x1c]
andps xmm4, xmmword [0x461630]
comiss xmm0, xmm4
ja 0x41884e
mov eax, dword [ebx + edi*4 - 4]
jmp 0x4188be
lea eax, [esp]
push eax
lea ecx, [esp + 0x20]
push ecx
lea eax, [esp + 0x20]
push eax
push dword [esp + 0x78]
push dword [esp + 0x78]
movss dword [esp + 0x38], xmm3
movsd qword [esp + 0x18], xmm1
movsd qword [esp + 0x20], xmm2
call fcn.0040aaa0
cmp dword [esp + 0x14], 0
movsd xmm2, qword [esp + 0xc]
movsd xmm1, qword [esp + 4]
movss xmm3, dword [esp + 0x24]
jne 0x4188a6
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x34]
movss dword [esp], xmm4
jmp 0x4188ab
movss xmm4, dword [esp]
movss xmm0, dword [esp + 0x30]
comiss xmm0, xmm4
ja 0x418a40
mov eax, dword [ebx + edi*4 - 4]
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx]
cmp eax, 1
je 0x418a72
dec edx
cmp eax, edx
jl 0x418a2b
cvtss2sd xmm4, dword [ebp]
comisd xmm4, xmm2
jbe 0x4188f0
cvtss2sd xmm0, dword [ebp + 4]
comisd xmm0, xmm2
ja 0x418a2b
comisd xmm1, xmm4
jbe 0x418905
cvtss2sd xmm0, dword [ebp + 4]
comisd xmm1, xmm0
ja 0x418a2b
movss xmm4, dword [esi]
comiss xmm4, dword [esp + 0x38]
jbe 0x418920
movss xmm0, dword [esi + 4]
comiss xmm0, dword [esp + 0x38]
ja 0x418a2b
comiss xmm3, xmm4
jbe 0x41892f
comiss xmm3, dword [esi + 4]
ja 0x418a2b
lea edx, [esp + 0x14]
lea ecx, [esp + 0x18]
lea eax, [esp + 0x1c]
push eax
push ecx
push dword [esp + 0x30]
push dword [esp + 0x38]
push esi
push ebp
push dword [esp + 0x84]
push dword [esp + 0x84]
push edx
movss dword [esp + 0x48], xmm3
movsd qword [esp + 0x28], xmm1
movsd qword [esp + 0x30], xmm2
call fcn.0040ab70
movsd xmm2, qword [esp + 0xc]
movsd xmm1, qword [esp + 4]
movss xmm3, dword [esp + 0x24]
mov eax, dword [esp + 0x68]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0x18]
movss xmm0, dword [esp + 0x30]
andps xmm4, xmmword [0x461630]
comiss xmm0, xmm4
jbe 0x418a2b
mov eax, dword [esp + 0x6c]
movss xmm0, dword [esp + 0x30]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0x1c]
andps xmm4, xmmword [0x461630]
comiss xmm0, xmm4
jbe 0x418a2b
lea eax, [esp]
push eax
lea ecx, [esp + 0x20]
push ecx
lea eax, [esp + 0x20]
push eax
push dword [esp + 0x78]
push dword [esp + 0x78]
movss dword [esp + 0x38], xmm3
movsd qword [esp + 0x18], xmm1
movsd qword [esp + 0x20], xmm2
call fcn.0040aaa0
cmp dword [esp + 0x14], 0
movsd xmm2, qword [esp + 0xc]
movsd xmm1, qword [esp + 4]
movss xmm3, dword [esp + 0x24]
jne 0x418a1b
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x34]
movss dword [esp], xmm4
jmp 0x418a20
movss xmm4, dword [esp]
movss xmm0, dword [esp + 0x30]
comiss xmm0, xmm4
ja 0x418a40
inc edi
cmp edi, dword [esp + 0x3c]
jle 0x41858a
add esp, 0x44
pop ebx
pop ebp
pop esi
pop edi
ret 0x38
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x88]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x8c]
mov dword [eax], 1
mov dword [ecx], edx
mov dword [ebp], ebx
add esp, 0x44
pop ebx
pop ebp
pop esi
pop edi
ret 0x38
lea ecx, [edx*4]
cvtss2sd xmm4, dword [ebp + ecx - 8]
comisd xmm4, xmm2
jbe 0x418a95
cvtss2sd xmm0, dword [ebp + ecx - 4]
comisd xmm0, xmm2
ja 0x4188cd
comisd xmm1, xmm4
jbe 0x418aab
cvtss2sd xmm0, dword [ebp + ecx - 4]
comisd xmm1, xmm0
ja 0x4188cd
movss xmm4, dword [esi + ecx - 8]
comiss xmm4, dword [esp + 0x38]
jbe 0x418ac9
movss xmm0, dword [esi + ecx - 4]
comiss xmm0, dword [esp + 0x38]
ja 0x4188cd
comiss xmm3, xmm4
jbe 0x418ad9
comiss xmm3, dword [esi + ecx - 4]
ja 0x4188cd
mov dword [esp + 0x20], edi
lea eax, [esi + edx*4]
lea ebx, [ebp + edx*4]
lea edi, [ebx - 8]
lea esi, [eax - 8]
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x1c]
add ebx, 0xfffffffc
add eax, 0xfffffffc
push ecx
push eax
push ebx
push esi
push edi
push dword [esp + 0x84]
push dword [esp + 0x84]
lea eax, [esp + 0x34]
push eax
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x44]
mov ebx, dword [esp + 0x9c]
movss dword [esp + 0x48], xmm3
movsd qword [esp + 0x28], xmm1
movsd qword [esp + 0x30], xmm2
call fcn.0040ab70
movsd xmm2, qword [esp + 0xc]
movsd xmm1, qword [esp + 4]
movss xmm3, dword [esp + 0x24]
mov eax, dword [esp + 0x68]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0x18]
movss xmm0, dword [esp + 0x30]
andps xmm4, xmmword [0x461630]
comiss xmm0, xmm4
jbe 0x418b8c
mov eax, dword [esp + 0x6c]
movss xmm0, dword [esp + 0x30]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0x1c]
andps xmm4, xmmword [0x461630]
comiss xmm0, xmm4
ja 0x418b9b
mov eax, dword [esp + 0x40]
mov edx, dword [eax]
mov eax, dword [ebx + edi*4 - 4]
jmp 0x4188cd
lea eax, [esp]
push eax
lea ecx, [esp + 0x20]
push ecx
lea eax, [esp + 0x20]
push eax
push dword [esp + 0x78]
push dword [esp + 0x78]
movss dword [esp + 0x38], xmm3
movsd qword [esp + 0x18], xmm1
movsd qword [esp + 0x20], xmm2
call fcn.0040aaa0
cmp dword [esp + 0x14], 0
movsd xmm2, qword [esp + 0xc]
movsd xmm1, qword [esp + 4]
movss xmm3, dword [esp + 0x24]
jne 0x418bf3
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x34]
movss dword [esp], xmm4
jmp 0x418bf8
movss xmm4, dword [esp]
movss xmm0, dword [esp + 0x30]
comiss xmm0, xmm4
ja 0x418a40
mov eax, dword [esp + 0x40]
mov edx, dword [eax]
mov eax, dword [ebx + edi*4 - 4]
jmp 0x4188cd
cvtss2sd xmm0, dword [ebp + eax*4 - 4]
jmp 0x418743