Function at 0x481a50
Capabilities:
Read file on windows

Disassembly:
push ebp
push edi
push esi
mov esi, ecx
push ebx
mov ebx, eax
sub esp, 0x20c
mov dword [esp + 0x34], eax
movzx eax, byte [ecx]
mov dword [esp + 0x30], edx
mov edi, dword [esp + 0x220]
test al, al
je 0x481aaf
test ebx, ebx
mov ecx, str.logged_off
mov edx, str.logged_on
mov ebx, dword [esp + 0x224]
cmove edx, ecx
mov dword [esp + 0x38], edx
nop
lea ebp, [esi + 1]
cmp al, 0x5c
je 0x481ae0
movsx ecx, al
cmp ecx, ebx
je 0x481ab9
cmp al, 0x25
je 0x481af8
test edi, edi
jne 0x481ad0
mov esi, ebp
movzx eax, byte [esi]
test al, al
jne 0x481a90
mov ebp, esi
test edi, edi
jne 0x481be0
add esp, 0x20c
mov eax, ebp
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], ecx
call fcn.004e60a8
jmp 0x481aa6
movsx eax, byte [esi + 1]
test al, al
je 0x481ef0
test edi, edi
jne 0x481b28
add esi, 2
jmp 0x481aa8
movzx eax, byte [esi + 1]
cmp al, 0x28
je 0x481b88
lea edx, [esi + 2]
mov dword [esp + 0x2c], edx
test edi, edi
je 0x481b78
lea ecx, [eax - 0x25]
cmp cl, 0x52
ja case.0x481b1e.1
movzx ecx, cl
jmp dword [ecx*4 + 0x4fa664]
mov dword [esp], eax
call fcn.004e60a8
jmp 0x481af0
mov eax, dword [esp + 0x30]
lea ebp, [eax + 0x30]
lea esi, [eax + 0x130]
jmp 0x481b69
cmp al, 0x2e
jne 0x481b5a
movzx edx, byte [ebp + 1]
test byte [edx + edx + sym.zsh.exe_typtab], 1
je 0x481b78
mov dword [esp], eax
add ebp, 1
call fcn.004e60a8
cmp ebp, esi
je 0x481b78
movsx eax, byte [ebp]
test al, al
jne 0x481b48
lea esi, [esi]
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
movzx eax, byte [esi + 2]
sub eax, 0x4d
cmp al, 0x21
ja case.0x481b96.1
movzx eax, al
jmp dword [eax*4 + 0x4fa7b0]
xor eax, eax
xor ebp, ebp
movsx edx, byte [esi + 3]
lea ecx, [esi + 4]
mov esi, dword [esp + 0x34]
mov dword [esp], eax
mov dword [esp + 4], edx
mov edx, dword [esp + 0x30]
mov eax, esi
call fcn.00481a50
mov dword [esp], ebp
mov edx, dword [esp + 0x30]
mov dword [esp + 4], 0x29
mov ecx, eax
mov eax, esi
call fcn.00481a50
mov esi, eax
jmp 0x481aa8
mov dword [esp], 0xa
call fcn.004e60a8
add esp, 0x20c
mov eax, ebp
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 0x25
call fcn.004e60a8
movsx eax, byte [esi + 1]
mov dword [esp], eax
call fcn.004e60a8
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
cmp al, 0x57
je 0x482077
jg 0x481ced
cmp al, 0x44
je 0x48201a
cmp al, 0x54
jne 0x481f04
mov ebp, str._K:_M
mov eax, dword [esp + 0x34]
test eax, eax
je 0x481f13
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x134]
mov dword [esp + 0x48], eax
lea eax, [esp + 0x48]
lea esi, [esp + 0x4c]
mov dword [esp], eax
call sub.cygwin1.dll_localtime
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebp
mov dword [esp + 4], 0x28
mov dword [esp], esi
call sym.zsh.exe_ztrftime
test eax, eax
jle 0x481ca6
mov dword [esp + 8], 5
mov dword [esp + 4], eax
mov dword [esp], esi
call sym.zsh.exe_metafy
cmp byte [esp + 0x4c], 0x20
lea eax, [esp + 0x4d]
mov dword [esp], 0x4fa654
cmovne eax, esi
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov eax, dword [esp + 0x30]
movzx eax, byte [eax + 0x30]
xor edx, edx
test al, al
sete dl
and edx, edi
test al, al
setne al
mov ebp, edx
movzx eax, al
and eax, edi
jmp 0x481ba4
cmp al, 0x74
je 0x482010
cmp al, 0x77
mov eax, str._a__f
cmove ebp, eax
jmp 0x481c44
mov eax, dword [esp + 0x30]
movzx eax, byte [eax + 0x20]
jmp 0x481cd3
mov edx, dword [esp + 0x30]
cmp byte [edx + 8], 0x74
jne 0x481d2a
cmp byte [edx + 9], 0x74
jne 0x481d2a
cmp byte [edx + 0xa], 0x79
jne 0x481d2a
movzx eax, byte [edx + 0xb]
jmp 0x481cd3
mov eax, dword [esp + 0x30]
movzx eax, byte [eax + 8]
jmp 0x481cd3
mov eax, dword [esp + 0x34]
mov ebp, eax
and eax, edi
xor ebp, 1
and ebp, edi
jmp 0x481ba4
mov dword [esp], 0x25
call fcn.004e60a8
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov dword [esp + 4], 1
mov dword [esp], 0x13
or dword [sym.zsh.exe_txtattrmask], 2
call sym.zsh.exe_tsetcap
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov eax, dword [esp + 0x30]
add eax, 0x20
mov dword [esp + 8], eax
mov dword [esp + 4], 0x10
mov dword [esp], str._.s
call sub.cygwin1.dll_printf
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov dword [esp + 4], 5
mov dword [esp], 0x16
and dword [sym.zsh.exe_txtattrmask], 0xfffffffd
call sym.zsh.exe_tsetcap
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov dword [esp + 4], 1
mov dword [esp], 0x14
or dword [sym.zsh.exe_txtattrmask], 4
call sym.zsh.exe_tsetcap
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov eax, dword [esp + 0x38]
mov dword [esp], 0x4fa654
mov dword [esp + 4], eax
call sub.cygwin1.dll_printf
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov dword [esp + 4], 5
mov dword [esp], 0x15
and dword [sym.zsh.exe_txtattrmask], 0xfffffffe
call sym.zsh.exe_tsetcap
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov dword [esp + 4], 5
mov dword [esp], 0x12
or dword [sym.zsh.exe_txtattrmask], 1
call sym.zsh.exe_tsetcap
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov eax, dword [esp + 0x30]
mov dword [esp + 4], 0x100
mov dword [esp], str._.s
add eax, 0x30
mov dword [esp + 8], eax
call sub.cygwin1.dll_printf
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov dword [esp + 4], 5
mov dword [esp], 0x17
and dword [sym.zsh.exe_txtattrmask], 0xfffffffb
call sym.zsh.exe_tsetcap
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov edx, dword [esp + 0x30]
cmp byte [edx + 8], 0x74
lea eax, [edx + 8]
jne 0x481d86
cmp byte [eax + 1], 0x74
jne 0x481d86
cmp byte [eax + 2], 0x79
jne 0x481d86
lea eax, [edx + 0xb]
mov dword [esp + 4], 0xd
mov dword [esp + 8], eax
mov dword [esp], str._.s
call sub.cygwin1.dll_printf
mov esi, dword [esp + 0x2c]
jmp 0x481aa8
mov edx, dword [esp + 0x224]
test edx, edx
je 0x481ab1
jmp 0x481ab9
cmp al, 0x40
mov eax, str._l:_M_p
cmove ebp, eax
jmp 0x481c44
mov dword [esp + 4], 0x4fa657
mov dword [esp], 0x4fa659
call sub.cygwin1.dll__fopen64
mov esi, eax
test eax, eax
je 0x481fff
mov dword [esp + 8], 2
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.cygwin1.dll_fseek
mov edx, 0x33
mov dword [esp + 0x3c], ebp
mov eax, 0xfffffec4
mov dword [esp + 0x220], edi
mov ebp, dword [esp + 0x30]
mov edi, edx
jmp 0x481fd4
lea eax, [esp + 0xc4]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 1
mov dword [esp + 4], 0x13c
mov dword [esp], eax
call sub.cygwin1.dll_fread
test eax, eax
je 0x481fec
mov eax, dword [0x523b78]
cmp dword [esp + 0x1f8], eax
jl 0x481fec
sub edi, 1
je 0x481fec
lea eax, [esp + 0xc4]
mov dword [esp + 8], 0x13c
mov dword [esp + 4], ebp
mov dword [esp], eax
call sub.cygwin1.dll_memcmp
mov edx, eax
mov eax, 0xfffffd88
test edx, edx
je 0x482081
mov dword [esp + 8], 1
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.cygwin1.dll_fseek
test eax, eax
je 0x481f70
mov ebp, dword [esp + 0x3c]
mov edi, dword [esp + 0x220]
mov dword [esp], esi
call sub.cygwin1.dll_fclose
mov dword [esp], 0
call sub.cygwin1.dll_time
jmp 0x481c5a
mov ebp, str._l:_M_p
jmp 0x481c44
cmp byte [esi + 2], 0x7b
mov ebp, str._y__m__d
jne 0x481c44
add esi, 3
lea ecx, [esp + 0x74]
jmp 0x48204f
mov byte [ecx], al
add ecx, 1
lea eax, [esp + 0xc3]
lea esi, [ebp + 1]
cmp ecx, eax
je 0x4820f9
movzx eax, byte [esi]
test al, al
je 0x4820fd
cmp al, 0x7d
je 0x4820fd
mov ebp, esi
cmp al, 0x5c
jne 0x482038
movzx edx, byte [esi + 1]
test dl, dl
je 0x482038
add ebp, 1
mov eax, edx
jmp 0x482038
mov ebp, str._m__d__y
jmp 0x481c44
mov eax, dword [esp + 0x30]
mov ebp, dword [esp + 0x3c]
mov edi, dword [esp + 0x220]
add eax, 8
mov dword [esp + 0x3c], eax
lea eax, [esp + 0xc4]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 1
mov dword [esp + 4], 0x13c
mov dword [esp], eax
call sub.cygwin1.dll_fread
test eax, eax
je 0x481ff7
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], 0x10
mov dword [esp + 4], eax
lea eax, [esp + 0xcc]
mov dword [esp], eax
call sub.cygwin1.dll_strncmp
test eax, eax
jne 0x482097
mov dword [esp], esi
call sub.cygwin1.dll_fclose
mov eax, dword [esp + 0x1f8]
jmp 0x481c5a
movzx eax, byte [ebp + 1]
mov ebp, str._y__m__d
cmp al, 0x7d
jne 0x481c44
lea eax, [esi + 1]
mov byte [ecx], 0
lea ebp, [esp + 0x74]
mov dword [esp + 0x2c], eax
jmp 0x481c44