Function at 0x413f90
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0xbc
cmp dword [ebp + 8], 0
setne al
setne byte [ebp - 0xb2]
movzx eax, al
mov dword [ebp - 0x8c], eax
mov eax, dword [0x43c7c4]
mov dword [ebp - 0x88], eax
mov eax, dword [0x440290]
shl eax, 3
and eax, 8
or eax, 4
cmp dword [ebp + 8], 0
mov dword [ebp - 0xa0], eax
je 0x4140c9
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
je 0x41401f
mov dword [esp], eax
call fcn.0041224c
test eax, eax
je 0x41501a
cmp dword [0x43c7cc], 0
je 0x41401f
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 8]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x10]
cmp dword [edi + 0x10], eax
mov eax, 0
cmove eax, dword [ebp - 0xa0]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x90], eax
and eax, 0xf000
cmp eax, 0x4000
jne 0x4140c9
mov eax, dword [ebp + 8]
cmp byte [eax + 0x78], 0
jne 0x4140a5
mov eax, dword [eax + 4]
test eax, eax
je 0x414097
mov edi, dword [ebp + 8]
mov edx, dword [eax + 0x18]
mov ecx, dword [edi + 0x1c]
cmp dword [eax + 0x1c], ecx
jne 0x414044
cmp edx, dword [edi + 0x18]
jne 0x414044
mov ecx, edi
mov edi, dword [edi + 0x10]
cmp dword [eax + 0x10], edi
jne 0x414044
mov dword [esp], ecx
mov dword [esp + 4], 0
call fcn.00412290
mov dword [esp], str._s:_loop_detected
mov dword [esp + 4], eax
mov ebx, eax
call fcn.004190e0
mov dword [esp], ebx
call sub.cygwin1.dll_free
jmp 0x41501a
cmp dword [0x43c7d0], 0
je 0x4140c9
jmp 0x414fe9
mov eax, dword [ebp + 8]
mov edx, 1
call fcn.004195c4
cmp dword [0x43c7d0], 0
je 0x41501a
mov dword [ebp - 0xa0], 0
mov eax, dword [0x43c7c0]
mov dword [ebp - 0x90], eax
test eax, eax
jne 0x4140e7
mov dword [ebp - 0xa8], 0
jmp 0x414fac
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0x94], eax
mov dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x90]
mov eax, dword [eax]
mov dword [ebp - 0x98], eax
test eax, eax
je 0x414fac
mov eax, dword [ebp - 0x98]
cmp dword [ebp - 0x8c], 0
setne bl
and ebx, dword [ebp - 0x94]
mov al, byte [eax]
cmp al, 0x2d
je 0x4141f3
mov ecx, dword [ebp - 0x98]
cmp byte [ecx + 1], 0
jne 0x415004
cmp al, 0x21
je 0x414329
cmp al, 0x28
jne 0x4141a5
cmp dword [ebp - 0xa4], 0x1000
je 0x415004
mov al, byte [ebp - 0x94]
mov edi, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0xa4]
lea eax, [edi + eax*2]
mov byte [ecx + 0x43f280], al
movzx eax, bl
mov dword [ebp - 0x94], eax
mov eax, ecx
inc eax
mov dword [ebp - 0xa4], eax
jmp 0x414f96
cmp al, 0x29
jne 0x415004
dec dword [ebp - 0xa4]
cmp dword [ebp - 0xa4], 0xffffffff
je 0x415004
mov eax, dword [ebp - 0xa4]
mov al, byte [eax + 0x43f280]
test al, 2
je 0x414f80
test al, 1
je 0x414f8c
xor eax, eax
cmp dword [ebp - 0x8c], 0
sete al
mov dword [ebp - 0x8c], eax
jmp 0x414f8c
mov eax, dword [ebp - 0x98]
mov dword [esp + 4], str.xdev
lea esi, [eax + 1]
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x41421f
mov dword [0x43c7cc], 1
jmp 0x414f52
mov dword [esp + 4], str.delete
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414298
cmp byte [ebp - 0xb2], 0
mov dword [0x43c7d0], 1
je 0x414f52
test bl, bl
je 0x414f52
mov eax, dword [ebp + 8]
xor ebx, ebx
mov eax, dword [eax + 0x20]
and eax, 0xf000
cmp eax, 0x4000
mov eax, dword [ebp + 8]
sete bl
mov dword [esp], eax
shl ebx, 3
call fcn.00412278
mov edi, dword [ebp + 8]
mov dword [esp + 8], ebx
mov dword [esp], eax
lea edx, [edi + 0x79]
mov dword [esp + 4], edx
call sub.cygwin1.dll_unlinkat
test eax, eax
sete al
movzx eax, al
jmp 0x414efe
mov dword [esp + 4], str.depth
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x4142bb
mov dword [0x43c7d0], 1
jmp 0x414f52
mov dword [esp + 4], 0x4551c8
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x4142e3
mov dword [esp + 4], 0x4551ca
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414315
cmp dword [ebp - 0x9c], 0
jne 0x415004
cmp dword [ebp - 0x8c], 0
jne 0x414306
test byte [ebp - 0x94], 1
jne 0x414f34
mov dword [ebp - 0x94], 0
jmp 0x414f52
mov dword [esp + 4], 0x4551cd
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414347
test bl, bl
je 0x414fa0
xor dword [ebp - 0x9c], 1
mov dword [ebp - 0x94], 1
jmp 0x414fa0
mov dword [esp + 4], 0x4551d1
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414383
mov dword [esp + 4], 0x4551d3
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414383
mov dword [esp + 4], str.noleaf
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414395
cmp dword [ebp - 0x9c], 0
je 0x414f52
jmp 0x415004
mov dword [esp + 4], str.print
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x4143bd
mov dword [esp + 4], esi
mov dword [esp], str.print0
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x4143e7
inc dword [ebp - 0xa8]
test bl, bl
je 0x414f52
mov eax, dword [ebp - 0x98]
cmp byte [eax + 6], 1
mov eax, dword [ebp + 8]
sbb edx, edx
and edx, 0xa
call fcn.00416d44
jmp 0x414f04
mov dword [esp + 4], str.empty
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x4144a3
test bl, bl
je 0x414f52
mov ecx, dword [ebp + 8]
mov edi, dword [ecx + 0x20]
mov edx, edi
mov dword [ebp - 0x94], edi
and edx, 0xf000
cmp edx, 0x4000
jne 0x414482
mov dword [esp], ecx
call fcn.00412278
mov ecx, dword [ebp + 8]
mov dword [esp + 8], 0
mov dword [esp], eax
lea edx, [ecx + 0x79]
mov dword [esp + 4], edx
call sub.cygwin1.dll_openat
mov dword [esp], eax
call sub.cygwin1.dll_fdopendir
mov esi, eax
test eax, eax
je 0x414f40
mov dword [esp], esi
call sub.cygwin1.dll_readdir
mov ebx, eax
test eax, eax
je 0x414474
lea eax, [eax + 0x14]
mov dword [esp], eax
call fcn.004204b0
test eax, eax
jne 0x414457
mov dword [esp], esi
call sub.cygwin1.dll_closedir
xor eax, eax
test ebx, ebx
jmp 0x414497
cmp edx, 0x8000
jne 0x414f40
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x3c]
or edx, dword [ecx + 0x38]
cmove eax, dword [ebp - 0x8c]
jmp 0x414efe
mov dword [esp + 4], str.nouser
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
mov edi, eax
test eax, eax
jne 0x4144d1
test bl, bl
je 0x414f52
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x28]
mov dword [esp], eax
call fcn.0040b740
jmp 0x4144fd
mov dword [esp + 4], str.nogroup
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
mov edi, eax
test eax, eax
jne 0x414511
test bl, bl
je 0x414f52
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x2c]
mov dword [esp], eax
call fcn.0040b698
test eax, eax
cmove edi, dword [ebp - 0x8c]
mov dword [ebp - 0x8c], edi
jmp 0x414f04
mov dword [esp + 4], str.prune
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414568
test bl, bl
je 0x414f52
mov dword [ebp - 0x94], 1
mov edi, dword [ebp + 8]
mov edx, dword [edi + 0x20]
and edx, 0xf000
cmp edx, 0x4000
jne 0x414f52
cmp dword [0x43c7d0], 0
cmovne eax, dword [ebp - 0xa0]
mov dword [ebp - 0xa0], eax
jmp 0x414f52
mov dword [esp + 4], str.name
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x4145e4
mov dword [esp + 4], str.iname
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x4145e4
mov dword [esp + 4], str.wholename
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x4145e4
mov dword [esp + 4], str.iwholename
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x4145e4
mov dword [esp + 4], str.path
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x4145e4
mov dword [esp + 4], str.ipath
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x4146f1
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x98]
mov al, byte [eax + 1]
cmp al, 0x69
mov byte [ebp - 0xac], al
sete al
cmp dword [ebp + 8], 0
movzx eax, al
mov al, byte [ecx + eax + 1]
mov byte [ebp - 0xb1], al
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 4]
mov dword [ebp - 0xb0], eax
je 0x41464a
cmp byte [ebp - 0xb1], 0x6e
jne 0x414631
mov eax, dword [ebp + 8]
lea esi, [eax + 0x79]
jmp 0x414650
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.00412290
mov esi, eax
mov edi, eax
jmp 0x414652
mov esi, dword [ebp - 0xb0]
xor edi, edi
cmp byte [ebp - 0xac], 0x69
jne 0x4146a2
cmp dword [ebp + 8], 0
je 0x414665
test bl, bl
je 0x41468b
test esi, esi
je 0x414673
mov dword [esp], esi
call fcn.0042e464
mov esi, eax
cmp dword [ebp + 8], 0
jne 0x41468b
mov dword [esp + 4], esi
mov dword [esp], 0x43c7c4
call fcn.00412440
jmp 0x4146a2
lea eax, [ebp - 0x88]
mov dword [esp], eax
call fcn.004217d4
mov eax, dword [eax + 8]
mov dword [ebp - 0xb0], eax
test bl, bl
je 0x4146e9
xor eax, eax
cmp byte [ebp - 0xb1], 0x6e
mov dword [esp + 4], esi
sete al
add eax, eax
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xb0]
mov dword [esp], eax
call sub.cygwin1.dll_fnmatch
test eax, eax
sete al
cmp byte [ebp - 0xac], 0x69
movzx eax, al
mov dword [ebp - 0x8c], eax
jne 0x4146e9
mov dword [esp], esi
call sub.cygwin1.dll_free
mov dword [esp], edi
jmp 0x41497c
mov dword [esp + 4], str.perm
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414779
test bl, bl
je 0x414f10
mov eax, dword [ebp - 0x90]
xor edx, edx
mov eax, dword [eax + 4]
mov bl, byte [eax]
mov dword [esp + 4], 0
mov ecx, ebx
and ecx, 0xfffffffd
cmp cl, 0x2d
mov byte [ebp - 0x8c], cl
sete dl
add eax, edx
mov dword [esp], eax
call fcn.0042e1c8
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x20]
mov edx, ecx
mov dword [ebp - 0xac], ecx
and edx, 0xfff
cmp byte [ebp - 0x8c], 0x2d
jne 0x414772
and edx, eax
cmp bl, 0x2f
jne 0x414772
test eax, eax
sete al
test edx, edx
setne dl
or eax, edx
jmp 0x414c05
cmp eax, edx
jmp 0x414bd8
mov dword [esp + 4], str.type
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
mov dword [ebp - 0xac], eax
test eax, eax
jne 0x414810
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 4]
test bl, bl
je 0x414f10
lea edi, [ebp - 0x78]
mov esi, 0x43a214
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
movzx eax, byte [eax]
mov dword [esp], str.bcdlpfs
mov dword [esp + 4], eax
call fcn.0042dae4
test eax, eax
jns 0x4147e6
mov eax, dword [ebp - 0x90]
mov eax, dword [eax + 4]
movzx eax, byte [eax]
mov dword [esp], str.bad__type__c
mov dword [esp + 4], eax
jmp 0x414ca9
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x20]
mov edx, ecx
mov dword [ebp - 0xb0], ecx
and edx, 0xf000
cmp edx, dword [ebp + eax*4 - 0x78]
mov eax, dword [ebp - 0xac]
cmove eax, dword [ebp - 0x8c]
jmp 0x414c08
mov eax, dword [ebp - 0x98]
movzx edi, byte [eax + 1]
mov dword [esp], 0x455252
mov dword [esp + 4], edi
call sub.cygwin1.dll_strchr
test eax, eax
je 0x414986
mov eax, dword [ebp - 0x98]
mov dword [esp + 4], str.time
lea edx, [eax + 2]
mov dword [esp], edx
mov dword [ebp - 0xac], edx
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414873
mov edx, dword [ebp - 0xac]
mov dword [esp + 4], 0x45525b
mov dword [esp], edx
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414986
test bl, bl
je 0x414f10
mov eax, dword [ebp - 0x90]
mov ebx, dword [eax + 4]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x48]
mov dword [esp + 4], edi
mov dword [esp], 0x455252
mov dword [ebp - 0x7c], eax
call fcn.0042dae4
mov dword [esp], ebx
mov eax, dword [ebp + eax*4 - 0x84]
mov dword [ebp - 0xac], eax
call sub.cygwin1.dll_strlen
mov edx, 0x3c
mov esi, eax
mov eax, dword [ebp - 0x98]
cmp byte [eax + 2], 0x6d
mov eax, 0x15180
cmovne edx, eax
test esi, esi
je 0x414952
mov al, byte [ebx + esi - 1]
mov dword [ebp - 0xb0], edx
mov byte [ebp - 0x8c], al
call sub.cygwin1.dll___locale_ctype_ptr
movzx eax, byte [ebp - 0x8c]
mov dword [esp], eax
call sub.cygwin1.dll_tolower
mov dword [esp], str.dhms
movzx eax, al
mov dword [esp + 4], eax
call fcn.0042dae4
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x8c], eax
inc eax
je 0x414952
mov dword [esp], ebx
lea edi, [ebp - 0x78]
call fcn.0043858c
mov ecx, 4
mov byte [eax + esi - 1], 0
mov ebx, eax
mov esi, 0x43a230
mov eax, dword [ebp - 0x8c]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp + eax*4 - 0x78]
mov eax, dword [0x43c7d4]
mov ecx, ebx
sub eax, dword [ebp - 0xac]
call fcn.0040cfd4
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x90]
cmp dword [eax + 4], ebx
je 0x414f10
mov dword [esp], ebx
call sub.cygwin1.dll_free
jmp 0x414f10
mov dword [esp + 4], str.size
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x4149b8
test bl, bl
je 0x414f10
mov eax, dword [ebp - 0x90]
mov edx, 0x200
mov ecx, dword [eax + 4]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x38]
jmp 0x4149e6
mov dword [esp + 4], str.links
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x4149f0
test bl, bl
je 0x414f10
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax + 4]
mov eax, dword [ebp + 8]
movzx eax, word [eax + 0x24]
xor edx, edx
call fcn.0040cfd4
jmp 0x414c08
mov dword [esp + 4], str.inum
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414a1d
test bl, bl
je 0x414f10
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax + 4]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x18]
jmp 0x4149e4
mov dword [esp + 4], str.mindepth
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414a49
mov dword [esp + 4], str.maxdepth
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414acd
test bl, bl
je 0x414f10
mov eax, dword [ebp - 0x90]
xor ebx, ebx
mov eax, dword [eax + 4]
mov dword [esp], eax
call fcn.00402d0c
mov edx, dword [ebp + 8]
mov edx, dword [edx + 4]
test edx, edx
je 0x414a71
inc ebx
jmp 0x414a67
mov edi, dword [ebp - 0x98]
cmp ebx, eax
sete cl
cmp byte [edi + 2], 0x69
jne 0x414a9e
cmp ebx, eax
setge al
movzx eax, al
mov dword [ebp - 0x8c], eax
test byte [ebp - 0x9c], 1
jne 0x414ab9
jmp 0x414f10
cmp ebx, eax
setle al
movzx eax, al
mov dword [ebp - 0x8c], eax
test byte [ebp - 0x9c], 1
jne 0x414f10
test cl, cl
cmove edx, dword [ebp - 0xa0]
mov dword [ebp - 0xa0], edx
jmp 0x414f10
mov dword [esp + 4], 0x455286
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414b0d
mov dword [esp + 4], str.group
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414b0d
mov dword [esp + 4], str.newer
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414c13
cmp dword [ebp + 8], 0
jne 0x414b9b
mov eax, dword [ebp - 0x90]
cmp dword [eax + 4], 0
je 0x414f10
mov dword [esp], 0x10
call fcn.00437aac
mov dword [esp], 0x43c7c4
mov dword [esp + 4], eax
mov ebx, eax
call fcn.00412470
mov eax, dword [ebp - 0x98]
mov dl, byte [eax + 1]
mov eax, dword [ebp - 0x90]
cmp dl, 0x75
mov eax, dword [eax + 4]
jne 0x414b66
mov dword [esp], eax
call fcn.00437a04
jmp 0x414b73
cmp dl, 0x67
jne 0x414b7b
mov dword [esp], eax
call fcn.00437718
mov dword [ebx + 8], eax
jmp 0x414f10
lea edx, [ebp - 0x78]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.00438558
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edx
jmp 0x414f10
lea eax, [ebp - 0x88]
mov dword [esp], eax
call fcn.004217d4
test bl, bl
je 0x414f10
mov ecx, dword [ebp - 0x98]
mov dl, byte [ecx + 1]
cmp dl, 0x75
jne 0x414bca
mov ecx, dword [ebp + 8]
mov eax, dword [eax + 8]
cmp dword [ecx + 0x28], eax
jmp 0x414bd8
cmp dl, 0x67
jne 0x414bdd
mov edi, dword [ebp + 8]
mov eax, dword [eax + 8]
cmp dword [edi + 0x2c], eax
sete al
jmp 0x414c05
mov ecx, dword [ebp + 8]
mov edx, dword [eax + 8]
xor ebx, ebx
mov ecx, dword [ecx + 0x48]
cmp ecx, edx
setg bl
mov dword [ebp - 0x8c], ebx
jne 0x414f10
mov edi, dword [ebp + 8]
mov eax, dword [eax + 0xc]
cmp dword [edi + 0x4c], eax
setg al
movzx eax, al
mov dword [ebp - 0x8c], eax
jmp 0x414f10
mov dword [esp + 4], str.exec
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414c67
mov dword [esp + 4], esi
mov dword [esp], 0x45529c
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414c67
mov dword [esp + 4], str.execdir
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414c67
mov dword [esp + 4], str.okdir
mov dword [esp], esi
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x415004
mov eax, dword [ebp - 0x90]
inc dword [ebp - 0xa8]
cmp dword [ebp + 8], 0
mov eax, dword [eax + 4]
mov dword [ebp - 0xac], eax
jne 0x414de8
test eax, eax
je 0x414c9e
mov dword [esp + 4], 0x4552ad
mov dword [esp], eax
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414cae
mov dword [esp + 4], esi
mov dword [esp], str._s_needs_1_arg
call fcn.0041909c
mov dword [esp], 0x30
xor edi, edi
call fcn.00439aa0
mov dword [esp], 0x43c7c4
mov dword [esp + 4], eax
mov ebx, eax
call fcn.00412470
mov eax, dword [ebp - 0x90]
mov dword [ebx + 0x18], 0xffffffff
add eax, 4
mov dword [ebp - 0x98], eax
mov dword [ebx + 0x1c], eax
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax + edi*4 + 4]
test ecx, ecx
je 0x414d72
mov dword [esp + 4], 0x4552ad
mov dword [esp], ecx
mov dword [ebp - 0xac], ecx
call sub.cygwin1.dll_strcmp
test eax, eax
je 0x414d72
mov ecx, dword [ebp - 0xac]
mov dword [esp + 4], 0x45519f
mov dword [esp], ecx
call sub.cygwin1.dll_strcmp
mov ecx, dword [ebp - 0xac]
test eax, eax
jne 0x414d5a
mov eax, dword [ebp - 0x90]
mov dword [ebx + 0x18], edi
mov eax, dword [eax + edi*4 + 8]
test eax, eax
je 0x414d6c
mov dword [esp + 4], 0x4552c0
mov dword [esp], eax
call sub.cygwin1.dll_strcmp
test eax, eax
jne 0x414d6c
inc dword [ebx + 0xc]
inc edi
jmp 0x414d72
mov dword [esp], ecx
call sub.cygwin1.dll_strlen
mov ecx, dword [ebx + 0x14]
lea eax, [ecx + eax + 5]
mov dword [ebx + 0x14], eax
inc edi
jmp 0x414ce7
mov eax, dword [ebp - 0x98]
lea eax, [eax + edi*4]
cmp dword [eax], 0
mov dword [ebp - 0x90], eax
jne 0x414da7
cmp dword [ebx + 0x18], 0xffffffff
mov eax, 0x45519c
mov edx, 0x45519f
mov dword [esp], str._exec_without__s
cmove eax, edx
mov dword [esp + 4], eax
jmp 0x414ca9
mov dword [ebx + 0x10], edi
mov dword [esp + 4], 0x64
mov dword [esp], esi
call sub.cygwin1.dll_strchr
test eax, eax
setne al
movzx eax, al
mov dword [ebx + 8], eax
cmp dword [0x43c7c8], 0xffffffff
jne 0x414f52
mov dword [esp], 0x455195
call fcn.00437bf0
mov dword [0x43c7c8], eax
jmp 0x414f52
lea eax, [ebp - 0x88]
mov dword [esp], eax
call fcn.004217d4
mov ecx, dword [ebp - 0x90]
mov esi, eax
mov eax, dword [eax + 0x10]
lea eax, [ecx + eax*4 + 4]
mov dword [ebp - 0x90], eax
test bl, bl
je 0x414f52
cmp dword [esi + 8], 0
je 0x414e29
mov eax, dword [ebp + 8]
add eax, 0x79
mov dword [esp], eax
call fcn.0043858c
jmp 0x414e3c
mov eax, dword [ebp + 8]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.00412290
mov edi, eax
mov eax, dword [ebp - 0x98]
cmp byte [eax + 1], 0x6f
jne 0x414e90
call sub.cygwin1.dll___getreent
mov ecx, dword [ebp - 0xac]
mov dword [esp + 0xc], edi
mov dword [esp + 4], str.__s___s
mov dword [esp + 8], ecx
mov eax, dword [eax + 0xc]
mov dword [esp], eax
call sub.cygwin1.dll_fprintf
mov dword [esp], 0
call fcn.00439b50
mov dword [ebp - 0x8c], eax
test eax, eax
jne 0x414e90
mov dword [esp], edi
call sub.cygwin1.dll_free
jmp 0x414f04
mov ebx, dword [esi + 0x2c]
test ebx, ebx
jne 0x414e9a
lea ebx, [esi + 0x20]
lea eax, [ebx + 8]
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.00412440
inc dword [ebx + 4]
mov ebx, dword [esi + 0xc]
test ebx, ebx
je 0x414ef4
mov dword [esi + 4], 1
mov dword [esp], edi
call sub.cygwin1.dll_strlen
mov dword [ebp - 0x94], 1
lea eax, [ebx + eax + 5]
mov dword [esi + 0xc], eax
cmp eax, dword [0x43c7d8]
jle 0x414f52
mov dword [esi + 0xc], 1
mov eax, dword [ebp + 8]
mov edx, esi
call fcn.0041b150
or byte [0x4402a8], al
jmp 0x414f52
mov eax, dword [ebp + 8]
mov edx, esi
call fcn.0041b150
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x94], 1
jmp 0x414f52
mov eax, dword [ebp - 0x90]
mov esi, dword [ebp - 0x90]
add eax, 4
cmp dword [esi + 4], 0
jne 0x414f4c
mov eax, dword [ebp - 0x98]
mov dword [esp + 4], eax
jmp 0x414ca2
mov dword [ebp - 0x8c], 1
jmp 0x414f04
mov dword [ebp - 0x8c], 0
jmp 0x414f04
mov dword [ebp - 0x90], eax
mov edi, dword [ebp - 0x94]
and dword [ebp - 0x9c], edi
je 0x414fa0
xor eax, eax
cmp dword [ebp - 0x8c], 0
sete al
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x94], eax
jmp 0x414f96
mov dword [ebp - 0x94], 0
jmp 0x414f96
mov dword [ebp - 0x94], 1
mov dword [ebp - 0x9c], 0
add dword [ebp - 0x90], 4
jmp 0x414111
cmp dword [ebp + 8], 0
je 0x414ff5
cmp dword [ebp - 0xa8], 0
jne 0x414fd1
cmp dword [ebp - 0x8c], 0
je 0x414fd1
mov eax, dword [ebp + 8]
mov edx, 0xa
call fcn.00416d44
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x8c], eax
and eax, 0xf000
cmp eax, 0x4000
jne 0x415024
mov eax, dword [ebp + 8]
xor edx, edx
call fcn.004195c4
jmp 0x415024
mov eax, dword [0x43c7c4]
mov dword [esp], eax
call fcn.004124cc
jmp 0x415024
mov eax, dword [ebp - 0x98]
mov dword [esp], str.bad_arg__s
mov dword [esp + 4], eax
jmp 0x414ca9
mov dword [ebp - 0xa0], 0
mov eax, dword [ebp - 0xa0]
add esp, 0xbc
pop ebx
pop esi
pop edi
pop ebp
ret