Function at 0x140068580
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
mov qword [rsp + 0x40], r9
mov rsi, r8
mov rbx, rdx
mov rbp, rcx
cmp rdx, 0x21
jae 0x140068615
cmp rbx, 2
jb 0x14006928b
mov qword [rsp + 0x58], rbp
lea rax, [rbx + 0x10]
cmp rax, qword [rsp + 0x40]
ja 0x14006929f
mov rax, rbx
shr rax, 1
mov qword [rsp + 0x78], rax
lea rax, [rax*8]
lea rbp, [rax + rax*4]
mov rcx, qword [rsp + 0x58]
lea r14, [rcx + rbp]
lea rdi, [rsi + rbp]
cmp rbx, 7
mov qword [rsp + 0x60], r14
jbe 0x140068ccb
mov rdx, rsi
call fcn.140054a80
mov rcx, r14
mov rdx, rdi
call fcn.140054a80
mov ecx, 4
jmp 0x140068cfe
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x38], rax
mov edi, dword [rsp + 0x160]
lea rax, [rsi - 0x28]
mov qword [rsp + 0x60], rax
mov rdx, rbx
mov qword [rsp + 0x58], rbp
nop word [rax + rax]
sub edi, 1
jb 0x140068cb1
mov dword [rsp + 0x78], edi
mov r9, rdx
shr r9, 3
lea rbx, [r9 + r9*4]
shl rbx, 5
add rbx, rbp
imul r13, r9, 0x118
add r13, rbp
cmp rdx, 0x40
mov qword [rsp + 0x70], rdx
jae 0x140068750
mov r12, qword [rbp + 0x18]
mov r15, qword [rbx + 0x18]
cmp r12, r15
setb dil
jne 0x1400686b4
mov rcx, qword [rbp + 8]
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
mov rdi, rax
sub rdi, r8
cmovb r8, rax
call fcn.140313000
cdqe
test eax, eax
cmovne rdi, rax
shr rdi, 0x3f
mov r14, qword [r13 + 0x18]
cmp r12, r14
setb bpl
jne 0x1400686f1
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 8]
mov rax, qword [rax + 0x10]
mov rdx, qword [r13 + 8]
mov r8, qword [r13 + 0x10]
mov rbp, rax
sub rbp, r8
cmovb r8, rax
call fcn.140313000
cdqe
test eax, eax
cmovne rbp, rax
shr rbp, 0x3f
mov rax, qword [rsp + 0x58]
mov r12, rax
cmp dil, bpl
mov rbp, rax
jne 0x140068761
cmp r15, r14
setb r14b
jne 0x140068735
mov rcx, qword [rbx + 8]
mov rax, qword [rbx + 0x10]
mov rdx, qword [r13 + 8]
mov r8, qword [r13 + 0x10]
mov r14, rax
sub r14, r8
cmovb r8, rax
call fcn.140313000
cdqe
test eax, eax
cmovne r14, rax
shr r14, 0x3f
xor dil, r14b
cmovne rbx, r13
mov r12, rbx
jmp 0x140068761
mov rcx, rbp
mov rdx, rbx
mov r8, r13
call fcn.1400704e0
mov r12, rax
mov rcx, r12
sub rcx, rbp
shr rcx, 3
movabs rax, 0xcccccccccccccccd
imul rcx, rax
mov qword [rsp + 0x50], rcx
mov rax, qword [r12 + 0x20]
mov qword [rsp + 0xf0], rax
movups xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 0x10]
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xd0], xmm0
cmp qword [rsp + 0x38], 0
movabs r15, 0x1ffffffffffffffe
mov r14, qword [rsp + 0x70]
je 0x140068816
mov rax, qword [r12 + 0x18]
mov rcx, qword [rsp + 0x38]
cmp qword [rcx + 0x18], rax
jne 0x140068810
mov rax, rcx
mov rcx, qword [rcx + 8]
mov rax, qword [rax + 0x10]
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
mov rdi, rax
sub rdi, r8
cmovb r8, rax
call fcn.140313000
cdqe
test eax, eax
cmovne rdi, rax
test rdi, rdi
js 0x140068816
jmp 0x140068a80
jae 0x140068a80
cmp r14, qword [rsp + 0x40]
ja 0x14006929f
lea rax, [r14 + r14*4]
mov qword [rsp + 0x80], rax
lea r13, [rsi + rax*8]
xor ebx, ebx
mov rdi, rbp
mov qword [rsp + 0x48], r13
mov r15, qword [rsp + 0x50]
lea rax, [r15 + r15*4]
lea r14, [rax*8]
add r14, rbp
jmp 0x140068896
add r13, 0xffffffffffffffd8
test bpl, bpl
mov rax, r13
cmovne rax, rsi
lea rcx, [rbx + rbx*4]
mov rdx, qword [rdi + 0x20]
mov qword [rax + rcx*8 + 0x20], rdx
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rax + rcx*8 + 0x10], xmm1
movups xmmword [rax + rcx*8], xmm0
movzx eax, bpl
add rbx, rax
add rdi, 0x28
cmp rdi, r14
jae 0x1400688e0
mov rax, qword [rdi + 0x18]
cmp rax, qword [r12 + 0x18]
setb bpl
jne 0x140068860
mov rcx, qword [rdi + 8]
mov rax, qword [rdi + 0x10]
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
mov rbp, rax
sub rbp, r8
cmovb r8, rax
call fcn.140313000
cdqe
test eax, eax
cmovne rbp, rax
shr rbp, 0x3f
jmp 0x140068860
mov r14, qword [rsp + 0x70]
cmp r15, r14
je 0x140068920
lea rax, [rbx + rbx*4]
mov rcx, qword [rdi + 0x20]
mov qword [r13 + rax*8 - 8], rcx
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [r13 + rax*8 - 0x18], xmm1
movups xmmword [r13 + rax*8 - 0x28], xmm0
add r13, 0xffffffffffffffd8
add rdi, 0x28
mov r15, r14
mov rbp, qword [rsp + 0x58]
jmp 0x140068840
lea rax, [rbx*8]
lea r8, [rax + rax*4]
mov rbp, qword [rsp + 0x58]
mov rcx, rbp
mov rdx, rsi
call fcn.1403125c0
mov rdx, r14
sub rdx, rbx
movabs r15, 0x1ffffffffffffffe
mov rdi, qword [rsp + 0x48]
je 0x140068a21
lea rax, [rbx + rbx*4]
lea rax, [rax*8]
add rax, rbp
lea rcx, [rbx + 1]
cmp r14, rcx
jne 0x140068980
xor r10d, r10d
jmp 0x1400689f3
mov rcx, rdx
and rcx, 0xfffffffffffffffe
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x80]
lea r8, [r8 + r9*8]
mov r9, rax
xor r11d, r11d
nop
mov r10, qword [r8 + 0x20]
mov qword [r9 + 0x20], r10
movups xmm0, xmmword [r8]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [r9 + 0x10], xmm1
movups xmmword [r9], xmm0
lea r10, [r11 + 2]
xor r11, r15
lea r11, [r11 + r11*4]
movups xmm0, xmmword [rdi + r11*8]
movups xmm1, xmmword [rdi + r11*8 + 0x10]
movups xmmword [r9 + 0x28], xmm0
movups xmmword [r9 + 0x38], xmm1
mov r11, qword [rdi + r11*8 + 0x20]
mov qword [r9 + 0x48], r11
add r9, 0x50
add r8, 0xffffffffffffffb0
mov r11, r10
cmp rcx, r10
jne 0x1400689a0
test dl, 1
je 0x140068a21
lea rcx, [r10 + r10*4]
not r10
lea r8, [r10 + r10*4]
mov r9, qword [rdi + r8*8 + 0x20]
mov qword [rax + rcx*8 + 0x20], r9
movups xmm0, xmmword [rdi + r8*8]
movups xmm1, xmmword [rdi + r8*8 + 0x10]
movups xmmword [rax + rcx*8 + 0x10], xmm1
movups xmmword [rax + rcx*8], xmm0
test rbx, rbx
je 0x140068a80
cmp r14, rbx
jb 0x1400692a1
lea rax, [rbx + rbx*4]
lea rcx, [rax*8]
add rcx, rbp
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x28], rax
mov edi, dword [rsp + 0x78]
mov dword [rsp + 0x20], edi
mov r8, rsi
mov r9, qword [rsp + 0x40]
call fcn.140068580
mov rdx, rbx
cmp rbx, 0x21
jae 0x140068640
jmp 0x1400685a7
cmp r14, qword [rsp + 0x40]
ja 0x14006929f
lea rax, [r14 + r14*4]
mov qword [rsp + 0x38], rax
lea rax, [rsi + rax*8]
xor r13d, r13d
mov rbx, rbp
mov qword [rsp + 0x48], rax
mov rbp, rax
mov r14, qword [rsp + 0x50]
nop dword [rax + rax]
mov qword [rsp + 0x50], r14
lea rax, [r14 + r14*4]
mov rcx, qword [rsp + 0x58]
lea rdi, [rcx + rax*8]
jmp 0x140068b0b
mov eax, r14d
xor al, 1
add rbp, 0xffffffffffffffd8
test r14b, r14b
mov rcx, rsi
cmovne rcx, rbp
lea rdx, [r13 + r13*4]
mov r8, qword [rbx + 0x20]
mov qword [rcx + rdx*8 + 0x20], r8
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rcx + rdx*8 + 0x10], xmm1
movups xmmword [rcx + rdx*8], xmm0
movzx eax, al
add r13, rax
add rbx, 0x28
cmp rbx, rdi
jae 0x140068b50
mov rax, qword [r12 + 0x18]
cmp rax, qword [rbx + 0x18]
setb r14b
jne 0x140068ad0
mov rcx, qword [r12 + 8]
mov rax, qword [r12 + 0x10]
mov rdx, qword [rbx + 8]
mov r8, qword [rbx + 0x10]
mov r14, rax
sub r14, r8
cmovb r8, rax
call fcn.140313000
cdqe
test eax, eax
cmovne r14, rax
shr r14, 0x3f
jmp 0x140068ad0
mov r14, qword [rsp + 0x70]
cmp qword [rsp + 0x50], r14
je 0x140068b90
add rbp, 0xffffffffffffffd8
lea rax, [r13*4]
add rax, r13
mov rcx, qword [rbx + 0x20]
mov qword [rsi + rax*8 + 0x20], rcx
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsi + rax*8 + 0x10], xmm1
movups xmmword [rsi + rax*8], xmm0
inc r13
add rbx, 0x28
jmp 0x140068ab0
lea rax, [r13*8]
lea r8, [rax + rax*4]
mov rbp, qword [rsp + 0x58]
mov rcx, rbp
mov rdx, rsi
call fcn.1403125c0
mov rbx, r14
sub rbx, r13
mov edi, dword [rsp + 0x78]
mov r11, qword [rsp + 0x48]
je 0x140068c7f
lea rax, [r13*4]
add rax, r13
lea rax, [rax*8]
add rax, rbp
lea rcx, [r13 + 1]
cmp r14, rcx
jne 0x140068be5
xor r9d, r9d
jmp 0x140068c51
mov rcx, rbx
and rcx, 0xfffffffffffffffe
mov rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x38]
lea rdx, [rdx + r8*8]
mov r8, rax
xor r10d, r10d
mov r9, qword [rdx + 0x20]
mov qword [r8 + 0x20], r9
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [r8 + 0x10], xmm1
movups xmmword [r8], xmm0
lea r9, [r10 + 2]
xor r10, r15
lea r10, [r10 + r10*4]
movups xmm0, xmmword [r11 + r10*8]
movups xmm1, xmmword [r11 + r10*8 + 0x10]
movups xmmword [r8 + 0x28], xmm0
movups xmmword [r8 + 0x38], xmm1
mov r10, qword [r11 + r10*8 + 0x20]
mov qword [r8 + 0x48], r10
add r8, 0x50
add rdx, 0xffffffffffffffb0
mov r10, r9
cmp rcx, r9
jne 0x140068c00
test bl, 1
je 0x140068c7f
lea rcx, [r9 + r9*4]
not r9
lea rdx, [r9 + r9*4]
mov r8, qword [r11 + rdx*8 + 0x20]
mov qword [rax + rcx*8 + 0x20], r8
movups xmm0, xmmword [r11 + rdx*8]
movups xmm1, xmmword [r11 + rdx*8 + 0x10]
movups xmmword [rax + rcx*8 + 0x10], xmm1
movups xmmword [rax + rcx*8], xmm0
cmp r14, r13
jb 0x1400692e7
lea rax, [r13*4]
add rax, r13
lea rbp, [rbp + rax*8]
mov eax, 0
mov qword [rsp + 0x38], rax
cmp rbx, 0x21
jae 0x140068632
jmp 0x1400685a7
mov byte [rsp + 0x20], 1
mov rcx, rbp
mov r8, rsi
mov r9, qword [rsp + 0x40]
call fcn.140069bd0
jmp 0x14006928b
mov rax, qword [rcx + 0x20]
mov qword [rsi + 0x20], rax
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
mov rax, qword [r14 + 0x20]
mov qword [rdi + 0x20], rax
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi], xmm0
mov ecx, 1
mov qword [rsp + 0x70], rdi
mov rdx, rbx
mov rax, qword [rsp + 0x78]
sub rdx, rax
mov qword [rsp + 0x80], rdx
lea rdx, [rcx + rcx*4]
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0x48], rcx
cmp rcx, rax
jae 0x140068f07
mov rax, qword [rsp + 0x98]
lea r13, [rax*8 - 0x28]
mov rdi, qword [rsp + 0x48]
jmp 0x140068d8e
mov r15, rsi
mov r13, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x90]
mov qword [r15], rax
mov rax, qword [rsp + 0x40]
mov qword [r15 + 8], rax
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], rdx
mov qword [r15 + 0x20], rcx
inc rdi
add r13, 0x28
cmp rdi, qword [rsp + 0x78]
je 0x140068f07
lea rax, [rdi*8]
lea r14, [rax + rax*4]
lea r15, [rsi + r14]
mov rax, qword [rsp + 0x58]
movups xmm0, xmmword [rax + r14]
movups xmm1, xmmword [rax + r14 + 0x10]
movups xmmword [rsi + r14 + 0x10], xmm1
mov rax, qword [rax + r14 + 0x20]
mov qword [rsi + r14 + 0x20], rax
movups xmmword [rsi + r14], xmm0
mov rdx, qword [rsi + r14 + 0x18]
cmp rdx, qword [rsi + r14 - 0x10]
mov qword [rsp + 0x50], rdx
jne 0x140068e20
mov rcx, qword [r15 + 8]
mov r12, qword [r15 + 0x10]
mov rdx, qword [r15 - 0x20]
mov r8, qword [r15 - 0x18]
mov qword [rsp + 0x38], r13
mov r13, r12
sub r13, r8
cmovb r8, r12
mov qword [rsp + 0x40], rcx
call fcn.140313000
mov rdx, qword [rsp + 0x50]
cdqe
test eax, eax
cmovne r13, rax
test r13, r13
mov r13, qword [rsp + 0x38]
jns 0x140068d7c
jmp 0x140068e33
jae 0x140068d7c
mov rax, qword [r15 + 8]
mov qword [rsp + 0x40], rax
mov r12, qword [r15 + 0x10]
add r14, rsi
add r14, 0xffffffffffffffd8
mov rax, qword [r15]
mov qword [rsp + 0x90], rax
mov rcx, qword [r15 + 0x20]
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [r15], xmm0
movups xmmword [r15 + 0x10], xmm1
mov rax, qword [r14 + 0x20]
mov qword [r15 + 0x20], rax
mov r15, rsi
cmp r14, rsi
je 0x140068d5c
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x38], r13
jmp 0x140068ef2
mov rdx, qword [rsi + r13 - 0x20]
mov r8, qword [rsi + r13 - 0x18]
mov rdi, r12
sub rdi, r8
cmovb r8, r12
mov rcx, qword [rsp + 0x40]
call fcn.140313000
mov rdx, qword [rsp + 0x50]
cdqe
test eax, eax
cmovne rdi, rax
test rdi, rdi
jns 0x140068d4a
add r14, 0xffffffffffffffd8
lea rax, [rsi + r13]
add rax, 0xffffffffffffffd8
mov rcx, qword [rax + 0x20]
mov qword [r15 + 0x20], rcx
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r15 + 0x10], xmm1
movups xmmword [r15], xmm0
add r13, 0xffffffffffffffd8
je 0x140068d47
lea r15, [rsi + r13]
cmp rdx, qword [rsi + r13 - 0x10]
je 0x140068e90
jb 0x140068ec4
mov r15, r14
jmp 0x140068d4a
mov r9, qword [rsp + 0x48]
cmp r9, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x60]
jae 0x1400690f7
add rbp, rsi
mov rax, qword [rsp + 0x98]
lea r12, [rax*8 - 0x28]
jmp 0x140068f80
mov r14, rbp
mov rcx, qword [rsp + 0x60]
mov r9, qword [rsp + 0x48]
mov r12, qword [rsp + 0x68]
mov rax, qword [rsp + 0x90]
mov qword [r14], rax
mov rax, qword [rsp + 0x40]
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], r13
mov qword [r14 + 0x18], rdx
mov rax, qword [rsp + 0x38]
mov qword [r14 + 0x20], rax
inc r9
add r12, 0x28
cmp r9, qword [rsp + 0x80]
je 0x1400690f7
lea rax, [r9*8]
lea rdi, [rax + rax*4]
lea r14, [rdi + rbp]
movups xmm0, xmmword [rcx + rdi]
movups xmm1, xmmword [rcx + rdi + 0x10]
movups xmmword [rbp + rdi + 0x10], xmm1
mov rax, qword [rcx + rdi + 0x20]
mov qword [rbp + rdi + 0x20], rax
movups xmmword [rbp + rdi], xmm0
mov rdx, qword [rbp + rdi + 0x18]
cmp rdx, qword [rbp + rdi - 0x10]
mov qword [rsp + 0x50], rdx
jne 0x140069010
mov rcx, qword [r14 + 8]
mov r13, qword [r14 + 0x10]
mov rdx, qword [r14 - 0x20]
mov r8, qword [r14 - 0x18]
mov qword [rsp + 0x48], r9
mov r15, r13
sub r15, r8
cmovb r8, r13
mov qword [rsp + 0x40], rcx
call fcn.140313000
mov rdx, qword [rsp + 0x50]
cdqe
test eax, eax
cmovne r15, rax
test r15, r15
mov r9, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x60]
jns 0x140068f6b
jmp 0x140069023
jae 0x140068f6b
mov rax, qword [r14 + 8]
mov qword [rsp + 0x40], rax
mov r13, qword [r14 + 0x10]
add rdi, rbp
add rdi, 0xffffffffffffffd8
mov rax, qword [r14]
mov qword [rsp + 0x90], rax
mov rax, qword [r14 + 0x20]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [r14], xmm0
movups xmmword [r14 + 0x10], xmm1
mov rax, qword [rdi + 0x20]
mov qword [r14 + 0x20], rax
mov r14, rbp
cmp rdi, rbp
je 0x140068f46
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x68], r12
mov r15, r12
jmp 0x1400690e2
mov rdx, qword [rbp + r15 - 0x20]
mov r8, qword [rbp + r15 - 0x18]
mov r12, r13
sub r12, r8
cmovb r8, r13
mov rcx, qword [rsp + 0x40]
call fcn.140313000
mov rdx, qword [rsp + 0x50]
cdqe
test eax, eax
cmovne r12, rax
test r12, r12
jns 0x140068f37
add rdi, 0xffffffffffffffd8
lea rax, [r15 + rbp]
add rax, 0xffffffffffffffd8
mov rcx, qword [rax + 0x20]
mov qword [r14 + 0x20], rcx
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r14 + 0x10], xmm1
movups xmmword [r14], xmm0
add r15, 0xffffffffffffffd8
je 0x140068f34
lea r14, [r15 + rbp]
cmp rdx, qword [rbp + r15 - 0x10]
je 0x140069080
jb 0x1400690b4
mov r14, rdi
jmp 0x140068f37
mov r14, qword [rsp + 0x70]
lea r12, [r14 - 0x28]
lea rax, [rbx + rbx*4]
lea r15, [rsi + rax*8]
add r15, 0xffffffffffffffd8
mov rbp, qword [rsp + 0x58]
lea r13, [rax*8 - 0x28]
add r13, rbp
jmp 0x140069195
movzx eax, dil
xor dil, 1
lea rax, [rax + rax*4]
mov rdx, qword [rsp + 0x70]
lea rdx, [rdx + rax*8]
movzx eax, dil
lea rax, [rax + rax*4]
lea rsi, [rsi + rax*8]
add rbp, 0x28
test r14b, r14b
mov rax, r15
cmovne rax, r12
mov rcx, qword [rax + 0x20]
mov qword [r13 + 0x20], rcx
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r13 + 0x10], xmm1
movups xmmword [r13], xmm0
movzx eax, r14b
mov r14, rdx
lea rcx, [rax + rax*4]
lea r15, [r15 + rcx*8]
add r15, 0xffffffffffffffd8
neg rax
lea rax, [rax + rax*4]
lea r12, [r12 + rax*8]
add r13, 0xffffffffffffffd8
dec qword [rsp + 0x78]
je 0x140069239
mov rax, qword [r14 + 0x18]
cmp rax, qword [rsi + 0x18]
setb dil
jne 0x1400691ce
mov rcx, qword [r14 + 8]
mov rax, qword [r14 + 0x10]
mov rdx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
mov rdi, rax
sub rdi, r8
cmovb r8, rax
call fcn.140313000
cdqe
test eax, eax
cmovne rdi, rax
shr rdi, 0x3f
test dil, dil
mov rax, rsi
mov qword [rsp + 0x70], r14
cmovne rax, r14
mov rcx, qword [rax + 0x20]
mov qword [rbp + 0x20], rcx
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
mov rax, qword [r15 + 0x18]
cmp rax, qword [r12 + 0x18]
setb r14b
jne 0x140069120
mov rcx, qword [r15 + 8]
mov rax, qword [r15 + 0x10]
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
mov r14, rax
sub r14, r8
cmovb r8, rax
call fcn.140313000
cdqe
test eax, eax
cmovne r14, rax
shr r14, 0x3f
jmp 0x140069120
add r12, 0x28
test bl, 1
je 0x14006927d
xor eax, eax
xor ecx, ecx
cmp rsi, r12
setae al
setb cl
mov rdx, r14
cmovb rdx, rsi
mov r8, qword [rdx + 0x20]
mov qword [rbp + 0x20], r8
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
lea rcx, [rcx + rcx*4]
lea rsi, [rsi + rcx*8]
lea rax, [rax + rax*4]
lea r14, [r14 + rax*8]
cmp rsi, r12
jne 0x1400692f9
add r15, 0x28
cmp r14, r15
jne 0x1400692f9
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
lea rax, str.mid___len
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0xa8], 1
mov qword [rsp + 0xb0], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0xb8], xmm0
lea rdx, str._rustc_f6e511eec7342f59a25f7c0534f1dbea00d01b14librarycore_src_slice_sort_stablequicksort.rs
lea rcx, [rsp + 0xa0]
call fcn.140313650
lea r8, str._rustc_f6e511eec7342f59a25f7c0534f1dbea00d01b14librarycore_src_slice_sort_stablequicksort.rs
mov rcx, r13
mov rdx, r14
call fcn.140313570
call fcn.140313bf0
int3