Function at 0x48b0a0
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
mov eax, dword [0x4f5568]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, ecx
mov dword [ebp - 0x20], edx
xor ebx, ebx
push edi
mov eax, dword [esi + 0x1090c]
cmp eax, 0x2000
jg 0x48b1af
push ebx
push ebx
push dword [esi + 0x10908]
call fcn.004b2e42
push dword [esi + 0x1090c]
push dword [esi + 0x108e4]
push dword [esi + 0x10908]
call fcn.004b1dd1
mov edx, dword [esi + 0x1090c]
add esp, 0x18
mov dword [esi + 0x108ec], eax
cmp eax, edx
jne 0x48b39d
mov ecx, dword [esi + 0x108e4]
lea eax, [edx - 0x16]
add eax, ecx
mov dword [esi + 0x108e8], eax
cmp eax, ecx
jb 0x48b39d
nop
mov eax, dword [esi + 0x108e8]
cmp byte [eax], 0x50
jne 0x48b13f
push 4
push 0x4f6a1c
push eax
call fcn.004ad660
add esp, 0xc
test eax, eax
je 0x48b158
dec dword [esi + 0x108e8]
mov eax, dword [esi + 0x108e8]
cmp eax, dword [esi + 0x108e4]
jae 0x48b120
jmp 0x48b39d
mov eax, dword [esi + 0x108e4]
sub eax, dword [esi + 0x108e8]
add dword [esi + 0x108ec], eax
mov eax, dword [esi + 0x10910]
lea edx, [ebp - 0x1c]
sub eax, dword [esi + 0x108e4]
mov ecx, esi
add eax, dword [esi + 0x108e8]
push 0x16
mov dword [esi + 0x88], eax
call fcn.0048bf20
add esp, 4
test eax, eax
jne 0x48b40d
pop edi
pop esi
mov eax, 0x33
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004aca59
mov esp, ebp
pop ebp
ret
mov edi, eax
and edi, 0x80001fff
jns 0x48b1c1
dec edi
or edi, 0xffffe000
inc edi
sub eax, edi
cmp edi, 0x12
jle 0x48b289
push 0
push eax
push dword [esi + 0x10908]
call fcn.004b2e42
push edi
push dword [esi + 0x108e4]
mov dword [esi + 0x10910], eax
push dword [esi + 0x10908]
call fcn.004b1dd1
add esp, 0x18
mov dword [esi + 0x108ec], eax
cmp eax, edi
jne 0x48b39d
mov ecx, dword [esi + 0x108e4]
lea eax, [ecx - 0x16]
add eax, edi
mov dword [esi + 0x108e8], eax
cmp eax, ecx
jb 0x48b26c
jmp 0x48b220
mov eax, dword [esi + 0x108e8]
cmp byte [eax], 0x50
jne 0x48b23f
push 4
push 0x4f6a1c
push eax
call fcn.004ad660
add esp, 0xc
test eax, eax
je 0x48b255
dec dword [esi + 0x108e8]
mov eax, dword [esi + 0x108e8]
cmp eax, dword [esi + 0x108e4]
jae 0x48b220
jmp 0x48b26c
mov eax, dword [esi + 0x108e4]
mov ebx, 1
sub eax, dword [esi + 0x108e8]
add dword [esi + 0x108ec], eax
mov ecx, dword [esi + 0x108e4]
mov edx, dword [esi + 0x1091c]
mov ax, word [ecx]
mov word [edx], ax
mov al, byte [ecx + 2]
mov byte [edx + 2], al
mov edx, dword [ebp - 0x20]
jmp 0x48b28f
mov dword [esi + 0x10910], eax
sub edx, edi
mov edi, 1
lea eax, [edx + 0x1fff]
cdq
and edx, 0x1fff
add eax, edx
sar eax, 0xd
mov dword [ebp - 0x20], eax
test ebx, ebx
jne 0x48b16a
cmp edi, eax
jg 0x48b395
add dword [esi + 0x10910], 0xffffe000
push 0
push dword [esi + 0x10910]
push dword [esi + 0x10908]
call fcn.004b2e42
push 0x2000
push dword [esi + 0x108e4]
push dword [esi + 0x10908]
call fcn.004b1dd1
add esp, 0x18
mov dword [esi + 0x108ec], eax
cmp eax, 0x2000
jne 0x48b395
mov ecx, dword [esi + 0x108e4]
lea eax, [ecx + 0x1fff]
mov dword [esi + 0x108e8], eax
cmp eax, ecx
jb 0x48b36c
jmp 0x48b320
mov eax, dword [esi + 0x108e8]
cmp byte [eax], 0x50
jne 0x48b33f
push 4
push 0x4f6a1c
push eax
call fcn.004ad660
add esp, 0xc
test eax, eax
je 0x48b355
dec dword [esi + 0x108e8]
mov eax, dword [esi + 0x108e8]
cmp eax, dword [esi + 0x108e4]
jae 0x48b320
jmp 0x48b36c
mov eax, dword [esi + 0x108e4]
mov ebx, 1
sub eax, dword [esi + 0x108e8]
add dword [esi + 0x108ec], eax
mov ecx, dword [esi + 0x108e4]
inc edi
mov edx, dword [esi + 0x1091c]
mov ax, word [ecx]
mov word [edx], ax
mov al, byte [ecx + 2]
mov byte [edx + 2], al
mov eax, dword [ebp - 0x20]
test ebx, ebx
je 0x48b2b3
jmp 0x48b16a
test ebx, ebx
jne 0x48b16a
cmp dword [esi + 0x38], 0
jne 0x48b3a9
cmp dword [esi + 0xc], 0
je 0x48b3d3
push 0x401
push dword [esi + 0x10904]
lea edi, [esi + 0x8dc]
push str.__s__n
push edi
call fcn.004ad5d8
add esp, 0xc
push eax
mov eax, dword [esi + 0x10b54]
push edi
push esi
call eax
push 0x401
lea edi, [esi + 0x8dc]
push str.__End_of_central_directory_signature_not_found.__Either_this_file_is_not_n__a_zipfile__or_it_constitutes_one_disk_of_a_multi_part_archive.__In_the_n__latter_case_the_central_directory_and_zipfile_comment_will_be_found_on_n__the_last_disk_s__of_this_archive._n
push edi
call fcn.004ad5d8
add esp, 8
push eax
mov eax, dword [esi + 0x10b54]
push edi
push esi
call eax
pop edi
pop esi
mov eax, 2
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004aca59
mov esp, ebp
pop ebp
ret
movzx ecx, byte [ebp - 0x17]
movzx eax, byte [ebp - 0x18]
shl cx, 8
or cx, ax
movzx edi, byte [ebp - 0xd]
movzx eax, byte [ebp - 0x16]
mov word [esi + 0x10968], cx
movzx ecx, byte [ebp - 0x15]
shl cx, 8
or cx, ax
movzx edx, byte [ebp - 9]
movzx eax, byte [ebp - 0x14]
mov word [esi + 0x1096a], cx
movzx ecx, byte [ebp - 0x13]
shl cx, 8
or cx, ax
shl edi, 8
movzx eax, byte [ebp - 0x12]
mov word [esi + 0x1096c], cx
movzx ecx, byte [ebp - 0x11]
shl cx, 8
or cx, ax
shl edx, 8
movzx eax, byte [ebp - 0xe]
add edi, eax
mov word [esi + 0x1096e], cx
movzx eax, byte [ebp - 0xf]
movzx ecx, byte [ebp - 7]
shl edi, 8
add edi, eax
shl cx, 8
movzx eax, byte [ebp - 0x10]
shl edi, 8
add edi, eax
movzx eax, byte [ebp - 0xa]
add edx, eax
mov dword [esi + 0x10970], edi
movzx eax, byte [ebp - 0xb]
shl edx, 8
add edx, eax
movzx eax, byte [ebp - 0xc]
shl edx, 8
add edx, eax
movzx eax, byte [ebp - 8]
or cx, ax
mov dword [esi + 0x10974], edx
mov word [esi + 0x10978], cx
mov ecx, dword [ebp - 4]
lea eax, [edx + edi]
xor ecx, ebp
pop edi
mov dword [esi + 0x8c], eax
xor eax, eax
pop esi
pop ebx
call fcn.004aca59
mov esp, ebp
pop ebp
ret