Function at 0x409de0
Capabilities:
Get graphical window text
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x3a0
nop
mov eax, 0
push eax
mov eax, 0
push eax
mov eax, 0x184
push eax
mov eax, dword [0x4105dc]
push eax
call sub.user32.dll_SendMessageA
mov eax, 0x96
push eax
mov eax, 0
push eax
lea eax, [ebp - 0x9a]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, 0x96
push eax
lea eax, [ebp - 0x9a]
push eax
mov eax, dword [0x4105d8]
push eax
call sub.user32.dll_GetWindowTextA
lea eax, [ebp - 0x9a]
push eax
call sub.msvcrt.dll_atoi
add esp, 4
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xa4], eax
mov eax, 0
push eax
mov eax, dword [ebp - 0xa0]
push eax
mov eax, dword [0x4104b0]
push eax
call sub.msvcrt.dll_fseek
add esp, 0xc
mov eax, 0
push eax
mov eax, 0
push eax
mov eax, 0xf0
push eax
mov eax, dword [0x4105d0]
push eax
call sub.user32.dll_SendMessageA
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xa8]
cmp eax, 1
jne 0x40a15c
mov eax, 1
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xac]
cmp eax, 0x10
jge 0x40a112
jmp 0x409edc
mov eax, dword [ebp - 0xac]
mov ecx, eax
inc eax
mov dword [ebp - 0xac], eax
jmp 0x409eb7
mov eax, 0
mov byte [ebp - 0x1aa], al
mov eax, 0xef
push eax
mov eax, 0
push eax
lea eax, [ebp - 0x1a9]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, 0
mov byte [ebp - 0x2fe], al
mov eax, 0x153
push eax
mov eax, 0
push eax
lea eax, [ebp - 0x2fd]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, 0
mov byte [ebp - 0x301], al
mov eax, 2
push eax
mov eax, 0
push eax
lea eax, [ebp - 0x300]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, dword [0x4104b0]
push eax
mov eax, 0xe
push eax
mov eax, 1
push eax
lea eax, [ebp - 0xba]
push eax
call sub.msvcrt.dll_fread
add esp, 0x10
mov eax, 0
mov dword [ebp - 0x308], eax
mov eax, dword [ebp - 0x308]
cmp eax, 0xe
jae 0x409fdf
jmp 0x409fa0
mov eax, dword [ebp - 0x308]
mov ecx, eax
inc eax
mov dword [ebp - 0x308], eax
jmp 0x409f7b
mov eax, dword [ebp - 0x308]
lea ecx, [ebp - 0xba]
add ecx, eax
movzx eax, byte [ecx]
push eax
mov eax, str._02X
push eax
lea eax, [ebp - 0x301]
push eax
call sub.msvcrt.dll_sprintf
add esp, 0xc
lea eax, [ebp - 0x301]
push eax
lea eax, [ebp - 0x1aa]
push eax
call sub.msvcrt.dll_strcat
add esp, 8
jmp 0x409f8f
mov eax, dword [ebp - 0xa4]
push eax
mov eax, str._i...
push eax
lea eax, [ebp - 0x2fe]
push eax
call sub.msvcrt.dll_sprintf
add esp, 0xc
lea eax, [ebp - 0x1aa]
push eax
lea eax, [ebp - 0x2fe]
push eax
call sub.msvcrt.dll_strcat
add esp, 8
mov eax, 0
mov dword [ebp - 0x30c], eax
mov eax, dword [ebp - 0x30c]
cmp eax, 0xe
jae 0x40a072
jmp 0x40a041
mov eax, dword [ebp - 0x30c]
mov ecx, eax
inc eax
mov dword [ebp - 0x30c], eax
jmp 0x40a01c
mov eax, dword [ebp - 0x30c]
lea ecx, [ebp - 0xba]
add ecx, eax
movzx eax, byte [ecx]
cmp eax, 0x21
jge 0x40a070
mov eax, dword [ebp - 0x30c]
lea ecx, [ebp - 0xba]
add ecx, eax
mov eax, 0x2e
mov byte [ecx], al
jmp 0x40a030
mov eax, 0
mov byte [ebp - 0x31b], al
mov eax, 0xe
push eax
mov eax, 0
push eax
lea eax, [ebp - 0x31a]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, 0xe
push eax
lea eax, [ebp - 0xba]
push eax
lea eax, [ebp - 0x31b]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, 0x40e647
push eax
lea eax, [ebp - 0x2fe]
push eax
call sub.msvcrt.dll_strcat
add esp, 8
lea eax, [ebp - 0x31b]
push eax
lea eax, [ebp - 0x2fe]
push eax
call sub.msvcrt.dll_strcat
add esp, 8
lea eax, [ebp - 0x2fe]
push eax
mov eax, 0
push eax
mov eax, 0x180
push eax
mov eax, dword [0x4105dc]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebp - 0xa4]
add eax, 0xe
mov dword [ebp - 0xa4], eax
jmp 0x409ecb
mov eax, dword [ebp - 0xa4]
sub eax, 0x2a
push eax
mov eax, 0x40e64a
push eax
lea eax, [ebp - 0x9a]
push eax
call sub.msvcrt.dll_sprintf
add esp, 0xc
lea eax, [ebp - 0x9a]
push eax
mov eax, dword [0x4105d8]
push eax
call sub.user32.dll_SetWindowTextA
lea eax, [ebp - 0x9a]
push eax
mov eax, dword [0x4105b0]
push eax
call sub.user32.dll_SetWindowTextA
jmp 0x40a2f4
mov eax, 1
mov dword [ebp - 0x320], eax
mov eax, dword [ebp - 0x320]
cmp eax, 0x10
jge 0x40a2b6
jmp 0x40a18c
mov eax, dword [ebp - 0x320]
mov ecx, eax
inc eax
mov dword [ebp - 0x320], eax
jmp 0x40a167
mov eax, dword [0x4104b0]
push eax
mov eax, 0x3c
push eax
mov eax, 1
push eax
lea eax, [ebp - 0x35c]
push eax
call sub.msvcrt.dll_fread
add esp, 0x10
mov eax, 0
mov dword [ebp - 0x360], eax
mov eax, dword [ebp - 0x360]
cmp eax, 0x3c
jae 0x40a20f
jmp 0x40a1de
mov eax, dword [ebp - 0x360]
mov ecx, eax
inc eax
mov dword [ebp - 0x360], eax
jmp 0x40a1b9
mov eax, dword [ebp - 0x360]
lea ecx, [ebp - 0x35c]
add ecx, eax
movzx eax, byte [ecx]
cmp eax, 0x21
jge 0x40a20d
mov eax, dword [ebp - 0x360]
lea ecx, [ebp - 0x35c]
add ecx, eax
mov eax, 0x2e
mov byte [ecx], al
jmp 0x40a1cd
mov eax, 0
mov byte [ebp - 0x39d], al
mov eax, 0x3c
push eax
mov eax, 0
push eax
lea eax, [ebp - 0x39c]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, 0x3c
push eax
lea eax, [ebp - 0x35c]
push eax
lea eax, [ebp - 0x39d]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0xa4]
push eax
mov eax, str.__i__
push eax
lea eax, [ebp - 0x9a]
push eax
call sub.msvcrt.dll_sprintf
add esp, 0xc
lea eax, [ebp - 0x39d]
push eax
lea eax, [ebp - 0x9a]
push eax
call sub.msvcrt.dll_strcat
add esp, 8
lea eax, [ebp - 0x9a]
push eax
mov eax, 0
push eax
mov eax, 0x180
push eax
mov eax, dword [0x4105dc]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebp - 0xa4]
add eax, 0x3c
mov dword [ebp - 0xa4], eax
jmp 0x40a17b
mov eax, dword [ebp - 0xa0]
add eax, 0xe
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa4]
push eax
mov eax, 0x40e653
push eax
lea eax, [ebp - 0x9a]
push eax
call sub.msvcrt.dll_sprintf
add esp, 0xc
lea eax, [ebp - 0x9a]
push eax
mov eax, dword [0x4105d8]
push eax
call sub.user32.dll_SetWindowTextA
leave
ret