Function at 0x40a0af
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1024
call fcn.00428ae0
mov eax, dword [0x4a90d4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, ecx
mov ecx, dword [ebp + 8]
movzx ebx, cx
mov edx, ebx
push edi
mov edi, dword [ebp + 0xc]
lea eax, [edx - 0x3eb]
cmp eax, 0x2d
ja case.0x409dbd.1004
movzx eax, byte [eax + 0x40a1e8]
jmp dword [eax*4 + 0x40a1a8]
push 0
push 0
push 0xc
push dword [esi + 0x4e8]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, esi
call fcn.0040b290
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00428a63
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [esi + 0x1c]
call fcn.00414fd0
jmp 0x409ddd
push 0x1000
lea eax, [ebp - 0x1004]
push 0
push eax
call fcn.0042e960
add esp, 0xc
lea eax, [ebp - 0x1004]
mov ecx, esi
push 0x800
push eax
call fcn.0040b3b0
mov edi, eax
mov ecx, esi
lea eax, [ebp - 0x1004]
test edi, edi
jne 0x409e8a
push 0x800
push eax
call fcn.00408b40
mov ecx, esi
test eax, eax
je 0x409e6c
call fcn.004099f0
mov ecx, dword [esi + 0x1c]
push 1
mov dword [ecx + 0x9ac8], eax
mov ecx, esi
call fcn.00407d40
mov ecx, dword [esi + 0x1c]
push eax
call fcn.00419d90
jmp 0x409ddd
push 0x28
push 0x1e
lea eax, [ebp - 0x1004]
push eax
call fcn.00407d40
push eax
call fcn.00413a20
add esp, 0x10
jmp 0x409ddd
push 0x2c
push 0x1e
push eax
call fcn.00407d40
push eax
call fcn.00413bb0
add esp, 0x10
movzx eax, di
mov ecx, esi
push 1
push eax
push 0x28
call fcn.00407d40
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x409ddd
xor eax, eax
mov ecx, 0x40a
cmp bx, cx
sete al
mov dword [esi + 0x25c], eax
jmp 0x409ddd
push 1
mov ecx, esi
mov dword [esi + 0x240], edx
call fcn.004095d0
jmp 0x409ddd
push 0x3f8
mov ecx, esi
call fcn.00407d40
push eax
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push 1
mov ecx, esi
mov dword [esi + 0x244], eax
call fcn.004095d0
jmp 0x409ddd
push 0x3fd
mov ecx, esi
call fcn.00407d40
push eax
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push 1
mov ecx, esi
mov dword [esi + 0x20], eax
call fcn.004095d0
jmp 0x409ddd
shr ecx, 0x10
cmp ecx, 0x200
jne 0x409ddd
push 0x1000
lea eax, [ebp - 0x1004]
push 0
push eax
call fcn.0042e960
add esp, 0xc
lea eax, [ebp - 0x1004]
push 0x800
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [esi + 0x22c]
xorps xmm0, xmm0
push 9
lea ecx, [ebp - 0x1004]
push ecx
movups xmmword [eax], xmm0
push eax
mov dword [eax + 0x10], 0
call fcn.004319df
add esp, 0xc
jmp 0x409ddd
shr ecx, 0x10
cmp ecx, 0x200
jne 0x409ddd
push 0x1000
lea eax, [ebp - 0x1004]
push 0
push eax
call fcn.0042e960
add esp, 0xc
lea eax, [ebp - 0x1004]
push 0x800
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
add esi, 0x24
push 0x208
push 0
push esi
call fcn.0042e960
lea eax, [ebp - 0x1004]
push 0x103
push eax
push esi
call fcn.004319df
add esp, 0x18
jmp 0x409ddd
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.0042e960
lea edi, [esi + 0x24]
add esp, 0xc
lea edx, [ebp - 0x20c]
mov ecx, edi
sub edx, edi
nop word [eax + eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx - 2], ax
test ax, ax
jne 0x40a020
push 0
lea eax, [ebp - 0x20c]
mov ecx, esi
push eax
call fcn.00407d40
push eax
call fcn.00413ec0
add esp, 0xc
test eax, eax
je 0x409ddd
push 0x208
push 0
push edi
call fcn.0042e960
push 0x103
lea eax, [ebp - 0x20c]
push eax
push edi
call fcn.004319df
add esp, 0x18
mov ecx, esi
push edi
push 0x3f3
call fcn.00407d40
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
jmp 0x409ddd
push 1
mov ecx, esi
call fcn.00408aa0
jmp 0x409ddd
push 0
mov ecx, esi
call fcn.00408aa0
jmp 0x409ddd
shr ecx, 0x10
cmp ecx, 0x200
jne 0x409ddd
push 0x1000
lea eax, [ebp - 0x1004]
push 0
push eax
call fcn.0042e960
add esp, 0xc
lea eax, [ebp - 0x1004]
push 0x800
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
add esi, 0x2a4
jmp 0x409fcc
xorps xmm0, xmm0
mov ecx, esi
movups xmmword [ebp - 0x1024], xmm0
movups xmmword [ebp - 0x1014], xmm0
call fcn.00407d40
mov dword [ebp - 0x1024], eax
lea eax, [ebp - 0x1024]
push eax
call dword [sym.imp.SHELL32.dll_SHBrowseForFolderW]
test eax, eax
je 0x409ddd
lea ecx, [ebp - 0x20c]
push ecx
push eax
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
test eax, eax
je 0x409ddd
lea eax, [ebp - 0x20c]
mov ecx, esi
push eax
push 0x416
call fcn.00407d40
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x208
add esi, 0x2a4
push 0
push esi
call fcn.0042e960
lea eax, [ebp - 0x20c]
push 0x103
push eax
push esi
call fcn.004319df
add esp, 0x18
jmp 0x409ddd
push edi
push ecx
mov ecx, esi
call fcn.0041b420
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00428a63
mov esp, ebp
pop ebp
ret 8