Function at 0x405909
Capabilities:
Create process on windows
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x110
mov eax, dword [ebp + 0xc]
push ebx
push esi
cmp eax, 0x15
push edi
ja 0x405982
je 0x40595c
dec eax
dec eax
je 0x40593e
sub eax, 0xe
je 0x40593a
dec eax
dec eax
jne 0x405aee
push 0xfffffffffffffffd
call dword [sym.imp.USER32.dll_PostQuitMessage]
jmp 0x405955
push 0xfffffffffffffffe
jmp 0x405932
mov eax, dword [0x41a934]
test eax, eax
je 0x405955
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
and dword [0x41a934], 0
xor eax, eax
jmp 0x405b51
mov eax, dword [0x41a934]
test eax, eax
je 0x405955
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0xf
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [0x41a934], eax
jmp 0x405955
cmp eax, 0x19
je 0x405ade
cmp eax, 0x116
je 0x405aaf
cmp eax, 0x1ff
jbe 0x405aee
cmp eax, 0x201
ja 0x405aee
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
mov ebx, 0x3db
push ebx
push dword [ebp + 8]
call esi
mov edi, eax
test edi, edi
jne 0x4059d7
push 0x3dc
push dword [ebp + 8]
call esi
mov edi, eax
test edi, edi
je 0x405aee
lea eax, [ebp - 0x10]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov esi, dword [sym.imp.USER32.dll_ScreenToClient]
lea eax, [ebp - 0x10]
push eax
push dword [ebp + 8]
call esi
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
call esi
movzx eax, word [ebp + 0x14]
cmp eax, dword [ebp - 0x10]
jl 0x405aee
cmp eax, dword [ebp - 8]
jge 0x405aee
mov eax, dword [ebp + 0x14]
shr eax, 0x10
cmp eax, dword [ebp - 0xc]
jl 0x405aee
cmp eax, dword [ebp - 4]
jge 0x405aee
cmp dword [ebp + 0xc], 0x200
jne 0x405a47
mov eax, dword [0x434900]
push dword [eax + 0x67a4]
call dword [sym.imp.USER32.dll_SetCursor]
jmp 0x405aee
push edi
call dword [sym.imp.USER32.dll_GetDlgCtrlID]
sub eax, ebx
je 0x405a87
dec eax
jne 0x405aee
lea eax, [ebp - 0x110]
push 0x100
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextA]
xor eax, eax
push 5
push eax
lea ecx, [ebp - 0x110]
push eax
push ecx
push str.open
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
jmp 0x405aee
mov eax, dword [0x434900]
push 1
push 0
push dword [eax + 0x67a0]
push 0x20
push str.About...
push str.This_self_extracting_zip_file_was_created_with_the_Xceed_Absolute_Packager_v1.1.___the_software_that_makes_it_easy_to_create_high_quality_zip_files_that_can_unzip_their_own_contents._n_nDiscover_Absolute_Packager_for_yourself___get_the_free_trial_version_from_Xceed_Softwares_web_site_at:
push dword [ebp + 8]
call fcn.00407683
add esp, 0x1c
jmp 0x405aee
mov esi, dword [sym.imp.USER32.dll_EnableMenuItem]
push 1
push 0xf000
push dword [ebp + 0x10]
call esi
push 1
push 0xf030
push dword [ebp + 0x10]
call esi
push 1
push 0xf020
push dword [ebp + 0x10]
call esi
jmp 0x405955
mov eax, dword [ebp + 0x14]
shr eax, 0x10
cmp eax, 3
je 0x405b24
cmp eax, 6
je 0x405b02
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_DefWindowProcA]
jmp 0x405b51
movzx eax, word [ebp + 0x14]
push 0xfffffffffffffff4
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
cmp eax, 0x3dc
jne 0x405b24
push 0xff0000
push dword [ebp + 0x10]
call dword [sym.imp.GDI32.dll_SetTextColor]
cmp dword [0x41a934], 0
jne 0x405b41
push 0xf
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [0x41a934], eax
push 1
push dword [ebp + 0x10]
call dword [sym.imp.GDI32.dll_SetBkMode]
mov eax, dword [0x41a934]
pop edi
pop esi
pop ebx
leave
ret 0x10