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

Disassembly:
sub esp, 0xa4
push ebp
mov ebp, dword [esp + 0xac]
push edi
mov edi, dword [ebp + 0x10]
push edi
call fcn.0041b4d0
add esp, 4
test eax, eax
jne 0x4bc930
test byte [0x8c0870], 8
jne 0x4bc91a
movzx ecx, byte [ebp + 0xa]
lea eax, [ecx*8]
sub eax, ecx
xor edx, edx
lea eax, [eax + eax*4]
mov dword [ebp + 0x10], edx
shl eax, 4
add eax, dword [0x69647c]
mov word [eax + 0x220], dx
mov word [eax + 0x222], dx
mov dword [eax + 0x21c], edx
movzx eax, byte [ebp + 0xa]
push eax
call fcn.004bb070
add esp, 4
pop edi
pop ebp
add esp, 0xa4
ret
push edi
call fcn.0041b5c0
add esp, 4
test eax, eax
je 0x4bc94d
mov eax, ebp
call fcn.004bb3d0
pop edi
pop ebp
add esp, 0xa4
ret
movzx ecx, byte [ebp + 0xa]
lea eax, [ecx*8]
push ebx
push esi
sub eax, ecx
lea esi, [eax + eax*4]
shl esi, 4
add esi, dword [0x69647c]
push edi
call fcn.0041b460
movzx ecx, byte [eax + 9]
movsx ebx, word [esi + 0x40]
lea eax, [ecx*8]
sub eax, ecx
lea edi, [eax + eax*4]
shl edi, 4
add edi, dword [0x69647c]
add esp, 4
movzx ecx, word [edi + 0x220]
test cx, cx
mov word [esi + 0x220], cx
mov ax, word [edi + 0x222]
mov word [esi + 0x222], ax
jne 0x4bca0c
test ax, ax
jne 0x4bca0c
movzx ecx, byte [esi + 0x1be]
movss xmm1, dword [0x649918]
movss dword [esi + 0x224], xmm1
mov dword [esi + 0x21c], 0
call fcn.00417110
test eax, eax
je 0x4bca39
test ebx, ebx
jle 0x4bc9eb
cmp ebx, 2
jg 0x4bc9eb
xor ebx, ebx
jmp 0x4bca39
call fcn.00630957
cvtsi2ss xmm0, eax
mulss xmm0, dword [0x64de5c]
cvttss2si eax, xmm0
cdq
mov ecx, 3
idiv ecx
mov ebx, edx
jmp 0x4bca31
movsx edx, cx
mov dword [esp + 0x10], edx
movsx eax, ax
fild dword [esp + 0x10]
mov dword [esp + 0x10], eax
or byte [esi + 0x21e], 1
fild dword [esp + 0x10]
fpatan
fstp dword [esi + 0x224]
movss xmm1, dword [0x649918]
movss xmm0, dword [esi + 0x224]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x4bcbfa
mov ebx, 0xa
xorps xmm0, xmm0
movsx ecx, word [esi + 0x40]
cmp ebx, ecx
je 0x4bca76
movzx edx, byte [esi + 0x1be]
mov eax, dword [esi + 0x44]
push edx
push ebx
push eax
call fcn.00417b60
xorps xmm0, xmm0
add esp, 0xc
mov ecx, dword [edi + 0x94]
movss xmm1, dword [0x64fb7c]
push ecx
lea edx, [esp + 0x78]
movss dword [esp + 0x20], xmm1
movss xmm1, dword [0x649444]
push edx
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x28], xmm1
movss dword [esp + 0x74], xmm0
movss dword [esp + 0x70], xmm0
movss dword [esp + 0x6c], xmm0
movss dword [esp + 0x68], xmm0
movss dword [esp + 0x60], xmm0
movss dword [esp + 0x5c], xmm0
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x54], xmm0
movss dword [esp + 0x4c], xmm0
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x44], xmm0
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x78], xmm1
movss dword [esp + 0x64], xmm1
movss dword [esp + 0x50], xmm1
movss dword [esp + 0x3c], xmm1
call fcn.00594fc0
lea eax, [esp + 0x74]
push eax
lea ecx, [esp + 0x38]
push ecx
mov edx, ecx
push edx
call fcn.00593dd0
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x18]
push ecx
mov edx, ecx
push edx
call fcn.005932e0
movss xmm0, dword [edi]
addss xmm0, dword [esp + 0x14]
movss dword [esi + 0xa0], xmm0
movss xmm0, dword [edi + 4]
addss xmm0, dword [esp + 0x18]
movss dword [esi + 0xa4], xmm0
movss xmm0, dword [edi + 8]
addss xmm0, dword [esp + 0x1c]
movss dword [esi + 0xa8], xmm0
movss xmm0, dword [edi + 0xc]
addss xmm0, dword [esp + 0x20]
movss dword [esi + 0xac], xmm0
mov eax, dword [esi + 0xa4]
mov edx, dword [esi + 0xa0]
mov dword [esi + 0x30], eax
mov ecx, dword [edi + 0x94]
mov dword [esp + 0x28], eax
movss xmm0, dword [esp + 0x28]
subss xmm0, dword [0x64de60]
mov dword [esi + 0x94], ecx
mov ecx, dword [esi + 0xa8]
mov dword [esp + 0x24], edx
mov edx, dword [esi + 0xac]
lea eax, [esp + 0x24]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], edx
movss dword [esp + 0x28], xmm0
call fcn.004f5e50
fstp dword [esp + 0x28]
fld dword [0x649448]
fld dword [esp + 0x28]
fucompi st(1)
fstp st(0)
lahf
test ah, 0x44
jp 0x4bcc5a
xorps xmm0, xmm0
movss dword [edi + 0x90], xmm0
jmp 0x4bccaa
movss xmm0, dword [esi + 0x94]
ucomiss xmm0, dword [edi + 0x94]
lahf
test ah, 0x44
jnp 0x4bca53
subss xmm0, dword [edi + 0x94]
comiss xmm0, dword [0x6498c0]
jbe 0x4bcc2a
subss xmm0, xmm1
jmp 0x4bcc3b
movss xmm2, dword [0x64991c]
comiss xmm2, xmm0
jb 0x4bcc3b
addss xmm0, xmm1
movaps xmm1, xmm0
xorps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x4bcc50
mov ebx, 0xd
jmp 0x4bca56
mov ebx, 0xc
jmp 0x4bca56
fld dword [esp + 0x24]
movss xmm0, dword [esp + 0x28]
fsub dword [edi + 0xa0]
subss xmm0, dword [0x64de8c]
fld dword [esp + 0x2c]
subss xmm0, dword [edi + 0xa4]
fsub dword [edi + 0xa8]
movss dword [esp + 0x18], xmm0
fld dword [esp + 0x18]
fld st(1)
fmul st(2)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fstp st(3)
fxch st(1)
fxch st(2)
fpatan
fstp st(1)
fstp dword [edi + 0x90]
call fcn.004bc5d0
push ebp
call fcn.004bbb90
add esp, 4
pop esi
pop ebx
pop edi
pop ebp
add esp, 0xa4
ret