Function at 0x40e202
Capabilities:
Get graphical window text

Disassembly:
push 0x680
mov eax, 0x46b55b
call fcn.0042a2ac
mov ebx, ecx
mov edx, dword [ebp + 0x10]
lea eax, [ebp + 8]
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x66c], edx
mov dword [ebp - 0x668], eax
mov byte [edx], 0
mov dword [ebp - 0x664], ebx
cmp ecx, 5
je 0x40e463
cmp ecx, 6
je 0x40e45c
cmp ecx, 7
je 0x40e455
cmp ecx, 0xb
je 0x40e292
lea eax, [ecx - 0xc]
cmp eax, 2
ja 0x40e473
add ebx, 8
mov byte [edx], 1
push ecx
mov ecx, ebx
call fcn.0040fa55
push eax
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
mov ecx, ebx
test eax, eax
je 0x40e27c
push 0
jmp 0x40e27e
push 1
push dword [ebp + 8]
call fcn.0040fa55
push eax
call dword [sym.imp.USER32.dll_CheckDlgButton]
jmp 0x40e473
and dword [ebp - 0x68c], 0
lea edi, [ebp - 0x688]
push 7
pop ecx
xor eax, eax
mov byte [edx], 1
rep stosd dword es:[edi], eax
lea ecx, [ebx + 8]
call fcn.0040fa55
mov dword [ebp - 0x68c], eax
xor eax, eax
push 0x208
push eax
mov word [ebp - 0x430], ax
lea eax, [ebp - 0x42e]
push eax
call fcn.0042ccd0
add esp, 0xc
mov dword [ebp - 0x680], 0x4792d0
lea eax, [ebp - 0x430]
mov dword [ebp - 0x67c], 0x58
mov dword [ebp - 0x684], eax
lea eax, [ebp - 0x68c]
push eax
call dword [sym.imp.SHELL32.dll_SHBrowseForFolderW]
mov esi, eax
mov dword [ebp - 0x660], esi
test esi, esi
je 0x40e473
push 0xa
lea ecx, [ebx + 8]
call fcn.0040fa55
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edi, eax
lea eax, [ebp - 0x640]
push 0x105
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
xor eax, eax
push 0x208
push eax
mov word [ebp - 0x220], ax
lea eax, [ebp - 0x21e]
push eax
call fcn.0042ccd0
add esp, 0xc
lea eax, [ebp - 0x220]
push eax
push esi
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
lea ecx, [ebp - 0x640]
lea eax, [ebp - 0x220]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40e396
test dx, dx
je 0x40e392
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40e396
add eax, 4
add ecx, 4
test dx, dx
jne 0x40e370
xor eax, eax
jmp 0x40e39b
sbb eax, eax
or eax, 1
test eax, eax
lea esi, [ebx + 0x1a8]
setne al
mov byte [ebx + 0x1a5], al
lea eax, [ebp - 0x220]
push eax
call fcn.0040359e
pop ecx
push eax
lea eax, [ebp - 0x220]
mov ecx, esi
push eax
call fcn.004044a7
cmp dword [ebx + 0x64], 0
jne 0x40e3e0
cmp dword [esi + 0x14], 8
jb 0x40e3d6
mov esi, dword [esi]
push esi
push edi
call dword [sym.imp.USER32.dll_SetWindowTextW]
jmp 0x40e411
lea eax, [ebx + 0x54]
mov edx, esi
push eax
lea ecx, [ebp - 0x658]
call fcn.00408771
pop ecx
cmp dword [eax + 0x14], 8
jb 0x40e3fa
mov eax, dword [eax]
push eax
push edi
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0
push 1
lea ecx, [ebp - 0x658]
call fcn.004041d3
and dword [ebp - 0x65c], 0
and dword [ebp - 4], 0
lea eax, [ebp - 0x65c]
push eax
call dword [sym.imp.SHELL32.dll_SHGetMalloc]
test eax, eax
js 0x40e43f
mov eax, dword [ebp - 0x65c]
push dword [ebp - 0x660]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x14]
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x65c]
test eax, eax
je 0x40e473
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x40e473
push str.auto
jmp 0x40e468
push str.default
jmp 0x40e468
push str.firewall
lea ecx, [ebp - 0x66c]
call fcn.0040e47d
xor eax, eax
call fcn.0042a25b
ret 0xc