Function at 0x40ba60
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x2c
mov eax, dword [0x438bf0]
mov ebx, dword [ebp + 8]
mov edi, dword [ebp + 0x10]
test eax, eax
jne 0x40bfad
mov dword [esp], ebx
mov esi, 0x429b88
mov dword [esp + 4], esi
call sub.cygwin1.dll__fopen64
test eax, eax
mov esi, eax
je 0x40bfb4
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x28]
test eax, eax
jne 0x40bda8
mov dword [esp], 0x429b8b
call fcn.00422880
mov dword [ebp - 0x10], eax
mov dword [esp + 0xc], esi
mov eax, 0x33
mov ebx, 1
mov dword [esp + 8], eax
mov eax, 1
mov dword [esp + 4], eax
mov dword [esp], str.__DOCTYPE_HTML_PUBLIC_____IETF__DTD_HTML_2.0__EN___n
call sub.cygwin1.dll_fwrite
mov dword [esp + 0xc], esi
mov eax, 0x15
mov dword [esp + 8], eax
mov eax, 1
mov dword [esp + 4], eax
mov dword [esp], str._html__n_head__n_title_
call sub.cygwin1.dll_fwrite
mov dword [esp], str.Index_of___s_on__s:_d
call sub.cygintl_8.dll_libintl_gettext
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [esp + 0x10], edx
mov edx, dword [ecx + 8]
mov dword [esp + 0xc], edx
mov edx, dword [ecx + 0x20]
mov dword [esp + 4], eax
mov dword [esp], esi
mov dword [esp + 8], edx
call sub.cygwin1.dll_fprintf
mov dword [esp + 0xc], esi
mov eax, 0x1c
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], str.__title__n__head__n_body__n_h1_
call sub.cygwin1.dll_fwrite
mov dword [esp], str.Index_of___s_on__s:_d
call sub.cygintl_8.dll_libintl_gettext
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [esp + 0x10], edx
mov edx, dword [ecx + 8]
mov dword [esp + 0xc], edx
mov edx, dword [ecx + 0x20]
mov dword [esp + 4], eax
mov dword [esp], esi
mov dword [esp + 8], edx
call sub.cygwin1.dll_fprintf
mov dword [esp + 0xc], esi
mov ecx, 0x11
mov edx, 1
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], str.__h1__n_hr__n_pre__n
call sub.cygwin1.dll_fwrite
jmp 0x40bcf1
mov eax, dword [ebx + 4]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 8]
mov dword [esp], esi
mov dword [esp + 8], eax
mov eax, str._02d:_02d
mov dword [esp + 4], eax
call sub.cygwin1.dll_fprintf
mov eax, dword [edi]
cmp eax, 1
je 0x40bd9c
jb 0x40bee2
cmp eax, 2
je 0x40bf5b
mov dword [esp], str.Not_sure
call sub.cygintl_8.dll_libintl_gettext
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.cygwin1.dll_fprintf
mov eax, dword [edi + 4]
mov dword [esp], eax
call fcn.00402310
mov dword [ebp - 0x14], eax
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x10]
mov eax, dword [edx + 0xc]
mov dword [esp + 0x10], eax
mov eax, dword [edx + 8]
mov dword [esp + 8], ecx
mov ecx, str._a_href_ftp:___s_s:_d
mov dword [esp + 0xc], eax
mov dword [esp + 4], ecx
mov dword [esp], esi
call sub.cygwin1.dll_fprintf
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x20]
cmp byte [eax], 0x2f
je 0x40bc4a
mov dword [esp + 4], esi
mov dword [esp], 0x2f
call sub.cygwin1.dll_putc
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x20]
mov dword [esp + 4], esi
mov dword [esp], eax
call sub.cygwin1.dll_fputs
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x20]
cmp byte [eax], 0
jne 0x40be40
mov dword [esp + 4], esi
mov ecx, dword [ebp - 0x14]
mov dword [esp], ecx
call sub.cygwin1.dll_fputs
cmp dword [edi], 1
je 0x40be70
mov dword [esp], esi
mov eax, dword [ebp - 0x14]
mov edx, str.___s
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call sub.cygwin1.dll_fprintf
cmp dword [edi], 1
je 0x40beb0
mov dword [esp + 0xc], esi
mov eax, 5
mov dword [esp + 8], eax
mov eax, 1
mov dword [esp + 4], eax
mov dword [esp], str.__a_
call sub.cygwin1.dll_fwrite
mov eax, dword [edi]
test eax, eax
je 0x40be04
cmp eax, 2
je 0x40bef0
mov dword [esp + 4], esi
mov dword [esp], 0xa
call sub.cygwin1.dll_putc
mov edx, dword [ebp - 0x14]
mov dword [esp], edx
call fcn.004228c0
mov edi, dword [edi + 0x20]
test edi, edi
je 0x40bf10
mov dword [esp + 0xc], esi
mov eax, 2
mov dword [esp + 8], eax
mov eax, 1
mov dword [esp + 4], eax
mov dword [esp], 0x429c56
call sub.cygwin1.dll_fwrite
cmp dword [edi + 0x10], 0xffffffff
je 0x40bec5
lea eax, [edi + 0x10]
mov dword [esp], eax
call sub.cygwin1.dll_localtime
mov ebx, eax
mov eax, dword [eax + 0xc]
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0x10]
mov eax, dword [eax*4 + 0x4240d0]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x14]
mov dword [esp], esi
add eax, 0x76c
mov dword [esp + 8], eax
mov eax, str._d__s__02d
mov dword [esp + 4], eax
call sub.cygwin1.dll_fprintf
mov eax, dword [ebx + 8]
test eax, eax
jne 0x40bba1
mov dword [esp + 0xc], esi
mov eax, 7
mov ebx, 1
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], str.
call sub.cygwin1.dll_fwrite
mov eax, dword [edi]
cmp eax, 1
jne 0x40bbcb
mov dword [esp], str.Directory
jmp 0x40bbe1
mov dword [esp], eax
call fcn.0041e270
mov dword [ebp - 0x18], 0
mov ecx, dword [ebp + 0xc]
mov ebx, eax
mov eax, dword [ecx + 0x2c]
test eax, eax
jne 0x40bf71
mov dword [esp], ebx
xor ecx, ecx
mov edx, 0x429c7a
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
call fcn.00420190
mov dword [ebp - 0x10], eax
mov dword [esp], ebx
call fcn.004228c0
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x40bab4
mov eax, dword [ebp - 0x18]
mov dword [esp], eax
call fcn.004228c0
jmp 0x40bab4
mov edx, dword [edi + 0xc]
mov eax, dword [edi + 8]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00421d10
mov dword [esp], str.___s_bytes_
mov ebx, eax
call sub.cygintl_8.dll_libintl_gettext
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.cygwin1.dll_fprintf
jmp 0x40bcd3
mov dword [esp + 4], esi
mov dword [esp], 0x2f
call sub.cygwin1.dll_putc
mov dword [esp + 4], esi
mov ecx, dword [ebp - 0x14]
mov dword [esp], ecx
call sub.cygwin1.dll_fputs
cmp dword [edi], 1
jne 0x40bc7d
nop
lea esi, [esi]
mov dword [esp + 4], esi
mov dword [esp], 0x2f
call sub.cygwin1.dll_putc
mov dword [esp], esi
mov eax, dword [ebp - 0x14]
mov edx, str.___s
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call sub.cygwin1.dll_fprintf
cmp dword [edi], 1
jne 0x40bc9e
jmp 0x40beb0
mov dword [esp + 4], esi
mov dword [esp], 0x2f
call sub.cygwin1.dll_putc
jmp 0x40bc9e
mov dword [esp], str.time_unknown
call sub.cygintl_8.dll_libintl_gettext
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.cygwin1.dll_fprintf
jmp 0x40bbc0
mov dword [esp], str.File
jmp 0x40bbe1
mov eax, dword [edi + 0x18]
test eax, eax
jne 0x40befc
mov eax, str._nil_
mov dword [esp + 8], eax
mov eax, str.____s
jmp 0x40be28
mov dword [esp + 0xc], esi
mov eax, 0x17
mov dword [esp + 8], eax
mov eax, 1
mov dword [esp + 4], eax
mov dword [esp], str.__pre__n__body__n__html__n
call sub.cygwin1.dll_fwrite
mov ecx, dword [ebp - 0x10]
mov dword [esp], ecx
call fcn.004228c0
mov eax, dword [0x438bf0]
test eax, eax
jne 0x40bf67
mov dword [esp], esi
call sub.cygwin1.dll_fclose
mov eax, 0xa
add esp, 0x2c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], str.Link
jmp 0x40bbe1
mov dword [esp], esi
call sub.cygwin1.dll_fflush
jmp 0x40bf4e
mov dword [esp], eax
call fcn.0041e270
mov dword [ebp - 0x18], eax
test eax, eax
je 0x40bdc7
mov dword [esp + 8], eax
xor ecx, ecx
mov edx, 0x429c7a
mov dword [esp + 0x10], ecx
mov eax, 0x4298f4
mov dword [esp + 0xc], edx
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00420190
jmp 0x40bdde
mov esi, eax
jmp 0x40ba97
call sub.cygwin1.dll___errno
mov eax, dword [eax]
mov dword [esp], eax
call sub.cygwin1.dll_strerror
mov dword [esp + 8], ebx
mov ebx, 0x42985c
mov dword [esp + 0xc], eax
mov dword [esp + 4], ebx
mov dword [esp], 1
call fcn.00417550
mov eax, 0x18
jmp 0x40bf53