Function at 0x14000ff70
Capabilities:
Enumerate pe sections

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xf0
mov rbx, qword [r8 + 0x70]
xor eax, eax
mov rdi, r8
mov dword [rbp + 0x7f], eax
mov r15, rdx
mov rsi, rcx
xor edx, edx
xor ecx, ecx
movups xmm1, xmmword [rbx + 0x30]
movups xmm0, xmmword [rbx + 0x20]
movaps xmmword [rbp - 0x39], xmm1
movups xmm1, xmmword [rbx + 0x70]
mov word [r8 + 0xa1], ax
mov qword [r8 + 0x88], rax
mov qword [r8 + 0x80], rax
xor r8d, r8d
movaps xmmword [rbp + 7], xmm1
movaps xmmword [rbp - 0x49], xmm0
call qword [rdi + 0x98]
cmp qword [rdi + 0x1f00], 0
mov r12d, 1
mov dword [rdi + 0x90], eax
jne 0x140010009
cmp dword [rdi + 0x1f18], 0
jne 0x140010009
mov rcx, rsi
call fcn.14002bec0
mov qword [rdi + 0x1f08], rax
mov dword [rdi + 0x1f18], r12d
xor r8d, r8d
mov qword [rsp + 0x130], r13
mov rcx, rsi
lea edx, [r8 + 0x1e]
call fcn.1400339c0
mov r14, rax
test rax, rax
je 0x140010944
cmp dword [rax], 0x4034b50
je 0x140010045
lea r8, str.Damaged_Zip_archive
mov edx, 0xffffffff
jmp 0x140010950
movzx eax, byte [rax + 4]
mov byte [rbp + 0x77], al
movzx eax, byte [r14 + 5]
mov byte [rbx + 0x81], al
movzx ecx, byte [r14 + 7]
movzx eax, byte [r14 + 6]
shl cx, 8
or cx, ax
mov word [rbx + 0x7e], cx
test cl, 0x41
je 0x1400100a6
movzx edx, r12b
mov dword [rdi + 0x38], r12d
mov rcx, r15
call fcn.14002b980
movzx eax, word [rbx + 0x7e]
mov edx, 0x2041
movzx ecx, al
and ax, dx
cmp ax, dx
jne 0x1400100a6
movzx edx, r12b
mov rcx, r15
call fcn.14002b9b0
jmp 0x140010958
and cl, r12b
mov byte [rdi + 0x1f20], cl
lea rcx, [r14 + 0xa]
movzx eax, byte [r14 + 8]
mov byte [rbx + 0x80], al
call fcn.14000f620
mov qword [rbx + 0x60], rax
movzx eax, byte [r14 + 0x10]
movzx ecx, byte [r14 + 0x11]
shl ecx, 8
or ecx, eax
movzx eax, byte [r14 + 0xf]
shl ecx, 8
or ecx, eax
movzx eax, byte [r14 + 0xe]
shl ecx, 8
or ecx, eax
test byte [rbx + 0x7e], 8
mov dword [rbx + 0x78], ecx
je 0x1400100fa
movzx eax, byte [r14 + 0xb]
jmp 0x1400100ff
movzx eax, byte [r14 + 0x11]
mov byte [rbx + 0x83], al
mov edx, 0x1e
movzx eax, byte [r14 + 0x14]
movzx ecx, byte [r14 + 0x15]
shl rcx, 8
or rcx, rax
movzx eax, byte [r14 + 0x13]
shl rcx, 8
or rcx, rax
movzx eax, byte [r14 + 0x12]
shl rcx, 8
or rcx, rax
mov qword [rbx + 0x28], rcx
movzx eax, byte [r14 + 0x18]
movzx ecx, byte [r14 + 0x19]
shl rcx, 8
or rcx, rax
movzx eax, byte [r14 + 0x17]
shl rcx, 8
or rcx, rax
movzx eax, byte [r14 + 0x16]
shl rcx, 8
or rcx, rax
mov qword [rbx + 0x30], rcx
mov rcx, rsi
movzx eax, byte [r14 + 0x1a]
movzx r13d, byte [r14 + 0x1b]
movzx r12d, byte [r14 + 0x1d]
shl r13, 8
or r13, rax
shl r12, 8
movzx eax, byte [r14 + 0x1c]
or r12, rax
call fcn.140033ff0
xor r8d, r8d
mov rdx, r13
mov rcx, rsi
call fcn.1400339c0
mov qword [rsp + 0x48], rax
test rax, rax
je 0x140010944
mov ecx, 0x800
test word [rbx + 0x7e], cx
je 0x1400101ee
mov r14, qword [rdi + 0x1f10]
test r14, r14
jne 0x140010201
lea r8d, [r14 + 1]
mov rcx, rsi
lea rdx, str.UTF_8
call fcn.14002be20
mov qword [rdi + 0x1f10], rax
mov r14, rax
test rax, rax
je 0x140010958
mov rax, qword [rsp + 0x48]
jmp 0x140010201
mov r14, qword [rdi + 0x1f00]
test r14, r14
jne 0x140010201
mov r14, qword [rdi + 0x1f08]
mov r9, r14
mov r8, r13
mov rdx, rax
mov rcx, r15
call fcn.14002bbc0
test eax, eax
je 0x140010257
call fcn.1400230d4
cmp dword [rax], 0xc
jne 0x140010231
lea r8, str.Cant_allocate_memory_for_Pathname
mov edx, 0xc
jmp 0x140010950
mov rcx, r14
call fcn.14002c330
mov r9, rax
lea r8, str.Pathname_cannot_be_converted_from__s_to_current_locale.
mov edx, 0x2a
mov rcx, rsi
call fcn.14002a390
mov dword [rbp + 0x7f], 0xffffffec
mov rdx, r13
mov rcx, rsi
call fcn.140033ff0
xor r8d, r8d
mov rdx, r12
mov rcx, rsi
call fcn.1400339c0
test rax, rax
je 0x140010944
mov r9, r12
mov qword [rsp + 0x20], rbx
mov r8, rax
mov rdx, r15
mov rcx, rsi
call fcn.14000f6c0
test eax, eax
jne 0x140010958
mov rdx, r12
mov rcx, rsi
call fcn.140033ff0
movzx ecx, word [rbx + 0x7c]
mov edx, 0xf000
movzx eax, cx
mov r8d, 0x8000
and ax, dx
mov edx, 0x1000
lea r9d, [rdx - 1]
cmp ax, dx
jne 0x1400102d1
and cx, r9w
or cx, r8w
mov word [rbx + 0x7c], cx
test cx, cx
jne 0x1400102df
mov eax, 0x1b4
mov word [rbx + 0x7c], ax
cmp byte [rbx + 0x81], 0
mov r13d, 0x2f
jne 0x1400103a7
mov rcx, r15
call fcn.14002b310
mov r14, rax
test rax, rax
je 0x1400103a7
mov edx, r13d
mov rcx, rax
call fcn.140024bc8
test rax, rax
jne 0x1400103a7
lea edx, [rax + 0x5c]
mov rcx, r14
call fcn.140024bc8
xor r12d, r12d
test rax, rax
je 0x1400103aa
mov qword [rsp + 0x30], r12
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r12
inc r8
cmp word [r14 + r8*2], r12w
jne 0x140010343
mov rdx, r14
lea rcx, [rsp + 0x30]
call fcn.14002c5f0
mov rdx, qword [rsp + 0x38]
mov rcx, r12
test rdx, rdx
je 0x14001038e
nop word [rax + rax]
mov rax, qword [rsp + 0x30]
cmp word [rax + rcx*2], 0x5c
jne 0x140010386
mov word [rax + rcx*2], r13w
mov rdx, qword [rsp + 0x38]
inc rcx
cmp rcx, rdx
jb 0x140010370
mov rdx, qword [rsp + 0x30]
mov rcx, r15
call fcn.14002b830
lea rcx, [rsp + 0x30]
call fcn.14002c730
jmp 0x1400103aa
xor r12d, r12d
movzx ecx, word [rbx + 0x7c]
mov r14d, 0xf000
movzx eax, cx
and ax, r14w
mov r14d, 0x4000
cmp ax, r14w
je 0x14001045a
mov rcx, r15
call fcn.14002b310
test rax, rax
je 0x14001040d
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp word [rax + rcx*2], 0
jne 0x1400103e0
test rcx, rcx
je 0x1400103fc
cmp word [rax + rcx*2 - 2], r13w
mov eax, 1
je 0x1400103ff
mov eax, r12d
movzx ecx, word [rbx + 0x7c]
test eax, eax
je 0x1400104ec
jmp 0x140010446
mov rcx, r15
call fcn.14002b240
test rax, rax
je 0x1400104e8
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x140010425
test rcx, rcx
je 0x1400104e8
cmp byte [rax + rcx - 1], r13b
jne 0x1400104e8
movzx ecx, word [rbx + 0x7c]
mov eax, 0xfff
and cx, ax
or cx, r14w
or cx, 0x49
mov word [rbx + 0x7c], cx
mov edx, 0xf000
and cx, dx
cmp cx, r14w
jne 0x140010576
mov rcx, r15
call fcn.14002b310
test rax, rax
je 0x14001050b
mov rcx, 0xffffffffffffffff
inc rcx
cmp word [rax + rcx*2], 0
jne 0x140010484
test rcx, rcx
je 0x140010576
cmp word [rax + rcx*2 - 2], r13w
je 0x140010576
mov rdx, rax
mov qword [rsp + 0x30], r12
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], r12
call fcn.14002c6b0
mov edx, r13d
lea rcx, [rsp + 0x30]
call fcn.14002bcf0
mov rdx, qword [rsp + 0x30]
mov rcx, r15
call fcn.14002b830
lea rcx, [rsp + 0x30]
call fcn.14002c730
jmp 0x140010576
movzx ecx, word [rbx + 0x7c]
mov edx, 0xf000
test dx, cx
jne 0x14001045f
mov eax, 0x8000
or cx, ax
mov word [rbx + 0x7c], cx
jmp 0x14001045f
mov rcx, r15
call fcn.14002b240
test rax, rax
je 0x140010576
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rax + rcx], 0
jne 0x140010520
test rcx, rcx
je 0x140010576
cmp byte [rax + rcx - 1], r13b
je 0x140010576
mov rdx, rax
mov qword [rsp + 0x30], r12
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x40], r12
call fcn.14002c640
movzx edx, r13b
lea rcx, [rsp + 0x30]
call fcn.14002bc80
mov rdx, qword [rsp + 0x30]
mov rcx, r15
call fcn.14002b820
lea rcx, [rsp + 0x30]
call fcn.14002c730
test byte [rbx + 0x82], 2
je 0x140010646
mov eax, 0xfff7
and word [rbx + 0x7e], ax
mov eax, dword [rbx + 0x78]
test eax, eax
jne 0x14001059b
mov eax, dword [rbp + 0xf]
mov dword [rbx + 0x78], eax
jmp 0x1400105c4
cmp byte [rdi + 0xa0], 0
jne 0x1400105c4
cmp eax, dword [rbp + 0xf]
je 0x1400105c4
lea r8, str.Inconsistent_CRC32_values
mov edx, 0x2a
mov rcx, rsi
call fcn.14002a390
mov dword [rbp + 0x7f], 0xffffffec
mov rax, qword [rbx + 0x28]
test rax, rax
jne 0x1400105d7
mov rax, qword [rbp - 0x41]
mov qword [rbx + 0x28], rax
jmp 0x140010600
mov r9, qword [rbp - 0x41]
cmp rax, r9
je 0x140010600
lea r8, str.Inconsistent_compressed_size:__jd_in_central_directory___jd_in_local_header
mov qword [rsp + 0x20], rax
mov edx, 0x2a
mov rcx, rsi
call fcn.14002a390
mov dword [rbp + 0x7f], 0xffffffec
mov rax, qword [rbx + 0x30]
test rax, rax
je 0x14001063e
mov ecx, 0xffffffff
cmp rax, rcx
je 0x14001063e
mov r9, qword [rbp - 0x39]
cmp rax, r9
je 0x140010646
lea r8, str.Inconsistent_uncompressed_size:__jd_in_central_directory___jd_in_local_header
mov qword [rsp + 0x20], rax
mov edx, 0x2a
mov rcx, rsi
call fcn.14002a390
mov dword [rbp + 0x7f], 0xffffffec
jmp 0x140010646
mov rax, qword [rbp - 0x39]
mov qword [rbx + 0x30], rax
movzx edx, word [rbx + 0x7c]
mov rcx, r15
call fcn.14002b780
mov rdx, qword [rbx + 0x40]
mov rcx, r15
call fcn.14002b960
mov rdx, qword [rbx + 0x38]
mov rcx, r15
call fcn.14002b6a0
mov rdx, qword [rbx + 0x60]
xor r8d, r8d
mov rcx, r15
call fcn.14002b790
mov rdx, qword [rbx + 0x70]
xor r8d, r8d
mov rcx, r15
call fcn.14002b5d0
mov rdx, qword [rbx + 0x68]
xor r8d, r8d
mov rcx, r15
call fcn.14002b530
mov rax, qword [rdi + 0x70]
movzx ecx, word [rax + 0x7c]
mov eax, 0xf000
and cx, ax
mov eax, 0xa000
cmp cx, ax
jne 0x1400108b0
mov r14, qword [rbx + 0x28]
mov qword [rbp - 0x71], r14
cmp r14, 0x10000
jle 0x1400106d7
lea r8, str.Zip_file_with_oversized_link_entry
mov edx, 0xffffffff
jmp 0x140010950
xor edx, edx
mov rcx, r15
call fcn.14002b880
mov rax, qword [rdi + 0x70]
mov r13, r14
mov qword [rsp + 0x48], r14
movzx ecx, byte [rax + 0x80]
test cl, cl
je 0x140010789
mov qword [rbp - 0x79], r12
cmp cl, 8
je 0x140010728
cmp cl, 0xe
jne 0x140010753
mov rax, qword [rbx + 0x28]
lea r8, [rsp + 0x48]
xor r9d, r9d
mov qword [rdi + 0x78], rax
lea rdx, [rbp - 0x79]
mov rcx, rsi
call fcn.14000f270
jmp 0x140010744
mov rax, qword [rbx + 0x28]
lea r8, [rsp + 0x48]
xor r9d, r9d
mov qword [rdi + 0x78], rax
lea rdx, [rbp - 0x79]
mov rcx, rsi
call fcn.14000ef40
test eax, eax
jne 0x140010753
mov r12, qword [rbp - 0x79]
mov r13, qword [rsp + 0x48]
jmp 0x14001079a
mov rax, qword [rdi + 0x70]
movzx ecx, byte [rax + 0x80]
call fcn.14000f5e0
mov r9d, ecx
mov qword [rsp + 0x20], rax
mov rcx, rsi
lea r8, str.Unsupported_ZIP_compression_method_during_decompression_of_link_entry___d:__s_
mov edx, 0x2a
call fcn.14002a390
mov eax, 0xffffffe7
jmp 0x14001095d
xor r8d, r8d
mov rdx, r14
mov rcx, rsi
call fcn.1400339c0
mov r12, rax
test r12, r12
jne 0x1400107b0
lea r8, str.Truncated_Zip_file
lea edx, [r12 - 1]
jmp 0x140010950
mov r14, qword [rdi + 0x1f00]
test r14, r14
jne 0x1400107de
mov rax, qword [rdi + 0x70]
mov ecx, 0x800
test word [rax + 0x7e], cx
je 0x1400107d7
mov r14, qword [rdi + 0x1f10]
test r14, r14
jne 0x1400107de
mov r14, qword [rdi + 0x1f08]
mov r9, r14
mov r8, r13
mov rdx, r12
mov rcx, r15
call fcn.14002bbd0
test eax, eax
je 0x140010883
call fcn.1400230d4
cmp dword [rax], 0xc
je 0x14001082a
cmp r14, qword [rdi + 0x1f10]
jne 0x14001082a
mov rax, qword [rdi + 0x70]
mov ecx, 0x800
test word [rax + 0x7e], cx
je 0x14001082a
xor r9d, r9d
mov r8, r13
mov rdx, r12
mov rcx, r15
call fcn.14002bbd0
call fcn.1400230d4
cmp dword [rax], 0xc
jne 0x140010845
lea r8, str.Cant_allocate_memory_for_Symlink
mov edx, 0xc
jmp 0x140010950
cmp r14, qword [rdi + 0x1f10]
jne 0x14001085d
mov rax, qword [rdi + 0x70]
mov ecx, 0x800
test word [rax + 0x7e], cx
jne 0x140010883
mov rcx, r14
call fcn.14002c330
mov r9, rax
lea r8, str.Symlink_cannot_be_converted_from__s_to_current_locale.
mov edx, 0x2a
mov rcx, rsi
call fcn.14002a390
mov dword [rbp + 0x7f], 0xffffffec
mov rdx, qword [rbp - 0x71]
xor r12d, r12d
mov rcx, rsi
mov qword [rbx + 0x28], r12
mov qword [rbx + 0x30], r12
call fcn.140033ff0
test rax, rax
jns 0x1400108c9
lea r8, str.Read_error_skipping_symlink_target_name
lea edx, [r12 - 1]
jmp 0x140010950
test byte [rbx + 0x7e], 8
je 0x1400108bd
cmp qword [rbx + 0x30], 0
jle 0x1400108c9
mov rdx, qword [rbx + 0x30]
mov rcx, r15
call fcn.14002b880
mov rax, qword [rbx + 0x28]
mov qword [rdi + 0x78], rax
test byte [rbx + 0x7e], 8
jne 0x1400108e4
cmp rax, 1
jge 0x1400108e4
mov byte [rdi + 0xa2], 1
movsx r11d, byte [rbp + 0x77]
mov eax, 0x66666667
imul r11d
mov qword [rdi + 8], r12
mov r10d, edx
sar r10d, 2
mov eax, r10d
shr eax, 0x1f
add r10d, eax
lea ecx, [r10 + r10*4]
add ecx, ecx
sub r11d, ecx
mov rcx, qword [rdi + 0x70]
movzx ecx, byte [rcx + 0x80]
call fcn.14000f5e0
mov r9d, r11d
mov qword [rsp + 0x20], rax
mov r8d, r10d
lea rdx, str.ZIP__d._d___s_
mov rcx, rdi
call fcn.140031ce0
mov rcx, qword [rdi]
mov eax, dword [rbp + 0x7f]
mov qword [rsi + 0x18], rcx
jmp 0x14001095d
lea r8, str.Truncated_ZIP_file_header
mov edx, 0x2a
mov rcx, rsi
call fcn.14002a390
mov eax, 0xffffffe2
mov r13, qword [rsp + 0x130]
add rsp, 0xf0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret