Function at 0x401a99
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48c
push esi
push edi
mov dword [ebp - 0x35c], 0
mov dword [ebp - 0x360], 0
lea edi, [ebp - 0x305]
lea esi, [0x40cfd0]
mov ecx, 0xc0
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 4], 0
lea edi, [ebp - 0x485]
lea esi, [0x40d2d1]
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
push 0x4c
push 0
lea eax, [ebp - 0x358]
push eax
call fcn.004033c0
add esp, 0xc
mov dword [ebp - 0x358], 0x4c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x354], eax
lea eax, [ebp - 0x464]
mov dword [ebp - 0x33c], eax
mov edx, dword [ebp - 0x33c]
mov byte [edx], 0
mov dword [ebp - 0x338], 0x104
mov dword [ebp - 0x34c], 0x40a569
mov dword [ebp - 0x340], 1
mov dword [ebp - 0x334], 0
mov dword [ebp - 0x330], 0
mov dword [ebp - 0x32c], 0
mov dword [ebp - 0x324], 0x1800
lea eax, [ebp - 0x358]
push eax
call dword [sym.imp.comdlg32.dll_GetOpenFileNameA]
cmp eax, 1
je 0x401b7f
jmp 0x401dec
push 0x40a566
lea eax, [ebp - 0x464]
push eax
call fcn.00403620
add esp, 8
mov dword [ebp - 0x35c], eax
cmp dword [ebp - 0x35c], 0
jne 0x401bc1
push 0
push str.error_
push str.file_open_error_
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x401dec
push 0
push 0
mov eax, dword [ebp - 0x35c]
push eax
call fcn.004036a0
add esp, 0xc
mov dword [ebp - 0x360], eax
cmp dword [ebp - 0x360], 0
je 0x401c11
push 0
push str.error_
push str.get_to_file_start_error_
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [ebp - 0x35c]
push eax
call fcn.00403840
add esp, 4
jmp 0x401dec
mov eax, dword [ebp - 0x35c]
push eax
push 0x300
push 1
lea eax, [ebp - 0x305]
push eax
call fcn.004038b0
add esp, 0x10
mov dword [ebp - 0x360], eax
cmp dword [ebp - 0x360], 0x300
je 0x401c6e
push 0
push str.error_
push str.get_to_file_start_error_
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [ebp - 0x35c]
push eax
call fcn.00403840
add esp, 4
jmp 0x401dec
push 0x40a522
call section..text
push 3
push 0x40c40c
mov eax, dword [0x40dd9c]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov byte [0x40c40e], 0
push 0xa
push 0
push 0x40c40c
call fcn.004034a0
add esp, 0xc
mov dword [ebp - 0x48c], eax
push 0x21
push 0x40c40c
mov eax, dword [0x40dd90]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
push 0x20
push 0x40c40c
lea eax, [ebp - 0x485]
push eax
call fcn.00403420
add esp, 0xc
mov dword [ebp - 0x30c], 0
mov eax, dword [ebp - 0x30c]
cmp eax, 8
jl 0x401cf9
cmp eax, 0x1f
jle 0x401cfe
cmp eax, 0x28
jge 0x401cfe
jmp 0x401d9c
mov eax, dword [ebp - 0x30c]
push eax
push 0x40a57d
push 0x40c40c
call fcn.00403460
add esp, 0xc
push 0x40c40c
mov eax, dword [0x40dd9c]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 0x10
push 0
push 0x40c40c
call fcn.004033c0
add esp, 0xc
mov dword [0x41debc], 0
mov eax, dword [ebp - 4]
movzx eax, byte [ebp + eax - 0x305]
push eax
push 0x40c40c
push str._s_02X
push 0x40c40c
call fcn.00403460
add esp, 0x10
inc dword [ebp - 4]
inc dword [0x41debc]
cmp dword [0x41debc], 0x10
jl 0x401d43
push 0x40c40c
mov eax, dword [0x40dd90]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
call fcn.0040171f
cmp dword [0x41deac], 0
je 0x401d9c
jmp 0x401daf
inc dword [ebp - 0x30c]
cmp dword [ebp - 0x30c], 0x40
jl 0x401cdc
mov eax, dword [ebp - 0x48c]
push eax
push 0x40a57d
push 0x40c40c
call fcn.00403460
add esp, 0xc
push 0x40c40c
mov eax, dword [0x40dd9c]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
lea eax, [ebp - 0x485]
push eax
mov eax, dword [0x40dd9c]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4