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

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffff84
imul eax, eax, 0xb
mov edx, dword [0x58d5ac]
lea ebx, [edx + eax*8]
mov eax, dword [ebx + 8]
dec eax
test eax, eax
jl 0x4bdeb4
inc eax
mov dword [esp + 0x60], eax
mov dword [esp], 0
imul eax, dword [esp], 0xd
mov edx, dword [ebx + 4]
lea edi, [edx + eax*8]
mov eax, dword [edi + 4]
add eax, eax
add eax, eax
lea eax, [eax + eax*8]
mov edx, dword [0x58d5a4]
lea eax, [edx + eax*8]
mov dword [esp + 0x64], eax
mov eax, dword [edi + 0x10]
mov dword [edi + 0x20], eax
mov eax, dword [edi + 0x14]
mov dword [edi + 0x24], eax
mov eax, dword [edi + 0x18]
mov dword [edi + 0x28], eax
mov eax, dword [edi + 0x1c]
mov dword [edi + 0x2c], eax
fld qword [edi + 0x30]
mov eax, dword [esp + 0x64]
fadd qword [eax + 0x68]
fstp qword [edi + 0x30]
wait
fld qword [edi + 0x30]
fcomp dword [0x4bdebc]
wait
fnstsw ax
sahf
jae 0x4bdad9
xor eax, eax
mov dword [edi + 0x30], eax
mov dword [edi + 0x34], eax
fld qword [edi + 0x38]
mov eax, dword [esp + 0x64]
fadd qword [eax + 0x88]
fstp qword [edi + 0x38]
wait
fld qword [edi + 0x40]
mov eax, dword [esp + 0x64]
fadd qword [eax + 0xb8]
fstp qword [edi + 0x40]
wait
xor eax, eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
xor eax, eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x64]
fld qword [eax + 0x98]
fcomp dword [0x4bdebc]
wait
fnstsw ax
sahf
jne 0x4bdb2f
cmp dword [ebx + 0x18], 0
jle 0x4bdda6
push dword [edi + 0x3c]
push dword [edi + 0x38]
push dword [edi + 0x34]
push dword [edi + 0x30]
lea edx, [esp + 0x20]
lea eax, [esp + 0x18]
call fcn.004bb618
mov eax, dword [esp + 0x64]
fld qword [eax + 0x98]
fcomp dword [0x4bdebc]
wait
fnstsw ax
sahf
je 0x4bdba5
mov eax, dword [esp + 0x64]
push dword [eax + 0xa4]
push dword [eax + 0xa0]
mov eax, dword [esp + 0x6c]
push dword [eax + 0x9c]
push dword [eax + 0x98]
lea edx, [esp + 0x30]
lea eax, [esp + 0x28]
call fcn.004bb618
fld qword [esp + 8]
fadd qword [esp + 0x18]
fstp qword [esp + 8]
wait
fld qword [esp + 0x10]
fadd qword [esp + 0x20]
fstp qword [esp + 0x10]
wait
mov eax, dword [ebx + 0x18]
dec eax
test eax, eax
jl 0x4bdd8b
inc eax
mov dword [esp + 0x68], eax
xor esi, esi
mov ebp, esi
add ebp, ebp
lea ebp, [ebp + ebp*2]
mov eax, dword [ebx + 0x14]
cmp byte [eax + ebp*8], 0
je 0x4bdd80
mov eax, dword [ebx + 0x14]
fld qword [eax + ebp*8 + 8]
fsub qword [edi + 0x10]
fstp qword [esp + 0x28]
wait
mov eax, dword [ebx + 0x14]
fld qword [eax + ebp*8 + 0x10]
fsub qword [edi + 0x18]
fstp qword [esp + 0x30]
wait
fld qword [esp + 0x28]
fmul st(0)
fstp xword [esp + 0x6c]
wait
fld qword [esp + 0x30]
fmul st(0)
fld xword [esp + 0x6c]
faddp st(1)
add esp, 0xfffffff4
fstp xword [esp]
wait
call fcn.00403488
fstp qword [esp + 0x38]
wait
fld qword [esp + 0x38]
mov eax, dword [ebx + 0x14]
fcomp qword [eax + ebp*8 + 0x20]
wait
fnstsw ax
sahf
ja 0x4bdd80
fld qword [esp + 0x38]
fcomp dword [0x4bdebc]
wait
fnstsw ax
sahf
je 0x4bdd80
mov eax, dword [ebx + 0x14]
fld qword [eax + ebp*8 + 0x18]
fcomp dword [0x4bdebc]
wait
fnstsw ax
sahf
je 0x4bdd80
mov eax, esi
add eax, eax
lea eax, [eax + eax*2]
mov edx, dword [ebx + 0x14]
fld qword [edx + eax*8 + 0x20]
fcomp dword [0x4bdebc]
wait
fnstsw ax
sahf
je 0x4bdd80
mov eax, esi
add eax, eax
lea eax, [eax + eax*2]
mov edx, dword [ebx + 0x14]
fld qword [edx + eax*8 + 0x18]
fmul qword [esp + 0x28]
fdiv qword [esp + 0x38]
fstp qword [esp + 0x18]
wait
mov eax, dword [ebx + 0x14]
fld qword [eax + ebp*8 + 0x18]
fmul qword [esp + 0x30]
fdiv qword [esp + 0x38]
fstp qword [esp + 0x20]
wait
mov eax, dword [ebx + 0x14]
cmp dword [eax + ebp*8 + 0x28], 1
jne 0x4bdcee
mov eax, dword [ebx + 0x14]
fld qword [eax + ebp*8 + 0x20]
fsub qword [esp + 0x38]
fmul qword [esp + 0x18]
mov eax, esi
add eax, eax
lea eax, [eax + eax*2]
mov edx, dword [ebx + 0x14]
fdiv qword [edx + eax*8 + 0x20]
fstp qword [esp + 0x18]
wait
mov eax, dword [ebx + 0x14]
fld qword [eax + ebp*8 + 0x20]
fsub qword [esp + 0x38]
fmul qword [esp + 0x20]
mov eax, esi
add eax, eax
lea eax, [eax + eax*2]
mov edx, dword [ebx + 0x14]
fdiv qword [edx + eax*8 + 0x20]
fstp qword [esp + 0x20]
wait
mov eax, dword [ebx + 0x14]
cmp dword [eax + ebp*8 + 0x28], 2
jne 0x4bdd40
mov eax, dword [ebx + 0x14]
fld qword [eax + ebp*8 + 0x20]
fsub qword [esp + 0x38]
mov eax, esi
add eax, eax
lea eax, [eax + eax*2]
mov edx, dword [ebx + 0x14]
fdiv qword [edx + eax*8 + 0x20]
fmul st(0)
fmul qword [esp + 0x18]
fstp qword [esp + 0x18]
wait
mov eax, dword [ebx + 0x14]
fld qword [eax + ebp*8 + 0x20]
fsub qword [esp + 0x38]
mov eax, esi
add eax, eax
lea eax, [eax + eax*2]
mov edx, dword [ebx + 0x14]
fdiv qword [edx + eax*8 + 0x20]
fmul st(0)
fmul qword [esp + 0x20]
fstp qword [esp + 0x20]
wait
mov eax, dword [ebx + 0x14]
cmp byte [eax + ebp*8 + 0x2c], 0
je 0x4bdd66
fld qword [esp + 8]
fadd qword [esp + 0x18]
fstp qword [esp + 8]
wait
fld qword [esp + 0x10]
fadd qword [esp + 0x20]
fstp qword [esp + 0x10]
wait
jmp 0x4bdd80
fld qword [esp + 0x40]
fadd qword [esp + 0x18]
fstp qword [esp + 0x40]
wait
fld qword [esp + 0x48]
fadd qword [esp + 0x20]
fstp qword [esp + 0x48]
wait
inc esi
dec dword [esp + 0x68]
jne 0x4bdbb8
push dword [esp + 0xc]
push dword [esp + 0xc]
push dword [esp + 0x1c]
push dword [esp + 0x1c]
lea edx, [edi + 0x30]
lea eax, [edi + 0x38]
call fcn.004bb504
mov esi, dword [edi + 8]
mov eax, esi
mov ecx, dword [edi + 0x64]
lea edx, [ecx + ecx*2]
add eax, edx
mov ebp, 0x18
cdq
idiv ebp
mov dword [esp + 0x78], edx
fild dword [esp + 0x78]
fdiv dword [0x4bdec0]
fstp qword [esp + 0x50]
wait
fld qword [esp + 0x50]
fcomp dword [0x4bdec4]
wait
fnstsw ax
sahf
jbe 0x4bdded
fld dword [0x4bdec8]
fsub qword [esp + 0x50]
fstp qword [esp + 0x50]
wait
fld qword [esp + 0x50]
fsub dword [0x4bdecc]
fstp qword [esp + 0x50]
wait
mov eax, esi
mov edx, ecx
add edx, edx
add edx, edx
add eax, edx
mov ecx, 0x14
cdq
idiv ecx
mov dword [esp + 0x78], edx
fild dword [esp + 0x78]
fdiv dword [0x4bded0]
fstp qword [esp + 0x58]
wait
fld qword [esp + 0x58]
fcomp dword [0x4bdec4]
wait
fnstsw ax
sahf
jbe 0x4bde40
fld dword [0x4bdec8]
fsub qword [esp + 0x58]
fstp qword [esp + 0x58]
wait
fld qword [esp + 0x58]
fsub dword [0x4bdecc]
fstp qword [esp + 0x58]
wait
fld qword [esp + 0x50]
mov eax, dword [esp + 0x64]
fmul qword [eax + 0x90]
fadd qword [edi + 0x38]
add esp, 0xfffffff8
fstp qword [esp]
wait
fld qword [esp + 0x60]
mov eax, dword [esp + 0x6c]
fmul qword [eax + 0x70]
fadd qword [edi + 0x30]
add esp, 0xfffffff8
fstp qword [esp]
wait
lea edx, [esp + 0x20]
lea eax, [esp + 0x18]
call fcn.004bb618
fld qword [edi + 0x10]
fadd qword [esp + 8]
fadd qword [esp + 0x40]
fstp qword [edi + 0x10]
wait
fld qword [edi + 0x18]
fadd qword [esp + 0x10]
fadd qword [esp + 0x48]
fstp qword [edi + 0x18]
wait
inc dword [esp]
dec dword [esp + 0x60]
jne 0x4bda7b
add esp, 0x7c
pop ebp
pop edi
pop esi
pop ebx
ret