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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
push ebx
push esi
push edi
push 4
lea eax, [esp + 0x20]
mov dword [esp + 0x10], ecx
push 0
push eax
call fcn.1812b9b0
mov edi, dword [ebp + 0xc]
add esp, 0xc
jmp 0x180ef4fc
push ecx
mov ecx, dword [ebp + 8]
lea edx, [esp + 0x18]
call fcn.1804c574
mov esi, eax
pop ecx
test esi, esi
je 0x180ef533
mov ebx, dword [esp + 0x14]
mov ecx, ebx
shr ecx, 3
dec ecx
cmp ecx, 0xb
ja case.default.0x180ef0eb
jmp dword [ecx*4 + 0x180ef537]
cmp bl, 0xa
jne case.default.0x180ef0eb
mov ebx, dword [esp + 0xc]
or dword [ebx + 8], 1
lea edx, [ebx + 0x78]
mov eax, dword [ebx + 4]
and eax, 0xfffffffe
mov dword [esp + 0x10], edx
test byte [ebx + 4], 1
je 0x180ef118
mov eax, dword [eax]
mov ecx, dword [edx]
mov ebx, 0x181a6e78
cmp ecx, ebx
jne 0x180ef132
push ebx
push eax
mov ecx, edx
call fcn.1808028b
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
push edi
mov edx, esi
call fcn.180bff32
jmp 0x180ef4f4
cmp bl, 0x12
jne case.default.0x180ef0eb
mov ebx, dword [esp + 0xc]
or dword [ebx + 8], 2
lea edx, [ebx + 0x7c]
mov eax, dword [ebx + 4]
and eax, 0xfffffffe
mov dword [esp + 0x10], edx
test byte [ebx + 4], 1
je 0x180ef165
mov eax, dword [eax]
mov ecx, dword [edx]
mov ebx, 0x181a6e78
cmp ecx, ebx
jne 0x180ef132
push ebx
push eax
mov ecx, edx
call fcn.1808028b
mov eax, dword [esp + 0x10]
jmp 0x180ef130
cmp bl, 0x1a
jne case.default.0x180ef0eb
mov ebx, dword [esp + 0xc]
dec esi
lea ecx, [ebx + 0x10]
call fcn.180b74ba
push edi
lea edx, [esi + 1]
mov ecx, eax
call fcn.180bff32
mov esi, eax
mov dword [ebp + 8], esi
pop ecx
test esi, esi
je 0x180ef533
cmp esi, dword [edi]
jae 0x180ef4fc
cmp byte [esi], 0x1a
je 0x180ef18d
jmp 0x180ef4fc
cmp bl, 0x22
jne case.default.0x180ef0eb
mov ebx, dword [esp + 0xc]
dec esi
lea ecx, [ebx + 0x20]
call fcn.180e669b
lea ecx, [esi + 1]
push ecx
push eax
mov ecx, edi
call fcn.180f8512
mov esi, eax
mov dword [ebp + 8], esi
test esi, esi
je 0x180ef533
cmp esi, dword [edi]
jae 0x180ef4fc
cmp byte [esi], 0x22
je 0x180ef1ce
jmp 0x180ef4fc
cmp bl, 0x2a
jne case.default.0x180ef0eb
mov ebx, dword [esp + 0xc]
dec esi
lea ecx, [ebx + 0x30]
call fcn.180e66f1
lea ecx, [esi + 1]
push ecx
push eax
mov ecx, edi
call fcn.180f856c
mov esi, eax
mov dword [ebp + 8], esi
test esi, esi
je 0x180ef533
cmp esi, dword [edi]
jae 0x180ef4fc
cmp byte [esi], 0x2a
je 0x180ef20f
jmp 0x180ef4fc
cmp bl, 0x32
jne case.default.0x180ef0eb
mov ebx, dword [esp + 0xc]
dec esi
lea eax, [esi + 1]
mov ecx, ebx
mov dword [esp + 0x10], eax
call fcn.180d3854
lea ecx, [esp + 0x10]
mov dword [esp + 0x18], eax
call fcn.1804c5cb
mov esi, dword [esp + 0x10]
test esi, esi
je 0x180ef533
push eax
push esi
mov ecx, edi
call fcn.1804c483
sub dword [edi + 0x44], 1
mov dword [esp + 0x10], eax
js 0x180ef533
mov ecx, dword [esp + 0x18]
push edi
push esi
call fcn.180f3080
mov esi, eax
test esi, esi
je 0x180ef533
push dword [esp + 0x10]
inc dword [edi + 0x44]
mov ecx, edi
call fcn.1804c4ab
test al, al
je 0x180ef533
mov dword [ebp + 8], esi
cmp esi, dword [edi]
jae 0x180ef4fc
cmp byte [esi], 0x32
je 0x180ef250
jmp 0x180ef4fc
cmp bl, 0x3a
jne case.default.0x180ef0eb
mov ebx, dword [esp + 0xc]
dec esi
lea ecx, [ebx + 0x50]
call fcn.180e6747
lea ecx, [esi + 1]
push ecx
push eax
mov ecx, edi
call fcn.180f85c0
mov esi, eax
mov dword [ebp + 8], esi
test esi, esi
je 0x180ef533
cmp esi, dword [edi]
jae 0x180ef4fc
cmp byte [esi], 0x3a
je 0x180ef2dc
jmp 0x180ef4fc
cmp bl, 0x42
jne case.default.0x180ef0eb
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x10], esi
call fcn.180d38ab
lea ecx, [esp + 0x10]
mov dword [esp + 0x18], eax
call fcn.1804c5cb
mov esi, dword [esp + 0x10]
test esi, esi
je 0x180ef533
push eax
push esi
mov ecx, edi
call fcn.1804c483
sub dword [edi + 0x44], 1
mov ebx, eax
js 0x180ef533
mov ecx, dword [esp + 0x18]
push edi
push esi
call fcn.180f3edc
jmp 0x180ef3af
cmp bl, 0x4a
jne case.default.0x180ef0eb
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x10], esi
call fcn.180d38d7
lea ecx, [esp + 0x10]
mov dword [esp + 0x18], eax
call fcn.1804c5cb
mov esi, dword [esp + 0x10]
test esi, esi
je 0x180ef533
push eax
push esi
mov ecx, edi
call fcn.1804c483
sub dword [edi + 0x44], 1
mov ebx, eax
js 0x180ef533
mov ecx, dword [esp + 0x18]
push edi
push esi
call fcn.180f73e4
mov esi, eax
test esi, esi
je 0x180ef533
inc dword [edi + 0x44]
mov ecx, edi
push ebx
call fcn.1804c4ab
test al, al
je 0x180ef533
mov dword [ebp + 8], esi
jmp 0x180ef4fc
cmp bl, 0x50
jne 0x180ef41e
mov ebx, dword [esp + 0xc]
dec esi
lea ecx, [esi + 1]
lea edx, [esp + 0x20]
call fcn.1807b4c0
mov esi, eax
lea ecx, [ebx + 0x60]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x18], eax
lea eax, [esp + 0x18]
push eax
mov dword [ebp + 8], esi
call fcn.180b776e
test esi, esi
je 0x180ef533
cmp esi, dword [edi]
jae 0x180ef4fc
cmp byte [esi], 0x50
je 0x180ef3de
jmp 0x180ef4fc
cmp bl, 0x52
jne case.default.0x180ef0eb
mov eax, dword [esp + 0xc]
add eax, 0x60
push eax
push esi
mov ecx, edi
call fcn.180c03cf
jmp 0x180ef4f5
cmp bl, 0x58
jne 0x180ef483
mov ebx, dword [esp + 0xc]
dec esi
lea ecx, [esi + 1]
lea edx, [esp + 0x28]
call fcn.1807b4c0
mov esi, eax
lea ecx, [ebx + 0x6c]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x18], eax
lea eax, [esp + 0x18]
push eax
mov dword [ebp + 8], esi
call fcn.180b776e
test esi, esi
je 0x180ef533
cmp esi, dword [edi]
jae 0x180ef4fc
cmp byte [esi], 0x58
je 0x180ef446
jmp 0x180ef4fc
cmp bl, 0x5a
jne case.default.0x180ef0eb
mov eax, dword [esp + 0xc]
add eax, 0x6c
jmp 0x180ef42e
cmp bl, 0x62
jne case.default.0x180ef0eb
mov ebx, dword [esp + 0xc]
or dword [ebx + 8], 4
lea edx, [ebx + 0x80]
mov eax, dword [ebx + 4]
and eax, 0xfffffffe
mov dword [esp + 0x18], edx
test byte [ebx + 4], 1
je 0x180ef4b6
mov eax, dword [eax]
mov ecx, dword [edx]
mov ebx, 0x181a6e78
cmp ecx, ebx
jne 0x180ef132
push ebx
push eax
mov ecx, edx
call fcn.1808028b
mov eax, dword [esp + 0x18]
jmp 0x180ef130
mov eax, ebx
and al, 7
cmp al, 4
je 0x180ef52b
test ebx, ebx
je 0x180ef52b
mov edx, dword [esp + 0xc]
mov ecx, ebx
push edi
push esi
lea edx, [edx + 4]
call fcn.180bf3aa
pop ecx
pop ecx
mov dword [ebp + 8], eax
test eax, eax
je 0x180ef533
push dword [edi + 0x48]
lea eax, [ebp + 8]
mov ecx, edi
push eax
call fcn.1804c4d2
test al, al
je 0x180ef0c0
mov esi, dword [ebp + 8]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x1c]
pop edi
or dword [ecx + 8], eax
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
lea eax, [ebx - 1]
mov dword [edi + 0x3c], eax
jmp 0x180ef515
xor esi, esi
jmp 0x180ef515