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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4f42a2
sub esp, 0x64
mov edx, dword [esp + 0x68]
mov ebx, dword [edx + 0x18]
sub ebx, dword [edx + 0x10]
dec ebx
mov dword [esp + 0x20], ebx
mov ebp, dword [esp + 0x6c]
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x3c], esi
mov edi, dword [ebp + 0x14]
mov dword [esp + 0x38], edi
mov eax, ebx
mov ebx, dword [ebp + 0x18]
mov dword [esp + 0x34], ebx
mov ecx, ebp
mov ebp, dword [ebp + 0x1c]
mov dword [esp + 0x30], ebp
jmp 0x4f41f3
inc edx
mov ebp, dword [esp + 0x90]
mov edi, dword [esp + 0x18]
mov ebp, dword [esp + 0x28]
mov esi, edi
mov edi, dword [esp + 0x90]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x60]
mov edx, dword [esp + 0x24]
cmp edi, edx
jle 0x4f4011
add ebp, edx
mov edi, dword [esp + 0x7c]
cmp ebp, edi
jae 0x4f4286
mov edi, dword [esp + 0x78]
movzx ebp, byte [edi + ebp]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4f4000
lea ebp, [edx + esi]
cmp eax, ebp
jbe 0x4f3fed
shl ebp, 2
movss xmm1, dword [esp + 0x50]
cmp ebx, ebp
jbe 0x4f427d
mov esi, dword [esp + 0x60]
movzx edi, byte [esi + ebp]
cvtsi2ss xmm2, edi
addss xmm1, xmm2
movss dword [esp + 0x50], xmm1
movss xmm1, dword [esp + 0x54]
lea edi, [ebp + 1]
cmp ebx, edi
jbe 0x4f4274
movzx edi, byte [ebp + esi + 1]
cvtsi2ss xmm2, edi
addss xmm1, xmm2
movss dword [esp + 0x54], xmm1
movss xmm1, dword [esp + 0x58]
lea edi, [ebp + 2]
cmp ebx, edi
jbe 0x4f426b
movzx edi, byte [ebp + esi + 2]
cvtsi2ss xmm2, edi
addss xmm1, xmm2
movss dword [esp + 0x58], xmm1
movss xmm1, dword [esp + 0x5c]
lea edi, [ebp + 3]
cmp ebx, edi
jbe 0x4f4262
movzx ebp, byte [ebp + esi + 3]
cvtsi2ss xmm2, ebp
addss xmm1, xmm2
movss dword [esp + 0x5c], xmm1
movss xmm1, dword [0x6c3a58]
addss xmm0, xmm1
jmp 0x4f3ef1
jg 0x4f3ff9
mov ebp, eax
shl ebp, 2
jmp 0x4f3f4c
xor ebp, ebp
jmp 0x4f3f4c
mov esi, dword [esp + 0x60]
movss xmm1, dword [0x6c3a58]
jmp 0x4f3ef1
mov edx, dword [esp + 0xc]
mov ebp, dword [esp + 0x38]
mov esi, edx
sub edx, ebp
imul edx, dword [ecx + 0xc]
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x3c]
sub ebp, ebx
lea ebx, [edx + ebp*4]
movss xmm1, dword [esp + 0x50]
divss xmm1, xmm0
movss xmm2, dword [0x6c3a5c]
ucomiss xmm1, xmm2
jbe 0x4f41c5
mov dword [esp + 0x40], eax
mov eax, 0xffffffff
mov byte [esp + 0xb], al
mov eax, dword [esp + 0x40]
mov edi, dword [ecx + 4]
mov esi, dword [ecx]
cmp edi, ebx
jbe 0x4f4259
movzx edi, byte [esp + 0xb]
xchg edi, eax
mov byte [esi + ebx], al
xchg edi, eax
movss xmm1, dword [esp + 0x54]
divss xmm1, xmm0
ucomiss xmm1, xmm2
jbe 0x4f41bc
mov esi, 0xffffffff
mov dword [esp + 0x2c], edx
mov dword [esp + 0x10], ebx
mov edi, dword [ecx + 4]
mov ebx, dword [ecx]
lea edx, [edx + ebp*4 + 1]
cmp edx, edi
jae 0x4f4250
mov edx, dword [esp + 0x10]
xchg esi, eax
mov byte [edx + ebx + 1], al
xchg esi, eax
movss xmm1, dword [esp + 0x58]
divss xmm1, xmm0
ucomiss xmm1, xmm2
jbe 0x4f41b3
mov ebx, 0xffffffff
mov esi, dword [ecx + 4]
mov edi, dword [ecx]
mov edx, dword [esp + 0x2c]
lea edx, [edx + ebp*4 + 2]
cmp edx, esi
jae 0x4f4247
mov edx, dword [esp + 0x10]
mov byte [edx + edi + 2], bl
movss xmm1, dword [esp + 0x5c]
divss xmm1, xmm0
ucomiss xmm1, xmm2
jbe 0x4f41aa
mov ebx, 0xffffffff
mov esi, dword [ecx + 4]
mov edi, dword [ecx]
mov edx, dword [esp + 0x2c]
lea edx, [edx + ebp*4 + 3]
cmp esi, edx
jbe 0x4f423e
mov edx, dword [esp + 0x10]
mov byte [edx + edi + 3], bl
mov edx, dword [esp + 0xc]
lea ebp, [edx + 1]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x84]
mov edx, esi
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x90]
mov esi, dword [esp + 0x30]
cmp ebp, esi
jge 0x4f41d6
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov esi, dword [esp + 0x88]
cmp ebp, esi
jae 0x4f428f
mov dword [esp + 0xc], ebp
mov esi, dword [esp + 0x84]
mov esi, dword [esi + ebp*4]
mov dword [esp + 0x18], esi
imul ebp, edi
mov dword [esp + 0x28], ebp
mov dword [esp + 0x48], eax
xor eax, eax
mov dword [esp + 0x24], eax
xorps xmm0, xmm0
mov eax, dword [esp + 0x48]
jmp 0x4f3f12
cvttss2si ebx, xmm1
jmp 0x4f40f9
cvttss2si ebx, xmm1
jmp 0x4f40c4
cvttss2si esi, xmm1
jmp 0x4f4089
cvttss2si eax, xmm1
mov byte [esp + 0xb], al
mov eax, dword [esp + 0x20]
jmp 0x4f405a
mov edx, dword [esp + 0x14]
inc edx
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x68]
mov ebx, dword [esp + 0x34]
mov ebp, esi
mov edi, dword [esp + 0x38]
mov esi, edx
mov edx, dword [esp + 0x68]
cmp esi, ebx
jge 0x4f423a
mov ebx, dword [edx + 4]
mov ebp, dword [edx]
mov edi, dword [edx + 8]
mov edx, dword [edx + 0xc]
imul edx, esi
cmp edx, ebx
ja 0x4f4298
mov dword [esp + 0x14], esi
sub ebx, edx
mov dword [esp + 0x1c], ebx
sub edi, edx
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edx, edi
add edx, ebp
mov dword [esp + 0x60], edx
mov ebp, dword [esp + 0x38]
mov edi, dword [esp + 0x90]
jmp 0x4f4140
add esp, 0x64
ret
mov eax, edx
mov ecx, esi
call fcn.0045ad60
mov eax, edx
mov ecx, esi
call fcn.0045ad60
mov eax, edx
mov ecx, edi
call fcn.0045ad60
mov eax, ebx
mov ecx, edi
call fcn.0045ad60
mov eax, edi
mov ecx, ebx
call fcn.0045ad60
mov eax, edi
mov ecx, ebx
call fcn.0045ad60
mov eax, edi
mov ecx, ebx
call fcn.0045ad60
mov eax, ebp
mov ecx, ebx
call fcn.0045ad60
mov eax, ebp
mov ecx, edi
call fcn.0045ad60
mov eax, ebp
mov ecx, esi
call fcn.0045ad60
mov eax, edx
mov ecx, ebx
call fcn.0045adc0
nop
call fcn.00459790
jmp fcn.004f3ea0