Function at 0x41856c
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 [0x460150]
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 [0x45fef0]
mov dword [edx], 0
movss xmm1, dword [eax]
comiss xmm4, xmm0
jbe 0x41864e
mov eax, dword [esp + 0x84]
movss xmm0, dword [eax]
subss xmm0, xmm1
andps xmm0, xmmword [0x45fef0]
comiss xmm4, xmm0
jbe 0x41864e
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.004082b0
movss xmm4, dword [esp + 0x28]
comiss xmm4, dword [esp]
jbe 0x418636
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 0x418b2b
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 0x418850
mov ecx, dword [esp + 0x74]
cmp ebp, dword [ecx]
jne 0x418850
movss xmm4, dword [edi + eax*4 - 4]
comiss xmm4, xmm0
jbe 0x4186ee
movss xmm3, dword [edi + eax*4 - 8]
comiss xmm3, xmm0
ja 0x418850
comiss xmm2, xmm4
jbe 0x4186fe
comiss xmm2, dword [edi + eax*4 - 8]
ja 0x418850
movss xmm4, dword [ebx + eax*4 - 4]
comiss xmm4, dword [esp + 0x30]
jbe 0x41871c
movss xmm3, dword [ebx + eax*4 - 8]
comiss xmm3, dword [esp + 0x30]
ja 0x418850
comiss xmm1, xmm4
jbe 0x41872c
comiss xmm1, dword [ebx + eax*4 - 8]
ja 0x418850
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.00408360
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 [0x45fef0]
comiss xmm3, xmm4
jbe 0x41884c
mov eax, dword [esp + 0x64]
movss xmm3, dword [esp + 0x28]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0xc]
andps xmm4, xmmword [0x45fef0]
comiss xmm3, xmm4
jbe 0x41884c
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.004082b0
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
cmp dword [esp + 4], 0
jne 0x418838
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x2c]
movss dword [esp], xmm4
jmp 0x41883d
movss xmm4, dword [esp]
movss xmm3, dword [esp + 0x28]
comiss xmm3, xmm4
ja 0x418b35
mov eax, dword [esi + ebp*4 - 4]
movss xmm4, dword [edi + eax*4 - 4]
comiss xmm4, xmm0
jbe 0x418869
movss xmm3, dword [edi + eax*4]
comiss xmm3, xmm0
ja 0x4189c2
comiss xmm2, xmm4
jbe 0x418878
comiss xmm2, dword [edi + eax*4]
ja 0x4189c2
movss xmm4, dword [ebx + eax*4 - 4]
comiss xmm4, dword [esp + 0x30]
jbe 0x418895
movss xmm3, dword [ebx + eax*4]
comiss xmm3, dword [esp + 0x30]
ja 0x4189c2
comiss xmm1, xmm4
jbe 0x4188a4
comiss xmm1, dword [ebx + eax*4]
ja 0x4189c2
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.00408360
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 [0x45fef0]
comiss xmm3, xmm4
jbe 0x4189be
mov eax, dword [esp + 0x64]
movss xmm3, dword [esp + 0x28]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0xc]
andps xmm4, xmmword [0x45fef0]
comiss xmm3, xmm4
jbe 0x4189be
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.004082b0
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
cmp dword [esp + 4], 0
jne 0x4189aa
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x2c]
movss dword [esp], xmm4
jmp 0x4189af
movss xmm4, dword [esp]
movss xmm3, dword [esp + 0x28]
comiss xmm3, xmm4
ja 0x418b35
mov eax, dword [esi + ebp*4 - 4]
mov ecx, dword [esp + 0x38]
cmp eax, 1
mov edx, dword [ecx]
je 0x418b64
dec edx
cmp eax, edx
jl 0x418b20
movss xmm4, dword [edi]
comiss xmm4, xmm0
jbe 0x4189f1
movss xmm3, dword [edi + 4]
comiss xmm3, xmm0
ja 0x418b20
comiss xmm2, xmm4
jbe 0x418a00
comiss xmm2, dword [edi + 4]
ja 0x418b20
movss xmm4, dword [ebx]
comiss xmm4, dword [esp + 0x30]
jbe 0x418a1b
movss xmm3, dword [ebx + 4]
comiss xmm3, dword [esp + 0x30]
ja 0x418b20
comiss xmm1, xmm4
jbe 0x418a2a
comiss xmm1, dword [ebx + 4]
ja 0x418b20
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.00408360
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 [0x45fef0]
comiss xmm3, xmm4
jbe 0x418b20
mov eax, dword [esp + 0x64]
movss xmm3, dword [esp + 0x28]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0xc]
andps xmm4, xmmword [0x45fef0]
comiss xmm3, xmm4
jbe 0x418b20
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.004082b0
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
cmp dword [esp + 4], 0
jne 0x418b10
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x2c]
movss dword [esp], xmm4
jmp 0x418b15
movss xmm4, dword [esp]
movss xmm3, dword [esp + 0x28]
comiss xmm3, xmm4
ja 0x418b35
inc ebp
cmp ebp, dword [esp + 0x34]
jle 0x4186bb
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 0x418b85
movss xmm3, dword [edi + ecx - 4]
comiss xmm3, xmm0
ja 0x4189d1
comiss xmm2, xmm4
jbe 0x418b95
comiss xmm2, dword [edi + ecx - 4]
ja 0x4189d1
movss xmm4, dword [ebx + ecx - 8]
comiss xmm4, dword [esp + 0x30]
jbe 0x418bb3
movss xmm3, dword [ebx + ecx - 4]
comiss xmm3, dword [esp + 0x30]
ja 0x4189d1
comiss xmm1, xmm4
jbe 0x418bc3
comiss xmm1, dword [ebx + ecx - 4]
ja 0x4189d1
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.00408360
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 [0x45fef0]
comiss xmm3, xmm4
jbe 0x418c6f
mov eax, dword [esp + 0x64]
movss xmm3, dword [esp + 0x28]
movss xmm4, dword [eax]
subss xmm4, dword [esp + 0xc]
andps xmm4, xmmword [0x45fef0]
comiss xmm3, xmm4
ja 0x418c7e
mov eax, dword [esp + 0x38]
mov edx, dword [eax]
mov eax, dword [esi + ebp*4 - 4]
jmp 0x4189d1
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.004082b0
movss xmm0, dword [esp + 0x1c]
movss xmm2, dword [esp + 0x18]
movss xmm1, dword [esp + 0x14]
cmp dword [esp + 4], 0
jne 0x418cd6
movss xmm4, dword [esp]
addss xmm4, dword [esp + 0x2c]
movss dword [esp], xmm4
jmp 0x418cdb
movss xmm4, dword [esp]
movss xmm3, dword [esp + 0x28]
comiss xmm3, xmm4
ja 0x418b35
mov eax, dword [esp + 0x38]
mov edx, dword [eax]
mov eax, dword [esi + ebp*4 - 4]
jmp 0x4189d1