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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xc8
cmp qword [rcx + 0xf8], 0
mov r11, qword [rsp + 0x130]
mov edi, dword [rcx + 0x110]
mov qword [rsp + 0x58], r8
mov rbx, rdx
mov qword [rsp + 0x48], r9
je 0x14037fc31
mov r8d, 0x1ab
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str.ms__dictMatchState__NULL
jmp 0x14037fde1
mov eax, dword [rcx + 0x114]
cmp eax, 1
jbe 0x140380ad1
cmp edi, 6
je 0x14037fc95
cmp edi, 7
je 0x1403803f2
mov qword [rsp + 0x130], r11
mov r9, qword [rsp + 0x48]
mov r8, qword [rsp + 0x58]
cmp edi, 5
je 0x14037fc7d
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x140385e60
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x140386640
mov rdi, qword [rcx + 0x70]
inc eax
mov r9d, dword [rcx + 0x100]
mov qword [rsp + 0x88], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x30], rdi
mov edi, dword [rcx + 0x108]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x28]
mov edx, dword [rcx + 0x28]
mov dword [rsp + 0x3c], edi
mov edi, dword [rcx + 0x18]
mov dword [rsp + 0x60], r9d
sub rax, rsi
lea r8d, [rax + r11]
mov ecx, edi
call fcn.1403ad810
mov r9d, dword [rsp + 0x60]
mov ecx, edi
mov dword [rsp + 0x7c], eax
mov eax, eax
add rax, rsi
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x90]
add rax, r11
mov qword [rsp + 0x40], rax
sub rax, 8
cmp qword [rsp + 0x48], rsi
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x58]
sete sil
movzx esi, sil
mov r15d, dword [rax]
mov eax, dword [rax + 4]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x48]
add rsi, rax
mov rax, qword [rsp + 0x28]
mov r11, rsi
sub r11, rax
mov r8d, r11d
call fcn.1403ad810
sub r11d, eax
xor eax, eax
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x50]
cmp r11d, eax
jae 0x14037fd6e
mov dword [rsp + 0x60], eax
xor eax, eax
mov dword [rsp + 0x50], eax
xor eax, eax
mov dword [rsp + 0x78], eax
cmp r11d, r15d
jae 0x14037fd81
mov dword [rsp + 0x78], r15d
xor r15d, r15d
mov rax, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
sub rax, 0x20
mov qword [rsp + 0x70], rax
lea rax, [rsi + 0x80]
lea r13, [rsi + 1]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x88]
lea r12, [rsi + rax]
mov rax, qword [rsp + 0x68]
lea rdi, [r12 + 1]
cmp rdi, rax
jae 0x140380521
cmp dword [rsp + 0x3c], 0x20
jbe 0x14037fde7
mov r8d, 0x342
lea rdx, [0x1406237d0]
lea rcx, [0x1406238aa]
call qword [sym.imp.msvcrt.dll__assert]
mov edx, dword [rsp + 0x3c]
mov rcx, rsi
call fcn.1403ade00
mov edx, dword [rsp + 0x3c]
mov rcx, r13
mov r14, rax
call fcn.1403ade00
mov rcx, qword [rsp + 0x30]
mov r9, qword [rsp + 0x88]
mov r8d, dword [rcx + r14*4]
mov ecx, r15d
mov qword [rsp + 0xa0], rcx
mov rcx, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x28]
mov rdx, r12
sub rdx, rcx
mov rcx, rsi
sub rcx, r11
mov r11, qword [rsp + 0x30]
mov r10d, dword [rdx]
mov dword [rsp + 0x80], ecx
mov dword [r11 + r14*4], ecx
cmp dword [r12], r10d
jne 0x14037fe94
test r15d, r15d
je 0x14037fe94
mov rcx, qword [rsp + 0x28]
mov dil, byte [rdx - 1]
xor r14d, r14d
mov rsi, r12
cmp byte [r12 - 1], dil
mov rdi, rdx
mov r12d, r15d
mov r15d, dword [rsp + 0x50]
sete r14b
sub r13, rcx
mov dword [r11 + rax*4], r13d
sub rsi, r14
sub rdi, r14
mov r13d, 1
add r14, 4
jmp 0x14038004e
mov edx, dword [rsi]
mov r10d, dword [rsp + 0x7c]
mov ecx, edx
xor ecx, 1
cmp r8d, r10d
jb 0x14037feb1
mov r10, qword [rsp + 0x28]
mov ecx, r8d
mov ecx, dword [r10 + rcx]
mov r10, qword [rsp + 0x30]
lea r11, [r10 + rax*4]
mov rax, qword [rsp + 0x28]
mov r10, r13
sub r10, rax
cmp ecx, edx
jne 0x14037fed1
mov dword [r11], r10d
jmp 0x14037fff0
mov r8d, dword [r11]
mov edx, dword [rsp + 0x3c]
mov rcx, r12
mov qword [rsp + 0xb8], r10
mov qword [rsp + 0xb0], r9
mov qword [rsp + 0xa8], r11
mov dword [rsp + 0x80], r8d
call fcn.1403ade00
mov r8d, dword [rsp + 0x80]
mov r11, qword [rsp + 0xa8]
mov r14, rax
mov eax, dword [rsp + 0x7c]
mov r10, qword [rsp + 0xb8]
mov r9, qword [rsp + 0xb0]
cmp r8d, eax
mov dword [r11], r10d
jb 0x14037ff3c
mov rsi, qword [rsp + 0x28]
mov eax, r8d
mov eax, dword [rsi + rax]
jmp 0x14037ff43
mov eax, dword [r13]
xor eax, 1
cmp dword [r13], eax
jne 0x14037ff70
cmp r9, 4
ja 0x14037ff60
mov rax, qword [rsp + 0x28]
sub r12, rax
mov rax, qword [rsp + 0x30]
mov dword [rax + r14*4], r12d
mov dword [rsp + 0x80], r10d
mov rsi, r13
jmp 0x14037fff0
mov rax, qword [rsp + 0x30]
mov edx, dword [rsp + 0x3c]
mov rcx, rdi
mov qword [rsp + 0xa8], r9
mov r8d, dword [rax + r14*4]
mov dword [rsp + 0x80], r8d
call fcn.1403ade00
mov r9, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x98]
mov r8d, dword [rsp + 0x80]
lea rcx, [r12 + r9]
lea rdx, [rdi + r9]
cmp rcx, rsi
jb 0x14037ffd1
prefetcht0 byte [rdi + 0x40]
prefetcht0 byte [rdi + 0x80]
inc r9
sub qword [rsp + 0x98], 0xffffffffffffff80
mov r13, rdi
mov rdi, qword [rsp + 0x68]
mov rsi, r12
cmp rdx, rdi
jae 0x140380521
mov rdi, rdx
mov r12, rcx
jmp 0x14037fe1e
mov rax, qword [rsp + 0x28]
mov edi, r8d
add rdi, rax
mov rax, rsi
sub rax, rdi
mov r12d, eax
test eax, eax
jne 0x140380021
mov r8d, 0x16a
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str._rep_offset1__0
jmp 0x14037fde1
lea r13d, [rax + 3]
lea rax, [rdi + 4]
mov r14, rax
sub r14, rdi
cmp rbp, rsi
jae 0x14038004e
cmp qword [rsp + 0x90], rdi
jae 0x14038004e
mov cl, byte [rdi - 1]
cmp byte [rsi - 1], cl
jne 0x14038004e
dec rsi
dec rdi
jmp 0x140380029
mov r8, qword [rsp + 0x40]
lea rdx, [rdi + r14]
lea rcx, [rsi + r14]
mov rdi, rsi
sub rdi, rbp
call fcn.14039b620
add r14, rax
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jb 0x140380093
mov r8d, 0x29d
lea rdx, [0x1406237d0]
lea rcx, [0x1406238e4]
jmp 0x14037fde1
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
jbe 0x1403800b8
mov r8d, 0x29f
lea rdx, [0x1406237d0]
lea rcx, [0x14062393b]
jmp 0x14037fde1
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
lea rdx, [rcx + rdi]
cmp rax, rdx
jae 0x1403800e2
mov r8d, 0x2a0
lea rdx, [0x1406237d0]
lea rcx, [0x14062395b]
jmp 0x14037fde1
cmp qword [rsp + 0x40], rsi
jae 0x140380102
mov r8d, 0x2a1
lea rdx, [0x1406237d0]
lea rcx, [0x1406239a9]
jmp 0x14037fde1
cmp qword [rsp + 0x70], rsi
jb 0x140380185
movups xmm0, xmmword [rbp]
movups xmmword [rcx], xmm0
cmp rdi, 0x10
ja 0x14038011f
add qword [rbx + 0x18], rdi
jmp 0x1403801c5
mov rax, qword [rbx + 0x18]
mov rdx, rax
sub rdx, rbp
add rdx, 0xf
cmp rdx, 0x1e
ja 0x14038014c
mov r8d, 0xe9
lea rdx, [0x14062380b]
lea rcx, [0x140623837]
jmp 0x14037fde1
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm1
cmp rdi, 0x20
jle 0x140380195
lea rdx, [rax + rdi]
add rbp, 0x20
add rax, 0x20
movups xmm2, xmmword [rbp]
add rax, 0x20
add rbp, 0x20
movups xmmword [rax - 0x20], xmm2
movups xmm3, xmmword [rbp - 0x10]
movups xmmword [rax - 0x10], xmm3
cmp rax, rdx
jb 0x140380166
jmp 0x140380195
mov r9, qword [rsp + 0x70]
mov r8, rsi
mov rdx, rbp
call fcn.1403b3890
add qword [rbx + 0x18], rdi
cmp rdi, 0xffff
jbe 0x1403801c5
cmp dword [rbx + 0x48], 0
je 0x1403801b0
mov r8d, 0x2b2
jmp 0x140380208
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
mov dword [rbx + 0x48], 1
sar rax, 3
mov dword [rbx + 0x4c], eax
mov rax, qword [rbx + 8]
mov word [rax + 4], di
mov dword [rax], r13d
cmp r14, 2
ja 0x1403801ef
mov r8d, 0x2bc
lea rdx, [0x1406237d0]
lea rcx, [0x1406239f7]
jmp 0x14037fde1
lea rcx, [r14 - 3]
cmp rcx, 0xffff
jbe 0x14038022f
cmp dword [rbx + 0x48], 0
je 0x14038021b
mov r8d, 0x2bf
lea rdx, [0x1406237d0]
lea rcx, [0x1406239ca]
jmp 0x14037fde1
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
add rsi, r14
mov qword [rbx + 8], rax
cmp qword [rsp + 0x68], rsi
jae 0x140380255
mov dword [rsp + 0x50], r15d
mov rbp, rsi
mov r15d, r12d
jmp 0x14037fd94
mov eax, dword [rsp + 0x80]
mov rdi, qword [rsp + 0x28]
lea rcx, [rdi + rax + 2]
cmp qword [rsp + 0x48], rcx
jb 0x140380286
mov r8d, 0x181
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str.basecurrent02___istart
jmp 0x14037fde1
mov edx, dword [rsp + 0x3c]
call fcn.1403ade00
mov rdi, qword [rsp + 0x30]
lea rcx, [rsi - 2]
mov rdx, rax
mov eax, dword [rsp + 0x80]
add eax, 2
mov dword [rdi + rdx*4], eax
mov rax, qword [rsp + 0x28]
mov rdi, rcx
mov edx, dword [rsp + 0x3c]
sub rdi, rax
call fcn.1403ade00
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], edi
test r15d, r15d
je 0x140380245
xchg r12d, r15d
mov rdx, rsi
mov r14, rsi
mov eax, r12d
sub rdx, rax
mov edi, dword [rdx]
cmp dword [rsi], edi
jne 0x1403803ea
mov edx, 4
mov r8, qword [rsp + 0x40]
lea rcx, [rsi + 4]
mov r13, rsi
sub rdx, rax
add rdx, rsi
call fcn.14039b620
mov edx, dword [rsp + 0x3c]
mov rcx, rsi
lea rbp, [rax + 4]
mov rdi, rax
mov rax, qword [rsp + 0x28]
add rsi, rbp
sub r13, rax
call fcn.1403ade00
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], r13d
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
cmp rax, rcx
jb 0x1403800c9
cmp qword [rsp + 0x40], r14
jb 0x1403800e9
cmp qword [rsp + 0x70], r14
jb 0x14038037a
movups xmm4, xmmword [r14]
movups xmmword [rcx], xmm4
jmp 0x14038038a
mov r9, qword [rsp + 0x70]
mov r8, r14
mov rdx, r14
call fcn.1403b3890
mov rax, qword [rbx + 8]
mov word [rax + 4], 0
mov dword [rax], 1
cmp rbp, 2
jbe 0x1403801d6
inc rdi
cmp rdi, 0xffff
jbe 0x1403803ce
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], di
add rax, 8
mov qword [rbx + 8], rax
cmp qword [rsp + 0x68], rsi
jae 0x1403802cd
jmp 0x140380245
xchg r12d, r15d
jmp 0x140380245
mov rdi, qword [rcx + 0x70]
inc eax
mov r9d, dword [rcx + 0x100]
mov qword [rsp + 0x88], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x30], rdi
mov edi, dword [rcx + 0x108]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x28]
mov edx, dword [rcx + 0x28]
mov dword [rsp + 0x3c], edi
mov edi, dword [rcx + 0x18]
mov dword [rsp + 0x60], r9d
sub rax, rsi
lea r8d, [rax + r11]
mov ecx, edi
call fcn.1403ad810
mov r9d, dword [rsp + 0x60]
mov ecx, edi
mov dword [rsp + 0x7c], eax
mov eax, eax
add rax, rsi
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x90]
add rax, r11
mov qword [rsp + 0x40], rax
sub rax, 8
cmp qword [rsp + 0x48], rsi
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x58]
sete sil
movzx esi, sil
mov r15d, dword [rax]
mov eax, dword [rax + 4]
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x48]
add rsi, rax
mov rax, qword [rsp + 0x28]
mov r11, rsi
sub r11, rax
mov r8d, r11d
call fcn.1403ad810
sub r11d, eax
xor eax, eax
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x50]
cmp r11d, eax
jae 0x1403804cb
mov dword [rsp + 0x60], eax
xor eax, eax
mov dword [rsp + 0x50], eax
xor r14d, r14d
mov dword [rsp + 0x78], r14d
cmp r11d, r15d
jae 0x1403804e0
mov dword [rsp + 0x78], r15d
xor r15d, r15d
mov rax, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
sub rax, 0x20
mov qword [rsp + 0x70], rax
lea rax, [rsi + 0x80]
lea r13, [rsi + 1]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x88]
lea r12, [rsi + rax]
mov rax, qword [rsp + 0x68]
lea rdi, [r12 + 1]
cmp rdi, rax
jb 0x14038053a
cmp dword [rsp + 0x78], 0
je 0x14038074e
test r15d, r15d
jne 0x140380759
jmp 0x14038074e
cmp dword [rsp + 0x3c], 0x20
ja 0x14037fdcd
mov edx, dword [rsp + 0x3c]
mov rcx, rsi
call fcn.1403adf90
mov edx, dword [rsp + 0x3c]
mov rcx, r13
mov r14, rax
call fcn.1403adf90
mov rcx, qword [rsp + 0x30]
mov r9, qword [rsp + 0x88]
mov r8d, dword [rcx + r14*4]
mov ecx, r15d
mov qword [rsp + 0xa0], rcx
mov rcx, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x28]
mov rdx, r12
sub rdx, rcx
mov rcx, rsi
sub rcx, r11
mov r11, qword [rsp + 0x30]
mov r10d, dword [rdx]
mov dword [rsp + 0x80], ecx
mov dword [r11 + r14*4], ecx
cmp dword [r12], r10d
jne 0x1403805f2
test r15d, r15d
je 0x1403805f2
mov rcx, qword [rsp + 0x28]
mov dil, byte [rdx - 1]
xor r14d, r14d
mov rsi, r12
cmp byte [r12 - 1], dil
mov rdi, rdx
mov r12d, r15d
mov r15d, dword [rsp + 0x50]
sete r14b
sub r13, rcx
mov dword [r11 + rax*4], r13d
sub rsi, r14
sub rdi, r14
mov r13d, 1
add r14, 4
jmp 0x1403807dd
mov ecx, dword [rsi]
mov r10d, dword [rsp + 0x7c]
mov edx, ecx
xor edx, 1
cmp r8d, r10d
jb 0x14038060f
mov r10, qword [rsp + 0x28]
mov edx, r8d
mov edx, dword [r10 + rdx]
mov r10, qword [rsp + 0x30]
lea r11, [r10 + rax*4]
mov rax, qword [rsp + 0x28]
mov r10, r13
sub r10, rax
cmp ecx, edx
jne 0x14038062f
mov dword [r11], r10d
jmp 0x140380794
mov r8d, dword [r11]
mov edx, dword [rsp + 0x3c]
mov rcx, r12
mov qword [rsp + 0xb8], r10
mov qword [rsp + 0xb0], r9
mov qword [rsp + 0xa8], r11
mov dword [rsp + 0x80], r8d
call fcn.1403adf90
mov r8d, dword [rsp + 0x80]
mov r11, qword [rsp + 0xa8]
mov r14, rax
mov eax, dword [rsp + 0x7c]
mov r10, qword [rsp + 0xb8]
mov r9, qword [rsp + 0xb0]
cmp r8d, eax
mov dword [r11], r10d
jb 0x14038069a
mov rsi, qword [rsp + 0x28]
mov eax, r8d
mov eax, dword [rsi + rax]
jmp 0x1403806a1
mov eax, dword [r13]
xor eax, 1
cmp dword [r13], eax
jne 0x1403806ce
cmp r9, 4
ja 0x1403806be
mov rax, qword [rsp + 0x28]
sub r12, rax
mov rax, qword [rsp + 0x30]
mov dword [rax + r14*4], r12d
mov dword [rsp + 0x80], r10d
mov rsi, r13
jmp 0x140380794
mov rax, qword [rsp + 0x30]
mov edx, dword [rsp + 0x3c]
mov rcx, rdi
mov qword [rsp + 0xa8], r9
mov r8d, dword [rax + r14*4]
mov dword [rsp + 0x80], r8d
call fcn.1403adf90
mov r9, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0x98]
mov r8d, dword [rsp + 0x80]
lea rcx, [r12 + r9]
lea rdx, [rdi + r9]
cmp rcx, rsi
jb 0x14038072f
prefetcht0 byte [rdi + 0x40]
prefetcht0 byte [rdi + 0x80]
inc r9
sub qword [rsp + 0x98], 0xffffffffffffff80
mov r13, rdi
mov rdi, qword [rsp + 0x68]
mov rsi, r12
cmp rdx, rdi
jae 0x140380521
mov rdi, rdx
mov r12, rcx
jmp 0x14038057c
test r15d, r15d
cmove r15d, dword [rsp + 0x78]
jmp 0x140380761
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x58]
cmp dword [rsp + 0x50], 0
mov dword [rax], r15d
mov eax, dword [rsp + 0x50]
cmove eax, dword [rsp + 0x60]
mov dword [rsp + 0x60], eax
mov rax, qword [rsp + 0x58]
mov ebx, dword [rsp + 0x60]
mov dword [rax + 4], ebx
mov rax, qword [rsp + 0x40]
sub rax, rbp
jmp 0x140382324
mov rax, qword [rsp + 0x28]
mov edi, r8d
add rdi, rax
mov rax, rsi
sub rax, rdi
mov r12d, eax
test eax, eax
je 0x140380008
lea r13d, [rax + 3]
lea rax, [rdi + 4]
mov r14, rax
sub r14, rdi
cmp rbp, rsi
jae 0x1403807dd
cmp qword [rsp + 0x90], rdi
jae 0x1403807dd
mov cl, byte [rdi - 1]
cmp byte [rsi - 1], cl
jne 0x1403807dd
dec rsi
dec rdi
jmp 0x1403807b8
mov r8, qword [rsp + 0x40]
lea rdx, [rdi + r14]
lea rcx, [rsi + r14]
mov rdi, rsi
sub rdi, rbp
call fcn.14039b620
add r14, rax
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
lea rdx, [rcx + rdi]
cmp rax, rdx
jb 0x1403800c9
cmp qword [rsp + 0x40], rsi
jb 0x1403800e9
cmp qword [rsp + 0x70], rsi
jb 0x1403808ab
movups xmm5, xmmword [rbp]
movups xmmword [rcx], xmm5
cmp rdi, 0x10
ja 0x14038085a
add qword [rbx + 0x18], rdi
jmp 0x1403808e7
mov rax, qword [rbx + 0x18]
mov rdx, rax
sub rdx, rbp
add rdx, 0xf
cmp rdx, 0x1e
jbe 0x140380133
movups xmm0, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm0
cmp rdi, 0x20
jle 0x1403808bb
lea rdx, [rax + rdi]
add rbp, 0x20
add rax, 0x20
movups xmm1, xmmword [rbp]
add rax, 0x20
add rbp, 0x20
movups xmmword [rax - 0x20], xmm1
movups xmm2, xmmword [rbp - 0x10]
movups xmmword [rax - 0x10], xmm2
cmp rax, rdx
jb 0x14038088c
jmp 0x1403808bb
mov r9, qword [rsp + 0x70]
mov r8, rsi
mov rdx, rbp
call fcn.1403b3890
add qword [rbx + 0x18], rdi
cmp rdi, 0xffff
jbe 0x1403808e7
cmp dword [rbx + 0x48], 0
jne 0x1403801a8
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
mov dword [rbx + 0x48], 1
sar rax, 3
mov dword [rbx + 0x4c], eax
mov rax, qword [rbx + 8]
mov word [rax + 4], di
mov dword [rax], r13d
cmp r14, 2
jbe 0x1403801d6
lea rcx, [r14 - 3]
cmp rcx, 0xffff
jbe 0x140380927
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
add rsi, r14
mov qword [rbx + 8], rax
cmp qword [rsp + 0x68], rsi
jae 0x14038094d
mov dword [rsp + 0x50], r15d
mov rbp, rsi
mov r15d, r12d
jmp 0x1403804f3
mov eax, dword [rsp + 0x80]
mov rdi, qword [rsp + 0x28]
lea rcx, [rdi + rax + 2]
cmp qword [rsp + 0x48], rcx
jae 0x14038026d
mov edx, dword [rsp + 0x3c]
call fcn.1403adf90
mov rdi, qword [rsp + 0x30]
lea rcx, [rsi - 2]
mov rdx, rax
mov eax, dword [rsp + 0x80]
add eax, 2
mov dword [rdi + rdx*4], eax
mov rax, qword [rsp + 0x28]
mov rdi, rcx
mov edx, dword [rsp + 0x3c]
sub rdi, rax
call fcn.1403adf90
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], edi
test r15d, r15d
je 0x14038093d
xchg r12d, r15d
mov rdx, rsi
mov r14, rsi
mov eax, r12d
sub rdx, rax
mov edi, dword [rdx]
cmp dword [rsi], edi
jne 0x140380ac9
mov edx, 4
mov r8, qword [rsp + 0x40]
lea rcx, [rsi + 4]
mov r13, rsi
sub rdx, rax
add rdx, rsi
call fcn.14039b620
mov edx, dword [rsp + 0x3c]
mov rcx, rsi
lea rbp, [rax + 4]
mov rdi, rax
mov rax, qword [rsp + 0x28]
add rsi, rbp
sub r13, rax
call fcn.1403adf90
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], r13d
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
cmp rax, rcx
jb 0x1403800c9
cmp qword [rsp + 0x40], r14
jb 0x1403800e9
cmp qword [rsp + 0x70], r14
jb 0x140380a59
movups xmm3, xmmword [r14]
movups xmmword [rcx], xmm3
jmp 0x140380a69
mov r9, qword [rsp + 0x70]
mov r8, r14
mov rdx, r14
call fcn.1403b3890
mov rax, qword [rbx + 8]
mov word [rax + 4], 0
mov dword [rax], 1
cmp rbp, 2
jbe 0x1403801d6
inc rdi
cmp rdi, 0xffff
jbe 0x140380aad
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], di
add rax, 8
mov qword [rbx + 8], rax
cmp qword [rsp + 0x68], rsi
jae 0x1403809ac
jmp 0x14038093d
xchg r12d, r15d
jmp 0x14038093d
mov rax, qword [rcx + 0x70]
mov r12d, dword [rcx + 0x18]
mov r9d, dword [rcx + 0x100]
mov edx, dword [rcx + 0x28]
mov qword [rsp + 0x30], rax
mov eax, dword [rcx + 0x108]
mov dword [rsp + 0x78], r9d
mov dword [rsp + 0x3c], eax
mov rax, qword [rcx + 8]
mov ecx, r12d
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x28]
sub rax, rsi
lea r8d, [rax + r11]
call fcn.1403ad810
mov r9d, dword [rsp + 0x78]
mov ecx, r12d
mov dword [rsp + 0x68], eax
mov eax, eax
add rax, rsi
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x70]
add rax, r11
mov qword [rsp + 0x50], rax
sub rax, 8
cmp qword [rsp + 0x48], rsi
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x58]
sete sil
xor r13d, r13d
movzx esi, sil
mov ebp, dword [rax]
mov eax, dword [rax + 4]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x48]
add rsi, rax
mov rax, qword [rsp + 0x28]
mov r11, rsi
sub r11, rax
mov r8d, r11d
call fcn.1403ad810
mov dword [rsp + 0x78], r13d
sub r11d, eax
mov eax, dword [rsp + 0x40]
cmp edi, 6
je 0x140381742
cmp edi, 7
je 0x140381d0d
cmp edi, 5
je 0x140381175
cmp r11d, eax
jae 0x140380bbb
xor r12d, r12d
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x40], r12d
xor edi, edi
mov dword [rsp + 0x7c], edi
cmp r11d, ebp
jae 0x140380bcc
mov dword [rsp + 0x7c], ebp
xor ebp, ebp
mov rax, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
sub rax, 0x20
mov qword [rsp + 0x80], rax
lea rax, [rsi + 0x80]
lea r12, [rsi + 3]
mov qword [rsp + 0x90], rax
lea r14, [rsi + 1]
lea r13, [rsi + 2]
mov rax, qword [rsp + 0x60]
cmp r12, rax
jae 0x140381d68
cmp dword [rsp + 0x3c], 0x20
ja 0x14037fdcd
mov edx, dword [rsp + 0x3c]
mov rcx, rsi
call fcn.1403adb20
mov edx, dword [rsp + 0x3c]
mov rcx, r14
mov r15, rax
call fcn.1403adb20
mov rcx, qword [rsp + 0x30]
mov r9d, 2
mov r8d, dword [rcx + r15*4]
mov ecx, ebp
mov qword [rsp + 0x98], rcx
mov rcx, qword [rsp + 0x98]
mov r11, qword [rsp + 0x28]
mov rdx, r13
sub rdx, rcx
mov rcx, rsi
sub rcx, r11
mov r11, qword [rsp + 0x30]
mov r10d, dword [rdx]
mov dword [rsp + 0x88], ecx
mov dword [r11 + r15*4], ecx
cmp dword [r13], r10d
jne 0x140380cbd
test ebp, ebp
je 0x140380cbd
mov sil, byte [rdx - 1]
xor r15d, r15d
mov rcx, qword [rsp + 0x28]
cmp byte [r13 - 1], sil
mov rsi, r13
mov r13d, ebp
mov ebp, dword [rsp + 0x40]
sete r15b
sub r14, rcx
sub rdx, r15
mov dword [r11 + rax*4], r14d
sub rsi, r15
mov r14d, 1
mov r12, rdx
add r15, 4
jmp 0x140380e65
mov edx, dword [rsi]
mov r10d, dword [rsp + 0x68]
mov ecx, edx
xor ecx, 1
cmp r8d, r10d
jb 0x140380cda
mov r10, qword [rsp + 0x28]
mov ecx, r8d
mov ecx, dword [r10 + rcx]
mov r10, qword [rsp + 0x30]
lea r11, [r10 + rax*4]
mov rax, qword [rsp + 0x28]
mov r10, r14
sub r10, rax
cmp ecx, edx
jne 0x140380cfa
mov dword [r11], r10d
jmp 0x140380e1c
mov r8d, dword [r11]
mov edx, dword [rsp + 0x3c]
mov rcx, r13
mov qword [rsp + 0xb0], r10
mov qword [rsp + 0xa8], r9
mov qword [rsp + 0xa0], r11
mov dword [rsp + 0x88], r8d
call fcn.1403adb20
mov r8d, dword [rsp + 0x88]
mov r11, qword [rsp + 0xa0]
mov r15, rax
mov eax, dword [rsp + 0x68]
mov r10, qword [rsp + 0xb0]
mov r9, qword [rsp + 0xa8]
cmp r8d, eax
mov dword [r11], r10d
jb 0x140380d65
mov rsi, qword [rsp + 0x28]
mov eax, r8d
mov eax, dword [rsi + rax]
jmp 0x140380d6b
mov eax, dword [r14]
xor eax, 1
cmp dword [r14], eax
jne 0x140380d97
cmp r9, 4
ja 0x140380d87
mov rax, qword [rsp + 0x28]
sub r13, rax
mov rax, qword [rsp + 0x30]
mov dword [rax + r15*4], r13d
mov dword [rsp + 0x88], r10d
mov rsi, r14
jmp 0x140380e1c
mov rax, qword [rsp + 0x30]
mov edx, dword [rsp + 0x3c]
mov rcx, r12
mov qword [rsp + 0xa0], r9
mov r8d, dword [rax + r15*4]
mov dword [rsp + 0x88], r8d
call fcn.1403adb20
mov r9, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x90]
mov r8d, dword [rsp + 0x88]
lea rcx, [r13 + r9]
lea rdx, [r12 + r9]
cmp rcx, rsi
jb 0x140380dfd
prefetcht0 byte [r12 + 0x40]
inc r9
prefetcht0 byte [r12 + 0x80]
sub qword [rsp + 0x90], 0xffffffffffffff80
mov r10, qword [rsp + 0x60]
mov rsi, r13
mov r14, r12
cmp rdx, r10
jae 0x140381d68
mov r12, rdx
mov r13, rcx
jmp 0x140380c4a
mov rax, qword [rsp + 0x28]
mov r12d, r8d
add r12, rax
mov rax, rsi
sub rax, r12
mov r13d, eax
test eax, eax
je 0x140380008
lea r14d, [rax + 3]
lea rax, [r12 + 4]
mov r15, rax
sub r15, r12
cmp rdi, rsi
jae 0x140380e65
cmp qword [rsp + 0x70], r12
jae 0x140380e65
mov cl, byte [r12 - 1]
cmp byte [rsi - 1], cl
jne 0x140380e65
dec rsi
dec r12
jmp 0x140380e41
mov r8, qword [rsp + 0x50]
lea rdx, [r12 + r15]
lea rcx, [rsi + r15]
mov r12, rsi
sub r12, rdi
call fcn.14039b620
add r15, rax
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
lea rdx, [rcx + r12]
cmp rax, rdx
jb 0x1403800c9
cmp qword [rsp + 0x50], rsi
jb 0x1403800e9
cmp qword [rsp + 0x80], rsi
jb 0x140380f34
movups xmm4, xmmword [rdi]
movups xmmword [rcx], xmm4
cmp r12, 0x10
ja 0x140380ee4
add qword [rbx + 0x18], r12
jmp 0x140380f73
mov rax, qword [rbx + 0x18]
mov rdx, rax
sub rdx, rdi
add rdx, 0xf
cmp rdx, 0x1e
jbe 0x140380133
movups xmm5, xmmword [rdi + 0x10]
movups xmmword [rax + 0x10], xmm5
cmp r12, 0x20
jle 0x140380f47
lea rdx, [rax + r12]
add rdi, 0x20
add rax, 0x20
movups xmm0, xmmword [rdi]
add rax, 0x20
add rdi, 0x20
movups xmmword [rax - 0x20], xmm0
movups xmm1, xmmword [rdi - 0x10]
movups xmmword [rax - 0x10], xmm1
cmp rax, rdx
jb 0x140380f16
jmp 0x140380f47
mov r9, qword [rsp + 0x80]
mov r8, rsi
mov rdx, rdi
call fcn.1403b3890
add qword [rbx + 0x18], r12
cmp r12, 0xffff
jbe 0x140380f73
cmp dword [rbx + 0x48], 0
jne 0x1403801a8
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
mov dword [rbx + 0x48], 1
sar rax, 3
mov dword [rbx + 0x4c], eax
mov rax, qword [rbx + 8]
mov word [rax + 4], r12w
mov dword [rax], r14d
cmp r15, 2
jbe 0x1403801d6
lea rcx, [r15 - 3]
cmp rcx, 0xffff
jbe 0x140380fb4
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
lea rdi, [rsi + r15]
mov qword [rbx + 8], rax
cmp qword [rsp + 0x60], rdi
jae 0x140380fda
mov dword [rsp + 0x40], ebp
mov rsi, rdi
mov ebp, r13d
jmp 0x140380be2
mov eax, dword [rsp + 0x88]
mov rsi, qword [rsp + 0x28]
lea rcx, [rsi + rax + 2]
cmp qword [rsp + 0x48], rcx
jae 0x14038026d
mov edx, dword [rsp + 0x3c]
call fcn.1403adb20
mov rsi, qword [rsp + 0x30]
lea rcx, [rdi - 2]
mov rdx, rax
mov eax, dword [rsp + 0x88]
add eax, 2
mov dword [rsi + rdx*4], eax
mov rax, qword [rsp + 0x28]
mov rsi, rcx
mov edx, dword [rsp + 0x3c]
sub rsi, rax
call fcn.1403adb20
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], esi
test ebp, ebp
je 0x140380fcb
xchg r13d, ebp
mov r14, rdi
mov r15d, 4
mov eax, r13d
mov rdx, rdi
sub rdx, rax
mov esi, dword [rdx]
cmp dword [rdi], esi
jne 0x14038116d
mov rdx, r15
mov r8, qword [rsp + 0x50]
lea rcx, [rdi + 4]
sub rdx, rax
add rdx, rdi
call fcn.14039b620
mov rcx, qword [rsp + 0x28]
mov edx, dword [rsp + 0x3c]
lea r12, [rax + 4]
mov rsi, rax
mov rax, rdi
sub rax, rcx
mov rcx, rdi
add rdi, r12
mov qword [rsp + 0x40], rax
call fcn.1403adb20
mov rcx, qword [rsp + 0x30]
mov edx, dword [rsp + 0x40]
mov dword [rcx + rax*4], edx
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
cmp rax, rcx
jb 0x1403800c9
cmp qword [rsp + 0x50], r14
jb 0x1403800e9
cmp qword [rsp + 0x80], r14
jb 0x1403810f4
movups xmm2, xmmword [r14]
movups xmmword [rcx], xmm2
jmp 0x140381107
mov r9, qword [rsp + 0x80]
mov r8, r14
mov rdx, r14
call fcn.1403b3890
mov rax, qword [rbx + 8]
mov word [rax + 4], 0
mov dword [rax], 1
cmp r12, 2
jbe 0x1403801d6
inc rsi
cmp rsi, 0xffff
jbe 0x14038114b
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], si
add rax, 8
mov qword [rbx + 8], rax
cmp qword [rsp + 0x60], rdi
jb 0x140380fcb
xchg r13d, ebp
mov r14, rdi
jmp 0x140381044
xchg r13d, ebp
jmp 0x140380fcb
cmp r11d, eax
jae 0x140381186
xor r10d, r10d
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x40], r10d
xor r9d, r9d
mov dword [rsp + 0x7c], r9d
cmp r11d, ebp
jae 0x140381199
mov dword [rsp + 0x7c], ebp
xor ebp, ebp
mov rax, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
sub rax, 0x20
mov qword [rsp + 0x80], rax
lea rax, [rsi + 0x80]
lea r12, [rsi + 3]
mov qword [rsp + 0x90], rax
lea r14, [rsi + 1]
lea r13, [rsi + 2]
mov rax, qword [rsp + 0x60]
cmp r12, rax
jae 0x140381d68
cmp dword [rsp + 0x3c], 0x20
ja 0x14037fdcd
mov edx, dword [rsp + 0x3c]
mov rcx, rsi
call fcn.1403adc70
mov edx, dword [rsp + 0x3c]
mov rcx, r14
mov r15, rax
call fcn.1403adc70
mov rcx, qword [rsp + 0x30]
mov r9d, 2
mov r8d, dword [rcx + r15*4]
mov ecx, ebp
mov qword [rsp + 0x98], rcx
mov rcx, qword [rsp + 0x98]
mov r11, qword [rsp + 0x28]
mov rdx, r13
sub rdx, rcx
mov rcx, rsi
sub rcx, r11
mov r11, qword [rsp + 0x30]
mov r10d, dword [rdx]
mov dword [rsp + 0x88], ecx
mov dword [r11 + r15*4], ecx
cmp dword [r13], r10d
jne 0x14038128a
test ebp, ebp
je 0x14038128a
mov sil, byte [rdx - 1]
xor r15d, r15d
mov rcx, qword [rsp + 0x28]
cmp byte [r13 - 1], sil
mov rsi, r13
mov r13d, ebp
mov ebp, dword [rsp + 0x40]
sete r15b
sub r14, rcx
sub rdx, r15
mov dword [r11 + rax*4], r14d
sub rsi, r15
mov r14d, 1
mov r12, rdx
add r15, 4
jmp 0x140381432
mov edx, dword [rsi]
mov r10d, dword [rsp + 0x68]
mov ecx, edx
xor ecx, 1
cmp r8d, r10d
jb 0x1403812a7
mov r10, qword [rsp + 0x28]
mov ecx, r8d
mov ecx, dword [r10 + rcx]
mov r10, qword [rsp + 0x30]
lea r11, [r10 + rax*4]
mov rax, qword [rsp + 0x28]
mov r10, r14
sub r10, rax
cmp ecx, edx
jne 0x1403812c7
mov dword [r11], r10d
jmp 0x1403813e9
mov r8d, dword [r11]
mov edx, dword [rsp + 0x3c]
mov rcx, r13
mov qword [rsp + 0xb0], r10
mov qword [rsp + 0xa8], r9
mov qword [rsp + 0xa0], r11
mov dword [rsp + 0x88], r8d
call fcn.1403adc70
mov r8d, dword [rsp + 0x88]
mov r11, qword [rsp + 0xa0]
mov r15, rax
mov eax, dword [rsp + 0x68]
mov r10, qword [rsp + 0xb0]
mov r9, qword [rsp + 0xa8]
cmp r8d, eax
mov dword [r11], r10d
jb 0x140381332
mov rsi, qword [rsp + 0x28]
mov eax, r8d
mov eax, dword [rsi + rax]
jmp 0x140381338
mov eax, dword [r14]
xor eax, 1
cmp dword [r14], eax
jne 0x140381364
cmp r9, 4
ja 0x140381354
mov rax, qword [rsp + 0x28]
sub r13, rax
mov rax, qword [rsp + 0x30]
mov dword [rax + r15*4], r13d
mov dword [rsp + 0x88], r10d
mov rsi, r14
jmp 0x1403813e9
mov rax, qword [rsp + 0x30]
mov edx, dword [rsp + 0x3c]
mov rcx, r12
mov qword [rsp + 0xa0], r9
mov r8d, dword [rax + r15*4]
mov dword [rsp + 0x88], r8d
call fcn.1403adc70
mov r9, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x90]
mov r8d, dword [rsp + 0x88]
lea rcx, [r13 + r9]
lea rdx, [r12 + r9]
cmp rcx, rsi
jb 0x1403813ca
prefetcht0 byte [r12 + 0x40]
inc r9
prefetcht0 byte [r12 + 0x80]
sub qword [rsp + 0x90], 0xffffffffffffff80
mov r10, qword [rsp + 0x60]
mov rsi, r13
mov r14, r12
cmp rdx, r10
jae 0x140381d68
mov r12, rdx
mov r13, rcx
jmp 0x140381217
mov rax, qword [rsp + 0x28]
mov r12d, r8d
add r12, rax
mov rax, rsi
sub rax, r12
mov r13d, eax
test eax, eax
je 0x140380008
lea r14d, [rax + 3]
lea rax, [r12 + 4]
mov r15, rax
sub r15, r12
cmp rdi, rsi
jae 0x140381432
cmp qword [rsp + 0x70], r12
jae 0x140381432
mov cl, byte [r12 - 1]
cmp byte [rsi - 1], cl
jne 0x140381432
dec rsi
dec r12
jmp 0x14038140e
mov r8, qword [rsp + 0x50]
lea rdx, [r12 + r15]
lea rcx, [rsi + r15]
mov r12, rsi
sub r12, rdi
call fcn.14039b620
add r15, rax
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
lea rdx, [rcx + r12]
cmp rax, rdx
jb 0x1403800c9
cmp qword [rsp + 0x50], rsi
jb 0x1403800e9
cmp qword [rsp + 0x80], rsi
jb 0x140381501
movups xmm3, xmmword [rdi]
movups xmmword [rcx], xmm3
cmp r12, 0x10
ja 0x1403814b1
add qword [rbx + 0x18], r12
jmp 0x140381540
mov rax, qword [rbx + 0x18]
mov rdx, rax
sub rdx, rdi
add rdx, 0xf
cmp rdx, 0x1e
jbe 0x140380133
movups xmm4, xmmword [rdi + 0x10]
movups xmmword [rax + 0x10], xmm4
cmp r12, 0x20
jle 0x140381514
lea rdx, [rax + r12]
add rdi, 0x20
add rax, 0x20
movups xmm5, xmmword [rdi]
add rax, 0x20
add rdi, 0x20
movups xmmword [rax - 0x20], xmm5
movups xmm0, xmmword [rdi - 0x10]
movups xmmword [rax - 0x10], xmm0
cmp rax, rdx
jb 0x1403814e3
jmp 0x140381514
mov r9, qword [rsp + 0x80]
mov r8, rsi
mov rdx, rdi
call fcn.1403b3890
add qword [rbx + 0x18], r12
cmp r12, 0xffff
jbe 0x140381540
cmp dword [rbx + 0x48], 0
jne 0x1403801a8
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
mov dword [rbx + 0x48], 1
sar rax, 3
mov dword [rbx + 0x4c], eax
mov rax, qword [rbx + 8]
mov word [rax + 4], r12w
mov dword [rax], r14d
cmp r15, 2
jbe 0x1403801d6
lea rcx, [r15 - 3]
cmp rcx, 0xffff
jbe 0x140381581
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
lea rdi, [rsi + r15]
mov qword [rbx + 8], rax
cmp qword [rsp + 0x60], rdi
jae 0x1403815a7
mov dword [rsp + 0x40], ebp
mov rsi, rdi
mov ebp, r13d
jmp 0x1403811af
mov eax, dword [rsp + 0x88]
mov rsi, qword [rsp + 0x28]
lea rcx, [rsi + rax + 2]
cmp qword [rsp + 0x48], rcx
jae 0x14038026d
mov edx, dword [rsp + 0x3c]
call fcn.1403adc70
mov rsi, qword [rsp + 0x30]
lea rcx, [rdi - 2]
mov rdx, rax
mov eax, dword [rsp + 0x88]
add eax, 2
mov dword [rsi + rdx*4], eax
mov rax, qword [rsp + 0x28]
mov rsi, rcx
mov edx, dword [rsp + 0x3c]
sub rsi, rax
call fcn.1403adc70
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], esi
test ebp, ebp
je 0x140381598
xchg r13d, ebp
mov r14, rdi
mov r15d, 4
mov eax, r13d
mov rdx, rdi
sub rdx, rax
mov esi, dword [rdx]
cmp dword [rdi], esi
jne 0x14038173a
mov rdx, r15
mov r8, qword [rsp + 0x50]
lea rcx, [rdi + 4]
sub rdx, rax
add rdx, rdi
call fcn.14039b620
mov rcx, qword [rsp + 0x28]
mov edx, dword [rsp + 0x3c]
lea r12, [rax + 4]
mov rsi, rax
mov rax, rdi
sub rax, rcx
mov rcx, rdi
add rdi, r12
mov qword [rsp + 0x40], rax
call fcn.1403adc70
mov rcx, qword [rsp + 0x30]
mov edx, dword [rsp + 0x40]
mov dword [rcx + rax*4], edx
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
cmp rax, rcx
jb 0x1403800c9
cmp qword [rsp + 0x50], r14
jb 0x1403800e9
cmp qword [rsp + 0x80], r14
jb 0x1403816c1
movups xmm1, xmmword [r14]
movups xmmword [rcx], xmm1
jmp 0x1403816d4
mov r9, qword [rsp + 0x80]
mov r8, r14
mov rdx, r14
call fcn.1403b3890
mov rax, qword [rbx + 8]
mov word [rax + 4], 0
mov dword [rax], 1
cmp r12, 2
jbe 0x1403801d6
inc rsi
cmp rsi, 0xffff
jbe 0x140381718
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], si
add rax, 8
mov qword [rbx + 8], rax
cmp qword [rsp + 0x60], rdi
jb 0x140381598
xchg r13d, ebp
mov r14, rdi
jmp 0x140381611
xchg r13d, ebp
jmp 0x140381598
cmp r11d, eax
jae 0x140381753
xor r8d, r8d
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x40], r8d
xor ecx, ecx
mov dword [rsp + 0x7c], ecx
cmp r11d, ebp
jae 0x140381764
mov dword [rsp + 0x7c], ebp
xor ebp, ebp
mov rax, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
sub rax, 0x20
mov qword [rsp + 0x80], rax
lea rax, [rsi + 0x80]
lea r12, [rsi + 3]
mov qword [rsp + 0x90], rax
lea r14, [rsi + 1]
lea r13, [rsi + 2]
mov rax, qword [rsp + 0x60]
cmp r12, rax
jae 0x140381d68
cmp dword [rsp + 0x3c], 0x20
ja 0x14037fdcd
mov edx, dword [rsp + 0x3c]
mov rcx, rsi
call fcn.1403ade00
mov edx, dword [rsp + 0x3c]
mov rcx, r14
mov r15, rax
call fcn.1403ade00
mov rcx, qword [rsp + 0x30]
mov r9d, 2
mov r8d, dword [rcx + r15*4]
mov ecx, ebp
mov qword [rsp + 0x98], rcx
mov rcx, qword [rsp + 0x98]
mov r11, qword [rsp + 0x28]
mov rdx, r13
sub rdx, rcx
mov rcx, rsi
sub rcx, r11
mov r11, qword [rsp + 0x30]
mov r10d, dword [rdx]
mov dword [rsp + 0x88], ecx
mov dword [r11 + r15*4], ecx
cmp dword [r13], r10d
jne 0x140381855
test ebp, ebp
je 0x140381855
mov sil, byte [rdx - 1]
xor r15d, r15d
mov rcx, qword [rsp + 0x28]
cmp byte [r13 - 1], sil
mov rsi, r13
mov r13d, ebp
mov ebp, dword [rsp + 0x40]
sete r15b
sub r14, rcx
sub rdx, r15
mov dword [r11 + rax*4], r14d
sub rsi, r15
mov r14d, 1
mov r12, rdx
add r15, 4
jmp 0x1403819fd
mov edx, dword [rsi]
mov r10d, dword [rsp + 0x68]
mov ecx, edx
xor ecx, 1
cmp r8d, r10d
jb 0x140381872
mov r10, qword [rsp + 0x28]
mov ecx, r8d
mov ecx, dword [r10 + rcx]
mov r10, qword [rsp + 0x30]
lea r11, [r10 + rax*4]
mov rax, qword [rsp + 0x28]
mov r10, r14
sub r10, rax
cmp ecx, edx
jne 0x140381892
mov dword [r11], r10d
jmp 0x1403819b4
mov r8d, dword [r11]
mov edx, dword [rsp + 0x3c]
mov rcx, r13
mov qword [rsp + 0xb0], r10
mov qword [rsp + 0xa8], r9
mov qword [rsp + 0xa0], r11
mov dword [rsp + 0x88], r8d
call fcn.1403ade00
mov r8d, dword [rsp + 0x88]
mov r11, qword [rsp + 0xa0]
mov r15, rax
mov eax, dword [rsp + 0x68]
mov r10, qword [rsp + 0xb0]
mov r9, qword [rsp + 0xa8]
cmp r8d, eax
mov dword [r11], r10d
jb 0x1403818fd
mov rsi, qword [rsp + 0x28]
mov eax, r8d
mov eax, dword [rsi + rax]
jmp 0x140381903
mov eax, dword [r14]
xor eax, 1
cmp dword [r14], eax
jne 0x14038192f
cmp r9, 4
ja 0x14038191f
mov rax, qword [rsp + 0x28]
sub r13, rax
mov rax, qword [rsp + 0x30]
mov dword [rax + r15*4], r13d
mov dword [rsp + 0x88], r10d
mov rsi, r14
jmp 0x1403819b4
mov rax, qword [rsp + 0x30]
mov edx, dword [rsp + 0x3c]
mov rcx, r12
mov qword [rsp + 0xa0], r9
mov r8d, dword [rax + r15*4]
mov dword [rsp + 0x88], r8d
call fcn.1403ade00
mov r9, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x90]
mov r8d, dword [rsp + 0x88]
lea rcx, [r13 + r9]
lea rdx, [r12 + r9]
cmp rcx, rsi
jb 0x140381995
prefetcht0 byte [r12 + 0x40]
inc r9
prefetcht0 byte [r12 + 0x80]
sub qword [rsp + 0x90], 0xffffffffffffff80
mov r11, qword [rsp + 0x60]
mov rsi, r13
mov r14, r12
cmp rdx, r11
jae 0x140381d68
mov r12, rdx
mov r13, rcx
jmp 0x1403817e2
mov rax, qword [rsp + 0x28]
mov r12d, r8d
add r12, rax
mov rax, rsi
sub rax, r12
mov r13d, eax
test eax, eax
je 0x140380008
lea r14d, [rax + 3]
lea rax, [r12 + 4]
mov r15, rax
sub r15, r12
cmp rdi, rsi
jae 0x1403819fd
cmp qword [rsp + 0x70], r12
jae 0x1403819fd
mov cl, byte [r12 - 1]
cmp byte [rsi - 1], cl
jne 0x1403819fd
dec rsi
dec r12
jmp 0x1403819d9
mov r8, qword [rsp + 0x50]
lea rdx, [r12 + r15]
lea rcx, [rsi + r15]
mov r12, rsi
sub r12, rdi
call fcn.14039b620
add r15, rax
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
lea rdx, [rcx + r12]
cmp rax, rdx
jb 0x1403800c9
cmp qword [rsp + 0x50], rsi
jb 0x1403800e9
cmp qword [rsp + 0x80], rsi
jb 0x140381acc
movups xmm2, xmmword [rdi]
movups xmmword [rcx], xmm2
cmp r12, 0x10
ja 0x140381a7c
add qword [rbx + 0x18], r12
jmp 0x140381b0b
mov rax, qword [rbx + 0x18]
mov rdx, rax
sub rdx, rdi
add rdx, 0xf
cmp rdx, 0x1e
jbe 0x140380133
movups xmm3, xmmword [rdi + 0x10]
movups xmmword [rax + 0x10], xmm3
cmp r12, 0x20
jle 0x140381adf
lea rdx, [rax + r12]
add rdi, 0x20
add rax, 0x20
movups xmm4, xmmword [rdi]
add rax, 0x20
add rdi, 0x20
movups xmmword [rax - 0x20], xmm4
movups xmm5, xmmword [rdi - 0x10]
movups xmmword [rax - 0x10], xmm5
cmp rax, rdx
jb 0x140381aae
jmp 0x140381adf
mov r9, qword [rsp + 0x80]
mov r8, rsi
mov rdx, rdi
call fcn.1403b3890
add qword [rbx + 0x18], r12
cmp r12, 0xffff
jbe 0x140381b0b
cmp dword [rbx + 0x48], 0
jne 0x1403801a8
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
mov dword [rbx + 0x48], 1
sar rax, 3
mov dword [rbx + 0x4c], eax
mov rax, qword [rbx + 8]
mov word [rax + 4], r12w
mov dword [rax], r14d
cmp r15, 2
jbe 0x1403801d6
lea rcx, [r15 - 3]
cmp rcx, 0xffff
jbe 0x140381b4c
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
lea rdi, [rsi + r15]
mov qword [rbx + 8], rax
cmp qword [rsp + 0x60], rdi
jae 0x140381b72
mov dword [rsp + 0x40], ebp
mov rsi, rdi
mov ebp, r13d
jmp 0x14038177a
mov eax, dword [rsp + 0x88]
mov rsi, qword [rsp + 0x28]
lea rcx, [rsi + rax + 2]
cmp qword [rsp + 0x48], rcx
jae 0x14038026d
mov edx, dword [rsp + 0x3c]
call fcn.1403ade00
mov rsi, qword [rsp + 0x30]
lea rcx, [rdi - 2]
mov rdx, rax
mov eax, dword [rsp + 0x88]
add eax, 2
mov dword [rsi + rdx*4], eax
mov rax, qword [rsp + 0x28]
mov rsi, rcx
mov edx, dword [rsp + 0x3c]
sub rsi, rax
call fcn.1403ade00
mov rcx, qword [rsp + 0x30]
mov dword [rcx + rax*4], esi
test ebp, ebp
je 0x140381b63
xchg r13d, ebp
mov r14, rdi
mov r15d, 4
mov eax, r13d
mov rdx, rdi
sub rdx, rax
mov esi, dword [rdx]
cmp dword [rdi], esi
jne 0x140381d05
mov rdx, r15
mov r8, qword [rsp + 0x50]
lea rcx, [rdi + 4]
sub rdx, rax
add rdx, rdi
call fcn.14039b620
mov rcx, qword [rsp + 0x28]
mov edx, dword [rsp + 0x3c]
lea r12, [rax + 4]
mov rsi, rax
mov rax, rdi
sub rax, rcx
mov rcx, rdi
add rdi, r12
mov qword [rsp + 0x40], rax
call fcn.1403ade00
mov rcx, qword [rsp + 0x30]
mov edx, dword [rsp + 0x40]
mov dword [rcx + rax*4], edx
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
cmp rax, rcx
jb 0x1403800c9
cmp qword [rsp + 0x50], r14
jb 0x1403800e9
cmp qword [rsp + 0x80], r14
jb 0x140381c8c
movups xmm0, xmmword [r14]
movups xmmword [rcx], xmm0
jmp 0x140381c9f
mov r9, qword [rsp + 0x80]
mov r8, r14
mov rdx, r14
call fcn.1403b3890
mov rax, qword [rbx + 8]
mov word [rax + 4], 0
mov dword [rax], 1
cmp r12, 2
jbe 0x1403801d6
inc rsi
cmp rsi, 0xffff
jbe 0x140381ce3
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], si
add rax, 8
mov qword [rbx + 8], rax
cmp qword [rsp + 0x60], rdi
jb 0x140381b63
xchg r13d, ebp
mov r14, rdi
jmp 0x140381bdc
xchg r13d, ebp
jmp 0x140381b63
cmp r11d, eax
jae 0x140381d1c
xor edx, edx
mov dword [rsp + 0x78], eax
mov dword [rsp + 0x40], edx
xor eax, eax
mov dword [rsp + 0x7c], eax
cmp r11d, ebp
jae 0x140381d2d
mov dword [rsp + 0x7c], ebp
xor ebp, ebp
mov rax, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
sub rax, 0x20
mov qword [rsp + 0x80], rax
lea rax, [rsi + 0x80]
lea r12, [rsi + 3]
mov qword [rsp + 0x90], rax
lea r14, [rsi + 1]
lea r13, [rsi + 2]
mov rax, qword [rsp + 0x60]
cmp r12, rax
jb 0x140381d80
cmp dword [rsp + 0x7c], 0
je 0x140381f8f
test ebp, ebp
jne 0x140381f98
jmp 0x140381f8f
cmp dword [rsp + 0x3c], 0x20
ja 0x14037fdcd
mov edx, dword [rsp + 0x3c]
mov rcx, rsi
call fcn.1403adf90
mov edx, dword [rsp + 0x3c]
mov rcx, r14
mov r15, rax
call fcn.1403adf90
mov rcx, qword [rsp + 0x30]
mov r9d, 2
mov r8d, dword [rcx + r15*4]
mov ecx, ebp
mov qword [rsp + 0x98], rcx
mov rcx, qword [rsp + 0x98]
mov r11, qword [rsp + 0x28]
mov rdx, r13
sub rdx, rcx
mov rcx, rsi
sub rcx, r11
mov r11, qword [rsp + 0x30]
mov r10d, dword [rdx]
mov dword [rsp + 0x88], ecx
mov dword [r11 + r15*4], ecx
cmp dword [r13], r10d
jne 0x140381e30
test ebp, ebp
je 0x140381e30
mov sil, byte [rdx - 1]
xor ecx, ecx
cmp byte [r13 - 1], sil
mov rsi, r13
sete cl
mov r15d, 1
sub rdx, rcx
sub rsi, rcx
lea r13, [rcx + 4]
mov rcx, qword [rsp + 0x28]
mov r12, rdx
sub r14, rcx
mov dword [r11 + rax*4], r14d
mov r14d, ebp
mov ebp, dword [rsp + 0x40]
jmp 0x14038201b
mov edx, dword [rsi]
mov r10d, dword [rsp + 0x68]
mov ecx, edx
xor ecx, 1
cmp r8d, r10d
jb 0x140381e4d
mov r10, qword [rsp + 0x28]
mov ecx, r8d
mov ecx, dword [r10 + rcx]
mov r10, qword [rsp + 0x30]
lea r11, [r10 + rax*4]
mov rax, qword [rsp + 0x28]
mov r10, r14
sub r10, rax
cmp ecx, edx
jne 0x140381e6d
mov dword [r11], r10d
jmp 0x140381fd2
mov r8d, dword [r11]
mov edx, dword [rsp + 0x3c]
mov rcx, r13
mov qword [rsp + 0xb0], r10
mov qword [rsp + 0xa8], r9
mov qword [rsp + 0xa0], r11
mov dword [rsp + 0x88], r8d
call fcn.1403adf90
mov r8d, dword [rsp + 0x88]
mov r11, qword [rsp + 0xa0]
mov r15, rax
mov eax, dword [rsp + 0x68]
mov r10, qword [rsp + 0xb0]
mov r9, qword [rsp + 0xa8]
cmp r8d, eax
mov dword [r11], r10d
jb 0x140381ed8
mov rsi, qword [rsp + 0x28]
mov eax, r8d
mov eax, dword [rsi + rax]
jmp 0x140381ede
mov eax, dword [r14]
xor eax, 1
cmp dword [r14], eax
jne 0x140381f0a
cmp r9, 4
ja 0x140381efa
mov rax, qword [rsp + 0x28]
sub r13, rax
mov rax, qword [rsp + 0x30]
mov dword [rax + r15*4], r13d
mov dword [rsp + 0x88], r10d
mov rsi, r14
jmp 0x140381fd2
mov rax, qword [rsp + 0x30]
mov edx, dword [rsp + 0x3c]
mov rcx, r12
mov qword [rsp + 0xa0], r9
mov r8d, dword [rax + r15*4]
mov dword [rsp + 0x88], r8d
call fcn.1403adf90
mov r9, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x90]
mov r8d, dword [rsp + 0x88]
lea rcx, [r13 + r9]
lea rdx, [r12 + r9]
cmp rcx, rsi
jb 0x140381f70
prefetcht0 byte [r12 + 0x40]
inc r9
prefetcht0 byte [r12 + 0x80]
sub qword [rsp + 0x90], 0xffffffffffffff80
mov r11, qword [rsp + 0x60]
mov rsi, r13
mov r14, r12
cmp rdx, r11
jae 0x140381d68
mov r12, rdx
mov r13, rcx
jmp 0x140381dbf
test ebp, ebp
cmove ebp, dword [rsp + 0x7c]
jmp 0x140381fa0
mov eax, dword [rsp + 0x7c]
mov dword [rsp + 0x78], eax
mov rax, qword [rsp + 0x58]
cmp dword [rsp + 0x40], 0
mov dword [rax], ebp
mov eax, dword [rsp + 0x40]
cmove eax, dword [rsp + 0x78]
mov dword [rsp + 0x78], eax
mov rax, qword [rsp + 0x58]
mov ebx, dword [rsp + 0x78]
mov dword [rax + 4], ebx
mov rax, qword [rsp + 0x50]
sub rax, rdi
jmp 0x140382324
mov rax, qword [rsp + 0x28]
mov r12d, r8d
add r12, rax
mov rax, rsi
sub rax, r12
mov r14d, eax
test eax, eax
je 0x140380008
lea r15d, [rax + 3]
lea rax, [r12 + 4]
mov r13, rax
sub r13, r12
cmp rdi, rsi
jae 0x14038201b
cmp qword [rsp + 0x70], r12
jae 0x14038201b
mov cl, byte [r12 - 1]
cmp byte [rsi - 1], cl
jne 0x14038201b
dec rsi
dec r12
jmp 0x140381ff7
mov r8, qword [rsp + 0x50]
lea rdx, [r12 + r13]
lea rcx, [rsi + r13]
mov r12, rsi
sub r12, rdi
call fcn.14039b620
add r13, rax
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
lea rdx, [rcx + r12]
cmp rax, rdx
jb 0x1403800c9
cmp qword [rsp + 0x50], rsi
jb 0x1403800e9
cmp qword [rsp + 0x80], rsi
jb 0x1403820ea
movups xmm1, xmmword [rdi]
movups xmmword [rcx], xmm1
cmp r12, 0x10
ja 0x14038209a
add qword [rbx + 0x18], r12
jmp 0x140382129
mov rax, qword [rbx + 0x18]
mov rdx, rax
sub rdx, rdi
add rdx, 0xf
cmp rdx, 0x1e
jbe 0x140380133
movups xmm2, xmmword [rdi + 0x10]
movups xmmword [rax + 0x10], xmm2
cmp r12, 0x20
jle 0x1403820fd
lea rdx, [rax + r12]
add rdi, 0x20
add rax, 0x20
movups xmm3, xmmword [rdi]
add rax, 0x20
add rdi, 0x20
movups xmmword [rax - 0x20], xmm3
movups xmm4, xmmword [rdi - 0x10]
movups xmmword [rax - 0x10], xmm4
cmp rax, rdx
jb 0x1403820cc
jmp 0x1403820fd
mov r9, qword [rsp + 0x80]
mov r8, rsi
mov rdx, rdi
call fcn.1403b3890
add qword [rbx + 0x18], r12
cmp r12, 0xffff
jbe 0x140382129
cmp dword [rbx + 0x48], 0
jne 0x1403801a8
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
mov dword [rbx + 0x48], 1
sar rax, 3
mov dword [rbx + 0x4c], eax
mov rax, qword [rbx + 8]
mov word [rax + 4], r12w
mov dword [rax], r15d
cmp r13, 2
jbe 0x1403801d6
lea rcx, [r13 - 3]
cmp rcx, 0xffff
jbe 0x14038216a
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
lea rdi, [rsi + r13]
mov qword [rbx + 8], rax
cmp qword [rsp + 0x60], rdi
jae 0x140382190
mov dword [rsp + 0x40], ebp
mov rsi, rdi
mov ebp, r14d
jmp 0x140381d43
mov eax, dword [rsp + 0x88]
mov rsi, qword [rsp + 0x28]
lea rcx, [rsi + rax + 2]
cmp qword [rsp + 0x48], rcx
jae 0x14038026d
mov edx, dword [rsp + 0x3c]
call fcn.1403adf90
mov rsi, qword [rsp + 0x30]
lea rcx, [rdi - 2]
mov rdx, rax
mov eax, dword [rsp + 0x88]
add eax, 2
mov dword [rsi + rdx*4], eax
mov rax, qword [rsp + 0x28]
mov rsi, rcx
mov edx, dword [rsp + 0x3c]
sub rsi, rax
call fcn.1403adf90
mov rdx, qword [rsp + 0x30]
mov dword [rdx + rax*4], esi
test ebp, ebp
je 0x140382181
mov r13, rdi
mov r15d, 4
mov eax, ebp
mov rdx, rdi
sub rdx, rax
mov esi, dword [rdx]
cmp dword [rdi], esi
jne 0x140382181
mov rdx, r15
mov r8, qword [rsp + 0x50]
lea rcx, [rdi + 4]
sub rdx, rax
add rdx, rdi
call fcn.14039b620
mov rcx, qword [rsp + 0x28]
mov edx, dword [rsp + 0x3c]
lea r12, [rax + 4]
mov rsi, rax
mov rax, rdi
sub rax, rcx
mov rcx, rdi
add rdi, r12
mov qword [rsp + 0x40], rax
call fcn.1403adf90
mov rdx, qword [rsp + 0x30]
mov ecx, dword [rsp + 0x40]
mov dword [rdx + rax*4], ecx
mov rax, qword [rbx + 8]
sub rax, qword [rbx]
sar rax, 3
cmp rax, qword [rbx + 0x38]
jae 0x14038007a
mov rax, qword [rbx + 0x40]
cmp rax, 0x20000
ja 0x14038009f
mov rcx, qword [rbx + 0x18]
add rax, qword [rbx + 0x10]
cmp rax, rcx
jb 0x1403800c9
cmp qword [rsp + 0x50], r13
jb 0x1403800e9
cmp qword [rsp + 0x80], r13
jb 0x1403822a7
movups xmm5, xmmword [r13]
movups xmmword [rcx], xmm5
jmp 0x1403822ba
mov r9, qword [rsp + 0x80]
mov r8, r13
mov rdx, r13
call fcn.1403b3890
mov rax, qword [rbx + 8]
mov word [rax + 4], 0
mov dword [rax], 1
cmp r12, 2
jbe 0x1403801d6
inc rsi
cmp rsi, 0xffff
jbe 0x1403822fe
cmp dword [rbx + 0x48], 0
jne 0x140380202
mov rdx, rax
sub rdx, qword [rbx]
mov dword [rbx + 0x48], 2
sar rdx, 3
mov dword [rbx + 0x4c], edx
mov word [rax + 6], si
add rax, 8
mov qword [rbx + 8], rax
cmp qword [rsp + 0x60], rdi
jae 0x140382319
xchg r14d, ebp
jmp 0x140382181
xchg ebp, r14d
mov r13, rdi
jmp 0x1403821f7
add rsp, 0xc8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xe8
mov ebx, 1
mov edi, dword [rsp + 0x158]
mov r11d, dword [rcx + 0x28]
mov dword [rsp + 0x34], edi
mov rsi, rdx
mov rdi, qword [rcx + 0x70]
mov rax, rcx
mov edx, dword [rcx + 0x114]
mov qword [rsp + 0x78], r8
mov qword [rsp + 0x48], rdi
mov edi, dword [rcx + 0x108]
cmp edx, 1
mov qword [rsp + 0x80], r9
mov r8, qword [rsp + 0x150]
adc edx, 1
mov dword [rsp + 0x30], edi
mov edi, edx
mov rdx, r9
mov r9d, dword [rcx + 0x1c]
mov qword [rsp + 0xb8], rdi
mov rdi, qword [rcx + 8]
mov dword [rsp + 0x5c], r9d
mov qword [rsp + 0x38], rdi
mov rdi, qword [rcx + 0x10]
mov ecx, dword [rcx + 0x100]
mov qword [rsp + 0x68], rdi
mov rdi, qword [rsp + 0x38]
shl ebx, cl
sub rdx, rdi
mov ecx, ebx
lea r10d, [rdx + r8]
mov ebx, r10d
sub ebx, r9d
cmp ecx, ebx
jae 0x1403853d1
sub r10d, ecx
mov dword [rsp + 0x5c], r10d
test r11d, r11d
cmove r9d, dword [rsp + 0x5c]
mov rdi, qword [rsp + 0x68]
mov ecx, r9d
mov dword [rsp + 0x5c], r9d
add rdi, rcx
mov ecx, dword [rax + 0x18]
mov qword [rsp + 0xc0], rdi
mov edi, r9d
cmp ecx, r9d
cmovae edi, ecx
mov r9d, edi
mov dword [rsp + 0x58], edi
mov rdi, qword [rsp + 0x38]
lea rbx, [rdi + r9]
mov rdi, qword [rsp + 0x68]
mov qword [rsp + 0x88], rbx
lea rbx, [rdi + r9]
mov rdi, qword [rsp + 0x80]
mov qword [rsp + 0xa8], rbx
lea rbx, [rdi + r8]
mov qword [rsp + 0x50], rbx
lea rbx, [rbx - 8]
mov qword [rsp + 0x90], rbx
mov rbx, qword [rsp + 0x78]
mov r12d, dword [rbx]
mov rdi, rbx
mov ebx, dword [rbx + 4]
mov dword [rsp + 0x60], ebx
cmp dword [rsp + 0x5c], ecx
jb 0x14038548d
mov r9, qword [rsp + 0x80]
mov qword [rsp + 0x150], r8
mov rdx, rsi
mov r8, rdi
mov rcx, rax
add rsp, 0xe8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp 0x14037fbe0
mov eax, dword [rsp + 0x5c]
xor r8d, r8d
mov dword [rsp + 0x98], r8d
sub edx, eax
cmp dword [rsp + 0x60], edx
jb 0x1403854b5
mov eax, dword [rsp + 0x60]
xor ecx, ecx
mov dword [rsp + 0x60], ecx
mov dword [rsp + 0x98], eax
xor eax, eax
mov dword [rsp + 0x9c], eax
cmp r12d, edx
jb 0x1403854ce
mov dword [rsp + 0x9c], r12d
xor r12d, r12d
mov rax, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x80]
sub rax, 0x20
mov qword [rsp + 0xa0], rax
mov eax, dword [rsp + 0x58]
dec eax
mov dword [rsp + 0xdc], eax
lea rax, [rbx + 0x80]
mov qword [rsp + 0xc8], rax
lea rax, [rbx + 1]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0xb8]
lea r14, [rbx + rax]
mov rax, qword [rsp + 0x90]
lea rbp, [r14 + 1]
cmp rbp, rax
jb 0x140385545
cmp dword [rsp + 0x9c], 0
je 0x14038587d
test r12d, r12d
jne 0x14038588e
jmp 0x14038587d
cmp dword [rsp + 0x30], 0x20
jbe 0x140385565
mov r8d, 0x342
lea rdx, [0x1406237d0]
lea rcx, [0x1406238aa]
jmp 0x1403856c9
cmp dword [rsp + 0x34], 6
mov edx, dword [rsp + 0x30]
mov rcx, rbx
je 0x1403855b1
cmp dword [rsp + 0x34], 7
je 0x1403855c9
cmp dword [rsp + 0x34], 5
je 0x140385599
call fcn.1403adb20
mov edx, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov rdi, rax
call fcn.1403adb20
jmp 0x1403855df
call fcn.1403adc70
mov edx, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov rdi, rax
call fcn.1403adc70
jmp 0x1403855df
call fcn.1403ade00
mov edx, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov rdi, rax
call fcn.1403ade00
jmp 0x1403855df
call fcn.1403adf90
mov edx, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov rdi, rax
call fcn.1403adf90
mov r15, rax
mov rax, qword [rsp + 0x48]
mov r10, rbx
mov r13d, dword [rax + rdi*4]
mov eax, dword [rsp + 0x58]
cmp r13d, eax
mov rax, qword [rsp + 0x38]
cmovb rax, qword [rsp + 0x68]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0xb0], rax
mov eax, dword [rsp + 0x58]
add eax, r12d
mov dword [rsp + 0xd4], eax
mov rax, qword [rsp + 0x38]
mov rdx, r14
mov ecx, dword [rsp + 0x58]
mov r8d, dword [rsp + 0xd4]
sub rdx, rax
mov eax, edx
sub eax, r12d
cmp eax, ecx
mov rcx, qword [rsp + 0x38]
cmovb rcx, qword [rsp + 0x68]
sub r8d, edx
cmp r8d, 3
jbe 0x140385661
test r12d, r12d
je 0x140385661
mov edx, eax
mov edx, dword [rcx + rdx]
jmp 0x140385667
mov edx, dword [r14]
xor edx, 1
mov r11, qword [rsp + 0x38]
mov r8, r10
sub r8, r11
mov r11, qword [rsp + 0x48]
mov dword [rsp + 0xd0], r8d
mov dword [r11 + rdi*4], r8d
cmp dword [r14], edx
jne 0x1403856fd
mov edi, dword [rsp + 0x58]
mov ebp, eax
mov r9, qword [rsp + 0x50]
add rbp, rcx
cmp eax, edi
cmovb r9, qword [rsp + 0xa8]
cmp qword [rsp + 0x88], rbp
je 0x1403856b5
cmp qword [rsp + 0xc0], rbp
jne 0x1403856cf
mov r8d, 0x314
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str._match0___prefixStart____match0___dictStart_
call qword [sym.imp.msvcrt.dll__assert]
mov al, byte [rbp - 1]
xor r13d, r13d
cmp byte [r14 - 1], al
mov r10, r14
sete r13b
mov edi, r12d
mov r14d, 1
mov r12d, dword [rsp + 0x60]
sub r10, r13
sub rbp, r13
add r13, 4
jmp 0x14038592e
mov eax, dword [r10]
mov edi, dword [rsp + 0x5c]
mov edx, eax
xor edx, 1
cmp r13d, edi
jb 0x140385719
mov rdi, qword [rsp + 0x70]
mov edx, r13d
mov edx, dword [rdi + rdx]
cmp edx, eax
je 0x1403858ae
mov rax, qword [rsp + 0x48]
mov edx, dword [rsp + 0x30]
mov rcx, r14
lea r15, [rax + r15*4]
mov eax, dword [rsp + 0x58]
mov r13d, dword [r15]
cmp r13d, eax
mov rax, qword [rsp + 0x38]
cmovb rax, qword [rsp + 0x68]
cmp dword [rsp + 0x34], 6
mov qword [rsp + 0x70], rax
je 0x14038576e
cmp dword [rsp + 0x34], 7
je 0x140385775
cmp dword [rsp + 0x34], 5
je 0x140385767
call fcn.1403adb20
jmp 0x14038577a
call fcn.1403adc70
jmp 0x14038577a
call fcn.1403ade00
jmp 0x14038577a
call fcn.1403adf90
mov rcx, qword [rsp + 0x38]
mov rdi, rax
mov rax, qword [rsp + 0x40]
sub rax, rcx
mov dword [rsp + 0xd0], eax
mov dword [r15], eax
mov eax, dword [rsp + 0x5c]
cmp r13d, eax
jb 0x1403857aa
mov rcx, qword [rsp + 0x70]
mov eax, r13d
mov eax, dword [rcx + rax]
jmp 0x1403857bb
mov rax, qword [rsp + 0x40]
mov eax, dword [rax]
mov dword [rsp + 0xd8], eax
xor eax, 1
mov rcx, qword [rsp + 0x40]
cmp dword [rcx], eax
je 0x1403858a1
mov rax, qword [rsp + 0x48]
mov edx, dword [rsp + 0x30]
mov rcx, rbp
mov r13d, dword [rax + rdi*4]
mov eax, dword [rsp + 0x58]
cmp r13d, eax
mov rax, qword [rsp + 0x38]
cmovb rax, qword [rsp + 0x68]
cmp dword [rsp + 0x34], 6
mov qword [rsp + 0x70], rax
je 0x140385812
cmp dword [rsp + 0x34], 7
je 0x140385819
cmp dword [rsp + 0x34], 5
je 0x14038580b
call fcn.1403adb20
jmp 0x14038581e
call fcn.1403adc70
jmp 0x14038581e
call fcn.1403ade00
jmp 0x14038581e
call fcn.1403adf90
mov r15, rax
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xc8]
lea rdx, [r14 + rax]
add rax, rbp
cmp rdx, rcx
jb 0x140385859
prefetcht0 byte [rbp + 0x40]
prefetcht0 byte [rbp + 0x80]
inc qword [rsp + 0xb0]
sub qword [rsp + 0xc8], 0xffffffffffffff80
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x40], rbp
mov r10, r14
cmp rax, rcx
jae 0x140385529
mov rbp, rax
mov r14, rdx
jmp 0x140385623
test r12d, r12d
cmove r12d, dword [rsp + 0x9c]
jmp 0x140385e0c
mov eax, dword [rsp + 0x9c]
mov dword [rsp + 0x98], eax
jmp 0x140385e0c
mov r10, qword [rsp + 0x40]
mov qword [rsp + 0x40], r14
mov r15, rdi
mov edi, dword [rsp + 0xd0]
mov eax, dword [rsp + 0x58]
sub edi, r13d
cmp r13d, eax
jae 0x1403858d3
mov rax, qword [rsp + 0xc0]
mov r9, qword [rsp + 0xa8]
jmp 0x1403858e0
mov rax, qword [rsp + 0x88]
mov r9, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x70]
add rbp, r13
test edi, edi
jne 0x140385905
mov r8d, 0x374
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str._offset__0
jmp 0x1403856c9
lea r14d, [rdi + 3]
lea rdx, [rbp + 4]
mov r13, rdx
sub r13, rbp
cmp rbx, r10
jae 0x14038592e
cmp rax, rbp
jae 0x14038592e
mov cl, byte [rbp - 1]
cmp byte [r10 - 1], cl
jne 0x14038592e
dec r10
dec rbp
jmp 0x14038590d
test r9, r9
jne 0x14038594c
mov r8d, 0x381
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str.matchEnd___0
jmp 0x1403856c9
mov r8, qword [rsp + 0x50]
mov rax, qword [rsp + 0x88]
lea rdx, [rbp + r13]
lea rcx, [r10 + r13]
mov qword [rsp + 0x60], r10
mov qword [rsp + 0x20], rax
call fcn.14039ba20
mov r10, qword [rsp + 0x60]
add r13, rax
mov rax, qword [rsi + 8]
sub rax, qword [rsi]
mov rbp, r10
sar rax, 3
sub rbp, rbx
cmp rax, qword [rsi + 0x38]
jb 0x1403859a9
mov r8d, 0x29d
lea rdx, [0x1406237d0]
lea rcx, [0x1406238e4]
jmp 0x1403856c9
mov rax, qword [rsi + 0x40]
cmp rax, 0x20000
jbe 0x1403859ce
mov r8d, 0x29f
lea rdx, [0x1406237d0]
lea rcx, [0x14062393b]
jmp 0x1403856c9
mov rcx, qword [rsi + 0x18]
add rax, qword [rsi + 0x10]
lea rdx, [rcx + rbp]
cmp rax, rdx
jae 0x1403859f8
mov r8d, 0x2a0
lea rdx, [0x1406237d0]
lea rcx, [0x14062395b]
jmp 0x1403856c9
cmp qword [rsp + 0x50], r10
jae 0x140385a18
mov r8d, 0x2a1
lea rdx, [0x1406237d0]
lea rcx, [0x1406239a9]
jmp 0x1403856c9
cmp qword [rsp + 0xa0], r10
jb 0x140385a9c
movups xmm0, xmmword [rbx]
movups xmmword [rcx], xmm0
cmp rbp, 0x10
ja 0x140385a37
add qword [rsi + 0x18], rbp
jmp 0x140385ae9
mov rax, qword [rsi + 0x18]
mov rdx, rax
sub rdx, rbx
add rdx, 0xf
cmp rdx, 0x1e
ja 0x140385a64
mov r8d, 0xe9
lea rdx, [0x14062380b]
lea rcx, [0x140623837]
jmp 0x1403856c9
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rax + 0x10], xmm1
cmp rbp, 0x20
jle 0x140385ab9
lea rdx, [rax + rbp]
add rbx, 0x20
add rax, 0x20
movups xmm2, xmmword [rbx]
add rax, 0x20
add rbx, 0x20
movups xmmword [rax - 0x20], xmm2
movups xmm3, xmmword [rbx - 0x10]
movups xmmword [rax - 0x10], xmm3
cmp rax, rdx
jb 0x140385a7e
jmp 0x140385ab9
mov r9, qword [rsp + 0xa0]
mov r8, r10
mov rdx, rbx
mov qword [rsp + 0x60], r10
call fcn.1403b3890
mov r10, qword [rsp + 0x60]
add qword [rsi + 0x18], rbp
cmp rbp, 0xffff
jbe 0x140385ae9
cmp dword [rsi + 0x48], 0
je 0x140385ad4
mov r8d, 0x2b2
jmp 0x140385b2c
mov rax, qword [rsi + 8]
sub rax, qword [rsi]
mov dword [rsi + 0x48], 1
sar rax, 3
mov dword [rsi + 0x4c], eax
mov rax, qword [rsi + 8]
mov word [rax + 4], bp
mov dword [rax], r14d
cmp r13, 2
ja 0x140385b13
mov r8d, 0x2bc
lea rdx, [0x1406237d0]
lea rcx, [0x1406239f7]
jmp 0x1403856c9
lea rcx, [r13 - 3]
cmp rcx, 0xffff
jbe 0x140385b53
cmp dword [rsi + 0x48], 0
je 0x140385b3f
mov r8d, 0x2bf
lea rdx, [0x1406237d0]
lea rcx, [0x1406239ca]
jmp 0x1403856c9
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
lea rbx, [r10 + r13]
mov qword [rsi + 8], rax
cmp qword [rsp + 0x40], rbx
jae 0x140385b80
mov rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
sub rax, rcx
mov rcx, qword [rsp + 0x48]
mov dword [rcx + r15*4], eax
cmp qword [rsp + 0x90], rbx
jae 0x140385b97
mov dword [rsp + 0x60], r12d
mov r12d, edi
jmp 0x1403854f4
mov eax, dword [rsp + 0xd0]
mov rcx, qword [rsp + 0x38]
lea rcx, [rcx + rax + 2]
cmp qword [rsp + 0x80], rcx
jb 0x140385bcb
mov r8d, 0x391
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str.basecurrent02___istart
jmp 0x1403856c9
mov rax, qword [rsp + 0x38]
mov ebp, dword [rsp + 0xd0]
lea r13, [rbx - 2]
mov r14, r13
mov edx, dword [rsp + 0x30]
sub r14, rax
add ebp, 2
cmp dword [rsp + 0x34], 6
je 0x140385c33
cmp dword [rsp + 0x34], 7
je 0x140385c4e
cmp dword [rsp + 0x34], 5
je 0x140385c18
call fcn.1403adb20
mov rdx, qword [rsp + 0x48]
mov rcx, r13
mov dword [rdx + rax*4], ebp
mov edx, dword [rsp + 0x30]
call fcn.1403adb20
jmp 0x140385c67
call fcn.1403adc70
mov rcx, qword [rsp + 0x48]
mov edx, dword [rsp + 0x30]
mov dword [rcx + rax*4], ebp
mov rcx, r13
call fcn.1403adc70
jmp 0x140385c67
call fcn.1403ade00
mov rdx, qword [rsp + 0x48]
mov rcx, r13
mov dword [rdx + rax*4], ebp
mov edx, dword [rsp + 0x30]
call fcn.1403ade00
jmp 0x140385c67
call fcn.1403adf90
mov rcx, qword [rsp + 0x48]
mov edx, dword [rsp + 0x30]
mov dword [rcx + rax*4], ebp
mov rcx, r13
call fcn.1403adf90
mov rdx, qword [rsp + 0x48]
mov dword [rdx + rax*4], r14d
mov rax, qword [rsp + 0x38]
mov rbp, rbx
mov rdx, qword [rsp + 0x38]
mov r11d, dword [rsp + 0x58]
sub rbp, rax
mov eax, ebp
sub eax, r12d
mov ecx, eax
add rdx, rcx
cmp eax, r11d
jae 0x140385c9c
mov rdx, qword [rsp + 0x68]
add rdx, rcx
mov ecx, dword [rsp + 0xdc]
add ecx, r12d
sub ecx, ebp
cmp ecx, 2
jbe 0x140385b8a
test r12d, r12d
je 0x140385b8a
mov ecx, dword [rbx]
cmp dword [rdx], ecx
jne 0x140385b8a
mov ecx, dword [rsp + 0x58]
mov r9, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x50]
cmp eax, ecx
mov rax, qword [rsp + 0x88]
cmovae r9, qword [rsp + 0x50]
lea rcx, [rbx + 4]
add rdx, 4
mov qword [rsp + 0x20], rax
call fcn.14039ba20
mov r14, rax
lea r13, [rax + 4]
mov rax, qword [rsi + 8]
sub rax, qword [rsi]
sar rax, 3
cmp rax, qword [rsi + 0x38]
jae 0x140385990
mov rax, qword [rsi + 0x40]
cmp rax, 0x20000
ja 0x1403859b5
mov rcx, qword [rsi + 0x18]
add rax, qword [rsi + 0x10]
cmp rax, rcx
jb 0x1403859df
cmp qword [rsp + 0x50], rbx
jb 0x1403859ff
cmp qword [rsp + 0xa0], rbx
jb 0x140385d51
movups xmm4, xmmword [rbx]
movups xmmword [rcx], xmm4
jmp 0x140385d64
mov r9, qword [rsp + 0xa0]
mov r8, rbx
mov rdx, rbx
call fcn.1403b3890
mov rax, qword [rsi + 8]
mov word [rax + 4], 0
mov dword [rax], 1
cmp r13, 2
jbe 0x140385afa
inc r14
cmp r14, 0xffff
jbe 0x140385da8
cmp dword [rsi + 0x48], 0
jne 0x140385b26
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], r14w
add rax, 8
mov edx, dword [rsp + 0x30]
mov rcx, rbx
cmp dword [rsp + 0x34], 6
mov qword [rsi + 8], rax
je 0x140385ddf
cmp dword [rsp + 0x34], 7
je 0x140385de6
cmp dword [rsp + 0x34], 5
je 0x140385dd8
call fcn.1403adb20
jmp 0x140385deb
call fcn.1403adc70
jmp 0x140385deb
call fcn.1403ade00
jmp 0x140385deb
call fcn.1403adf90
mov rdx, qword [rsp + 0x48]
add rbx, r13
xchg r12d, edi
mov dword [rdx + rax*4], ebp
cmp qword [rsp + 0x90], rbx
jae 0x140385c70
jmp 0x140385b8a
mov rax, qword [rsp + 0x78]
cmp dword [rsp + 0x60], 0
mov dword [rax], r12d
mov eax, dword [rsp + 0x60]
cmove eax, dword [rsp + 0x98]
mov dword [rsp + 0x98], eax
mov rax, qword [rsp + 0x78]
mov esi, dword [rsp + 0x98]
mov dword [rax + 4], esi
mov rax, qword [rsp + 0x50]
sub rax, rbx
add rsp, 0xe8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xa8
mov rbx, qword [rcx + 0x70]
mov r15, qword [rcx + 8]
mov r11, qword [rsp + 0x110]
mov edi, dword [rcx + 0x18]
mov rsi, rdx
mov edx, dword [rcx + 0x114]
mov qword [rsp + 0x108], r9
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x108]
cmp edx, 1
mov ebx, dword [rcx + 0x108]
mov r9d, dword [rcx + 0x100]
mov qword [rsp + 0x100], r8
adc edx, 1
sub rax, r15
mov dword [rsp + 0x34], ebx
mov ebx, edx
mov edx, dword [rcx + 0x28]
lea r8d, [rax + r11]
mov ecx, edi
mov qword [rsp + 0x70], rbx
xor ebx, ebx
mov dword [rsp + 0x40], r9d
call fcn.1403ad810
add r11, qword [rsp + 0x108]
mov r9d, dword [rsp + 0x40]
mov ecx, edi
mov dword [rsp + 0x64], eax
mov eax, eax
add rax, r15
mov qword [rsp + 0x38], r11
mov qword [rsp + 0x78], rax
mov rax, r11
sub rax, 8
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x100]
mov r14d, dword [rax]
mov eax, dword [rax + 4]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x78]
cmp qword [rsp + 0x108], rax
sete bl
add rbx, qword [rsp + 0x108]
mov r11, rbx
sub r11, r15
mov r8d, r11d
call fcn.1403ad810
xor ecx, ecx
sub r11d, eax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x4c], ecx
cmp r11d, eax
jae 0x140385f64
xor edx, edx
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x48], edx
xor eax, eax
mov dword [rsp + 0x60], eax
cmp r11d, r14d
jae 0x140385f77
mov dword [rsp + 0x60], r14d
xor r14d, r14d
mov rax, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x108]
sub rax, 0x20
mov qword [rsp + 0x58], rax
lea rax, [rbx + 0x80]
lea r13, [rbx + 1]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x70]
lea r12, [rbx + rax]
mov rax, qword [rsp + 0x50]
lea rdi, [r12 + 1]
cmp rdi, rax
jb 0x140385fd1
cmp dword [rsp + 0x60], 0
je 0x1403861d0
test r14d, r14d
jne 0x1403861de
jmp 0x1403861d0
cmp dword [rsp + 0x34], 0x20
jbe 0x140385ff1
mov r8d, 0x342
lea rdx, [0x1406237d0]
lea rcx, [0x1406238aa]
jmp 0x140386216
mov edx, dword [rsp + 0x34]
mov rcx, rbx
call fcn.1403adb20
mov edx, dword [rsp + 0x34]
mov rcx, r13
mov qword [rsp + 0x40], rax
call fcn.1403adb20
mov r8, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x28]
mov r9, qword [rsp + 0x70]
mov ecx, dword [rcx + r8*4]
mov dword [rsp + 0x40], ecx
mov ecx, r14d
mov qword [rsp + 0x88], rcx
mov rcx, qword [rsp + 0x88]
mov rdx, r12
mov r11, qword [rsp + 0x28]
sub rdx, rcx
mov rcx, rbx
sub rcx, r15
mov r10d, dword [rdx]
mov dword [rsp + 0x68], ecx
mov dword [r11 + r8*4], ecx
cmp dword [r12], r10d
jne 0x140386099
test r14d, r14d
je 0x140386099
mov dil, byte [rdx - 1]
xor ecx, ecx
cmp byte [r12 - 1], dil
mov rbx, r12
sete cl
mov rdi, rdx
sub r13, r15
mov dword [rsp + 0x40], r14d
mov dword [r11 + rax*4], r13d
mov r14d, dword [rsp + 0x48]
sub rbx, rcx
sub rdi, rcx
lea r12, [rcx + 4]
mov r13d, 1
jmp 0x140386246
mov edx, dword [rbx]
mov r11d, dword [rsp + 0x64]
mov ecx, edx
xor ecx, 1
cmp dword [rsp + 0x40], r11d
jb 0x1403860b4
mov ecx, dword [rsp + 0x40]
mov ecx, dword [r15 + rcx]
mov r10, qword [rsp + 0x28]
lea r11, [r10 + rax*4]
mov r10, r13
sub r10, r15
cmp ecx, edx
jne 0x1403860cf
mov dword [r11], r10d
jmp 0x1403861eb
mov eax, dword [r11]
mov edx, dword [rsp + 0x34]
mov rcx, r12
mov qword [rsp + 0x68], r11
mov qword [rsp + 0x98], r10
mov qword [rsp + 0x90], r9
mov dword [rsp + 0x40], eax
call fcn.1403adb20
mov r11, qword [rsp + 0x68]
mov r10, qword [rsp + 0x98]
mov ebx, dword [rsp + 0x64]
cmp dword [rsp + 0x40], ebx
mov r8, rax
mov dword [r11], r10d
mov r9, qword [rsp + 0x90]
jb 0x140386126
mov eax, dword [rsp + 0x40]
mov eax, dword [r15 + rax]
jmp 0x14038612d
mov eax, dword [r13]
xor eax, 1
cmp eax, dword [r13]
jne 0x140386152
cmp r9, 4
ja 0x140386145
mov rax, qword [rsp + 0x28]
sub r12, r15
mov dword [rax + r8*4], r12d
mov dword [rsp + 0x68], r10d
mov rbx, r13
jmp 0x1403861eb
mov rax, qword [rsp + 0x28]
mov edx, dword [rsp + 0x34]
mov rcx, rdi
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x68], r8
mov eax, dword [rax + r8*4]
mov dword [rsp + 0x40], eax
call fcn.1403adb20
mov r9, qword [rsp + 0x90]
mov r8, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x80]
lea rcx, [r12 + r9]
lea rdx, [rdi + r9]
cmp rcx, rbx
jb 0x1403861b1
prefetcht0 byte [rdi + 0x40]
prefetcht0 byte [rdi + 0x80]
inc r9
sub qword [rsp + 0x80], 0xffffffffffffff80
mov r13, rdi
mov rdi, qword [rsp + 0x50]
mov rbx, r12
cmp rdx, rdi
jae 0x140385fb8
mov rdi, rdx
mov r12, rcx
jmp 0x140386030
test r14d, r14d
cmove r14d, dword [rsp + 0x60]
jmp 0x1403865e9
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x4c], eax
jmp 0x1403865e9
mov edi, dword [rsp + 0x40]
mov r13, rbx
add rdi, r15
sub r13, rdi
mov dword [rsp + 0x40], r13d
test r13d, r13d
jne 0x14038621c
mov r8d, 0x16a
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str._rep_offset1__0
call qword [sym.imp.msvcrt.dll__assert]
add r13d, 3
lea rax, [rdi + 4]
mov r12, rax
sub r12, rdi
cmp rbp, rbx
jae 0x140386246
cmp qword [rsp + 0x78], rdi
jae 0x140386246
mov cl, byte [rdi - 1]
cmp byte [rbx - 1], cl
jne 0x140386246
dec rbx
dec rdi
jmp 0x140386224
mov r8, qword [rsp + 0x38]
lea rdx, [rdi + r12]
lea rcx, [rbx + r12]
mov rdi, rbx
sub rdi, rbp
call fcn.14039b620
add r12, rax
mov rax, qword [rsi + 8]
sub rax, qword [rsi]
sar rax, 3
cmp rax, qword [rsi + 0x38]
jb 0x140386288
mov r8d, 0x29d
lea rdx, [0x1406237d0]
lea rcx, [0x1406238e4]
jmp 0x140386216
mov rax, qword [rsi + 0x40]
cmp rax, 0x20000
jbe 0x1403862ad
mov r8d, 0x29f
lea rdx, [0x1406237d0]
lea rcx, [0x14062393b]
jmp 0x140386216
mov rcx, qword [rsi + 0x18]
add rax, qword [rsi + 0x10]
lea rdx, [rcx + rdi]
cmp rax, rdx
jae 0x1403862d7
mov r8d, 0x2a0
lea rdx, [0x1406237d0]
lea rcx, [0x14062395b]
jmp 0x140386216
cmp qword [rsp + 0x38], rbx
jae 0x1403862f7
mov r8d, 0x2a1
lea rdx, [0x1406237d0]
lea rcx, [0x1406239a9]
jmp 0x140386216
cmp qword [rsp + 0x58], rbx
jb 0x14038637a
movups xmm0, xmmword [rbp]
movups xmmword [rcx], xmm0
cmp rdi, 0x10
ja 0x140386314
add qword [rsi + 0x18], rdi
jmp 0x1403863ba
mov rax, qword [rsi + 0x18]
mov rdx, rax
sub rdx, rbp
add rdx, 0xf
cmp rdx, 0x1e
ja 0x140386341
mov r8d, 0xe9
lea rdx, [0x14062380b]
lea rcx, [0x140623837]
jmp 0x140386216
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm1
cmp rdi, 0x20
jle 0x14038638a
lea rdx, [rax + rdi]
add rbp, 0x20
add rax, 0x20
movups xmm2, xmmword [rbp]
add rax, 0x20
add rbp, 0x20
movups xmmword [rax - 0x20], xmm2
movups xmm3, xmmword [rbp - 0x10]
movups xmmword [rax - 0x10], xmm3
cmp rax, rdx
jb 0x14038635b
jmp 0x14038638a
mov r9, qword [rsp + 0x58]
mov r8, rbx
mov rdx, rbp
call fcn.1403b3890
add qword [rsi + 0x18], rdi
cmp rdi, 0xffff
jbe 0x1403863ba
cmp dword [rsi + 0x48], 0
je 0x1403863a5
mov r8d, 0x2b2
jmp 0x1403863fe
mov rax, qword [rsi + 8]
sub rax, qword [rsi]
mov dword [rsi + 0x48], 1
sar rax, 3
mov dword [rsi + 0x4c], eax
mov rax, qword [rsi + 8]
mov word [rax + 4], di
mov dword [rax], r13d
cmp r12, 2
ja 0x1403863e4
mov r8d, 0x2bc
lea rdx, [0x1406237d0]
lea rcx, [0x1406239f7]
jmp 0x140386216
lea rcx, [r12 - 3]
cmp rcx, 0xffff
jbe 0x140386425
cmp dword [rsi + 0x48], 0
je 0x140386411
mov r8d, 0x2bf
lea rdx, [0x1406237d0]
lea rcx, [0x1406239ca]
jmp 0x140386216
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
add rbx, r12
mov qword [rsi + 8], rax
cmp qword [rsp + 0x50], rbx
jae 0x14038644d
mov dword [rsp + 0x48], r14d
mov rbp, rbx
mov r14d, dword [rsp + 0x40]
jmp 0x140385f8d
mov eax, dword [rsp + 0x68]
lea rcx, [r15 + rax + 2]
cmp qword [rsp + 0x108], rcx
jb 0x140386479
mov r8d, 0x181
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str.basecurrent02___istart
jmp 0x140386216
mov edx, dword [rsp + 0x34]
mov r13d, 4
call fcn.1403adb20
mov rdi, qword [rsp + 0x28]
lea rcx, [rbx - 2]
mov rdx, rax
mov eax, dword [rsp + 0x68]
add eax, 2
mov dword [rdi + rdx*4], eax
mov edx, dword [rsp + 0x34]
mov rdi, rcx
sub rdi, r15
call fcn.1403adb20
mov rcx, qword [rsp + 0x28]
mov dword [rcx + rax*4], edi
test r14d, r14d
je 0x14038643b
mov eax, r14d
mov rdx, rbx
mov edi, dword [rbx]
sub rdx, rax
cmp dword [rdx], edi
jne 0x14038643b
mov rdx, r13
mov r8, qword [rsp + 0x38]
lea rcx, [rbx + 4]
mov r12, rbx
sub rdx, rax
sub r12, r15
add rdx, rbx
call fcn.14039b620
mov edx, dword [rsp + 0x34]
mov rcx, rbx
lea rbp, [rax + 4]
mov rdi, rax
call fcn.1403adb20
mov rcx, qword [rsp + 0x28]
mov dword [rcx + rax*4], r12d
mov rax, qword [rsi + 8]
lea r12, [rbx + rbp]
sub rax, qword [rsi]
sar rax, 3
cmp rax, qword [rsi + 0x38]
jae 0x140386272
mov rax, qword [rsi + 0x40]
cmp rax, 0x20000
ja 0x140386294
mov rcx, qword [rsi + 0x18]
add rax, qword [rsi + 0x10]
cmp rax, rcx
jb 0x1403862be
cmp qword [rsp + 0x38], rbx
jb 0x1403862de
cmp qword [rsp + 0x58], rbx
jb 0x14038655a
movups xmm4, xmmword [rbx]
movups xmmword [rcx], xmm4
jmp 0x14038656a
mov r9, qword [rsp + 0x58]
mov r8, rbx
mov rdx, rbx
call fcn.1403b3890
mov rax, qword [rsi + 8]
mov word [rax + 4], 0
mov dword [rax], 1
cmp rbp, 2
jbe 0x1403863cb
inc rdi
cmp rdi, 0xffff
jbe 0x1403865ae
cmp dword [rsi + 0x48], 0
jne 0x1403863f8
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], di
add rax, 8
mov qword [rsi + 8], rax
cmp qword [rsp + 0x50], r12
jae 0x1403865d5
mov eax, dword [rsp + 0x40]
mov rbx, r12
mov dword [rsp + 0x40], r14d
mov r14d, eax
jmp 0x14038643b
mov eax, r14d
mov rbx, r12
mov r14d, dword [rsp + 0x40]
mov dword [rsp + 0x40], eax
jmp 0x1403864ba
mov rax, qword [rsp + 0x100]
cmp dword [rsp + 0x48], 0
mov dword [rax], r14d
mov eax, dword [rsp + 0x48]
cmove eax, dword [rsp + 0x4c]
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x100]
mov esi, dword [rsp + 0x4c]
mov dword [rax + 4], esi
mov rax, qword [rsp + 0x38]
sub rax, rbp
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xa8
mov rbx, qword [rcx + 0x70]
mov r15, qword [rcx + 8]
mov r11, qword [rsp + 0x110]
mov edi, dword [rcx + 0x18]
mov rsi, rdx
mov edx, dword [rcx + 0x114]
mov qword [rsp + 0x108], r9
mov qword [rsp + 0x28], rbx
mov rax, qword [rsp + 0x108]
cmp edx, 1
mov ebx, dword [rcx + 0x108]
mov r9d, dword [rcx + 0x100]
mov qword [rsp + 0x100], r8
adc edx, 1
sub rax, r15
mov dword [rsp + 0x34], ebx
mov ebx, edx
mov edx, dword [rcx + 0x28]
lea r8d, [rax + r11]
mov ecx, edi
mov qword [rsp + 0x70], rbx
xor ebx, ebx
mov dword [rsp + 0x40], r9d
call fcn.1403ad810
add r11, qword [rsp + 0x108]
mov r9d, dword [rsp + 0x40]
mov ecx, edi
mov dword [rsp + 0x64], eax
mov eax, eax
add rax, r15
mov qword [rsp + 0x38], r11
mov qword [rsp + 0x78], rax
mov rax, r11
sub rax, 8
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x100]
mov r14d, dword [rax]
mov eax, dword [rax + 4]
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x78]
cmp qword [rsp + 0x108], rax
sete bl
add rbx, qword [rsp + 0x108]
mov r11, rbx
sub r11, r15
mov r8d, r11d
call fcn.1403ad810
xor ecx, ecx
sub r11d, eax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x4c], ecx
cmp r11d, eax
jae 0x140386744
xor edx, edx
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x48], edx
xor eax, eax
mov dword [rsp + 0x60], eax
cmp r11d, r14d
jae 0x140386757
mov dword [rsp + 0x60], r14d
xor r14d, r14d
mov rax, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x108]
sub rax, 0x20
mov qword [rsp + 0x58], rax
lea rax, [rbx + 0x80]
lea r13, [rbx + 1]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x70]
lea r12, [rbx + rax]
mov rax, qword [rsp + 0x50]
lea rdi, [r12 + 1]
cmp rdi, rax
jb 0x1403867b1
cmp dword [rsp + 0x60], 0
je 0x1403869b0
test r14d, r14d
jne 0x1403869be
jmp 0x1403869b0
cmp dword [rsp + 0x34], 0x20
jbe 0x1403867d1
mov r8d, 0x342
lea rdx, [0x1406237d0]
lea rcx, [0x1406238aa]
jmp 0x1403869f6
mov edx, dword [rsp + 0x34]
mov rcx, rbx
call fcn.1403adc70
mov edx, dword [rsp + 0x34]
mov rcx, r13
mov qword [rsp + 0x40], rax
call fcn.1403adc70
mov r8, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x28]
mov r9, qword [rsp + 0x70]
mov ecx, dword [rcx + r8*4]
mov dword [rsp + 0x40], ecx
mov ecx, r14d
mov qword [rsp + 0x88], rcx
mov rcx, qword [rsp + 0x88]
mov rdx, r12
mov r11, qword [rsp + 0x28]
sub rdx, rcx
mov rcx, rbx
sub rcx, r15
mov r10d, dword [rdx]
mov dword [rsp + 0x68], ecx
mov dword [r11 + r8*4], ecx
cmp dword [r12], r10d
jne 0x140386879
test r14d, r14d
je 0x140386879
mov dil, byte [rdx - 1]
xor ecx, ecx
cmp byte [r12 - 1], dil
mov rbx, r12
sete cl
mov rdi, rdx
sub r13, r15
mov dword [rsp + 0x40], r14d
mov dword [r11 + rax*4], r13d
mov r14d, dword [rsp + 0x48]
sub rbx, rcx
sub rdi, rcx
lea r12, [rcx + 4]
mov r13d, 1
jmp 0x140386a26
mov edx, dword [rbx]
mov r11d, dword [rsp + 0x64]
mov ecx, edx
xor ecx, 1
cmp dword [rsp + 0x40], r11d
jb 0x140386894
mov ecx, dword [rsp + 0x40]
mov ecx, dword [r15 + rcx]
mov r10, qword [rsp + 0x28]
lea r11, [r10 + rax*4]
mov r10, r13
sub r10, r15
cmp ecx, edx
jne 0x1403868af
mov dword [r11], r10d
jmp 0x1403869cb
mov eax, dword [r11]
mov edx, dword [rsp + 0x34]
mov rcx, r12
mov qword [rsp + 0x68], r11
mov qword [rsp + 0x98], r10
mov qword [rsp + 0x90], r9
mov dword [rsp + 0x40], eax
call fcn.1403adc70
mov r11, qword [rsp + 0x68]
mov r10, qword [rsp + 0x98]
mov ebx, dword [rsp + 0x64]
cmp dword [rsp + 0x40], ebx
mov r8, rax
mov dword [r11], r10d
mov r9, qword [rsp + 0x90]
jb 0x140386906
mov eax, dword [rsp + 0x40]
mov eax, dword [r15 + rax]
jmp 0x14038690d
mov eax, dword [r13]
xor eax, 1
cmp eax, dword [r13]
jne 0x140386932
cmp r9, 4
ja 0x140386925
mov rax, qword [rsp + 0x28]
sub r12, r15
mov dword [rax + r8*4], r12d
mov dword [rsp + 0x68], r10d
mov rbx, r13
jmp 0x1403869cb
mov rax, qword [rsp + 0x28]
mov edx, dword [rsp + 0x34]
mov rcx, rdi
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x68], r8
mov eax, dword [rax + r8*4]
mov dword [rsp + 0x40], eax
call fcn.1403adc70
mov r9, qword [rsp + 0x90]
mov r8, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x80]
lea rcx, [r12 + r9]
lea rdx, [rdi + r9]
cmp rcx, rbx
jb 0x140386991
prefetcht0 byte [rdi + 0x40]
prefetcht0 byte [rdi + 0x80]
inc r9
sub qword [rsp + 0x80], 0xffffffffffffff80
mov r13, rdi
mov rdi, qword [rsp + 0x50]
mov rbx, r12
cmp rdx, rdi
jae 0x140386798
mov rdi, rdx
mov r12, rcx
jmp 0x140386810
test r14d, r14d
cmove r14d, dword [rsp + 0x60]
jmp 0x140386dc9
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x4c], eax
jmp 0x140386dc9
mov edi, dword [rsp + 0x40]
mov r13, rbx
add rdi, r15
sub r13, rdi
mov dword [rsp + 0x40], r13d
test r13d, r13d
jne 0x1403869fc
mov r8d, 0x16a
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str._rep_offset1__0
call qword [sym.imp.msvcrt.dll__assert]
add r13d, 3
lea rax, [rdi + 4]
mov r12, rax
sub r12, rdi
cmp rbp, rbx
jae 0x140386a26
cmp qword [rsp + 0x78], rdi
jae 0x140386a26
mov cl, byte [rdi - 1]
cmp byte [rbx - 1], cl
jne 0x140386a26
dec rbx
dec rdi
jmp 0x140386a04
mov r8, qword [rsp + 0x38]
lea rdx, [rdi + r12]
lea rcx, [rbx + r12]
mov rdi, rbx
sub rdi, rbp
call fcn.14039b620
add r12, rax
mov rax, qword [rsi + 8]
sub rax, qword [rsi]
sar rax, 3
cmp rax, qword [rsi + 0x38]
jb 0x140386a68
mov r8d, 0x29d
lea rdx, [0x1406237d0]
lea rcx, [0x1406238e4]
jmp 0x1403869f6
mov rax, qword [rsi + 0x40]
cmp rax, 0x20000
jbe 0x140386a8d
mov r8d, 0x29f
lea rdx, [0x1406237d0]
lea rcx, [0x14062393b]
jmp 0x1403869f6
mov rcx, qword [rsi + 0x18]
add rax, qword [rsi + 0x10]
lea rdx, [rcx + rdi]
cmp rax, rdx
jae 0x140386ab7
mov r8d, 0x2a0
lea rdx, [0x1406237d0]
lea rcx, [0x14062395b]
jmp 0x1403869f6
cmp qword [rsp + 0x38], rbx
jae 0x140386ad7
mov r8d, 0x2a1
lea rdx, [0x1406237d0]
lea rcx, [0x1406239a9]
jmp 0x1403869f6
cmp qword [rsp + 0x58], rbx
jb 0x140386b5a
movups xmm0, xmmword [rbp]
movups xmmword [rcx], xmm0
cmp rdi, 0x10
ja 0x140386af4
add qword [rsi + 0x18], rdi
jmp 0x140386b9a
mov rax, qword [rsi + 0x18]
mov rdx, rax
sub rdx, rbp
add rdx, 0xf
cmp rdx, 0x1e
ja 0x140386b21
mov r8d, 0xe9
lea rdx, [0x14062380b]
lea rcx, [0x140623837]
jmp 0x1403869f6
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rax + 0x10], xmm1
cmp rdi, 0x20
jle 0x140386b6a
lea rdx, [rax + rdi]
add rbp, 0x20
add rax, 0x20
movups xmm2, xmmword [rbp]
add rax, 0x20
add rbp, 0x20
movups xmmword [rax - 0x20], xmm2
movups xmm3, xmmword [rbp - 0x10]
movups xmmword [rax - 0x10], xmm3
cmp rax, rdx
jb 0x140386b3b
jmp 0x140386b6a
mov r9, qword [rsp + 0x58]
mov r8, rbx
mov rdx, rbp
call fcn.1403b3890
add qword [rsi + 0x18], rdi
cmp rdi, 0xffff
jbe 0x140386b9a
cmp dword [rsi + 0x48], 0
je 0x140386b85
mov r8d, 0x2b2
jmp 0x140386bde
mov rax, qword [rsi + 8]
sub rax, qword [rsi]
mov dword [rsi + 0x48], 1
sar rax, 3
mov dword [rsi + 0x4c], eax
mov rax, qword [rsi + 8]
mov word [rax + 4], di
mov dword [rax], r13d
cmp r12, 2
ja 0x140386bc4
mov r8d, 0x2bc
lea rdx, [0x1406237d0]
lea rcx, [0x1406239f7]
jmp 0x1403869f6
lea rcx, [r12 - 3]
cmp rcx, 0xffff
jbe 0x140386c05
cmp dword [rsi + 0x48], 0
je 0x140386bf1
mov r8d, 0x2bf
lea rdx, [0x1406237d0]
lea rcx, [0x1406239ca]
jmp 0x1403869f6
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], cx
add rax, 8
add rbx, r12
mov qword [rsi + 8], rax
cmp qword [rsp + 0x50], rbx
jae 0x140386c2d
mov dword [rsp + 0x48], r14d
mov rbp, rbx
mov r14d, dword [rsp + 0x40]
jmp 0x14038676d
mov eax, dword [rsp + 0x68]
lea rcx, [r15 + rax + 2]
cmp qword [rsp + 0x108], rcx
jb 0x140386c59
mov r8d, 0x181
lea rdx, str.zstd_lib_compress_zstd_fast.c
lea rcx, str.basecurrent02___istart
jmp 0x1403869f6
mov edx, dword [rsp + 0x34]
mov r13d, 4
call fcn.1403adc70
mov rdi, qword [rsp + 0x28]
lea rcx, [rbx - 2]
mov rdx, rax
mov eax, dword [rsp + 0x68]
add eax, 2
mov dword [rdi + rdx*4], eax
mov edx, dword [rsp + 0x34]
mov rdi, rcx
sub rdi, r15
call fcn.1403adc70
mov rcx, qword [rsp + 0x28]
mov dword [rcx + rax*4], edi
test r14d, r14d
je 0x140386c1b
mov eax, r14d
mov rdx, rbx
mov edi, dword [rbx]
sub rdx, rax
cmp dword [rdx], edi
jne 0x140386c1b
mov rdx, r13
mov r8, qword [rsp + 0x38]
lea rcx, [rbx + 4]
mov r12, rbx
sub rdx, rax
sub r12, r15
add rdx, rbx
call fcn.14039b620
mov edx, dword [rsp + 0x34]
mov rcx, rbx
lea rbp, [rax + 4]
mov rdi, rax
call fcn.1403adc70
mov rcx, qword [rsp + 0x28]
mov dword [rcx + rax*4], r12d
mov rax, qword [rsi + 8]
lea r12, [rbx + rbp]
sub rax, qword [rsi]
sar rax, 3
cmp rax, qword [rsi + 0x38]
jae 0x140386a52
mov rax, qword [rsi + 0x40]
cmp rax, 0x20000
ja 0x140386a74
mov rcx, qword [rsi + 0x18]
add rax, qword [rsi + 0x10]
cmp rax, rcx
jb 0x140386a9e
cmp qword [rsp + 0x38], rbx
jb 0x140386abe
cmp qword [rsp + 0x58], rbx
jb 0x140386d3a
movups xmm4, xmmword [rbx]
movups xmmword [rcx], xmm4
jmp 0x140386d4a
mov r9, qword [rsp + 0x58]
mov r8, rbx
mov rdx, rbx
call fcn.1403b3890
mov rax, qword [rsi + 8]
mov word [rax + 4], 0
mov dword [rax], 1
cmp rbp, 2
jbe 0x140386bab
inc rdi
cmp rdi, 0xffff
jbe 0x140386d8e
cmp dword [rsi + 0x48], 0
jne 0x140386bd8
mov rdx, rax
sub rdx, qword [rsi]
mov dword [rsi + 0x48], 2
sar rdx, 3
mov dword [rsi + 0x4c], edx
mov word [rax + 6], di
add rax, 8
mov qword [rsi + 8], rax
cmp qword [rsp + 0x50], r12
jae 0x140386db5
mov eax, dword [rsp + 0x40]
mov rbx, r12
mov dword [rsp + 0x40], r14d
mov r14d, eax
jmp 0x140386c1b
mov eax, r14d
mov rbx, r12
mov r14d, dword [rsp + 0x40]
mov dword [rsp + 0x40], eax
jmp 0x140386c9a
mov rax, qword [rsp + 0x100]
cmp dword [rsp + 0x48], 0
mov dword [rax], r14d
mov eax, dword [rsp + 0x48]
cmove eax, dword [rsp + 0x4c]
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x100]
mov esi, dword [rsp + 0x4c]
mov dword [rax + 4], esi
mov rax, qword [rsp + 0x38]
sub rax, rbp
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret