Function at 0x42b08c
Capabilities:
Get file attributes
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x9ac
push edi
push esi
push ebx
add esp, 0xfffffff4
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
push eax
call sub.cygwin1.dll_opendir
mov dword [ebp - 0x988], eax
add esp, 0x10
test eax, eax
jne 0x42b0d0
add esp, 0xfffffffc
push 0x42b064
push 0x427dcb
push 0x20
call fcn.00437adc
jmp 0x42b543
add esp, 0xfffffff4
mov edx, dword [ebp - 0x988]
push edx
call sub.cygwin1.dll_readdir
lea ecx, [ebp - 0x980]
add esp, 0x10
mov dword [ebp - 0x9a0], ecx
test eax, eax
je 0x42b401
lea edx, [ebp - 0x680]
lea edi, [ebp - 0x240]
mov dword [ebp - 0x994], edx
add esp, 0xfffffffc
lea ebx, [eax + 0x14]
push 0x3c
push ebx
push edi
call sub.cygwin1.dll_strncpy
mov eax, ebx
mov byte [ebp - 0x204], 0
mov ecx, dword [ebp - 0x98c]
add esp, 0x10
mov ecx, dword [eax]
test ch, cl
jne 0x42b137
test cl, cl
je 0x42b14f
test ch, ch
je 0x42b14e
test ecx, 0xff0000
je 0x42b14d
add eax, 4
test ecx, 0xff000000
jne 0x42b129
sub eax, 3
inc eax
inc eax
sub eax, ebx
cmp eax, 0x3c
ja 0x42b190
mov eax, ebx
mov edx, dword [ebp - 0x990]
mov edx, dword [eax]
test dh, dl
jne 0x42b16c
test dl, dl
je 0x42b184
test dh, dh
je 0x42b183
test edx, 0xff0000
je 0x42b182
add eax, 4
test edx, 0xff000000
jne 0x42b15e
sub eax, 3
inc eax
inc eax
sub eax, ebx
mov byte [eax + edi], 0
jmp 0x42b2ac
mov ecx, dword [ebp + 8]
add esp, 0xfffffff8
push ecx
mov eax, dword [ebp - 0x994]
push eax
call sub.cygwin1.dll_strcpy
add esp, 0xfffffff8
push 0x427d87
mov edx, dword [ebp - 0x994]
push edx
call sub.cygwin1.dll_strcat
mov eax, ebx
mov ecx, dword [ebp - 0x998]
add esp, 0x20
mov ecx, dword [eax]
test ch, cl
jne 0x42b1d0
test cl, cl
je 0x42b1e8
test ch, ch
je 0x42b1e7
test ecx, 0xff0000
je 0x42b1e6
add eax, 4
test ecx, 0xff000000
jne 0x42b1c2
sub eax, 3
inc eax
inc eax
add esp, 0xfffffffc
sub eax, ebx
push eax
push ebx
mov eax, dword [ebp - 0x994]
push eax
call sub.cygwin1.dll_strncat
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x99c]
mov edx, eax
and eax, 3
je 0x42b221
jp 0x42b21c
cmp eax, 2
je 0x42b217
cmp byte [edx], ah
je 0x42b245
inc edx
cmp byte [edx], ah
je 0x42b245
inc edx
cmp byte [edx], ah
je 0x42b245
inc edx
mov eax, dword [edx]
test ah, al
jne 0x42b22f
test al, al
je 0x42b245
test ah, ah
je 0x42b244
test eax, 0xff0000
je 0x42b243
add edx, 4
test eax, 0xff000000
jne 0x42b221
sub edx, 3
inc edx
inc edx
mov eax, ebx
sub edx, dword [ebp + 8]
mov ecx, dword [eax]
test ch, cl
jne 0x42b258
test cl, cl
je 0x42b270
test ch, ch
je 0x42b26f
test ecx, 0xff0000
je 0x42b26e
add eax, 4
test ecx, 0xff000000
jne 0x42b24a
sub eax, 3
inc eax
inc eax
sub eax, ebx
lea edx, [eax + edx + 1]
lea ebx, [ebp - 0x780]
mov eax, dword [ebp - 0x994]
mov byte [edx + eax], 0
push edi
mov edx, dword [ebp + 8]
push edx
push 0x427d81
push ebx
call sub.cygwin1.dll_sprintf
add esp, 0x20
add esp, 0xfffffff8
push ebx
mov ecx, dword [ebp - 0x994]
push ecx
call fcn.00439758
add esp, 0x10
cmp byte [ebp - 0x240], 0x2e
je 0x42b3e7
push edi
lea ebx, [ebp - 0x480]
mov eax, dword [ebp + 8]
push eax
push 0x427d81
push ebx
call sub.cygwin1.dll_sprintf
add esp, 0xfffffff8
lea eax, [ebp - 0x280]
push eax
push ebx
call sub.cygwin1.dll_stat
add esp, 0x20
lea eax, [ebp - 0x984]
add esp, 0xfffffffc
push eax
push edi
push esi
call fcn.0043524c
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x42b3b8
add esp, 0xfffffff4
lea ebx, [ebp - 0x200]
push esi
call fcn.00434608
add esp, 0xfffffffc
mov dword [ebp - 0x984], eax
push 0
push eax
push esi
call sub.cygwin1.dll_fseek
add esp, 0x20
mov byte [ebp - 0x200], 1
add esp, 0xfffffff8
mov word [ebp - 0x1fe], 0
push edi
lea eax, [ebp - 0x1f8]
push eax
call sub.cygwin1.dll_strcpy
add esp, 0xfffffff8
mov byte [ebp - 0x1bb], 0
push 0x45c024
lea eax, [ebp - 0x8e]
push eax
call sub.cygwin1.dll_strcpy
add esp, 0x20
mov word [ebp - 0x70], 0
add esp, 0xfffffff4
mov byte [ebp - 0x84], 0
push 0
call sub.cygwin1.dll_time
mov dword [ebp - 0x78], eax
mov byte [ebp - 0x6e], 0
mov eax, dword [ebp - 0x26c]
add esp, 0x10
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x278]
and eax, 0xf000
cmp eax, 0x4000
jne 0x42b3a5
or byte [ebp - 0x1fe], 2
push esi
push 1
push 0x200
push ebx
call sub.cygwin1.dll_fwrite
add esp, 0x10
jmp 0x42b3e7
mov eax, dword [ebp - 0x26c]
add esp, 0xfffffffc
mov dword [ebx + 0x18c], eax
push 0
mov eax, dword [ebp - 0x984]
push eax
push esi
call sub.cygwin1.dll_fseek
push esi
push 1
push 0x200
push ebx
call sub.cygwin1.dll_fwrite
add esp, 0x20
add esp, 0xfffffff4
mov edx, dword [ebp - 0x988]
push edx
call sub.cygwin1.dll_readdir
add esp, 0x10
test eax, eax
jne 0x42b108
add esp, 0xfffffff4
mov ecx, dword [ebp - 0x988]
push ecx
call sub.cygwin1.dll_closedir
add esp, 0xfffffff4
push esi
call sub.cygwin1.dll_rewind
add esp, 0x20
test byte [esi + 0xc], 0x20
jne 0x42b4df
lea edi, [ebp - 0x200]
lea ebx, [ebp - 0x480]
mov esi, esi
add esp, 0xfffffff4
push esi
call sub.cygwin1.dll_ftell
mov dword [ebp - 0x984], eax
push esi
push 1
push 0x200
push edi
call sub.cygwin1.dll_fread
add esp, 0x20
test byte [esi + 0xc], 0x20
jne 0x42b4d5
test byte [ebp - 0x1fe], 1
jne 0x42b4d5
cmp byte [ebp - 0x6e], 0
jne 0x42b4d5
lea eax, [ebp - 0x1f8]
push eax
mov eax, dword [ebp + 8]
push eax
push 0x427d81
push ebx
call sub.cygwin1.dll_sprintf
add esp, 0xfffffff8
lea eax, [ebp - 0x280]
push eax
push ebx
call sub.cygwin1.dll_stat
add esp, 0x20
test eax, eax
je 0x42b4d5
add esp, 0xfffffffc
push 0
mov eax, dword [ebp - 0x984]
push eax
push esi
call sub.cygwin1.dll_fseek
or byte [ebp - 0x1fe], 1
push esi
push 1
push 0x200
push edi
call sub.cygwin1.dll_fwrite
add esp, 0x20
add esp, 0xfffffffc
push 0
mov eax, dword [ebp - 0x984]
push eax
push esi
call sub.cygwin1.dll_fseek
add esp, 0x10
test byte [esi + 0xc], 0x20
je 0x42b434
add esp, 0xfffffff4
push esi
call sub.cygwin1.dll_rewind
push esi
push 1
push 0x200
mov edx, dword [ebp - 0x9a0]
push edx
call sub.cygwin1.dll_fread
add esp, 0x20
test eax, eax
jg 0x42b513
mov byte [ebp - 0x980], 1
mov word [ebp - 0x97e], 1
add esp, 0xfffffff4
push 0
call sub.cygwin1.dll_time
add esp, 0xfffffff4
mov dword [ebp - 0x97c], eax
push esi
call sub.cygwin1.dll_rewind
add esp, 0x20
push esi
push 1
push 0x200
mov ecx, dword [ebp - 0x9a0]
push ecx
call sub.cygwin1.dll_fwrite
lea esp, [ebp - 0x9b8]
pop ebx
pop esi
pop edi
mov esp, ebp
pop ebp
ret