Function at 0x14001d820
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x7b8
movaps xmmword [rsp + 0x7a0], xmm6
mov qword [rsp + 0x100], r9
mov qword [rsp + 0xf0], r8
nop
push rdx
pop rsi
mov qword [rsp + 0x138], rcx
lea rdx, [0x140280e5a]
mov r8d, 0xa
push rsi
nop
pop rcx
call fcn.14002dc30
or rax, rax
cmove rdx, rax
mov qword [rsp + 0x68], rdx
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04library_std_src_threadlocal.rs
cmove rax, rcx
nop
push rcx
pop rdi
mov qword [rsp + 0xa8], rax
lea rdx, [0x140280e64]
mov r8d, 0xf
mov rcx, rsi
call fcn.14002dc30
or rax, rax
cmove rdx, rax
mov qword [rsp + 0x60], rdx
cmove rax, rdi
mov qword [rsp + 0x58], rax
lea rdx, [0x140280e73]
mov r8d, 0xd
push rsi
pop rcx
nop
call fcn.14002dc30
or rax, rax
cmove rdx, rax
mov qword [rsp + 0x88], rdx
cmove rax, rdi
mov qword [rsp + 0x48], rax
lea rdx, [0x140280e80]
mov r8d, 0xf
push rsi
pop rcx
nop
call fcn.14002dc30
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x30], rdx
cmove rax, rdi
mov qword [rsp + 0x20], rax
lea rdx, str..debug_abbrev.debug_addr.debug_aranges.debug_cu_index.debug_info.debug_line.debug_line_str.debug_loc.debug_loclists.debug_ranges.debug_rnglists.debug_str.debug_str_offsets.debug_tu_index.debug_types.debug_abbrev.dwo.debug_info.dwo.debug_line.dwo.debug_loc.dwo.debug_loclists.dwo.debug_rnglists.dwo.debug_str.dwo.debug_str_offsets.dwo.debug_types.dwoNulError
mov r8d, 0xd
nop
push rsi
pop rcx
call fcn.14002dc30
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x38], rdx
cmove rax, rdi
mov qword [rsp + 0x50], rax
lea rdx, [0x140280e0d]
mov r8d, 0xb
nop
push rsi
pop rcx
call fcn.14002dc30
or rax, rax
cmove rdx, rax
mov qword [rsp + 0x90], rdx
cmove rax, rdi
mov qword [rsp + 0x28], rax
lea rdx, [0x140280e18]
mov r8d, 0xe
nop
push rsi
pop rcx
call fcn.14002dc30
or rax, rax
cmove rdx, rax
mov qword [rsp + 0xa0], rdx
cmove rax, rdi
mov qword [rsp + 0x108], rax
lea rdx, [0x140280e35]
mov r8d, 0xb
nop
push rsi
pop rcx
call fcn.14002dc30
or rax, rax
cmove rdx, rax
mov qword [rsp + 0x98], rdx
cmove rax, rdi
mov qword [rsp + 0xc0], rax
lea rdx, [0x140280e40]
mov r8d, 0xb
mov rcx, rsi
call fcn.14002dc30
mov r12, rax
test rax, rax
cmove rdx, rax
mov qword [rsp + 0xb8], rdx
cmove r12, rdi
nop
push rdi
pop rbx
lea rdx, [0x140280e4b]
mov r8d, 0xf
nop
push rsi
pop rcx
call fcn.14002dc30
nop
push rax
pop rbp
push rdx
nop
pop rdi
test rax, rax
cmove rdi, rax
cmove rbp, rbx
mov r14, rbx
lea rdx, [0x140280e8f]
mov r8d, 0xa
push rsi
pop rcx
nop
call fcn.14002dc30
mov r13, rax
push rdx
pop rbx
nop
or rax, rax
cmove rbx, rax
cmove r13, r14
lea rdx, [0x140280e99]
mov r8d, 0x12
mov rcx, rsi
call fcn.14002dc30
mov r14, rax
mov r15, rdx
lea rdx, [0x140280eba]
mov r8d, 0xc
mov qword [rsp + 0x40], rsi
push rsi
pop rcx
nop
call fcn.14002dc30
xorps xmm6, xmm6
movups xmmword [rsp + 0x768], xmm6
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x698], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x6a0], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x6a8], rcx
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x6b0], rcx
mov rcx, qword [rsp + 0x108]
mov qword [rsp + 0x6b8], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x6c0], rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0x6c8], rcx
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x6d0], rcx
mov qword [rsp + 0x6d8], r12
lea r12, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04library_std_src_threadlocal.rs
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x6e0], rcx
mov qword [rsp + 0x6e8], rbp
mov qword [rsp + 0x6f0], rdi
mov qword [rsp + 0x6f8], r13
mov qword [rsp + 0x700], rbx
or r14, r14
cmove r15, r14
cmove r14, r12
mov qword [rsp + 0x708], r14
movabs r14, 0x8000000000000000
mov qword [rsp + 0x710], r15
or rax, rax
cmove rdx, rax
cmove rax, r12
mov qword [rsp + 0x718], rax
mov qword [rsp + 0x720], rdx
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x728], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x730], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x738], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x740], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x748], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x750], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x758], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x760], rax
mov byte [rsp + 0x778], 0
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
mov al, 1
mov qword [rsp + 0x108], rcx
cmp rcx, r14
je 0x14001e021
lea rdx, [0x140280e5a]
mov r8d, 0xa
mov rsi, qword [rsp + 0xf0]
nop
push rsi
pop rcx
call fcn.14002dc30
or rax, rax
cmove rdx, rax
mov qword [rsp + 0x68], rdx
cmove rax, r12
mov qword [rsp + 0xa8], rax
lea rdx, [0x140280e64]
mov r8d, 0xf
nop
push rsi
pop rcx
call fcn.14002dc30
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x60], rdx
cmove rax, r12
mov qword [rsp + 0x58], rax
lea rdx, [0x140280e73]
mov r8d, 0xd
nop
push rsi
pop rcx
call fcn.14002dc30
or rax, rax
cmove rdx, rax
mov qword [rsp + 0x88], rdx
cmove rax, r12
mov qword [rsp + 0x48], rax
lea rdx, [0x140280e80]
mov r8d, 0xf
push rsi
nop
pop rcx
call fcn.14002dc30
or rax, rax
cmove rdx, rax
mov qword [rsp + 0x30], rdx
cmove rax, r12
mov qword [rsp + 0x20], rax
lea rdx, str..debug_abbrev.debug_addr.debug_aranges.debug_cu_index.debug_info.debug_line.debug_line_str.debug_loc.debug_loclists.debug_ranges.debug_rnglists.debug_str.debug_str_offsets.debug_tu_index.debug_types.debug_abbrev.dwo.debug_info.dwo.debug_line.dwo.debug_loc.dwo.debug_loclists.dwo.debug_rnglists.dwo.debug_str.dwo.debug_str_offsets.dwo.debug_types.dwoNulError
mov r8d, 0xd
push rsi
pop rcx
nop
call fcn.14002dc30
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x38], rdx
cmove rax, r12
mov qword [rsp + 0x50], rax
lea rdx, [0x140280e0d]
mov r8d, 0xb
mov rcx, rsi
call fcn.14002dc30
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x90], rdx
cmove rax, r12
mov qword [rsp + 0x28], rax
lea rdx, [0x140280e18]
mov r8d, 0xe
push rsi
nop
pop rcx
call fcn.14002dc30
test rax, rax
cmove rdx, rax
mov qword [rsp + 0xa0], rdx
cmove rax, r12
mov qword [rsp + 0x98], rax
lea rdx, [0x140280e35]
mov r8d, 0xb
push rsi
pop rcx
nop
call fcn.14002dc30
test rax, rax
cmove rdx, rax
mov qword [rsp + 0xc0], rdx
cmove rax, r12
mov qword [rsp + 0xb8], rax
lea rdx, [0x140280e40]
mov r8d, 0xb
nop
push rsi
pop rcx
call fcn.14002dc30
mov r12, rax
or rax, rax
cmove rdx, rax
mov qword [rsp + 0xb0], rdx
lea rax, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04library_std_src_threadlocal.rs
cmove r12, rax
lea rdx, [0x140280e4b]
mov r8d, 0xf
mov rcx, rsi
call fcn.14002dc30
push rax
pop rbp
nop
push rdx
nop
pop rdi
or rax, rax
cmove rdi, rax
lea rax, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04library_std_src_threadlocal.rs
cmove rbp, rax
lea rdx, [0x140280e8f]
mov r8d, 0xa
mov rcx, rsi
call fcn.14002dc30
mov r13, rax
nop
push rdx
pop rbx
or rax, rax
cmove rbx, rax
lea rax, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04library_std_src_threadlocal.rs
cmove r13, rax
lea rdx, [0x140280e99]
mov r8d, 0x12
nop
push rsi
pop rcx
call fcn.14002dc30
mov r15, rax
mov r14, rdx
lea rdx, [0x140280eba]
mov r8d, 0xc
nop
push rsi
pop rcx
call fcn.14002dc30
movups xmmword [rsp + 0x360], xmm6
mov qword [rsp + 0x280], 1
mov qword [rsp + 0x288], 1
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x290], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x298], rcx
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x2a0], rcx
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x2a8], rcx
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0x2b0], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x2b8], rcx
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x2c0], rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0x2c8], rcx
mov qword [rsp + 0x2d0], r12
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04library_std_src_threadlocal.rs
mov r8, qword [rsp + 0xb0]
mov qword [rsp + 0x2d8], r8
mov qword [rsp + 0x2e0], rbp
mov qword [rsp + 0x2e8], rdi
mov qword [rsp + 0x2f0], r13
mov qword [rsp + 0x2f8], rbx
test r15, r15
cmove r14, r15
cmove r15, rcx
mov qword [rsp + 0x300], r15
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x308], r14
cmove rax, rcx
mov qword [rsp + 0x310], rax
mov qword [rsp + 0x318], rdx
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x328], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x338], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x348], rax
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x350], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x358], rax
mov byte [rsp + 0x370], 0
movzx eax, byte [0x14028a128]
mov edx, 0xf8
sub ecx, ecx
call fcn.1400370d0
or rax, rax
je 0x14002134f
mov rsi, rax
lea rdx, [rsp + 0x280]
mov r8d, 0xf8
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x768], rsi
cmp qword [rsp + 0x108], 0
je 0x14001e015
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax + 8]
mov edx, 8
call fcn.140002f40
sub eax, eax
movabs r14, 0x8000000000000000
mov dword [rsp + 0xb8], eax
lea rcx, [rsp + 0x290]
lea rdx, [rsp + 0x698]
mov r8d, 0xe8
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x280], 1
mov qword [rsp + 0x288], 1
movzx eax, byte [0x14028a128]
mov edx, 0xf8
sub ecx, ecx
call fcn.1400370d0
or rax, rax
je 0x140021319
push rax
pop rsi
nop
lea rdx, [rsp + 0x280]
mov r8d, 0xf8
push rax
pop rcx
nop
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x118], rsi
mov rax, rsi
add rax, 0x10
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 8
mov qword [rsp + 0x130], 0
mov rax, qword [rsi + 0x30]
mov r12, qword [rsi + 0x38]
mov qword [rsp + 0x1e0], rax
mov qword [rsp + 0x1e8], r12
mov qword [rsp + 0x1f0], 0
test r12, r12
je 0x14001e90b
mov r15d, 8
sub edx, edx
lea rax, [rsp + 0x280]
mov qword [rsp + 0xb0], rax
lea rsi, [rsp + 0x1e0]
lea rdi, [rsp + 0x120]
xor ebx, ebx
jmp 0x14001e160
mov r14, rdx
mov rax, r14
shl rax, 4
mov qword [r15 + rax], r12
mov qword [r15 + rax + 8], r13
lea rdx, [r14 + 1]
mov qword [rsp + 0x130], rdx
mov r12, qword [rsp + 0x1e8]
test r12, r12
je 0x14001e1e3
mov r14, rdx
lea rcx, [rsp + 0x280]
mov rdx, rsi
mov r8, rbx
call fcn.14002de10
cmp byte [rsp + 0x2a9], 3
je 0x14001e1d9
sub r12, qword [rsp + 0x1e8]
mov r13, qword [rsp + 0x290]
mov rbx, r12
add rbx, qword [rsp + 0x1f0]
mov r12, qword [rsp + 0x2a0]
mov qword [rsp + 0x1f0], rbx
mov rdx, r14
cmp r14, qword [rsp + 0x120]
jne 0x14001e130
push rdi
pop rcx
nop
call fcn.14000aa60
mov r15, qword [rsp + 0x128]
mov r14, qword [rsp + 0x130]
jmp 0x14001e133
mov r13, qword [rsp + 0x40]
jmp 0x14001e9f9
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x20], rax
cmp rdx, 0x15
jae 0x14001e21f
cmp rdx, 1
movabs r14, 0x8000000000000000
jbe 0x14001e90b
mov r8d, 1
mov rcx, qword [rsp + 0x20]
call fcn.14002e0d0
jmp 0x14001e90b
mov qword [rsp + 0x38], rdx
lea rdx, [rdx*8]
movabs rax, 0x8000000000000000
add rax, 0xfffffffffffffff0
and rdx, rax
movzx eax, byte [0x14028a128]
sub ecx, ecx
call fcn.1400370d0
test rax, rax
je 0x140021393
mov r12, rax
movzx eax, byte [0x14028a128]
mov edx, 0x100
sub ecx, ecx
call fcn.1400370d0
or rax, rax
mov qword [rsp + 0x30], r12
je 0x1400213a1
push rax
nop
pop rbx
mov eax, 1
sub rax, r14
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x20]
lea rcx, [rax + 0x20]
mov qword [rsp + 0xc0], rcx
lea rcx, [rax + 0x10]
mov qword [rsp + 0xf8], rcx
add rax, 0xfffffffffffffff0
mov qword [rsp + 0x90], rax
mov eax, 0x10
mov qword [rsp + 0xa0], rax
xor r14d, r14d
lea rax, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov qword [rsp + 0xc8], rax
xor r13d, r13d
mov rdx, qword [rsp + 0x38]
jmp 0x14001e2f4
mov r13d, 1
mov r14, qword [rsp + 0x28]
cmp r14, rdx
jae 0x14001e8e7
nop
push rdx
pop rdi
sub rdi, r14
mov rax, r14
shl rax, 4
mov rcx, qword [rsp + 0x20]
add rcx, rax
cmp rdi, 2
jae 0x14001e380
mov r8, rdi
lea r9, [r8 + r14]
mov rsi, r9
sub rsi, r14
jb 0x140021271
cmp r9, rdx
ja 0x140021271
jae 0x14001e440
cmp r8, 0xa
jae 0x14001e440
lea rsi, [r14 + 0xa]
cmp rsi, rdx
cmovae rsi, rdx
mov qword [rsp + 0x28], rsi
sub rsi, r14
jb 0x140021293
cmp r8, 1
adc r8, 0
nop
push rsi
pop rdx
call fcn.14002e0d0
mov rdx, qword [rsp + 0x38]
cmp r13, qword [rsp + 0xa0]
je 0x14001e44f
jmp 0x14001e4a7
mov r9, qword [rcx + 0x10]
cmp r9, qword [rcx]
jae 0x14001e7b0
mov r8d, 2
cmp rdi, 2
je 0x14001e3e7
mov rdx, qword [rsp + 0x98]
lea r10, [rdx + r14]
mov rdx, qword [rsp + 0xc0]
lea r11, [rdx + rax]
nop word cs:[rax + rax]
mov rsi, r9
mov r9, qword [r11]
cmp r9, rsi
jae 0x14001e3e2
lea rsi, [r10 + r8]
inc rsi
inc r8
add r11, 0x10
cmp rsi, 2
jne 0x14001e3c0
mov r8, rdi
mov rdx, qword [rsp + 0x38]
mov r9, r8
add r9, r14
jb 0x1400212f0
cmp r9, rdx
ja 0x1400212d7
cmp r8, 2
jb 0x14001e316
mov rbp, r9
mov rdx, r8
shr rdx, 1
mov r9, r8
shl r9, 4
add r9, rcx
mov r10, rdx
shl r10, 4
sub r9, r10
cmp rdx, 1
jne 0x14001e825
xor r10d, r10d
jmp 0x14001e89c
mov qword [rsp + 0x28], r9
cmp r13, qword [rsp + 0xa0]
jne 0x14001e4a7
mov rdx, r13
shl rdx, 5
movzx eax, byte [0x14028a128]
sub ecx, ecx
call fcn.1400370d0
test rax, rax
je 0x1400212a4
nop
push rax
pop rdi
lea rax, [r13*2]
mov qword [rsp + 0xa0], rax
mov r8, r13
shl r8, 4
mov rcx, rdi
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov edx, 8
push rbx
nop
pop rcx
call fcn.140002f40
push rdi
nop
pop rbx
mov rdx, qword [rsp + 0x38]
mov rax, r13
shl rax, 4
mov qword [rbx + rax], rsi
mov qword [rbx + rax + 8], r14
inc r13
cmp r13, 2
jb 0x14001e2e6
mov qword [rsp + 0x50], rbx
jmp 0x14001e53d
push rdi
nop
pop rbx
mov r12, qword [rsp + 0x30]
mov rdx, r12
mov r15, qword [rsp + 0x48]
sub rsi, rdx
push rbx
pop rcx
nop
mov r8, rsi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x88]
add rax, r14
mov qword [r13], rax
mov rax, qword [rsp + 0x58]
mov qword [r13 + 8], rax
lea rdx, [r15 + 0x10]
mov rax, qword [rsp + 0xa8]
not rax
mov r8, qword [rsp + 0x60]
add r8, rax
shl r8, 4
mov rcx, r15
call sub.msvcrt.dll_memmove
mov r13, qword [rsp + 0x68]
cmp r13, 1
mov rbx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x38]
jbe 0x14001e2e0
mov rdi, r13
lea r11, [r13 - 1]
mov rcx, r11
shl rcx, 4
mov rax, qword [rbx + rcx]
mov rcx, qword [rbx + rcx + 8]
add rcx, rax
cmp rcx, rdx
je 0x14001e5b0
mov r10, rdi
shl r10, 4
mov r8, qword [r10 + rbx - 0x20]
cmp r8, rax
jbe 0x14001e5b0
cmp rdi, 2
jbe 0x14001e810
lea rsi, [rdi - 3]
push rsi
pop rcx
nop
shl rcx, 4
mov rcx, qword [rbx + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x14001e5c5
cmp rdi, 3
jbe 0x14001e8d4
add r8, rcx
cmp qword [r10 + rbx - 0x40], r8
jbe 0x14001e5c5
jmp 0x14001e8df
cmp rdi, 3
jb 0x14001e5ca
lea rsi, [rdi - 3]
push rsi
nop
pop rcx
shl rcx, 4
mov rcx, qword [rbx + rcx]
cmp rcx, rax
jb 0x14001e5ce
lea rsi, [rdi - 2]
cmp rdi, rsi
jbe 0x14002116c
mov qword [rsp + 0x68], r11
lea r13, [rsi + 1]
cmp rdi, r13
jbe 0x140021154
push rsi
nop
pop rax
shl rax, 4
mov rcx, qword [rbx + rax + 8]
shl r13, 4
mov r8, qword [rbx + r13]
mov rbp, qword [rbx + r13 + 8]
add rbp, r8
mov r15, rbp
sub r15, rcx
jb 0x1400211b3
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0xa8], rsi
cmp rbp, rdx
ja 0x1400211cc
mov qword [rsp + 0x88], r8
lea rdx, [rbx + rax]
mov qword [rsp + 0x48], rdx
mov r14, qword [rbx + rax]
add r13, rbx
mov qword [rsp + 0x58], rcx
push rcx
nop
pop rbx
shl rbx, 4
add rbx, qword [rsp + 0x20]
mov rsi, r14
shl rsi, 4
lea rdi, [rbx + rsi]
shl rbp, 4
mov r12, r15
sub r12, r14
cmp r12, r14
jae 0x14001e710
mov rsi, r12
shl rsi, 4
mov r15, qword [rsp + 0x30]
mov rcx, r15
mov rdx, rdi
mov r8, rsi
call sub.msvcrt.dll_memcpy
add rsi, r15
test r14, r14
jle 0x14001e4cb
test r12, r12
mov r15, qword [rsp + 0x48]
jle 0x14001e798
add rbp, qword [rsp + 0x90]
mov r12, qword [rsp + 0x30]
nop
push rdi
pop rax
nop
mov rcx, rsi
mov rdx, qword [rsi - 0x10]
mov r8, qword [rdi - 0x10]
cmp rdx, r8
mov edi, 0
sbb rdi, rdi
cmp rdx, r8
mov esi, 0
adc rsi, 0xffffffffffffffff
shl rdi, 4
add rdi, rax
shl rsi, 4
add rsi, rcx
cmp rdx, r8
nop
push rsi
pop rax
cmovb rax, rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp], xmm0
cmp rdi, rbx
jbe 0x14001e702
add rbp, 0xfffffffffffffff0
cmp rsi, r12
ja 0x14001e6b0
mov rbx, rdi
mov rdx, r12
jmp 0x14001e4db
mov r12, qword [rsp + 0x30]
mov rcx, r12
push rbx
nop
pop rdx
mov r8, rsi
call sub.msvcrt.dll_memcpy
add rsi, r12
or r14, r14
jle 0x14001e4d3
cmp r15, r14
jle 0x14001e4d3
add rbp, qword [rsp + 0x20]
mov rdx, r12
mov r15, qword [rsp + 0x48]
nop word cs:[rax + rax]
mov r8, rdx
mov rcx, qword [rdi]
xor edx, edx
sub eax, eax
cmp rcx, qword [r8]
setae dl
setb cl
mov r9, r8
cmovb r9, rdi
movups xmm0, xmmword [r9]
movups xmmword [rbx], xmm0
add rbx, 0x10
shl rdx, 4
add rdx, r8
cmp rdx, rsi
jae 0x14001e4db
mov al, cl
shl rax, 4
add rdi, rax
cmp rdi, rbp
jb 0x14001e750
jmp 0x14001e4db
push rdi
nop
pop rbx
mov r12, qword [rsp + 0x30]
mov rdx, r12
jmp 0x14001e4db
mov r8d, 2
cmp rdi, 2
je 0x14001e312
mov rdx, qword [rsp + 0x98]
lea r10, [rdx + r14]
add rax, qword [rsp + 0xc0]
nop word cs:[rax + rax]
mov r11, r9
mov r9, qword [rax]
cmp r9, r11
jb 0x14001e81b
lea r11, [r10 + r8]
inc r11
inc r8
add rax, 0x10
cmp r11, 2
jne 0x14001e7e0
mov r8, rdi
mov rdx, qword [rsp + 0x38]
lea r9, [rdi + r14]
jmp 0x14001e316
mov r13d, 2
jmp 0x14001e2e6
mov rdx, qword [rsp + 0x38]
jmp 0x14001e312
movabs r10, 0x8000000000000000
lea r11, [r10 - 2]
and r11, rdx
add rax, qword [rsp + 0xf8]
push rbp
nop
pop rsi
shl rsi, 4
add rsi, qword [rsp + 0x90]
xor r10d, r10d
movabs r15, 0xffffffffffffffe
nop word [rax + rax]
movups xmm0, xmmword [rax - 0x10]
movups xmm1, xmmword [rsi]
movups xmmword [rax - 0x10], xmm1
movups xmmword [rsi], xmm0
mov rdi, r10
xor rdi, r15
add rdi, rdx
shl rdi, 4
movups xmm0, xmmword [rax]
movups xmm1, xmmword [r9 + rdi]
movups xmmword [rax], xmm1
movups xmmword [r9 + rdi], xmm0
add r10, 2
add rax, 0x20
add rsi, 0xffffffffffffffe0
cmp r11, r10
jne 0x14001e860
test r8b, 2
je 0x14001e8c7
mov rax, r10
not rax
add rdx, rax
shl r10, 4
shl rdx, 4
movups xmm0, xmmword [rcx + r10]
movups xmm1, xmmword [r9 + rdx]
movups xmmword [rcx + r10], xmm1
movups xmmword [r9 + rdx], xmm0
mov rdx, qword [rsp + 0x38]
mov r9, rbp
jmp 0x14001e316
mov r13d, 3
jmp 0x14001e2e6
mov r13, rdi
jmp 0x14001e2e6
mov edx, 8
push rbx
nop
pop rcx
call fcn.140002f40
mov edx, 8
mov rcx, r12
call fcn.140002f40
movabs r14, 0x8000000000000000
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 8
mov qword [rsp + 0x80], 0
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xd8], 8
mov qword [rsp + 0xe0], 0
mov rax, qword [rsp + 0x110]
movups xmm0, xmmword [rax + 0x30]
movups xmmword [rsp + 0x200], xmm0
mov qword [rsp + 0x210], 0
lea rcx, [rsp + 0x280]
lea rdx, [rsp + 0x200]
call fcn.14002e1a0
mov rax, qword [rsp + 0x280]
cmp rax, 3
jne 0x14001ea6a
lea rbx, [rsp + 0x298]
lea rsi, [rsp + 0x500]
lea rdi, [rsp + 0x198]
lea rcx, [rsp + 0x280]
mov qword [rsp + 0xc0], rcx
lea r13, [rsp + 0x180]
lea r12, [rsp + 0x200]
jmp 0x14001eb52
lea rax, [0x140280608]
mov qword [rsp + 0x280], rax
lea rdx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
jmp 0x140021182
lea rax, [0x140280608]
mov qword [rsp + 0x280], rax
lea rdx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rcx, qword [rsp + 0xb0]
mov qword [rcx + 8], 1
lea rax, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04library_std_src_threadlocal.rs
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
mov r13, qword [rsp + 0x40]
call fcn.140003f70
jmp 0x1400213ee
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
nop
push rbp
pop rdx
mov r13, qword [rsp + 0x40]
call fcn.140005450
jmp 0x1400213ee
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
push rbp
nop
pop rcx
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x30]
call fcn.140004a20
jmp 0x1400213ee
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov edx, 0x2c
mov r13, qword [rsp + 0x40]
call fcn.140004dc0
jmp 0x1400213ee
lea rax, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov qword [rsp + 0xc8], rax
jmp 0x1400212f5
lea rcx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov r13, qword [rsp + 0x40]
call fcn.140005f30
jmp 0x1400213ee
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rcx, r9
mov r13, qword [rsp + 0x40]
call fcn.140004a20
jmp 0x1400213ee
mov qword [rsp + 0x28], r9
mov rcx, r14
mov rdx, qword [rsp + 0x28]
mov r8, qword [rsp + 0xc8]
mov r13, qword [rsp + 0x40]
mov r12, qword [rsp + 0x30]
call fcn.140005450
jmp 0x1400213ee
mov ecx, 8
mov edx, 0xf8
call fcn.140003420
jmp 0x1400213ee
mov ecx, 8
mov edx, 0xf8
call fcn.140003420
jmp 0x1400213ee
lea rcx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
call fcn.140005f30
jmp 0x1400213ee
lea rcx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
call fcn.140005f30
jmp 0x1400213ee