Function at 0x14006d330
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x528]
sub rsp, 0x638
mov qword [rbp + 0x330], 0xfffffffffffffffe
mov rax, qword [0x14010c598]
xor rax, rsp
mov qword [rbp + 0x510], rax
mov qword [rbp + 0x90], r9
mov r14, r8
mov qword [rbp - 0x50], r8
mov r13, rdx
mov qword [rbp - 0x68], rdx
mov rsi, rcx
mov qword [rbp + 0x108], rcx
mov rax, qword [rbp + 0x590]
mov qword [rbp - 0x70], rax
mov rbx, qword [rbp + 0x598]
mov qword [rbp - 0x20], rbx
mov r15, qword [rbp + 0x5a0]
mov qword [rbp + 0xe8], r15
mov rdi, qword [rbp + 0x5a8]
mov qword [rbp - 0x58], rdi
mov rax, qword [rbp + 0x5b0]
mov qword [rbp + 0xf8], rax
mov rax, qword [rdi + 0x20]
mov ecx, 1
test rax, rax
cmove rax, rcx
mov qword [rbp + 0x190], rax
xor r12d, r12d
mov qword [rbp + 0x18], r12
mov rax, qword [r15]
lea r8, [rbp + 0x18]
lea rdx, [0x1400dc5f0]
mov rcx, r15
mov rax, qword [rax]
call qword [case.0x140046c11.0]
mov qword [rbp + 0x50], r12
mov rax, qword [r15]
lea r8, [rbp + 0x50]
lea rdx, [0x1400dc560]
mov rcx, r15
mov rax, qword [rax]
call qword [case.0x140046c11.0]
test r13, r13
je 0x14006d44e
mov r9, qword [r13 + 0x168]
test r9, r9
je 0x14006d44e
cmp byte [rdi + 0x32], r12b
jne 0x14006d44e
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov rdx, rbx
mov rcx, rsi
call fcn.14006fde0
mov edi, eax
test eax, eax
jne 0x14006fbf0
xor r11d, r11d
mov qword [rbp + 0x28], r11
mov r10d, r11d
mov qword [rbp - 0x10], r11
mov edi, r11d
mov qword [rbp - 0x28], r11
xor r12b, r12b
mov byte [rbp - 0x80], r12b
mov qword [rbp + 0x68], r11
mov qword [rbp + 0x70], r11
mov qword [rbp + 8], r11
mov esi, r11d
mov dword [rbp - 0x7c], r11d
mov qword [rbp + 0x10], r11
xor r15b, r15b
mov byte [rbp - 0x78], r15b
mov rcx, qword [rbp - 0x58]
movzx eax, byte [rcx + 0x10]
mov byte [rbp - 0x7f], al
mov ebx, 0xffffffff
test al, al
je 0x14006d50e
mov rax, qword [rcx]
mov edx, r11d
mov r8d, dword [rax + 8]
test r8d, r8d
je 0x14006d50e
mov r9, qword [rax]
nop
mov eax, edx
mov rcx, qword [r9 + rax*8]
mov rax, qword [rcx + 0x10]
cmp rax, rbx
ja 0x14006d501
cmp eax, 0x3030205
ja 0x14006d4e5
je 0x14006d50a
sub eax, 3
je 0x14006d50a
sub eax, 0x202ff
je 0x14006d50a
sub eax, 2
je 0x14006d50a
sub eax, 0x300fdff
je 0x14006d50a
cmp eax, 0x18
jmp 0x14006d4ff
cmp eax, 0x3030401
je 0x14006d50a
cmp eax, 0x3030501
je 0x14006d50a
cmp eax, 0x3030701
je 0x14006d50a
cmp eax, 0x3030805
je 0x14006d50a
inc edx
cmp edx, r8d
jae 0x14006d50e
jmp 0x14006d4b0
mov byte [rbp - 0x7f], 0
test r13, r13
je 0x14006d9bb
mov ebx, dword [r13 + 0x90]
xor ecx, ecx
call fcn.1400c79bc
xor eax, eax
mov qword [rbp + 0x28], rax
mov eax, 4
mul rbx
mov rbx, 0xffffffffffffffff
cmovo rax, rbx
mov rcx, rax
call fcn.1400c79c4
mov qword [rbp + 0x28], rax
xor r11d, r11d
mov edx, r11d
cmp dword [r13 + 0x90], r11d
jbe 0x14006d574
nop dword [rax]
mov ecx, edx
mov rax, qword [rbp + 0x28]
mov dword [rax + rcx*4], ebx
inc edx
cmp edx, dword [r13 + 0x90]
jb 0x14006d560
mov edx, r11d
cmp dword [r14 + 8], r11d
jbe 0x14006d5a0
nop dword [rax]
mov ecx, edx
mov rax, qword [r14]
mov rcx, qword [rax + rcx*8]
mov eax, dword [rcx]
cmp eax, ebx
je 0x14006d598
mov ecx, eax
mov rax, qword [rbp + 0x28]
mov dword [rax + rcx*4], edx
inc edx
cmp edx, dword [r14 + 8]
jb 0x14006d580
mov r14d, r11d
mov dword [rbp - 0x74], r11d
cmp dword [r13 + 4], r11d
jbe 0x14006d9b4
mov qword [rbp + 0x30], rdi
mov r10d, r11d
mov r15d, r11d
mov rax, qword [r13 + 0x30]
mov ebx, r14d
lea rcx, [rbx*4]
mov qword [rbp - 0x40], rcx
mov edi, dword [rax + rcx]
mov dword [rbp - 0x18], edi
mov r12, r11
mov rax, qword [r13 + 0x198]
mov r9d, dword [rax + rcx]
test edi, edi
je 0x14006d98c
mov r11, qword [r13 + 0x88]
mov rbx, qword [rbp - 0x50]
nop word [rax + rax]
mov ecx, r9d
mov edx, r9d
add rdx, rdx
cmp byte [r11 + rdx*8 + 0xc], 0
je 0x14006d638
inc r10d
mov rax, qword [rbp + 0x28]
mov r8d, dword [rax + rcx*4]
test r8d, r8d
js 0x14006d638
lfence
mov rax, qword [rbx]
mov rcx, qword [rax + r8*8]
cmp byte [rcx + 0x3c], 0
jne 0x14006d638
inc r15d
add r12, qword [r11 + rdx*8]
inc r9d
cmp r10d, edi
jb 0x14006d600
test r15d, r15d
mov ebx, r14d
je 0x14006d986
mov dword [rbp + 0x38], r14d
mov dword [rbp + 0x3c], r15d
xor esi, esi
mov qword [rbp + 0x1b8], rsi
mov dword [rbp + 0x1c0], esi
mov qword [rbp + 0x1c8], rsi
mov dword [rbp + 0x1d0], esi
mov qword [rbp + 0x1d8], rsi
mov dword [rbp + 0x1e0], esi
lea r8, [rbp + 0x1b8]
mov edx, r14d
mov rcx, r13
call fcn.140065260
mov rax, qword [r13 + 0x50]
movzx r10d, byte [rax + rbx]
mov dword [rbp + 0x1e8], r10d
mov ecx, esi
mov r8, qword [rbp + 0x1b8]
mov edx, dword [rbp + 0x1c0]
test edx, edx
je 0x14006d6d6
nop dword [rax]
nop word [rax + rax]
mov eax, ecx
shl rax, 5
cmp qword [rax + r8], 0x6f10701
je 0x14006d6e9
inc ecx
cmp ecx, edx
jb 0x14006d6c0
xor r13b, r13b
cmp byte [rbp - 0x7f], 0
jne 0x14006d6ee
cmp r15d, edi
je 0x14006d6ee
xor r9b, r9b
jmp 0x14006d6f1
mov r13b, 1
jmp 0x14006d6d9
mov r9b, 1
mov qword [rbp + 0x58], rsi
mov ecx, esi
test edx, edx
je 0x14006d716
nop dword [rax + rax]
mov eax, ecx
shl rax, 5
cmp qword [rax + r8], 0x6f10701
je 0x14006d75a
inc ecx
cmp ecx, edx
jb 0x14006d700
xor al, al
mov byte [rbp + 0x60], al
test r9b, r9b
je 0x14006d7f0
mov rcx, r10
shl rcx, 5
mov rax, qword [rcx + r8]
cmp rax, 3
jne 0x14006d75e
cmp qword [rcx + r8 + 0x10], 1
jne 0x14006d7f0
mov rax, qword [rcx + r8 + 8]
movzx ecx, byte [rax]
inc ecx
mov dword [rbp + 0x5c], ecx
mov dword [rbp + 0x58], 3
jmp 0x14006d7f0
mov al, 1
jmp 0x14006d718
cmp rax, 0x3030401
ja 0x14006d785
je 0x14006d79d
mov rcx, rax
sub rcx, 0x3030103
je 0x14006d79d
sub rcx, 0x18
je 0x14006d79d
cmp rcx, 0xea
je 0x14006d79d
jmp 0x14006d7f0
cmp rax, 0x3030501
je 0x14006d79d
cmp rax, 0x3030701
je 0x14006d79d
cmp rax, 0x3030805
jne 0x14006d7f0
mov dword [rbp + 0x58], eax
cmp eax, 0x303011b
jne 0x14006d7b3
mov dword [rbp + 0x58], 0x3030103
mov dword [rbp + 0x5c], esi
jmp 0x14006d7f0
cmp eax, 0x3030401
jne 0x14006d7c3
mov dword [rbp + 0x5c], 0x10
jmp 0x14006d7f0
cmp eax, 0x3030501
je 0x14006d7e9
cmp eax, 0x3030205
je 0x14006d7e9
cmp eax, 0x3030805
je 0x14006d7e9
cmp eax, 0x3030701
jne 0x14006d7ae
mov eax, 2
mov dword [rbp + 0x5c], eax
jmp 0x14006d7f0
mov dword [rbp + 0x5c], 4
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x68]
call fcn.14006bdc0
mov edi, eax
mov esi, dword [rbp + 0x10]
cmp eax, esi
jb 0x14006d85d
xor r14d, r14d
nop dword [rax]
mov ecx, 0x20
call fcn.1400c7980
mov rbx, rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14006d837
mov qword [rax], r14
mov qword [rax + 8], r14
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], r14
jmp 0x14006d83a
mov rbx, r14
lea rcx, [rbp + 8]
call fcn.140002470
mov esi, dword [rbp + 0x10]
mov rcx, qword [rbp + 8]
mov qword [rcx + rsi*8], rbx
inc esi
mov dword [rbp + 0x10], esi
cmp edi, esi
jae 0x14006d810
mov r14d, dword [rbp - 0x74]
jmp 0x14006d861
mov rcx, qword [rbp + 8]
mov rbx, qword [rcx + rdi*8]
mov ecx, dword [rbx + 0x1c]
cmp dword [rbx + 0x18], ecx
jne 0x14006d8cb
mov eax, ecx
shr eax, 2
lea r14d, [rcx + 1]
add r14d, eax
mov ecx, r14d
mov eax, 8
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov rdi, rax
mov eax, dword [rbx + 0x18]
test eax, eax
je 0x14006d8b4
mov r8d, eax
shl r8, 3
mov rdx, qword [rbx + 0x10]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x10]
call fcn.1400c79bc
mov qword [rbx + 0x10], rdi
mov dword [rbx + 0x1c], r14d
mov r14d, dword [rbp - 0x74]
jmp 0x14006d8cf
mov rdi, qword [rbx + 0x10]
mov ecx, dword [rbx + 0x18]
mov rax, qword [rbp + 0x38]
mov qword [rdi + rcx*8], rax
inc dword [rbx + 0x18]
cmp r15d, dword [rbp - 0x18]
jne 0x14006d90b
mov r13, qword [rbp - 0x68]
mov r8, qword [r13 + 8]
mov rdx, qword [r13 + 0x48]
lea eax, [r14 + 1]
mov ecx, dword [rdx + rax*4]
mov rax, qword [rbp - 0x40]
mov eax, dword [rax + rdx]
mov rcx, qword [r8 + rcx*8]
sub rcx, qword [r8 + rax*8]
add qword [rbp - 0x10], rcx
jmp 0x14006d934
mov byte [rbp - 0x78], 1
add qword [rbp - 0x10], r12
mov rcx, r12
cmp qword [rbp + 0x30], r12
cmovae rcx, qword [rbp + 0x30]
mov qword [rbp - 0x28], rcx
test r13b, r13b
mov r13, qword [rbp - 0x68]
je 0x14006d934
mov byte [rbp - 0x80], 1
mov qword [rbp - 0x28], rcx
mov rcx, qword [rbp + 0x1d8]
call fcn.1400c79bc
mov rcx, qword [rbp + 0x1c8]
call fcn.1400c79bc
mov rcx, qword [rbp + 0x1b8]
test rcx, rcx
je 0x14006d989
lea rbx, [rcx - 8]
lea r9, [0x140026880]
mov r8, qword [rbx]
mov edx, 0x20
call fcn.1400c78b0
mov rdx, qword [rbx]
shl rdx, 5
add rdx, 8
mov rcx, rbx
call fcn.1400c79cc
nop
jmp 0x14006d989
mov esi, dword [rbp + 0x10]
xor r11d, r11d
inc r14d
mov dword [rbp - 0x74], r14d
cmp r14d, dword [r13 + 4]
mov rdi, qword [rbp - 0x28]
jb 0x14006d5b1
mov dword [rbp - 0x7c], esi
movzx r15d, byte [rbp - 0x78]
movzx r12d, byte [rbp - 0x80]
mov r10, qword [rbp - 0x10]
jmp 0x14006d9b7
mov r10, r11
mov r14, qword [rbp - 0x50]
mov rax, r11
mov qword [rbp + 0x48], rax
mov r13, qword [rbp - 0x58]
cmp qword [rbp + 0x190], 1
jbe 0x14006d9dc
cmp qword [r13 + 0x28], 0
je 0x14006d9dc
mov r9b, 1
jmp 0x14006d9df
xor r9b, r9b
mov ecx, dword [r14 + 8]
test ecx, ecx
je 0x14006da23
mov rdx, qword [r14]
mov r8d, ecx
nop dword [rax]
mov rcx, qword [rdx]
cmp byte [rcx + 0x3c], 0
je 0x14006da15
mov rcx, qword [rcx + 0x20]
add r10, rcx
test r9b, r9b
je 0x14006da0a
add rax, rcx
jmp 0x14006da11
cmp rax, rcx
cmovb rax, rcx
mov qword [rbp + 0x48], rax
add rdx, 8
sub r8, 1
jne 0x14006d9f0
mov qword [rbp - 0x10], r10
cmp rax, rdi
cmovb rax, rdi
mov qword [rbp + 0x48], rax
mov rbx, qword [rbp + 0xe8]
mov rax, qword [rbx]
mov rdx, r10
mov rcx, rbx
mov rax, qword [rax + 0x18]
call qword [case.0x140046c11.0]
mov edi, eax
test eax, eax
je 0x14006da59
mov r15d, 0xffffffff
jmp 0x14006fb93
mov ecx, 0x48
call fcn.1400c7980
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14006da7b
mov rcx, rax
call fcn.1400154b0
mov r14, rax
xor edi, edi
jmp 0x14006da80
xor edi, edi
mov r14d, edi
mov qword [rbp - 0x48], r14
mov qword [rbp + 0x338], r14
test r14, r14
je 0x14006daa1
mov rax, qword [r14]
mov rcx, r14
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
nop
mov r8b, 1
mov rdx, rbx
mov rcx, r14
call fcn.1400154e0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x1f0], xmm0
mov qword [rbp + 0x200], rdi
cmp byte [r13 + 0x33], 0
je 0x14006dae7
lea rcx, [rbp + 0x1f0]
call fcn.140015710
mov edi, eax
test eax, eax
je 0x14006dae5
mov r15d, 0xffffffff
jmp 0x14006fb58
xor edi, edi
movzx ebx, byte [r13 + 0x33]
mov qword [rbp + 0x228], rdi
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x230], xmm0
lea rax, vtable.NArchive::N7z::CThreadDecoder.0
mov qword [rbp + 0x220], rax
movzx edx, bl
lea rcx, [rbp + 0x248]
call fcn.140059c20
nop
mov qword [rbp + 0x2e8], rdi
mov qword [rbp + 0x2f8], rdi
mov qword [rbp + 0x318], rdi
test bl, bl
je 0x14006dbc3
mov byte [rbp + 0x320], 0
mov eax, 1
mov dword [rbp + 0x324], eax
lea ecx, [rax + 0x4f]
call fcn.1400c7980
mov rbx, rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14006db7a
mov qword [rax + 0x30], rdi
mov qword [rax + 0x38], rdi
mov dword [rax + 0x40], edi
lea rax, vtable.NArchive::N7z::CFolderOutStream2.0
mov qword [rbx], rax
mov qword [rbx + 0x48], rdi
jmp 0x14006db7d
mov rbx, rdi
mov qword [rbp + 0x2f0], rbx
test rbx, rbx
je 0x14006db99
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov rcx, qword [rbp + 0x2f8]
test rcx, rcx
je 0x14006dbb2
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [rbp + 0x2f8], rbx
mov dword [rbp + 0x2e4], 0x80004005
cmp byte [r13 + 0x33], 0
je 0x14006dbee
test r15b, r15b
je 0x14006dbee
lea rcx, [rbp + 0x220]
call fcn.140016490
mov edi, eax
test eax, eax
je 0x14006dbec
mov r15d, 0xffffffff
jmp 0x14006faa3
xor edi, edi
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xb8], xmm0
mov qword [rbp + 0xc8], rdi
mov word [rbp + 0xd0], 1
xor dil, dil
mov byte [rbp + 0xd2], dil
mov ecx, dword [r13 + 0x14]
test ecx, ecx
jne 0x14006dc31
mov word [rbp + 0xd0], cx
mov byte [rbp + 0xd2], cl
mov rbx, qword [rbp + 0xb8]
jmp 0x14006dc81
mov rbx, qword [rbp + 0x18]
test rbx, rbx
je 0x14006dc4e
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov ecx, dword [r13 + 0x14]
mov qword [rbp + 0xb8], rbx
test ecx, ecx
jle 0x14006dc81
mov byte [rbp + 0xd0], 1
cmp ecx, 7
jl 0x14006dc81
mov byte [rbp + 0xd1], 1
movzx eax, dil
cmp ecx, 9
mov ecx, 1
cmovge eax, ecx
mov byte [rbp + 0xd2], al
mov r13, qword [r13]
xor edi, edi
mov r14d, edi
mov r15, qword [rbp - 0x50]
cmp dword [r15 + 8], edi
jbe 0x14006de13
nop dword [rax + rax]
mov ecx, r14d
mov rax, qword [r15]
mov r8, qword [rax + rcx*8]
cmp byte [r8 + 0x3c], 0
je 0x14006ddff
cmp byte [r8 + 0x3f], 0
jne 0x14006ddff
cmp byte [r8 + 0x3e], 0
jne 0x14006ddff
cmp qword [r8 + 0x20], 0
je 0x14006ddff
mov qword [rbp + 0x178], 0
mov byte [rbp + 0x180], 0
cmp byte [rbp - 0x7f], 0
je 0x14006dd0e
lea r9, [rbp + 0x178]
mov edx, r14d
lea rcx, [rbp + 0xb8]
call fcn.14006bb30
mov edi, eax
test eax, eax
jne 0x14006de7c
movzx eax, byte [r13 + 0x29]
mov byte [rbp + 0x180], al
lea rdx, [rbp + 0x178]
lea rcx, [rbp + 0x68]
call fcn.14006bdc0
mov edi, eax
cmp eax, esi
jb 0x14006dd85
xor r15d, r15d
mov ecx, 0x20
call fcn.1400c7980
mov rbx, rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14006dd59
mov qword [rax], r15
mov qword [rax + 8], r15
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], r15
jmp 0x14006dd5c
mov rbx, r15
lea rcx, [rbp + 8]
call fcn.140002470
mov esi, dword [rbp + 0x10]
mov r12, qword [rbp + 8]
mov qword [r12 + rsi*8], rbx
inc esi
mov dword [rbp - 0x7c], esi
mov dword [rbp + 0x10], esi
cmp edi, esi
jae 0x14006dd32
movzx r12d, byte [rbp - 0x80]
mov r15, qword [rbp - 0x50]
mov rcx, qword [rbp + 8]
mov rbx, qword [rcx + rdi*8]
mov ecx, dword [rbx + 0xc]
cmp dword [rbx + 8], ecx
jne 0x14006ddf0
mov eax, ecx
shr eax, 2
lea r15d, [rcx + 1]
add r15d, eax
mov ecx, r15d
mov eax, 4
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov rdi, rax
mov eax, dword [rbx + 8]
test eax, eax
je 0x14006dddb
mov r8d, eax
shl r8, 2
mov rdx, qword [rbx]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx]
call fcn.1400c79bc
mov qword [rbx], rdi
mov dword [rbx + 0xc], r15d
mov r15, qword [rbp - 0x50]
jmp 0x14006ddf3
mov rdi, qword [rbx]
mov eax, dword [rbx + 8]
mov dword [rdi + rax*4], r14d
inc dword [rbx + 8]
xor edi, edi
inc r14d
cmp r14d, dword [r15 + 8]
jb 0x14006dca0
mov rbx, qword [rbp + 0xb8]
mov rcx, qword [rbp + 0xc0]
call fcn.1400c79bc
nop
test rbx, rbx
je 0x14006de36
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov qword [rbp + 0x38], rdi
mov qword [rbp + 0xf0], rdi
test r12b, r12b
je 0x14006df90
mov ecx, 0x20
call fcn.1400c7980
mov rbx, rax
mov qword [rbp + 0x38], rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14006deae
mov dword [rax + 8], edi
lea rax, vtable.NArchive::N7z::CCryptoGetTextPassword.0
mov qword [rbx], rax
lea rcx, [rbx + 0x10]
call fcn.1400042b0
jmp 0x14006deb5
mov rcx, qword [rbp + 0xc0]
call fcn.1400c79bc
nop
mov rcx, qword [rbp + 0xb8]
test rcx, rcx
je 0x14006dea3
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov r15d, 0xffffffff
jmp 0x14006fa9f
mov rbx, rdi
mov qword [rbp + 0x38], rbx
test rbx, rbx
je 0x14006deca
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov qword [rbp + 0xf0], rbx
test rbx, rbx
je 0x14006dee6
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov rcx, qword [rbp + 0x318]
test rcx, rcx
je 0x14006deff
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [rbp + 0x318], rbx
mov rdx, qword [rbp - 0x58]
mov rdx, qword [rdx]
cmp byte [rdx + 0x29], 0
je 0x14006df22
add rdx, 0x30
lea rcx, [rbx + 0x10]
call fcn.140004400
jmp 0x14006df90
mov rcx, qword [rbp + 0xf8]
test rcx, rcx
jne 0x14006df3e
mov edi, 0x80004001
mov r15d, 0xffffffff
jmp 0x14006fa85
mov qword [rbp - 0x38], rdi
mov rax, qword [rcx]
lea rdx, [rbp - 0x38]
mov rax, qword [rax + 0x18]
call qword [case.0x140046c11.0]
mov edi, eax
test eax, eax
je 0x14006df6e
mov rcx, qword [rbp - 0x38]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov r15d, 0xffffffff
jmp 0x14006fa85
mov rax, qword [rbp - 0x38]
test rax, rax
je 0x14006df87
lea rcx, [rbx + 0x10]
mov rdx, rax
call fcn.1400045f0
mov rax, qword [rbp - 0x38]
mov rcx, rax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor r8d, r8d
mov rdx, qword [rbp - 0x20]
mov rbx, qword [rbp + 0x90]
mov rcx, rbx
call fcn.1400686f0
mov edi, eax
test eax, eax
jne 0x14006dfba
mov rcx, rbx
call fcn.140068c60
mov edi, eax
test eax, eax
je 0x14006dfc5
mov r15d, 0xffffffff
jmp 0x14006fa85
xor eax, eax
mov r15d, eax
mov qword [rbp + 0x110], rax
mov ebx, eax
mov qword [rbp + 0x118], rax
mov edi, eax
mov r14d, eax
mov r12, qword [rbp - 0x50]
cmp dword [r12 + 8], eax
jbe 0x14006e0c1
mov rsi, qword [rbp - 0x68]
nop dword [rax]
nop word [rax + rax]
mov ecx, r14d
mov rax, qword [r12]
mov rdx, qword [rax + rcx*8]
cmp byte [rdx + 0x3c], 0
je 0x14006e029
cmp byte [rdx + 0x3f], 0
jne 0x14006e043
cmp byte [rdx + 0x3e], 0
jne 0x14006e043
cmp qword [rdx + 0x20], 0
je 0x14006e043
jmp 0x14006e0b0
mov eax, dword [rdx]
cmp eax, 0xffffffff
je 0x14006e043
mov ecx, eax
add rcx, rcx
mov rax, qword [rsi + 0x88]
cmp byte [rax + rcx*8 + 0xc], 0
jne 0x14006e0b0
cmp ebx, edi
jne 0x14006e0a2
mov eax, edi
shr eax, 2
inc eax
add edi, eax
mov ecx, edi
mov eax, 4
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov r12, rax
test ebx, ebx
je 0x14006e086
mov r8d, ebx
shl r8, 2
mov rdx, r15
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r15
call fcn.1400c79bc
mov r15, r12
mov qword [rbp + 0x110], r12
mov dword [rbp + 0x11c], edi
mov r12, qword [rbp - 0x50]
mov eax, ebx
mov dword [r15 + rax*4], r14d
inc ebx
mov dword [rbp + 0x118], ebx
inc r14d
cmp r14d, dword [r12 + 8]
jb 0x14006e000
mov esi, dword [rbp - 0x7c]
mov r8, r12
lea rdx, [0x14006b6c0]
lea rcx, [rbp + 0x110]
call fcn.140043cb0
mov r13, qword [rbp - 0x70]
test ebx, ebx
je 0x14006e219
mov rdi, r15
mov r14d, ebx
mov r15, qword [rbp - 0x68]
nop dword [rax]
mov ecx, dword [rdi]
mov rax, qword [r12]
mov rbx, qword [rax + rcx*8]
lea rcx, [rbp + 0x78]
call fcn.1400042b0
nop
cmp byte [rbx + 0x3d], 0
je 0x14006e1bd
mov eax, dword [rbx + 0x38]
mov dword [rbp + 0x4c0], eax
movzx eax, byte [rbx + 0x40]
mov byte [rbp + 0x4c8], al
mov rax, qword [rbx + 8]
mov qword [rbp + 0x4a0], rax
movzx eax, byte [rbx + 0x41]
mov byte [rbp + 0x4c4], al
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x4a8], rax
movzx eax, byte [rbx + 0x42]
mov byte [rbp + 0x4c5], al
mov rax, qword [rbx + 0x18]
mov qword [rbp + 0x4b0], rax
movzx eax, byte [rbx + 0x43]
mov byte [rbp + 0x4c6], al
movzx eax, byte [rbx + 0x3e]
mov byte [rbp + 0x4c9], al
mov byte [rbp + 0x4c7], 0
mov rax, qword [rbx + 0x20]
mov qword [rbp + 0x460], rax
movzx eax, byte [rbx + 0x3f]
mov byte [rbp + 0x46d], al
cmp byte [rbx + 0x3f], 0
jne 0x14006e1a0
cmp byte [rbx + 0x3e], 0
jne 0x14006e1a0
cmp qword [rbx + 0x20], 0
mov byte [rbp + 0x46c], 1
jne 0x14006e1a7
mov byte [rbp + 0x46c], 0
mov byte [rbp + 0x46e], 0
lea rdx, [rbx + 0x28]
lea rcx, [rbp + 0x78]
call fcn.140004400
jmp 0x14006e1e0
lea r9, [rbp + 0x4a0]
lea r8, [rbp + 0x460]
mov edx, dword [rbx]
mov rcx, r15
call fcn.14006b9f0
lea r8, [rbp + 0x78]
mov edx, dword [rbx]
call fcn.140064aa0
lea r9, [rbp + 0x78]
lea r8, [rbp + 0x4a0]
lea rdx, [rbp + 0x460]
mov rcx, r13
call fcn.1400684d0
nop
mov rcx, qword [rbp + 0x78]
call fcn.1400c79bc
add rdi, 4
sub r14, 1
jne 0x14006e0f0
mov r15, qword [rbp + 0x110]
mov rcx, r15
call fcn.1400c79bc
mov rax, qword [rbp - 0x48]
xor r14d, r14d
mov qword [rax + 0x28], r14
mov ecx, r14d
mov ebx, dword [rbp + 0x70]
test ebx, ebx
je 0x14006e24c
mov rax, qword [rbp + 0x68]
add rax, 0xc
nop
mov dword [rax], ecx
inc ecx
lea rax, [rax + 0x10]
cmp ecx, ebx
jb 0x14006e240
lea rcx, [rbp + 0x68]
call fcn.14006cf40
mov eax, r14d
mov dword [rbp - 0x18], eax
test ebx, ebx
je 0x14006f92b
nop dword [rax]
nop word [rax + rax]
mov esi, eax
shl rsi, 4
add rsi, qword [rbp + 0x68]
mov rax, qword [rbp - 0x58]
mov rdi, qword [rax]
mov rdx, rdi
lea rcx, [rbp + 0x120]
call fcn.14006b0e0
nop
mov qword [rbp + 0x130], r14
mov qword [rbp + 0x138], 0
mov r14d, dword [rdi + 0x18]
test r14d, r14d
je 0x14006e2f1
mov eax, 0xc
mul r14
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov qword [rbp + 0x130], rax
mov dword [rbp + 0x138], r14d
mov dword [rbp + 0x13c], r14d
lea r8, [r14 + r14*2]
shl r8, 2
mov rdx, qword [rdi + 0x10]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
nop
movzx eax, byte [rdi + 0x20]
mov byte [rbp + 0x140], al
movzx eax, byte [rdi + 0x21]
mov byte [rbp + 0x141], al
mov eax, dword [rdi + 0x24]
mov dword [rbp + 0x144], eax
movzx eax, byte [rdi + 0x28]
mov byte [rbp + 0x148], al
movzx eax, byte [rdi + 0x29]
mov byte [rbp + 0x149], al
lea rdx, [rdi + 0x30]
lea rcx, [rbp + 0x150]
call fcn.140004020
nop
mov r14, qword [rbp - 0x58]
cmp byte [r14 + 0x11], 0
je 0x14006e34a
cmp byte [r14 + 0x33], 0
je 0x14006e34a
mov r8b, 1
jmp 0x14006e34d
xor r8d, r8d
mov rdx, rsi
lea rcx, [rbp + 0x120]
call fcn.14006bf40
mov edi, eax
test eax, eax
jne 0x14006fa1e
cmp byte [rsi + 8], al
je 0x14006e52e
cmp byte [rbp + 0x149], al
jne 0x14006e397
mov rax, qword [rbp + 0x38]
test rax, rax
je 0x14006e390
lea rdx, [rax + 0x10]
lea rcx, [rbp + 0x150]
call fcn.140004400
mov byte [rbp + 0x149], 1
xor edi, edi
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x350]
call fcn.14005b5b0
nop
mov eax, dword [rsi + 0xc]
mov rcx, qword [rbp + 8]
mov r8, qword [rcx + rax*8]
mov qword [rbp - 0x28], r8
mov eax, edi
mov dword [rbp - 0x74], eax
cmp dword [r8 + 0x18], 0
jbe 0x14006f072
mov r12, qword [rbp - 0x68]
mov ecx, eax
mov rax, qword [r8 + 0x10]
lea rdx, [rax + rcx*8]
mov qword [rbp + 0x40], rdx
mov r14d, dword [rdx]
mov dword [rbp - 0x20], r14d
mov rcx, qword [r12 + 0x30]
lea r15, [r14*4]
mov qword [rbp + 0x30], r15
mov r13d, dword [r15 + rcx]
mov dword [rbp + 0xf8], r13d
cmp dword [rdx + 4], r13d
jne 0x14006e76e
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14006e496
mov rax, qword [rcx]
mov r9d, 3
mov r8d, r14d
lea edx, [r9 - 1]
mov rax, qword [rax + 0x20]
call qword [case.0x140046c11.0]
mov edi, eax
test eax, eax
jne 0x14006fa11
xor eax, eax
mov esi, eax
mov rax, qword [r12 + 0x198]
mov ebx, dword [r15 + rax]
test r13d, r13d
je 0x14006e496
mov ecx, ebx
add rcx, rcx
mov rax, qword [r12 + 0x88]
cmp byte [rax + rcx*8 + 0xc], 0
je 0x14006e48f
inc esi
mov rcx, qword [rbp + 0x18]
mov rax, qword [rcx]
mov r9d, 3
mov r8d, ebx
lea edx, [r9 - 2]
mov rax, qword [rax + 0x20]
call qword [case.0x140046c11.0]
mov edi, eax
test eax, eax
jne 0x14006fa11
inc ebx
cmp esi, r13d
jb 0x14006e451
mov r8, qword [r12 + 8]
mov rdx, qword [r12 + 0x48]
mov eax, dword [r15 + rdx]
mov r9, qword [r8 + rax*8]
lea eax, [r14 + 1]
lea r13, [rax*4]
mov qword [rbp - 0x40], r13
mov eax, dword [rdx + r13]
mov rbx, qword [r8 + rax*8]
sub rbx, r9
mov r8, qword [r12 + 0x178]
add r8, r9
mov rsi, qword [rbp - 0x48]
mov qword [rsp + 0x20], rsi
mov r9, rbx
mov rax, qword [rbp + 0x90]
mov rdx, qword [rax + 0x80]
mov rcx, qword [rbp + 0x108]
call fcn.14006fde0
mov edi, eax
test eax, eax
jne 0x14006fa11
add qword [rsi + 0x28], rbx
lea ecx, [rax + 0x30]
call fcn.1400c7980
mov rdi, rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14006e54c
xor eax, eax
mov qword [rdi], rax
mov dword [rdi + 8], eax
mov qword [rdi + 0x10], rax
mov dword [rdi + 0x18], eax
mov qword [rdi + 0x20], rax
mov dword [rdi + 0x28], eax
jmp 0x14006e54f
mov byte [rbp + 0x149], 0
xor edi, edi
mov dword [rbp + 0x158], edi
mov rax, qword [rbp + 0x150]
mov word [rax], di
jmp 0x14006e399
mov rdi, rax
mov rbx, qword [rbp - 0x70]
lea rcx, [rbx + 0x70]
call fcn.140002470
mov ecx, dword [rbx + 0x78]
mov rax, qword [rbx + 0x70]
mov qword [rax + rcx*8], rdi
inc dword [rbx + 0x78]
mov r8, rdi
mov edx, r14d
mov rcx, r12
call fcn.140065260
mov rax, qword [r12 + 0x48]
mov r12d, dword [r15 + rax]
cmp dword [rdi + 0x28], 0
jbe 0x14006e642
mov eax, r12d
mov r9, rbx
mov r8d, dword [rbx + 0x48]
nop word [rax + rax]
mov rcx, qword [rbp - 0x68]
mov rdx, qword [rcx + 8]
lea ebx, [rax + 1]
mov r15, qword [rdx + rbx*8]
sub r15, qword [rdx + rax*8]
mov ecx, dword [r9 + 0x4c]
cmp r8d, ecx
jne 0x14006e61c
mov eax, ecx
shr eax, 2
lea r14d, [rcx + 1]
add r14d, eax
mov ecx, r14d
mov eax, 8
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov rsi, rax
mov r13, qword [rbp - 0x70]
mov eax, dword [r13 + 0x48]
test eax, eax
je 0x14006e608
mov r8d, eax
shl r8, 3
mov rdx, qword [r13 + 0x40]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r13 + 0x40]
call fcn.1400c79bc
mov r9, r13
mov qword [r13 + 0x40], rsi
mov dword [r13 + 0x4c], r14d
mov ecx, dword [r9 + 0x48]
mov rax, qword [r9 + 0x40]
mov qword [rax + rcx*8], r15
inc dword [r9 + 0x48]
mov r8d, dword [r9 + 0x48]
mov eax, ebx
sub ebx, r12d
cmp ebx, dword [rdi + 0x28]
jb 0x14006e5a0
mov r13, qword [rbp - 0x40]
mov r12, qword [rbp - 0x68]
mov rax, qword [r12 + 0x40]
mov r15d, dword [rax + r13]
mov r14, qword [rbp + 0x30]
mov ebx, dword [r14 + rax]
mov r13, qword [rbp - 0x70]
cmp rbx, r15
jae 0x14006e6fb
mov edx, dword [r13 + 0x38]
nop dword [rax + rax]
mov rax, qword [r12 + 0x38]
mov r14, qword [rax + rbx*8]
mov ecx, dword [r13 + 0x3c]
cmp edx, ecx
jne 0x14006e6d7
mov eax, ecx
shr eax, 2
lea esi, [rcx + 1]
add esi, eax
mov ecx, esi
mov eax, 8
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov rdi, rax
mov eax, dword [r13 + 0x38]
test eax, eax
je 0x14006e6c6
mov r8d, eax
shl r8, 3
mov rdx, qword [r13 + 0x30]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r13 + 0x30]
call fcn.1400c79bc
mov qword [r13 + 0x30], rdi
mov dword [r13 + 0x3c], esi
mov ecx, dword [r13 + 0x38]
mov rax, qword [r13 + 0x30]
mov qword [rax + rcx*8], r14
inc dword [r13 + 0x38]
mov edx, dword [r13 + 0x38]
inc rbx
cmp rbx, r15
jb 0x14006e670
mov r14, qword [rbp + 0x30]
xor r15d, r15d
mov rax, qword [rbp + 0x40]
mov esi, dword [rax + 4]
mov ecx, dword [r13 + 0x2c]
cmp dword [r13 + 0x28], ecx
jne 0x14006eee9
mov eax, ecx
shr eax, 2
lea edi, [rcx + 1]
add edi, eax
mov ecx, edi
mov eax, 4
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov rbx, rax
mov eax, dword [r13 + 0x28]
test eax, eax
je 0x14006e758
mov r8d, eax
shl r8, 2
mov rdx, qword [r13 + 0x20]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r13 + 0x20]
call fcn.1400c79bc
mov qword [r13 + 0x20], rbx
mov dword [r13 + 0x2c], edi
jmp 0x14006eeed
mov qword [rbp - 8], rdi
mov dword [rbp], edi
mov edx, edi
mov dword [rbp + 4], edx
mov r12d, edi
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14006e7af
mov rax, qword [rcx]
mov r9d, 4
mov r8d, r14d
lea edx, [r9 - 2]
mov rax, qword [rax + 0x20]
call qword [case.0x140046c11.0]
mov edi, eax
test eax, eax
jne 0x14006f9d1
mov edx, dword [rbp + 4]
xor edi, edi
mov r14, rdi
mov qword [rbp - 0x40], rdi
mov rsi, qword [rbp - 0x68]
mov rax, qword [rsi + 0x198]
mov r15d, dword [r15 + rax]
test r13d, r13d
je 0x14006e892
nop
xor dil, dil
mov ecx, r15d
mov ebx, r15d
shl rbx, 4
add rbx, qword [rsi + 0x88]
cmp byte [rbx + 0xc], dil
je 0x14006e81b
inc r12d
mov rax, qword [rbp + 0x28]
mov r8d, dword [rax + rcx*4]
test r8d, r8d
js 0x14006e81b
lfence
mov rax, qword [rbp - 0x50]
mov rax, qword [rax]
mov rdx, qword [rax + r8*8]
movzx edi, dil
cmp byte [rdx + 0x3c], 0
mov eax, 1
cmove edi, eax
mov edx, dword [rbp + 4]
cmp dword [rbp], edx
jne 0x14006e866
mov eax, edx
shr eax, 2
lea r14d, [rdx + 1]
add r14d, eax
mov ecx, r14d
call fcn.1400c79c4
mov rsi, rax
mov eax, dword [rbp]
test eax, eax
je 0x14006e84d
mov r8d, eax
mov rdx, qword [rbp - 8]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbp - 8]
call fcn.1400c79bc
mov qword [rbp - 8], rsi
mov dword [rbp + 4], r14d
mov r14, qword [rbp - 0x40]
mov rsi, qword [rbp - 0x68]
mov ecx, dword [rbp]
mov rax, qword [rbp - 8]
mov byte [rcx + rax], dil
inc dword [rbp]
test dil, dil
je 0x14006e880
add r14, qword [rbx]
mov qword [rbp - 0x40], r14
inc r15d
cmp r12d, r13d
jae 0x14006e890
mov edx, dword [rbp + 4]
jmp 0x14006e7d0
xor edi, edi
mov r12, qword [rbp - 0x70]
mov eax, dword [r12 + 0x48]
mov dword [rbp - 0x7c], eax
mov qword [rbp + 0x20], rdi
mov r15, rdi
mov ecx, 0x38
call fcn.1400c7980
mov rbx, rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14006e8d9
mov dword [rax + 0x10], edi
lea rax, vtable.NArchive::N7z::CRepackInStreamWithSizes.0
mov qword [rbx], rax
lea rax, vtable.NArchive::N7z::CRepackInStreamWithSizes.1.0
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
jmp 0x14006e8dc
mov rbx, rdi
mov qword [rbp + 0x188], rbx
test rbx, rbx
je 0x14006e8f9
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
nop
mov rax, qword [rbp - 0x58]
cmp byte [rax + 0x33], 0
je 0x14006e9fe
mov rax, qword [rbp + 0x2f0]
test rax, rax
lea r13, [rax + 8]
jne 0x14006e91a
mov r13, rdi
mov qword [rbp + 0x100], rdi
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x1f0]
call fcn.140015750
lea rcx, [rbp + 0x1f0]
call fcn.1400158c0
mov rsi, qword [rbp + 0x2f0]
mov rdi, qword [rbp + 0x100]
test rdi, rdi
je 0x14006e967
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov rcx, qword [rsi + 0x48]
test rcx, rcx
je 0x14006e97d
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [rsi + 0x48], rdi
mov rdi, qword [rbp + 0x108]
test rdi, rdi
je 0x14006e99d
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov rcx, qword [rbp + 0x2e8]
test rcx, rcx
je 0x14006e9b6
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [rbp + 0x2e8], rdi
mov rsi, qword [rbp - 0x68]
mov rax, qword [rsi + 0x178]
mov qword [rbp + 0x300], rax
mov qword [rbp + 0x308], rsi
mov eax, dword [rbp - 0x20]
mov dword [rbp + 0x310], eax
mov rcx, qword [rbp + 0x100]
test rcx, rcx
je 0x14006e9f9
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
jmp 0x14006eb8f
mov ecx, 0x60
call fcn.1400c7980
mov r15, rax
mov qword [rbp + 0x340], rax
test rax, rax
je 0x14006ea44
mov qword [rax + 0x30], rdi
mov qword [rax + 0x38], rdi
mov dword [rax + 0x40], edi
lea rax, vtable.NArchive::N7z::CFolderInStream2.0
mov qword [r15], rax
mov qword [r15 + 0x50], rdi
mov dword [r15 + 0x58], edi
mov ecx, 0x10000
call fcn.1400c79c4
mov qword [r15 + 0x48], rax
jmp 0x14006ea47
mov r15, rdi
mov dword [r15 + 0x58], edi
mov rax, qword [r15]
mov rcx, r15
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x14006ea71
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [rbp + 0x20], r15
lea r13, [r15 + 8]
mov byte [rbp - 0x5f], 0
mov byte [rbp - 0x60], 0
lea rcx, [rbp + 0x1a8]
call fcn.1400042b0
nop
mov qword [rbp + 0xd8], rdi
mov byte [rbp - 0x5e], 0
mov qword [rsp + 0x80], rdi
mov eax, 1
mov dword [rsp + 0x78], eax
mov byte [rsp + 0x70], 0
lea rax, [rbp + 0x1a8]
mov qword [rsp + 0x68], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x60], rax
lea rax, [rbp - 0x5f]
mov qword [rsp + 0x58], rax
mov rax, qword [rbp + 0xf0]
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x5e]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0xd8]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rdi
mov eax, dword [rbp - 0x20]
mov dword [rsp + 0x20], eax
mov r9, rsi
mov r8, qword [rsi + 0x178]
mov rdx, qword [rbp + 0x108]
lea rcx, [rbp + 0x248]
call fcn.14005a190
mov edi, eax
mov rsi, qword [rbp + 0xd8]
test eax, eax
jne 0x14006f981
test rsi, rsi
je 0x14006f97c
mov rax, qword [rsi]
mov rcx, rsi
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov rcx, qword [r15 + 0x50]
test rcx, rcx
je 0x14006eb61
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [r15 + 0x50], rsi
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x14006eb7f
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov rcx, qword [rbp + 0x1a8]
call fcn.1400c79bc
mov rsi, qword [rbp - 0x68]
mov qword [r13 + 0x20], rsi
mov rdi, qword [rbp + 0x18]
test rdi, rdi
je 0x14006ebac
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov rcx, qword [r13 + 0x28]
test rcx, rcx
je 0x14006ebc2
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [r13 + 0x28], rdi
mov rdi, qword [rbp + 0x50]
test rdi, rdi
je 0x14006ebdf
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov rcx, qword [r13 + 0x30]
test rcx, rcx
je 0x14006ebf5
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [r13 + 0x30], rdi
mov rax, qword [rsi + 0x198]
mov rcx, qword [rbp + 0x30]
mov esi, dword [rcx + rax]
mov dword [r13 + 0x18], esi
lea rax, [rbp - 8]
mov qword [r13 + 0x10], rax
xor eax, eax
mov dword [r13 + 0x1c], eax
mov byte [r13 + 1], al
mov rcx, r13
call fcn.14006c660
mov edi, eax
test eax, eax
jne 0x14006f9a4
mov rax, qword [rbp - 0x68]
mov qword [rbx + 0x30], rax
mov rdi, qword [rbp + 0x20]
mov dword [rbx + 0x28], esi
lea rax, [rbp - 8]
mov qword [rbx + 0x20], rax
test rdi, rdi
je 0x14006ec5b
mov rax, qword [rdi]
mov rcx, rdi
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x14006ec71
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [rbx + 0x18], rdi
mov rax, qword [rbp - 0x58]
cmp byte [rax + 0x33], 0
je 0x14006ec8b
lea rcx, [rbp + 0x220]
call fcn.140016520
mov qword [rbp + 0xe0], r14
mov rax, qword [rbp + 0x90]
mov r14, qword [rax + 0x80]
mov ecx, 0x30
call fcn.1400c7980
mov rsi, rax
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14006ecce
xor eax, eax
mov qword [rsi], rax
mov dword [rsi + 8], eax
mov qword [rsi + 0x10], rax
mov dword [rsi + 0x18], eax
mov qword [rsi + 0x20], rax
mov dword [rsi + 0x28], eax
jmp 0x14006ecd1
mov rsi, rax
lea rcx, [r12 + 0x70]
call fcn.140002470
mov ecx, dword [r12 + 0x78]
mov rax, qword [r12 + 0x70]
mov qword [rax + rcx*8], rsi
inc dword [r12 + 0x78]
add r12, 0x40
mov rax, qword [rbp - 0x70]
add rax, 0x30
mov rcx, qword [rbp - 0x48]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r14
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov r9, rsi
lea r8, [rbp + 0x48]
mov rdx, rbx
lea rcx, [rbp + 0x350]
call fcn.14005c2d0
mov edi, eax
cmp eax, 0x20000002
je 0x14006f975
mov rax, qword [rbp - 0x58]
cmp byte [rax + 0x33], 0
je 0x14006ee1b
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
xor r15d, r15d
mov ebx, r15d
mov qword [rbp + 0x188], rbx
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x14006ed86
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
mov qword [rbp + 0x20], r15
mov rcx, qword [rbp + 0x230]
call fcn.1400bf8a0
mov esi, dword [rbp + 0x2e4]
cmp esi, 1
je 0x14006edb0
cmp byte [rbp + 0x2e0], bl
jne 0x14006edb0
test esi, esi
je 0x14006ee00
mov edi, esi
jmp 0x14006f9a4
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x14006edf8
mov rax, qword [rbp - 0x68]
mov rdx, qword [rax + 0x198]
mov rax, qword [rcx]
mov r9d, 6
test esi, esi
mov r8d, 2
cmovne r9d, r8d
mov r8, qword [rbp + 0x30]
mov r8d, dword [r8 + rdx]
mov edx, 1
mov rax, qword [rax + 0x28]
call qword [case.0x140046c11.0]
test eax, eax
jne 0x14006f949
test esi, esi
jne 0x14006f975
test edi, edi
jne 0x14006f9a4
mov rdx, qword [rbp - 0x40]
cmp qword [rbp + 0x218], rdx
jne 0x14006f975
jmp 0x14006ee3f
mov eax, dword [r15 + 0x58]
cmp eax, 1
je 0x14006f94d
test eax, eax
jne 0x14006f949
test edi, edi
jne 0x14006f9a4
mov rdx, qword [rbp - 0x40]
xor r15d, r15d
mov rax, qword [r13 + 0x10]
mov ecx, dword [rax + 8]
mov edi, 0x80004005
cmp dword [r13 + 0x1c], ecx
cmove edi, r15d
jne 0x14006f9a4
cmp qword [rbp + 0xe0], rdx
jne 0x14006f975
test rbx, rbx
je 0x14006ee7c
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x14006ee93
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov r8d, dword [rbp - 0x7c]
mov r13, qword [rbp - 0x70]
mov r9, qword [rbp - 0x48]
cmp r8d, dword [r13 + 0x48]
jae 0x14006eec8
mov rdx, qword [r9 + 0x38]
nop dword [rax]
mov ecx, r8d
mov rax, qword [r12]
add rdx, qword [rax + rcx*8]
mov qword [r9 + 0x38], rdx
inc r8d
cmp r8d, dword [r13 + 0x48]
jb 0x14006eeb0
mov rax, qword [rbp + 0xe0]
add qword [r9 + 0x30], rax
mov rcx, qword [rbp - 8]
call fcn.1400c79bc
mov r14, qword [rbp + 0x30]
mov r12, qword [rbp - 0x68]
jmp 0x14006e6fe
mov rbx, qword [r13 + 0x20]
mov eax, dword [r13 + 0x28]
mov dword [rbx + rax*4], esi
inc dword [r13 + 0x28]
mov esi, r15d
mov rax, qword [r12 + 0x198]
mov edi, dword [r14 + rax]
mov r14d, dword [rbp + 0xf8]
test r14d, r14d
je 0x14006f053
nop word [rax + rax]
mov edx, edi
mov ecx, edi
add rcx, rcx
mov rax, qword [r12 + 0x88]
cmp byte [rax + rcx*8 + 0xc], 0
je 0x14006f048
inc esi
mov rax, qword [rbp + 0x28]
mov ecx, dword [rax + rdx*4]
test ecx, ecx
js 0x14006f048
lfence
mov rax, qword [rbp - 0x50]
mov rax, qword [rax]
mov rbx, qword [rax + rcx*8]
cmp byte [rbx + 0x3c], 0
jne 0x14006f048
lea rcx, [rbp + 0x198]
call fcn.1400042b0
nop
lea r9, [rbp + 0x4d0]
lea r8, [rbp + 0x500]
mov edx, edi
mov rcx, r12
call fcn.14006b9f0
cmp byte [rbx + 0x3d], 0
je 0x14006f00d
mov eax, dword [rbx + 0x38]
mov dword [rbp + 0x4f0], eax
movzx eax, byte [rbx + 0x40]
mov byte [rbp + 0x4f8], al
mov rax, qword [rbx + 8]
mov qword [rbp + 0x4d0], rax
movzx eax, byte [rbx + 0x41]
mov byte [rbp + 0x4f4], al
mov rax, qword [rbx + 0x10]
mov qword [rbp + 0x4d8], rax
movzx eax, byte [rbx + 0x42]
mov byte [rbp + 0x4f5], al
mov rax, qword [rbx + 0x18]
mov qword [rbp + 0x4e0], rax
movzx eax, byte [rbx + 0x43]
mov byte [rbp + 0x4f6], al
movzx eax, byte [rbx + 0x3e]
mov byte [rbp + 0x4f9], al
mov byte [rbp + 0x4f7], 0
movzx eax, byte [rbx + 0x3f]
mov byte [rbp + 0x50d], al
lea rdx, [rbx + 0x28]
lea rcx, [rbp + 0x198]
call fcn.140004400
jmp 0x14006f01e
lea r8, [rbp + 0x198]
mov edx, edi
mov rcx, r12
call fcn.140064aa0
lea r9, [rbp + 0x198]
lea r8, [rbp + 0x4d0]
lea rdx, [rbp + 0x500]
mov rcx, r13
call fcn.1400684d0
nop
mov rcx, qword [rbp + 0x198]
call fcn.1400c79bc
inc edi
cmp esi, r14d
jb 0x14006ef20
mov eax, dword [rbp - 0x74]
inc eax
mov dword [rbp - 0x74], eax
mov r8, qword [rbp - 0x28]
cmp eax, dword [r8 + 0x18]
mov edi, 0
jb 0x14006e3d0
mov r14, qword [rbp - 0x58]
mov r15d, dword [r8 + 8]
mov dword [rbp - 0x74], r15d
test r15d, r15d
jne 0x14006f0b5
lea rcx, [rbp + 0x350]
call fcn.14005ba10
nop
mov rcx, qword [rbp + 0x150]
call fcn.1400c79bc
mov rcx, qword [rbp + 0x130]
call fcn.1400c79bc
lea rcx, [rbp + 0x120]
call fcn.14005b8e0
jmp 0x14006f914
mov rax, rdi
mov qword [rbp - 0x40], rax
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0xb0], 0
test r15d, r15d
je 0x14006f129
xor ecx, ecx
call fcn.1400c79bc
mov qword [rbp + 0xa8], rdi
mov dword [rbp + 0xb4], edi
mov r13, r15
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], r15
mov eax, 0x18
mul r15
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x30], rax
mov qword [rbp + 0xa8], rax
mov dword [rbp + 0xb4], r15d
mov r8, qword [rbp - 0x28]
jmp 0x14006f130
mov r13, r15
mov qword [rbp - 0x38], r15
mov dword [rbp + 0xb0], r15d
movzx edx, byte [r14 + 0x31]
mov byte [rbp - 0x80], dl
test r15d, r15d
je 0x14006f2a0
mov r12, rdi
mov r15, rax
nop
mov rax, qword [r8]
mov ecx, dword [r12 + rax]
mov rax, qword [rbp - 0x50]
mov rax, qword [rax]
mov rsi, qword [rax + rcx*8]
mov qword [rbp + 0x78], rsi
mov dword [rbp + 0x80], ecx
mov qword [rbp + 0x84], 0
mov dword [rbp + 0x8c], edi
test dl, dl
je 0x14006f26c
lea r14, [rsi + 0x28]
mov rcx, r14
call fcn.140005960
mov ebx, eax
lea ecx, [rax + 1]
mov dword [rbp + 0x88], ecx
mov edx, 0x2e
mov rcx, r14
call fcn.140005920
cmp eax, ebx
jg 0x14006f1bb
mov eax, dword [rsi + 0x30]
mov dword [rbp + 0x84], eax
jmp 0x14006f264
lea edi, [rax + 1]
mov dword [rbp + 0x84], edi
cmp edi, dword [rsi + 0x30]
je 0x14006f262
lea rcx, [rbp + 0x98]
call fcn.140003d70
nop
mov rcx, qword [r14]
movzx edx, word [rcx + rdi*2]
mov esi, 0x80
cmp dx, si
jae 0x14006f253
mov r8d, dword [rbp + 0xa0]
test dx, dx
je 0x14006f325
movzx edx, dl
lea ecx, [rdx - 0x41]
lea eax, [rdx + 0x20]
movzx ebx, al
cmp cl, 0x19
cmova ebx, edx
cmp dword [rbp + 0xa4], r8d
jne 0x14006f229
lea rcx, [rbp + 0x98]
call fcn.140005040
mov r8d, dword [rbp + 0xa0]
mov rcx, qword [rbp + 0x98]
mov eax, r8d
mov byte [rax + rcx], bl
inc r8d
mov byte [r8 + rcx], 0
mov dword [rbp + 0xa0], r8d
inc edi
mov rcx, qword [r14]
movzx edx, word [rcx + rdi*2]
cmp dx, si
jb 0x14006f1f2
mov r10, qword [rbp + 0x98]
mov rcx, r10
call fcn.1400c79bc
xor edi, edi
movzx edx, byte [rbp - 0x80]
mov r8, qword [rbp - 0x28]
movups xmm0, xmmword [rbp + 0x78]
movups xmmword [r15], xmm0
movsd xmm1, qword [rbp + 0x88]
movsd qword [r15 + 0x10], xmm1
add r12, 4
add r15, 0x18
sub r13, 1
jne 0x14006f150
mov r13, qword [rbp - 0x38]
mov r15d, dword [rbp - 0x74]
mov r14, qword [rbp - 0x58]
mov byte [rbp - 0x5d], dl
lea r8, [rbp - 0x5d]
lea rdx, [0x14006b740]
lea rcx, [rbp + 0xa8]
call fcn.14006d120
mov rbx, rdi
mov qword [rbp - 0x30], rbx
test r13, r13
je 0x14006f2e8
mov eax, 4
mul r13
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov rbx, rax
mov qword [rbp - 0x30], rax
test r15d, r15d
je 0x14006f312
mov rcx, rbx
mov rdx, qword [rbp - 0x40]
add rdx, 8
nop dword [rax + rax]
mov eax, dword [rdx]
mov dword [rcx], eax
lea rdx, [rdx + 0x18]
lea rcx, [rcx + 4]
sub r13, 1
jne 0x14006f300
mov esi, edi
mov dword [rbp - 0x7c], edi
test r15d, r15d
je 0x14006f8cc
mov eax, dword [rbp - 0x74]
jmp 0x14006f3a2
mov eax, 1
mov r11d, eax
mov rcx, qword [str._7z_xz_lzma_ace_arc_arj_bz_tbz_bz2_tbz2_cab_deb_gz_tgz_ha_lha_lzh_lzo_lzx_pak_rar_rpm_sit_zoo_zip_jar_ear_war_msi_3gp_avi_mov_mpeg_mpg_mpe_wmv_aac_ape_fla_flac_la_mp3_m4a_mp4_ofr_ogg_pac_ra_rm_rka_shn_swa_tta_wv_wma_wav_swf_chm_hxi_hxs_gif_jpeg_jpg_jp2_png_tiff__bmp_ico_psd_psp_awg_ps_eps_cgm_dxf_svg_vrml_wmf_emf_ai_md_cad_dwg_pps_key_sxi_max_3ds_iso_bin_nrg_mdf_img_pdi_tar_cpio_xpi_vfd_vhd_vud_vmc_vsv_vmdk_dsk_nvram_vmem_vmsd_vmsn_vmss_vmtm_inl_inc_idl_acf_asa_h_hpp_hxx_c_cpp_cxx_m_mm_go_swift_rc_java_cs_rs_pas_bas_vb_cls_ctl_frm_dlg_def_f77_f_f90_f95_asm_s_sql_manifest_dep_mak_clw_csproj_vcproj_sln_dsp_dsw_class_bat_cmd_bash_sh_xml_xsd_xsl_xslt_hxk_hxc_htm_html_xhtml_xht_mht_mhtml_htw_asp_aspx_css_cgi_jsp_shtml_awk_sed_hta_js_json_php_php3_php4_php5_phptml_pl_pm_py_pyo_rb_tcl_ts_vbs_text_txt_tex_ans_asc_srt_reg_ini_doc_docx_mcw_dot_rtf_hlp_xls_xlr_xlt_xlw_ppt_pdf_sxc_sxd_sxi_sxg_sxw_stc_sti_stw_stm_odt_ott_odg_otg_odp_otp_ods_ots_odf_abw_afp_cwk_lwp_wpd_wps_wpt_wrf_wri_abf_afm_bdf_fon_mgf_otf_pcf_pfa_snf_ttf_dbf_mdb_nsf_ntf_wdb_db_fdb_gdb_exe_dll_ocx_vbx_sfx_sys_tlb_awx_com_obj_lib_out_o_so_pdb_pch_idb_ncb_opt]
movzx eax, byte [rcx]
lea rdx, [rcx + 1]
mov r10, qword [rbp + 0x98]
test al, al
je 0x14006f38c
cmp al, 0x20
je 0x14006f382
xor r9d, r9d
nop dword [rax]
movzx r8d, byte [r9 + r10]
lea r9d, [r9 + 1]
test r8b, r8b
jne 0x14006f362
test al, 0xdf
je 0x14006f38c
cmp al, r8b
jne 0x14006f36f
movzx eax, byte [rdx]
inc rdx
jmp 0x14006f350
inc r11d
test al, al
je 0x14006f38c
cmp al, 0x20
je 0x14006f382
movzx eax, byte [rdx]
inc rdx
jmp 0x14006f372
movzx eax, byte [rdx]
inc rdx
test al, al
jne 0x14006f346
mov dword [rbp + 0x8c], r11d
jmp 0x14006f25a
xor edi, edi
mov r15, rdi
mov r12, rdi
mov r13d, edi
cmp esi, eax
jae 0x14006f459
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
cmp rax, qword [rbp + 0x190]
jae 0x14006f453
lea eax, [rsi + r13]
mov edx, dword [rbx + rax*4]
mov rax, qword [rbp - 0x50]
mov rax, qword [rax]
mov rsi, qword [rax + rdx*8]
add r15, qword [rsi + 0x20]
cmp r15, qword [r14 + 0x28]
ja 0x14006f450
cmp byte [r14 + 0x30], 0
je 0x14006f43b
lea rcx, [rsi + 0x28]
call fcn.140005960
mov edi, eax
mov edx, 0x2e
lea rcx, [rsi + 0x28]
call fcn.140005920
cmp eax, edi
jg 0x14006f415
mov eax, dword [rsi + 0x30]
jmp 0x14006f417
inc eax
mov ecx, eax
mov rax, qword [rsi + 0x28]
lea rcx, [rax + rcx*2]
test r13d, r13d
jne 0x14006f42b
mov r12, rcx
jmp 0x14006f437
mov rdx, r12
call fcn.140005ca0
test al, al
je 0x14006f450
mov r14, qword [rbp - 0x58]
inc r13d
mov esi, dword [rbp - 0x7c]
lea eax, [rsi + r13]
cmp eax, dword [rbp - 0x74]
jb 0x14006f3c0
jmp 0x14006f453
mov esi, dword [rbp - 0x7c]
cmp r13d, 1
jae 0x14006f45f
mov r13d, 1
mov rcx, qword [rbp - 0x48]
call fcn.140015630
mov edi, eax
test eax, eax
jne 0x14006f9fe
mov ecx, 0x80
call fcn.1400c7980
mov r14, rax
mov qword [rbp + 0x40], rax
xor edi, edi
test rax, rax
je 0x14006f4c4
mov dword [rax + 0x10], edi
lea rax, vtable.NArchive::N7z::CFolderInStream.0
mov qword [r14], rax
lea rax, vtable.NArchive::N7z::CFolderInStream.1.0
mov qword [r14 + 8], rax
mov qword [r14 + 0x18], rdi
mov qword [r14 + 0x48], rdi
mov qword [r14 + 0x50], rdi
mov qword [r14 + 0x58], rdi
mov qword [r14 + 0x60], rdi
mov qword [r14 + 0x68], rdi
mov qword [r14 + 0x70], rdi
mov qword [r14 + 0x78], rdi
jmp 0x14006f4c7
mov r14, rdi
mov qword [rbp + 0x348], r14
test r14, r14
je 0x14006f4e4
mov rax, qword [r14]
mov rcx, r14
mov rax, qword [rax + 8]
call qword [case.0x140046c11.0]
nop
mov eax, esi
lea r8, [rbx + rax*4]
mov r9d, r13d
mov rdx, qword [rbp + 0xe8]
mov rcx, r14
call fcn.14005f520
mov r12, qword [rbp - 0x70]
mov esi, dword [r12 + 0x48]
mov qword [rbp + 0x170], r15
mov rax, qword [rbp + 0x90]
mov rax, qword [rax + 0x80]
mov qword [rbp + 0x40], rax
mov ecx, 0x30
call fcn.1400c7980
mov r15, rax
mov qword [rbp + 0x188], rax
test rax, rax
je 0x14006f54d
mov qword [rax], rdi
mov dword [rax + 8], edi
mov qword [rax + 0x10], rdi
mov dword [rax + 0x18], edi
mov qword [rax + 0x20], rdi
mov dword [rax + 0x28], edi
jmp 0x14006f550
mov r15, rdi
lea rcx, [r12 + 0x70]
call fcn.140002470
mov ecx, dword [r12 + 0x78]
mov rax, qword [r12 + 0x70]
mov qword [rax + rcx*8], r15
inc dword [r12 + 0x78]
add r12, 0x40
mov rax, qword [rbp - 0x70]
add rax, 0x30
mov rcx, qword [rbp - 0x48]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], r12
mov rcx, qword [rbp + 0x40]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x170]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov r9, r15
lea r8, [rbp + 0x48]
mov rdx, r14
lea rcx, [rbp + 0x350]
call fcn.14005c2d0
mov edi, eax
test eax, eax
jne 0x14006f9e8
mov eax, dword [r14 + 0x40]
cmp dword [r14 + 0x44], eax
jne 0x14006f9e3
mov r8, qword [rbp - 0x70]
mov r9, qword [rbp - 0x48]
cmp esi, dword [r8 + 0x48]
jae 0x14006f606
mov rdx, qword [r9 + 0x38]
nop dword [rax]
nop word [rax + rax]
mov ecx, esi
mov rax, qword [r12]
add rdx, qword [rax + rcx*8]
mov qword [r9 + 0x38], rdx
inc esi
cmp esi, dword [r8 + 0x48]
jb 0x14006f5f0
mov rax, qword [rbp + 0x170]
add qword [r9 + 0x30], rax
xor eax, eax
mov r12d, eax
mov dword [rbp - 0x20], eax
mov r15d, eax
mov qword [rbp - 0x38], rax
mov esi, eax
test r13d, r13d
je 0x14006f7ed
nop dword [rax + rax]
mov eax, dword [rbp - 0x7c]
add eax, esi
mov edx, dword [rbx + rax*4]
mov rax, qword [rbp - 0x50]
mov rax, qword [rax]
mov rdi, qword [rax + rdx*8]
lea rcx, [rbp + 0x160]
call fcn.1400042b0
nop
cmp byte [rdi + 0x3d], 0
je 0x14006f705
mov eax, dword [rdi + 0x38]
mov dword [rbp + 0x490], eax
movzx eax, byte [rdi + 0x40]
mov byte [rbp + 0x498], al
mov rax, qword [rdi + 8]
mov qword [rbp + 0x470], rax
movzx eax, byte [rdi + 0x41]
mov byte [rbp + 0x494], al
mov rax, qword [rdi + 0x10]
mov qword [rbp + 0x478], rax
movzx eax, byte [rdi + 0x42]
mov byte [rbp + 0x495], al
mov rax, qword [rdi + 0x18]
mov qword [rbp + 0x480], rax
movzx eax, byte [rdi + 0x43]
mov byte [rbp + 0x496], al
movzx eax, byte [rdi + 0x3e]
mov byte [rbp + 0x499], al
mov byte [rbp + 0x497], 0
mov rax, qword [rdi + 0x20]
mov qword [rbp + 0x450], rax
movzx eax, byte [rdi + 0x3f]
mov byte [rbp + 0x45d], al
cmp byte [rdi + 0x3f], 0
jne 0x14006f6ec
cmp byte [rdi + 0x3e], 0
jne 0x14006f6ec
cmp qword [rdi + 0x20], 0
mov byte [rbp + 0x45c], 1
jne 0x14006f6f3
mov byte [rbp + 0x45c], 0
lea rdx, [rdi + 0x28]
lea rcx, [rbp + 0x160]
call fcn.140004400
jmp 0x14006f72c
lea r9, [rbp + 0x470]
lea r8, [rbp + 0x450]
mov edx, dword [rdi]
mov rcx, qword [rbp - 0x68]
call fcn.14006b9f0
lea r8, [rbp + 0x160]
mov edx, dword [rdi]
call fcn.140064aa0
cmp byte [rbp + 0x499], 0
jne 0x14006f9d7
cmp byte [rbp + 0x45d], 0
jne 0x14006f9d7
mov ecx, esi
mov rax, qword [r14 + 0x50]
cmp byte [rcx + rax], 0
jne 0x14006f760
mov rax, qword [rbp - 0x38]
add rax, qword [rdi + 0x20]
mov qword [rbp - 0x38], rax
jmp 0x14006f7c2
mov rax, qword [r14 + 0x60]
mov ecx, dword [r12 + rax]
mov dword [rbp + 0x458], ecx
mov rax, qword [r14 + 0x70]
mov rcx, qword [r15 + rax]
mov qword [rbp + 0x450], rcx
test rcx, rcx
je 0x14006f795
mov byte [rbp + 0x45e], 1
mov byte [rbp + 0x45c], 1
inc dword [rbp - 0x20]
jmp 0x14006f7a3
mov byte [rbp + 0x45e], 0
mov byte [rbp + 0x45c], 0
lea r9, [rbp + 0x160]
lea r8, [rbp + 0x470]
lea rdx, [rbp + 0x450]
mov rcx, qword [rbp - 0x70]
call fcn.1400684d0
nop
mov rcx, qword [rbp + 0x160]
call fcn.1400c79bc
inc esi
add r12, 4
add r15, 8
cmp esi, r13d
jb 0x14006f630
mov r15, qword [rbp - 0x38]
mov r12d, dword [rbp - 0x20]
mov r8, qword [rbp - 0x70]
mov ecx, dword [r8 + 0x2c]
cmp dword [r8 + 0x28], ecx
jne 0x14006f85a
mov eax, ecx
shr eax, 2
lea esi, [rcx + 1]
add esi, eax
mov ecx, esi
mov eax, 4
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400c79c4
mov rdi, rax
mov rcx, qword [rbp - 0x70]
mov eax, dword [rcx + 0x28]
test eax, eax
je 0x14006f843
mov r8d, eax
shl r8, 2
mov rdx, qword [rcx + 0x20]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbp - 0x70]
mov rcx, qword [rcx + 0x20]
call fcn.1400c79bc
mov r8, qword [rbp - 0x70]
mov qword [r8 + 0x20], rdi
mov dword [r8 + 0x2c], esi
jmp 0x14006f85e
mov rdi, qword [r8 + 0x20]
mov eax, dword [r8 + 0x28]
mov dword [rdi + rax*4], r12d
inc dword [r8 + 0x28]
mov esi, dword [rbp - 0x7c]
add esi, r13d
mov dword [rbp - 0x7c], esi
test r15, r15
je 0x14006f8ac
mov rcx, qword [rbp - 0x10]
cmp rcx, r15
jb 0x14006f8ac
sub rcx, r15
mov qword [rbp - 0x10], rcx
mov r8, qword [rbp + 0xe8]
mov rax, qword [r8]
mov rdx, rcx
mov rcx, r8
mov rax, qword [rax + 0x18]
call qword [case.0x140046c11.0]
mov edi, eax
test eax, eax
jne 0x14006f9e8
mov rax, qword [r14]
mov rcx, r14
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov eax, dword [rbp - 0x74]
cmp esi, eax
mov r14, qword [rbp - 0x58]
jb 0x14006f3a0
mov rcx, rbx
call fcn.1400c79bc
nop
mov rcx, qword [rbp - 0x40]
call fcn.1400c79bc
nop
lea rcx, [rbp + 0x350]
call fcn.14005ba10
nop
mov rcx, qword [rbp + 0x150]
call fcn.1400c79bc
mov rcx, qword [rbp + 0x130]
call fcn.1400c79bc
lea rcx, [rbp + 0x120]
call fcn.14005b8e0
mov r13, qword [rbp - 0x70]
mov eax, dword [rbp - 0x18]
inc eax
mov dword [rbp - 0x18], eax
xor r14d, r14d
cmp eax, dword [rbp + 0x70]
jb 0x14006e270
mov esi, dword [rbp + 0x10]
mov rcx, qword [rbp - 0x48]
call fcn.140015630
mov edi, eax
test eax, eax
je 0x14006fa4d
mov r15d, 0xffffffff
jmp 0x14006fa85
mov edi, eax
jmp 0x14006f9a4
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x14006f975
mov rax, qword [rcx]
mov edx, 2
mov r9d, edx
mov r8d, dword [rbp - 0x20]
mov rax, qword [rax + 0x28]
call qword [case.0x140046c11.0]
mov edi, eax
test eax, eax
jne 0x14006f9a4
mov edi, 0x80004005
jmp 0x14006f9a4
mov edi, 0x80004005
test rsi, rsi
je 0x14006f997
mov rax, qword [rsi]
mov rcx, rsi
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov rcx, qword [rbp + 0x1a8]
call fcn.1400c79bc
nop
test rbx, rbx
je 0x14006f9ba
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x14006f9d1
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov rcx, qword [rbp - 8]
jmp 0x14006fa0b
mov rcx, qword [rbp + 0x160]
call fcn.1400c79bc
mov edi, 0x80004005
test r14, r14
je 0x14006f9fe
mov rax, qword [r14]
mov rcx, r14
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov rcx, rbx
call fcn.1400c79bc
nop
mov rcx, qword [rbp - 0x40]
call fcn.1400c79bc
nop
lea rcx, [rbp + 0x350]
call fcn.14005ba10
nop
mov rcx, qword [rbp + 0x150]
call fcn.1400c79bc
mov rcx, qword [rbp + 0x130]
call fcn.1400c79bc
lea rcx, [rbp + 0x120]
call fcn.14005b8e0
mov esi, dword [rbp + 0x10]
mov r15d, 0xffffffff
jmp 0x14006fa85
mov rcx, r13
call fcn.14006cbc0
mov rcx, qword [rbp + 0x18]
mov r15d, 0xffffffff
test rcx, rcx
je 0x14006fa82
mov rax, qword [rcx]
mov r9d, 7
mov r8d, r15d
xor edx, edx
mov rax, qword [rax + 0x20]
call qword [case.0x140046c11.0]
mov edi, eax
test eax, eax
jne 0x14006fa85
mov edi, r14d
mov rcx, qword [rbp + 0xf0]
test rcx, rcx
je 0x14006fa9f
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov r14, qword [rbp - 0x48]
lea rax, vtable.NArchive::N7z::CThreadDecoder.0
mov qword [rbp + 0x220], rax
lea rcx, [rbp + 0x220]
call fcn.140016530
nop
mov rcx, qword [rbp + 0x318]
test rcx, rcx
je 0x14006fad8
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov rcx, qword [rbp + 0x2f8]
test rcx, rcx
je 0x14006faf2
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov rcx, qword [rbp + 0x2e8]
test rcx, rcx
je 0x14006fb0c
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
lea rcx, [rbp + 0x248]
call fcn.14005de70
nop
lea rax, vtable.CVirtThread.0
mov qword [rbp + 0x220], rax
lea rcx, [rbp + 0x220]
call fcn.140016530
lea rcx, [rbp + 0x238]
call fcn.1400bf850
lea rcx, [rbp + 0x230]
call fcn.1400bf850
lea rcx, [rbp + 0x228]
call fcn.1400bf850
nop
lea rcx, [rbp + 0x200]
call fcn.1400bf850
lea rcx, [rbp + 0x1f8]
call fcn.1400bf850
lea rcx, [rbp + 0x1f0]
call fcn.1400bf850
nop
test r14, r14
je 0x14006fb93
mov rax, qword [r14]
mov rcx, r14
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
test esi, esi
je 0x14006fbd2
mov eax, esi
mov rcx, qword [rbp + 8]
lea r14, [rcx + rax*8]
add esi, r15d
lea r14, [r14 - 8]
mov rbx, qword [r14]
test rbx, rbx
je 0x14006fbce
mov rcx, qword [rbx + 0x10]
call fcn.1400c79bc
mov rcx, qword [rbx]
call fcn.1400c79bc
mov edx, 0x20
mov rcx, rbx
call fcn.1400c79bc
test esi, esi
jne 0x14006fba1
mov rcx, qword [rbp + 8]
call fcn.1400c79bc
nop
mov rcx, qword [rbp + 0x68]
call fcn.1400c79bc
nop
mov rcx, qword [rbp + 0x28]
call fcn.1400c79bc
nop
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x14006fc07
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x140046c11.0]
nop
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14006fc1e
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x10]
call qword [case.0x140046c11.0]
nop
mov eax, edi
mov rcx, qword [rbp + 0x510]
xor rcx, rsp
call fcn.1400c7aa0
add rsp, 0x638
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret