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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x88
mov eax, dword [0x100521b4]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
push esi
push edi
mov dword [ebp - 0x34], eax
lea edi, [ebp - 0x14]
xor eax, eax
mov dword [ebp - 0x20], ecx
stosd dword es:[edi], eax
xor esi, esi
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebp + 0xc]
mov dword [ecx + 0x58], eax
lea ecx, [ebp - 0x14]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [ebp - 0x20]
xor edx, edx
mov dword [ebp - 0x30], edx
cmp dword [ecx + 0x50], edx
jbe 0x1001b395
mov eax, edx
mov dword [ebp - 0x3c], edx
push ebx
mov ebx, dword [ecx + 0x54]
mov edi, str.Static
add ebx, eax
mov eax, dword [ebx + 0x4c]
cmp dword [ecx + 0x38], eax
jbe 0x1001aea8
imul edx, eax, 0x14
add edx, dword [ecx + 0x3c]
mov dword [ebp - 0x38], edx
xor edx, edx
jmp 0x1001aeab
mov dword [ebp - 0x38], edx
mov eax, dword [ebx]
dec eax
mov dword [ebp - 0x18], 0x40000000
mov dword [ebp - 0x1c], edx
cmp eax, 0xe
ja case.default.0x1001aec1
jmp dword [eax*4 + 0x1001b3a9]
cmp dword [ebx + 0x5c], edx
je 0x1001b2fe
mov dword [ebp - 0x18], 0x4000000d
or dword [ebx + 0x48], 0x10
jmp case.0x1001aec1.11
mov eax, 0x40002003
mov dword [ebp - 0x18], eax
jmp 0x1001aeee
mov eax, dword [ebp - 0x18]
mov edi, str.Button
cmp dword [ebx + 0x2c], edx
jne 0x1001af13
cmp dword [ecx + 0x34], edx
je case.0x1001aec1.11
cmp dword [ebx + 0x20], edx
jl case.0x1001aec1.11
cmp dword [ebx + 0x24], edx
jl case.0x1001aec1.11
or eax, 0xb
mov dword [ebp - 0x18], eax
jmp 0x1001aed8
cmp dword [ebx + 0x30], edx
jne 0x1001af2f
cmp dword [ebx + 0x34], edx
jne 0x1001af2f
cmp dword [ebx + 0x38], edx
jne 0x1001af2f
cmp dword [ebx + 0x3c], edx
je 0x1001af33
or dword [ebx + 0x40], 0x40
mov edi, str.SysListView32
jmp case.0x1001aec1.11
mov edi, str.SysTreeView32
jmp case.0x1001aec1.11
mov edi, str.SysTabControl32
jmp case.0x1001aec1.11
mov edi, str.Edit
mov dword [ebp - 0x18], 0x40000080
mov dword [ebp - 0x1c], 0x200
jmp case.0x1001aec1.11
mov edi, 0x100414f8
mov dword [ebp - 0x18], 0x4000002b
jmp case.0x1001aec1.11
mov edi, str.SysLink
mov dword [ebp - 0x18], 0x40000004
jmp case.0x1001aec1.11
cmp dword [ebx + 0x2c], edx
jne 0x1001aed1
cmp dword [ecx + 0x34], edx
je 0x1001afa7
cmp dword [ebx + 0x20], edx
jl 0x1001afa7
cmp dword [ebx + 0x24], edx
jge 0x1001aed1
mov eax, 0x8007000d
push eax
push 0x1e1
jmp 0x1001b388
cmp dword [ebx + 0x2c], edx
jne 0x1001aed1
cmp dword [ecx + 0x34], edx
je 0x1001afd3
cmp dword [ebx + 0x20], edx
jl 0x1001afd3
cmp dword [ebx + 0x24], edx
jge 0x1001aed1
mov edi, str.msctls_progress32
jmp case.0x1001aec1.11
cmp dword [0x100536e4], 0
jne 0x1001b001
push 0x100536e4
push str.Riched20.dll
call fcn.100158cc
mov esi, eax
test esi, esi
js 0x1001b394
mov ecx, dword [ebp - 0x20]
xor edx, edx
mov edi, str.RichEdit20W
mov dword [ebp - 0x18], 0x40200844
jmp case.0x1001aec1.11
mov dword [ebp - 0x18], 0x40000010
jmp case.0x1001aec1.11
mov edi, str.ComboBox
mov dword [ebp - 0x18], 0x40000203
xor al, al
jne case.default.0x1001aec1
movzx ecx, byte [ecx]
mov eax, dword [ebp - 0x30]
movzx eax, al
shl cx, 8
or cx, ax
movzx eax, cx
mov dword [ebp - 0x24], eax
mov eax, edx
mov dword [ebp - 0x2c], eax
cmp dword [ebx + 8], edx
je 0x1001b08b
mov ecx, dword [ebp - 0x34]
add ecx, 4
mov dword [ebp - 0x28], ecx
cmp eax, dword [ebp + 0x14]
jae 0x1001b08b
push 0xffffffffffffffff
push dword [ecx]
push 0xffffffffffffffff
push dword [ebx + 8]
push edx
push edx
call dword [sym.imp.KERNEL32.dll_CompareStringW]
cmp eax, 2
mov eax, dword [ebp - 0x2c]
je 0x1001b114
mov ecx, dword [ebp - 0x28]
inc eax
add ecx, 8
mov dword [ebp - 0x2c], eax
xor edx, edx
mov dword [ebp - 0x28], ecx
cmp dword [ebx + 8], edx
jne 0x1001b055
mov eax, dword [ebp - 0x24]
mov word [ebx + 4], ax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x44]
push eax
push ebx
lea eax, [ebp - 0x14]
push eax
call fcn.10018257
mov eax, dword [ebp - 0x24]
push 0
push 0
movzx eax, ax
push eax
mov eax, dword [ebp - 0x20]
push dword [eax + 0x58]
xor eax, eax
push dword [ebp - 0x40]
cmp ax, word [ebx + 6]
push dword [ebp - 0x44]
sbb eax, eax
push dword [ebp - 0x48]
and eax, 0x8000000
push dword [ebp - 0x4c]
or eax, dword [ebx + 0x40]
or eax, dword [ebp - 0x18]
push eax
push dword [ebx + 0xc]
push edi
push dword [ebp - 0x1c]
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [ebx + 0x78], eax
test eax, eax
je 0x1001b357
cmp dword [ebx], 4
jne 0x1001b123
test byte [ebx + 0x48], 2
je 0x1001b2c5
push 0x10
push eax
call dword [sym.imp.SHLWAPI.dll_SHAutoComplete]
mov esi, eax
jmp 0x1001b2c5
mov ecx, dword [ebp - 0x34]
movzx eax, word [ecx + eax*8]
mov dword [ebp - 0x24], eax
jmp 0x1001b08e
cmp dword [ebx], 0xc
jne 0x1001b207
push dword [ebx + 0x44]
push 0
push 0x1036
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push ebx
call fcn.1001a33b
mov esi, eax
test esi, esi
js 0x1001b394
xor edx, edx
mov dword [ebp - 0x1c], edx
cmp dword [ebx + 0x6c], edx
jbe 0x1001b2c5
and dword [ebp - 0x28], edx
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0x6c]
rep stosd dword es:[edi], eax
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x6c], 0xf
mov eax, dword [ecx + edi + 0xc]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x58], edx
mov eax, dword [ecx + edi]
and dword [ebp - 0x68], 0
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x6c]
push eax
push edx
push 0x1061
push dword [ebx + 0x78]
mov dword [ebp - 0x5c], 4
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, 0xffffffff
je 0x1001b30b
cmp dword [ebx + 0x30], 0
je 0x1001b1b9
push dword [ebx + 0x30]
push 0
jmp 0x1001b1de
cmp dword [ebx + 0x34], 0
je 0x1001b1c6
push dword [ebx + 0x34]
push 1
jmp 0x1001b1de
cmp dword [ebx + 0x38], 0
je 0x1001b1d3
push dword [ebx + 0x38]
push 2
jmp 0x1001b1de
cmp dword [ebx + 0x3c], 0
je 0x1001b1ec
push dword [ebx + 0x3c]
push 3
push 0x1003
push dword [ebx + 0x78]
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0x1c]
add edi, 0x14
inc edx
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x1c], edx
cmp edx, dword [ebx + 0x6c]
jb 0x1001b15e
jmp 0x1001b2c5
cmp dword [ebx], 9
jne 0x1001b236
push 0
push 1
push 0x45b
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x4010000
push 0
push 0x445
push dword [ebx + 0x78]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x1001b2c5
cmp dword [ebx], 0xe
jne 0x1001b2c5
mov eax, dword [ebx + 0x4c]
cmp eax, 0xffffffff
je 0x1001b256
imul ecx, eax, 0x14
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
mov eax, dword [ecx + eax + 0x10]
jmp 0x1001b264
mov eax, dword [ebp - 0x20]
push 0xfffffffffffffff6
push dword [eax + 0x58]
call dword [sym.imp.USER32.dll_GetClassLongA]
push eax
push 0xfffffffffffffff6
push dword [ebx + 0x78]
call dword [sym.imp.USER32.dll_SetClassLongA]
xor edx, edx
mov dword [ebp - 0x1c], edx
cmp dword [ebx + 0x74], edx
jbe 0x1001b2c5
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x88]
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x70]
or dword [ebp - 0x74], 0xffffffff
mov dword [ebp - 0x88], 3
mov eax, dword [eax + edx*8]
mov dword [ebp - 0x7c], eax
lea eax, [ebp - 0x88]
push eax
push edx
push 0x133e
push dword [ebx + 0x78]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, 0xffffffff
je 0x1001b331
mov edx, dword [ebp - 0x1c]
inc edx
mov dword [ebp - 0x1c], edx
cmp edx, dword [ebx + 0x74]
jb 0x1001b27a
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x1001b2db
push 0
push dword [eax]
push 0x30
push dword [ebx + 0x78]
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x20]
inc edx
mov eax, dword [ebp - 0x3c]
sub eax, 0xffffff80
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x3c], eax
cmp edx, dword [ecx + 0x50]
jae 0x1001b394
xor edx, edx
jmp 0x1001ae89
mov eax, 0x8007000d
push eax
push 0x1a6
jmp 0x1001b388
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
jle 0x1001b322
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x1001b329
mov esi, 0x80004005
push esi
push 0x23c
jmp 0x1001b38a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
jle 0x1001b348
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x1001b34f
mov esi, 0x80004005
push esi
push 0x26d
jmp 0x1001b38a
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
jle 0x1001b36e
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x1001b375
mov esi, 0x80004005
push esi
push 0x220
jmp 0x1001b38a
mov eax, 0x8007000d
push eax
push 0x20a
mov esi, eax
push str.thmutil.cpp
call fcn.100098f0
pop ebx
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
xor ecx, ebp
pop esi
call fcn.1001e205
mov esp, ebp
pop ebp
ret 0x10