Function at 0x14009b9e0
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 0x14009ba7d
mov ecx, eax
shl rcx, 2
call fcn.1401507f8
mov qword [rbp - 0x18], rax
mov r14, rax
test rax, rax
je 0x14009ba7d
mov ecx, r13d
cmp dword [rbx + 0x7c], r13d
jbe 0x14009ba7d
nop dword [rax + rax]
mov eax, ecx
inc ecx
mov dword [r14 + rax*4], r13d
cmp ecx, dword [rbx + 0x7c]
jb 0x14009ba70
mov eax, dword [rbx + 0x80]
test eax, eax
je 0x14009bac0
mov ecx, eax
shl rcx, 2
call fcn.1401507f8
mov qword [rbp - 0x10], rax
mov r14, rax
test rax, rax
je 0x14009bac0
mov ecx, r13d
cmp dword [rbx + 0x80], r13d
jbe 0x14009bac0
nop word [rax + rax]
mov eax, ecx
inc ecx
mov dword [r14 + rax*4], r13d
cmp ecx, dword [rbx + 0x80]
jb 0x14009bab0
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.140096b00
test eax, eax
je 0x14009be81
mov r8d, 4
lea rdx, [0x14021be5c]
mov rcx, r14
call fcn.14015a010
test eax, eax
jne 0x14009bdec
mov rcx, rbx
call fcn.1400923d0
test eax, eax
jne 0x14009bde1
movzx edx, word [rbx + 0x10ba4]
lea r8d, [rax + 2]
mov rcx, rbx
call fcn.140097cc0
test eax, eax
je 0x14009bb67
cmp eax, r12d
cmovg r12d, eax
mov dword [rbp + 0x50], r12d
cmp eax, 1
jg 0x14009bd3e
movzx esi, word [rbx + 0x10ba6]
test esi, esi
je 0x14009bc04
mov rcx, qword [rbx + 0x10b60]
test rcx, rcx
je 0x14009bb87
call fcn.14014e740
mov rcx, rsi
call fcn.1401507f8
mov qword [rbx + 0x10b60], rax
mov r8d, esi
test rax, rax
jne 0x14009bbf1
lea rdx, str.warning:__extra_field_too_long___d_.__Ignoring..._n
lea rcx, [rbx + 0xb08]
call fcn.1400352e0
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.140096df0
mov edi, dword [rbp + 0x48]
jmp 0x14009bc04
mov rdx, rax
mov rcx, rbx
call fcn.140096b00
test eax, eax
je 0x14009bd8c
movzx eax, word [rbx + 0x10ba8]
test eax, eax
je 0x14009bc31
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.140096df0
cmp dword [rbx + 0x84], r13d
je 0x14009bc52
mov rcx, rbx
call fcn.14009c450
test eax, eax
je 0x14009bc4b
inc r15d
jmp 0x14009bc93
inc edi
mov dword [rbp + 0x48], edi
jmp 0x14009bc93
mov eax, dword [rbx + 0x7c]
test eax, eax
je 0x14009bcbb
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.140095880
cmp eax, 1
je 0x14009bcaa
inc edi
cmp edi, dword [rbx + 0x7c]
jb 0x14009bc60
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 0x14009bae0
jmp 0x14009be92
mov r14, qword [rbp - 0x18]
test r14, r14
je 0x14009bcbb
mov dword [r14 + rsi*4], 1
mov edi, r13d
cmp dword [rbx + 0x80], r13d
jbe 0x14009bcfc
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.140095880
cmp eax, 1
je 0x14009bd1e
inc edi
cmp edi, dword [rbx + 0x80]
jb 0x14009bcd0
mov rcx, rbx
call fcn.14009c450
mov edi, dword [rbp + 0x48]
lea r14, [rbx + 0xf0]
test eax, eax
je 0x14009bc4b
inc r15d
jmp 0x14009bc93
mov r14, qword [rbp - 0x10]
mov edi, dword [rbp + 0x48]
test r14, r14
je 0x14009bd32
mov dword [r14 + rsi*4], 1
lea r14, [rbx + 0xf0]
jmp 0x14009bc93
lea rdx, [rbx + 0x8b08]
lea rcx, [rbx + 0x10c5c]
call fcn.14009ed90
mov r8, rax
lea r9, [0x1401fe4d8]
lea rdx, str._s:__bad_filename_length___s__n
lea rcx, [rbx + 0xb08]
call fcn.1400352e0
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
jmp 0x14009be8b
lea rdx, [rbx + 0x8b08]
lea rcx, [rbx + 0x10c5c]
call fcn.14009ed90
mov r8, rax
lea r9, [0x1401fe4d8]
lea rdx, str._s:__bad_extra_field_length___s__n
lea rcx, [rbx + 0xb08]
call fcn.1400352e0
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
mov eax, gethostbyname
cmp r12d, eax
cmovge eax, r12d
mov r12d, eax
mov dword [rbp + 0x50], eax
jmp 0x14009be8b
cmp si, word [rbx + 0x10bbe]
jne 0x14009be17
mov r8d, 4
lea rdx, [0x14021be44]
mov rcx, r14
call fcn.14015a010
mov ecx, r13d
test eax, eax
setne cl
mov dword [rbp - 0x20], ecx
jmp 0x14009be8b
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.1400352e0
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.1400352e0
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
mov r12d, 3
jmp 0x14009be87
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.14009c840
test eax, eax
je 0x14009bef7
cmp eax, r12d
cmovg r12d, eax
cmp dword [rbx + 0x10c18], 1
mov dword [rbp + 0x50], r12d
jg 0x14009bf48
cmp r12d, 0x50
je 0x14009bf48
mov ecx, dword [rbx + 0x10b50]
xor r8d, r8d
mov edx, edi
call fcn.1401660ec
mov rdx, qword [rbx + 0x10b18]
mov r8d, 0x2000
mov ecx, dword [rbx + 0x10b50]
mov dword [rbx + 0x10b58], eax
call fcn.140165450
add dword [rbp - 0x28], 0x40
mov qword [rbx + 0x10b20], rsi
mov dword [rbx + 0x10b28], r14d
cmp dword [rbp + 0x58], r13d
jne 0x14009bf4c
mov edi, dword [rbp + 0x48]
mov esi, dword [rbp - 0x24]
jmp 0x14009bad3
mov dword [rbp + 0x58], r13d
mov eax, dword [rbp + 0x60]
test eax, eax
je 0x14009c0d5
mov ecx, eax
shl rcx, 3
call fcn.1401507f8
mov r15, rax
test rax, rax
jne 0x14009bfbd
lea rdx, str.warning:__cannot_alloc_memory_to_sort_dir_times_perms_etc._n
lea rcx, [rbx + 0xb08]
call fcn.1400352e0
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 0x14009c0d5
mov rax, qword [rcx]
mov qword [rbp - 0x30], rax
call fcn.14014e740
mov rcx, qword [rbp - 0x30]
test rcx, rcx
jne 0x14009bfa3
jmp 0x14009c0d5
mov eax, dword [rbp + 0x60]
cmp eax, 1
jne 0x14009bfce
mov rax, qword [rbp - 0x30]
mov qword [r15], rax
jmp 0x14009c00f
xor ecx, ecx
test eax, eax
je 0x14009bff8
mov rdx, qword [rbp - 0x30]
nop dword [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 0x14009bfe0
mov edx, eax
lea r9, [0x14009ee30]
mov r8d, 8
mov rcx, r15
call fcn.14014e760
xor esi, esi
cmp dword [rbp + 0x60], esi
jbe 0x14009c08d
nop word [rax + rax]
mov r14, qword [r15 + rsi*8]
mov rcx, rbx
mov rdx, r14
call fcn.140093770
mov r12d, eax
test eax, eax
je 0x14009c07a
mov r8, qword [r14 + 8]
lea rdx, str.warning:__set_times_attribs_failed_for__s_n
lea rcx, [rbx + 0xb08]
inc r13d
call fcn.1400352e0
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 0x14009c07e
mov r12d, dword [rbp + 0x50]
mov rcx, r14
call fcn.14014e740
inc esi
cmp esi, dword [rbp + 0x60]
jb 0x14009c020
mov rcx, r15
call fcn.14014e740
cmp dword [rbx + 0x50], 0
jne 0x14009c0d2
cmp dword [rbx + 0x44], 0
jne 0x14009c0d2
test r13d, r13d
je 0x14009c0d2
mov r8d, r13d
lea rdx, str._____failed_setting_attrib_times_for__lu_dir_entries
lea rcx, [rbx + 0xb08]
call fcn.1400352e0
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 0x14009c179
test r15d, r15d
je 0x14009c171
cmp dword [rbx + 0x7c], 0
mov esi, r13d
jbe 0x14009c171
mov r15d, reloc.WS2_32.dll_inet_addr
nop
mov eax, esi
cmp dword [r14 + rax*4], 0
jne 0x14009c162
cmp dword [rbx + 0xb0], 0
jne 0x14009c154
cmp dword [rbx + 0xb4], 0
jne 0x14009c154
mov r8, qword [rbx + 0xe0]
lea rdx, str.caution:_filename_not_matched:___s_n
lea rcx, [rbx + 0xb08]
mov r8, qword [r8 + rax*8]
call fcn.1400352e0
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
jmp 0x14009c15a
inc dword [rbx + 0xac]
cmp r12d, 1
cmovle r12d, r15d
inc esi
cmp esi, dword [rbx + 0x7c]
jb 0x14009c100
mov r15d, dword [rbp + 0x58]
mov dword [rbp + 0x50], r12d
mov rcx, r14
call fcn.14014e740
mov rsi, qword [rbp - 0x10]
test rsi, rsi
je 0x14009c1e4
test r15d, r15d
je 0x14009c1dc
cmp dword [rbx + 0x80], 0
jbe 0x14009c1dc
mov eax, r13d
cmp dword [rsi + rax*4], 0
jne 0x14009c1d0
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.1400352e0
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 0x14009c190
mov rcx, rsi
call fcn.14014e740
test r15d, r15d
je 0x14009c42f
cmp dword [rbp - 0x20], 0
je 0x14009c25e
lea rdx, str._nnote:__didnt_find_end_of_central_dir_signature_at_end_of_central_dir._n
lea rcx, [rbx + 0xb08]
call fcn.1400352e0
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.1400352e0
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 0x14009c264
mov r13d, 1
cmp dword [rbx + 0x50], 0
mov eax, dword [rbp - 0x38]
je 0x14009c3de
mov r9d, dword [rbp - 0x34]
sub r9d, eax
cmp dword [rbx + 0x44], 2
jge 0x14009c3de
lea r15, [0x1401e9c5c]
lea rsi, reloc.WS2_32.dll_WSAStartup
test r12d, r12d
je 0x14009c2c6
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.1400352e0
jmp 0x14009c2e8
test r9d, r9d
jne 0x14009c300
mov r8, qword [rbx + 0x10b48]
lea rdi, [rbx + 0xb08]
mov rcx, rdi
lea rdx, str.Caution:__zero_files_tested_in__s._n
call fcn.1400352e0
mov r8d, eax
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
mov r14d, dword [rbp + 0x48]
jmp 0x14009c370
cmp dword [rbx + 0x84], 0
mov r14d, dword [rbp + 0x48]
je 0x14009c331
add eax, r14d
jne 0x14009c331
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.1400352e0
jmp 0x14009c35e
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.1400352e0
xor r9d, r9d
mov r8d, eax
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
test r14d, r14d
je 0x14009c3a4
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.1400352e0
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 0x14009c3e2
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.1400352e0
mov r8d, eax
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
mov eax, dword [rbp - 0x38]
jmp 0x14009c3e2
mov r14d, dword [rbp + 0x48]
cmp dword [rbp - 0x34], 0
jne 0x14009c400
cmp r12d, 1
jg 0x14009c400
test r14d, r14d
mov eax, 0x51
mov ecx, reloc.WS2_32.dll_inet_addr
cmove eax, ecx
jmp 0x14009c437
cmp dword [rbp - 0x34], eax
jne 0x14009c412
cmp r12d, 1
jg 0x14009c412
mov eax, 0x52
jmp 0x14009c437
test r14d, r14d
je 0x14009c424
cmp r12d, 1
jg 0x14009c424
mov eax, 0x51
jmp 0x14009c437
test eax, eax
je 0x14009c434
test r12d, r12d
cmove r12d, r13d
mov eax, r12d
jmp 0x14009c437
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