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

Disassembly:
push esi
push edi
push ebx
push ebp
sub esp, 0x3c
mov edi, ecx
movss xmm1, dword [eax]
mov esi, edx
movss xmm3, dword [0x477200]
mulss xmm3, xmm1
mov ebx, dword [esp + 0x68]
movss dword [esp + 0x2c], xmm3
mov ebp, dword [esp + 0x60]
movss xmm3, dword [ebx]
movaps xmm4, xmm3
mov ecx, dword [esp + 0x80]
subss xmm4, xmm1
movss xmm2, dword [ebp]
subss xmm4, xmm1
movss xmm0, dword [ecx]
mov edx, dword [esp + 0x7c]
subss xmm0, xmm2
mov eax, dword [esp + 0x64]
andps xmm0, xmmword [0x476fa0]
mov dword [edx], 0
movss xmm1, dword [eax]
comiss xmm4, xmm0
jbe 0x41876e
mov eax, dword [esp + 0x84]
movss xmm0, dword [eax]
subss xmm0, xmm1
andps xmm0, xmmword [0x476fa0]
comiss xmm4, xmm0
jbe 0x41876e
lea eax, [esp]
push eax
push dword [esp + 0x88]
push dword [esp + 0x88]
push dword [esp + 0x70]
push dword [esp + 0x70]
movss dword [esp + 0x3c], xmm4
call fcn.00405560
movss xmm4, dword [esp + 0x28]
comiss xmm4, dword [esp]
jbe 0x418756
mov eax, dword [esp + 0x7c]
mov dword [eax], 1
add esp, 0x3c
pop ebp
pop ebx
pop edi
pop esi
ret 0x38
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x60]
mov ecx, dword [esp + 0x64]
movss xmm3, dword [eax]
movss xmm2, dword [edx]
movss xmm1, dword [ecx]
mov eax, dword [esp + 0x78]
movaps xmm0, xmm2
mov edx, dword [esp + 0x70]
movaps xmm5, xmm3
mov ebp, dword [esp + 0x74]
addss xmm0, xmm3
subss xmm2, xmm3
addss xmm5, xmm1
subss xmm1, xmm3
mov ebx, dword [eax]
mov ebp, dword [ebp]
mov ecx, dword [edx + ebx*4 - 4]
lea eax, [ebx - 1]
cmp ecx, dword [esi]
cmovl eax, ebx
mov ecx, 1
test ebp, ebp
cmovle ebp, ecx
cmp eax, ebp
jl 0x418c4b
mov ebx, dword [esp + 0x5c]
lea ecx, [edi + 4]
mov dword [esp + 0x24], ecx
movss dword [esp + 0x30], xmm5
movss dword [esp + 0x28], xmm4
lea ecx, [ebx + 4]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], esi
mov esi, edx
mov eax, dword [esi + ebp*4 - 4]
cmp eax, 1
je 0x418970
mov ecx, dword [esp + 0x74]
cmp ebp, dword [ecx]
jne 0x418970
movss xmm4, dword [edi + eax*4 - 4]
comiss xmm4, xmm0
jbe 0x41880e
movss xmm3, dword [edi + eax*4 - 8]
comiss xmm3, xmm0
ja 0x418970
comiss xmm2, xmm4
jbe 0x41881e
comiss xmm2, dword [edi + eax*4 - 8]
ja 0x418970
movss xmm4, dword [ebx + eax*4 - 4]
comiss xmm4, dword [esp + 0x30]
jbe 0x41883c
movss xmm3, dword [ebx + eax*4 - 8]
comiss xmm3, dword [esp + 0x30]
ja 0x418970
comiss xmm1, xmm4
jbe 0x41884c
comiss xmm1, dword [ebx + eax*4 - 8]
ja 0x418970
mov eax, dword [esi + ebp*4 - 4]
lea edx, [esp + 0xc]
mov dword [esp + 0x10], ebp
push edx
lea ebx, [ebx + eax*4]
lea ecx, [esp + 0xc]
push ecx
lea ebp, [edi + eax*4]
lea esi, [ebx - 4]
add ebx, 0xfffffff8
push ebx
lea eax, [ebp - 4]
add ebp, 0xfffffff8
push ebp
push esi
push eax
push dword [esp + 0x7c]
push dword [esp + 0x7c]
lea edx, [esp + 0x24]
push edx
mov ebx, dword [esp + 0x80]
mov esi, dword [esp + 0x94]
mov ebp, dword [esp + 0x34]
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x3c], xmm2
movss dword [esp + 0x40], xmm0
call fcn.00405610
mov eax, dword [esp + 0x60]
movss xmm3, dword [esp + 0x28]
movss xmm0, dword [esp + 0x1c]
movss xmm4, dword [eax]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
subss xmm4, dword [esp + 8]
andps xmm4, xmmword [0x476fa0]
comiss xmm3, xmm4
jbe 0x41896c
mov eax, dword [esp + 0x64]
movss xmm3, dword [esp + 0x28]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0xc]
andps xmm4, xmmword [0x476fa0]
comiss xmm3, xmm4
jbe 0x41896c
lea eax, [esp]
push eax
lea ecx, [esp + 0x10]
push ecx
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x70]
push dword [esp + 0x70]
movss dword [esp + 0x28], xmm1
movss dword [esp + 0x2c], xmm2
movss dword [esp + 0x30], xmm0
call fcn.00405560
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
cmp dword [esp + 4], 0
jne 0x418958
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x2c]
movss dword [esp], xmm4
jmp 0x41895d
movss xmm4, dword [esp]
movss xmm3, dword [esp + 0x28]
comiss xmm3, xmm4
ja 0x418c55
mov eax, dword [esi + ebp*4 - 4]
movss xmm4, dword [edi + eax*4 - 4]
comiss xmm4, xmm0
jbe 0x418989
movss xmm3, dword [edi + eax*4]
comiss xmm3, xmm0
ja 0x418ae2
comiss xmm2, xmm4
jbe 0x418998
comiss xmm2, dword [edi + eax*4]
ja 0x418ae2
movss xmm4, dword [ebx + eax*4 - 4]
comiss xmm4, dword [esp + 0x30]
jbe 0x4189b5
movss xmm3, dword [ebx + eax*4]
comiss xmm3, dword [esp + 0x30]
ja 0x418ae2
comiss xmm1, xmm4
jbe 0x4189c4
comiss xmm1, dword [ebx + eax*4]
ja 0x418ae2
mov eax, dword [esi + ebp*4 - 4]
lea edx, [esp + 0xc]
mov dword [esp + 0x10], ebp
push edx
lea ecx, [esp + 0xc]
push ecx
lea ebx, [ebx + eax*4]
push ebx
lea ebp, [edi + eax*4]
push ebp
lea esi, [ebx - 4]
push esi
lea eax, [ebp - 4]
push eax
push dword [esp + 0x7c]
push dword [esp + 0x7c]
lea edx, [esp + 0x24]
push edx
mov ebx, dword [esp + 0x80]
mov esi, dword [esp + 0x94]
mov ebp, dword [esp + 0x34]
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x3c], xmm2
movss dword [esp + 0x40], xmm0
call fcn.00405610
mov eax, dword [esp + 0x60]
movss xmm3, dword [esp + 0x28]
movss xmm0, dword [esp + 0x1c]
movss xmm4, dword [eax]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
subss xmm4, dword [esp + 8]
andps xmm4, xmmword [0x476fa0]
comiss xmm3, xmm4
jbe 0x418ade
mov eax, dword [esp + 0x64]
movss xmm3, dword [esp + 0x28]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0xc]
andps xmm4, xmmword [0x476fa0]
comiss xmm3, xmm4
jbe 0x418ade
lea eax, [esp]
push eax
lea ecx, [esp + 0x10]
push ecx
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x70]
push dword [esp + 0x70]
movss dword [esp + 0x28], xmm1
movss dword [esp + 0x2c], xmm2
movss dword [esp + 0x30], xmm0
call fcn.00405560
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
cmp dword [esp + 4], 0
jne 0x418aca
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x2c]
movss dword [esp], xmm4
jmp 0x418acf
movss xmm4, dword [esp]
movss xmm3, dword [esp + 0x28]
comiss xmm3, xmm4
ja 0x418c55
mov eax, dword [esi + ebp*4 - 4]
mov ecx, dword [esp + 0x38]
cmp eax, 1
mov edx, dword [ecx]
je 0x418c84
dec edx
cmp eax, edx
jl 0x418c40
movss xmm4, dword [edi]
comiss xmm4, xmm0
jbe 0x418b11
movss xmm3, dword [edi + 4]
comiss xmm3, xmm0
ja 0x418c40
comiss xmm2, xmm4
jbe 0x418b20
comiss xmm2, dword [edi + 4]
ja 0x418c40
movss xmm4, dword [ebx]
comiss xmm4, dword [esp + 0x30]
jbe 0x418b3b
movss xmm3, dword [ebx + 4]
comiss xmm3, dword [esp + 0x30]
ja 0x418c40
comiss xmm1, xmm4
jbe 0x418b4a
comiss xmm1, dword [ebx + 4]
ja 0x418c40
lea eax, [esp + 0xc]
lea edx, [esp + 4]
lea ecx, [esp + 8]
push eax
push ecx
push dword [esp + 0x28]
push dword [esp + 0x30]
push ebx
push edi
push dword [esp + 0x7c]
push dword [esp + 0x7c]
push edx
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x3c], xmm2
movss dword [esp + 0x40], xmm0
call fcn.00405610
mov eax, dword [esp + 0x60]
movss xmm3, dword [esp + 0x28]
movss xmm0, dword [esp + 0x1c]
movss xmm4, dword [eax]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
subss xmm4, dword [esp + 8]
andps xmm4, xmmword [0x476fa0]
comiss xmm3, xmm4
jbe 0x418c40
mov eax, dword [esp + 0x64]
movss xmm3, dword [esp + 0x28]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0xc]
andps xmm4, xmmword [0x476fa0]
comiss xmm3, xmm4
jbe 0x418c40
lea eax, [esp]
push eax
lea ecx, [esp + 0x10]
push ecx
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x70]
push dword [esp + 0x70]
movss dword [esp + 0x28], xmm1
movss dword [esp + 0x2c], xmm2
movss dword [esp + 0x30], xmm0
call fcn.00405560
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
cmp dword [esp + 4], 0
jne 0x418c30
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x2c]
movss dword [esp], xmm4
jmp 0x418c35
movss xmm4, dword [esp]
movss xmm3, dword [esp + 0x28]
comiss xmm3, xmm4
ja 0x418c55
inc ebp
cmp ebp, dword [esp + 0x34]
jle 0x4187db
add esp, 0x3c
pop ebp
pop ebx
pop edi
pop esi
ret 0x38
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov ebp, dword [esp + 0x84]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov dword [eax], 1
mov dword [ecx], edx
mov dword [ebp], ebx
add esp, 0x3c
pop ebp
pop ebx
pop edi
pop esi
ret 0x38
lea ecx, [edx*4]
movss xmm4, dword [edi + ecx - 8]
comiss xmm4, xmm0
jbe 0x418ca5
movss xmm3, dword [edi + ecx - 4]
comiss xmm3, xmm0
ja 0x418af1
comiss xmm2, xmm4
jbe 0x418cb5
comiss xmm2, dword [edi + ecx - 4]
ja 0x418af1
movss xmm4, dword [ebx + ecx - 8]
comiss xmm4, dword [esp + 0x30]
jbe 0x418cd3
movss xmm3, dword [ebx + ecx - 4]
comiss xmm3, dword [esp + 0x30]
ja 0x418af1
comiss xmm1, xmm4
jbe 0x418ce3
comiss xmm1, dword [ebx + ecx - 4]
ja 0x418af1
mov dword [esp + 0x10], ebp
lea eax, [ebx + edx*4]
lea ebx, [edi + edx*4]
lea edx, [esp + 0xc]
push edx
lea ecx, [esp + 0xc]
push ecx
lea ebp, [eax - 8]
add eax, 0xfffffffc
push eax
lea esi, [ebx - 8]
add ebx, 0xfffffffc
push ebx
push ebp
push esi
push dword [esp + 0x7c]
push dword [esp + 0x7c]
lea eax, [esp + 0x24]
push eax
mov ebx, dword [esp + 0x80]
mov esi, dword [esp + 0x94]
mov ebp, dword [esp + 0x34]
movss dword [esp + 0x38], xmm1
movss dword [esp + 0x3c], xmm2
movss dword [esp + 0x40], xmm0
call fcn.00405610
mov eax, dword [esp + 0x60]
movss xmm3, dword [esp + 0x28]
movss xmm0, dword [esp + 0x1c]
movss xmm4, dword [eax]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
subss xmm4, dword [esp + 8]
andps xmm4, xmmword [0x476fa0]
comiss xmm3, xmm4
jbe 0x418d8f
mov eax, dword [esp + 0x64]
movss xmm3, dword [esp + 0x28]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0xc]
andps xmm4, xmmword [0x476fa0]
comiss xmm3, xmm4
ja 0x418d9e
mov eax, dword [esp + 0x38]
mov edx, dword [eax]
mov eax, dword [esi + ebp*4 - 4]
jmp 0x418af1
lea eax, [esp]
push eax
lea ecx, [esp + 0x10]
push ecx
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x70]
push dword [esp + 0x70]
movss dword [esp + 0x28], xmm1
movss dword [esp + 0x2c], xmm2
movss dword [esp + 0x30], xmm0
call fcn.00405560
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
cmp dword [esp + 4], 0
jne 0x418df6
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x2c]
movss dword [esp], xmm4
jmp 0x418dfb
movss xmm4, dword [esp]
movss xmm3, dword [esp + 0x28]
comiss xmm3, xmm4
ja 0x418c55
mov eax, dword [esp + 0x38]
mov edx, dword [eax]
mov eax, dword [esi + ebp*4 - 4]
jmp 0x418af1