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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, ecx
cmp byte [ebx + 0x64], 0
push edi
mov dword [ebp - 0x10], esi
jne 0x10050678
xor eax, eax
jmp 0x1005099e
mov eax, dword [ebx + 0x10]
test eax, eax
mov dword [ebp - 0x14], eax
je 0x1005069e
cmp byte [eax + 0xb], 0x60
jne 0x10050692
mov eax, dword [eax + 0x10]
test eax, eax
mov dword [ebp - 0x14], eax
jne 0x10050682
test eax, eax
je 0x1005069e
mov al, byte [eax + 0xb]
mov byte [ebp + 0xb], al
jmp 0x100506a2
mov byte [ebp + 0xb], 0x62
movzx eax, byte [ebp + 0xb]
cmp eax, 6
jg 0x100506c6
je 0x100506e3
test eax, eax
jl 0x10050671
cmp eax, 1
jle 0x1005099b
cmp eax, 2
je 0x100506e3
cmp eax, 4
je 0x100506e3
jmp 0x10050671
cmp eax, 7
je 0x1005099b
cmp eax, 8
jle 0x10050671
cmp eax, 0xa
jle 0x100506e3
cmp eax, 0x60
jle 0x10050671
cmp eax, 0x62
jg 0x10050671
cmp byte [ebp + 0xb], 9
jne 0x100506fc
mov eax, dword [ebx + 0xa8]
test byte [eax + 0xe4], 8
je 0x100506fc
mov byte [ebp + 0xb], 4
mov ecx, ebx
call fcn.10029f81
test eax, eax
je 0x1005072a
push ebx
lea ecx, [ebp - 0x2c]
push dword [esi]
call fcn.1005148c
lea ecx, [ebp - 0x2c]
call fcn.100514cd
test al, al
jne 0x10050722
mov byte [ebp + 0xb], 2
lea ecx, [ebp - 0x2c]
call fcn.1005143f
mov esi, dword [ebp - 0x10]
lea eax, [ebp - 0x44]
push ebx
push eax
mov ecx, esi
call fcn.100503a7
mov esi, dword [esi + 0x20]
lea edi, [ebp - 0x34]
add esi, 0x28
mov eax, dword [ebp - 0x44]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cmp eax, dword [ebp - 0x30]
jge 0x10050671
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x34]
jle 0x10050671
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x28]
jge 0x10050671
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x2c]
jle 0x10050671
mov edi, dword [ebx + 0xac]
mov esi, dword [ebp - 0x10]
test edi, edi
je 0x1005092d
cmp byte [esi + 0x29], 0
je 0x1005092d
push ebx
lea ecx, [ebp - 0x2c]
push dword [esi]
call fcn.100513bf
push str.silent
lea ecx, [ebp - 0x2c]
call fcn.100514d6
test al, al
mov eax, dword [edi]
mov ecx, edi
je 0x100507cf
call dword [eax + 0x74]
test eax, eax
je 0x10050925
and dword [ebx + 0xac], 0
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x7c]
jmp 0x10050925
call dword [eax + 0x74]
cmp eax, 1
mov dword [ebp - 0x10], eax
je 0x100508a3
push 0x100a88c0
lea ecx, [ebp - 0x2c]
call fcn.10051440
test eax, eax
mov dword [ebp - 0xc], eax
je 0x1005086b
cmp dword [ebp - 0x10], 0
je 0x1005086b
mov eax, dword [edi + 0x48]
test eax, eax
mov dword [ebp - 0x18], eax
je 0x1005086b
mov ecx, dword [eax + 0x3c]
and dword [ebp - 8], 0
cmp byte [eax + 0x18], 0
mov dword [ebp - 4], ecx
je 0x1005081e
mov edx, dword [eax + 0x1c]
mov al, byte [eax + 0x19]
mov dword [ebp - 8], edx
mov byte [ebp - 0x20], al
test ecx, ecx
je 0x10050838
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x18]
and dword [eax + 0xac], 0
mov eax, dword [ecx]
and dword [ecx + 0x3c], 0
call dword [eax + 0x7c]
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
and dword [edi + 0x48], 0
cmp dword [ebp - 8], 0
je 0x1005086b
push dword [ebp - 0x20]
mov ecx, esi
push dword [ebp - 4]
call fcn.1005065a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xac]
test eax, eax
je 0x1005086b
mov ecx, dword [ebp - 8]
mov dword [eax + 0x1c], ecx
push dword [ebp - 0xc]
push dword [edi + 0x20]
call fcn.1004f2dc
pop ecx
test eax, eax
pop ecx
je 0x1005089a
push dword [edi + 0x20]
call fcn.1005bf2f
mov eax, dword [ebp - 0xc]
mov ecx, edi
mov dword [edi + 0x20], eax
mov eax, dword [edi]
mov dword [esp], 0x800c
call dword [eax + 0x78]
jmp 0x100508a3
push dword [ebp - 0xc]
call fcn.1005bf2f
pop ecx
push str.description
lea ecx, [ebp - 0x2c]
call fcn.10051440
push eax
mov dword [ebp - 0x20], eax
push dword [edi + 0x24]
call fcn.1004f2dc
pop ecx
test eax, eax
pop ecx
je 0x100508de
push dword [edi + 0x24]
call fcn.1005bf2f
mov eax, dword [ebp - 0x20]
mov ecx, edi
mov dword [edi + 0x24], eax
mov eax, dword [edi]
mov dword [esp], 0x800d
call dword [eax + 0x78]
cmp dword [ebp - 0x10], 1
je 0x10050925
cmp dword [ebp - 0x10], 0
je 0x10050925
push str.shortcut
lea ecx, [ebp - 0x2c]
call fcn.10051440
push eax
mov dword [ebp - 0x20], eax
push dword [edi + 0x44]
call fcn.1004f2dc
pop ecx
test eax, eax
pop ecx
je 0x10050925
push dword [edi + 0x44]
call fcn.1005bf2f
mov eax, dword [ebp - 0x20]
mov ecx, edi
mov dword [edi + 0x44], eax
mov eax, dword [edi]
mov dword [esp], 0x8012
call dword [eax + 0x78]
lea ecx, [ebp - 0x2c]
call fcn.1005143f
mov al, byte [ebp + 0xb]
cmp al, 2
je 0x10050e98
cmp al, 4
je 0x10050d42
cmp al, 6
je 0x10050adb
cmp al, 9
je 0x100509db
cmp al, 0xa
je 0x10050969
cmp al, 0x60
jbe 0x10050671
cmp al, 0x62
jbe 0x10050adb
jmp 0x10050671
mov edi, dword [ebx + 0xac]
test edi, edi
jne 0x10050e7e
push ebx
lea ecx, [ebp - 0x2c]
push dword [esi]
call fcn.100513bf
push str.silent
lea ecx, [ebp - 0x2c]
call fcn.100514d6
test al, al
je 0x100509a5
lea ecx, [ebp - 0x2c]
call fcn.1005143f
push 1
pop eax
pop edi
pop esi
pop ebx
leave
ret 8
push 0x50
call fcn.1005bf24
test eax, eax
pop ecx
je 0x100509c3
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
push dword [ebp + 0xc]
push ebx
push esi
call fcn.10053303
jmp 0x100509c5
xor eax, eax
and byte [eax + 0x40], 0
mov byte [eax + 0x4c], 1
mov dword [ebx + 0xac], eax
lea ecx, [ebp - 0x2c]
jmp 0x10050c33
mov edi, dword [ebx + 0xac]
test edi, edi
jne 0x10050a79
push ebx
lea ecx, [ebp - 0x2c]
push dword [esi]
call fcn.100513bf
push str.silent
lea ecx, [ebp - 0x2c]
call fcn.100514d6
test al, al
je 0x10050a0a
lea ecx, [ebp - 0x2c]
jmp 0x10050996
lea eax, [ebp + 0xb]
mov ecx, esi
push eax
lea eax, [ebp - 0x20]
push eax
push ebx
call fcn.1004fd13
push 0x54
call fcn.1005bf24
test eax, eax
pop ecx
je 0x10050a3a
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
push dword [ebp + 0xc]
push ebx
push esi
call fcn.10052fd6
mov esi, eax
jmp 0x10050a3c
xor esi, esi
mov eax, dword [ebp - 0x20]
push 1
push str.tabEnabled
mov ecx, ebx
mov dword [esi + 0x4c], eax
call fcn.10029ed9
test eax, eax
setne al
mov byte [esi + 0x40], al
mov eax, dword [ebx + 0xa8]
test byte [eax + 0xe4], 0x10
je 0x10050a6b
mov byte [esi + 0x50], 1
mov dword [ebx + 0xac], esi
lea ecx, [ebp - 0x2c]
jmp 0x10050c33
cmp dword [esi + 0x24], edi
je 0x10050e7e
lea eax, [ebp + 0xf]
mov ecx, esi
push eax
lea eax, [ebp + 8]
push eax
push ebx
call fcn.1004fd13
push dword [ebp + 8]
push dword [edi + 0x4c]
call fcn.1004f2dc
pop ecx
test eax, eax
pop ecx
je 0x10050acd
push dword [edi + 0x4c]
call fcn.1005bf2f
mov eax, dword [ebp + 8]
pop ecx
mov dword [edi + 0x4c], eax
cmp byte [esi + 0x1c], 0
jne 0x10050e7e
mov eax, dword [edi]
push 0x800e
mov ecx, edi
call dword [eax + 0x78]
jmp 0x10050e7e
push dword [ebp + 8]
call fcn.1005bf2f
pop ecx
jmp 0x10050e7e
push ebx
lea ecx, [ebp - 0x24]
push dword [esi]
call fcn.100513bf
push str.silent
lea ecx, [ebp - 0x24]
call fcn.100514d6
test al, al
je 0x10050b09
push 1
pop esi
lea ecx, [ebp - 0x24]
call fcn.1005143f
mov eax, esi
jmp 0x1005099e
push str.noAutoLabeling
lea ecx, [ebp - 0x24]
call fcn.100514d6
test al, al
je 0x10050b20
and byte [ebp + 0xc], 0
jmp 0x10050b30
cmp byte [ebp + 0xb], 0x62
je 0x10050b2c
cmp byte [ebp + 0xb], 0x61
jne 0x10050b30
mov byte [ebp + 0xc], 1
push ebx
lea ecx, [ebp - 0x1c]
push dword [esi]
call fcn.1005148c
push str.stub
lea ecx, [ebp - 0x1c]
call fcn.100514d6
test al, al
je 0x10050bc2
mov dword [ebp - 4], 1
cmp byte [ebp + 0xb], 0x62
je 0x10050d32
cmp dword [ebp - 4], 2
jne 0x10050b72
push ebx
mov ecx, esi
call fcn.100502c3
mov dword [ebp - 4], 1
mov eax, dword [ebx + 0xac]
xor edi, edi
test eax, eax
je 0x10050b80
mov edi, eax
lea ecx, [ebp - 0x24]
call fcn.100513fc
test al, al
jne 0x10050cd5
cmp dword [ebp - 4], 1
je 0x10050cd5
cmp dword [ebx + 0xac], 0
je 0x10050d32
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x7c]
and dword [ebx + 0xac], 0
push ebx
mov ecx, esi
call fcn.10050376
jmp 0x10050d32
cmp dword [ebx + 0xac], 0
jne 0x10050c3f
lea ecx, [ebp - 0x1c]
call fcn.100514cd
test al, al
je 0x10050c3f
push ebx
lea ecx, [ebp - 0x2c]
push dword [esi]
call fcn.100513bf
push 0x54
call fcn.1005bf24
test eax, eax
pop ecx
je 0x10050c02
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
push dword [ebp + 0xc]
push ebx
push esi
call fcn.1005344f
mov esi, eax
jmp 0x10050c04
xor esi, esi
push 0
push str.tabEnabled
mov ecx, ebx
call fcn.10029ed9
test eax, eax
setne al
mov byte [esi + 0x40], al
lea ecx, [ebp - 0x2c]
mov dword [ebx + 0xac], esi
call fcn.1005143f
lea ecx, [ebp - 0x1c]
call fcn.1005143f
lea ecx, [ebp - 0x24]
call fcn.1005143f
push 3
jmp 0x1005099d
mov ecx, dword [ebx + 0xac]
test ecx, ecx
je 0x10050c7d
mov eax, dword [ecx]
call dword [eax + 0x74]
cmp eax, 5
jne 0x10050c7d
mov ebx, dword [ebx + 0xac]
mov eax, dword [esi + 0x18]
push ebx
mov ecx, esi
mov dword [ebx + 0x1c], eax
inc dword [esi + 0x18]
mov byte [ebx + 0x18], 1
call fcn.10050423
lea ecx, [ebp - 0x1c]
call fcn.1005143f
push 3
jmp 0x10050af9
push str.forceSimple
lea ecx, [ebp - 0x24]
call fcn.100514d6
test al, al
jne 0x10050b4c
push 1
mov ecx, ebx
pop edi
push edi
push str.tabChildren
call fcn.10029ed9
test eax, eax
jne 0x10050cae
mov dword [ebp - 4], edi
jmp 0x10050b53
and dword [ebp - 4], 0
mov edi, dword [ebx + 0xc]
test edi, edi
je 0x10050b53
push dword [ebp + 0xc]
mov ecx, esi
push edi
call fcn.1005065a
cmp eax, dword [ebp - 4]
jle 0x10050cd0
mov dword [ebp - 4], eax
mov edi, dword [edi + 8]
jmp 0x10050cb5
cmp dword [ebx + 0xac], 0
jne 0x10050d0a
push 0x50
call fcn.1005bf24
test eax, eax
pop ecx
je 0x10050cfc
lea ecx, [ebp - 0x24]
push ecx
mov ecx, eax
push dword [ebp + 0xc]
push ebx
push esi
call fcn.10053303
jmp 0x10050cfe
xor eax, eax
and byte [eax + 0x40], 0
mov dword [ebx + 0xac], eax
jmp 0x10050d1f
push edi
mov ecx, esi
call fcn.10050423
mov eax, dword [esi + 0x18]
mov dword [edi + 0x1c], eax
inc dword [esi + 0x18]
mov byte [edi + 0x18], 1
lea ecx, [ebp - 0x24]
call fcn.100513fc
neg al
sbb eax, eax
neg eax
inc eax
inc eax
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x1c]
call fcn.1005143f
mov esi, dword [ebp - 4]
jmp 0x10050afa
mov edi, dword [ebx + 0xac]
test edi, edi
jne 0x10050e06
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0xb], 9
jne 0x10050da0
push 8
call fcn.1005bf24
test eax, eax
pop ecx
je 0x10050d73
push ebx
mov ecx, eax
push dword [esi]
call fcn.100513bf
mov edi, eax
jmp 0x10050d75
xor edi, edi
push str.silent
mov ecx, edi
call fcn.100514d6
test al, al
je 0x10050da0
test edi, edi
je 0x1005099b
mov ecx, edi
call fcn.1005143f
push edi
call fcn.1005bf2f
pop ecx
jmp 0x1005099b
lea eax, [ebp + 0xb]
mov ecx, esi
push eax
lea eax, [ebp - 0x20]
push eax
push ebx
call fcn.1004fd13
test al, al
je 0x10050671
push 0x58
call fcn.1005bf24
test eax, eax
pop ecx
je 0x10050dd3
push edi
mov ecx, eax
push dword [ebp + 0xc]
push ebx
push esi
call fcn.10052e70
jmp 0x10050dd5
xor eax, eax
mov ecx, dword [ebp - 0x20]
mov dword [eax + 0x20], ecx
mov cl, byte [ebp + 0xb]
and byte [eax + 0x40], 0
mov byte [eax + 0x4c], cl
test edi, edi
mov dword [ebx + 0xac], eax
je 0x10050c38
mov ecx, edi
call fcn.1005143f
push edi
call fcn.1005bf2f
pop ecx
jmp 0x10050c38
mov eax, dword [ebp - 0x14]
cmp byte [eax + 0xb], 9
je 0x10050e17
cmp eax, dword [edi + 0x50]
je 0x10050e78
mov dword [edi + 0x50], eax
lea eax, [ebp + 0xf]
mov ecx, esi
push eax
lea eax, [ebp + 8]
push eax
push ebx
call fcn.1004fd13
cmp dword [ebp + 8], 0
je 0x10050671
push dword [ebp + 8]
push dword [edi + 0x20]
call fcn.1004f2dc
pop ecx
test eax, eax
pop ecx
je 0x10050e6f
push dword [edi + 0x20]
call fcn.1005bf2f
mov eax, dword [ebp + 8]
pop ecx
mov ecx, dword [edi + 0x54]
mov dword [edi + 0x20], eax
test ecx, ecx
je 0x10050e64
mov eax, dword [ecx]
push 0x800c
call dword [eax + 0x78]
jmp 0x10050e78
mov eax, dword [edi]
push 0x800c
mov ecx, edi
jmp 0x10050e5f
push dword [ebp + 8]
call fcn.1005bf2f
pop ecx
cmp dword [edi + 0x54], 0
jne 0x10050e86
push edi
mov ecx, esi
call fcn.10050423
mov eax, dword [esi + 0x18]
mov dword [edi + 0x1c], eax
inc dword [esi + 0x18]
mov byte [edi + 0x18], 1
jmp 0x10050c38
mov edi, dword [ebx + 0xac]
test edi, edi
jne 0x10050f0e
push ebx
lea ecx, [ebp - 0x2c]
push dword [esi]
call fcn.100513bf
push str.silent
lea ecx, [ebp - 0x2c]
call fcn.100514d6
test al, al
je 0x10050ec6
lea ecx, [ebp - 0x2c]
jmp 0x10050996
push 0x50
call fcn.1005bf24
test eax, eax
pop ecx
je 0x10050ee6
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
push dword [ebp + 0xc]
push ebx
push esi
call fcn.1005314a
mov edi, eax
jmp 0x10050ee8
xor edi, edi
push 1
push str.tabEnabled
mov ecx, ebx
call fcn.10029ed9
test eax, eax
setne al
mov byte [edi + 0x40], al
lea ecx, [ebp - 0x2c]
mov dword [ebx + 0xac], edi
call fcn.1005143f
jmp 0x10050f23
push edi
mov ecx, esi
call fcn.10050423
mov eax, dword [esi + 0x18]
mov dword [edi + 0x1c], eax
inc dword [esi + 0x18]
mov byte [edi + 0x18], 1
cmp byte [ebp + 0xc], 0
je 0x10050c38
mov eax, dword [ebx + 0xac]
test eax, eax
je 0x10050c38
cmp dword [eax + 0x20], 0
jne 0x10050c38
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x10050c38
mov eax, dword [ebx + 0x10]
mov al, byte [eax + 0xb]
cmp al, 9
jne 0x10050f6b
mov eax, dword [ebx + 0xa8]
test byte [eax + 0xe4], 8
je 0x10050f82
jmp 0x10050f6f
cmp al, 4
jne 0x10050f82
push 1
push ebx
mov ecx, esi
call fcn.1005065a
cmp eax, 3
je 0x10050c38
mov ebx, dword [ebx + 8]
jmp 0x10050f48