Function at 0x14003a930
Capabilities:
Encode data using xor
Enumerate process modules
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xd68
movdqa xmmword [rsp + 0xd50], xmm6
mov qword [rsp + 0x248], r8
mov qword [rsp + 0x1e0], rdx
mov rax, qword [rcx + 8]
lea rdi, [rax - 1]
test rax, rax
cmove rdi, rax
mov rax, qword [0x140094238]
test rax, rax
mov qword [rsp + 0xd0], rdi
jne 0x14003af11
movzx eax, byte [0x140094300]
mov ecx, 0x8c0
mov edx, 8
call fcn.140003cb0
test rax, rax
je 0x14003e68a
mov rbx, rax
mov qword [rsp + 0x730], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x738], xmm0
mov ecx, 8
xor edx, edx
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
cmp rax, 0xffffffffffffffff
je 0x14003ade7
mov r15, rax
mov qword [rsp + 0x30], rbx
lea rsi, [rsp + 0x2e0]
mov r8d, 0x438
mov rcx, rsi
xor edx, edx
call sub.msvcrt.dll_memset
mov dword [rsp + 0x2e0], 0x438
mov rcx, r15
mov rdx, rsi
call sub.KERNEL32.dll_Module32FirstW
cmp eax, 1
jne 0x14003adda
lea rbp, [rsp + 0x718]
mov eax, 8
mov qword [rsp + 0x40], rax
xor eax, eax
mov qword [rsp + 0x38], rax
lea r12, [rsp + 0x8e0]
mov qword [rsp + 0xb0], r15
jmp 0x14003aa79
mov rdi, qword [rsp + 0xd0]
mov r12, r15
mov r15, qword [rsp + 0xb0]
nop word cs:[rax + rax]
mov rcx, r15
lea rdx, [rsp + 0x2e0]
call sub.KERNEL32.dll_Module32NextW
cmp eax, 1
jne 0x14003adda
xor r8d, r8d
nop dword [rax]
cmp word [rsp + r8*2 + 0x510], 0
je 0x14003aae0
lea rax, [rsp + r8*2]
add rax, 0x510
cmp word [rax + 2], 0
je 0x14003aac7
cmp word [rax + 4], 0
je 0x14003aacc
cmp word [rax + 6], 0
je 0x14003aad2
cmp word [rax + 8], 0
je 0x14003aad8
add r8, 5
add rax, 0xa
cmp rax, rbp
jne 0x14003aa80
mov r8d, 0x104
jmp 0x14003aae0
inc r8
jmp 0x14003aae0
add r8, 2
jmp 0x14003aae0
add r8, 3
jmp 0x14003aae0
add r8, 4
nop dword [rax]
mov rcx, r12
lea rdx, [rsp + 0x510]
call fcn.14004a280
mov rsi, qword [rsp + 0x8e0]
mov rbx, qword [rsp + 0x8e8]
mov r14, qword [rsp + 0x8f0]
movzx r13d, byte [rsp + 0x8f8]
lea rcx, [rsp + 0x8f9]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x180], eax
mov dword [rsp + 0x183], ecx
mov rcx, r12
mov rdx, rsi
mov r8, r14
call fcn.14003a6f0
cmp qword [rsp + 0x8e0], 0
je 0x14003ac23
mov r15, r12
mov rdi, qword [rsp + 0x8e8]
mov r12, qword [rsp + 0x8f0]
mov rax, qword [rsp + 0x8f8]
cmp rax, 0x40
jb 0x14003ac00
test r12, r12
je 0x14003ac00
movzx ecx, word [r12]
cmp ecx, 0x5a4d
jne 0x14003ac00
mov edx, dword [r12 + 0x3c]
mov rcx, rax
sub rcx, rdx
setb r8b
lea r9, [r12 + rdx]
cmp rcx, 0x88
setb cl
or cl, r8b
mov ecx, 0
cmove rcx, r9
jne 0x14003ac00
cmp dword [rcx], 0x4550
jne 0x14003ac00
movzx r8d, word [rcx + 0x18]
cmp r8d, 0x20b
jne 0x14003ac00
movzx r8d, word [rcx + 0x14]
cmp r8, 0x70
jb 0x14003ac00
add rdx, 0x88
sub rax, rdx
jb 0x14003ac00
add r8, 0xffffffffffffff90
cmp rax, r8
jb 0x14003ac00
mov eax, dword [rcx + 0x84]
shl rax, 3
cmp rax, r8
jbe 0x14003ac3e
nop word cs:[rax + rax]
mov rcx, r12
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, rdi
call fcn.1400676d0
mov rdi, qword [rsp + 0xd0]
mov r12, r15
mov r15, qword [rsp + 0xb0]
test rbx, rbx
je 0x14003aa60
mov edx, 1
mov rcx, rsi
call fcn.140003d40
jmp 0x14003aa60
mov rax, qword [rcx + 0x30]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x2f8]
mov qword [rsp + 0x60], rax
movzx eax, byte [0x140094300]
mov ecx, 0x10
mov edx, 8
call fcn.140003cb0
test rax, rax
je 0x14003e739
mov edx, dword [rsp + 0x300]
mov rcx, qword [rsp + 0x48]
mov qword [rax], rcx
mov qword [rsp + 0x70], rax
mov qword [rax + 8], rdx
mov eax, dword [rsp + 0x180]
mov ecx, dword [rsp + 0x183]
mov dword [rsp + 0x8e3], ecx
mov dword [rsp + 0x8e0], eax
mov rcx, r12
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, rdi
call fcn.1400676d0
cmp r13b, 2
je 0x14003aa3e
mov rax, qword [rsp + 0x60]
sub rax, qword [rsp + 0x48]
mov qword [rsp + 0xb20], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xb28], rax
mov qword [rsp + 0xb30], 1
mov qword [rsp + 0xb38], 1
mov qword [rsp + 0xb40], rsi
mov qword [rsp + 0xb48], rbx
mov qword [rsp + 0xb50], r14
mov byte [rsp + 0xb58], r13b
mov eax, dword [rsp + 0x8e0]
mov ecx, dword [rsp + 0x8e3]
lea rdx, [rsp + 0xb59]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
mov rdx, qword [rsp + 0x38]
cmp rdx, qword [rsp + 0x738]
mov rdi, qword [rsp + 0xd0]
mov r12, r15
mov rcx, qword [rsp + 0x40]
jne 0x14003ad79
lea rcx, [rsp + 0x730]
call fcn.140043c70
mov r15, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x730]
mov rdx, qword [rsp + 0x740]
jmp 0x14003ad81
mov r15, qword [rsp + 0xb0]
mov rax, rdx
shl rax, 6
movdqu xmm0, xmmword [rsp + 0xb20]
movups xmm1, xmmword [rsp + 0xb30]
movups xmm2, xmmword [rsp + 0xb40]
movups xmm3, xmmword [rsp + 0xb50]
movups xmmword [rcx + rax + 0x30], xmm3
movups xmmword [rcx + rax + 0x20], xmm2
movups xmmword [rcx + rax + 0x10], xmm1
mov qword [rsp + 0x40], rcx
movdqu xmmword [rcx + rax], xmm0
inc rdx
mov rax, rdx
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x740], rdx
jmp 0x14003aa60
mov rcx, r15
call fcn.1400676d0
mov rbx, qword [rsp + 0x30]
movups xmm0, xmmword [rsp + 0x730]
movaps xmmword [rsp + 0x2e0], xmm0
mov rax, qword [rsp + 0x740]
mov qword [rsp + 0x2f0], rax
mov rsi, qword [0x140094238]
test rsi, rsi
je 0x14003aecd
mov rdi, qword [0x140094248]
test rdi, rdi
je 0x14003ae64
add rsi, 0x28
jmp 0x14003ae39
add rsi, 0x40
dec rdi
je 0x14003ae64
cmp qword [rsi], 0
je 0x14003ae4d
mov rcx, qword [rsi - 8]
mov edx, 1
call fcn.140003d40
cmp qword [rsi - 0x18], 0
je 0x14003ae30
mov rcx, qword [rsi - 0x20]
mov edx, 8
call fcn.140003d40
jmp 0x14003ae30
cmp qword [0x140094240], 0
je 0x14003ae7f
mov rcx, qword [0x140094238]
mov edx, 8
call fcn.140003d40
mov rcx, qword [0x140094250]
mov rdi, qword [0x140094260]
inc rdi
cmp rdi, 1
je 0x14003aeaa
lea rsi, [rcx + 0x230]
dec rdi
call fcn.1400402a0
mov rcx, rsi
jmp 0x14003ae90
cmp qword [0x140094258], 0
mov rdi, qword [rsp + 0xd0]
je 0x14003aecd
mov rcx, qword [0x140094250]
mov edx, 8
call fcn.140003d40
mov rax, qword [rsp + 0x2f0]
mov qword [0x140094248], rax
movdqa xmm0, xmmword [rsp + 0x2e0]
movdqu xmmword [0x140094238], xmm0
mov qword [0x140094250], rbx
mov qword [0x140094258], 4
mov qword [0x140094260], 0
mov rax, qword [0x140094238]
mov rdx, qword [0x140094248]
test rdx, rdx
je 0x14003e2fc
mov rcx, rdx
shl rcx, 6
add rcx, rax
xor ebp, ebp
mov r8, rax
mov r13, qword [r8]
mov r10, qword [r8 + 8]
mov r9, qword [r8 + 0x18]
add r8, 0x40
shl r9, 4
nop word cs:[rax + rax]
test r9, r9
je 0x14003af80
mov r11, r10
add r10, 0x10
mov rsi, qword [r11]
add rsi, r13
add r9, 0xfffffffffffffff0
cmp rsi, rdi
ja 0x14003af50
add rsi, qword [r11 + 8]
cmp rsi, rdi
jbe 0x14003af50
jmp 0x14003af8d
inc rbp
cmp r8, rcx
jne 0x14003af30
jmp 0x14003e2fc
mov r15, qword [0x140094250]
mov r14, qword [0x140094260]
test r14, r14
je 0x14003afc9
imul rcx, r14, 0x230
xor r8d, r8d
xor edi, edi
nop dword [rax]
cmp qword [r15 + r8], rbp
je 0x14003b202
inc rdi
add r8, 0x230
cmp rcx, r8
jne 0x14003afb0
cmp rdx, rbp
jbe 0x14003b38e
mov rcx, rbp
shl rcx, 6
mov rdx, qword [rax + rcx + 0x20]
mov r8, qword [rax + rcx + 0x30]
lea rcx, [rsp + 0x2e0]
call fcn.14003a6f0
cmp qword [rsp + 0x2e0], 0
je 0x14003e2fc
mov qword [rsp + 0xb0], r15
mov r12, qword [rsp + 0x2e8]
mov rdi, qword [rsp + 0x2f0]
mov rbx, qword [rsp + 0x2f8]
mov qword [rsp + 0x250], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x258], xmm0
mov qword [rsp + 0x268], 8
movdqu xmmword [rsp + 0x270], xmm0
xor eax, eax
cmp rbx, 0x40
cmovae rax, rdi
jb 0x14003d094
movzx ecx, word [rax]
cmp ecx, 0x5a4d
jne 0x14003d094
mov ecx, dword [rax + 0x3c]
mov rax, rbx
sub rax, rcx
setb dl
lea r8, [rdi + rcx]
cmp rax, 0x88
setb r9b
xor eax, eax
or r9b, dl
cmove rax, r8
jne 0x14003d094
cmp dword [rax], 0x4550
jne 0x14003d094
movzx edx, word [rax + 0x18]
cmp edx, 0x20b
jne 0x14003d094
movzx edx, word [rax + 0x14]
cmp rdx, 0x70
jb 0x14003d094
add rcx, 0x88
mov r8, rbx
sub r8, rcx
jb 0x14003d094
add rdx, 0xffffffffffffff90
cmp r8, rdx
jb 0x14003d094
mov r8d, dword [rax + 0x84]
shl r8, 3
cmp r8, rdx
ja 0x14003d094
add rdx, rcx
movzx ecx, word [rax + 6]
lea r8, [rcx*8]
lea r8, [r8 + r8*4]
mov r9, rbx
sub r9, rdx
setb r10b
add rdx, rdi
cmp r9, r8
setb r8b
xor r9d, r9d
or r8b, r10b
cmove r9, rdx
mov edx, 0x1f
cmove rdx, rcx
jne 0x14003d094
mov ecx, dword [rax + 0xc]
test rcx, rcx
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x38], rdx
je 0x14003b39f
mov esi, dword [rax + 0x10]
lea rdx, [rsi + rsi]
lea r10, [rdx + rdx*8]
mov rdx, rbx
sub rdx, rcx
setb r8b
lea r9, [rdi + rcx]
cmp rdx, r10
setb dl
xor r15d, r15d
or dl, r8b
cmove r15, r9
jne 0x14003d094
add r10, rcx
mov rcx, rbx
sub rcx, r10
jb 0x14003d094
cmp rcx, 4
jb 0x14003d094
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x178], r14
mov qword [rsp + 0xc0], r12
mov qword [rsp + 0xb8], rdi
mov ecx, dword [rdi + r10]
mov qword [rsp + 0x48], r10
add rcx, r10
mov qword [rsp + 0x70], rcx
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x2e0], 8
movdqu xmmword [rsp + 0x2e8], xmm0
test rsi, rsi
je 0x14003b3d1
mov eax, 8
xor edx, edx
xor r14d, r14d
mov r10, qword [rsp + 0x30]
mov r11, qword [rsp + 0x38]
jmp 0x14003b2f5
test rdi, rdi
je 0x14003de21
imul rbx, rdi, 0x230
lea rsi, [r15 + rbx]
lea rcx, [rsp + 0xb20]
mov r8d, 0x230
mov rdx, rsi
call sub.msvcrt.dll_memcpy
lea rdx, [r15 + rbx]
add rdx, 0x230
not rdi
add rdi, r14
imul r8, rdi, 0x230
mov rcx, rsi
call sub.msvcrt.dll_memmove
lea rsi, [r14 - 1]
mov qword [0x140094260], rsi
cmp rsi, qword [0x140094258]
mov rdi, qword [rsp + 0xd0]
jne 0x14003b277
mov rcx, rsi
call fcn.140044510
mov r15, qword [0x140094250]
lea rcx, [r15 + 0x230]
imul r8, rsi, 0x230
mov rdx, r15
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0xb20]
mov r8d, 0x230
mov rcx, r15
call sub.msvcrt.dll_memcpy
mov qword [0x140094260], r14
jmp 0x14003de29
add rbx, qword [rsp + 0x60]
add rdi, rbx
shl rdx, 4
mov qword [rax + rdx], rdi
mov rcx, qword [rsp + 0x40]
mov qword [rax + rdx + 8], rcx
mov rdx, qword [rsp + 0x2f0]
inc rdx
mov qword [rsp + 0x2f0], rdx
mov r10, qword [rsp + 0x30]
mov r11, qword [rsp + 0x38]
add r14, r12
inc r14
cmp r14, rsi
jae 0x14003b40e
cmp r14, rsi
jae 0x14003b3da
lea rcx, [r14 + r14*8]
movzx r12d, byte [r15 + rcx*2 + 0x11]
movzx r9d, word [r15 + rcx*2 + 0xc]
test r9, r9
je 0x14003b2e6
movzx r8d, word [r15 + rcx*2 + 0xe]
and r8d, 0x30
cmp r8w, 0x20
jne 0x14003b2e6
dec r9
lea r8, [r9 + r9*4]
lea r10, [r10 + r8*8]
mov r8, qword [rsp + 0x2e8]
cmp r9, r11
mov r9d, 0x1d
cmovae r10, r9
jae 0x14003b3e2
test r10, r10
je 0x14003b3e2
lea rcx, [r15 + rcx*2]
mov qword [rsp + 0x40], rcx
mov ebx, dword [rcx + 8]
mov edi, dword [r10 + 0xc]
cmp rdx, r8
jne 0x14003b2af
lea rcx, [rsp + 0x2e0]
call fcn.14000fbe0
mov rax, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2f0]
jmp 0x14003b2af
lea r8, [0x140087750]
mov rcx, rbp
call fcn.140009ed0
ud2
mov qword [rsp + 0xc0], r12
mov qword [rsp + 0x2e0], 8
movdqu xmmword [rsp + 0x2e8], xmm0
mov ecx, 8
xor esi, esi
xor r15d, r15d
xor eax, eax
mov qword [rsp + 0x48], rax
xor edx, edx
jmp 0x14003b436
mov ecx, 8
xor edx, edx
jmp 0x14003b416
mov r8, qword [rsp + 0x2e8]
test r8, r8
je 0x14003b3f9
mov rcx, qword [rsp + 0x2e0]
mov edx, 8
call fcn.140003d40
mov r12, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
jmp 0x14003d094
mov rcx, qword [rsp + 0x2e0]
mov rdi, qword [rsp + 0xb8]
mov rsi, rdi
mov r14, qword [rsp + 0x178]
mov rbx, qword [rsp + 0x170]
mov r15, qword [rsp + 0x70]
test rdx, rdx
je 0x14003b445
bsr rax, rdx
xor rax, 0x3f
jmp 0x14003b44a
mov eax, 0x40
mov qword [rsp + 0x178], r14
mov r9d, 0x40
sub r9d, eax
xor r8d, r8d
mov qword [rsp + 0xb8], rdi
call fcn.1400425f0
mov rax, qword [rsp + 0x2f0]
movdqu xmm0, xmmword [rsp + 0x2e0]
mov qword [rsp + 0x188], rbx
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x190], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x198], rcx
movdqu xmmword [rsp + 0x1a0], xmm0
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0x1b8], rsi
mov qword [rsp + 0x170], rbx
mov qword [rsp + 0x1c0], rbx
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x1c8], rax
mov qword [rsp + 0x1d0], r15
mov qword [rsp + 0x180], rdi
lea rdx, [0x140088349]
lea rsi, [rsp + 0x180]
mov r8d, 0xa
mov rcx, rsi
call fcn.14005c7e0
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x30], rdx
lea r12, str.description___is_deprecated__use_Displaycalled__Option::unwrap____on_a__None__value
cmove rax, r12
mov qword [rsp + 0x38], rax
lea rdx, [0x140088353]
mov r8d, 0xf
mov rcx, rsi
call fcn.14005c7e0
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x40], rdx
cmove rax, r12
mov qword [rsp + 0x48], rax
lea rdx, [0x1400874b3]
mov r8d, 0xd
mov rcx, rsi
call fcn.14005c7e0
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x60], rdx
cmove rax, r12
mov qword [rsp + 0x70], rax
lea rdx, [0x1400874c0]
mov r8d, 0xf
mov rcx, rsi
call fcn.14005c7e0
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x78], rdx
cmove rax, r12
mov qword [rsp + 0xf0], rax
lea rdx, str..debug_abbrev.debug_addr.debug_aranges.debug_info.debug_line.debug_line_str.debug_ranges.debug_rnglists.debug_str.debug_str_offsets.debug_typesstack_backtrace:_n
mov r8d, 0xd
mov rcx, rsi
call fcn.14005c7e0
test rax, rax
cmove rdx, rax
mov qword [rsp + 0xc8], rdx
cmove rax, r12
mov qword [rsp + 0x58], rax
lea rdx, [0x140087475]
mov r8d, 0xb
mov rcx, rsi
call fcn.14005c7e0
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x50], rdx
cmove rax, r12
mov qword [rsp + 0x68], rax
lea rdx, [0x140087480]
mov r8d, 0xe
mov rcx, rsi
call fcn.14005c7e0
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x120], rdx
cmove rax, r12
mov qword [rsp + 0xe8], rax
lea rdx, [0x14008748e]
mov r8d, 0xb
mov rcx, rsi
call fcn.14005c7e0
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x80], rdx
cmove rax, r12
mov qword [rsp + 0xa0], rax
lea rdx, [0x140087499]
mov r8d, 0xb
mov rcx, rsi
call fcn.14005c7e0
test rax, rax
cmove rdx, rax
mov qword [rsp + 0xa8], rdx
cmove rax, r12
mov qword [rsp + 0xe0], rax
lea rdx, [0x1400874a4]
mov r8d, 0xf
mov rcx, rsi
call fcn.14005c7e0
mov rbx, rax
test rax, rax
cmove rdx, rax
mov qword [rsp + 0x118], rdx
cmove rbx, r12
lea rdx, [0x1400874cf]
mov r8d, 0xa
mov rcx, rsi
call fcn.14005c7e0
mov r14, rax
mov r15, rdx
test rax, rax
cmove r15, rax
cmove r14, r12
lea rdx, [0x1400874d9]
mov r8d, 0x12
mov rcx, rsi
call fcn.14005c7e0
mov rsi, rax
mov rdi, rdx
lea rdx, [0x1400874eb]
mov r8d, 0xc
lea rcx, [rsp + 0x180]
call fcn.14005c7e0
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x2f0], rcx
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0x2f8], rcx
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x300], rcx
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x308], rcx
mov rcx, qword [rsp + 0xe8]
mov qword [rsp + 0x310], rcx
mov rcx, qword [rsp + 0x120]
mov qword [rsp + 0x318], rcx
mov rcx, qword [rsp + 0xa0]
mov qword [rsp + 0x320], rcx
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x328], rcx
mov rcx, qword [rsp + 0xe0]
mov qword [rsp + 0x330], rcx
mov rcx, qword [rsp + 0xa8]
mov qword [rsp + 0x338], rcx
mov qword [rsp + 0x340], rbx
mov rcx, qword [rsp + 0x118]
mov qword [rsp + 0x348], rcx
mov qword [rsp + 0x350], r14
mov qword [rsp + 0x358], r15
test rax, rax
cmove rdx, rax
cmove rax, r12
test rsi, rsi
cmove rdi, rsi
cmove rsi, r12
mov qword [rsp + 0x360], rsi
mov qword [rsp + 0x368], rdi
mov qword [rsp + 0x370], rax
mov qword [rsp + 0x378], rdx
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x380], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x388], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x390], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x398], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x3a0], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x3a8], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x3b0], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x3b8], rax
pxor xmm6, xmm6
movdqu xmmword [rsp + 0x3c0], xmm6
mov byte [rsp + 0x3d0], 0
mov qword [rsp + 0x2e0], 1
mov qword [rsp + 0x2e8], 1
movzx eax, byte [0x140094300]
mov ecx, 0xf8
mov edx, 8
call fcn.140003cb0
test rax, rax
je 0x14003e8bf
mov rsi, rax
lea rdx, [rsp + 0x2e0]
mov r8d, 0xf8
mov rcx, rax
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x1e8], rsi
mov rax, rsi
add rax, 0x10
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0x128], 8
movdqu xmmword [rsp + 0x130], xmm6
mov rax, qword [rsi + 0x30]
mov qword [rsp + 0xa8], rsi
mov r14, qword [rsi + 0x38]
mov qword [rsp + 0x2a8], rax
mov qword [rsp + 0x2b0], r14
mov qword [rsp + 0x2b8], 0
test r14, r14
je 0x14003c155
mov ebx, 8
xor r12d, r12d
xor edi, edi
jmp 0x14003b976
mov rbx, qword [rsp + 0x128]
mov r12, qword [rsp + 0x138]
shl r12, 4
mov qword [rbx + r12], r14
mov qword [rbx + r12 + 8], r15
mov r15, qword [rsp + 0x138]
lea r12, [r15 + 1]
mov qword [rsp + 0x138], r12
mov r14, rsi
test rsi, rsi
je 0x14003b9ed
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0x2a8]
mov r8, rdi
call fcn.140038390
cmp byte [rsp + 0x309], 3
je 0x14003d02f
mov r15, qword [rsp + 0x2f0]
mov rsi, qword [rsp + 0x2b0]
sub r14, rsi
mov rdi, r14
add rdi, qword [rsp + 0x2b8]
mov r14, qword [rsp + 0x300]
mov qword [rsp + 0x2b8], rdi
cmp r12, qword [rsp + 0x130]
jne 0x14003b94d
lea rcx, [rsp + 0x128]
mov rdx, r12
call fcn.14000fbe0
jmp 0x14003b93d
lea rcx, [rsp + 0x2e0]
mov qword [rsp + 0x2d8], rcx
mov rcx, qword [rsp + 0x128]
mov qword [rsp + 0x58], rcx
cmp r12, 0x15
mov qword [rsp + 0x50], r12
jae 0x14003ba39
cmp r12, 1
jbe 0x14003c155
mov r8d, 1
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
call fcn.140042130
jmp 0x14003c155
movabs rdx, 0x7fffffffffffffe0
lea rcx, [r12*8]
lea rax, [rdx + 0x10]
and rcx, rax
movzx eax, byte [0x140094300]
mov edx, 8
call fcn.140003cb0
mov qword [rsp + 0x30], rax
test rax, rax
je 0x14003e919
movzx eax, byte [0x140094300]
mov ecx, 0x100
mov edx, 8
call fcn.140003cb0
test rax, rax
je 0x14003e933
mov rdi, rax
mov eax, 1
sub rax, r15
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x58]
lea rcx, [rax + 0x20]
mov qword [rsp + 0x118], rcx
lea rcx, [rax + 0x10]
mov qword [rsp + 0x168], rcx
add rax, 0xfffffffffffffff0
mov qword [rsp + 0xe8], rax
mov eax, 0x10
mov qword [rsp + 0x80], rax
xor r11d, r11d
lea rax, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov qword [rsp + 0x240], rax
movabs r14, 0xffffffffffffffe
xor r15d, r15d
mov rdx, qword [rsp + 0x50]
jmp 0x14003bb16
mov r15d, 1
mov r11, qword [rsp + 0xa0]
cmp r11, rdx
jae 0x14003c139
mov rbx, r11
mov r8, rdx
sub r8, r11
mov rax, r11
shl rax, 4
mov rcx, qword [rsp + 0x58]
add rcx, rax
cmp r8, 2
jae 0x14003bf23
mov r11, rdx
mov rsi, r11
sub rsi, rbx
jb 0x14003e7d6
cmp r11, rdx
ja 0x14003e7d6
jae 0x14003bb87
cmp r8, 0xa
jae 0x14003bb87
lea rsi, [rbx + 0xa]
cmp rsi, rdx
cmovae rsi, rdx
mov r12, rsi
sub rsi, rbx
jb 0x14003e818
cmp r8, 1
adc r8, 0
mov rdx, rsi
call fcn.140042130
mov rdx, qword [rsp + 0x50]
mov r11, r12
cmp r15, qword [rsp + 0x80]
jne 0x14003bbf8
mov qword [rsp + 0x38], rbx
mov r12, r11
mov rbx, rdi
mov rcx, r15
shl rcx, 5
movzx eax, byte [0x140094300]
mov edx, 8
call fcn.140003cb0
test rax, rax
je 0x14003e82f
mov rdi, rax
lea rax, [r15 + r15]
mov qword [rsp + 0x80], rax
mov r8, r15
shl r8, 4
mov rcx, rdi
mov rdx, rbx
call sub.msvcrt.dll_memcpy
mov edx, 8
mov rcx, rbx
call fcn.140003d40
mov rdx, qword [rsp + 0x50]
mov r11, r12
mov rbx, qword [rsp + 0x38]
mov rax, r15
shl rax, 4
mov qword [rdi + rax], rsi
mov qword [rdi + rax + 8], rbx
inc r15
cmp r15, 2
jb 0x14003bb0d
mov qword [rsp + 0xa0], r11
mov qword [rsp + 0x68], rdi
jmp 0x14003bca8
mov rsi, rdi
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x78]
sub r14, rdx
mov rcx, rsi
mov r8, r14
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x70]
add rax, r12
mov rcx, qword [rsp + 0xf0]
mov qword [rcx], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0xc8]
mov qword [rcx], rax
lea rdx, [rbx + 0x10]
mov rax, qword [rsp + 0x48]
not rax
mov r8, qword [rsp + 0x38]
add r8, rax
shl r8, 4
mov rcx, rbx
call sub.msvcrt.dll_memmove
mov r15, qword [rsp + 0x40]
cmp r15, 1
mov rdi, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x50]
movabs r14, 0xffffffffffffffe
jbe 0x14003baff
mov qword [rsp + 0x38], r15
lea r11, [r15 - 1]
mov rcx, r11
shl rcx, 4
mov rax, qword [rdi + rcx]
mov rcx, qword [rdi + rcx + 8]
add rcx, rax
cmp rcx, rdx
je 0x14003bd20
mov r10, qword [rsp + 0x38]
shl r10, 4
mov r8, qword [r10 + rdi - 0x20]
cmp r8, rax
jbe 0x14003bd20
cmp qword [rsp + 0x38], 2
jbe 0x14003c06d
mov rcx, qword [rsp + 0x38]
lea rsi, [rcx - 3]
mov rcx, rsi
shl rcx, 4
mov rcx, qword [rdi + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x14003bd3c
cmp qword [rsp + 0x38], 3
jbe 0x14003c124
add r8, rcx
cmp qword [r10 + rdi - 0x40], r8
jbe 0x14003bd3c
jmp 0x14003c12f
cmp qword [rsp + 0x38], 3
jb 0x14003bd41
mov rcx, qword [rsp + 0x38]
lea rsi, [rcx - 3]
mov rcx, rsi
shl rcx, 4
mov rcx, qword [rdi + rcx]
cmp rcx, rax
jb 0x14003bd4a
mov rax, qword [rsp + 0x38]
lea rsi, [rax - 2]
cmp qword [rsp + 0x38], rsi
jbe 0x14003e6c4
mov qword [rsp + 0x40], r11
lea rax, [rsi + 1]
cmp qword [rsp + 0x38], rax
jbe 0x14003e6a9
mov r8, rsi
shl r8, 4
mov rcx, qword [rdi + r8 + 8]
shl rax, 4
mov r9, qword [rdi + rax]
mov r15, qword [rdi + rax + 8]
add r15, r9
mov rbx, r15
sub rbx, rcx
jb 0x14003e70b
mov qword [rsp + 0x48], rsi
cmp r15, rdx
ja 0x14003e722
mov qword [rsp + 0x70], r9
lea rdx, [rdi + r8]
mov qword [rsp + 0x78], rdx
mov r12, qword [rdi + r8]
lea rdx, [rdi + rax]
mov qword [rsp + 0xf0], rdx
lea rax, [rdi + rax + 8]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x60], rcx
mov rsi, rcx
shl rsi, 4
add rsi, qword [rsp + 0x58]
mov r14, r12
shl r14, 4
lea rdi, [rsi + r14]
shl r15, 4
mov rax, rbx
sub rax, r12
cmp rax, r12
jae 0x14003bea3
mov qword [rsp + 0x120], rax
mov r14, rax
shl r14, 4
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
mov r8, r14
call sub.msvcrt.dll_memcpy
add r14, rbx
test r12, r12
jle 0x14003bc27
cmp qword [rsp + 0x120], 0
mov rbx, qword [rsp + 0x78]
jle 0x14003be96
add r15, qword [rsp + 0xe8]
mov rax, rdi
mov rcx, r14
mov rdx, qword [r14 - 0x10]
mov r8, qword [rdi - 0x10]
cmp rdx, r8
mov edi, 0
sbb rdi, rdi
cmp rdx, r8
mov r14d, 0
adc r14, 0xffffffffffffffff
shl rdi, 4
add rdi, rax
shl r14, 4
add r14, rcx
cmp rdx, r8
mov rax, r14
cmovb rax, rdi
movdqu xmm0, xmmword [rax]
movdqu xmmword [r15], xmm0
cmp rdi, rsi
jbe 0x14003be96
add r15, 0xfffffffffffffff0
cmp r14, qword [rsp + 0x30]
ja 0x14003be3f
mov rsi, rdi
mov rdx, qword [rsp + 0x30]
jmp 0x14003bc34
mov rcx, qword [rsp + 0x30]
mov rdx, rsi
mov r8, r14
call sub.msvcrt.dll_memcpy
add r14, qword [rsp + 0x30]
test r12, r12
jle 0x14003bc2a
cmp rbx, r12
jle 0x14003bc2a
add r15, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x78]
mov r8, rdx
mov rcx, qword [rdi]
xor edx, edx
xor eax, eax
cmp rcx, qword [r8]
setae dl
setb cl
mov r9, r8
cmovb r9, rdi
movdqu xmm0, xmmword [r9]
movdqu xmmword [rsi], xmm0
add rsi, 0x10
shl rdx, 4
add rdx, r8
cmp rdx, r14
jae 0x14003bc34
mov al, cl
shl rax, 4
add rdi, rax
cmp rdi, r15
jb 0x14003bed9
jmp 0x14003bc34
mov r12, r15
mov r15, qword [rcx]
mov r9, qword [rcx + 0x10]
cmp r9, r15
jae 0x14003bf4a
cmp r8, 2
jne 0x14003bf62
lea r11, [rbx + 2]
mov r8d, 2
mov r15, r12
jmp 0x14003c021
cmp r8, 2
jne 0x14003bfac
lea r11, [rbx + 2]
mov r8d, 2
mov r15, r12
jmp 0x14003bb3b
mov qword [rsp + 0x68], rdi
mov rdx, qword [rsp + 0xe0]
mov r14, rbx
lea r11, [rdx + rbx]
mov rdx, qword [rsp + 0x118]
lea rsi, [rdx + rax]
mov r10d, 2
mov rdi, r9
mov rbx, rdi
mov rdi, qword [rsi]
cmp rdi, rbx
jae 0x14003bff7
lea rbx, [r11 + r10]
inc rbx
inc r10
add rsi, 0x10
cmp rbx, 2
jne 0x14003bf8b
jmp 0x14003bff4
mov qword [rsp + 0x68], rdi
mov rdx, qword [rsp + 0xe0]
mov r14, rbx
lea r11, [rdx + rbx]
mov rdx, qword [rsp + 0x118]
lea rsi, [rdx + rax]
mov r10d, 2
mov rdi, r9
mov rbx, rdi
mov rdi, qword [rsi]
cmp rdi, rbx
jb 0x14003bff7
lea rbx, [r11 + r10]
inc rbx
inc r10
add rsi, 0x10
cmp rbx, 2
jne 0x14003bfd5
mov r10, r8
mov rdi, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x50]
mov rbx, r14
lea r11, [r10 + r14]
mov r8, r10
cmp r9, r15
movabs r14, 0xffffffffffffffe
mov r15, r12
jae 0x14003bb3b
cmp rbx, r11
ja 0x14003e8a1
cmp r11, rdx
ja 0x14003e88a
cmp r8, 2
jb 0x14003bb3b
mov qword [rsp + 0xa0], r11
mov r12, rdi
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 0x14003c078
xor r10d, r10d
jmp 0x14003c0e2
mov r15d, 2
jmp 0x14003bb05
movabs r10, 0x7fffffffffffffe0
lea r11, [r10 + 0x1e]
and r11, rdx
add rax, qword [rsp + 0x168]
lea rsi, [rbx + r8]
shl rsi, 4
add rsi, qword [rsp + 0xe8]
xor r10d, r10d
movups xmm0, xmmword [rax - 0x10]
movups xmm1, xmmword [rsi]
movups xmmword [rax - 0x10], xmm1
movups xmmword [rsi], xmm0
mov rdi, r10
xor rdi, r14
add rdi, rdx
shl rdi, 4
movdqu xmm0, xmmword [rax]
movups xmm1, xmmword [r9 + rdi]
movups xmmword [rax], xmm1
movdqu xmmword [r9 + rdi], xmm0
add r10, 2
add rax, 0x20
add rsi, 0xffffffffffffffe0
cmp r11, r10
jne 0x14003c0a4
test r8b, 2
je 0x14003c10f
mov rax, r10
not rax
add rdx, rax
shl r10, 4
shl rdx, 4
movdqu xmm0, xmmword [rcx + r10]
movups xmm1, xmmword [r9 + rdx]
movups xmmword [rcx + r10], xmm1
movdqu xmmword [r9 + rdx], xmm0
mov rdi, r12
mov rdx, qword [rsp + 0x50]
mov r11, qword [rsp + 0xa0]
jmp 0x14003bb3b
mov r15d, 3
jmp 0x14003bb05
mov r15, qword [rsp + 0x38]
jmp 0x14003bb05
mov edx, 8
mov rcx, rdi
call fcn.140003d40
mov edx, 8
mov rcx, qword [rsp + 0x30]
call fcn.140003d40
mov qword [rsp + 0x88], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0x150], 8
movdqu xmmword [rsp + 0x158], xmm0
mov rax, qword [rsp + 0xd8]
movdqu xmm0, xmmword [rax + 0x30]
movdqu xmmword [rsp + 0x2c0], xmm0
mov qword [rsp + 0x2d0], 0
lea rbx, [rsp + 0x2f8]
lea r15, [rsp + 0x740]
lea r14, [rsp + 0x208]
lea r12, [rsp + 0x2e0]
lea rdi, [rsp + 0x2c0]
mov rcx, r12
mov rdx, rdi
call fcn.1400331c0
mov rcx, qword [rsp + 0x2e0]
cmp rcx, 3
je 0x14003cfca
mov rsi, qword [rsp + 0x2e8]
mov rax, qword [rsp + 0x2f0]
mov rdx, qword [rbx + 0x30]
mov qword [rsp + 0x760], rdx
movups xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movups xmm2, xmmword [rbx + 0x20]
movaps xmmword [rsp + 0x750], xmm2
movaps xmmword [rsp + 0x740], xmm1
movaps xmmword [rsp + 0x730], xmm0
movaps xmmword [rsp + 0xb10], xmm0
movdqu xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movdqa xmmword [rsp + 0x280], xmm0
movaps xmmword [rsp + 0x290], xmm1
mov rdx, qword [r15 + 0x20]
mov qword [rsp + 0x2a0], rdx
cmp ecx, 2
je 0x14003d0b6
test rcx, rcx
jne 0x14003c1cd
mov rcx, rax
or rcx, 4
cmp rcx, 5
je 0x14003c1cd
mov rdi, qword [rsp + 0x160]
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x1f0], 0
mov qword [rsp + 0x1f8], rsi
mov qword [rsp + 0x200], rax
movaps xmm0, xmmword [rsp + 0xb10]
movups xmmword [r14], xmm0
mov rax, qword [rsp + 0x2a0]
mov qword [r14 + 0x30], rax
movdqa xmm0, xmmword [rsp + 0x280]
movaps xmm1, xmmword [rsp + 0x290]
movups xmmword [r14 + 0x20], xmm1
movdqu xmmword [r14 + 0x10], xmm0
mov rcx, r12
lea r8, [rsp + 0x1f0]
call fcn.140059a60
cmp dword [rsp + 0x2e0], 2
jne 0x14003c302
lea rdi, [rsp + 0x2c0]
jmp 0x14003c1cd
mov r8d, 0x1a8
lea rbx, [rsp + 0x730]
mov rcx, rbx
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsp + 0x888]
lea rcx, [rdx + 0x10]
mov rax, qword [rsp + 0x758]
mov r9, qword [rsp + 0x760]
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x210], 0
mov qword [rsp + 0x200], rbx
dec r9
inc rax
xor ecx, ecx
xor r8d, r8d
jmp 0x14003c37f
movzx r10d, r10b
mov r11d, r10d
and r11d, 0x7f
shl r11, cl
or r8, r11
add ecx, 7
dec r9
inc rax
test r10b, r10b
jns 0x14003c3ae
cmp r9, 0xffffffffffffffff
je 0x14003cf98
mov qword [rsp + 0x1f0], rax
mov qword [rsp + 0x1f8], r9
movzx r10d, byte [rax - 1]
cmp ecx, 0x3f
jne 0x14003c360
cmp r10b, 1
jbe 0x14003c360
jmp 0x14003cf98
test r8, r8
jne 0x14003c495
lock dec qword [rdx]
jne 0x14003c3ca
mov rcx, qword [rsp + 0x888]
call fcn.14004f820
cmp dword [rsp + 0x790], 0x2f
lea rbx, [rsp + 0x2f8]
lea r14, [rsp + 0x208]
lea rdi, [rsp + 0x2c0]
lea r12, [rsp + 0x2e0]
je 0x14003c1cd
cmp qword [rsp + 0x7e8], 0
je 0x14003c415
mov rcx, qword [rsp + 0x7e0]
mov edx, 2
call fcn.140003d40
cmp qword [rsp + 0x800], 0
je 0x14003c432
mov rcx, qword [rsp + 0x7f8]
mov edx, 8
call fcn.140003d40
cmp qword [rsp + 0x818], 0
je 0x14003c44f
mov rcx, qword [rsp + 0x810]
mov edx, 2
call fcn.140003d40
cmp qword [rsp + 0x830], 0
lea rbx, [rsp + 0x2f8]
lea r14, [rsp + 0x208]
lea rdi, [rsp + 0x2c0]
lea r12, [rsp + 0x2e0]
je 0x14003c1cd
mov rcx, qword [rsp + 0x828]
mov edx, 8
call fcn.140003d40
jmp 0x14003c1cd
lea rax, [r8 - 1]
cmp rax, qword [rdx + 0x20]
jae 0x14003c4a9
imul rax, rax, 0x70
add rax, qword [rdx + 0x10]
jmp 0x14003c4bf
mov rcx, qword [rdx + 0x28]
mov rdx, qword [rdx + 0x30]
call fcn.1400451b0
test rax, rax
je 0x14003cf98
cmp byte [rax + 0x6a], 1
jne 0x14003c4d1
mov qword [rsp + 0x210], 1
mov rcx, rax
call fcn.14000fa40
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rdx
cmp qword [rsp + 0x30], 0
je 0x14003c8c4
shl qword [rsp + 0x30], 4
xor r14d, r14d
xor eax, eax
mov qword [rsp + 0x40], rax
xor eax, eax
mov qword [rsp + 0x60], rax
xor eax, eax
mov qword [rsp + 0x70], rax
xor r12d, r12d
xor ebx, ebx
jmp 0x14003c538
cmp eax, 0x26
mov eax, 1
mov rcx, qword [rsp + 0x40]
cmove ecx, eax
mov qword [rsp + 0x40], rcx
add r14, 0x10
cmp qword [rsp + 0x30], r14
je 0x14003c8e1
mov rax, qword [rsp + 0x38]
movdqu xmm0, xmmword [rax + r14]
movdqa xmmword [rsp + 0x140], xmm0
mov rax, qword [rsp + 0x200]
mov r8d, dword [rax + 0x48]
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0x1f0]
lea r9, [rsp + 0x140]
call fcn.140031460
mov rax, qword [rsp + 0x2e0]
cmp rax, 0x2e
je 0x14003cf98
movdqu xmm0, xmmword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2f8]
movdqu xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x110], rcx
movzx eax, cx
cmp eax, 0x12
jg 0x14003c674
cmp eax, 0x11
je 0x14003c756
cmp eax, 0x12
jne 0x14003c529
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0xf8]
call fcn.140032930
mov rax, qword [rsp + 0x2e0]
test rax, rax
je 0x14003c8a5
cmp eax, 7
je 0x14003c88d
cmp eax, 0xc
jne 0x14003c529
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0xd8]
movzx r9d, byte [rsp + 0x778]
mov r10, qword [rsp + 0x8c0]
mov rdx, qword [rcx + 0x10]
mov r8, qword [rcx + 0x18]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r10
lea rcx, [rsp + 0x140]
call fcn.140031410
cmp byte [rsp + 0x140], 0x4b
jne 0x14003cf98
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0xc8], rax
mov eax, 1
mov qword [rsp + 0x70], rax
jmp 0x14003c529
cmp eax, 0x13
je 0x14003c7ef
cmp eax, 0x55
jne 0x14003c529
mov rbx, qword [rsp + 0xd8]
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0xf8]
call fcn.140032930
mov rax, qword [rsp + 0x2e0]
cmp rax, 0x16
je 0x14003c82b
cmp eax, 0x18
jne 0x14003c886
mov rcx, qword [rsp + 0x8d0]
mov rax, qword [rbx + 0xc8]
mov qword [rsp + 0x48], rcx
sub rax, rcx
jb 0x14003cf98
mov r8d, dword [rsp + 0x778]
shr r8d, 8
movzx ecx, r8b
imul rcx, qword [rsp + 0x2e8]
sub rax, rcx
jb 0x14003cf98
mov rdx, qword [rbx + 0xc0]
add rdx, qword [rsp + 0x48]
add rdx, rcx
mov qword [rsp + 0x720], rdx
mov qword [rsp + 0x728], rax
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0x720]
call fcn.140036140
cmp byte [rsp + 0x140], 0x4b
jne 0x14003cf98
mov rax, qword [rsp + 0x48]
add rax, qword [rsp + 0x148]
mov qword [rsp + 0x48], rax
jmp 0x14003c860
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0xf8]
call fcn.140032930
mov rax, qword [rsp + 0x2e0]
test rax, rax
je 0x14003c86a
cmp eax, 0xc
jne 0x14003c529
mov rax, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0xd8]
movzx r9d, byte [rsp + 0x778]
mov r10, qword [rsp + 0x8c0]
mov rdx, qword [rcx + 0x10]
mov r8, qword [rcx + 0x18]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r10
lea rcx, [rsp + 0x140]
call fcn.140031410
cmp byte [rsp + 0x140], 0x4b
jne 0x14003cf98
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x78], rax
mov eax, 1
mov qword [rsp + 0x60], rax
jmp 0x14003c529
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0xf8]
call fcn.140032930
mov rax, qword [rsp + 0x2e0]
cmp rax, 0x26
jne 0x14003c514
movzx ecx, word [rsp + 0x2e8]
mov word [rsp + 0xf0], cx
jmp 0x14003c514
cmp word [rsp + 0x77a], 5
mov ecx, 0
jae 0x14003c843
mov rcx, qword [rsp + 0x8d0]
cmp byte [rbx + 0xe0], 0
mov eax, 0
cmove rcx, rax
add rcx, qword [rsp + 0x2e8]
mov qword [rsp + 0x48], rcx
mov ebx, 1
jmp 0x14003c529
mov eax, 1
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x78], rax
jmp 0x14003c529
xor ebx, ebx
jmp 0x14003c529
mov r12d, 1
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0x58], rax
jmp 0x14003c529
mov eax, 1
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0xc8], rax
jmp 0x14003c529
xor eax, eax
mov qword [rsp + 0x40], rax
xor eax, eax
mov qword [rsp + 0x60], rax
xor eax, eax
mov qword [rsp + 0x70], rax
xor r12d, r12d
jmp 0x14003ca3f
test rbx, rbx
je 0x14003ca3f
mov rdx, qword [rsp + 0xd8]
lea r8, [rdx + 0xb0]
mov eax, dword [rsp + 0x778]
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]
sub r8, qword [rsp + 0x48]
jb 0x14003cf98
mov r11, qword [rsp + 0x8b0]
mov rbx, qword [rsp + 0x8c0]
mov r9b, r10b
shl r9, 4
mov r9, qword [r9 + rdx + 0xb0]
add r9, qword [rsp + 0x48]
cmp cx, 5
movdqu xmm0, xmmword [rdx + 0x10]
mov qword [rsp + 0x2f0], r11
mov qword [rsp + 0x2f8], rbx
mov qword [rsp + 0x300], r9
mov qword [rsp + 0x308], r8
mov word [rsp + 0x310], ax
mov word [rsp + 0x312], cx
movdqu xmmword [rsp + 0x2e0], xmm0
setae byte [rsp + 0x314]
mov dword [rsp + 0x30], 0
lea rcx, [rsp + 0xf8]
lea rdx, [rsp + 0x2e0]
call fcn.1400338c0
mov rax, qword [rsp + 0xf8]
mov r14, qword [rsp + 0x100]
cmp rax, 1
jne 0x14003cbb4
mov rbx, qword [rsp + 0x108]
cmp r14, rbx
jae 0x14003c9a0
mov rdx, qword [rsp + 0x98]
cmp rdx, qword [rsp + 0x90]
jne 0x14003ca03
lea rcx, [rsp + 0x88]
call fcn.1400442c0
mov rdx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x88]
mov rcx, rdx
shl rcx, 5
mov qword [rax + rcx], r14
mov qword [rax + rcx + 8], rbx
mov qword [rax + rcx + 0x10], rdi
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0x98], rdx
mov al, 1
mov dword [rsp + 0x30], eax
jmp 0x14003c9a0
mov rax, qword [rsp + 0x138]
test rax, rax
je 0x14003caae
mov rdx, rax
mov rax, qword [rsp + 0x128]
mov rcx, rdx
mov r14, rdx
xor r11d, r11d
jmp 0x14003ca6a
mov rcx, r14
sub r14, r11
jbe 0x14003caae
shr r14, 1
add r14, r11
mov r8, r14
shl r8, 4
xor r9d, r9d
cmp qword [rax + r8], rsi
setne r9b
mov r10d, 0xff
cmovb r9d, r10d
cmp r9b, 1
je 0x14003ca62
movzx r9d, r9b
cmp r9d, 0xff
jne 0x14003cddf
mov r11, r14
inc r11
mov r14, rcx
jmp 0x14003ca62
cmp qword [rsp + 0x60], 0
je 0x14003cb1f
cmp qword [rsp + 0x70], 0
je 0x14003cb1f
mov rax, qword [rsp + 0xc8]
cmp qword [rsp + 0x78], rax
jae 0x14003cbcc
mov rdx, qword [rsp + 0x98]
cmp rdx, qword [rsp + 0x90]
jne 0x14003caf8
lea rcx, [rsp + 0x88]
call fcn.1400442c0
mov rdx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x88]
mov rcx, rdx
shl rcx, 5
mov r8, qword [rsp + 0x78]
mov qword [rax + rcx], r8
mov r8, qword [rsp + 0xc8]
mov qword [rax + rcx + 8], r8
jmp 0x14003cb93
mov dword [rsp + 0x30], 0
cmp qword [rsp + 0x60], 0
je 0x14003cbd4
test r12, r12
je 0x14003cbd4
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x78]
lea rbx, [rax + rcx]
cmp rcx, rbx
jae 0x14003cbcc
mov rdx, qword [rsp + 0x98]
cmp rdx, qword [rsp + 0x90]
jne 0x14003cb76
lea rcx, [rsp + 0x88]
call fcn.1400442c0
mov rdx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x88]
mov rcx, rdx
shl rcx, 5
mov r8, qword [rsp + 0x78]
mov qword [rax + rcx], r8
mov qword [rax + rcx + 8], rbx
mov qword [rax + rcx + 0x10], rdi
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0x98], rdx
mov al, 1
mov dword [rsp + 0x30], eax
jmp 0x14003cbd4
cmp eax, 2
jne 0x14003cbd4
cmp r14b, 0x4b
jne 0x14003cf98
shr r14d, 8
mov eax, r14d
jmp 0x14003cbda
mov dword [rsp + 0x30], 0
mov eax, dword [rsp + 0x30]
and al, 1
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x30]
and al, 1
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x1f0], 0
test byte [rsp + 0x30], 1
jne 0x14003cce5
cmp qword [rsp + 0x790], 0x2f
je 0x14003cce5
lea rax, [rsp + 0x790]
mov qword [rsp + 0xf8], rax
lea rax, [rsp + 0x730]
mov qword [rsp + 0x2e0], rax
lea rax, [rsp + 0xf8]
mov qword [rsp + 0x2e8], rax
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x2f0], rax
lea rcx, [rsp + 0x1f0]
lea rdx, [rsp + 0x2e0]
call fcn.140038fe0
cmp qword [rax], 0
je 0x14003cce5
mov rbx, qword [rax + 0x18]
test rbx, rbx
je 0x14003cce5
mov r12, qword [rax + 0x10]
mov rdx, qword [rsp + 0x98]
shl rbx, 5
xor r14d, r14d
jmp 0x14003ccbd
mov rax, qword [rsp + 0x88]
mov rcx, rdx
shl rcx, 5
movdqu xmmword [rax + rcx], xmm6
mov qword [rax + rcx + 0x10], rdi
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0x98], rdx
add r14, 0x20
cmp rbx, r14
je 0x14003cce5
movdqu xmm6, xmmword [r12 + r14 + 0x10]
cmp rdx, qword [rsp + 0x90]
jne 0x14003cc87
lea rcx, [rsp + 0x88]
call fcn.1400442c0
mov rdx, qword [rsp + 0x98]
jmp 0x14003cc87
mov r8d, 0x1a8
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0x730]
call sub.msvcrt.dll_memcpy
movdqu xmm0, xmmword [rsp + 0x1f0]
movups xmm1, xmmword [rsp + 0x200]
lea rcx, [rsp + 0x2f8]
movdqu xmmword [rcx + 0x198], xmm0
movups xmmword [rcx + 0x1a8], xmm1
mov rax, qword [rsp + 0x210]
mov qword [rcx + 0x1b8], rax
mov qword [rsp + 0x488], rsi
mov rax, qword [rsp + 0x40]
mov word [rsp + 0x4f0], ax
movzx eax, word [rsp + 0xf0]
mov word [rsp + 0x4f2], ax
mov qword [rsp + 0x4b8], 0
mov byte [rsp + 0x4e0], 0x4c
cmp rdi, qword [rsp + 0x158]
jne 0x14003cd92
lea rcx, [rsp + 0x150]
mov rdx, rdi
call fcn.140043f90
mov rdi, qword [rsp + 0x160]
imul rcx, rdi, 0x218
add rcx, qword [rsp + 0x150]
mov r8d, 0x218
lea r12, [rsp + 0x2e0]
mov rdx, r12
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [rsp + 0x160], rdi
lea rbx, [rsp + 0x2f8]
lea r14, [rsp + 0x208]
lea rdi, [rsp + 0x2c0]
jmp 0x14003c1cd
lea rcx, [r14 - 1]
cmp rcx, rdx
jae 0x14003ce12
inc r14
lea rcx, [rax + r8]
add rcx, 0xfffffffffffffff0
cmp r14, 1
je 0x14003ce1b
dec r14
lea r8, [rcx - 0x10]
cmp qword [rcx], rsi
mov rcx, r8
je 0x14003cdf3
cmp r14, rdx
jbe 0x14003ce1e
jmp 0x14003e981
test r14, r14
jne 0x14003e992
xor r14d, r14d
cmp r14, rdx
jne 0x14003ce30
mov dword [rsp + 0x30], 0
jmp 0x14003cbe8
shl rdx, 4
add rdx, rax
mov qword [rsp + 0x38], rdx
shl r14, 4
add r14, rax
mov dword [rsp + 0x30], 0
cmp qword [r14], rsi
jne 0x14003cbe8
mov rax, qword [rsp + 0xd8]
mov r9, qword [r14 + 8]
mov rdx, qword [rax + 0x20]
mov r8, qword [rax + 0x28]
lea rcx, [rsp + 0x2e0]
call fcn.140038350
movzx eax, byte [rsp + 0x309]
cmp eax, 3
je 0x14003cf98
add r14, 0x10
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2e8]
movzx r8d, byte [rsp + 0x308]
movzx r9d, byte [rsp + 0x30c]
movzx r10d, word [rsp + 0x30a]
shl r10d, 0x10
shl eax, 8
or eax, r8d
or eax, r10d
mov qword [rsp + 0xf8], rcx
mov qword [rsp + 0x100], rdx
mov dword [rsp + 0x108], eax
mov byte [rsp + 0x10c], r9b
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0xf8]
call fcn.140038680
mov rax, qword [rsp + 0x2e0]
cmp rax, 3
je 0x14003cf98
cmp eax, 2
je 0x14003cf88
mov rbx, qword [rsp + 0x2f8]
test rbx, rbx
je 0x14003cee1
mov r12, qword [rsp + 0x2f0]
mov rdx, qword [rsp + 0x98]
cmp rdx, qword [rsp + 0x90]
jne 0x14003cf49
lea rcx, [rsp + 0x88]
call fcn.1400442c0
mov rdx, qword [rsp + 0x98]
add rbx, r12
mov rax, qword [rsp + 0x88]
mov rcx, rdx
shl rcx, 5
mov qword [rax + rcx], r12
mov qword [rax + rcx + 8], rbx
mov qword [rax + rcx + 0x10], rdi
mov qword [rax + rcx + 0x18], 0
inc rdx
mov qword [rsp + 0x98], rdx
mov al, 1
mov dword [rsp + 0x30], eax
jmp 0x14003cee1
cmp r14, qword [rsp + 0x38]
jne 0x14003ce4b
jmp 0x14003cbe8
mov rax, qword [rsp + 0x888]
lock dec qword [rax]
jne 0x14003cfb3
mov rcx, qword [rsp + 0x888]
call fcn.14004f820
cmp dword [rsp + 0x790], 0x2f
je 0x14003cfca
lea rcx, [rsp + 0x790]
call fcn.140059540
mov rsi, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x160]
inc rbx
mov rcx, rsi
cmp rbx, 1
je 0x14003cffa
lea rdi, [rcx + 0x218]
dec rbx
call fcn.14003ffb0
mov rcx, rdi
jmp 0x14003cfe0
cmp qword [rsp + 0x158], 0
je 0x14003d012
mov edx, 8
mov rcx, rsi
call fcn.140003d40
cmp qword [rsp + 0x90], 0
je 0x14003d02f
mov rcx, qword [rsp + 0x88]
mov edx, 8
call fcn.140003d40
mov r12, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xa8]
cmp qword [rsp + 0x130], 0
je 0x14003d064
mov rcx, qword [rsp + 0x128]
mov edx, 8
call fcn.140003d40
lock dec qword [rsi]
jne 0x14003d077
lea rcx, [rsp + 0x1e8]
call fcn.14004f900
cmp qword [rsp + 0x1a8], 0
je 0x14003d094
mov rcx, qword [rsp + 0x1a0]
mov edx, 8
call fcn.140003d40
lea rcx, [rsp + 0x250]
call fcn.14003f150
mov rcx, rdi
call sub.KERNEL32.dll_UnmapViewOfFile
mov rcx, r12
call fcn.1400676d0
jmp 0x14003e2fc
mov qword [rsp + 0x118], r12
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x68], rax
cmp rax, 0x15
jae 0x14003d104
cmp qword [rsp + 0x68], 1
jbe 0x14003d74a
mov r8d, 1
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x68]
call fcn.140042200
jmp 0x14003d752
mov rax, qword [rsp + 0x68]
shl rax, 4
movabs rcx, 0x7fffffffffffffe0
and rcx, rax
movzx eax, byte [0x140094300]
mov edx, 8
call fcn.140003cb0
mov qword [rsp + 0x30], rax
test rax, rax
je 0x14003e94d
movzx eax, byte [0x140094300]
mov ecx, 0x100
mov edx, 8
call fcn.140003cb0
test rax, rax
je 0x14003e967
mov rdi, rax
mov rax, qword [rsp + 0x58]
lea rcx, [rax + 0x40]
mov qword [rsp + 0xe0], rcx
add rax, 0xffffffffffffffe0
mov qword [rsp + 0xe8], rax
mov eax, 0x10
mov qword [rsp + 0xa0], rax
lea rax, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov qword [rsp + 0x168], rax
xor eax, eax
xor r14d, r14d
mov rbx, qword [rsp + 0x30]
mov r15, qword [rsp + 0x68]
jmp 0x14003d1bc
mov r14d, 1
mov rax, qword [rsp + 0x80]
cmp rax, r15
jae 0x14003d716
mov rsi, rax
mov r8, r15
sub r8, rax
mov r9, rax
shl r9, 5
mov rax, qword [rsp + 0x58]
lea rcx, [rax + r9]
cmp r8, 2
jae 0x14003d22c
mov r12, rdi
mov rax, r15
mov rdi, rax
sub rdi, rsi
jb 0x14003e7f6
cmp rax, r15
ja 0x14003e7f6
jae 0x14003d258
cmp r8, 0xa
jae 0x14003d258
lea rdi, [rsi + 0xa]
cmp rdi, r15
cmovae rdi, r15
mov qword [rsp + 0x80], rdi
sub rdi, rsi
jb 0x14003e84c
cmp r8, 1
adc r8, 0
mov rdx, rdi
call fcn.140042200
jmp 0x14003d260
mov rax, qword [rcx]
mov rdx, qword [rcx + 0x20]
mov r12, rdi
cmp rdx, rax
jae 0x14003d5ec
cmp r8, 2
jne 0x14003d601
lea rax, [rsi + 2]
mov r8d, 2
jmp 0x14003d669
mov qword [rsp + 0x80], rax
cmp r14, qword [rsp + 0xa0]
jne 0x14003d2cc
mov qword [rsp + 0x38], rsi
mov rcx, r14
shl rcx, 5
movzx eax, byte [0x140094300]
mov edx, 8
call fcn.140003cb0
test rax, rax
je 0x14003e868
mov rsi, r14
mov r14, rax
lea rax, [rsi + rsi]
mov qword [rsp + 0xa0], rax
mov r8, rsi
shl r8, 4
mov rcx, r14
mov rdx, r12
call sub.msvcrt.dll_memcpy
mov edx, 8
mov rcx, r12
call fcn.140003d40
mov r12, r14
mov r14, rsi
mov rsi, qword [rsp + 0x38]
mov rax, r14
shl rax, 4
mov qword [r12 + rax], rdi
mov qword [r12 + rax + 8], rsi
inc r14
cmp r14, 2
mov rdi, r12
jb 0x14003d1ab
mov qword [rsp + 0x50], rdi
jmp 0x14003d368
mov rsi, rdi
mov rbx, rax
mov rdx, rax
mov rdi, qword [rsp + 0x50]
sub r15, rdx
mov rcx, rsi
mov r8, r15
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x70]
add rax, r12
mov rcx, qword [rsp + 0xf0]
mov qword [rcx], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0xc8]
mov qword [rcx], rax
mov rcx, qword [rsp + 0x78]
lea rdx, [rcx + 0x10]
mov rax, qword [rsp + 0x40]
not rax
mov r8, qword [rsp + 0x48]
add r8, rax
shl r8, 4
call sub.msvcrt.dll_memmove
mov r14, qword [rsp + 0x38]
cmp r14, 1
mov r15, qword [rsp + 0x68]
jbe 0x14003d1a5
mov r11, r14
lea r10, [r14 - 1]
mov rcx, r10
shl rcx, 4
mov rax, qword [rdi + rcx]
mov rcx, qword [rdi + rcx + 8]
add rcx, rax
cmp rcx, r15
je 0x14003d3d3
mov rdx, r11
shl rdx, 4
mov r8, qword [rdx + rdi - 0x20]
cmp r8, rax
jbe 0x14003d3d3
cmp r11, 2
jbe 0x14003d6f8
lea rsi, [r11 - 3]
mov rcx, rsi
shl rcx, 4
mov rcx, qword [rdi + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x14003d3e8
cmp r11, 3
jbe 0x14003d703
add r8, rcx
cmp qword [rdx + rdi - 0x40], r8
jbe 0x14003d3e8
jmp 0x14003d70e
cmp r11, 3
jb 0x14003d3ed
lea rsi, [r11 - 3]
mov rcx, rsi
shl rcx, 4
mov rcx, qword [rdi + rcx]
cmp rcx, rax
jb 0x14003d3f1
lea rsi, [r11 - 2]
cmp r11, rsi
jbe 0x14003e765
mov qword [rsp + 0x38], r10
lea rax, [rsi + 1]
cmp r11, rax
jbe 0x14003e74d
mov rdx, rsi
shl rdx, 4
mov rcx, qword [rdi + rdx + 8]
shl rax, 4
mov r8, qword [rdi + rax]
mov r14, qword [rdi + rax + 8]
add r14, r8
mov rbx, r14
sub rbx, rcx
jb 0x14003e7a9
mov qword [rsp + 0x40], rsi
cmp r14, r15
ja 0x14003e7bd
mov qword [rsp + 0x70], r8
mov qword [rsp + 0x48], r11
lea r8, [rdi + rdx]
mov qword [rsp + 0x78], r8
mov r12, qword [rdi + rdx]
lea rdx, [rdi + rax]
mov qword [rsp + 0xf0], rdx
lea rax, [rdi + rax + 8]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x60], rcx
mov rsi, rcx
shl rsi, 5
add rsi, qword [rsp + 0x58]
mov r15, r12
shl r15, 5
lea rdi, [rsi + r15]
shl r14, 5
mov rax, rbx
sub rax, r12
cmp rax, r12
jae 0x14003d552
mov qword [rsp + 0x120], rax
mov r15, rax
shl r15, 5
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
mov rdx, rdi
mov r8, r15
call sub.msvcrt.dll_memcpy
mov rax, rbx
add r15, rbx
test r12, r12
jle 0x14003d2f3
cmp qword [rsp + 0x120], 0
jle 0x14003d2f3
add r14, qword [rsp + 0xe8]
mov rbx, rax
mov rax, rdi
mov rcx, r15
mov rdx, qword [r15 - 0x20]
mov r8, qword [rdi - 0x20]
cmp rdx, r8
mov edi, 0
sbb rdi, rdi
cmp rdx, r8
mov r15d, 0
adc r15, 0xffffffffffffffff
shl rdi, 5
add rdi, rax
shl r15, 5
add r15, rcx
cmp rdx, r8
mov rax, r15
cmovb rax, rdi
movdqu xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r14 + 0x10], xmm1
movdqu xmmword [r14], xmm0
cmp rdi, rsi
jbe 0x14003d54a
add r14, 0xffffffffffffffe0
cmp r15, rbx
ja 0x14003d4ec
mov rsi, rdi
jmp 0x14003d5e4
mov rcx, qword [rsp + 0x30]
mov rdx, rsi
mov r8, r15
call sub.msvcrt.dll_memcpy
add r15, qword [rsp + 0x30]
test r12, r12
jle 0x14003d5df
cmp rbx, r12
mov r10, qword [rsp + 0x50]
jle 0x14003d5cf
add r14, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x30]
mov rdx, rbx
mov r8, rdx
mov rcx, qword [rdi]
xor edx, edx
xor eax, eax
cmp rcx, qword [r8]
setae dl
setb cl
mov r9, r8
cmovb r9, rdi
movdqu xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movups xmmword [rsi + 0x10], xmm1
movdqu xmmword [rsi], xmm0
add rsi, 0x20
shl rdx, 5
add rdx, r8
cmp rdx, r15
jae 0x14003d5d7
mov al, cl
shl rax, 5
add rdi, rax
cmp rdi, r14
jb 0x14003d583
jmp 0x14003d5d7
mov rbx, qword [rsp + 0x30]
mov rdx, rbx
mov rdi, r10
jmp 0x14003d301
mov rbx, qword [rsp + 0x30]
mov rdx, rbx
jmp 0x14003d2fc
cmp r8, 2
jne 0x14003d62b
lea rax, [rsi + 2]
mov r8d, 2
jmp 0x14003d1e1
add r9, qword [rsp + 0xe0]
mov r10d, 2
mov r11, rdx
mov rdi, r11
mov r11, qword [r9]
cmp r11, rdi
jae 0x14003d656
inc r10
add r9, 0x20
cmp r8, r10
jne 0x14003d612
jmp 0x14003d653
add r9, qword [rsp + 0xe0]
mov r10d, 2
mov r11, rdx
mov rdi, r11
mov r11, qword [r9]
cmp r11, rdi
jb 0x14003d656
inc r10
add r9, 0x20
cmp r8, r10
jne 0x14003d63c
mov r10, r8
lea r9, [r10 + rsi]
mov r8, r10
cmp rdx, rax
mov rax, r9
jae 0x14003d1e1
cmp rsi, rax
ja 0x14003e8ef
cmp rax, r15
ja 0x14003e8d3
cmp r8, 2
jb 0x14003d1e1
mov r10, rax
mov rax, r8
shr rax, 1
lea rdx, [rsi + r8]
shl rdx, 5
add rdx, qword [rsp + 0xe8]
mov r9, rcx
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movaps xmmword [rsp + 0x2f0], xmm1
movaps xmmword [rsp + 0x2e0], xmm0
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [r9 + 0x10], xmm1
movups xmmword [r9], xmm0
movdqa xmm0, xmmword [rsp + 0x2e0]
movaps xmm1, xmmword [rsp + 0x2f0]
movups xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx], xmm0
add r9, 0x20
add rdx, 0xffffffffffffffe0
dec rax
jne 0x14003d6a1
mov rax, r10
jmp 0x14003d1e1
mov r14d, 2
jmp 0x14003d1ab
mov r14d, 3
jmp 0x14003d1ab
mov r14, r11
jmp 0x14003d1ab
mov edx, 8
mov rcx, rdi
call fcn.140003d40
mov edx, 8
mov rcx, rbx
call fcn.140003d40
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x68], rax
cmp qword [rsp + 0x68], 0
je 0x14003d782
mov r8, qword [rsp + 0x68]
shl r8, 5
add r8, qword [rsp + 0x58]
xor eax, eax
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rcx + 8]
cmp rax, rdx
cmovbe rax, rdx
mov qword [rcx + 0x18], rax
lea rdx, [rcx + 0x20]
mov rcx, rdx
cmp rdx, r8
jne 0x14003d767
movdqu xmm6, xmmword [rsp + 0x90]
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x160]
mov qword [rsp + 0x38], rax
cmp qword [rsp + 0x130], 0
je 0x14003d7cf
mov rcx, qword [rsp + 0x128]
mov edx, 8
call fcn.140003d40
cmp qword [rsp + 0x58], 0
mov r12, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xa8]
je 0x14003d064
movq qword [rsp + 0x70], xmm6
mov rsi, qword [rsi + 0xe0]
test rsi, rsi
je 0x14003da13
mov qword [rsp + 0xf8], 8
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x100], xmm0
movdqu xmm0, xmmword [rsi + 0x40]
add rsi, 0x10
movdqu xmmword [rsp + 0x280], xmm0
mov qword [rsp + 0x290], 0
mov eax, 8
mov qword [rsp + 0x40], rax
xor eax, eax
mov qword [rsp + 0x30], rax
lea rdi, [rsp + 0x2e0]
lea r15, [rsp + 0x280]
lea r14, [rsp + 0x730]
lea r12, [rsp + 0x2f8]
jmp 0x14003d87c
cmp eax, 2
je 0x14003da29
mov rcx, rdi
mov rdx, r15
call fcn.1400331c0
mov rax, qword [rsp + 0x2e0]
cmp rax, 3
je 0x14003d9e1
mov rbx, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2f0]
mov rdx, qword [r12 + 0x30]
mov qword [rsp + 0x220], rdx
movdqu xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 0x10]
movups xmm2, xmmword [r12 + 0x20]
movaps xmmword [rsp + 0x210], xmm2
movaps xmmword [rsp + 0x200], xmm1
movdqa xmmword [rsp + 0x1f0], xmm0
test rax, rax
jne 0x14003d873
mov qword [rsp + 0x2e0], 0
mov qword [rsp + 0x2e8], rbx
mov qword [rsp + 0x2f0], rcx
mov rax, qword [rsp + 0x220]
mov qword [r12 + 0x30], rax
movdqa xmm0, xmmword [rsp + 0x1f0]
movaps xmm1, xmmword [rsp + 0x200]
movaps xmm2, xmmword [rsp + 0x210]
movups xmmword [r12 + 0x20], xmm2
movups xmmword [r12 + 0x10], xmm1
movdqu xmmword [r12], xmm0
mov rcx, r14
mov rdx, rsi
mov r8, rdi
call fcn.140059a60
cmp dword [rsp + 0x730], 2
je 0x14003d87c
mov r8d, 0x1a8
mov rcx, rdi
mov rdx, r14
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x488], rbx
mov rax, qword [rsp + 0x30]
cmp rax, qword [rsp + 0x100]
jne 0x14003d9aa
lea rcx, [rsp + 0xf8]
mov rdx, qword [rsp + 0x30]
call fcn.140044060
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x30], rax
mov rbx, qword [rsp + 0x30]
imul rcx, rbx, 0x1b0
add rcx, qword [rsp + 0x40]
mov r8d, 0x1b0
mov rdx, rdi
call sub.msvcrt.dll_memmove
inc rbx
mov rax, rbx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x108], rbx
jmp 0x14003d869
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x30]
call fcn.140040120
cmp qword [rsp + 0x100], 0
je 0x14003da9a
mov edx, 8
mov rcx, qword [rsp + 0x40]
call fcn.140003d40
jmp 0x14003da9a
mov eax, 8
mov qword [rsp + 0x40], rax
xor eax, eax
mov qword [rsp + 0x30], rax
xor r12d, r12d
jmp 0x14003da39
cmp qword [rsp + 0x40], 0
je 0x14003da9a
mov r12, qword [rsp + 0x100]
pshufd xmm0, xmm6, 0xee
movq rbx, xmm0
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x730], rax
mov rsi, qword [rsp + 0x58]
cmp rbx, qword [rsp + 0x70]
jae 0x14003db07
test rbx, rbx
je 0x14003daf3
mov rdi, rbx
shl rdi, 5
mov rcx, qword [rsp + 0x58]
mov rdx, rdi
call fcn.140003d60
mov rsi, rax
test rax, rax
jne 0x14003db07
mov ecx, 8
mov rdx, rdi
call fcn.1400059f0
jmp 0x14003e99e
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x38]
call fcn.1400406a0
cmp qword [rsp + 0x60], 0
je 0x14003dac0
mov edx, 8
mov rcx, qword [rsp + 0x48]
call fcn.140003d40
cmp qword [rsp + 0x70], 0
mov r12, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xa8]
je 0x14003d064
mov edx, 8
mov rcx, qword [rsp + 0x58]
jmp 0x14003d05f
mov esi, 8
mov edx, 8
mov rcx, qword [rsp + 0x58]
call fcn.140003d40
mov r15, qword [rsp + 0x48]
mov qword [rsp + 0x2e0], r15
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x2e8], rcx
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x2f0], rax
cmp rcx, rax
jbe 0x14003db80
cmp qword [rsp + 0x38], 0
je 0x14003db6b
imul rdi, qword [rsp + 0x38], 0x218
mov rcx, qword [rsp + 0x48]
mov rdx, rdi
call fcn.140003d60
mov r15, rax
test rax, rax
jne 0x14003db80
mov ecx, 8
mov rdx, rdi
call fcn.1400059f0
jmp 0x14003e99e
mov r15d, 8
mov edx, 8
mov rcx, qword [rsp + 0x48]
call fcn.140003d40
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x2e0], rax
mov qword [rsp + 0x2e8], r12
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x2f0], rax
cmp r12, rax
jbe 0x14003dbdf
cmp qword [rsp + 0x30], 0
je 0x14003dbe6
imul r14, qword [rsp + 0x30], 0x1b0
mov rcx, qword [rsp + 0x40]
mov rdx, r14
call fcn.140003d60
mov rdi, rax
test rax, rax
jne 0x14003dbfa
mov ecx, 8
mov rdx, r14
call fcn.1400059f0
jmp 0x14003e99e
mov rdi, qword [rsp + 0x40]
jmp 0x14003dbfa
mov edi, 8
mov edx, 8
mov rcx, qword [rsp + 0x40]
call fcn.140003d40
movups xmm0, xmmword [rsp + 0x180]
movups xmm1, xmmword [rsp + 0x190]
movups xmm2, xmmword [rsp + 0x1a0]
movups xmm3, xmmword [rsp + 0x1b0]
movups xmmword [rsp + 0xa68], xmm0
movups xmmword [rsp + 0xa78], xmm1
movups xmmword [rsp + 0xa88], xmm2
movups xmmword [rsp + 0xa98], xmm3
movups xmm0, xmmword [rsp + 0x1c0]
movups xmmword [rsp + 0xaa8], xmm0
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0xab8], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0xac0], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0xac8], rax
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0xad0], rax
movdqu xmm0, xmmword [rsp + 0x250]
movups xmm1, xmmword [rsp + 0x260]
movups xmm2, xmmword [rsp + 0x270]
movups xmmword [rsp + 0xaf8], xmm2
movups xmmword [rsp + 0xae8], xmm1
movdqu xmmword [rsp + 0xad8], xmm0
mov byte [rsp + 0x8e0], 0x16
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xa30], rax
mov qword [rsp + 0xa38], rsi
mov qword [rsp + 0xa40], rbx
mov qword [rsp + 0xa48], r15
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xa50], rax
mov qword [rsp + 0xa58], rdi
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0xa60], rax
mov rsi, qword [0x140094258]
cmp qword [rsp + 0x178], 4
jne 0x14003dd6b
mov qword [0x140094260], 3
mov rdx, qword [rsp + 0xb0]
add rdx, 0x690
lea rcx, [rsp + 0x2e0]
mov r8d, 0x230
call sub.msvcrt.dll_memcpy
cmp byte [rsp + 0x2e8], 0x17
je 0x14003dd6b
lea rcx, [rsp + 0x2e8]
call fcn.14003f210
mov rsi, qword [0x140094258]
lea rcx, [rsp + 0x2e8]
lea rdx, [rsp + 0x8e0]
mov r8d, 0x228
call sub.msvcrt.dll_memcpy
mov qword [rsp + 0x2e0], rbp
mov rdi, qword [0x140094260]
cmp rdi, rsi
jne 0x14003dda2
mov rcx, rsi
call fcn.140044510
mov r15, qword [0x140094250]
test rdi, rdi
je 0x14003de00
lea rcx, [r15 + 0x230]
imul r8, rdi, 0x230
mov rdx, r15
call sub.msvcrt.dll_memmove
lea rdx, [rsp + 0x2e0]
mov r8d, 0x230
mov rcx, r15
call sub.msvcrt.dll_memcpy
inc rdi
mov qword [0x140094260], rdi
mov rdi, qword [rsp + 0xd0]
jne 0x14003de29
lea r8, [0x140087768]
xor ecx, ecx
xor edx, edx
call fcn.140009ed0
ud2
lea rdx, [rsp + 0x2e0]
mov r8d, 0x230
mov rcx, r15
call sub.msvcrt.dll_memcpy
mov qword [0x140094260], 1
mov rdi, qword [rsp + 0xd0]
sub rdi, r13
lea rbx, [rdi + 1]
mov r14, qword [r15 + 0x160]
mov rdx, qword [r15 + 0x168]
xor ecx, ecx
test rdx, rdx
je 0x14003dea9
mov r8d, 0xff
mov rax, rdx
mov r9, rdx
jmp 0x14003de68
mov r9, rax
sub rax, rcx
jbe 0x14003dea9
shr rax, 1
add rax, rcx
mov r11, rax
shl r11, 5
xor r10d, r10d
cmp qword [r14 + r11], rbx
setne r10b
cmovb r10d, r8d
cmp r10b, 1
je 0x14003de60
movzx ecx, r10b
inc rax
cmp ecx, 0xff
jne 0x14003dea6
mov rcx, rax
mov rax, r9
sub rax, rcx
ja 0x14003de68
jmp 0x14003dea9
mov rcx, rax
mov qword [rsp + 0xb0], r15
cmp rcx, rdx
ja 0x14003e69b
test rcx, rcx
mov r12, rdi
je 0x14003e03d
mov rax, qword [rsp + 0xb0]
lea rsi, [rax + 0x158]
shl rcx, 5
lea r15, [rcx + r14]
add r15, 0xffffffffffffffe0
neg rcx
jmp 0x14003defe
add r15, 0xffffffffffffffe0
add rcx, 0x20
je 0x14003e03d
cmp qword [r15 + 0x18], rdi
jbe 0x14003e03d
cmp qword [r15 + 8], rdi
jbe 0x14003def0
cmp rbx, qword [r15]
jbe 0x14003def0
mov rcx, qword [r15 + 0x10]
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rax + 0x178]
cmp rcx, rdx
jae 0x14003e67c
imul rdi, rcx, 0x218
add rdi, qword [rax + 0x170]
lea rcx, [rsp + 0x8e0]
mov rdx, rdi
mov r8, rsi
call fcn.140056fa0
mov qword [rsp + 0x250], rdi
mov qword [rsp + 0x260], r12
mov qword [rsp + 0x258], rsi
cmp qword [rsp + 0x910], 0
je 0x14003e318
lea rax, [rsp + 0x910]
movups xmm0, xmmword [rsp + 0x8e0]
movups xmm1, xmmword [rsp + 0x8f0]
movups xmm2, xmmword [rsp + 0x900]
movaps xmmword [rsp + 0xb40], xmm2
movaps xmmword [rsp + 0xb30], xmm1
movaps xmmword [rsp + 0xb20], xmm0
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x200], rcx
movdqu xmm0, xmmword [rax]
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x208], rax
mov rax, qword [rsp + 0x258]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x218], rax
movdqa xmmword [rsp + 0xb50], xmm0
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0xb60], rax
mov rax, qword [rsp + 0x208]
mov qword [rsp + 0xb68], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0xb70], rax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0xb78], rax
jmp 0x14003e341
movups xmm0, xmmword [rsp + 0x2e4]
movups xmm1, xmmword [rsp + 0x2f4]
movups xmm2, xmmword [rsp + 0x304]
movups xmm3, xmmword [rsp + 0x314]
movaps xmmword [rsp + 0x180], xmm0
movaps xmmword [rsp + 0x190], xmm1
movaps xmmword [rsp + 0x1a0], xmm2
movaps xmmword [rsp + 0x1b0], xmm3
movdqu xmm0, xmmword [rsp + 0x324]
movdqa xmmword [rsp + 0x1c0], xmm0
mov eax, dword [rsp + 0x334]
mov dword [rsp + 0x1d0], eax
mov eax, 3
mov dword [rsp + 0x2e0], eax
movaps xmm0, xmmword [rsp + 0x180]
movaps xmm1, xmmword [rsp + 0x190]
movaps xmm2, xmmword [rsp + 0x1a0]
movaps xmm3, xmmword [rsp + 0x1b0]
movups xmmword [rsp + 0x2e4], xmm0
movups xmmword [rsp + 0x2f4], xmm1
movups xmmword [rsp + 0x304], xmm2
movups xmmword [rsp + 0x314], xmm3
movdqa xmm0, xmmword [rsp + 0x1c0]
movdqu xmmword [rsp + 0x324], xmm0
mov eax, dword [rsp + 0x1d0]
mov dword [rsp + 0x334], eax
lea rcx, [rsp + 0xb20]
lea rdx, [rsp + 0x2e0]
call fcn.14005c350
mov rbx, qword [rsp + 0xb20]
cmp rbx, 1
ja 0x14003e26e
mov rax, qword [rsp + 0xb0]
lea rsi, [rax + 0x190]
cmp word [rsp + 0xb60], 2
jne 0x14003e15a
mov rcx, rsi
mov rdi, r12
mov rdx, r12
call fcn.14005c940
jmp 0x14003e16d
mov rax, qword [rsp + 0xb50]
mov rdx, qword [rsp + 0xb58]
mov rdi, r12
lea r13, [rsp + 0xb30]
movdqu xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movaps xmmword [rsp + 0x8f0], xmm1
movdqa xmmword [rsp + 0x8e0], xmm0
mov qword [rsp + 0x900], rdi
mov qword [rsp + 0x908], rax
mov qword [rsp + 0x910], rdx
mov rax, qword [rsp + 0x248]
mov rbp, qword [rax + 0x20]
lea rdx, [rsp + 0x8e0]
mov rcx, qword [rsp + 0x1e0]
call rbp
lea rdi, [rsp + 0xb20]
lea r14, [rsp + 0x2e0]
lea r15, [rsp + 0x8e0]
jmp 0x14003e241
mov rax, qword [rsp + 0xb50]
mov rdx, qword [rsp + 0xb58]
movdqu xmm0, xmmword [r13]
movups xmm1, xmmword [r13 + 0x10]
movaps xmmword [rsp + 0x8f0], xmm1
movdqa xmmword [rsp + 0x8e0], xmm0
mov qword [rsp + 0x900], r12
mov qword [rsp + 0x908], rax
mov qword [rsp + 0x910], rdx
mov rcx, qword [rsp + 0x1e0]
mov rdx, r15
call rbp
mov rcx, rdi
mov rdx, r14
call fcn.14005c350
cmp dword [rsp + 0xb20], 2
jae 0x14003e26e
cmp word [rsp + 0xb60], 2
jne 0x14003e1f0
mov rcx, rsi
mov rdx, r12
call fcn.14005c940
jmp 0x14003e200
mov eax, dword [rsp + 0x2e0]
add eax, 0xfffffffd
cmp eax, 2
jb 0x14003e29a
cmp qword [rsp + 0x320], 0
je 0x14003e29a
mov rcx, qword [rsp + 0x318]
mov edx, 8
call fcn.140003d40
cmp ebx, 2
mov rsi, r12
jb 0x14003e2fc
mov rcx, qword [rsp + 0xb0]
add rcx, 0x190
mov rdx, rsi
call fcn.14005c940
test rax, rax
je 0x14003e2fc
mov dword [rsp + 0x2e0], 3
mov qword [rsp + 0x2e8], rax
mov qword [rsp + 0x2f0], rdx
mov qword [rsp + 0x2f8], rsi
lea rdx, [rsp + 0x2e0]
mov rcx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x248]
call qword [rax + 0x20]
movaps xmm6, xmmword [rsp + 0xd50]
add rsp, 0xd68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0xb20]
lea rdx, [rsp + 0x250]
lea r8, [rsp + 0x8e0]
call fcn.140053d00
mov qword [rsp + 0xb50], 0
mov qword [rsp + 0x8f8], rsi
mov qword [rsp + 0x900], r12
mov qword [rsp + 0x908], rbx
mov qword [rsp + 0x910], r14
mov qword [rsp + 0x918], r15
mov qword [rsp + 0x920], rbx
mov qword [rsp + 0x928], r12
mov byte [rsp + 0x930], 0
mov qword [rsp + 0x8e0], r12
mov qword [rsp + 0x8e8], rdi
mov qword [rsp + 0x8f0], rsi
lea rcx, [rsp + 0x2e0]
lea rdx, [rsp + 0xb20]
lea r8, [rsp + 0x8e0]
call fcn.140056940
cmp byte [rsp + 0x390], 2
jne 0x14003e438
mov eax, dword [rsp + 0x2e0]
movups xmm0, xmmword [rsp + 0x2e4]
movaps xmmword [rsp + 0x180], xmm0
movups xmm0, xmmword [rsp + 0x2f4]
movaps xmmword [rsp + 0x190], xmm0
movups xmm0, xmmword [rsp + 0x304]
movaps xmmword [rsp + 0x1a0], xmm0
movups xmm0, xmmword [rsp + 0x314]
movaps xmmword [rsp + 0x1b0], xmm0
movdqu xmm0, xmmword [rsp + 0x324]
movdqa xmmword [rsp + 0x1c0], xmm0
mov ecx, dword [rsp + 0x334]
mov dword [rsp + 0x1d0], ecx
cmp eax, 5
jne 0x14003e0a2
mov rsi, r12
jmp 0x14003e2a2
lea rbx, [rsp + 0x8f1]
lea r13, [rsp + 0x328]
lea rsi, [rsp + 0xb20]
lea rdi, [rsp + 0x8e0]
lea r15, [rsp + 0x2e0]
jmp 0x14003e565
mov rax, qword [rbp + 0x200]
movzx ecx, byte [rbp + 0x208]
mov edx, dword [rbp + 0x20c]
mov dword [rsp + 0xb23], edx
mov edx, dword [rbp + 0x209]
mov dword [rsp + 0xb20], edx
mov edx, 1
mov r8d, dword [rsp + 0xb20]
mov r9d, dword [rsp + 0xb23]
mov dword [rbx + 3], r9d
mov dword [rbx], r8d
mov qword [rsp + 0x8e0], rdx
mov qword [rsp + 0x8e8], rax
mov byte [rsp + 0x8f0], cl
mov qword [rsp + 0x8f8], rbp
mov rcx, rsi
lea rdx, [rsp + 0x280]
mov r8, rdi
call fcn.140053d00
mov qword [rsp + 0xb50], 0
mov rax, qword [rsp + 0x780]
mov qword [rsp + 0x930], rax
movaps xmm0, xmmword [rsp + 0x770]
movaps xmmword [rsp + 0x920], xmm0
movdqa xmm0, xmmword [rsp + 0x730]
movaps xmm1, xmmword [rsp + 0x740]
movaps xmm2, xmmword [rsp + 0x750]
movaps xmm3, xmmword [rsp + 0x760]
movaps xmmword [rsp + 0x910], xmm3
movaps xmmword [rsp + 0x900], xmm2
movaps xmmword [rsp + 0x8f0], xmm1
movdqa xmmword [rsp + 0x8e0], xmm0
mov rcx, r15
mov rdx, rsi
mov r8, rdi
call fcn.140056940
cmp byte [rsp + 0x390], 2
je 0x14003e3c0
movups xmm0, xmmword [rsp + 0x2e0]
movups xmm1, xmmword [rsp + 0x2f0]
movups xmm2, xmmword [rsp + 0x300]
movaps xmmword [rsp + 0xb40], xmm2
movaps xmmword [rsp + 0xb30], xmm1
movaps xmmword [rsp + 0xb20], xmm0
mov rbp, qword [rsp + 0x310]
mov r14, qword [rsp + 0x320]
movups xmm0, xmmword [r13]
movaps xmmword [rsp + 0x280], xmm0
mov rax, qword [r13 + 0x10]
mov qword [rsp + 0x290], rax
movups xmm0, xmmword [r13 + 0x18]
movups xmm1, xmmword [r13 + 0x28]
movups xmm2, xmmword [r13 + 0x38]
movups xmm3, xmmword [r13 + 0x48]
movaps xmmword [rsp + 0x730], xmm0
movaps xmmword [rsp + 0x740], xmm1
movaps xmmword [rsp + 0x750], xmm2
movaps xmmword [rsp + 0x760], xmm3
movups xmm0, xmmword [r13 + 0x58]
movaps xmmword [rsp + 0x770], xmm0
mov rax, qword [r13 + 0x68]
mov qword [rsp + 0x780], rax
mov rax, qword [rsp + 0xb20]
lock dec qword [rax]
jne 0x14003e621
mov rcx, rsi
call fcn.14004f900
movzx eax, byte [rbp + 0x200]
cmp eax, 0x4b
je 0x14003e64e
cmp eax, 0x4c
jne 0x14003e465
mov qword [rbp + 0x200], 0x4b
mov qword [rbp + 0x208], 0
jmp 0x14003e66c
mov rdx, qword [rbp + 0x208]
test rdx, rdx
je 0x14003e66c
mov rax, qword [rdx]
add rax, 0x10
add rdx, 8
mov cl, 2
mov rbp, rdx
jmp 0x14003e675
mov rax, qword [r14]
add rax, 0x10
xor ecx, ecx
xor edx, edx
jmp 0x14003e492
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
call fcn.140009ed0
ud2
mov ecx, 8
mov edx, 0x8c0
call fcn.1400059f0
ud2
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
call fcn.14000a940
ud2
mov rbx, rdi
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x2e0], rax
lea rdx, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
jmp 0x14003e6dd
mov rbx, rdi
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x2e0], rax
lea rdx, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov rcx, qword [rsp + 0x2d8]
mov qword [rcx + 8], 1
lea rax, str.description___is_deprecated__use_Displaycalled__Option::unwrap____on_a__None__value
mov qword [rcx + 0x10], rax
pxor xmm0, xmm0
movdqu xmmword [rcx + 0x18], xmm0
call fcn.140009d20
jmp 0x14003e99e
mov rbx, rdi
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov rdx, r15
call fcn.14000a9c0
jmp 0x14003e99e
mov rbx, rdi
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov rcx, r15
call fcn.14000a940
jmp 0x14003e99e
mov ecx, 8
mov edx, 0x10
call fcn.1400059f0
jmp 0x14003e99e
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x2e0], rax
lea rdx, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
jmp 0x14003e77b
lea rax, str.Index_out_of_bounds
mov qword [rsp + 0x2e0], rax
lea rdx, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov rcx, qword [rsp + 0x118]
mov qword [rcx + 8], 1
lea rax, str.description___is_deprecated__use_Displaycalled__Option::unwrap____on_a__None__value
mov qword [rcx + 0x10], rax
pxor xmm0, xmm0
movdqu xmmword [rcx + 0x18], xmm0
call fcn.140009d20
jmp 0x14003e99e
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov rdx, r14
call fcn.14000a9c0
jmp 0x14003e99e
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov rcx, r14
mov rdx, qword [rsp + 0x68]
call fcn.14000a940
jmp 0x14003e99e
mov rbx, rdi
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov edx, 0x2c
call fcn.140009e20
jmp 0x14003e99e
mov qword [rsp + 0x50], r12
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov edx, 0x2c
call fcn.140009e20
jmp 0x14003e99e
mov rcx, rbx
mov rbx, rdi
lea rax, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov qword [rsp + 0x240], rax
jmp 0x14003e8aa
lea rcx, [0x14008ab18]
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.140009e20
jmp 0x14003e99e
mov rcx, rsi
mov qword [rsp + 0x50], r12
lea rax, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov qword [rsp + 0x168], rax
jmp 0x14003e8ff
mov qword [rsp + 0x50], r12
lea rcx, [0x14008ab18]
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.140009e20
jmp 0x14003e99e
mov rbx, rdi
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov rcx, r11
call fcn.14000a940
jmp 0x14003e99e
mov rcx, rbx
mov r12, r11
mov rbx, rdi
mov rdx, r12
mov r8, qword [rsp + 0x240]
call fcn.14000a9c0
jmp 0x14003e99e
mov ecx, 8
mov edx, 0xf8
call fcn.1400059f0
jmp 0x14003e99e
mov qword [rsp + 0x50], r12
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov rcx, rax
mov rdx, r15
call fcn.14000a940
jmp 0x14003e99e
mov rcx, rsi
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x50], r12
mov rdx, qword [rsp + 0x80]
mov r8, qword [rsp + 0x168]
call fcn.14000a9c0
jmp 0x14003e99e
lea rcx, [0x14008ab18]
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.140009e20
jmp 0x14003e99e
lea rcx, [0x14008ab18]
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.140009e20
jmp 0x14003e99e
lea rcx, [0x14008ab18]
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.140009e20
jmp 0x14003e99e
lea rcx, [0x14008ab18]
lea r8, str._rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_src_slice_sort.rs
mov edx, 0x2b
call fcn.140009e20
jmp 0x14003e99e
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
mov rcx, r14
call fcn.14000a8c0
jmp 0x14003e99e
lea r8, str._rust_deps_addr2line_0.21.0_srclib.rs
call fcn.140009ed0
ud2