Function at 0x140124300
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
mov r13, r9
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
cmp rdx, 0x21
jae 0x14012462e
cmp rbx, 2
jb 0x140124fcf
lea rax, [rbx + 0x10]
cmp rax, r13
ja 0x140124fe3
mov rax, rbx
shr rax, 1
cmp rbx, 7
jbe 0x140124bcf
mov rcx, qword [rdi + 0x30]
cmp rcx, qword [rdi]
setb cl
jne 0x140124367
mov rcx, qword [rdi + 0x48]
cmp rcx, qword [rdi + 0x18]
setb cl
mov rdx, qword [rdi + 0x90]
cmp rdx, qword [rdi + 0x60]
setb r8b
jne 0x140124387
mov rdx, qword [rdi + 0xa8]
cmp rdx, qword [rdi + 0x78]
setb r8b
movzx ecx, cl
lea r10, [rcx + rcx*2]
shl r10d, 4
lea rdx, [rdi + r10]
xor cl, 1
movzx ecx, cl
lea rcx, [rcx + rcx*2]
shl ecx, 4
add rcx, rdi
lea r11, [rdi + 0x60]
lea r9, [rdi + 0x90]
test r8b, r8b
mov r8, r11
cmovne r8, r9
cmovne r9, r11
mov r11, qword [r8]
cmp r11, qword [rdi + r10]
setb r11b
jne 0x1401243d8
mov r10, qword [r8 + 0x18]
cmp r10, qword [rdx + 0x18]
setb r11b
mov r10, qword [r9]
cmp r10, qword [rcx]
setb bpl
jne 0x1401243f0
mov r10, qword [r9 + 0x18]
cmp r10, qword [rcx + 0x18]
setb bpl
test bpl, bpl
mov r10, rcx
cmovne r10, r8
test r11b, r11b
cmovne r10, rdx
cmovne rdx, r8
cmovne r8, rcx
test bpl, bpl
cmove rcx, r9
cmovne r8, r9
mov r9, qword [r8]
cmp r9, qword [r10]
setb r9b
jne 0x14012442c
mov r9, qword [r8 + 0x18]
cmp r9, qword [r10 + 0x18]
setb r9b
test r9b, r9b
mov r9, r10
cmovne r9, r8
cmovne r8, r10
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmm2, xmmword [rdx + 0x20]
movups xmmword [rsi + 0x20], xmm2
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movups xmm2, xmmword [r9 + 0x20]
movups xmmword [rsi + 0x50], xmm2
movups xmmword [rsi + 0x40], xmm1
movups xmmword [rsi + 0x30], xmm0
movups xmm0, xmmword [r8]
movups xmm1, xmmword [r8 + 0x10]
movups xmm2, xmmword [r8 + 0x20]
movups xmmword [rsi + 0x80], xmm2
movups xmmword [rsi + 0x70], xmm1
movups xmmword [rsi + 0x60], xmm0
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [rcx + 0x20]
movups xmmword [rsi + 0xb0], xmm2
movups xmmword [rsi + 0xa0], xmm1
movups xmmword [rsi + 0x90], xmm0
mov rcx, rax
shl rcx, 4
lea rcx, [rcx + rcx*2]
lea r10, [rdi + rcx]
mov rdx, qword [rdi + rcx + 0x30]
cmp rdx, qword [rdi + rcx]
setb dl
jne 0x1401244cf
mov rdx, qword [r10 + 0x48]
cmp rdx, qword [r10 + 0x18]
setb dl
mov r8, qword [r10 + 0x90]
cmp r8, qword [r10 + 0x60]
setb r9b
jne 0x1401244ef
mov r8, qword [r10 + 0xa8]
cmp r8, qword [r10 + 0x78]
setb r9b
movzx edx, dl
lea r14, [rdx + rdx*2]
shl r14d, 4
lea r8, [r10 + r14]
xor dl, 1
movzx edx, dl
lea rdx, [rdx + rdx*2]
shl edx, 4
add rdx, r10
lea r15, [r10 + 0x60]
lea r11, [r10 + 0x90]
test r9b, r9b
mov r9, r15
cmovne r9, r11
cmovne r11, r15
mov r15, qword [r9]
cmp r15, qword [r10 + r14]
setb bpl
jne 0x140124540
mov r10, qword [r9 + 0x18]
cmp r10, qword [r8 + 0x18]
setb bpl
mov r10, qword [r11]
cmp r10, qword [rdx]
setb r14b
jne 0x140124558
mov r10, qword [r11 + 0x18]
cmp r10, qword [rdx + 0x18]
setb r14b
add rcx, rsi
test r14b, r14b
mov r10, rdx
cmovne r10, r9
test bpl, bpl
cmovne r10, r8
cmovne r8, r9
cmovne r9, rdx
test r14b, r14b
cmove rdx, r11
cmovne r9, r11
mov r11, qword [r9]
cmp r11, qword [r10]
setb r11b
jne 0x140124597
mov r11, qword [r9 + 0x18]
cmp r11, qword [r10 + 0x18]
setb r11b
test r11b, r11b
mov r11, r10
cmovne r11, r9
cmovne r9, r10
movups xmm0, xmmword [r8]
movups xmm1, xmmword [r8 + 0x10]
movups xmm2, xmmword [r8 + 0x20]
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx], xmm0
movups xmm0, xmmword [r11]
movups xmm1, xmmword [r11 + 0x10]
movups xmm2, xmmword [r11 + 0x20]
movups xmmword [rcx + 0x50], xmm2
movups xmmword [rcx + 0x40], xmm1
movups xmmword [rcx + 0x30], xmm0
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movups xmm2, xmmword [r9 + 0x20]
movups xmmword [rcx + 0x80], xmm2
movups xmmword [rcx + 0x70], xmm1
movups xmmword [rcx + 0x60], xmm0
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmm2, xmmword [rdx + 0x20]
movups xmmword [rcx + 0x90], xmm0
movups xmmword [rcx + 0xa0], xmm1
movups xmmword [rcx + 0xb0], xmm2
mov ecx, 4
mov rdx, rbx
sub rdx, rax
cmp rcx, rax
jb 0x140124c20
jmp 0x140124d30
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x30], rax
mov r14d, dword [rsp + 0x120]
lea rax, [rsi - 0x30]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], r13
mov r15, rbx
nop word cs:[rax + rax]
sub r14d, 1
jb 0x140124bb4
mov r9, r15
shr r9, 3
lea rdx, [r9 + r9*2]
shl rdx, 6
add rdx, rdi
imul r8, r9, 0x150
add r8, rdi
cmp r15, 0x40
mov dword [rsp + 0x3c], r14d
jae 0x140124700
mov rax, qword [rdi]
mov r14, qword [rdi + 0x18]
mov r9, qword [rdx]
mov r10, qword [rdx + 0x18]
xor r11d, r11d
cmp r14, r10
setb r11b
xor ecx, ecx
cmp rax, r9
setb cl
cmove ecx, r11d
mov r11, qword [r8]
mov rbx, qword [r8 + 0x18]
xor ebp, ebp
cmp r14, rbx
setb bpl
xor r14d, r14d
cmp rax, r11
setb r14b
cmove r14d, ebp
mov rax, rdi
cmp cl, r14b
jne 0x140124708
xor eax, eax
cmp r10, rbx
setb al
xor r10d, r10d
cmp r9, r11
setb r10b
cmove r10d, eax
xor cl, r10b
cmovne rdx, r8
mov rax, rdx
jmp 0x140124708
mov rcx, rdi
call fcn.140125040
sub rax, rdi
movabs rcx, 0xaaaaaaaaaaaaaaab
mul rcx
mov r12, rdx
shr r12, 5
lea rax, [r12 + r12*2]
shl rax, 4
lea r14, [rdi + rax]
movups xmm0, xmmword [rdi + rax]
movups xmm1, xmmword [rdi + rax + 0x10]
movups xmm2, xmmword [rdi + rax + 0x20]
movaps xmmword [rsp + 0xa0], xmm2
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0x80], xmm0
cmp qword [rsp + 0x30], 0
je 0x140124782
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov rcx, qword [rcx + 0x18]
xor edx, edx
cmp rcx, qword [r14 + 0x18]
setb dl
xor ecx, ecx
cmp rax, qword [r14]
setb cl
cmove ecx, edx
cmp cl, 1
jne 0x1401249b0
cmp r15, r13
ja 0x140124fe3
lea rbp, [r15 + r15*2]
shl rbp, 4
lea r13, [rsi + rbp]
xor ebx, ebx
mov rax, rdi
mov rcx, r13
mov rdx, r12
nop word cs:[rax + rax]
lea r8, [rdx + rdx*2]
shl r8, 4
add r8, rdi
cmp rax, r8
jae 0x140124823
mov r9, rbx
mov r10, qword [rax]
mov r11, qword [rax + 0x18]
xor ebx, ebx
cmp r11, qword [r14 + 0x18]
setb bl
xor r11d, r11d
cmp r10, qword [r14]
setb r11b
cmove r11d, ebx
add rcx, 0xffffffffffffffd0
test r11b, r11b
mov r10, rcx
cmovne r10, rsi
lea rbx, [r9 + r9*2]
shl rbx, 4
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r10 + rbx + 0x20], xmm0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r10 + rbx + 0x10], xmm1
movups xmmword [r10 + rbx], xmm0
movzx ebx, r11b
add rbx, r9
add rax, 0x30
cmp rax, r8
jb 0x1401247c0
cmp rdx, r15
je 0x140124860
lea rdx, [rbx + rbx*2]
shl rdx, 4
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmmword [rcx + rdx - 0x10], xmm2
movups xmmword [rcx + rdx - 0x20], xmm1
movups xmmword [rcx + rdx - 0x30], xmm0
add rcx, 0xffffffffffffffd0
add rax, 0x30
mov rdx, r15
jmp 0x1401247b0
mov rax, rbx
shl rax, 4
lea r8, [rax + rax*2]
mov rcx, rdi
mov rdx, rsi
call sub.msvcrt.dll_memcpy
mov rdx, r15
sub rdx, rbx
je 0x140124953
lea rax, [rbx + rbx*2]
shl rax, 4
add rax, rdi
lea rcx, [rbx + 1]
cmp r15, rcx
jne 0x1401248a0
xor r9d, r9d
jmp 0x14012491b
mov rcx, rdx
and rcx, 0xfffffffffffffffe
add rbp, qword [rsp + 0x40]
mov r8, rax
xor r10d, r10d
nop word cs:[rax + rax]
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
movups xmm2, xmmword [rbp + 0x20]
movups xmmword [r8 + 0x20], xmm2
movups xmmword [r8 + 0x10], xmm1
movups xmmword [r8], xmm0
lea r9, [r10 + 2]
xor r10, 0xfffffffffffffffe
lea r10, [r10 + r10*2]
shl r10, 4
movups xmm0, xmmword [r13 + r10]
movups xmm1, xmmword [r13 + r10 + 0x10]
movups xmm2, xmmword [r13 + r10 + 0x20]
movups xmmword [r8 + 0x30], xmm0
movups xmmword [r8 + 0x40], xmm1
movups xmmword [r8 + 0x50], xmm2
add r8, 0x60
add rbp, 0xffffffffffffffa0
mov r10, r9
cmp rcx, r9
jne 0x1401248c0
test dl, 1
je 0x140124953
lea rcx, [r9 + r9*2]
not r9
lea r8, [r9 + r9*2]
shl r8, 4
shl rcx, 4
movups xmm0, xmmword [r13 + r8]
movups xmm1, xmmword [r13 + r8 + 0x10]
movups xmm2, xmmword [r13 + r8 + 0x20]
movups xmmword [rax + rcx + 0x20], xmm2
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
test rbx, rbx
mov r13, qword [rsp + 0x48]
je 0x1401249b0
cmp r15, rbx
jb 0x140124fe5
lea rcx, [rbx + rbx*2]
shl rcx, 4
add rcx, rdi
lea rax, [rsp + 0x80]
mov qword [rsp + 0x28], rax
mov r14d, dword [rsp + 0x3c]
mov dword [rsp + 0x20], r14d
mov r8, rsi
mov r9, r13
call fcn.140124300
mov r15, rbx
cmp rbx, 0x21
jae 0x140124660
jmp 0x140124329
cmp r15, r13
ja 0x140124fe3
lea rbp, [r15 + r15*2]
shl rbp, 4
lea rcx, [rsi + rbp]
xor r13d, r13d
mov rax, rdi
mov qword [rsp + 0x30], rcx
lea rdx, [r12 + r12*2]
shl rdx, 4
add rdx, rdi
cmp rax, rdx
jae 0x140124a4c
mov r8, r13
mov r9, qword [r14]
mov r10, qword [r14 + 0x18]
xor r11d, r11d
cmp r10, qword [rax + 0x18]
setae r11b
xor r10d, r10d
cmp r9, qword [rax]
setae r10b
cmove r10d, r11d
add rcx, 0xffffffffffffffd0
test r10b, r10b
mov r9, rcx
cmovne r9, rsi
lea r11, [r13*2]
add r11, r13
shl r11, 4
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmmword [r9 + r11 + 0x20], xmm2
movups xmmword [r9 + r11 + 0x10], xmm1
movups xmmword [r9 + r11], xmm0
movzx r13d, r10b
add r13, r8
add rax, 0x30
cmp rax, rdx
jb 0x1401249e0
cmp r12, r15
je 0x140124a90
add rcx, 0xffffffffffffffd0
lea rdx, [r13*2]
add rdx, r13
shl rdx, 4
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmmword [rsi + rdx + 0x20], xmm2
movups xmmword [rsi + rdx + 0x10], xmm1
movups xmmword [rsi + rdx], xmm0
inc r13
add rax, 0x30
mov r12, r15
jmp 0x1401249d0
mov rax, r13
shl rax, 4
lea r8, [rax + rax*2]
mov rcx, rdi
mov rdx, rsi
call sub.msvcrt.dll_memcpy
mov rbx, r15
sub rbx, r13
mov r14d, dword [rsp + 0x3c]
mov r10, qword [rsp + 0x30]
je 0x140124b7b
lea rax, [r13*2]
add rax, r13
shl rax, 4
add rax, rdi
lea rcx, [r13 + 1]
cmp r15, rcx
jne 0x140124adc
xor r8d, r8d
jmp 0x140124b44
mov rcx, rbx
and rcx, 0xfffffffffffffffe
add rbp, qword [rsp + 0x40]
mov rdx, rax
xor r9d, r9d
nop
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
movups xmm2, xmmword [rbp + 0x20]
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
lea r8, [r9 + 2]
xor r9, 0xfffffffffffffffe
lea r9, [r9 + r9*2]
shl r9, 4
movups xmm0, xmmword [r10 + r9]
movups xmm1, xmmword [r10 + r9 + 0x10]
movups xmm2, xmmword [r10 + r9 + 0x20]
movups xmmword [rdx + 0x30], xmm0
movups xmmword [rdx + 0x40], xmm1
movups xmmword [rdx + 0x50], xmm2
add rdx, 0x60
add rbp, 0xffffffffffffffa0
mov r9, r8
cmp rcx, r8
jne 0x140124af0
test bl, 1
je 0x140124b7b
lea rcx, [r8 + r8*2]
not r8
lea rdx, [r8 + r8*2]
shl rdx, 4
shl rcx, 4
movups xmm0, xmmword [r10 + rdx]
movups xmm1, xmmword [r10 + rdx + 0x10]
movups xmm2, xmmword [r10 + rdx + 0x20]
movups xmmword [rax + rcx + 0x20], xmm2
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
cmp r15, r13
jb 0x14012501c
lea rax, [r13*2]
add rax, r13
shl rax, 4
add rdi, rax
mov eax, 0
mov qword [rsp + 0x30], rax
cmp rbx, 0x21
mov r13, qword [rsp + 0x48]
jae 0x140124651
jmp 0x140124329
mov byte [rsp + 0x20], 1
mov rcx, rdi
mov rdx, r15
mov r8, rsi
mov r9, r13
call fcn.140128df0
jmp 0x140124fcf
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmm2, xmmword [rdi + 0x20]
movups xmmword [rsi + 0x20], xmm2
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
mov rcx, rax
shl rcx, 4
lea rcx, [rcx + rcx*2]
movups xmm0, xmmword [rdi + rcx]
movups xmm1, xmmword [rdi + rcx + 0x10]
movups xmm2, xmmword [rdi + rcx + 0x20]
movups xmmword [rsi + rcx + 0x20], xmm2
movups xmmword [rsi + rcx + 0x10], xmm1
movups xmmword [rsi + rcx], xmm0
mov ecx, 1
mov rdx, rbx
sub rdx, rax
cmp rcx, rax
jae 0x140124d30
mov r8d, ecx
shl r8d, 4
lea r9, [r8 + r8*2]
mov r8d, 0x30
sub r8, r9
mov r9, rcx
jmp 0x140124c71
mov r14, rsi
mov qword [r14], r10
movaps xmm0, xmmword [rsp + 0x50]
movups xmmword [r14 + 8], xmm0
mov qword [r14 + 0x18], r11
movaps xmm0, xmmword [rsp + 0x80]
movups xmmword [r14 + 0x20], xmm0
inc r9
add r8, 0xffffffffffffffd0
cmp r9, rax
je 0x140124d30
mov r10, r9
shl r10, 4
lea r14, [r10 + r10*2]
lea r15, [rsi + r14]
movups xmm0, xmmword [rdi + r14]
movups xmm1, xmmword [rdi + r14 + 0x10]
movups xmm2, xmmword [rdi + r14 + 0x20]
movups xmmword [rsi + r14], xmm0
movups xmmword [rsi + r14 + 0x20], xmm2
movups xmmword [rsi + r14 + 0x10], xmm1
mov r10, qword [rsi + r14]
cmp r10, qword [rsi + r14 - 0x30]
jne 0x140124cc0
mov r11, qword [r15 + 0x18]
cmp r11, qword [r15 - 0x18]
jae 0x140124c61
jmp 0x140124cc6
jae 0x140124c61
mov r11, qword [r15 + 0x18]
add r14, rsi
add r14, 0xffffffffffffffd0
movups xmm0, xmmword [r15 + 8]
movaps xmmword [rsp + 0x50], xmm0
movups xmm0, xmmword [r15 + 0x20]
movaps xmmword [rsp + 0x80], xmm0
mov r15, r8
nop word [rax + rax]
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmm2, xmmword [r14 + 0x20]
movups xmmword [r14 + 0x50], xmm2
movups xmmword [r14 + 0x40], xmm1
movups xmmword [r14 + 0x30], xmm0
test r15, r15
je 0x140124c40
cmp r10, qword [r14 - 0x30]
jne 0x140124d20
cmp r11, qword [r14 - 0x18]
jae 0x140124c43
add r14, 0xffffffffffffffd0
add r15, 0x30
jmp 0x140124cf0
cmp rcx, rdx
jae 0x140124e65
mov r8, rax
shl r8, 4
lea r8, [r8 + r8*2]
lea r9, [rdi + r8]
add r8, rsi
mov r10d, ecx
shl r10d, 4
lea r11, [r10 + r10*2]
mov r10d, 0x30
sub r10, r11
jmp 0x140124da1
mov r15, r8
mov qword [r15], r11
movaps xmm0, xmmword [rsp + 0x50]
movups xmmword [r15 + 8], xmm0
mov qword [r15 + 0x18], r14
movaps xmm0, xmmword [rsp + 0x80]
movups xmmword [r15 + 0x20], xmm0
inc rcx
add r10, 0xffffffffffffffd0
cmp rcx, rdx
je 0x140124e65
mov r11, rcx
shl r11, 4
lea r15, [r11 + r11*2]
lea r12, [r8 + r15]
movups xmm0, xmmword [r9 + r15]
movups xmm1, xmmword [r9 + r15 + 0x10]
movups xmm2, xmmword [r9 + r15 + 0x20]
movups xmmword [r8 + r15], xmm0
movups xmmword [r8 + r15 + 0x20], xmm2
movups xmmword [r8 + r15 + 0x10], xmm1
mov r11, qword [r8 + r15]
cmp r11, qword [r8 + r15 - 0x30]
jne 0x140124df0
mov r14, qword [r12 + 0x18]
cmp r14, qword [r12 - 0x18]
jae 0x140124d91
jmp 0x140124df7
jae 0x140124d91
mov r14, qword [r12 + 0x18]
add r15, r8
add r15, 0xffffffffffffffd0
movups xmm0, xmmword [r12 + 8]
movaps xmmword [rsp + 0x50], xmm0
movups xmm0, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x80], xmm0
mov r12, r10
jmp 0x140124e32
cmp r14, qword [r15 - 0x18]
jae 0x140124d73
add r15, 0xffffffffffffffd0
add r12, 0x30
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmm2, xmmword [r15 + 0x20]
movups xmmword [r15 + 0x50], xmm2
movups xmmword [r15 + 0x40], xmm1
movups xmmword [r15 + 0x30], xmm0
test r12, r12
je 0x140124d70
cmp r11, qword [r15 - 0x30]
je 0x140124e20
jb 0x140124e2a
jmp 0x140124d73
lea rdx, [rax + rax*2]
shl rdx, 4
lea rcx, [rsi + rdx]
lea r8, [rsi + rdx]
add r8, 0xffffffffffffffd0
lea r9, [rbx + rbx*2]
shl r9, 4
lea rdx, [rsi + r9]
add rdx, 0xffffffffffffffd0
add r9, rdi
add r9, 0xffffffffffffffd0
jmp 0x140124f0c
movzx r15d, r10b
xor r10b, 1
lea r15, [r15 + r15*2]
shl r15d, 4
add rcx, r15
movzx r10d, r10b
lea r10, [r10 + r10*2]
shl r10d, 4
add rsi, r10
add rdi, 0x30
movups xmm0, xmmword [r14]
movups xmm1, xmmword [r14 + 0x10]
movups xmm2, xmmword [r14 + 0x20]
movups xmmword [r9 + 0x20], xmm2
movups xmmword [r9 + 0x10], xmm1
movups xmmword [r9], xmm0
movzx r10d, r11b
lea r11, [r10 + r10*2]
shl r11d, 4
add rdx, r11
add rdx, 0xffffffffffffffd0
neg r10
lea r10, [r10 + r10*2]
shl r10, 4
add r8, r10
add r9, 0xffffffffffffffd0
dec rax
je 0x140124f74
mov r10, qword [rcx]
cmp r10, qword [rsi]
setb r10b
jne 0x140124f24
mov r10, qword [rcx + 0x18]
cmp r10, qword [rsi + 0x18]
setb r10b
mov r11, rcx
test r10b, r10b
jne 0x140124f2f
mov r11, rsi
movups xmm0, xmmword [r11]
movups xmm1, xmmword [r11 + 0x10]
movups xmm2, xmmword [r11 + 0x20]
movups xmmword [rdi + 0x20], xmm2
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi], xmm0
mov r11, qword [rdx]
cmp r11, qword [r8]
setb r11b
jne 0x140124f60
mov r11, qword [rdx + 0x18]
cmp r11, qword [r8 + 0x18]
setb r11b
mov r14, r8
test r11b, r11b
jne 0x140124ea0
mov r14, rdx
jmp 0x140124ea0
add r8, 0x30
test bl, 1
je 0x140124fc1
xor eax, eax
xor r9d, r9d
cmp rsi, r8
setae al
setb r9b
mov r10, rcx
cmovb r10, rsi
movups xmm0, xmmword [r10]
movups xmm1, xmmword [r10 + 0x10]
movups xmm2, xmmword [r10 + 0x20]
movups xmmword [rdi + 0x20], xmm2
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi], xmm0
lea r9, [r9 + r9*2]
shl r9d, 4
add rsi, r9
lea rax, [rax + rax*2]
shl eax, 4
add rcx, rax
cmp rsi, r8
jne 0x14012502e
add rdx, 0x30
cmp rcx, rdx
jne 0x14012502e
add rsp, 0xb8
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 + 0x50], rax
mov qword [rsp + 0x58], 1
mov qword [rsp + 0x60], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
lea rdx, str._rustc_3cb521a4344f0b556b81c55eec8facddeb1ead83librarycore_src_slice_sort_stablequicksort.rs
lea rcx, [rsp + 0x50]
call fcn.1400467a0
lea r8, str._rustc_3cb521a4344f0b556b81c55eec8facddeb1ead83librarycore_src_slice_sort_stablequicksort.rs
mov rcx, r13
mov rdx, r15
call fcn.1400467e0
call fcn.14004baf0
int3