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

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x5dc7b0
push eax
mov dword fs:[0], esp
sub esp, 0x8c
push ebp
push esi
mov esi, dword [esp + 0xa4]
push edi
push esi
call fcn.004ec060
test eax, eax
je 0x4ec0e3
mov ecx, esi
call fcn.0054a8e0
mov edi, eax
xor ebp, ebp
push ebp
mov ecx, edi
call fcn.00547260
mov esi, eax
cmp esi, ebp
je 0x4ec0e3
mov ecx, dword [esi]
call fcn.00549f80
cmp eax, 3
je 0x4ec0ff
push ebp
push esi
mov ecx, edi
call fcn.00547400
mov esi, eax
cmp esi, ebp
jne 0x4ec0c8
xor eax, eax
mov ecx, dword [esp + 0x98]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
add esp, 0x98
ret 0xc
cmp esi, ebp
je 0x4ec0e3
mov edi, dword [esi]
mov ecx, edi
mov dword [esp + 0x10], edi
call fcn.0054a0f0
test eax, eax
je 0x4ec0e3
mov ecx, edi
call fcn.00549fd0
test eax, eax
je 0x4ec0e3
push ebx
lea eax, [esp + 0x18]
mov ebx, 1
push eax
mov ecx, edi
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], ebp
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x50], ebp
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x60], ebp
mov dword [esp + 0x64], ebp
call fcn.00587230
fld qword [esp + 0x20]
fmul qword [0x5e7c20]
mov cx, word [esp + 0x18]
mov dx, word [esp + 0x1c]
mov ax, word [esp + 0x40]
mov word [0x885282], cx
mov cx, word [esp + 0x44]
mov word [0x885284], dx
fstp qword [0x88528e]
fld qword [esp + 0x28]
fmul qword [0x5e7c20]
mov dx, word [esp + 0x48]
mov word [0x885286], ax
mov ax, word [esp + 0x4c]
mov word [0x885288], cx
mov ecx, edi
mov word [0x885230], bx
fstp qword [0x885296]
mov word [0x88528a], dx
mov word [0x88528c], ax
call fcn.00587390
cmp eax, 3
ja case.default.0x4ec222
jmp dword [eax*4 + 0x4ec708]
fld qword [esp + 0x30]
fmul qword [0x5f05f8]
fstp qword [0x88529e]
fld qword [esp + 0x38]
fmul qword [0x5e7c20]
fstp qword [0x8852a6]
fld qword [0x88529e]
fcomp qword [0x5e80d8]
fnstsw ax
test ah, 0x41
jne 0x4ec273
cmp word [0x885282], bx
jbe 0x4ec273
fld qword [0x88529e]
fchs
fstp qword [0x8852ae]
fld qword [0x8852a6]
fcomp qword [0x5e80d8]
fnstsw ax
test ah, 1
je case.default.0x4ec222
cmp word [0x885284], bx
jbe case.default.0x4ec222
jmp 0x4ec3dd
fld qword [esp + 0x30]
fmul qword [0x5f05f8]
fstp qword [0x88529e]
fld qword [esp + 0x38]
fmul qword [0x5f05f8]
fstp qword [0x8852a6]
fld qword [0x88529e]
fcomp qword [0x5e80d8]
fnstsw ax
test ah, 0x41
jne 0x4ec2e6
cmp word [0x885282], bx
jbe 0x4ec2e6
fld qword [0x88529e]
fchs
fstp qword [0x8852ae]
fld qword [0x8852a6]
fcomp qword [0x5e80d8]
fnstsw ax
test ah, 0x41
jne case.default.0x4ec222
cmp word [0x885284], bx
jbe case.default.0x4ec222
jmp 0x4ec3dd
fld qword [esp + 0x30]
fmul qword [0x5e7c20]
fstp qword [0x88529e]
fld qword [esp + 0x38]
fmul qword [0x5f05f8]
fstp qword [0x8852a6]
fld qword [0x88529e]
fcomp qword [0x5e80d8]
fnstsw ax
test ah, 1
je 0x4ec359
cmp word [0x885282], bx
jbe 0x4ec359
fld qword [0x88529e]
fchs
fstp qword [0x8852ae]
fld qword [0x8852a6]
fcomp qword [0x5e80d8]
fnstsw ax
test ah, 0x41
jne case.default.0x4ec222
cmp word [0x885284], bx
jbe case.default.0x4ec222
jmp 0x4ec3dd
fld qword [esp + 0x30]
fmul qword [0x5e7c20]
fstp qword [0x88529e]
fld qword [esp + 0x38]
fmul qword [0x5e7c20]
fstp qword [0x8852a6]
fld qword [0x88529e]
fcomp qword [0x5e80d8]
fnstsw ax
test ah, 1
je 0x4ec3c1
cmp word [0x885282], bx
jbe 0x4ec3c1
fld qword [0x88529e]
fchs
fstp qword [0x8852ae]
fld qword [0x8852a6]
fcomp qword [0x5e80d8]
fnstsw ax
test ah, 1
je case.default.0x4ec222
cmp word [0x885284], bx
jbe case.default.0x4ec222
fld qword [0x8852a6]
fchs
fstp qword [0x8852b6]
mov eax, 0x2710
lea ecx, [esp + 0x64]
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], eax
push ecx
mov ecx, dword [esi]
call fcn.00587760
fld qword [esp + 0x64]
fmul qword [0x5e7c20]
mov edi, dword [esp + 0xb0]
push ebx
mov ecx, edi
fstp qword [0x88523a]
fld qword [esp + 0x70]
fmul qword [0x5e7c20]
fstp qword [0x88524a]
fld qword [esp + 0x84]
fmul qword [0x5e7c20]
fstp qword [0x885232]
fld qword [esp + 0x8c]
fmul qword [0x5e7c20]
fstp qword [0x885242]
call fcn.00548150
push ebx
mov ebx, dword [esp + 0xb8]
mov ecx, ebx
call fcn.00548150
mov ecx, dword [esp + 0x14]
call fcn.00587e60
mov esi, eax
cmp esi, ebp
je 0x4ec5ee
mov ebx, 2
mov ecx, dword [esi]
call fcn.00549f80
add eax, 0xfffffffa
cmp eax, 5
ja case.0x4ec508.8
jmp dword [eax*4 + 0x4ec718]
push 0x944
call fcn.005b449a
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebp
mov dword [esp + 0xa4], ebp
je 0x4ec5be
mov edx, dword [esi]
mov ecx, eax
push edx
call fcn.0055f5c0
jmp 0x4ec5c0
push 0x974
call fcn.005b449a
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebp
mov dword [esp + 0xa4], 1
je 0x4ec5be
mov ecx, dword [esi]
push ecx
mov ecx, eax
call fcn.0053ec20
jmp 0x4ec5c0
push 0x8cc
call fcn.005b449a
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebp
mov dword [esp + 0xa4], ebx
je 0x4ec5be
mov edx, dword [esi]
mov ecx, eax
push edx
call fcn.005675e0
jmp 0x4ec5c0
push 0x15a4
call fcn.005b449a
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebp
mov dword [esp + 0xa4], 3
je 0x4ec5be
mov ecx, dword [esi]
push ecx
mov ecx, eax
call fcn.00545510
jmp 0x4ec5c0
xor eax, eax
push eax
mov ecx, edi
mov dword [esp + 0xa8], 0xffffffff
call fcn.005476f0
mov ecx, dword [esp + 0x14]
push esi
call fcn.00587e80
mov esi, eax
cmp esi, ebp
jne 0x4ec4f5
mov ebx, dword [esp + 0xb4]
mov edi, dword [esp + 0x14]
mov ecx, edi
call fcn.00587ea0
mov esi, eax
cmp esi, ebp
je 0x4ec6fb
mov ecx, dword [esi]
call fcn.00549f80
add eax, 0xfffffffa
cmp eax, 5
ja case.0x4ec616.8
jmp dword [eax*4 + 0x4ec730]
push 0x944
call fcn.005b449a
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebp
mov dword [esp + 0xa4], 4
je 0x4ec6d4
mov edx, dword [esi]
mov ecx, eax
push edx
call fcn.0055f5c0
jmp 0x4ec6d6
push 0x974
call fcn.005b449a
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebp
mov dword [esp + 0xa4], 5
je 0x4ec6d4
mov ecx, dword [esi]
push ecx
mov ecx, eax
call fcn.0053ec20
jmp 0x4ec6d6
push 0x8cc
call fcn.005b449a
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebp
mov dword [esp + 0xa4], 6
je 0x4ec6d4
mov edx, dword [esi]
mov ecx, eax
push edx
call fcn.005675e0
jmp 0x4ec6d6
push 0x15a4
call fcn.005b449a
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, ebp
mov dword [esp + 0xa4], 7
je 0x4ec6d4
mov ecx, dword [esi]
push ecx
mov ecx, eax
call fcn.00545510
jmp 0x4ec6d6
xor eax, eax
push eax
mov ecx, ebx
mov dword [esp + 0xa8], 0xffffffff
call fcn.005476f0
push esi
mov ecx, edi
call fcn.00587ec0
mov esi, eax
cmp esi, ebp
jne 0x4ec603
mov eax, 1
pop ebx
jmp 0x4ec0e5