Function at 0x1400500b0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x7d8
movaps xmmword [rsp + 0x7c0], xmm6
mov qword [rsp + 0xf8], r9
mov qword [rsp + 0xd8], r8
mov rsi, rdx
mov qword [rsp + 0x210], rcx
lea rdx, [0x1400b70ea]
mov r8d, 0xa
mov rcx, rsi
mov qword [rsp + 0x218], rsi
call fcn.140056730
mov qword [rsp + 0x28], rdx
test rax, rax
lea rcx, [0x1400b5f08]
mov rdx, rax
cmove rdx, rcx
mov qword [rsp + 0x70], rdx
mov rcx, qword [rsp + 0x28]
cmove rcx, rax
mov qword [rsp + 0x28], rcx
lea rdx, [0x1400b70f4]
mov r8d, 0xf
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x40], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0x88], rdx
mov rcx, qword [rsp + 0x40]
cmove rcx, rax
mov qword [rsp + 0x40], rcx
lea rdx, [0x1400b7103]
mov r8d, 0xd
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x80], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0x50], rdx
mov rcx, qword [rsp + 0x80]
cmove rcx, rax
mov qword [rsp + 0x80], rcx
lea rdx, [0x1400b7110]
mov r8d, 0xf
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x68], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0x78], rdx
mov rcx, qword [rsp + 0x68]
cmove rcx, rax
mov qword [rsp + 0x68], rcx
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
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x60], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0x148], rdx
mov rcx, qword [rsp + 0x60]
cmove rcx, rax
mov qword [rsp + 0x60], rcx
lea rdx, [0x1400b709d]
mov r8d, 0xb
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x58], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0xb8], rdx
mov rcx, qword [rsp + 0x58]
cmove rcx, rax
mov qword [rsp + 0x58], rcx
lea rdx, [0x1400b70a8]
mov r8d, 0xe
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x38], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0xb0], rdx
mov rcx, qword [rsp + 0x38]
cmove rcx, rax
mov qword [rsp + 0x38], rcx
lea rdx, [0x1400b70c5]
mov r8d, 0xb
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x30], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0xd0], rdx
mov rcx, qword [rsp + 0x30]
cmove rcx, rax
mov qword [rsp + 0x30], rcx
lea rdx, [0x1400b70d0]
mov r8d, 0xb
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x48], rdx
test rax, rax
mov r12, rax
lea rcx, [0x1400b5f08]
cmove r12, rcx
mov rcx, qword [rsp + 0x48]
cmove rcx, rax
mov qword [rsp + 0x48], rcx
lea rdx, [0x1400b70db]
mov r8d, 0xf
mov rcx, rsi
call fcn.140056730
mov rdi, rdx
test rax, rax
mov rbp, rax
lea rcx, [0x1400b5f08]
cmove rbp, rcx
cmove rdi, rax
lea rdx, [0x1400b711f]
mov r8d, 0xa
mov rcx, rsi
call fcn.140056730
mov rbx, rdx
test rax, rax
mov r13, rax
lea rcx, [0x1400b5f08]
cmove r13, rcx
cmove rbx, rax
lea rdx, [0x1400b7129]
mov r8d, 0x12
mov rcx, rsi
call fcn.140056730
mov r15, rax
mov r14, rdx
lea rdx, [0x1400b714a]
mov r8d, 0xc
mov rcx, rsi
call fcn.140056730
xorps xmm0, xmm0
movups xmmword [rsp + 0x5e8], xmm0
mov rcx, qword [rsp + 0x148]
mov qword [rsp + 0x518], rcx
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x520], rcx
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x528], rcx
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x530], rcx
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x538], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x540], rcx
mov rcx, qword [rsp + 0xd0]
mov qword [rsp + 0x548], rcx
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x550], rcx
mov qword [rsp + 0x558], r12
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x560], rcx
mov qword [rsp + 0x568], rbp
mov qword [rsp + 0x570], rdi
mov qword [rsp + 0x578], r13
test r15, r15
cmove r14, r15
lea rcx, [0x1400b5f08]
cmove r15, rcx
mov qword [rsp + 0x580], rbx
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x588], r15
cmove rax, rcx
mov qword [rsp + 0x590], r14
mov qword [rsp + 0x598], rax
mov qword [rsp + 0x5a0], rdx
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x5a8], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x5b0], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x5b8], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x5c0], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x5c8], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x5d0], rax
movabs rcx, 0x8000000000000000
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x5d8], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x5e0], rax
mov byte [rsp + 0x5f8], 0
mov rax, qword [rsp + 0xd8]
mov rdx, qword [rax]
mov al, 1
mov dword [rsp + 0xb8], eax
mov qword [rsp + 0x148], rdx
cmp rdx, rcx
je 0x140050a32
lea rdx, [0x1400b70ea]
mov r8d, 0xa
mov rsi, qword [rsp + 0xd8]
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x28], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0x70], rdx
mov rcx, qword [rsp + 0x28]
cmove rcx, rax
mov qword [rsp + 0x28], rcx
lea rdx, [0x1400b70f4]
mov r8d, 0xf
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x40], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0x88], rdx
mov rcx, qword [rsp + 0x40]
cmove rcx, rax
mov qword [rsp + 0x40], rcx
lea rdx, [0x1400b7103]
mov r8d, 0xd
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x80], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0x50], rdx
mov rcx, qword [rsp + 0x80]
cmove rcx, rax
mov qword [rsp + 0x80], rcx
lea rdx, [0x1400b7110]
mov r8d, 0xf
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x68], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0x78], rdx
mov rcx, qword [rsp + 0x68]
cmove rcx, rax
mov qword [rsp + 0x68], rcx
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
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x60], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0xb8], rdx
mov rcx, qword [rsp + 0x60]
cmove rcx, rax
mov qword [rsp + 0x60], rcx
lea rdx, [0x1400b709d]
mov r8d, 0xb
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x58], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0xb0], rdx
mov rcx, qword [rsp + 0x58]
cmove rcx, rax
mov qword [rsp + 0x58], rcx
lea rdx, [0x1400b70a8]
mov r8d, 0xe
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x38], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0xd0], rdx
mov rcx, qword [rsp + 0x38]
cmove rcx, rax
mov qword [rsp + 0x38], rcx
lea rdx, [0x1400b70c5]
mov r8d, 0xb
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x30], rdx
test rax, rax
mov rdx, rax
lea rcx, [0x1400b5f08]
cmove rdx, rcx
mov qword [rsp + 0x110], rdx
mov rcx, qword [rsp + 0x30]
cmove rcx, rax
mov qword [rsp + 0x30], rcx
lea rdx, [0x1400b70d0]
mov r8d, 0xb
mov rcx, rsi
call fcn.140056730
mov qword [rsp + 0x48], rdx
test rax, rax
mov r12, rax
lea rcx, [0x1400b5f08]
cmove r12, rcx
mov rcx, qword [rsp + 0x48]
cmove rcx, rax
mov qword [rsp + 0x48], rcx
lea rdx, [0x1400b70db]
mov r8d, 0xf
mov rcx, rsi
call fcn.140056730
mov rdi, rdx
test rax, rax
mov rbp, rax
lea rcx, [0x1400b5f08]
cmove rbp, rcx
cmove rdi, rax
lea rdx, [0x1400b711f]
mov r8d, 0xa
mov rcx, rsi
call fcn.140056730
mov rbx, rdx
test rax, rax
mov r13, rax
lea rcx, [0x1400b5f08]
cmove r13, rcx
cmove rbx, rax
lea rdx, [0x1400b7129]
mov r8d, 0x12
mov rcx, rsi
call fcn.140056730
mov r15, rax
mov r14, rdx
lea rdx, [0x1400b714a]
mov r8d, 0xc
mov rcx, rsi
call fcn.140056730
xorps xmm0, xmm0
movups xmmword [rsp + 0x308], xmm0
mov qword [rsp + 0x228], 1
mov qword [rsp + 0x230], 1
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0x238], rcx
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x240], rcx
mov rcx, qword [rsp + 0xb0]
mov qword [rsp + 0x248], rcx
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x250], rcx
mov rcx, qword [rsp + 0xd0]
mov qword [rsp + 0x258], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x260], rcx
mov rcx, qword [rsp + 0x110]
mov qword [rsp + 0x268], rcx
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x270], rcx
mov qword [rsp + 0x278], r12
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x280], rcx
mov qword [rsp + 0x288], rbp
mov qword [rsp + 0x290], rdi
mov qword [rsp + 0x298], r13
test r15, r15
cmove r14, r15
mov qword [rsp + 0x2a0], rbx
lea rcx, [0x1400b5f08]
cmove r15, rcx
mov qword [rsp + 0x2a8], r15
mov qword [rsp + 0x2b0], r14
test rax, rax
cmove rdx, rax
cmove rax, rcx
mov qword [rsp + 0x2b8], rax
mov qword [rsp + 0x2c0], rdx
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x2c8], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x2d0], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x2d8], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x2e0], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x2e8], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x2f0], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x2f8], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x300], rax
mov byte [rsp + 0x318], 0
mov rax, qword [0x1400d7de8]
movzx eax, byte [rax]
mov ecx, 0xf8
mov edx, 8
call fcn.140001ab0
test rax, rax
je 0x14005420a
mov rsi, rax
lea rdx, [rsp + 0x228]
mov r8d, 0xf8
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x5e8]
test rax, rax
je 0x1400509fc
lock dec qword [rax]
jne 0x1400509fc
lea rcx, [rsp + 0x5e8]
call fcn.14000d120
mov qword [rsp + 0x5e8], rsi
mov rax, qword [rsp + 0xd8]
mov rdx, qword [rax]
test rdx, rdx
je 0x140050a27
mov rcx, qword [rax + 8]
shl rdx, 4
mov r8d, 8
call fcn.140001ac0
mov dword [rsp + 0xb8], 0
lea rcx, [rsp + 0x238]
lea rdx, [rsp + 0x518]
mov r8d, 0xe8
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x228], 1
mov qword [rsp + 0x230], 1
mov rax, qword [0x1400d7de8]
movzx eax, byte [rax]
mov ecx, 0xf8
mov edx, 8
call fcn.140001ab0
test rax, rax
je 0x1400541d4
mov rsi, rax
lea rdx, [rsp + 0x228]
mov r8d, 0xf8
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x128], rsi
mov rax, rsi
add rax, 0x10
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x130], 0
mov qword [rsp + 0x138], 8
mov qword [rsp + 0x140], 0
mov rax, qword [rsi + 0x30]
mov r12, qword [rsi + 0x38]
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], r12
mov qword [rsp + 0x200], 0
test r12, r12
je 0x140051337
mov r15d, 8
xor edx, edx
lea rax, [rsp + 0x228]
mov qword [rsp + 0x110], rax
lea rsi, [rsp + 0x1f0]
lea rdi, [rsp + 0x130]
xor ebx, ebx
jmp 0x140050b6c
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 + 0x140], rdx
mov r12, qword [rsp + 0x1f8]
test r12, r12
je 0x140050be9
mov r14, rdx
lea rcx, [rsp + 0x228]
mov rdx, rsi
mov r8, rbx
call fcn.140016c70
cmp byte [rsp + 0x251], 3
je 0x140051440
sub r12, qword [rsp + 0x1f8]
mov r13, qword [rsp + 0x238]
mov rbx, r12
add rbx, qword [rsp + 0x200]
mov r12, qword [rsp + 0x248]
mov qword [rsp + 0x200], rbx
mov rdx, r14
cmp r14, qword [rsp + 0x130]
jne 0x140050b40
mov rcx, rdi
call fcn.14000dba0
mov r15, qword [rsp + 0x138]
mov r14, qword [rsp + 0x140]
jmp 0x140050b43
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x30], rax
cmp rdx, 0x15
jae 0x140050c1b
cmp rdx, 1
jbe 0x140051337
mov r8d, 1
mov rcx, qword [rsp + 0x30]
call fcn.140005a90
jmp 0x140051337
mov qword [rsp + 0x48], rdx
lea rcx, [rdx*8]
movabs rax, 0x8000000000000000
add rax, 0xfffffffffffffff0
and rcx, rax
mov rsi, qword [0x1400d7de8]
movzx eax, byte [rsi]
mov edx, 8
mov qword [rsp + 0x108], rcx
call fcn.140001ab0
test rax, rax
je 0x14005424e
mov r13, rax
movzx eax, byte [rsi]
mov ecx, 0x100
mov edx, 8
call fcn.140001ab0
test rax, rax
mov qword [rsp + 0x38], r13
je 0x14005425c
mov r15, rax
mov eax, 1
sub rax, r14
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x30]
lea rcx, [rax + 0x20]
mov qword [rsp + 0xd0], rcx
lea rcx, [rax + 0x10]
mov qword [rsp + 0x120], rcx
add rax, 0xfffffffffffffff0
mov qword [rsp + 0x88], rax
mov eax, 0x10
mov qword [rsp + 0x78], rax
xor esi, esi
lea rax, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov qword [rsp + 0x100], rax
xor r12d, r12d
mov rdx, qword [rsp + 0x48]
jmp 0x140050d04
mov r12d, 1
mov rsi, qword [rsp + 0x50]
cmp rsi, rdx
jae 0x14005130a
mov rbx, rdx
sub rbx, rsi
mov rax, rsi
shl rax, 4
mov rcx, qword [rsp + 0x30]
add rcx, rax
cmp rbx, 2
jae 0x140050da0
mov r8, rbx
lea r9, [r8 + rsi]
mov rax, qword [0x1400d7de8]
mov rdi, r9
sub rdi, rsi
jb 0x140054140
cmp r9, rdx
ja 0x140054140
jae 0x140050e60
cmp r8, 0xa
jae 0x140050e60
lea rdi, [rsi + 0xa]
cmp rdi, rdx
cmovae rdi, rdx
mov qword [rsp + 0x50], rdi
sub rdi, rsi
jb 0x14005415d
cmp r8, 1
adc r8, 0
mov rdx, rdi
call fcn.140005a90
mov rax, qword [0x1400d7de8]
mov rdx, qword [rsp + 0x48]
cmp r12, qword [rsp + 0x78]
je 0x140050e6c
jmp 0x140050ec3
mov r9, qword [rcx + 0x10]
cmp r9, qword [rcx]
jae 0x1400511c0
mov r8d, 2
cmp rbx, 2
je 0x140050e07
mov rdx, qword [rsp + 0xb0]
lea r10, [rdx + rsi]
mov rdx, qword [rsp + 0xd0]
lea r11, [rdx + rax]
nop word cs:[rax + rax]
mov rdi, r9
mov r9, qword [r11]
cmp r9, rdi
jae 0x140050e02
lea rdi, [r10 + r8]
inc rdi
inc r8
add r11, 0x10
cmp rdi, 2
jne 0x140050de0
mov r8, rbx
mov rdx, qword [rsp + 0x48]
mov r9, r8
add r9, rsi
jb 0x1400541b0
cmp r9, rdx
ja 0x14005419c
cmp r8, 2
jb 0x140050d2a
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 0x140051231
xor r10d, r10d
jmp 0x1400512ac
mov qword [rsp + 0x50], r9
cmp r12, qword [rsp + 0x78]
jne 0x140050ec3
lea rcx, [r12 + r12]
mov qword [rsp + 0x78], rcx
mov rcx, r12
shl rcx, 5
movzx eax, byte [rax]
mov edx, 8
call fcn.140001ab0
test rax, rax
je 0x14005416e
mov rbx, rax
mov r14, r12
shl r14, 4
mov rcx, rax
mov rdx, r15
mov r8, r14
call sub.msvcrt.dll_memcpy
mov r8d, 8
mov rcx, r15
mov rdx, r14
call fcn.140001ac0
mov r15, rbx
mov rdx, qword [rsp + 0x48]
mov rax, r12
shl rax, 4
mov qword [r15 + rax], rdi
mov qword [r15 + rax + 8], rsi
inc r12
cmp r12, 2
jb 0x140050cf6
mov qword [rsp + 0x70], r15
jmp 0x140050f53
mov r15, rbx
mov r13, qword [rsp + 0x38]
mov rdx, r13
mov r12, qword [rsp + 0x28]
sub rdi, rdx
mov rcx, r15
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x60]
add rax, rsi
mov qword [rbp], rax
mov rax, qword [rsp + 0x68]
mov qword [rbp + 8], rax
mov rcx, qword [rsp + 0x58]
lea rdx, [rcx + 0x10]
mov rax, qword [rsp + 0x40]
not rax
mov r8, qword [rsp + 0x80]
add r8, rax
shl r8, 4
call sub.msvcrt.dll_memmove
cmp r12, 1
mov r15, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x48]
jbe 0x140050cf0
mov rsi, r12
lea r11, [r12 - 1]
mov rcx, r11
shl rcx, 4
mov rax, qword [r15 + rcx]
mov rcx, qword [r15 + rcx + 8]
add rcx, rax
cmp rcx, rdx
je 0x140050fc0
mov r10, rsi
shl r10, 4
mov r8, qword [r10 + r15 - 0x20]
cmp r8, rax
jbe 0x140050fc0
cmp rsi, 2
jbe 0x14005121c
lea rdi, [rsi - 3]
mov rcx, rdi
shl rcx, 4
mov rcx, qword [r15 + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x140050fd5
cmp rsi, 3
jbe 0x1400512f7
add r8, rcx
cmp qword [r10 + r15 - 0x40], r8
jbe 0x140050fd5
jmp 0x140051302
cmp rsi, 3
jb 0x140050fda
lea rdi, [rsi - 3]
mov rcx, rdi
shl rcx, 4
mov rcx, qword [r15 + rcx]
cmp rcx, rax
jb 0x140050fde
lea rdi, [rsi - 2]
cmp rsi, rdi
jbe 0x14005404a
mov qword [rsp + 0x28], r11
lea rbp, [rdi + 1]
cmp rsi, rbp
jbe 0x140054032
mov rax, rdi
shl rax, 4
mov rcx, qword [r15 + rax + 8]
shl rbp, 4
mov r8, qword [r15 + rbp]
mov r14, qword [r15 + rbp + 8]
add r14, r8
mov r12, r14
sub r12, rcx
jb 0x14005408c
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x40], rdi
cmp r14, rdx
ja 0x1400540a0
mov qword [rsp + 0x60], r8
lea rdx, [r15 + rax]
mov qword [rsp + 0x58], rdx
mov rsi, qword [r15 + rax]
add rbp, r15
mov qword [rsp + 0x68], rcx
mov r15, rcx
shl r15, 4
add r15, qword [rsp + 0x30]
mov rdi, rsi
shl rdi, 4
lea rbx, [r15 + rdi]
shl r14, 4
mov r13, r12
sub r13, rsi
cmp r13, rsi
jae 0x140051120
mov rdi, r13
shl rdi, 4
mov r12, qword [rsp + 0x38]
mov rcx, r12
mov rdx, rbx
mov r8, rdi
call sub.msvcrt.dll_memcpy
add rdi, r12
test rsi, rsi
jle 0x140050ee7
test r13, r13
mov r12, qword [rsp + 0x28]
jle 0x1400511a9
add r14, qword [rsp + 0x88]
mov r13, qword [rsp + 0x38]
nop dword [rax]
mov rax, rbx
mov rcx, rdi
mov rdx, qword [rdi - 0x10]
mov r8, qword [rbx - 0x10]
cmp rdx, r8
mov ebx, 0
sbb rbx, rbx
cmp rdx, r8
mov edi, 0
adc rdi, 0xffffffffffffffff
shl rbx, 4
add rbx, rax
shl rdi, 4
add rdi, rcx
cmp rdx, r8
mov rax, rdi
cmovb rax, rbx
movups xmm0, xmmword [rax]
movups xmmword [r14], xmm0
cmp rbx, r15
jbe 0x140051112
add r14, 0xfffffffffffffff0
cmp rdi, r13
ja 0x1400510c0
mov r15, rbx
mov rdx, r13
jmp 0x140050ef7
mov r13, qword [rsp + 0x38]
mov rcx, r13
mov rdx, r15
mov r8, rdi
call sub.msvcrt.dll_memcpy
add rdi, r13
test rsi, rsi
jle 0x140050eef
cmp r12, rsi
jle 0x140050eef
add r14, qword [rsp + 0x30]
mov rdx, r13
mov r12, qword [rsp + 0x28]
nop word cs:[rax + rax]
mov r8, rdx
mov rcx, qword [rbx]
xor edx, edx
xor eax, eax
cmp rcx, qword [r8]
setae dl
setb cl
mov r9, r8
cmovb r9, rbx
movups xmm0, xmmword [r9]
movups xmmword [r15], xmm0
add r15, 0x10
shl rdx, 4
add rdx, r8
cmp rdx, rdi
jae 0x140050ef7
mov al, cl
shl rax, 4
add rbx, rax
cmp rbx, r14
jb 0x140051160
jmp 0x140050ef7
mov r15, rbx
mov r13, qword [rsp + 0x38]
mov rdx, r13
jmp 0x140050ef7
mov r8d, 2
cmp rbx, 2
je 0x140050d26
mov rdx, qword [rsp + 0xb0]
lea r10, [rdx + rsi]
add rax, qword [rsp + 0xd0]
nop word cs:[rax + rax]
mov r11, r9
mov r9, qword [rax]
cmp r9, r11
jb 0x140051227
lea r11, [r10 + r8]
inc r11
inc r8
add rax, 0x10
cmp r11, 2
jne 0x1400511f0
mov r8, rbx
mov rdx, qword [rsp + 0x48]
jmp 0x140050d26
mov r12d, 2
jmp 0x140050cf6
mov rdx, qword [rsp + 0x48]
jmp 0x140050d26
movabs r10, 0x8000000000000000
lea r11, [r10 - 2]
and r11, rdx
add rax, qword [rsp + 0x120]
mov rdi, rbp
shl rdi, 4
add rdi, qword [rsp + 0x88]
xor r10d, r10d
movabs r14, 0xffffffffffffffe
nop word cs:[rax + rax]
movups xmm0, xmmword [rax - 0x10]
movups xmm1, xmmword [rdi]
movups xmmword [rax - 0x10], xmm1
movups xmmword [rdi], xmm0
mov rbx, r10
xor rbx, r14
add rbx, rdx
shl rbx, 4
movups xmm0, xmmword [rax]
movups xmm1, xmmword [r9 + rbx]
movups xmmword [rax], xmm1
movups xmmword [r9 + rbx], xmm0
add r10, 2
add rax, 0x20
add rdi, 0xffffffffffffffe0
cmp r11, r10
jne 0x140051270
test r8b, 2
je 0x1400512d7
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 rax, qword [0x1400d7de8]
mov rdx, qword [rsp + 0x48]
mov r9, rbp
mov rdi, r9
sub rdi, rsi
jae 0x140050d3d
jmp 0x140054140
mov r12d, 3
jmp 0x140050cf6
mov r12, rsi
jmp 0x140050cf6
mov rdx, qword [rsp + 0x78]
shl rdx, 4
mov r8d, 8
mov rcx, r15
call fcn.140001ac0
mov r8d, 8
mov rcx, r13
mov rdx, qword [rsp + 0x108]
call fcn.140001ac0
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 8
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xe0], 0
mov qword [rsp + 0xe8], 8
mov qword [rsp + 0xf0], 0
mov rax, qword [rsp + 0x118]
movups xmm0, xmmword [rax + 0x30]
movups xmmword [rsp + 0x440], xmm0
mov qword [rsp + 0x450], 0
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x440]
call fcn.140011b90
mov rax, qword [rsp + 0x228]
cmp rax, 3
jne 0x1400514c4
mov rsi, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0xf0]
inc rbx
mov rcx, rsi
nop dword [rax]
cmp rbx, 1
je 0x1400513fa
lea rdi, [rcx + 0x218]
dec rbx
call fcn.1400035e0
mov rcx, rdi
jmp 0x1400513e0
mov rax, qword [rsp + 0xe0]
test rax, rax
je 0x14005141c
imul rdx, rax, 0x218
mov r8d, 8
mov rcx, rsi
call fcn.140001ac0
mov rdx, qword [rsp + 0x90]
test rdx, rdx
je 0x140051440
mov rcx, qword [rsp + 0x98]
shl rdx, 5
mov r8d, 8
call fcn.140001ac0
mov rdx, qword [rsp + 0x130]
test rdx, rdx
je 0x140051464
mov rcx, qword [rsp + 0x138]
shl rdx, 4
mov r8d, 8
call fcn.140001ac0
mov r13, qword [rsp + 0x128]
lock dec qword [r13]
jne 0x140051480
lea rcx, [rsp + 0x128]
call fcn.14000d120
mov rax, qword [rsp + 0x210]
movabs rsi, 0x8000000000000000
mov qword [rax], rsi
mov rcx, qword [rsp + 0xf8]
mov rdx, qword [rcx]
lea rax, [rdx*2]
test rax, rax
jne 0x140052b2a
cmp qword [rsp + 0x148], rsi
jne 0x140052b7a
jmp 0x140052b47
lea r13, [rsp + 0x240]
lea rdi, [rsp + 0x610]
lea r15, [rsp + 0x1a8]
lea rcx, [rsp + 0x228]
mov qword [rsp + 0xd0], rcx
lea rbp, [rsp + 0x190]
lea r14, [rsp + 0x90]
lea r12, [rsp + 0x440]
nop word cs:[rax + rax]
mov rsi, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x238]
mov rdx, qword [r13 + 0x30]
mov qword [rsp + 0x630], rdx
movups xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movups xmm2, xmmword [r13 + 0x20]
movaps xmmword [rsp + 0x620], xmm2
movaps xmmword [rsp + 0x610], xmm1
movaps xmmword [rsp + 0x600], xmm0
movaps xmmword [rsp + 0x7b0], xmm0
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0x480], xmm0
movaps xmmword [rsp + 0x490], xmm1
mov rdx, qword [rdi + 0x20]
mov qword [rsp + 0x4a0], rdx
cmp rax, 2
je 0x140052bb9
test rax, rax
jne 0x14005159a
mov rax, rcx
or rax, 4
cmp rax, 5
jne 0x1400515c1
lea rcx, [rsp + 0x228]
mov rdx, r12
call fcn.140011b90
mov rax, qword [rsp + 0x228]
cmp rax, 3
jne 0x140051510
jmp 0x1400513c6
mov rbx, qword [rsp + 0xf0]
mov rdx, qword [rsp + 0x118]
mov qword [rsp + 0x190], 0
mov qword [rsp + 0x198], rsi
mov qword [rsp + 0x1a0], rcx
movaps xmm0, xmmword [rsp + 0x7b0]
movups xmmword [r15], xmm0
mov rax, qword [rsp + 0x4a0]
mov qword [r15 + 0x30], rax
movaps xmm0, xmmword [rsp + 0x480]
movaps xmm1, xmmword [rsp + 0x490]
movups xmmword [r15 + 0x20], xmm1
movups xmmword [r15 + 0x10], xmm0
lea rcx, [rsp + 0x228]
mov r8, rbp
call fcn.140012880
cmp dword [rsp + 0x228], 2
je 0x14005159a
mov rbp, r14
mov r8d, 0x1a8
lea r14, [rsp + 0x600]
mov rcx, r14
lea rdx, [rsp + 0x228]
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsp + 0x758]
lea rax, [rdx + 0x10]
mov r9, qword [rsp + 0x628]
mov r10, qword [rsp + 0x630]
mov qword [rsp + 0x190], r9
mov qword [rsp + 0x198], r10
mov qword [rsp + 0x1a0], r14
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1b0], 0
test r10, r10
je case.0x1400529aa.3
mov r8d, 1
sub r8, r10
lea r11, [r9 + 1]
xor eax, eax
xor ecx, ecx
movzx r14d, byte [r11 - 1]
cmp ecx, 0x3f
jne 0x1400516d4
cmp r14b, 2
jae 0x140052bf3
movzx r14d, r14b
mov r13d, r14d
and r13d, 0x7f
shl r13, cl
or rax, r13
test r14b, r14b
jns 0x1400516fe
add ecx, 7
inc r8
inc r11
cmp r8, 1
jne 0x1400516c0
jmp 0x140052bf8
mov qword [rsp + 0x190], r11
neg r8
mov qword [rsp + 0x198], r8
test rax, rax
lea r13, [rsp + 0x240]
jne 0x1400517eb
mov r14, rbp
lock dec qword [rdx]
jne 0x140051738
lea rcx, [rsp + 0x758]
call fcn.14000d1c0
cmp dword [rsp + 0x660], 0x2f
lea rbp, [rsp + 0x190]
je 0x14005159a
mov rdx, qword [rsp + 0x6a0]
test rdx, rdx
je 0x140051772
mov rcx, qword [rsp + 0x6a8]
shl rdx, 2
mov r8d, 2
call fcn.140001ac0
mov rax, qword [rsp + 0x6b8]
test rax, rax
je 0x14005179a
mov rcx, qword [rsp + 0x6c0]
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.140001ac0
mov rdx, qword [rsp + 0x6d0]
test rdx, rdx
je 0x1400517be
mov rcx, qword [rsp + 0x6d8]
shl rdx, 2
mov r8d, 2
call fcn.140001ac0
mov rdx, qword [rsp + 0x6e8]
test rdx, rdx
je 0x14005159a
mov rcx, qword [rsp + 0x6f0]
shl rdx, 6
mov r8d, 8
call fcn.140001ac0
jmp 0x14005159a
lea rcx, [rax - 1]
cmp rcx, qword [rdx + 0x20]
jae 0x140051802
imul rcx, rcx, 0x70
add rcx, qword [rdx + 0x18]
jmp 0x14005188a
mov rcx, qword [rdx + 0x28]
test rcx, rcx
je case.0x1400529aa.3
mov rdx, qword [rdx + 0x30]
movzx r10d, word [rcx + 0x532]
imul r11, r10, 0x70
mov r9d, 0x70
mov r8, 0xffffffffffffffff
mov r13d, 0xff
lea r14, [r11 + r9]
cmp r14, 0x70
je 0x140051867
xor r14d, r14d
cmp qword [rcx + r8*8 + 0x4e0], rax
setne r14b
cmova r14d, r13d
add r9, 0xffffffffffffff90
inc r8
cmp r14b, 1
je 0x140051832
movzx r10d, r14b
test r10d, r10d
jne 0x14005186a
jmp 0x14005187e
mov r8, r10
sub rdx, 1
jb case.0x1400529aa.3
mov rcx, qword [rcx + r8*8 + 0x538]
jmp 0x140051813
test rcx, rcx
je case.0x1400529aa.3
sub rcx, r9
cmp byte [rcx + 0x6a], 1
jne 0x14005189c
mov qword [rsp + 0x1b0], 1
call fcn.140061c10
mov qword [rsp + 0x28], rax
mov r14, rdx
test rdx, rdx
je 0x140051e6d
shl r14, 4
xor r13d, r13d
xor eax, eax
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x60], rax
xor eax, eax
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x30], rax
xor eax, eax
mov qword [rsp + 0x68], rax
jmp 0x140051909
cmp eax, 0x26
mov eax, 1
mov rcx, qword [rsp + 0x80]
cmove ecx, eax
mov qword [rsp + 0x80], rcx
add r13, 0x10
cmp r14, r13
je 0x140051f7f
mov rax, qword [rsp + 0x28]
movups xmm0, xmmword [rax + r13]
movaps xmmword [rsp + 0xc0], xmm0
mov rax, qword [rsp + 0x1a0]
mov r8d, dword [rax + 0x48]
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x190]
lea r9, [rsp + 0xc0]
call fcn.14000f480
mov rax, qword [rsp + 0x228]
cmp rax, 0x2e
je case.0x1400529aa.3
mov rcx, qword [rsp + 0x240]
movups xmm0, xmmword [rsp + 0x230]
movups xmmword [rsp + 0x158], xmm0
mov qword [rsp + 0x150], rax
mov qword [rsp + 0x168], rcx
movzx eax, cx
cmp eax, 0x12
jg 0x140051a54
cmp eax, 0x11
je 0x140051b0e
cmp eax, 0x12
jne 0x1400518fc
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x150]
call fcn.1400111a0
mov rax, qword [rsp + 0x228]
test rax, rax
je 0x140051c6c
cmp eax, 7
je 0x140051c50
cmp eax, 0xc
jne 0x1400518fc
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x790]
mov rax, qword [rcx + 0x18]
sub rax, rdx
jb case.0x1400529aa.3
mov r10, rdx
movzx r9d, byte [rsp + 0x648]
mov rdx, qword [rsp + 0x230]
imul rdx, r9
mov r8, rax
sub r8, rdx
jb case.0x1400529aa.3
dec r9d
cmp r9d, 7
ja case.0x1400529aa.3
add r10, qword [rcx + 0x10]
add r10, rdx
mov qword [rsp + 0x40], r10
lea r10, [0x1400b5e68]
movsxd rcx, dword [r10 + r9*4]
add rcx, r10
jmp rcx
cmp rax, rdx
je case.0x1400529aa.3
mov rax, qword [rsp + 0x40]
movzx eax, byte [rax]
jmp 0x140051d77
cmp eax, 0x13
je 0x140051bbd
cmp eax, 0x55
jne 0x1400518fc
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x150]
call fcn.1400111a0
mov rcx, qword [rsp + 0x228]
mov r10, qword [rsp + 0x230]
cmp rcx, 0x16
je 0x140051bf6
cmp ecx, 0x18
jne 0x140051c4c
mov r8, qword [rsp + 0x7a0]
mov r9, qword [rsp + 0x68]
mov rdx, qword [r9 + 0xc8]
sub rdx, r8
jb case.0x1400529aa.3
mov ecx, dword [rsp + 0x648]
movzx eax, ch
imul r10, rax
sub rdx, r10
jb case.0x1400529aa.3
mov r9, qword [r9 + 0xc0]
add r9, r8
and ecx, 0xff00
cmp ecx, 0x800
jne 0x140051c88
cmp rdx, 7
jbe case.0x1400529aa.3
mov rax, qword [r9 + r10]
jmp 0x140051c96
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x150]
call fcn.1400111a0
mov rax, qword [rsp + 0x228]
test rax, rax
je 0x140051c30
cmp eax, 0xc
jne 0x1400518fc
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x790]
mov rax, qword [rcx + 0x18]
sub rax, rdx
jb case.0x1400529aa.3
mov r10, rdx
movzx r9d, byte [rsp + 0x648]
mov rdx, qword [rsp + 0x230]
imul rdx, r9
mov r8, rax
sub r8, rdx
jb case.0x1400529aa.3
dec r9d
cmp r9d, 7
ja case.0x1400529aa.3
add r10, qword [rcx + 0x10]
add r10, rdx
mov qword [rsp + 0x58], r10
lea r10, [0x1400b5e88]
movsxd rcx, dword [r10 + r9*4]
add rcx, r10
jmp rcx
cmp rax, rdx
je case.0x1400529aa.3
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax]
jmp 0x140051ce8
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x150]
call fcn.1400111a0
mov rax, qword [rsp + 0x228]
cmp rax, 0x26
jne 0x1400518e1
movzx ecx, word [rsp + 0x230]
mov word [rsp + 0x70], cx
jmp 0x1400518e1
cmp word [rsp + 0x64a], 5
mov ecx, 0
jae 0x140051c0e
mov rcx, qword [rsp + 0x7a0]
mov rax, qword [rsp + 0x68]
cmp byte [rax + 0xe0], 0
mov eax, 0
cmove rcx, rax
add rcx, r10
mov qword [rsp + 0x88], rcx
jmp 0x140051ca1
mov eax, 1
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x58], rax
jmp 0x1400518fc
xor eax, eax
jmp 0x140051ca6
mov eax, 1
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x48], rax
jmp 0x1400518fc
mov eax, 1
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x40], rax
jmp 0x1400518fc
cmp rdx, 4
jb case.0x1400529aa.3
mov eax, dword [r9 + r10]
add rax, r8
mov qword [rsp + 0x88], rax
mov eax, 1
mov qword [rsp + 0x68], rax
jmp 0x1400518fc
cmp r8, 2
jb 0x140051dce
mov rax, qword [rsp + 0x58]
movzx eax, word [rax]
mov qword [rsp + 0x58], rax
mov word [rsp + 0xc1], ax
mov al, 0x4b
jmp 0x140051e0c
cmp r8, 8
jb case.0x1400529aa.3
mov rax, qword [rsp + 0x58]
mov rax, qword [rax]
mov qword [rsp + 0x58], rax
mov eax, 1
mov qword [rsp + 0x60], rax
jmp 0x1400518fc
cmp r8, 4
jb 0x140051ded
mov rdx, qword [rsp + 0x58]
movzx eax, word [rdx + 1]
movzx ecx, byte [rdx]
movzx edx, byte [rdx + 3]
mov byte [rsp + 0xc3], cl
mov byte [rsp + 0xc6], dl
mov word [rsp + 0xc4], ax
mov eax, dword [rsp + 0xc3]
mov qword [rsp + 0x58], rax
mov al, 0x4b
jmp 0x140051e0c
cmp r8, 2
jb 0x140051e18
mov rax, qword [rsp + 0x40]
movzx eax, word [rax]
mov qword [rsp + 0x40], rax
mov word [rsp + 0xc1], ax
mov al, 0x4b
jmp 0x140051e56
cmp r8, 8
jb case.0x1400529aa.3
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
mov qword [rsp + 0x40], rax
mov eax, 1
mov qword [rsp + 0x38], rax
jmp 0x1400518fc
cmp r8, 4
jb 0x140051e37
mov rdx, qword [rsp + 0x40]
movzx eax, word [rdx + 1]
movzx ecx, byte [rdx]
movzx edx, byte [rdx + 3]
mov byte [rsp + 0xc3], cl
mov byte [rsp + 0xc6], dl
mov word [rsp + 0xc4], ax
mov eax, dword [rsp + 0xc3]
mov qword [rsp + 0x40], rax
mov al, 0x4b
jmp 0x140051e56
mov word [rsp + 0xc0], 0
mov byte [rsp + 0xc6], 0
mov dword [rsp + 0xc2], 0
jmp 0x140051e0a
mov dword [rsp + 0xc0], 0
mov byte [rsp + 0xc6], 0
mov word [rsp + 0xc4], 0
mov al, 0x13
mov ecx, 1
mov qword [rsp + 0x60], rcx
jmp 0x140051e60
mov word [rsp + 0xc0], 0
mov byte [rsp + 0xc6], 0
mov dword [rsp + 0xc2], 0
jmp 0x140051e54
mov dword [rsp + 0xc0], 0
mov byte [rsp + 0xc6], 0
mov word [rsp + 0xc4], 0
mov al, 0x13
mov ecx, 1
mov qword [rsp + 0x38], rcx
cmp al, 0x4b
je 0x1400518fc
jmp case.0x1400529aa.3
xor eax, eax
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x60], rax
xor eax, eax
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x30], rax
mov r10, qword [rsp + 0x140]
test r10, r10
mov r14, rbp
je 0x140051edd
mov rax, qword [rsp + 0x138]
mov r13, r10
xor ecx, ecx
mov rdx, r10
shr r13, 1
add r13, rcx
mov r8, r13
shl r8, 4
mov r9, qword [rax + r8]
cmp r9, rsi
je 0x140052191
lea r8, [r13 + 1]
cmp r9, rsi
cmova rdx, r13
cmovb rcx, r8
mov r13, rdx
sub r13, rcx
ja 0x140051eac
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x1400520e0
cmp qword [rsp + 0x38], 0
je 0x1400520e0
mov rdx, qword [rsp + 0x40]
cmp qword [rsp + 0x58], rdx
lea r13, [rsp + 0x240]
jae 0x1400521ff
mov rdx, qword [rsp + 0xa0]
cmp rdx, qword [rsp + 0x90]
jne 0x140051f34
mov rcx, r14
call fcn.14000d870
mov rdx, qword [rsp + 0xa0]
mov r14, rbp
mov rax, qword [rsp + 0x98]
mov rcx, rdx
shl rcx, 5
mov r8, qword [rsp + 0x58]
mov qword [rax + rcx], r8
mov r8, qword [rsp + 0x40]
mov qword [rax + rcx + 8], r8
mov qword [rax + rcx + 0x10], rbx
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0xa0], rdx
mov rdx, r8
mov r9b, 1
mov rax, qword [rsp + 0x48]
jmp 0x140052244
cmp qword [rsp + 0x68], 0
je 0x140051e8c
mov rdx, qword [rsp + 0x118]
lea r8, [rdx + 0xb0]
mov eax, dword [rsp + 0x648]
mov ecx, eax
shr ecx, 0x10
lea r11, [rdx + 0xc0]
xor r9d, r9d
cmp cx, 5
setae r10b
cmovb r11, r8
mov r8, qword [r11 + 8]
mov r11, qword [rsp + 0x88]
sub r8, r11
jb case.0x1400529aa.3
mov r9b, r10b
shl r9, 4
add r9, 0xb0
mov r9, qword [rdx + r9]
add r9, r11
cmp cx, 5
movups xmm0, xmmword [rdx + 0x10]
mov rdx, qword [rsp + 0x780]
mov r10, qword [rsp + 0x790]
movups xmmword [rsp + 0x228], xmm0
mov qword [rsp + 0x238], rdx
mov qword [rsp + 0x240], r10
mov qword [rsp + 0x248], r9
mov qword [rsp + 0x250], r8
mov word [rsp + 0x258], ax
mov word [rsp + 0x25a], cx
setae byte [rsp + 0x25c]
mov dword [rsp + 0x28], 0
lea rcx, [rsp + 0x150]
lea rdx, [rsp + 0x228]
call fcn.140016f40
mov rax, qword [rsp + 0x150]
mov r13, qword [rsp + 0x158]
cmp rax, 1
jne 0x1400521d2
mov r14, qword [rsp + 0x160]
cmp r13, r14
jae 0x140052046
mov rdx, qword [rsp + 0xa0]
cmp rdx, qword [rsp + 0x90]
jne 0x1400520a4
mov rcx, rbp
call fcn.14000d870
mov rdx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x98]
mov rcx, rdx
shl rcx, 5
mov qword [rax + rcx], r13
mov qword [rax + rcx + 8], r14
mov qword [rax + rcx + 0x10], rbx
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0xa0], rdx
mov al, 1
mov dword [rsp + 0x28], eax
jmp 0x140052046
xor r9d, r9d
test rax, rax
lea r13, [rsp + 0x240]
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x40]
je 0x140052244
cmp qword [rsp + 0x30], 0
je 0x140052244
lea r14, [rax + rcx]
cmp rcx, r14
jae 0x14005223e
mov rdx, qword [rsp + 0xa0]
cmp rdx, qword [rsp + 0x90]
jne 0x14005213e
mov rcx, rbp
call fcn.14000d870
mov rdx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x98]
mov rcx, rdx
shl rcx, 5
mov r8, qword [rsp + 0x58]
mov qword [rax + rcx], r8
mov qword [rax + rcx + 8], r14
mov qword [rax + rcx + 0x10], rbx
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0xa0], rdx
mov r9b, 1
lea r13, [rsp + 0x240]
mov r14, rbp
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
jmp 0x140052244
lea rcx, [r13 - 1]
cmp rcx, r10
jae 0x140052457
inc r13
lea rcx, [rax + r8]
add rcx, 0xfffffffffffffff0
mov rdx, qword [rsp + 0x40]
cmp r13, 1
je 0x140052209
dec r13
lea rdx, [rcx - 0x10]
cmp qword [rcx], rsi
mov rcx, rdx
mov rdx, qword [rsp + 0x40]
je 0x1400521ae
cmp r13, r10
jbe 0x14005220c
jmp 0x140054286
cmp eax, 2
jne 0x140052222
cmp r13b, 0x4b
jne case.0x1400529aa.3
shr r13d, 8
mov r9d, r13d
lea r13, [rsp + 0x240]
mov r14, rbp
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
jmp 0x140052248
xor r9d, r9d
mov rax, qword [rsp + 0x48]
jmp 0x140052244
xor r13d, r13d
cmp r13, r10
jne 0x140052474
xor r9d, r9d
lea r13, [rsp + 0x240]
jmp 0x140052251
lea r13, [rsp + 0x240]
mov r14, rbp
mov rax, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov r9d, dword [rsp + 0x28]
jmp 0x140052244
xor r9d, r9d
mov r14, rbp
and r9b, 1
mov qword [rsp + 0x48], rax
and r9b, 1
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x190], 0
test r9b, 1
jne 0x140052360
cmp qword [rsp + 0x660], 0x2f
je 0x140052360
lea rax, [rsp + 0x660]
mov qword [rsp + 0x150], rax
lea rax, [rsp + 0x600]
mov qword [rsp + 0x228], rax
lea rax, [rsp + 0x150]
mov qword [rsp + 0x230], rax
lea rax, [rsp + 0x118]
mov qword [rsp + 0x238], rax
lea rcx, [rsp + 0x190]
lea rdx, [rsp + 0x228]
call fcn.14001cb80
cmp qword [rax], 0
je 0x140052355
mov r13, qword [rax + 0x18]
test r13, r13
je 0x140052355
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0xa0]
shl r13, 5
xor r14d, r14d
jmp 0x14005232e
mov rax, qword [rsp + 0x98]
mov rcx, rdx
shl rcx, 5
movups xmmword [rax + rcx], xmm6
mov qword [rax + rcx + 0x10], rbx
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0xa0], rdx
add r14, 0x20
cmp r13, r14
je 0x140052355
mov rax, qword [rsp + 0x28]
movups xmm6, xmmword [rax + r14 + 0x10]
cmp rdx, qword [rsp + 0x90]
jne 0x1400522f9
mov rcx, rbp
call fcn.14000d870
mov rdx, qword [rsp + 0xa0]
jmp 0x1400522f9
lea r13, [rsp + 0x240]
mov r14, rbp
mov r8d, 0x1a8
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x600]
call sub.msvcrt.dll_memcpy
movups xmm0, xmmword [rsp + 0x190]
movups xmm1, xmmword [rsp + 0x1a0]
movups xmmword [r13 + 0x198], xmm0
movups xmmword [r13 + 0x1a8], xmm1
mov rax, qword [rsp + 0x1b0]
mov qword [r13 + 0x1b8], rax
mov qword [rsp + 0x3d0], rsi
mov rax, qword [rsp + 0x80]
mov word [rsp + 0x438], ax
movzx eax, word [rsp + 0x70]
mov word [rsp + 0x43a], ax
mov qword [rsp + 0x400], 0
mov byte [rsp + 0x428], 0x4c
mov rsi, qword [rsp + 0xf0]
cmp rsi, qword [rsp + 0xe0]
jne 0x140052417
lea rcx, [rsp + 0xe0]
mov rdx, rsi
call fcn.14000dd20
lea rbp, [rsp + 0x190]
mov rsi, qword [rsp + 0xf0]
jmp 0x14005241f
lea rbp, [rsp + 0x190]
imul rcx, rsi, 0x218
add rcx, qword [rsp + 0xe8]
mov r8d, 0x218
lea rbx, [rsp + 0x228]
mov rdx, rbx
call sub.msvcrt.dll_memcpy
inc rsi
mov qword [rsp + 0xf0], rsi
mov rcx, rbx
jmp 0x1400515a2
test r13, r13
jne 0x14005429a
xor r13d, r13d
mov r14, rbp
mov rdx, qword [rsp + 0x40]
cmp r13, r10
je 0x140052215
shl r10, 4
add r10, rax
mov qword [rsp + 0x30], r10
shl r13, 4
add r13, rax
xor r9d, r9d
cmp qword [r13], rsi
jne 0x140052218
mov dword [rsp + 0x28], r9d
mov rcx, qword [rsp + 0x118]
mov r8, qword [r13 + 8]
mov rax, qword [rcx + 0x28]
sub rax, r8
jb case.0x1400529aa.3
mov rcx, qword [rcx + 0x20]
add rcx, r8
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rax
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x150]
call fcn.140016c70
cmp byte [rsp + 0x251], 3
je case.0x1400529aa.3
mov r11, qword [rsp + 0x230]
test r11, r11
je 0x1400528db
mov rdx, qword [rsp + 0x228]
movzx eax, byte [rsp + 0x250]
movzx ecx, byte [rsp + 0x254]
mov qword [rsp + 0x38], rax
add eax, eax
add al, cl
movzx r8d, al
mov qword [rsp + 0x68], rcx
test ecx, ecx
mov r9d, dword [rsp + 0x28]
mov qword [rsp + 0x60], r8
je 0x140052949
mov dword [rsp + 0x28], r9d
mov r10, qword [rsp + 0x38]
jmp 0x140052571
add r11, 0xfffffffffffffffe
movzx r14d, word [rdx]
add rdx, 2
mov word [rsp + 0x229], r14w
mov cl, 0x4b
cmp cl, 0x4b
jne case.0x1400529aa.3
or rax, r14
or rax, r9
jne 0x140052835
cmp r11, r8
jb 0x1400528e5
mov rax, qword [rsp + 0x68]
dec eax
cmp eax, 7
ja case.0x1400529aa.3
lea rcx, [0x1400b5ea8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
test r11, r11
je case.0x1400529aa.3
dec r11
movzx eax, byte [rdx]
inc rdx
jmp 0x14005267a
cmp r11, 2
jb 0x140052630
add r11, 0xfffffffffffffffe
movzx eax, word [rdx]
add rdx, 2
mov word [rsp + 0x229], ax
mov cl, 0x4b
jmp 0x140052671
cmp r11, 8
jb case.0x1400529aa.3
add r11, 0xfffffffffffffff8
mov rax, qword [rdx]
add rdx, 8
jmp 0x14005267a
cmp r11, 4
jb 0x14005264f
add r11, 0xfffffffffffffffc
movzx eax, word [rdx + 1]
movzx ecx, byte [rdx]
mov r8, rdx
movzx edx, byte [rdx + 3]
add r8, 4
mov byte [rsp + 0x22b], cl
mov byte [rsp + 0x22e], dl
mov word [rsp + 0x22c], ax
mov eax, dword [rsp + 0x22b]
mov cl, 0x4b
mov rdx, r8
mov r8, qword [rsp + 0x60]
jmp 0x140052671
mov word [rsp + 0x228], 0
mov byte [rsp + 0x22e], 0
mov dword [rsp + 0x22a], 0
jmp 0x14005266c
mov dword [rsp + 0x228], 0
mov byte [rsp + 0x22e], 0
mov word [rsp + 0x22c], 0
mov cl, 0x13
mov rax, rdx
cmp cl, 0x4b
jne case.0x1400529aa.3
lea ecx, [r10 - 1]
cmp ecx, 7
ja case.0x1400529aa.3
mov r9, rdx
lea rdx, [0x1400b5ec8]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
mov rdx, r9
jmp rcx
cmp r11, 2
jb case.0x1400529aa.3
movzx r9d, byte [rdx]
add r11, 0xfffffffffffffffe
movzx r14d, byte [rdx + 1]
add rdx, 2
jmp 0x140052565
cmp r11, 2
jb 0x140052771
add r11, 0xfffffffffffffffe
movzx r9d, word [rdx]
add rdx, 2
mov cl, 0x4b
jmp 0x140052776
cmp r11, 8
jb case.0x1400529aa.3
mov rcx, r11
and rcx, 0xfffffffffffffff8
cmp rcx, 8
je case.0x1400529aa.3
mov r9, qword [rdx]
mov r14, qword [rdx + 8]
add r11, 0xfffffffffffffff0
add rdx, 0x10
jmp 0x140052565
cmp r11, 4
jb 0x140052754
add r11, 0xfffffffffffffffc
movzx ecx, word [rdx + 1]
mov r9, rdx
movzx edx, byte [rdx]
movzx r8d, byte [r9 + 3]
add r9, 4
mov byte [rsp + 0x22b], dl
mov byte [rsp + 0x22e], r8b
mov r8, qword [rsp + 0x60]
mov word [rsp + 0x22c], cx
mov r14d, dword [rsp + 0x22b]
mov cl, 0x4b
mov rdx, r9
mov r9, r14
jmp 0x140052776
mov dword [rsp + 0x228], 0
mov byte [rsp + 0x22e], 0
mov word [rsp + 0x22c], 0
mov cl, 0x13
mov r9, rdx
cmp cl, 0x4b
jne case.0x1400529aa.3
cmp r10d, 2
je 0x1400527e5
cmp r10d, 4
jne case.0x1400529aa.3
cmp r11, 4
jb 0x14005280e
add r11, 0xfffffffffffffffc
movzx ecx, word [rdx + 1]
mov r10, r9
mov r9, rdx
movzx edx, byte [rdx]
movzx r8d, byte [r9 + 3]
add r9, 4
mov byte [rsp + 0x22b], dl
mov byte [rsp + 0x22e], r8b
mov r8, qword [rsp + 0x60]
mov word [rsp + 0x22c], cx
mov r14d, dword [rsp + 0x22b]
mov cl, 0x4b
mov rdx, r9
mov r9, r10
mov r10, qword [rsp + 0x38]
jmp 0x14005255c
cmp r11, 2
jae 0x140052545
mov word [rsp + 0x228], 0
mov byte [rsp + 0x22e], 0
mov dword [rsp + 0x22a], 0
jmp 0x14005282b
mov dword [rsp + 0x228], 0
mov byte [rsp + 0x22e], 0
mov word [rsp + 0x22c], 0
mov cl, 0x13
mov r14, rdx
jmp 0x14005255c
mov rax, r14
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x78], r11
mov qword [rsp + 0xb0], r14
test r14, r14
je 0x1400528b6
mov r14, r9
mov rdx, qword [rsp + 0xa0]
cmp rdx, qword [rsp + 0x90]
jne 0x140052874
mov rcx, rbp
call fcn.14000d870
mov rdx, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xb0]
add r8, r14
mov rax, qword [rsp + 0x98]
mov rcx, rdx
shl rcx, 5
mov qword [rax + rcx], r14
mov qword [rax + rcx + 8], r8
mov qword [rax + rcx + 0x10], rbx
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0xa0], rdx
mov al, 1
mov dword [rsp + 0x28], eax
mov r11, qword [rsp + 0x78]
test r11, r11
mov r14, rbp
mov r9d, dword [rsp + 0x28]
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x50]
jne 0x140052539
jmp 0x140052b11
mov r9d, dword [rsp + 0x28]
jmp 0x140052b11
mov r14, rbp
mov r9d, dword [rsp + 0x28]
jmp 0x140052b11
mov r8, qword [rsp + 0x28]
add r8, r14
mov rax, qword [rsp + 0x98]
mov rcx, rdx
shl rcx, 5
mov qword [rax + rcx], r14
mov qword [rax + rcx + 8], r8
mov qword [rax + rcx + 0x10], rbx
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0xa0], rdx
mov r9b, 1
mov r11, qword [rsp + 0x78]
test r11, r11
mov r14, rbp
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x50]
je 0x140052b11
mov r10, qword [rsp + 0x38]
jmp 0x140052986
mov word [rsp + 0x228], 0
mov byte [rsp + 0x22e], 0
mov dword [rsp + 0x22a], 0
mov al, 0x13
mov rcx, rdx
cmp al, 0x4b
jne case.0x1400529aa.3
mov rax, r14
or rax, rcx
jne 0x140052acb
cmp r11, r8
jb 0x140052b0e
lea eax, [r10 - 1]
cmp eax, 7
ja case.0x1400529aa.3
lea rcx, [0x1400b5ee8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
cmp r11, 2
jb case.0x1400529aa.3
movzx r14d, byte [rdx]
add r11, 0xfffffffffffffffe
movzx ecx, byte [rdx + 1]
add rdx, 2
jmp 0x14005297a
cmp r11, 1
jbe 0x140052a20
add r11, 0xfffffffffffffffe
movzx r14d, word [rdx]
add rdx, 2
jmp 0x140052a1c
cmp r11, 8
jb case.0x1400529aa.3
mov rax, r11
and rax, 0xfffffffffffffff8
cmp rax, 8
je case.0x1400529aa.3
mov r14, qword [rdx]
mov rcx, qword [rdx + 8]
add r11, 0xfffffffffffffff0
add rdx, 0x10
jmp 0x14005297a
cmp r11, 3
jbe 0x140052a20
add r11, 0xfffffffffffffffc
mov r14d, dword [rdx]
add rdx, 4
mov al, 0x4b
jmp 0x140052a25
mov al, 0x13
mov r14, rdx
cmp al, 0x4b
jne case.0x1400529aa.3
cmp r10d, 4
je 0x140052a61
cmp r10d, 2
jne case.0x1400529aa.3
cmp r11, 1
jbe 0x140052950
add r11, 0xfffffffffffffffe
movzx ecx, word [rdx]
add rdx, 2
mov word [rsp + 0x229], cx
mov al, 0x4b
jmp 0x140052972
cmp r11, 3
jbe 0x140052aa9
add r11, 0xfffffffffffffffc
movzx eax, word [rdx + 1]
movzx ecx, byte [rdx]
mov r8, rdx
movzx edx, byte [rdx + 3]
add r8, 4
mov byte [rsp + 0x22b], cl
mov byte [rsp + 0x22e], dl
mov word [rsp + 0x22c], ax
mov ecx, dword [rsp + 0x22b]
mov al, 0x4b
mov rdx, r8
mov r8, qword [rsp + 0x60]
jmp 0x140052972
mov dword [rsp + 0x228], 0
mov byte [rsp + 0x22e], 0
mov word [rsp + 0x22c], 0
jmp 0x14005296d
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x78], r11
mov qword [rsp + 0x28], rcx
test rcx, rcx
je 0x14005292e
mov rdx, qword [rsp + 0xa0]
cmp rdx, qword [rsp + 0x90]
jne 0x1400528f2
mov rcx, rbp
call fcn.14000d870
mov rdx, qword [rsp + 0xa0]
jmp 0x1400528f2
mov r14, rbp
add r13, 0x10
cmp r13, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
jne 0x14005248a
jmp 0x140052218
mov rcx, qword [rcx + 8]
shl rdx, 4
mov r8d, 8
call fcn.140001ac0
cmp qword [rsp + 0x148], rsi
jne 0x140052b7a
mov rax, qword [rsp + 0xd8]
mov rdx, qword [rax]
lea rax, [rdx*2]
test rax, rax
je 0x140052b7a
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rax + 8]
shl rdx, 4
mov r8d, 8
call fcn.140001ac0
mov rcx, qword [rsp + 0x218]
mov rdx, qword [rcx]
test rdx, rdx
je 0x140052b9d
mov rcx, qword [rcx + 8]
shl rdx, 4
mov r8d, 8
call fcn.140001ac0
movaps xmm6, xmmword [rsp + 0x7c0]
add rsp, 0x7d8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rbx, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
cmp r15, 0x15
jae 0x140052cd7
cmp r15, 1
jbe 0x140053333
mov r8d, 1
mov rcx, rbx
mov rdx, r15
call fcn.140005f10
jmp 0x140053338
neg r8
jmp 0x140052c01
add r9, r10
xor r8d, r8d
mov r11, r9
mov qword [rsp + 0x190], r11
mov qword [rsp + 0x198], r8
mov rax, qword [rsp + 0x758]
lock dec qword [rax]
jne 0x140052c2c
lea rcx, [rsp + 0x758]
call fcn.14000d1c0
cmp dword [rsp + 0x660], 0x2f
je 0x1400513c6
mov rdx, qword [rsp + 0x6a0]
test rdx, rdx
je 0x140052c5e
mov rcx, qword [rsp + 0x6a8]
shl rdx, 2
mov r8d, 2
call fcn.140001ac0
mov rax, qword [rsp + 0x6b8]
test rax, rax
je 0x140052c86
mov rcx, qword [rsp + 0x6c0]
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
call fcn.140001ac0
mov rdx, qword [rsp + 0x6d0]
test rdx, rdx
je 0x140052caa
mov rcx, qword [rsp + 0x6d8]
shl rdx, 2
mov r8d, 2
call fcn.140001ac0
mov rdx, qword [rsp + 0x6e8]
test rdx, rdx
je 0x1400513c6
mov rcx, qword [rsp + 0x6f0]
shl rdx, 6
mov r8d, 8
call fcn.140001ac0
jmp 0x1400513c6
mov rax, r15
shl rax, 4
movabs rcx, 0x8000000000000000
lea rdi, [rcx - 0x20]
and rdi, rax
mov rsi, qword [0x1400d7de8]
movzx eax, byte [rsi]
mov edx, 8
mov rcx, rdi
call fcn.140001ab0
test rax, rax
je 0x14005426a
mov rbp, rax
mov qword [rsp + 0x108], rdi
movzx eax, byte [rsi]
mov ecx, 0x100
mov edx, 8
call fcn.140001ab0
test rax, rax
mov qword [rsp + 0x38], rbp
je 0x140054278
mov r12, rax
lea rax, [rbx + 0x40]
mov qword [rsp + 0xb0], rax
lea rax, [rbx + 0x10]
mov qword [rsp + 0x110], rax
lea rax, [rbx - 0x10]
mov qword [rsp + 0x120], rax
lea rax, [rbx - 0x20]
mov qword [rsp + 0x88], rax
mov eax, 0x10
mov qword [rsp + 0x78], rax
xor edi, edi
lea rax, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov qword [rsp + 0x100], rax
xor r13d, r13d
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x70], r15
jmp 0x140052db4
mov r13d, 1
mov rdi, qword [rsp + 0x50]
cmp rdi, r15
jae 0x1400532f6
mov rdx, r15
sub rdx, rdi
mov rax, rdi
shl rax, 5
lea rcx, [rbx + rax]
cmp rdx, 2
jae 0x140052e40
mov r8, rdx
lea rdx, [r8 + rdi]
mov rsi, rdx
sub rsi, rdi
mov rax, qword [0x1400d7de8]
jb 0x14005417f
cmp rdx, r15
ja 0x14005417f
jae 0x140052f10
cmp r8, 0xa
jae 0x140052f10
lea rsi, [rdi + 0xa]
cmp rsi, r15
cmovae rsi, r15
mov qword [rsp + 0x50], rsi
sub rsi, rdi
jb 0x1400541e8
cmp r8, 1
adc r8, 0
mov rdx, rsi
call fcn.140005f10
mov rax, qword [0x1400d7de8]
cmp r13, qword [rsp + 0x78]
je 0x140052f1c
jmp 0x140052f77
mov r9, qword [rcx + 0x20]
cmp r9, qword [rcx]
jae 0x1400532a0
mov r8d, 2
cmp rdx, 2
je 0x140052e8a
mov r8, qword [rsp + 0xb0]
lea r10, [r8 + rax]
mov r8d, 2
nop dword [rax + rax]
mov r11, r9
mov r9, qword [r10]
cmp r9, r11
jae 0x140052e8a
inc r8
add r10, 0x20
cmp rdx, r8
jne 0x140052e70
mov r8, rdx
mov rdx, r8
add rdx, rdi
jb 0x140054232
cmp rdx, r15
ja 0x14005421e
cmp r8, 2
jb 0x140052dd2
mov r9, rdx
mov rdx, r8
shr rdx, 1
add rax, qword [rsp + 0x110]
mov r10, r9
shl r9, 5
add r9, qword [rsp + 0x120]
nop dword [rax]
movups xmm0, xmmword [rax - 0x10]
movups xmm1, xmmword [r9 - 0x10]
movups xmmword [rax - 0x10], xmm1
movups xmmword [r9 - 0x10], xmm0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [r9]
movups xmmword [rax], xmm1
movups xmmword [r9], xmm0
add rax, 0x20
add r9, 0xffffffffffffffe0
dec rdx
jne 0x140052ed0
mov rdx, r10
jmp 0x140052dd2
mov qword [rsp + 0x50], rdx
cmp r13, qword [rsp + 0x78]
jne 0x140052f77
lea rcx, [r13*2]
mov qword [rsp + 0x78], rcx
mov rcx, r13
shl rcx, 5
movzx eax, byte [rax]
mov edx, 8
call fcn.140001ab0
test rax, rax
je 0x1400541f9
mov rbx, rax
mov r14, r13
shl r14, 4
mov rcx, rax
mov rdx, r12
mov r8, r14
call sub.msvcrt.dll_memcpy
mov r8d, 8
mov rcx, r12
mov rdx, r14
call fcn.140001ac0
mov r12, rbx
mov rbx, qword [rsp + 0x30]
mov rax, r13
shl rax, 4
mov qword [r12 + rax], rsi
mov qword [r12 + rax + 8], rdi
inc r13
cmp r13, 2
jb 0x140052da6
mov qword [rsp + 0x48], r12
jmp 0x140053003
mov rbp, qword [rsp + 0x38]
mov rdx, rbp
sub r13, rdx
mov rcx, r12
mov r8, r13
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x60]
add rax, rdi
mov qword [r14], rax
mov rax, qword [rsp + 0x68]
mov qword [r14 + 8], rax
mov rcx, qword [rsp + 0x58]
lea rdx, [rcx + 0x10]
mov rax, qword [rsp + 0x80]
not rax
mov r8, qword [rsp + 0x40]
add r8, rax
shl r8, 4
call sub.msvcrt.dll_memmove
mov r13, qword [rsp + 0x28]
cmp r13, 1
mov r15, qword [rsp + 0x70]
mov r12, qword [rsp + 0x48]
jbe 0x140052da0
lea r10, [r13 - 1]
mov rcx, r10
shl rcx, 4
mov rax, qword [r12 + rcx]
mov rcx, qword [r12 + rcx + 8]
add rcx, rax
cmp rcx, r15
je 0x140053070
mov rdx, r13
shl rdx, 4
mov r8, qword [rdx + r12 - 0x20]
cmp r8, rax
jbe 0x140053070
cmp r13, 2
jbe 0x1400532e0
lea r11, [r13 - 3]
mov rcx, r11
shl rcx, 4
mov rcx, qword [r12 + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x140053085
cmp r13, 3
jbe 0x1400532eb
add r8, rcx
cmp qword [rdx + r12 - 0x40], r8
jbe 0x140053085
jmp 0x140052da6
cmp r13, 3
jb 0x14005308a
lea r11, [r13 - 3]
mov rcx, r11
shl rcx, 4
mov rcx, qword [r12 + rcx]
cmp rcx, rax
jb 0x14005308e
lea r11, [r13 - 2]
cmp r13, r11
jbe 0x1400540fe
lea r14, [r11 + 1]
cmp r13, r14
jbe 0x1400540b9
mov rax, r11
shl rax, 4
mov rcx, qword [r12 + rax + 8]
shl r14, 4
mov rdx, qword [r12 + r14]
mov rsi, qword [r12 + r14 + 8]
add rsi, rdx
mov rbp, rsi
sub rbp, rcx
jb 0x1400540d1
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x28], r10
cmp rsi, r15
ja 0x1400540e5
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x80], r11
lea rdx, [r12 + rax]
mov qword [rsp + 0x58], rdx
mov rdi, qword [r12 + rax]
add r14, r12
mov qword [rsp + 0x68], rcx
mov r12, rcx
shl r12, 5
add r12, rbx
mov r13, rdi
shl r13, 5
lea r15, [r12 + r13]
shl rsi, 5
mov rbx, rbp
sub rbx, rdi
cmp rbx, rdi
jae 0x1400531e0
mov r13, rbx
shl r13, 5
mov rbp, qword [rsp + 0x38]
mov rcx, rbp
mov rdx, r15
mov r8, r13
call sub.msvcrt.dll_memcpy
add r13, rbp
test rdi, rdi
jle 0x140053280
test rbx, rbx
jle 0x140053280
add rsi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x30]
nop word cs:[rax + rax]
mov rax, r15
mov rcx, r13
mov rdx, qword [r13 - 0x20]
mov r8, qword [r15 - 0x20]
cmp rdx, r8
mov r15d, 0
sbb r15, r15
cmp rdx, r8
mov r13d, 0
adc r13, 0xffffffffffffffff
shl r15, 5
add r15, rax
shl r13, 5
add r13, rcx
cmp rdx, r8
mov rax, r13
cmovb rax, r15
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
cmp r15, r12
jbe 0x1400531cb
add rsi, 0xffffffffffffffe0
cmp r13, rbp
ja 0x140053170
mov r12, r15
jmp 0x140052fa0
mov rbx, qword [rsp + 0x38]
mov rcx, rbx
mov rdx, r12
mov r8, r13
call sub.msvcrt.dll_memcpy
add r13, rbx
test rdi, rdi
jle 0x140053285
cmp rbp, rdi
mov rbx, qword [rsp + 0x30]
jle 0x140052f9b
add rsi, rbx
mov rbp, qword [rsp + 0x38]
mov rdx, rbp
nop dword [rax + rax]
mov r8, rdx
mov rcx, qword [r15]
xor edx, edx
xor eax, eax
cmp rcx, qword [r8]
setae dl
setb cl
mov r9, r8
cmovb r9, r15
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movups xmmword [r12 + 0x10], xmm1
movups xmmword [r12], xmm0
add r12, 0x20
shl rdx, 5
add rdx, r8
cmp rdx, r13
jae 0x140052fa3
mov al, cl
shl rax, 5
add r15, rax
cmp r15, rsi
jb 0x140053220
jmp 0x140052fa3
mov r12, r15
jmp 0x14005328a
mov rbp, qword [rsp + 0x38]
mov rdx, rbp
mov rbx, qword [rsp + 0x30]
jmp 0x140052fa3
mov r8d, 2
cmp rdx, 2
je 0x140052dce
add rax, qword [rsp + 0xb0]
nop dword [rax + rax]
mov r10, r9
mov r9, qword [rax]
cmp r9, r10
jb 0x140052dce
inc r8
add rax, 0x20
cmp rdx, r8
jne 0x1400532c0
jmp 0x140052dcb
mov r13d, 2
jmp 0x140052da6
mov r13d, 3
jmp 0x140052da6
mov rdx, qword [rsp + 0x78]
shl rdx, 4
mov r8d, 8
mov rcx, r12
call fcn.140001ac0
mov r8d, 8
mov rcx, rbp
mov rdx, qword [rsp + 0x108]
call fcn.140001ac0
mov rbx, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
test r15, r15
je 0x140053372
mov rax, r15
shl rax, 5
add rax, rbx
xor ecx, ecx
mov rdx, rbx
nop word [rax + rax]
mov r8, qword [rdx + 8]
cmp rcx, r8
cmovbe rcx, r8
mov qword [rdx + 0x18], rcx
lea r8, [rdx + 0x20]
mov rdx, r8
cmp r8, rax
jne 0x140053350
mov qword [rsp + 0x30], rbx
jmp 0x14005337a
mov qword [rsp + 0x30], rbx
xor r15d, r15d
mov rbx, qword [rsp + 0x90]
movups xmm0, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x500], xmm0
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x510], rax
mov rdx, qword [rsp + 0x130]
test rdx, rdx
je 0x1400533c6
mov rcx, qword [rsp + 0x138]
shl rdx, 4
mov r8d, 8
call fcn.140001ac0
mov r13, qword [rsp + 0x128]
movabs rax, 0x8000000000000000
cmp rbx, rax
je 0x14005146c
mov rax, qword [rsp + 0x510]
mov qword [rsp + 0xf0], rax
movaps xmm0, xmmword [rsp + 0x500]
movaps xmmword [rsp + 0xe0], xmm0
mov r14, qword [r13 + 0xe0]
test r14, r14
mov qword [rsp + 0x70], r15
je 0x140053501
mov qword [rsp + 0x150], 0
mov qword [rsp + 0x158], 8
mov qword [rsp + 0x160], 0
movups xmm0, xmmword [r14 + 0x40]
movups xmmword [rsp + 0x480], xmm0
mov qword [rsp + 0x490], 0
lea rcx, [rsp + 0x228]
lea rdx, [rsp + 0x480]
call fcn.140011b90
mov rax, qword [rsp + 0x228]
cmp rax, 3
jne 0x140053599
lea rcx, [rsp + 0x150]
call fcn.140003b60
mov rsi, qword [rsp + 0xe8]
mov r14, qword [rsp + 0xf0]
inc r14
mov rcx, rsi
nop dword [rax]
cmp r14, 1
je 0x1400534ba
lea rdi, [rcx + 0x218]
dec r14
call fcn.1400035e0
mov rcx, rdi
jmp 0x1400534a0
mov rax, qword [rsp + 0xe0]
test rax, rax
je 0x1400534dc
imul rdx, rax, 0x218
mov r8d, 8
mov rcx, rsi
call fcn.140001ac0
test rbx, rbx
je 0x14005146c
shl rbx, 5
mov r8d, 8
mov rcx, qword [rsp + 0x30]
mov rdx, rbx
call fcn.140001ac0
jmp 0x14005146c
mov qword [rsp + 0x440], 0
mov qword [rsp + 0x448], 8
mov qword [rsp + 0x450], 0
mov edi, 8
xor esi, esi
xor r14d, r14d
mov qword [rsp + 0x228], r13
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
cmp rbx, r15
jbe 0x14005374d
mov r15, rbx
shl r15, 5
mov r12, qword [rsp + 0x70]
test r12, r12
je 0x140053730
shl r12, 5
mov r8d, 8
mov rcx, qword [rsp + 0x30]
mov rdx, r15
mov r9, r12
call fcn.140001ad0
mov qword [rsp + 0x28], rax
test rax, rax
jne 0x14005374d
mov ecx, 8
mov rdx, r12
call fcn.1400735c0
jmp 0x1400542a9
add r14, 0x10
mov edi, 8
xor esi, esi
lea r15, [rsp + 0x600]
lea r12, [rsp + 0x228]
lea rbp, [rsp + 0x480]
jmp 0x1400535e5
cmp rax, 2
je 0x1400536f3
mov rcx, r12
mov rdx, rbp
call fcn.140011b90
mov rax, qword [rsp + 0x228]
cmp rax, 3
je 0x14005347a
movups xmm6, xmmword [rsp + 0x230]
lea rdx, [rsp + 0x240]
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmm2, xmmword [rdx + 0x20]
movaps xmmword [rsp + 0x190], xmm0
movaps xmmword [rsp + 0x1a0], xmm1
movaps xmmword [rsp + 0x1b0], xmm2
mov rcx, qword [rdx + 0x30]
mov qword [rsp + 0x1c0], rcx
test rax, rax
jne 0x1400535be
mov qword [rsp + 0x228], 0
movups xmmword [rsp + 0x230], xmm6
mov rax, qword [rsp + 0x1c0]
mov qword [rdx + 0x30], rax
movaps xmm0, xmmword [rsp + 0x190]
movaps xmm1, xmmword [rsp + 0x1a0]
movaps xmm2, xmmword [rsp + 0x1b0]
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x10], xmm1
movups xmmword [rdx], xmm0
mov rcx, r15
mov rdx, r14
mov r8, r12
call fcn.140012880
cmp dword [rsp + 0x600], 2
je 0x1400535c8
mov r8d, 0x1a8
mov rcx, r12
mov rdx, r15
call sub.msvcrt.dll_memcpy
movlps qword [rsp + 0x3d0], xmm6
cmp rsi, qword [rsp + 0x150]
jne 0x1400536cb
lea rcx, [rsp + 0x150]
mov rdx, rsi
call fcn.14000deb0
mov rdi, qword [rsp + 0x158]
mov rsi, qword [rsp + 0x160]
imul rcx, rsi, 0x1b0
add rcx, rdi
mov r8d, 0x1b0
mov rdx, r12
call sub.msvcrt.dll_memcpy
inc rsi
mov qword [rsp + 0x160], rsi
jmp 0x1400535c8
mov r14, qword [rsp + 0x150]
movabs rax, 0x8000000000000000
cmp r14, rax
je 0x140053487
mov qword [rsp + 0x440], r14
mov qword [rsp + 0x448], rdi
mov qword [rsp + 0x450], rsi
mov r15, qword [rsp + 0x70]
jmp 0x14005352f
mov eax, 8
mov qword [rsp + 0x28], rax
mov r8d, 8
mov rcx, qword [rsp + 0x30]
mov rdx, r15
call fcn.140001ac0
mov rax, qword [rsp + 0xe0]
mov r12, qword [rsp + 0xe8]
mov r15, qword [rsp + 0xf0]
cmp rax, r15
jbe 0x1400537bc
imul rdx, rax, 0x218
test r15, r15
je 0x1400537a8
imul rbp, r15, 0x218
mov r8d, 8
mov rcx, r12
mov r9, rbp
call fcn.140001ad0
mov r12, rax
test rax, rax
jne 0x1400537bc
mov ecx, 8
mov rdx, rbp
call fcn.1400735c0
jmp 0x1400542a9
mov r8d, 8
mov rcx, r12
call fcn.140001ac0
mov r12d, 8
cmp r14, rsi
jbe 0x140053812
imul rdx, r14, 0x1b0
test rsi, rsi
je 0x1400537ff
imul rbp, rsi, 0x1b0
mov r8d, 8
mov rcx, rdi
mov r9, rbp
call fcn.140001ad0
mov rdi, rax
test rax, rax
jne 0x140053812
mov ecx, 8
mov rdx, rbp
call fcn.1400735c0
jmp 0x1400542a9
mov r8d, 8
mov rcx, rdi
call fcn.140001ac0
mov edi, 8
test r13, r13
je 0x140051480
mov qword [rsp + 0x4c8], r13
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x4d0], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x4d8], rax
mov qword [rsp + 0x4e0], r12
mov qword [rsp + 0x4e8], r15
mov qword [rsp + 0x4f0], rdi
mov qword [rsp + 0x4f8], rsi
mov rbx, qword [rsp + 0xf8]
mov r13, qword [rbx]
movabs rax, 0x8000000000000000
cmp r13, rax
jne 0x140053aec
mov qword [rsp + 0x28], r13
mov sil, 0x16
mov rax, qword [rsp + 0x4f8]
mov rcx, qword [rsp + 0x210]
mov qword [rcx + 0x1d8], rax
movups xmm0, xmmword [rsp + 0x4c8]
movups xmm1, xmmword [rsp + 0x4d8]
movups xmm2, xmmword [rsp + 0x4e8]
movups xmmword [rcx + 0x1c8], xmm2
movups xmmword [rcx + 0x1b8], xmm1
movups xmmword [rcx + 0x1a8], xmm0
mov rax, qword [rsp + 0x218]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmm3, xmmword [rax + 0x30]
movups xmm4, xmmword [rax + 0x40]
mov rax, qword [rax + 0x50]
mov qword [rcx + 0x50], rax
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm1
movups xmmword [rcx + 0x20], xmm2
movups xmmword [rcx + 0x30], xmm3
movups xmmword [rcx + 0x40], xmm4
mov rax, qword [rsp + 0x1df]
mov qword [rcx + 0xa8], rax
movaps xmm0, xmmword [rsp + 0x1d0]
movups xmmword [rcx + 0x99], xmm0
movaps xmm0, xmmword [rsp + 0x190]
movaps xmm1, xmmword [rsp + 0x1a0]
movaps xmm2, xmmword [rsp + 0x1b0]
movaps xmm3, xmmword [rsp + 0x1c0]
movups xmmword [rcx + 0x89], xmm3
movups xmmword [rcx + 0x79], xmm2
movups xmmword [rcx + 0x69], xmm1
movups xmmword [rcx + 0x59], xmm0
movaps xmm0, xmmword [rsp + 0x1f0]
movups xmmword [rcx + 0xb1], xmm0
mov rax, qword [rsp + 0x1ff]
mov qword [rcx + 0xc0], rax
movaps xmm0, xmmword [rsp + 0x440]
movaps xmm1, xmmword [rsp + 0x450]
movaps xmm2, xmmword [rsp + 0x460]
movaps xmm3, xmmword [rsp + 0x470]
movups xmmword [rcx + 0xc8], xmm0
movups xmmword [rcx + 0xd8], xmm1
movups xmmword [rcx + 0xe8], xmm2
movups xmmword [rcx + 0xf8], xmm3
mov byte [rcx + 0x58], sil
movzx eax, byte [rsp + 0x80]
mov byte [rcx + 0xb0], al
mov rax, qword [rsp + 0x68]
mov qword [rcx + 0x108], rax
mov qword [rcx + 0x110], r9
mov qword [rcx + 0x118], r10
mov rax, qword [rsp + 0x40]
mov qword [rcx + 0x120], rax
mov qword [rcx + 0x128], rbx
mov qword [rcx + 0x130], r12
mov qword [rcx + 0x138], r15
mov qword [rcx + 0x140], rbp
mov qword [rcx + 0x148], r13
mov qword [rcx + 0x150], r14
mov rax, qword [rsp + 0x38]
mov qword [rcx + 0x158], rax
mov qword [rcx + 0x160], rdx
mov rax, qword [rsp + 0x60]
mov qword [rcx + 0x168], rax
mov qword [rcx + 0x170], r8
mov rax, qword [rsp + 0x58]
mov qword [rcx + 0x178], rax
mov qword [rcx + 0x180], r11
mov rax, qword [rsp + 0x30]
mov qword [rcx + 0x188], rax
mov qword [rcx + 0x190], rdi
lea rax, [0x1400b5f08]
mov qword [rcx + 0x198], rax
mov qword [rcx + 0x1a0], 0
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x28], rax
jne 0x140053ab3
mov rax, qword [rsp + 0xf8]
mov rdx, qword [rax]
lea rax, [rdx*2]
test rax, rax
je 0x140053ab3
mov rax, qword [rsp + 0xf8]
mov rcx, qword [rax + 8]
shl rdx, 4
mov r8d, 8
call fcn.140001ac0
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x148], rax
jne 0x140052b9d
mov rcx, qword [rsp + 0xd8]
mov rdx, qword [rcx]
lea rax, [rdx*2]
test rax, rax
je 0x140052b9d
jmp 0x140052b8a
lea rdx, [0x1400b70b6]
mov r8d, 0xf
mov rcx, rbx
call fcn.140056730
lea rsi, [0x1400b5f08]
mov r8, rdx
test rax, rax
cmove r8, rax
cmove rax, rsi
lea rcx, [rsp + 0x228]
mov rdx, rax
call fcn.140014ff0
movzx ebp, byte [rsp + 0x228]
cmp bpl, 0x16
je 0x140053bdf
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x9f], rax
movups xmm0, xmmword [rsp + 0x229]
movaps xmmword [rsp + 0x90], xmm0
movups xmm0, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0x480], xmm0
movups xmm0, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0x490], xmm0
movups xmm0, xmmword [rsp + 0x260]
movaps xmmword [rsp + 0x4a0], xmm0
movups xmm0, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x4b0], xmm0
lea rdx, [0x1400b713b]
mov r8d, 0xf
mov rbx, qword [rsp + 0xf8]
mov rcx, rbx
call fcn.140056730
mov r8, rdx
test rax, rax
cmove r8, rax
cmove rax, rsi
lea rcx, [rsp + 0x228]
mov rdx, rax
call fcn.140014ff0
movzx eax, byte [rsp + 0x228]
cmp al, 0x16
jne 0x140053c41
mov rax, qword [rsp + 0x210]
movabs rcx, 0x8000000000000000
mov qword [rax], rcx
mov rax, qword [rsp + 0xf8]
mov rdx, qword [rax]
test rdx, rdx
je 0x140053c17
mov rcx, qword [rax + 8]
shl rdx, 4
mov r8d, 8
call fcn.140001ac0
lea rcx, [rsp + 0x4c8]
call fcn.1400034a0
movabs rsi, 0x8000000000000000
cmp qword [rsp + 0x148], rsi
je 0x140052b47
jmp 0x140052b7a
mov r12, rsi
mov byte [rsp + 0x80], al
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0xef], rax
movups xmm0, xmmword [rsp + 0x229]
movaps xmmword [rsp + 0xe0], xmm0
movups xmm0, xmmword [rsp + 0x240]
movaps xmmword [rsp + 0x150], xmm0
movups xmm0, xmmword [rsp + 0x250]
movaps xmmword [rsp + 0x160], xmm0
movups xmm0, xmmword [rsp + 0x260]
movaps xmmword [rsp + 0x170], xmm0
movups xmm0, xmmword [rsp + 0x270]
movaps xmmword [rsp + 0x180], xmm0
lea rdx, [0x1400b7156]
mov r8d, 0x11
mov rbx, qword [rsp + 0xf8]
mov rcx, rbx
call fcn.140056730
mov qword [rsp + 0x48], rdx
test rax, rax
mov rcx, qword [rsp + 0x48]
cmove rcx, rax
mov qword [rsp + 0x48], rcx
cmove rax, r12
mov qword [rsp + 0x68], rax
lea rdx, [0x1400b7167]
mov r8d, 0xf
mov rcx, rbx
call fcn.140056730
mov qword [rsp + 0x40], rdx
test rax, rax
mov rcx, qword [rsp + 0x40]
cmove rcx, rax
mov qword [rsp + 0x40], rcx
cmove rax, r12
mov qword [rsp + 0x78], rax
lea rdx, [0x1400b7176]
mov r8d, 0xf
mov rcx, rbx
call fcn.140056730
mov qword [rsp + 0x70], rdx
test rax, rax
mov rcx, qword [rsp + 0x70]
cmove rcx, rax
mov qword [rsp + 0x70], rcx
cmove rax, r12
mov qword [rsp + 0xb0], rax
lea rdx, [0x1400b71b9]
mov r8d, 0xe
mov rcx, rbx
call fcn.140056730
mov r15, rdx
test rax, rax
cmove r15, rax
cmove rax, r12
mov qword [rsp + 0xd0], rax
lea rdx, [0x1400b71c7]
mov r8d, 0x16
mov rcx, rbx
call fcn.140056730
mov qword [rsp + 0x88], rdx
mov rsi, rax
test rax, rax
mov rax, qword [rsp + 0x88]
cmove rax, rsi
mov qword [rsp + 0x88], rax
cmove rsi, r12
lea rdx, [0x1400b7185]
mov r8d, 0xe
mov rcx, rbx
call fcn.140056730
mov r14, rax
mov rdi, rdx
test rax, rax
cmove rdi, rax
cmove r14, r12
lea rdx, [0x1400b7193]
mov r8d, 0x13
mov rcx, rbx
call fcn.140056730
mov qword [rsp + 0x50], rdx
test rax, rax
mov rcx, qword [rsp + 0x50]
cmove rcx, rax
mov qword [rsp + 0x50], rcx
cmove rax, r12
mov qword [rsp + 0x60], rax
lea rdx, [0x1400b71a6]
mov r8d, 0x13
mov rcx, rbx
call fcn.140056730
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x110], rdx
cmove rax, r12
mov qword [rsp + 0x58], rax
lea rdx, [0x1400b71dd]
mov r8d, 0x10
mov rcx, rbx
call fcn.140056730
mov qword [rsp + 0x100], rdi
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x108], rsi
mov byte [rsp + 0x120], bpl
mov qword [rsp + 0xb8], r15
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x220], rdx
cmove rax, r12
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x9f]
mov qword [rsp + 0x60f], rax
movaps xmm0, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0x600], xmm0
movaps xmm0, xmmword [rsp + 0x480]
movaps xmm1, xmmword [rsp + 0x490]
movaps xmm2, xmmword [rsp + 0x4a0]
movaps xmm3, xmmword [rsp + 0x4b0]
movups xmmword [rsp + 0x617], xmm0
movups xmmword [rsp + 0x627], xmm1
movups xmmword [rsp + 0x637], xmm2
movups xmmword [rsp + 0x647], xmm3
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x1f0], xmm0
mov rax, qword [rsp + 0xef]
mov qword [rsp + 0x1ff], rax
movaps xmm0, xmmword [rsp + 0x150]
movaps xmm1, xmmword [rsp + 0x160]
movaps xmm2, xmmword [rsp + 0x170]
movaps xmm3, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x470], xmm3
movaps xmmword [rsp + 0x460], xmm2
movaps xmmword [rsp + 0x450], xmm1
movaps xmmword [rsp + 0x440], xmm0
mov rax, qword [rsp + 0x64f]
mov qword [rsp + 0x1df], rax
movaps xmm0, xmmword [rsp + 0x640]
movaps xmmword [rsp + 0x1d0], xmm0
movaps xmm0, xmmword [rsp + 0x600]
movaps xmm1, xmmword [rsp + 0x610]
movaps xmm2, xmmword [rsp + 0x620]
movaps xmm3, xmmword [rsp + 0x630]
movaps xmmword [rsp + 0x1c0], xmm3
movaps xmmword [rsp + 0x1b0], xmm2
movaps xmmword [rsp + 0x1a0], xmm1
movaps xmmword [rsp + 0x190], xmm0
mov rdx, qword [rbx]
test rdx, rdx
je 0x140053fd1
mov rcx, qword [rbx + 8]
shl rdx, 4
mov r8d, 8
call fcn.140001ac0
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x78]
mov rbx, qword [rsp + 0xb0]
mov r12, qword [rsp + 0x70]
mov r15, qword [rsp + 0xd0]
mov rbp, qword [rsp + 0xb8]
movzx esi, byte [rsp + 0x120]
mov r13, qword [rsp + 0x108]
mov r14, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x100]
mov r8, qword [rsp + 0x50]
mov r11, qword [rsp + 0x110]
mov rdi, qword [rsp + 0x220]
jmp 0x140053883
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x228], rax
lea rdx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
jmp 0x140054060
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x228], rax
lea rdx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rcx, qword [rsp + 0x110]
mov qword [rcx + 8], 1
lea rax, [0x1400b5f08]
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
call fcn.140082a20
jmp 0x1400542a9
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rdx, r14
call fcn.140088f40
jmp 0x1400542a9
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rcx, r14
mov r13, qword [rsp + 0x38]
call fcn.140088ec0
jmp 0x1400542a9
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x228], rax
lea rdx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
jmp 0x140054114
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rdx, rsi
call fcn.140088f40
jmp 0x1400542a9
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rcx, rsi
mov rdx, qword [rsp + 0x70]
call fcn.140088ec0
jmp 0x1400542a9
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x228], rax
lea rdx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 8], 1
lea rax, [0x1400b5f08]
mov qword [rcx + 0x10], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x18], xmm0
call fcn.140082a20
jmp 0x1400542a9
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov edx, 0x2c
call fcn.140082ad0
jmp 0x1400542a9
lea rax, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov qword [rsp + 0x100], rax
jmp 0x1400541b5
lea rcx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
call fcn.140082770
jmp 0x1400542a9
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov edx, 0x2c
call fcn.140082ad0
jmp 0x1400542a9
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rcx, r9
call fcn.140088ec0
jmp 0x1400542a9
mov qword [rsp + 0x50], r9
mov rcx, rsi
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x100]
mov r13, qword [rsp + 0x38]
call fcn.140088f40
jmp 0x1400542a9
mov ecx, 8
mov edx, 0xf8
call fcn.1400735c0
jmp 0x1400542a9
lea rax, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov qword [rsp + 0x100], rax
jmp 0x140054237
lea rcx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
call fcn.140082770
jmp 0x1400542a9
mov ecx, 8
mov edx, 0xf8
call fcn.1400735c0
jmp 0x1400542a9
lea r8, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
mov rcx, rdx
mov rdx, r15
call fcn.140088ec0
jmp 0x1400542a9
mov qword [rsp + 0x50], rdx
mov rcx, rdi
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x100]
call fcn.140088f40
jmp 0x1400542a9
lea rcx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
call fcn.140082770
jmp 0x1400542a9
lea rcx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
call fcn.140082770
jmp 0x1400542a9
lea rcx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
call fcn.140082770
jmp 0x1400542a9
lea rcx, str._rustc_25ef9e3d85d934b27d9dada2f9dd52b1dc63bb04librarycore_src_slice_sort.rs
call fcn.140082770
jmp 0x1400542a9
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
mov rcx, r13
mov rdx, r10
call fcn.140088e40
jmp 0x1400542a9
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
mov rdx, r10
call fcn.140082c20
ud2