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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4f46b2
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 0x4f4603
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 0x4f4421
add ebp, edx
mov edi, dword [esp + 0x7c]
cmp ebp, edi
jae 0x4f4696
mov edi, dword [esp + 0x78]
movzx ebp, byte [edi + ebp]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4f4410
lea ebp, [edx + esi]
cmp eax, ebp
jbe 0x4f43fd
shl ebp, 2
movss xmm1, dword [esp + 0x50]
cmp ebx, ebp
jbe 0x4f468d
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 0x4f4684
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 0x4f467b
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 0x4f4672
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 0x4f4301
jg 0x4f4409
mov ebp, eax
shl ebp, 2
jmp 0x4f435c
xor ebp, ebp
jmp 0x4f435c
mov esi, dword [esp + 0x60]
movss xmm1, dword [0x6c3a58]
jmp 0x4f4301
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 0x4f45d5
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 0x4f4669
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 0x4f45cc
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 0x4f4660
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 0x4f45c3
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 0x4f4657
mov edx, dword [esp + 0x10]
mov byte [edx + edi + 2], bl
movss xmm1, dword [esp + 0x5c]
divss xmm1, xmm0
ucomiss xmm1, xmm2
jbe 0x4f45ba
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 0x4f464e
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 0x4f45e6
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 0x4f469f
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 0x4f4322
cvttss2si ebx, xmm1
jmp 0x4f4509
cvttss2si ebx, xmm1
jmp 0x4f44d4
cvttss2si esi, xmm1
jmp 0x4f4499
cvttss2si eax, xmm1
mov byte [esp + 0xb], al
mov eax, dword [esp + 0x20]
jmp 0x4f446a
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 0x4f464a
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 0x4f46a8
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 0x4f4550
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.004f42b0