Function at 0x4ed4c0
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x86d26b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
push ebp
mov ebp, ecx
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x34]
fld dword [eax + 0x58]
push esi
fld dword [eax + 0x54]
mov esi, dword [esp + 0x28]
fld dword [eax + 0x50]
push edi
fld st(0)
push esi
fmul st(1)
mov dword [esp + 0x18], ebp
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp st(3)
fstp st(0)
fstp st(0)
fsqrt
fmul dword [0x8967e0]
fstp dword [esp + 0x14]
call fcn.004b0b70
imul eax, eax, 0x7fff
mov ecx, dword [ebp + 0x10]
add esp, 4
sar eax, 0xf
cmp esi, 2
jne 0x4ed543
test ecx, ecx
je 0x4ed566
mov ecx, dword [ecx + 0x18]
sar ecx, 0x10
and ecx, 0x7fff
jmp 0x4ed568
cmp esi, 3
jne 0x4ed557
test ecx, ecx
je 0x4ed566
mov ecx, dword [ecx + 0x1c]
and ecx, 0x7fff
jmp 0x4ed568
test ecx, ecx
je 0x4ed566
mov ecx, dword [ecx + 4]
and ecx, 0x7fff
jmp 0x4ed568
xor ecx, ecx
mov ebx, dword [esp + 0x30]
imul ecx, eax
sar ecx, 0xf
mov edi, ecx
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, 0x9148dc
mov dword [ebp + ebx*4 + 0x60], edi
call fcn.004ba590
call fcn.007c4b80
mov ecx, dword [0x911fa8]
push ebp
mov dword [esp + 0x14], eax
call fcn.004b8db0
mov esi, dword [ebp + ebx*4 + 0x50]
test esi, esi
je 0x4ed5b8
mov ecx, dword [esi]
test ecx, ecx
je 0x4ed5af
call fcn.00831782
push esi
call fcn.00831682
add esp, 4
push 0x30
call fcn.00831667
mov esi, eax
add esp, 4
mov dword [esp + 0x18], esi
test esi, esi
mov dword [esp + 0x24], 0
je 0x4ed717
mov edx, dword [ebp + 0x10]
test edx, edx
je 0x4ed5ee
mov eax, dword [edx + 0x1c]
sar eax, 0x10
and eax, 0x7fff
mov ebp, eax
jmp 0x4ed5f0
xor ebp, ebp
xor eax, eax
test ebx, ebx
setne al
test edx, edx
je 0x4ed621
mov ecx, eax
sar eax, 1
mov eax, dword [edx + eax*4]
mov edx, dword [0x911fa8]
mov edx, dword [edx + 0x24]
mov ebx, dword [edx + 0x24]
and ecx, 1
shl ecx, 4
test ebx, ebx
je 0x4ed621
sar eax, cl
and eax, 0xffff
jmp 0x4ed623
xor eax, eax
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jge 0x4ed62f
xor ecx, ecx
jmp 0x4ed639
cmp ecx, 0xf
jle 0x4ed639
mov ecx, 0xf
lea ebx, [esi + 4]
xor edx, edx
cmp edi, edx
mov dword [ebx], ecx
mov ecx, edi
jge 0x4ed64a
xor ecx, ecx
jmp 0x4ed657
cmp edi, 0x7fff
jle 0x4ed657
mov ecx, 0x7fff
mov dword [esi + 8], ecx
mov ecx, dword [esp + 0x10]
cmp ecx, edx
jge 0x4ed666
xor ecx, ecx
jmp 0x4ed673
cmp ecx, 0x1fff
jle 0x4ed673
mov ecx, 0x1fff
cmp eax, edx
mov dword [esi + 0xc], ecx
jge 0x4ed67e
xor eax, eax
jmp 0x4ed68a
cmp eax, 0xffff
jle 0x4ed68a
mov eax, 0xffff
cmp ebp, edx
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 1
mov dword [esi + 0x18], edx
mov dword [esi + 0x1c], edx
mov dword [esi + 0x20], 0x61a8
mov dword [esi + 0x24], edx
mov dword [esi + 0x28], 0x7fff
mov eax, ebp
jge 0x4ed6b5
xor eax, eax
jmp 0x4ed6c2
cmp ebp, 0x7fff
jle 0x4ed6c2
mov eax, 0x7fff
push esi
push ebx
push 0x914944
mov dword [esi + 0x2c], eax
call fcn.00831a8a
add esp, 0xc
test eax, eax
jge 0x4ed6f6
push 0x8f0280
mov ecx, 0x914944
call fcn.0083198b
push esi
push ebx
push 0x914944
call fcn.00831a8a
add esp, 0xc
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x30]
pop edi
mov dword [eax + ecx*4 + 0x50], esi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xc]
mov dword fs:[0], ecx
add esp, 0x18
ret 8
mov ecx, dword [esp + 0x1c]
pop edi
xor eax, eax
mov dword [ebp + ebx*4 + 0x50], eax
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x18
ret 8