Function at 0x14009d4b0
Capabilities:
Read file on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x78
xor r13d, r13d
lea rax, [rcx + 0x100]
mov qword [rcx + 0xb00], rax
mov rbx, rcx
mov eax, 1
mov dword [rbp - 0x34], r13d
mov dword [rcx + 0x94], eax
mov r12d, r13d
mov eax, dword [rcx + 0x7c]
mov edi, r13d
mov dword [rbp + 0x50], r13d
mov qword [rbp - 0x18], r13
mov qword [rbp - 0x10], r13
mov dword [rbp + 0x48], r13d
mov dword [rbp - 0x38], r13d
mov dword [rbp - 0x1c], r13d
mov dword [rbp + 0x60], r13d
mov qword [rbp - 0x30], r13
mov dword [rcx + 0x10c14], r13d
test eax, eax
je 0x14009d54d
mov ecx, eax
shl rcx, 2
call fcn.14012d1e8
mov qword [rbp - 0x18], rax
mov r14, rax
test rax, rax
je 0x14009d54d
mov ecx, r13d
cmp dword [rbx + 0x7c], r13d
jbe 0x14009d54d
nop dword [rax + rax]
mov eax, ecx
inc ecx
mov dword [r14 + rax*4], r13d
cmp ecx, dword [rbx + 0x7c]
jb 0x14009d540
mov eax, dword [rbx + 0x80]
test eax, eax
je 0x14009d590
mov ecx, eax
shl rcx, 2
call fcn.14012d1e8
mov qword [rbp - 0x10], rax
mov r14, rax
test rax, rax
je 0x14009d590
mov ecx, r13d
cmp dword [rbx + 0x80], r13d
jbe 0x14009d590
nop word [rax + rax]
mov eax, ecx
inc ecx
mov dword [r14 + rax*4], r13d
cmp ecx, dword [rbx + 0x80]
jb 0x14009d580
mov esi, r13d
mov dword [rbp - 0x24], r13d
mov dword [rbp - 0x20], r13d
mov dword [rbp + 0x58], r13d
mov dword [rbp - 0x28], r13d
lea r14, [rbx + 0xf0]
mov r15d, r13d
nop dword [rax]
mov eax, r15d
mov r8d, 4
mov rdx, r14
lea rcx, [rax + 8]
lea rcx, [rax + rcx*4]
lea rax, [rbx + rcx*8]
mov rcx, rbx
mov qword [rbx + 0xb00], rax
call fcn.1400985a0
test eax, eax
je 0x14009d92a
mov r8d, 4
lea rdx, [0x1402b8324]
mov rcx, r14
call fcn.14012b3c0
test eax, eax
jne 0x14009d895
mov rcx, rbx
call fcn.140093d20
test eax, eax
jne 0x14009d88a
movzx edx, word [rbx + 0x10ba4]
lea r8d, [rax + 2]
mov rcx, rbx
call fcn.140099750
test eax, eax
je 0x14009d637
cmp eax, r12d
cmovg r12d, eax
mov dword [rbp + 0x50], r12d
cmp eax, 1
jg 0x14009d80e
movzx esi, word [rbx + 0x10ba6]
test esi, esi
je 0x14009d6d4
mov rcx, qword [rbx + 0x10b60]
test rcx, rcx
je 0x14009d657
call fcn.140122088
mov rcx, rsi
call fcn.14012d1e8
mov qword [rbx + 0x10b60], rax
mov r8d, esi
test rax, rax
jne 0x14009d6c1
lea rdx, str.warning:__extra_field_too_long___d_.__Ignoring..._n
lea rcx, [rbx + 0xb08]
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
mov edx, dword [rbx + 0x10b58]
mov rcx, rbx
sub edx, dword [rbx + 0x10b5c]
sub edx, dword [rbx + 0x10b18]
add edx, dword [rbx + 0x10b20]
add edx, esi
call fcn.140098880
mov edi, dword [rbp + 0x48]
jmp 0x14009d6d4
mov rdx, rax
mov rcx, rbx
call fcn.1400985a0
test eax, eax
je 0x14009d85c
movzx eax, word [rbx + 0x10ba8]
test eax, eax
je 0x14009d701
mov edx, dword [rbx + 0x10b58]
mov rcx, rbx
sub edx, dword [rbx + 0x10b5c]
sub edx, dword [rbx + 0x10b18]
add edx, dword [rbx + 0x10b20]
add edx, eax
call fcn.140098880
cmp dword [rbx + 0x84], r13d
je 0x14009d722
mov rcx, rbx
call fcn.14009df00
test eax, eax
je 0x14009d71b
inc r15d
jmp 0x14009d763
inc edi
mov dword [rbp + 0x48], edi
jmp 0x14009d763
mov eax, dword [rbx + 0x7c]
test eax, eax
je 0x14009d78b
mov edi, r13d
nop dword [rax]
mov rax, qword [rbx + 0xe0]
lea rdx, [rbx + 0x10c5c]
mov r8d, dword [rbx + 0x24]
mov esi, edi
mov rcx, qword [rax + rsi*8]
call fcn.140097320
cmp eax, 1
je 0x14009d77a
inc edi
cmp edi, dword [rbx + 0x7c]
jb 0x14009d730
mov edi, dword [rbp + 0x48]
lea r14, [rbx + 0xf0]
mov esi, dword [rbp - 0x24]
inc esi
mov dword [rbp - 0x24], esi
cmp r15d, 0x40
jb 0x14009d5b0
jmp 0x14009d93b
mov r14, qword [rbp - 0x18]
test r14, r14
je 0x14009d78b
mov dword [r14 + rsi*4], 1
mov edi, r13d
cmp dword [rbx + 0x80], r13d
jbe 0x14009d7cc
nop word [rax + rax]
mov rax, qword [rbx + 0xe8]
lea rdx, [rbx + 0x10c5c]
mov r8d, dword [rbx + 0x24]
mov esi, edi
mov rcx, qword [rax + rsi*8]
call fcn.140097320
cmp eax, 1
je 0x14009d7ee
inc edi
cmp edi, dword [rbx + 0x80]
jb 0x14009d7a0
mov rcx, rbx
call fcn.14009df00
mov edi, dword [rbp + 0x48]
lea r14, [rbx + 0xf0]
test eax, eax
je 0x14009d71b
inc r15d
jmp 0x14009d763
mov r14, qword [rbp - 0x10]
mov edi, dword [rbp + 0x48]
test r14, r14
je 0x14009d802
mov dword [r14 + rsi*4], 1
lea r14, [rbx + 0xf0]
jmp 0x14009d763
lea rdx, [rbx + 0x8b08]
lea rcx, [rbx + 0x10c5c]
call fcn.1400a0870
lea rdx, str._s:__bad_filename_length___s__n
lea r9, [0x14019cd80]
mov r8, rax
lea rcx, [rbx + 0xb08]
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
jmp 0x14009d934
mov eax, gethostbyname
lea rdx, [rbx + 0x8b08]
cmp r12d, eax
lea rcx, [rbx + 0x10c5c]
cmovge eax, r12d
mov r12d, eax
mov dword [rbp + 0x50], eax
call fcn.1400a0870
lea rdx, str._s:__bad_extra_field_length___s__n
jmp 0x14009d828
mov r12d, eax
mov dword [rbp + 0x50], eax
jmp 0x14009d934
cmp si, word [rbx + 0x10bbe]
jne 0x14009d8c0
mov r8d, 4
lea rdx, [0x1402b5cec]
mov rcx, r14
call fcn.14012b3c0
mov ecx, r13d
test eax, eax
setne cl
mov dword [rbp - 0x20], ecx
jmp 0x14009d934
mov r8d, dword [rbp - 0x28]
lea rdx, str.error:__expected_central_file_header_signature_not_found__file__lu_._n
inc r8d
lea rcx, [rbx + 0xb08]
add r8d, r15d
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
lea rdx, str.___please_check_that_you_have_transferred_or_created_the_zipfile_in_the_n__appropriate_BINARY_mode_and_that_you_have_compiled_UnZip_properly__n
lea rcx, [rbx + 0xb08]
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
mov r12d, 3
jmp 0x14009d930
mov r12d, gethostbyname
mov dword [rbp + 0x50], r12d
mov dword [rbp + 0x58], 1
mov edi, dword [rbx + 0x10b58]
lea rax, [rbp - 0x30]
mov rsi, qword [rbx + 0x10b20]
lea r9, [rbp - 0x38]
mov r14d, dword [rbx + 0x10b28]
lea r8, [rbp - 0x34]
mov dword [rsp + 0x38], r12d
mov edx, r15d
mov qword [rsp + 0x30], rax
mov rcx, rbx
lea rax, [rbp + 0x60]
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x1c]
mov qword [rsp + 0x20], rax
call fcn.14009e2f0
test eax, eax
je 0x14009d9a0
cmp eax, r12d
cmovg r12d, eax
cmp dword [rbx + 0x10c18], 1
mov dword [rbp + 0x50], r12d
jg 0x14009d9f1
cmp r12d, 0x50
je 0x14009d9f1
mov ecx, dword [rbx + 0x10b50]
xor r8d, r8d
mov edx, edi
call fcn.1401335d0
mov rdx, qword [rbx + 0x10b18]
mov r8d, 0x2000
mov ecx, dword [rbx + 0x10b50]
mov dword [rbx + 0x10b58], eax
call fcn.140132b18
add dword [rbp - 0x28], 0x40
mov qword [rbx + 0x10b20], rsi
mov dword [rbx + 0x10b28], r14d
cmp dword [rbp + 0x58], r13d
jne 0x14009d9f5
mov edi, dword [rbp + 0x48]
mov esi, dword [rbp - 0x24]
jmp 0x14009d5a3
mov dword [rbp + 0x58], r13d
mov eax, dword [rbp + 0x60]
test eax, eax
je 0x14009db85
mov ecx, eax
shl rcx, 3
call fcn.14012d1e8
mov r15, rax
test rax, rax
jne 0x14009da6a
lea rdx, str.warning:__cannot_alloc_memory_to_sort_dir_times_perms_etc._n
lea rcx, [rbx + 0xb08]
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
mov rcx, qword [rbp - 0x30]
test rcx, rcx
je 0x14009db85
nop dword [rax]
mov rax, qword [rcx]
mov qword [rbp - 0x30], rax
call fcn.140122088
mov rcx, qword [rbp - 0x30]
test rcx, rcx
jne 0x14009da50
jmp 0x14009db85
mov eax, dword [rbp + 0x60]
cmp eax, 1
jne 0x14009da7b
mov rax, qword [rbp - 0x30]
mov qword [r15], rax
jmp 0x14009dabf
xor ecx, ecx
test eax, eax
je 0x14009daa8
mov rdx, qword [rbp - 0x30]
nop word [rax + rax]
mov qword [r15 + rcx*8], rdx
inc ecx
mov rax, qword [rbp - 0x30]
mov rdx, qword [rax]
mov eax, dword [rbp + 0x60]
mov qword [rbp - 0x30], rdx
cmp ecx, eax
jb 0x14009da90
mov edx, eax
lea r9, [0x1400a0910]
mov r8d, 8
mov rcx, r15
call fcn.14012c800
xor esi, esi
cmp dword [rbp + 0x60], esi
jbe 0x14009db3d
nop word [rax + rax]
mov r14, qword [r15 + rsi*8]
mov rcx, rbx
mov rdx, r14
call fcn.1400951f0
mov r12d, eax
test eax, eax
je 0x14009db2a
mov r8, qword [r14 + 8]
lea rdx, str.warning:__set_times_attribs_failed_for__s_n
lea rcx, [rbx + 0xb08]
inc r13d
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x201
mov rcx, rbx
call qword [rbx + 0x10df0]
mov eax, dword [rbp + 0x50]
test eax, eax
cmove eax, r12d
mov r12d, eax
mov dword [rbp + 0x50], eax
jmp 0x14009db2e
mov r12d, dword [rbp + 0x50]
mov rcx, r14
call fcn.140122088
inc esi
cmp esi, dword [rbp + 0x60]
jb 0x14009dad0
mov rcx, r15
call fcn.140122088
cmp dword [rbx + 0x50], 0
jne 0x14009db82
cmp dword [rbx + 0x44], 0
jne 0x14009db82
test r13d, r13d
je 0x14009db82
mov r8d, r13d
lea rdx, str._____failed_setting_attrib_times_for__lu_dir_entries
lea rcx, [rbx + 0xb08]
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
xor r9d, r9d
mov rcx, rbx
call qword [rbx + 0x10df0]
xor r13d, r13d
mov r14, qword [rbp - 0x18]
mov r15d, dword [rbp + 0x58]
test r14, r14
je 0x14009dc29
test r15d, r15d
je 0x14009dc21
cmp dword [rbx + 0x7c], 0
mov esi, r13d
jbe 0x14009dc21
mov r15d, reloc.WS2_32.dll_inet_addr
nop
mov eax, esi
cmp dword [r14 + rax*4], 0
jne 0x14009dc12
cmp dword [rbx + 0xb0], 0
jne 0x14009dc04
cmp dword [rbx + 0xb4], 0
jne 0x14009dc04
mov r8, qword [rbx + 0xe0]
lea rdx, [0x14018ae08]
lea rcx, [rbx + 0xb08]
mov r8, qword [r8 + rax*8]
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
jmp 0x14009dc0a
inc dword [rbx + 0xac]
cmp r12d, 1
cmovle r12d, r15d
inc esi
cmp esi, dword [rbx + 0x7c]
jb 0x14009dbb0
mov r15d, dword [rbp + 0x58]
mov dword [rbp + 0x50], r12d
mov rcx, r14
call fcn.140122088
mov rsi, qword [rbp - 0x10]
test rsi, rsi
je 0x14009dc94
test r15d, r15d
je 0x14009dc8c
cmp dword [rbx + 0x80], 0
jbe 0x14009dc8c
mov eax, r13d
cmp dword [rsi + rax*4], 0
jne 0x14009dc80
mov r8, qword [rbx + 0xe8]
lea rdx, str.caution:_excluded_filename_not_matched:___s_n
lea rcx, [rbx + 0xb08]
mov r8, qword [r8 + rax*8]
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
inc r13d
cmp r13d, dword [rbx + 0x80]
jb 0x14009dc40
mov rcx, rsi
call fcn.140122088
test r15d, r15d
je 0x14009dedf
cmp dword [rbp - 0x20], 0
je 0x14009dd0e
lea rdx, str._nnote:__didnt_find_end_of_central_dir_signature_at_end_of_central_dir._n
lea rcx, [rbx + 0xb08]
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
lea rdx, str.___please_check_that_you_have_transferred_or_created_the_zipfile_in_the_n__appropriate_BINARY_mode_and_that_you_have_compiled_UnZip_properly__n
lea rcx, [rbx + 0xb08]
call fcn.140092700
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
test r12d, r12d
mov r13d, 1
cmove r12d, r13d
mov dword [rbp + 0x50], r12d
jmp 0x14009dd14
mov r13d, 1
cmp dword [rbx + 0x50], 0
mov eax, dword [rbp - 0x38]
je 0x14009de8e
mov r9d, dword [rbp - 0x34]
sub r9d, eax
cmp dword [rbx + 0x44], 2
jge 0x14009de8e
lea r15, [0x14019581a]
lea rsi, [0x14019c79c]
test r12d, r12d
je 0x14009dd76
mov r9, qword [rbx + 0x10b48]
lea rax, str.warning_
cmp r12d, 1
lea rdi, [rbx + 0xb08]
mov r8, r15
lea rdx, str.At_least_one__serror_was_detected_in__s._n
cmove r8, rax
mov rcx, rdi
call fcn.140092700
jmp 0x14009dd98
test r9d, r9d
jne 0x14009ddb0
mov r8, qword [rbx + 0x10b48]
lea rdi, [rbx + 0xb08]
mov rcx, rdi
lea rdx, str.Caution:__zero_files_tested_in__s._n
call fcn.140092700
mov r8d, eax
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
mov r14d, dword [rbp + 0x48]
jmp 0x14009de20
cmp dword [rbx + 0x84], 0
mov r14d, dword [rbp + 0x48]
je 0x14009dde1
add eax, r14d
jne 0x14009dde1
mov r8, qword [rbx + 0x10b48]
lea rdi, [rbx + 0xb08]
mov rcx, rdi
lea rdx, str.No_errors_detected_in_compressed_data_of__s._n
call fcn.140092700
jmp 0x14009de0e
mov r8, qword [rbx + 0x10b48]
lea rdi, [rbx + 0xb08]
cmp r9d, 1
lea rdx, str.No_errors_detected_in__s_for_the__lu_file_s_tested._n
mov rax, rsi
mov rcx, rdi
cmove rax, r15
mov qword [rsp + 0x20], rax
call fcn.140092700
xor r9d, r9d
mov r8d, eax
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
test r14d, r14d
je 0x14009de54
cmp r14d, 1
lea rdx, str._lu_file_s_skipped_because_of_unsupported_compression_or_encoding._n
mov r9, rsi
mov r8d, r14d
cmove r9, r15
mov rcx, rdi
call fcn.140092700
mov r8d, eax
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
mov eax, dword [rbp - 0x38]
test eax, eax
je 0x14009de92
cmp eax, 1
lea rdx, str._lu_file_s_skipped_because_of_incorrect_password._n
mov r8d, eax
mov rcx, rdi
cmove rsi, r15
mov r9, rsi
call fcn.140092700
mov r8d, eax
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
mov eax, dword [rbp - 0x38]
jmp 0x14009de92
mov r14d, dword [rbp + 0x48]
cmp dword [rbp - 0x34], 0
jne 0x14009deb0
cmp r12d, 1
jg 0x14009deb0
test r14d, r14d
mov eax, 0x51
mov ecx, reloc.WS2_32.dll_inet_addr
cmove eax, ecx
jmp 0x14009dee7
cmp dword [rbp - 0x34], eax
jne 0x14009dec2
cmp r12d, 1
jg 0x14009dec2
mov eax, 0x52
jmp 0x14009dee7
test r14d, r14d
je 0x14009ded4
cmp r12d, 1
jg 0x14009ded4
mov eax, 0x51
jmp 0x14009dee7
test eax, eax
je 0x14009dee4
test r12d, r12d
cmove r12d, r13d
mov eax, r12d
jmp 0x14009dee7
mov eax, dword [rbp + 0x50]
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret