Function at 0x14009f010
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 0x14009f0ad
mov ecx, eax
shl rcx, 2
call fcn.1401313c0
mov qword [rbp - 0x18], rax
mov r14, rax
test rax, rax
je 0x14009f0ad
mov ecx, r13d
cmp dword [rbx + 0x7c], r13d
jbe 0x14009f0ad
nop dword [rax + rax]
mov eax, ecx
inc ecx
mov dword [r14 + rax*4], r13d
cmp ecx, dword [rbx + 0x7c]
jb 0x14009f0a0
mov eax, dword [rbx + 0x80]
test eax, eax
je 0x14009f0f0
mov ecx, eax
shl rcx, 2
call fcn.1401313c0
mov qword [rbp - 0x10], rax
mov r14, rax
test rax, rax
je 0x14009f0f0
mov ecx, r13d
cmp dword [rbx + 0x80], r13d
jbe 0x14009f0f0
nop word [rax + rax]
mov eax, ecx
inc ecx
mov dword [r14 + rax*4], r13d
cmp ecx, dword [rbx + 0x80]
jb 0x14009f0e0
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.14009a130
test eax, eax
je 0x14009f4b1
mov r8d, 4
lea rdx, [0x1401b7d78]
mov rcx, r14
call fcn.14012e560
test eax, eax
jne 0x14009f41c
mov rcx, rbx
call fcn.140095900
test eax, eax
jne 0x14009f411
movzx edx, word [rbx + 0x10ba4]
lea r8d, [rax + 2]
mov rcx, rbx
call fcn.14009b310
test eax, eax
je 0x14009f197
cmp eax, r12d
cmovg r12d, eax
mov dword [rbp + 0x50], r12d
cmp eax, 1
jg 0x14009f36e
movzx esi, word [rbx + 0x10ba6]
test esi, esi
je 0x14009f234
mov rcx, qword [rbx + 0x10b60]
test rcx, rcx
je 0x14009f1b7
call fcn.140125238
mov rcx, rsi
call fcn.1401313c0
mov qword [rbx + 0x10b60], rax
mov r8d, esi
test rax, rax
jne 0x14009f221
lea rdx, str.warning:__extra_field_too_long___d_.__Ignoring..._n
lea rcx, [rbx + 0xb08]
call fcn.140094280
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.14009a430
mov edi, dword [rbp + 0x48]
jmp 0x14009f234
mov rdx, rax
mov rcx, rbx
call fcn.14009a130
test eax, eax
je 0x14009f3bc
movzx eax, word [rbx + 0x10ba8]
test eax, eax
je 0x14009f261
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.14009a430
cmp dword [rbx + 0x84], r13d
je 0x14009f282
mov rcx, rbx
call fcn.14009fa80
test eax, eax
je 0x14009f27b
inc r15d
jmp 0x14009f2c3
inc edi
mov dword [rbp + 0x48], edi
jmp 0x14009f2c3
mov eax, dword [rbx + 0x7c]
test eax, eax
je 0x14009f2eb
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.140098ee0
cmp eax, 1
je 0x14009f2da
inc edi
cmp edi, dword [rbx + 0x7c]
jb 0x14009f290
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 0x14009f110
jmp 0x14009f4c2
mov r14, qword [rbp - 0x18]
test r14, r14
je 0x14009f2eb
mov dword [r14 + rsi*4], 1
mov edi, r13d
cmp dword [rbx + 0x80], r13d
jbe 0x14009f32c
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.140098ee0
cmp eax, 1
je 0x14009f34e
inc edi
cmp edi, dword [rbx + 0x80]
jb 0x14009f300
mov rcx, rbx
call fcn.14009fa80
mov edi, dword [rbp + 0x48]
lea r14, [rbx + 0xf0]
test eax, eax
je 0x14009f27b
inc r15d
jmp 0x14009f2c3
mov r14, qword [rbp - 0x10]
mov edi, dword [rbp + 0x48]
test r14, r14
je 0x14009f362
mov dword [r14 + rsi*4], 1
lea r14, [rbx + 0xf0]
jmp 0x14009f2c3
lea rdx, [rbx + 0x8b08]
lea rcx, [rbx + 0x10c5c]
call fcn.1400a2360
mov r8, rax
lea r9, [0x1401a0e00]
lea rdx, str._s:__bad_filename_length___s__n
lea rcx, [rbx + 0xb08]
call fcn.140094280
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
jmp 0x14009f4bb
lea rdx, [rbx + 0x8b08]
lea rcx, [rbx + 0x10c5c]
call fcn.1400a2360
mov r8, rax
lea r9, [0x1401a0e00]
lea rdx, str._s:__bad_extra_field_length___s__n
lea rcx, [rbx + 0xb08]
call fcn.140094280
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 0x14009f4bb
cmp si, word [rbx + 0x10bbe]
jne 0x14009f447
mov r8d, 4
lea rdx, [0x1401b7d74]
mov rcx, r14
call fcn.14012e560
mov ecx, r13d
test eax, eax
setne cl
mov dword [rbp - 0x20], ecx
jmp 0x14009f4bb
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.140094280
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.140094280
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
mov r12d, 3
jmp 0x14009f4b7
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.14009fe70
test eax, eax
je 0x14009f527
cmp eax, r12d
cmovg r12d, eax
cmp dword [rbx + 0x10c18], 1
mov dword [rbp + 0x50], r12d
jg 0x14009f578
cmp r12d, 0x50
je 0x14009f578
mov ecx, dword [rbx + 0x10b50]
xor r8d, r8d
mov edx, edi
call fcn.14013670c
mov rdx, qword [rbx + 0x10b18]
mov r8d, 0x2000
mov ecx, dword [rbx + 0x10b50]
mov dword [rbx + 0x10b58], eax
call fcn.140135c54
add dword [rbp - 0x28], 0x40
mov qword [rbx + 0x10b20], rsi
mov dword [rbx + 0x10b28], r14d
cmp dword [rbp + 0x58], r13d
jne 0x14009f57c
mov edi, dword [rbp + 0x48]
mov esi, dword [rbp - 0x24]
jmp 0x14009f103
mov dword [rbp + 0x58], r13d
mov eax, dword [rbp + 0x60]
test eax, eax
je 0x14009f705
mov ecx, eax
shl rcx, 3
call fcn.1401313c0
mov r15, rax
test rax, rax
jne 0x14009f5ed
lea rdx, str.warning:__cannot_alloc_memory_to_sort_dir_times_perms_etc._n
lea rcx, [rbx + 0xb08]
call fcn.140094280
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 0x14009f705
mov rax, qword [rcx]
mov qword [rbp - 0x30], rax
call fcn.140125238
mov rcx, qword [rbp - 0x30]
test rcx, rcx
jne 0x14009f5d3
jmp 0x14009f705
mov eax, dword [rbp + 0x60]
cmp eax, 1
jne 0x14009f5fe
mov rax, qword [rbp - 0x30]
mov qword [r15], rax
jmp 0x14009f63f
xor ecx, ecx
test eax, eax
je 0x14009f628
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 0x14009f610
mov edx, eax
lea r9, [0x1400a2400]
mov r8d, 8
mov rcx, r15
call fcn.1401389f0
xor esi, esi
cmp dword [rbp + 0x60], esi
jbe 0x14009f6bd
nop word [rax + rax]
mov r14, qword [r15 + rsi*8]
mov rcx, rbx
mov rdx, r14
call fcn.140096dd0
mov r12d, eax
test eax, eax
je 0x14009f6aa
mov r8, qword [r14 + 8]
lea rdx, str.warning:__set_times_attribs_failed_for__s_n
lea rcx, [rbx + 0xb08]
inc r13d
call fcn.140094280
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 0x14009f6ae
mov r12d, dword [rbp + 0x50]
mov rcx, r14
call fcn.140125238
inc esi
cmp esi, dword [rbp + 0x60]
jb 0x14009f650
mov rcx, r15
call fcn.140125238
cmp dword [rbx + 0x50], 0
jne 0x14009f702
cmp dword [rbx + 0x44], 0
jne 0x14009f702
test r13d, r13d
je 0x14009f702
mov r8d, r13d
lea rdx, str._____failed_setting_attrib_times_for__lu_dir_entries
lea rcx, [rbx + 0xb08]
call fcn.140094280
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 0x14009f7a9
test r15d, r15d
je 0x14009f7a1
cmp dword [rbx + 0x7c], 0
mov esi, r13d
jbe 0x14009f7a1
mov r15d, reloc.WS2_32.dll_inet_addr
nop
mov eax, esi
cmp dword [r14 + rax*4], 0
jne 0x14009f792
cmp dword [rbx + 0xb0], 0
jne 0x14009f784
cmp dword [rbx + 0xb4], 0
jne 0x14009f784
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.140094280
mov r8d, eax
lea rdx, [rbx + 0xb08]
mov r9d, 0x401
mov rcx, rbx
call qword [rbx + 0x10df0]
jmp 0x14009f78a
inc dword [rbx + 0xac]
cmp r12d, 1
cmovle r12d, r15d
inc esi
cmp esi, dword [rbx + 0x7c]
jb 0x14009f730
mov r15d, dword [rbp + 0x58]
mov dword [rbp + 0x50], r12d
mov rcx, r14
call fcn.140125238
mov rsi, qword [rbp - 0x10]
test rsi, rsi
je 0x14009f814
test r15d, r15d
je 0x14009f80c
cmp dword [rbx + 0x80], 0
jbe 0x14009f80c
mov eax, r13d
cmp dword [rsi + rax*4], 0
jne 0x14009f800
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.140094280
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 0x14009f7c0
mov rcx, rsi
call fcn.140125238
test r15d, r15d
je 0x14009fa5f
cmp dword [rbp - 0x20], 0
je 0x14009f88e
lea rdx, str._nnote:__didnt_find_end_of_central_dir_signature_at_end_of_central_dir._n
lea rcx, [rbx + 0xb08]
call fcn.140094280
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.140094280
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 0x14009f894
mov r13d, 1
cmp dword [rbx + 0x50], 0
mov eax, dword [rbp - 0x38]
je 0x14009fa0e
mov r9d, dword [rbp - 0x34]
sub r9d, eax
cmp dword [rbx + 0x44], 2
jge 0x14009fa0e
lea r15, [0x14019945a]
lea rsi, [0x1401a082c]
test r12d, r12d
je 0x14009f8f6
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.140094280
jmp 0x14009f918
test r9d, r9d
jne 0x14009f930
mov r8, qword [rbx + 0x10b48]
lea rdi, [rbx + 0xb08]
mov rcx, rdi
lea rdx, str.Caution:__zero_files_tested_in__s._n
call fcn.140094280
mov r8d, eax
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
mov r14d, dword [rbp + 0x48]
jmp 0x14009f9a0
cmp dword [rbx + 0x84], 0
mov r14d, dword [rbp + 0x48]
je 0x14009f961
add eax, r14d
jne 0x14009f961
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.140094280
jmp 0x14009f98e
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.140094280
xor r9d, r9d
mov r8d, eax
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
test r14d, r14d
je 0x14009f9d4
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.140094280
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 0x14009fa12
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.140094280
mov r8d, eax
xor r9d, r9d
mov rdx, rdi
mov rcx, rbx
call qword [rbx + 0x10df0]
mov eax, dword [rbp - 0x38]
jmp 0x14009fa12
mov r14d, dword [rbp + 0x48]
cmp dword [rbp - 0x34], 0
jne 0x14009fa30
cmp r12d, 1
jg 0x14009fa30
test r14d, r14d
mov eax, 0x51
mov ecx, reloc.WS2_32.dll_inet_addr
cmove eax, ecx
jmp 0x14009fa67
cmp dword [rbp - 0x34], eax
jne 0x14009fa42
cmp r12d, 1
jg 0x14009fa42
mov eax, 0x52
jmp 0x14009fa67
test r14d, r14d
je 0x14009fa54
cmp r12d, 1
jg 0x14009fa54
mov eax, 0x51
jmp 0x14009fa67
test eax, eax
je 0x14009fa64
test r12d, r12d
cmove r12d, r13d
mov eax, r12d
jmp 0x14009fa67
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