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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x110
push esi
push edi
mov esi, dword [ebp + 0xc]
cmp esi, 0x10
ja 0x40c2be
je 0x40c31d
cmp esi, 2
je 0x40c2fa
jmp 0x40c50c
cmp esi, 0x12
je 0x40c32c
cmp esi, 0x15
je 0x40c33b
cmp esi, 0x19
je 0x40c36b
cmp esi, 0x116
je 0x40c3d6
cmp esi, 0x200
jb 0x40c50c
cmp esi, 0x201
jbe 0x40c404
jmp 0x40c50c
xor esi, esi
cmp dword [0x415b28], esi
je 0x40c316
mov eax, dword [0x415b28]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [0x415b28], esi
xor eax, eax
jmp 0x40c51c
push 0xfffffffffffffffe
call dword [sym.imp.USER32.dll_PostQuitMessage]
xor eax, eax
jmp 0x40c51c
push 0xfffffffffffffffd
call dword [sym.imp.USER32.dll_PostQuitMessage]
xor eax, eax
jmp 0x40c51c
cmp dword [0x415b28], 0
je 0x40c364
mov eax, dword [0x415b28]
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 [0x415b28], eax
xor eax, eax
jmp 0x40c51c
mov eax, dword [ebp + 0x14]
shr eax, 0x10
movzx eax, ax
cmp eax, 3
je 0x40c3a4
cmp eax, 6
jne 0x40c50c
movzx eax, word [ebp + 0x14]
push 0xfffffffffffffff4
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
cmp eax, 0x3dc
jne 0x40c3a4
push 0xff0000
push dword [ebp + 0x10]
call dword [sym.imp.GDI32.dll_SetTextColor]
cmp dword [0x415b28], 0
jne 0x40c3c1
push 0xf
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [0x415b28], eax
push 1
push dword [ebp + 0x10]
call dword [sym.imp.GDI32.dll_SetBkMode]
mov eax, dword [0x415b28]
jmp 0x40c51c
mov esi, dword [ebp + 0x10]
push 1
push 0xf000
mov edi, dword [sym.imp.USER32.dll_EnableMenuItem]
push esi
call edi
push 1
push 0xf030
push esi
call edi
push 1
push 0xf020
push esi
call edi
xor eax, eax
jmp 0x40c51c
push 0x3db
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edi, eax
test edi, edi
jne 0x40c430
push 0x3dc
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edi, eax
test edi, edi
je 0x40c50c
lea eax, [ebp - 0x10]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [ebp - 0x10]
push ecx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
lea ecx, [ebp - 8]
push ecx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
movzx eax, word [ebp + 0x14]
cmp dword [ebp - 0x10], eax
jg 0x40c50c
cmp dword [ebp - 8], eax
jle 0x40c50c
mov eax, dword [ebp + 0x14]
shr eax, 0x10
movzx eax, ax
cmp dword [ebp - 0xc], eax
jg 0x40c50c
cmp dword [ebp - 4], eax
jle 0x40c50c
cmp esi, 0x200
jne 0x40c4a1
mov eax, dword [0x4305f0]
push dword [eax + 0x67a4]
call dword [sym.imp.USER32.dll_SetCursor]
jmp 0x40c50c
push edi
call dword [sym.imp.USER32.dll_GetDlgCtrlID]
cmp eax, 0x3db
je 0x40c4b8
cmp eax, 0x3dc
je 0x40c4e0
jmp 0x40c50c
push 1
mov eax, dword [0x4305f0]
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.0040e2a9
add esp, 0x1c
jmp 0x40c50c
push 0x100
lea eax, [ebp - 0x110]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextA]
push 5
xor eax, eax
push eax
lea ecx, [ebp - 0x110]
push eax
push ecx
push str.open
push eax
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push esi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_DefWindowProcA]
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10