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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x84
mov eax, dword [0x766480]
xor eax, esp
mov dword [esp + 0x80], eax
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, ecx
mov dword [esp + 0x10], esi
mov edx, dword [esi]
lea eax, [edi + 0x1c]
push eax
push 0x100
push esi
call dword [edx + 0x94]
movss xmm0, dword [0xf8f0a0]
xor ebx, ebx
mov eax, dword [0xf89720]
addss xmm0, dword [0x70643c]
mov ecx, dword [edi + 0x1df48]
mov dword [esp + 0x18], eax
mov eax, dword [edi + 0x1df4c]
sub eax, ecx
movss dword [esp + 0x1c], xmm0
test eax, 0xfffffffc
jle 0x5ff286
mov edx, dword [ecx + ebx*4]
mov ecx, dword [edx + 0xb4]
test ecx, ecx
je 0x5ff26c
mov eax, dword [ecx + 0x10]
test eax, eax
je 0x5ff26c
cmp byte [eax + 0x108], 0
je 0x5ff26c
cmp byte [edx + 0x4bc], 0
jne 0x5ff19e
push 0
lea eax, [edx + 4]
push eax
lea eax, [edx + 0x10]
push eax
call fcn.005daa90
mov ecx, dword [edi + 0x1df48]
mov ecx, dword [ecx + ebx*4]
call fcn.005f4380
mov ecx, dword [edi + 0x1df48]
mov eax, dword [ecx + ebx*4]
movups xmm0, xmmword [eax + 0x1c]
movups xmmword [esp + 0x48], xmm0
movups xmm0, xmmword [eax + 0x2c]
movups xmmword [esp + 0x58], xmm0
movups xmm0, xmmword [eax + 0x3c]
movups xmmword [esp + 0x68], xmm0
movups xmm0, xmmword [eax + 0x4c]
movups xmmword [esp + 0x78], xmm0
mov eax, dword [ecx + ebx*4]
movss xmm1, dword [eax + 8]
movss xmm2, dword [eax + 0xc]
movss xmm0, dword [eax + 4]
movss dword [esp + 0x30], xmm0
movss dword [esp + 0x34], xmm1
movss dword [esp + 0x38], xmm2
mov eax, dword [ecx + ebx*4]
movss xmm1, dword [eax + 0x14]
movss xmm2, dword [eax + 0x18]
movss xmm0, dword [eax + 0x10]
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x34]
movss dword [esp + 0x40], xmm0
push eax
lea eax, [esp + 0x28]
movss dword [esp + 0x48], xmm1
push eax
movss dword [esp + 0x50], xmm2
call fcn.00402d1a
movss xmm0, dword [esp + 0x20]
divss xmm0, dword [0x7069e0]
cvttss2si esi, xmm0
movss xmm0, dword [esp + 0x28]
divss xmm0, dword [0x7069e0]
cvttss2si eax, xmm0
mov dword [esp + 0x14], eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x28]
push eax
call fcn.00402d1a
movss xmm0, dword [esp + 0x20]
movss xmm2, dword [0x7069e0]
divss xmm0, xmm2
cvttss2si eax, xmm0
cmp esi, eax
jne 0x5ff14a
movss xmm0, dword [esp + 0x28]
divss xmm0, xmm2
cvttss2si eax, xmm0
cmp dword [esp + 0x14], eax
jne 0x5ff14a
mov eax, dword [edi + 0x1df48]
mov eax, dword [eax + ebx*4]
mov byte [eax + 0x4b9], 0
jmp 0x5ff173
mov ecx, dword [edi + 0x1f624]
test ecx, ecx
je 0x5ff173
mov eax, dword [edi + 0x1f62c]
mov dword [ecx + eax*4], ebx
inc dword [edi + 0x1f62c]
mov eax, dword [edi + 0x1df48]
mov eax, dword [eax + ebx*4]
mov byte [eax + 0x4b9], 1
mov ecx, dword [edi + 0x1df48]
movss xmm0, dword [edi + 8]
mov eax, dword [ecx + ebx*4]
movss xmm1, dword [eax + 0x50]
addss xmm1, dword [eax + 8]
maxss xmm0, xmm1
movss dword [edi + 8], xmm0
mov eax, dword [ecx + ebx*4]
mov byte [eax + 0x4bc], 1
mov eax, dword [edi + 0x1df48]
mov esi, dword [eax + ebx*4]
cmp dword [0xf89750], esi
je 0x5ff218
cmp byte [0xf899cc], 0
mov eax, dword [esp + 0x18]
movss xmm1, dword [eax + 4]
movss xmm0, dword [eax + 8]
movss xmm2, dword [eax + 0xc]
subss xmm1, dword [esi + 0x4c]
subss xmm0, dword [esi + 0x50]
subss xmm2, dword [esi + 0x54]
je 0x5ff210
mulss xmm0, xmm0
mulss xmm1, xmm1
mulss xmm2, xmm2
addss xmm0, xmm1
xorps xmm1, xmm1
addss xmm0, xmm2
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x5ff200
sqrtsd xmm0, xmm0
jmp 0x5ff205
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
cvtsd2ss xmm0, xmm0
comiss xmm0, dword [esp + 0x1c]
ja 0x5ff26c
push dword [esp + 0x10]
mov ecx, esi
jmp 0x5ff267
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
lea eax, [esi + 0x1c]
mov esi, dword [esp + 0x10]
push eax
push 0x100
push esi
call dword [ecx + 0x94]
mov ecx, dword [edi + 0x1df48]
mov eax, dword [ecx + ebx*4]
mov eax, dword [eax + 0xb4]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x5ff256
push esi
mov ecx, eax
call fcn.005ebd10
mov ecx, dword [edi + 0x1df48]
mov eax, dword [0xf89748]
cmp eax, dword [0x747678]
je 0x5ff26c
mov ecx, dword [ecx + ebx*4]
push esi
call fcn.005db850
mov eax, dword [edi + 0x1df4c]
inc ebx
mov ecx, dword [edi + 0x1df48]
sub eax, ecx
sar eax, 2
cmp ebx, eax
jl 0x5feff2
mov ecx, dword [esp + 0x8c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.006dfb52
mov esp, ebp
pop ebp
ret 4