Function at 0x409570
Capabilities:
Terminate process

Disassembly:
push edi
push esi
push ebx
sub esp, 0x10
mov eax, dword [0x4145c8]
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
test eax, eax
je 0x409620
call eax
call sub.cygwin1.dll___getreent
mov edx, dword [esp + 0x28]
lea esi, [esp + 0x2c]
mov dword [esp + 8], esi
mov dword [esp + 4], edx
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_vfprintf
add dword [0x4145cc], 1
test ebx, ebx
jne 0x4095f0
call sub.cygwin1.dll___getreent
mov eax, dword [eax + 0xc]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.cygwin1.dll_putc
call sub.cygwin1.dll___getreent
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_fflush
test edi, edi
jne 0x409657
add esp, 0x10
pop ebx
pop esi
pop edi
ret
mov dword [esp], ebx
call sub.cygwin1.dll_strerror
mov ebx, eax
call sub.cygwin1.dll___getreent
mov dword [esp + 8], ebx
mov dword [esp + 4], str.:__s
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
jmp 0x4095b8
call sub.cygwin1.dll___getreent
mov eax, dword [eax + 8]
mov dword [esp], eax
call sub.cygwin1.dll_fflush
mov esi, dword [0x40c010]
call sub.cygwin1.dll___getreent
mov dword [esp + 4], 0x40f6b8
mov dword [esp + 8], esi
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
jmp 0x40958d
mov dword [esp], edi
call sub.cygwin1.dll_exit
nop
push ebp
push edi
push esi
push ebx
sub esp, 0x1c
mov edx, dword [0x4145d0]
mov edi, dword [esp + 0x34]
mov ebx, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
test edx, edx
je 0x409695
cmp dword [0x412284], esi
je 0x409760
mov dword [0x412280], ebx
mov dword [0x412284], esi
mov eax, dword [0x4145c8]
test eax, eax
je 0x409780
call eax
test ebx, ebx
je 0x4096c8
call sub.cygwin1.dll___getreent
mov dword [esp + 0xc], esi
mov dword [esp + 8], ebx
mov dword [esp + 4], str._s:_d:
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
call sub.cygwin1.dll___getreent
mov edx, dword [esp + 0x40]
lea ebx, [esp + 0x44]
mov dword [esp + 8], ebx
mov dword [esp + 4], edx
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_vfprintf
add dword [0x4145cc], 1
test edi, edi
jne 0x409730
call sub.cygwin1.dll___getreent
mov eax, dword [eax + 0xc]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.cygwin1.dll_putc
call sub.cygwin1.dll___getreent
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_fflush
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x4097b7
add esp, 0x1c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], edi
call sub.cygwin1.dll_strerror
mov ebx, eax
call sub.cygwin1.dll___getreent
mov dword [esp + 8], ebx
mov dword [esp + 4], str.:__s
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
jmp 0x4096f3
mov eax, dword [0x412280]
cmp ebx, eax
je 0x409727
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x409727
jmp 0x409689
call sub.cygwin1.dll___getreent
mov eax, dword [eax + 8]
mov dword [esp], eax
call sub.cygwin1.dll_fflush
mov ebp, dword [0x40c010]
call sub.cygwin1.dll___getreent
mov dword [esp + 4], 0x40f6c2
mov dword [esp + 8], ebp
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
jmp 0x4096a4
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call sub.cygwin1.dll_exit
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop