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

Disassembly:
sub esp, 0x3c
mov eax, dword [0x8d20f4]
cmp dword [eax + 0xfe8], 0
push edi
lea edi, [eax + 0x368]
mov dword [esp + 0x18], eax
mov dword [esp + 4], edi
je 0x4d2e8b
push ebx
mov ebx, dword [eax + 0xbf68]
mov eax, dword [0x705898]
mov eax, dword [eax + 0x3c4]
mov ecx, eax
shl ecx, 5
add ecx, 0x8e89b0
and ecx, 0xfffffff
push ebp
push esi
mov dword [esp + 0x38], ecx
lea ecx, [eax + eax*2]
lea esi, [eax + ecx*8]
mov eax, dword [edi + 0xc90]
shl esi, 6
add esi, edi
cmp eax, 1
mov dword [esp + 0x20], ebx
mov dword [esp + 0x1c], esi
jne 0x4d2b43
mov eax, dword [edi + 0xc94]
and eax, 0x8000000f
jns 0x4d2b1d
dec eax
or eax, 0xfffffff0
inc eax
cmp eax, 8
jl 0x4d2b2b
mov edx, 0x10
sub edx, eax
mov eax, edx
push 8
push eax
push 0x64
push 0
call fcn.00449ca0
mov ebp, eax
add esp, 0x10
mov eax, 0x80
jmp 0x4d2b8d
xor ebp, ebp
test eax, eax
jne 0x4d2b7d
mov eax, dword [edi + 0xc94]
and eax, 0x8000001f
jns 0x4d2b5b
dec eax
or eax, 0xffffffe0
inc eax
cmp eax, 0x10
jl 0x4d2b69
mov ecx, 0x20
sub ecx, eax
mov eax, ecx
push 0x10
push eax
push 0x80
push 0x40
call fcn.00449ca0
add esp, 0x10
jmp 0x4d2b8d
xor edx, edx
cmp eax, 2
setne dl
sub edx, 1
and edx, 0x40
mov eax, edx
push ebp
push eax
push 0x50
push 0x240
push 2
push 0xe1
push 0x62
add esi, 0x10
push esi
call fcn.005227b0
movss xmm0, dword [0x6517d4]
movss dword [esp + 0x5c], xmm0
movss xmm0, dword [0x6517d0]
add esp, 0x20
xor esi, esi
movss dword [esp + 0x44], xmm0
jmp 0x4d2bd3
mov ebx, dword [esp + 0x20]
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 0xc84]
sub eax, esi
lea eax, [eax + ebx + 6]
cdq
idiv ebx
mov ecx, dword [esp + 0x24]
mov edi, dword [edi + 0xc88]
test edi, edi
mov edx, dword [ecx + edx*4 + 0xbf78]
mov dword [esp + 0x28], edx
jge 0x4d2c0c
test esi, esi
jne 0x4d2c05
xor ebp, ebp
neg edi
jmp 0x4d2c19
lea ebp, [esi - 1]
neg edi
jmp 0x4d2c19
cmp esi, 9
mov ebp, 9
je 0x4d2c19
lea ebp, [esi + 1]
movsx eax, word [ebp*8 + 0x69cef0]
movsx ecx, word [esi*8 + 0x69cef0]
push 0x64
push edi
push eax
push ecx
call fcn.00449ca0
movsx edx, word [ebp*8 + 0x69cef2]
push 0x64
mov dword [esp + 0x2c], eax
movsx eax, word [esi*8 + 0x69cef2]
push edi
push edx
push eax
call fcn.00449ca0
movsx ecx, word [ebp*8 + 0x69cef4]
movsx edx, word [esi*8 + 0x69cef4]
push 0x64
push edi
push ecx
push edx
mov dword [esp + 0x44], eax
call fcn.00449ca0
movsx ecx, word [esi*8 + 0x69cef6]
mov ebx, eax
movsx eax, word [ebp*8 + 0x69cef6]
push 0x64
push edi
push eax
push ecx
call fcn.00449ca0
mov edi, eax
lea ecx, [ebx + ebx*2]
shl ecx, 6
mov eax, 0x51eb851f
imul ecx
sar edx, 5
mov ebp, edx
lea ebx, [ebx + ebx*4]
add ebx, ebx
add ebx, ebx
add ebx, ebx
shr ebp, 0x1f
add ebp, edx
mov eax, 0x51eb851f
imul ebx
sar edx, 5
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edx, dword [esp + 0x50]
mov ecx, dword [edx + 0xc8c]
imul ecx, edi
mov eax, 0x51eb851f
imul ecx
mov ecx, dword [esp + 0x5c]
mov edi, dword [esp + 0x68]
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x74], eax
lea eax, [esi + esi*8]
shl eax, 4
lea ecx, [eax + ecx + 0xa0]
mov eax, dword [0x705898]
sub edx, ebx
cvtsi2ss xmm0, edx
mulss xmm0, dword [eax + 0x3b8]
cvttss2si eax, xmm0
and eax, 0xffff
or eax, 0x20000
cdq
shld edx, eax, 0x10
lea edi, [edi + edi*4]
add esp, 0x40
shl edi, 4
mov dword [esp + 0x30], ebp
mov dword [esp + 0x2c], ebx
shl eax, 0x10
mov ebx, eax
mov eax, edx
mov edx, dword [esp + 0x18]
mov dword [esp + 0x28], eax
sub edx, ebp
cvtsi2ss xmm0, edx
mov edx, dword [0x705898]
mulss xmm0, dword [edx + 0x3b4]
cvttss2si eax, xmm0
and eax, 0xffff
cdq
or ebx, eax
mov eax, dword [esp + 0x28]
or eax, edx
mov edx, dword [esp + 0x14]
mov dword [ecx + 0x7c], eax
mov eax, dword [esp + 0x2c]
add eax, edx
cvtsi2ss xmm0, eax
mov dword [ecx + 0x78], ebx
mov eax, dword [0x705898]
mulss xmm0, dword [eax + 0x3b8]
cvttss2si eax, xmm0
and eax, 0xffff
or eax, 0x20000
cdq
shld edx, eax, 0x10
shl eax, 0x10
mov ebx, eax
mov eax, dword [esp + 0x18]
movss xmm1, dword [0x649534]
mov ebp, edx
mov edx, dword [esp + 0x30]
add edx, eax
cvtsi2ss xmm0, edx
mov edx, dword [0x705898]
mulss xmm0, dword [edx + 0x3b4]
cvttss2si eax, xmm0
and eax, 0xffff
cdq
or ebx, eax
movzx eax, word [0x69cf6c]
or ebp, edx
mov edx, dword [esp + 0x3c]
cvtsi2ss xmm0, eax
mov dword [ecx + 0x70], edx
cvtsi2ss xmm2, edi
addss xmm2, xmm1
divss xmm2, xmm0
movss dword [esp + 0x40], xmm2
mov eax, dword [esp + 0x40]
mov dword [ecx + 0x74], eax
mov eax, dword [esp + 0x44]
lea edx, [edi + 0x50]
cvtsi2ss xmm2, edx
mov dword [ecx + 0x80], eax
subss xmm2, xmm1
divss xmm2, xmm0
movss dword [esp + 0x48], xmm2
mov edx, dword [esp + 0x48]
mov dword [ecx + 0x84], edx
lea eax, [edi + 0x4f]
cdq
shld edx, eax, 0xa
shl eax, 0xa
mov dword [ecx + 0x88], ebx
mov ebx, eax
mov dword [ecx + 0x8c], ebp
mov ebp, edx
mov eax, edi
cdq
or ebx, eax
mov al, byte [esp + 0x34]
or ebp, edx
shld ebp, ebx, 0x18
shl ebx, 0x18
or ebx, 0x5fc00a
mov dword [ecx + 0x60], ebx
mov dword [ecx + 0x64], ebp
mov byte [ecx + 0x6b], al
add esi, 1
cmp esi, 0xa
jl 0x4d2bcb
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
push 0
push 0
push 0
push 0x64
push ecx
push edx
call fcn.00550200
add esp, 0x18
pop esi
pop ebp
pop ebx
pop edi
add esp, 0x3c
ret