Function at 0x10021140
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2c8
movaps xmmword [rsp + 0x2b0], xmm7
movaps xmmword [rsp + 0x2a0], xmm6
mov qword [rsp + 0x260], r9
mov rax, r8
mov qword [rsp + 0x258], rdx
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 8
mov qword [rsp + 0xa0], 0
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0xb0], 8
mov qword [rsp + 0xb8], 0
movzx ebx, byte [r8 + 0xec]
movdqu xmm7, xmmword [r8 + 0xb0]
lea rcx, [rsp + 0xf0]
mov r8d, 0xf8
mov rdx, rax
call fcn.100360a0
xorps xmm6, xmm6
movups xmmword [rsp + 0x1e8], xmm6
mov qword [rsp + 0x1f8], 1
mov qword [rsp + 0x200], 1
movups xmmword [rsp + 0x208], xmm6
movups xmmword [rsp + 0x211], xmm6
mov byte [rsp + 0x221], bl
mov dword [rsp + 0x222], 0
movdqu xmmword [rsp + 0x228], xmm7
mov r12d, 8
mov r14d, 0x12
xor edx, edx
mov eax, 8
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x88], rax
xor r8d, r8d
xor eax, eax
mov qword [rsp + 0x250], r8
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0x60], r12
test al, al
je 0x100212cb
movzx eax, byte [rsp + 0x1dc]
lea rcx, [rsp + 0xf0]
movups xmmword [rcx + 0xf8], xmm6
mov qword [rsp + 0x1f8], 1
mov qword [rsp + 0x200], 1
mov byte [rsp + 0x220], 0
movups xmmword [rcx + 0x118], xmm6
mov byte [rsp + 0x221], al
mov byte [rsp + 0x223], 0
mov qword [rsp + 0x218], 0
mov byte [rsp + 0x222], 0
mov word [rsp + 0x224], 0
mov rdx, qword [rsp + 0x230]
test rdx, rdx
je 0x100224eb
mov qword [rsp + 0x38], rax
xor r13d, r13d
jmp 0x1002133c
mov qword [rsp + 0x218], 0
mov byte [rsp + 0x222], 0
mov word [rsp + 0x224], 0
nop word cs:[rax + rax]
mov rdx, r8
test r8, r8
je 0x100224eb
mov rdi, r13
mov r9, qword [rsp + 0x228]
lea r8, [rdx - 1]
lea rax, [r9 + 1]
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], r8
movzx r10d, byte [r9]
test r10d, r10d
je 0x100213a0
cmp r10b, byte [rsp + 0x1e1]
jae 0x10021410
mov ecx, r10d
dec ecx
cmp ecx, 0xb
ja case.default.0x10021392
lea r10, [0x10038f60]
movsxd rcx, dword [r10 + rcx*4]
add rcx, r10
jmp rcx
mov ebp, 0x2f
jmp 0x10021429
test r8, r8
je 0x1002236b
lea r8, [rdx - 2]
xor r10d, r10d
xor ecx, ecx
nop word cs:[rax + rax]
lea r11, [rax + 1]
movzx ebp, byte [rax]
cmp ecx, 0x3f
jne 0x100213d6
cmp bpl, 2
jae 0x1002236f
movzx r14d, bpl
mov r13d, r14d
and r13d, 0x7f
shl r13, cl
or r10, r13
test r14b, r14b
jns 0x100214a6
add ecx, 7
mov rax, r11
add r8, 0xffffffffffffffff
jb 0x100213c0
jmp 0x10022351
movzx eax, r10b
movd ecx, xmm7
and ecx, 0xffffff00
or ecx, eax
movd xmm7, ecx
mov ebp, 0x2e
movd eax, xmm7
mov rcx, r12
shl rcx, 0x20
movzx edx, bl
shl edx, 0x18
movzx r13d, r15b
shl r13d, 0x10
or r13d, edx
or r13, rcx
or edi, eax
lea rax, [rbp - 0x2e]
cmp rax, 0x15
cmovae rax, r14
lea rcx, [0x10038fc0]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
movzx ecx, byte [rsp + 0x1e0]
test cl, cl
je 0x1002324e
sub dil, byte [rsp + 0x1e1]
movzx eax, dil
div cl
movzx ecx, ah
movsx rdx, byte [rsp + 0x1df]
add rcx, rdx
js 0x10021bf0
add rcx, qword [rsp + 0x200]
jmp 0x10021c0b
sub r8, r10
mov r13, qword [rsp + 0x58]
jb 0x10022f10
lea rcx, [r11 + r10]
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x230], r8
test r10, r10
je 0x10022f10
lea rdx, [r10 - 1]
movzx ecx, byte [rax + 1]
add rax, 2
lea r9d, [rcx - 1]
cmp r9d, 3
ja case.default.0x100214ff
lea r11, [0x10038f90]
movsxd rcx, dword [r11 + r9*4]
add rcx, r11
mov r14d, 0x12
jmp rcx
mov ebp, 0x3e
jmp 0x10021429
movzx eax, di
or rax, r13
mov qword [rsp + 0x210], rax
jmp case.0x10021464.13
mov byte [rsp + 0x224], 1
jmp case.0x10021464.13
mov byte [rsp + 0x222], 1
jmp case.0x10021464.13
movzx ecx, byte [rsp + 0x1e0]
mov edx, 0x19
test cl, cl
je 0x1002323e
movzx eax, byte [rsp + 0x1e1]
not al
movzx eax, al
div cl
movzx eax, al
movzx ecx, byte [rsp + 0x1dd]
movzx r9d, byte [rsp + 0x1de]
cmp r9d, 1
jne 0x10021b6a
imul rcx, rax
add qword [rsp + 0x1e8], rcx
mov qword [rsp + 0x1f0], 0
jmp case.0x10021464.13
movzx eax, di
or rax, r13
mov qword [rsp + 0x208], rax
jmp case.0x10021464.13
mov byte [rsp + 0x225], 1
jmp case.0x10021464.13
movzx eax, di
or rax, r13
js 0x10021bc8
add qword [rsp + 0x200], rax
jmp case.0x10021464.13
mov byte [rsp + 0x223], 1
mov al, 1
jmp 0x10021fd3
movzx eax, di
or rax, r13
mov qword [rsp + 0x218], rax
jmp case.0x10021464.13
movzx eax, di
jmp 0x1002161c
movzx eax, di
or rax, r13
movzx ecx, byte [rsp + 0x1dd]
movzx r9d, byte [rsp + 0x1de]
cmp r9d, 1
jne 0x10021b60
imul rax, rcx
add qword [rsp + 0x1e8], rax
mov qword [rsp + 0x1f0], 0
jmp case.0x10021464.13
movzx eax, di
or rax, r13
xor ecx, ecx
sub cl, byte [rsp + 0x1d8]
shl cl, 3
mov rdx, 0xffffffffffffffff
shr rdx, cl
cmp rax, rdx
sete byte [rsp + 0x220]
mov qword [rsp + 0x1e8], rax
mov qword [rsp + 0x1f0], 0
jmp case.0x10021464.13
xor byte [rsp + 0x221], 1
jmp case.0x10021464.13
movzx eax, di
or rax, r13
mov qword [rsp + 0x1f8], rax
jmp case.0x10021464.13
mov rdx, qword [rsp + 0x188]
cmp rdx, qword [rsp + 0x178]
jne 0x100216bc
lea rcx, [rsp + 0x178]
call fcn.10018320
mov rdx, qword [rsp + 0x188]
mov rax, qword [rsp + 0x30]
shl rax, 8
movzx ecx, sil
or rcx, rax
mov rax, qword [rsp + 0x180]
mov r8, rdx
shl r8, 6
mov qword [rax + r8], rbp
movzx r9d, di
or r9, r13
mov qword [rax + r8 + 8], r9
mov qword [rax + r8 + 0x10], rcx
mov rcx, qword [rsp + 0x38]
mov byte [rax + r8 + 0x18], cl
mov r9, qword [rsp + 0x248]
mov dword [rax + r8 + 0x19], r9d
mov rcx, r9
shr rcx, 0x30
mov byte [rax + r8 + 0x1f], cl
mov rcx, r9
shr rcx, 0x20
mov word [rax + r8 + 0x1d], cx
mov rcx, qword [rsp + 0xd8]
mov qword [rax + r8 + 0x20], rcx
mov rcx, qword [rsp + 0xe0]
mov qword [rax + r8 + 0x28], rcx
movups xmmword [rax + r8 + 0x30], xmm6
inc rdx
mov qword [rsp + 0x188], rdx
mov r8, qword [rsp + 0x230]
jmp case.0x10021464.13
test r8, r8
je 0x1002236b
lea r8, [rdx - 2]
lea r10, [r9 + 2]
xor eax, eax
xor ecx, ecx
nop dword [rax]
movzx r11d, byte [r10 - 1]
cmp ecx, 0x3f
jne 0x10021784
cmp r11b, 2
jae 0x10022ecb
movzx r11d, r11b
mov ebx, r11d
and ebx, 0x7f
shl rbx, cl
or rax, rbx
test r11b, r11b
jns 0x10021cd1
add ecx, 7
inc r10
add r8, 0xffffffffffffffff
jb 0x10021770
jmp 0x10022351
test r8, r8
je 0x1002236b
lea r8, [rdx - 2]
lea r10, [r9 + 2]
xor eax, eax
xor ecx, ecx
nop word cs:[rax + rax]
movzx r11d, byte [r10 - 1]
cmp ecx, 0x3f
jne 0x100217e4
cmp r11b, 2
jae 0x10022ee7
movzx r11d, r11b
mov ebx, r11d
and ebx, 0x7f
shl rbx, cl
or rax, rbx
test r11b, r11b
jns 0x10021d07
add ecx, 7
inc r10
add r8, 0xffffffffffffffff
jb 0x100217d0
jmp 0x10022351
mov ebp, 0x38
jmp 0x10021429
dec rdx
xor r10d, r10d
xor ecx, ecx
xor eax, eax
jmp 0x1002184b
mov ebx, r11d
and ebx, 0x7f
shl rbx, cl
or rax, rbx
add ecx, 7
inc r10
test r11b, r11b
jns 0x10021c86
cmp rdx, r10
je 0x10022c62
dec r8
lea r11, [r9 + r10]
add r11, 2
mov qword [rsp + 0x228], r11
mov qword [rsp + 0x230], r8
movzx r11d, byte [r9 + r10 + 1]
cmp ecx, 0x3f
jne 0x10021830
cmp r11d, 0x7f
je 0x10021830
test r11d, r11d
je 0x10021830
jmp 0x10022f70
test r8, r8
je 0x1002236b
lea r8, [rdx - 2]
lea r10, [r9 + 2]
xor eax, eax
xor ecx, ecx
nop
movzx r11d, byte [r10 - 1]
cmp ecx, 0x3f
jne 0x100218b4
cmp r11b, 2
jae 0x10022e8d
movzx r11d, r11b
mov ebx, r11d
and ebx, 0x7f
shl rbx, cl
or rax, rbx
test r11b, r11b
jns 0x10021d40
add ecx, 7
inc r10
add r8, 0xffffffffffffffff
jb 0x100218a0
jmp 0x10022351
mov ebp, 0x36
jmp 0x10021429
test r8, r8
je 0x1002236b
lea r8, [rdx - 2]
lea r10, [r9 + 2]
xor eax, eax
xor ecx, ecx
nop dword [rax]
movzx r11d, byte [r10 - 1]
cmp ecx, 0x3f
jne 0x10021914
cmp r11b, 2
jae 0x10022eac
movzx r11d, r11b
mov ebx, r11d
and ebx, 0x7f
shl rbx, cl
or rax, rbx
test r11b, r11b
jns 0x10021d79
add ecx, 7
inc r10
add r8, 0xffffffffffffffff
jb 0x10021900
jmp 0x10022351
mov ebp, 0x34
jmp 0x10021429
mov ebp, 0x35
jmp 0x10021429
mov ebp, 0x39
jmp 0x10021429
cmp r8, 1
jbe 0x10022f2b
add rdx, 0xfffffffffffffffd
lea rax, [r9 + 3]
mov qword [rsp + 0x228], rax
mov qword [rsp + 0x230], rdx
movzx eax, word [r9 + 1]
movd xmm7, eax
mov ebp, 0x37
mov r8, rdx
jmp 0x10021429
mov rcx, qword [rsp + 0x190]
mov r11, qword [rsp + 0x198]
lea ebp, [r10 - 1]
movzx r14d, bpl
cmp r11, r14
jb 0x1002310f
add rcx, r14
cmp r11, r14
je 0x10023137
movzx r11d, byte [rcx]
test r11d, r11d
je 0x10021db2
cmp r11d, 1
mov r14d, 0x12
jne 0x10021dd6
test r8, r8
je 0x10022fd0
lea r8, [rdx - 2]
lea r11, [r9 + 2]
xor eax, eax
xor ecx, ecx
movzx ebx, byte [r11 - 1]
cmp ecx, 0x3f
jne 0x10021a06
cmp bl, 2
jae 0x10022f95
movzx esi, bl
mov ebx, esi
and ebx, 0x7f
shl rbx, cl
or rax, rbx
test sil, sil
jns 0x1002203d
add ecx, 7
inc r11
add r8, 0xffffffffffffffff
jb 0x100219f3
jmp 0x10022fb6
cmp word [rsp + 0x1da], 5
jae 0x10021b92
test rdx, rdx
je 0x10022f2b
lea r11, [r10 - 3]
add r10, 0xfffffffffffffffc
xor esi, esi
mov rcx, rax
nop word cs:[rax + rax]
cmp byte [rcx], 0
je 0x10021f37
inc rcx
inc rsi
dec r11
dec r10
cmp rdx, rsi
jne 0x10021a60
jmp 0x10022f2b
test rdx, rdx
je 0x1002236b
xor r9d, r9d
xor ecx, ecx
mov r10, rdx
mov r11, rax
nop word cs:[rax + rax]
movzx ebx, byte [r11]
cmp ecx, 0x3f
jne 0x10021ab2
cmp bl, 2
jae 0x10022f06
movzx ebx, bl
mov r14d, ebx
and r14d, 0x7f
shl r14, cl
or r9, r14
test bl, bl
jns 0x10021eb3
dec r10
inc r11
add ecx, 7
test r10, r10
jne 0x10021aa0
jmp 0x10022f23
movzx ecx, byte [rsp + 0x1d8]
lea r9d, [rcx - 1]
cmp r9d, 7
ja case.0x10021b01.3
lea r10, [0x10038fa0]
movsxd r9, dword [r10 + r9*4]
add r9, r10
jmp r9
test rdx, rdx
je 0x100231c3
movzx eax, byte [rax]
movd xmm7, eax
xor r12d, r12d
mov ebp, 0x3f
xor r15d, r15d
xor ebx, ebx
jmp 0x10021429
movd xmm7, eax
mov r15d, eax
shr r15d, 0x10
mov ebx, eax
shr ebx, 0x18
shr rax, 0x20
mov r9, rdx
shr r9, 8
mov qword [rsp + 0x30], r9
mov ebp, 0x42
mov r12d, eax
mov esi, edx
mov qword [rsp + 0x38], rcx
mov r14d, 0x12
jmp 0x10021429
test r9d, r9d
jne 0x10021b73
jmp 0x10023263
test r9d, r9d
je 0x10023268
add rax, qword [rsp + 0x1f0]
mov rdx, rax
shr rdx, 0x20
je 0x10021c68
xor edx, edx
div r9
jmp 0x10021c6d
movd xmm7, eax
mov r15d, eax
shr r15d, 0x10
mov ebx, eax
shr ebx, 0x18
shr rax, 0x20
mov rcx, rdx
shr rcx, 8
mov qword [rsp + 0x30], rcx
mov ebp, 0x42
mov cl, 3
mov qword [rsp + 0x38], rcx
mov r12d, eax
mov esi, edx
jmp 0x10021429
mov rdx, rax
neg rdx
mov rcx, qword [rsp + 0x200]
cmp rcx, rdx
jae 0x10021fa2
mov qword [rsp + 0x200], 0
jmp case.0x10021464.13
mov rdx, qword [rsp + 0x200]
lea r9, [rdx + rcx]
neg rcx
cmp rdx, rcx
mov ecx, 0
cmovae rcx, r9
mov qword [rsp + 0x200], rcx
movzx eax, al
movzx ecx, byte [rsp + 0x1dd]
movzx r9d, byte [rsp + 0x1de]
cmp r9d, 1
jne 0x10021c40
imul rcx, rax
add qword [rsp + 0x1e8], rcx
xor edx, edx
jmp 0x10021fc3
test r9d, r9d
je 0x10023263
add rax, qword [rsp + 0x1f0]
mov rdx, rax
shr rdx, 0x20
je 0x10021fb2
xor edx, edx
div r9
jmp 0x10021fb7
xor edx, edx
div r9d
imul rax, rcx
add qword [rsp + 0x1e8], rax
mov qword [rsp + 0x1f0], rdx
jmp case.0x10021464.13
mov rdx, 0xffffffffffffffff
shl rdx, cl
cmp r11b, 0x40
mov r9d, 0
cmovb rdx, r9
cmp ecx, 0x40
cmovge rdx, r9
or rax, rdx
mov r15d, eax
shr r15d, 0x10
movd xmm7, eax
mov ebx, eax
shr ebx, 0x18
mov r12, rax
shr r12, 0x20
mov ebp, 0x31
mov qword [rsp + 0x238], rax
jmp 0x10021429
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x230], r8
mov r15d, eax
shr r15d, 0x10
movd xmm7, eax
mov ebx, eax
shr ebx, 0x18
mov r12, rax
shr r12, 0x20
mov ebp, 0x3a
mov qword [rsp + 0x70], rax
jmp 0x10021429
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x230], r8
mov r15d, eax
shr r15d, 0x10
movd xmm7, eax
mov ebx, eax
shr ebx, 0x18
mov r12, rax
shr r12, 0x20
mov ebp, 0x33
mov qword [rsp + 0xc0], rax
jmp 0x10021429
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x230], r8
mov r15d, eax
shr r15d, 0x10
movd xmm7, eax
mov ebx, eax
shr ebx, 0x18
mov r12, rax
shr r12, 0x20
mov ebp, 0x32
mov qword [rsp + 0x240], rax
jmp 0x10021429
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x230], r8
mov r15d, eax
shr r15d, 0x10
movd xmm7, eax
mov ebx, eax
shr ebx, 0x18
mov r12, rax
shr r12, 0x20
mov ebp, 0x30
mov qword [rsp + 0xc8], rax
jmp 0x10021429
movzx eax, r10b
movd ecx, xmm7
and ecx, 0xffffff00
or ecx, eax
movd xmm7, ecx
mov ebp, 0x3b
mov r14d, 0x12
jmp 0x10021429
mov rcx, rax
mov rbp, r8
xor r13d, r13d
test rbp, rbp
je 0x10022f6c
mov qword [rsp + 0x38], r13
lea r9, [rbp - 1]
mov qword [rsp + 0x30], rcx
lea rsi, [rcx + 1]
xor edx, edx
xor ecx, ecx
nop
movzx r14d, byte [rsi - 1]
cmp ecx, 0x3f
jne 0x10021e14
cmp r14b, 2
jae 0x10022f37
movzx r13d, r14b
mov r14d, r13d
and r14d, 0x7f
shl r14, cl
or rdx, r14
test r13b, r13b
jns 0x10021e3b
add ecx, 7
inc rsi
add r9, 0xffffffffffffffff
jb 0x10021e00
jmp 0x10022f50
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x230], r9
mov r13, qword [rsp + 0x38]
inc r13
mov rcx, rsi
mov rbp, r9
mov qword [rsp + 0x78], rdx
cmp r13, r11
mov r14d, 0x12
jne 0x10021ddf
sub rsi, rax
cmp r8, rsi
jb 0x10023318
movd xmm7, eax
mov r15d, eax
shr r15d, 0x10
mov ebx, eax
shr ebx, 0x18
shr rax, 0x20
mov rcx, rsi
shr rcx, 8
mov qword [rsp + 0x30], rcx
mov ebp, 0x3d
mov r8, r9
mov r12d, eax
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x78], rdx
jmp 0x10021429
mov r15d, r9d
shr r15d, 0x10
movd xmm7, r9d
mov ebx, r9d
shr ebx, 0x18
mov r12, r9
shr r12, 0x20
mov ebp, 0x41
mov qword [rsp + 0x58], r9
mov r14d, 0x12
jmp 0x10021429
cmp rdx, 1
jbe 0x100231ec
movzx r12d, word [rax]
jmp 0x10021f12
cmp rdx, 8
jb 0x10023175
mov r12, qword [rax]
movq xmm7, r12
jmp 0x10021f1c
cmp rdx, 3
jbe 0x100231d6
mov r12d, dword [rax]
mov qword [rsp + 0x47], r12
movd xmm7, r12d
mov r15d, r12d
shr r15d, 0x10
mov ebx, r12d
shr ebx, 0x18
shr r12, 0x20
mov ebp, 0x3f
jmp 0x10021429
mov rcx, rsi
not rcx
lea r12, [rax + rsi]
inc r12
add rdx, rcx
je 0x10023100
xor ecx, ecx
mov qword [rsp + 0x38], rcx
xor ecx, ecx
mov r15, r12
movzx ebx, byte [r15]
mov r9b, 6
cmp ecx, 0x3f
jne 0x10021f6e
cmp bl, 2
jae 0x10022f8c
movzx r14d, bl
mov r13d, r14d
and r13d, 0x7f
shl r13, cl
lea rbx, [r15 + 1]
or qword [rsp + 0x38], r13
test r14b, r14b
jns 0x1002207e
add ecx, 7
dec r10
mov r15, rbx
add r11, 0xffffffffffffffff
jb 0x10021f59
jmp 0x100230fd
add rcx, rax
mov qword [rsp + 0x200], rcx
jmp case.0x10021464.13
xor edx, edx
div r9d
imul rax, rcx
add qword [rsp + 0x1e8], rax
mov qword [rsp + 0x1f0], rdx
movzx eax, byte [rsp + 0x223]
cmp byte [rsp + 0x220], 0
je 0x10022173
test al, al
je 0x10021304
movzx eax, byte [rsp + 0x1dc]
lea rcx, [rsp + 0xf0]
movups xmmword [rcx + 0xf8], xmm6
mov qword [rsp + 0x1f8], 1
mov qword [rsp + 0x200], 1
movups xmmword [rcx + 0x121], xmm6
movups xmmword [rcx + 0x118], xmm6
mov byte [rsp + 0x221], al
mov dword [rsp + 0x222], 0
jmp case.0x10021464.13
mov qword [rsp + 0x228], r11
mov qword [rsp + 0x230], r8
movd xmm7, eax
mov r15, rax
shr r15, 0x10
mov ebx, eax
shr ebx, 0x18
mov r12, rax
shr r12, 0x20
mov ebp, 0x3c
mov word [rsp + 0x6e], ax
mov esi, r10d
mov qword [rsp + 0x298], r15
jmp 0x10021429
test r11, r11
je 0x1002314a
inc r11
xor r13d, r13d
xor ecx, ecx
movzx edx, byte [rbx]
cmp ecx, 0x3f
jne 0x100220a0
cmp dl, 2
jae 0x10022f8c
movzx r14d, dl
mov r12d, r14d
and r12d, 0x7f
shl r12, cl
lea rdx, [rbx + 1]
or r13, r12
test r14b, r14b
jns 0x100220cb
add ecx, 7
mov rbx, rdx
add r10, 0xffffffffffffffff
jb 0x1002208f
jmp 0x10023144
test r10, r10
je 0x1002315f
lea r11, [r10 + 1]
xor r15d, r15d
xor ecx, ecx
mov qword [rsp + 0xe0], rcx
xor ecx, ecx
movzx ebp, byte [rdx]
cmp ecx, 0x3f
jne 0x100220f9
cmp bpl, 2
jae 0x10022f8c
movzx r14d, bpl
mov r12d, r14d
and r12d, 0x7f
shl r12, cl
or qword [rsp + 0xe0], r12
test r14b, r14b
jns 0x10022127
inc rdx
add ecx, 7
inc r15
cmp r10, r15
jne 0x100220e7
jmp 0x10023159
mov qword [rsp + 0xd8], r13
mov rcx, qword [rsp + 0x38]
shr rcx, 8
mov qword [rsp + 0x248], rcx
movd xmm7, eax
mov r15d, eax
shr r15d, 0x10
mov ebx, eax
shr ebx, 0x18
shr rax, 0x20
mov rcx, rsi
shr rcx, 8
mov qword [rsp + 0x30], rcx
mov ebp, 0x1f
mov r12d, eax
mov r14d, 0x12
jmp 0x10021429
test al, al
je 0x10022212
mov rbx, qword [rsp + 0x250]
test rbx, rbx
mov r12, qword [rsp + 0x60]
mov rdx, qword [rsp + 0xe8]
je 0x100222ba
mov rsi, qword [r12]
mov rdi, qword [rsp + 0x1e8]
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0xb0], 8
mov qword [rsp + 0xb8], 0
cmp rax, rbx
jbe 0x100222ca
lea rax, [rbx*8]
lea r15, [rax + rax*2]
mov rcx, r12
mov rdx, r15
call fcn.100043d0
mov r12, rax
test rax, rax
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
jne 0x100222da
jmp 0x100233be
mov r15, qword [rsp + 0x1e8]
mov rbx, qword [rsp + 0x1f8]
mov edi, dword [rsp + 0x200]
mov esi, dword [rsp + 0x208]
mov rdx, qword [rsp + 0xe8]
test rdx, rdx
mov r12, qword [rsp + 0x60]
je 0x10022261
lea rax, [rdx + rdx*2]
cmp qword [r12 + rax*8 - 0x18], r15
jne 0x10022261
lea rax, [r12 + rax*8]
add rax, 0xffffffffffffffe8
mov qword [rax + 8], rbx
mov dword [rax + 0x10], edi
mov dword [rax + 0x14], esi
jmp 0x100222aa
cmp rdx, qword [rsp + 0xa8]
jne 0x10022288
lea rcx, [rsp + 0xa8]
call fcn.100236d0
mov r12, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
lea rax, [rdx + rdx*2]
mov qword [r12 + rax*8], r15
mov qword [r12 + rax*8 + 8], rbx
mov dword [r12 + rax*8 + 0x10], edi
mov dword [r12 + rax*8 + 0x14], esi
inc rdx
mov qword [rsp + 0xb8], rdx
mov r8, rdx
movzx eax, byte [rsp + 0x223]
jmp 0x10021265
xor r8d, r8d
movzx eax, byte [rsp + 0x223]
jmp 0x10021265
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
cmp rdx, qword [rsp + 0x90]
jne 0x10022301
lea rcx, [rsp + 0x90]
call fcn.10023790
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
mov rax, rdx
shl rax, 5
mov qword [rcx + rax], r12
mov qword [rcx + rax + 8], rbx
mov qword [rcx + rax + 0x10], rsi
mov qword [rsp + 0x80], rcx
mov qword [rcx + rax + 0x18], rdi
inc rdx
mov rax, rdx
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0xa0], rdx
mov r12d, 8
xor edx, edx
xor r8d, r8d
movzx eax, byte [rsp + 0x223]
jmp 0x10021265
add r9, rdx
mov qword [rsp + 0x228], r9
mov qword [rsp + 0x230], 0
mov rax, r9
mov cl, 0x13
jmp 0x10022379
mov qword [rsp + 0x228], r11
mov cl, 6
movzx ecx, cl
movd xmm0, ecx
xor r12d, r12d
xor r15d, r15d
xor ebx, ebx
pextrw ecx, xmm0, 0
shl r12, 0x20
movzx edx, bl
shl edx, 0x18
movzx r8d, r15b
shl r8d, 0x10
or r8d, edx
or r8, r12
or r8, rcx
lea rcx, [0x104a50f0]
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x230], 0
mov rcx, qword [rsp + 0xd0]
mov qword [rcx + 8], r8
mov qword [rcx + 0x10], rax
mov qword [rcx], 0
cmp qword [rsp + 0x130], 0
je 0x100223f7
mov rcx, qword [rsp + 0x138]
mov edx, 2
call fcn.100043b0
cmp qword [rsp + 0x148], 0
je 0x10022414
mov rcx, qword [rsp + 0x150]
mov edx, 8
call fcn.100043b0
cmp qword [rsp + 0x160], 0
je 0x10022431
mov rcx, qword [rsp + 0x168]
mov edx, 2
call fcn.100043b0
cmp qword [rsp + 0x178], 0
je 0x1002244e
mov rcx, qword [rsp + 0x180]
mov edx, 8
call fcn.100043b0
cmp qword [rsp + 0xa8], 0
je 0x1002246b
mov rcx, qword [rsp + 0xb0]
mov edx, 8
call fcn.100043b0
mov rsi, qword [rsp + 0x98]
mov rdi, qword [rsp + 0xa0]
test rdi, rdi
je 0x100224af
lea rbx, [rsi + 8]
jmp 0x10022499
add rbx, 0x20
dec rdi
je 0x100224af
cmp qword [rbx], 0
je 0x10022490
mov rcx, qword [rbx - 8]
mov edx, 8
call fcn.100043b0
jmp 0x10022490
cmp qword [rsp + 0x90], 0
je 0x100224c7
mov edx, 8
mov rcx, rsi
call fcn.100043b0
movaps xmm6, xmmword [rsp + 0x2a0]
movaps xmm7, xmmword [rsp + 0x2b0]
add rsp, 0x2c8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movabs r15, 0x8000000000000000
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x30], rax
mov rbp, qword [rsp + 0xa0]
cmp rbp, 0x15
jae 0x10022532
cmp rbp, 1
jbe 0x10022b7a
mov r8d, 1
mov rcx, qword [rsp + 0x30]
mov rdx, rbp
call fcn.10023840
jmp 0x10022b7a
mov rax, rbp
shl rax, 4
lea rdx, [r15 - 0x20]
and rdx, rax
movzx eax, byte [0x104ab0c0]
xor ecx, ecx
call fcn.100316a0
mov qword [rsp + 0x58], rax
test rax, rax
je 0x100233a2
movzx eax, byte [0x104ab0c0]
mov edx, 0x100
xor ecx, ecx
call fcn.100316a0
test rax, rax
je 0x100233b0
mov rsi, rax
mov rax, qword [rsp + 0x30]
lea rcx, [rax + 0x50]
mov qword [rsp + 0xc0], rcx
lea rcx, [rax + 0x10]
mov qword [rsp + 0x240], rcx
lea rcx, [rax - 0x10]
mov qword [rsp + 0x238], rcx
add rax, 0xffffffffffffffe0
mov qword [rsp + 0x248], rax
mov eax, 0x10
mov qword [rsp + 0xc8], rax
xor r10d, r10d
lea rax, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
mov qword [rsp + 0x78], rax
xor r12d, r12d
mov qword [rsp + 0xd8], rbp
jmp 0x100225f4
mov r12d, 1
mov r10, qword [rsp + 0x70]
cmp r10, rbp
jae 0x10022b5e
mov rbx, r10
mov r9, rbp
sub r9, r10
mov rax, r10
shl rax, 5
mov rcx, qword [rsp + 0x30]
add rcx, rax
cmp r9, 2
jae 0x10022a30
mov r8, r9
mov r14, rsi
lea r10, [r8 + rbx]
mov rsi, r10
sub rsi, rbx
jb 0x1002333d
cmp r10, rbp
ja 0x1002333d
jae 0x1002266e
cmp r8, 0xa
jae 0x1002266e
lea rax, [rbx + 0xa]
cmp rax, rbp
cmovae rax, rbp
cmp rbx, 0xfffffffffffffff5
ja 0x10023357
cmp r8, 1
adc r8, 0
mov rsi, rax
sub rsi, rbx
mov rdx, rsi
mov rdi, rax
call fcn.10023840
mov r10, rdi
cmp r12, qword [rsp + 0xc8]
jne 0x100226cd
mov r13, r10
mov rdx, r12
shl rdx, 5
movzx eax, byte [0x104ab0c0]
xor ecx, ecx
call fcn.100316a0
test rax, rax
je 0x10023368
mov rdi, rax
lea rax, [r12 + r12]
mov qword [rsp + 0xc8], rax
mov r8, r12
shl r8, 4
mov rcx, rdi
mov rdx, r14
call fcn.100360a0
mov edx, 8
mov rcx, r14
call fcn.100043b0
mov r14, rdi
mov r10, r13
mov rax, r12
shl rax, 4
mov qword [r14 + rax], rsi
mov qword [r14 + rax + 8], rbx
inc r12
cmp r12, 2
mov rsi, r14
jb 0x100225eb
mov qword [rsp + 0x70], r10
mov qword [rsp + 0xe0], rsi
jmp 0x1002278f
mov rdx, qword [rsp + 0x58]
nop word cs:[rax + rax]
mov rsi, qword [rsp + 0xe0]
mov r15, qword [rsp + 0x80]
add r15, rsi
add r12, rsi
sub rdi, rdx
mov rcx, rbp
mov r8, rdi
call fcn.100360a0
mov rax, qword [rsp + 0x88]
add rax, r14
mov qword [r12], rax
mov rax, qword [rsp + 0x250]
mov qword [r12 + 8], rax
lea rdx, [r15 + 0x10]
not rbx
mov r8, qword [rsp + 0xe8]
add r8, rbx
shl r8, 4
mov rcx, r15
call sub.msvcrt.dll_memmove
mov r12, qword [rsp + 0x38]
cmp r12, 1
movabs r15, 0x8000000000000000
mov rbp, qword [rsp + 0xd8]
jbe 0x100225e0
mov r11, r12
lea r10, [r12 - 1]
mov rcx, r10
shl rcx, 4
mov rax, qword [rsi + rcx]
mov rcx, qword [rsi + rcx + 8]
add rcx, rax
cmp rcx, rbp
je 0x10022800
mov rdx, r11
shl rdx, 4
mov r8, qword [rdx + rsi - 0x20]
cmp r8, rax
jbe 0x10022800
cmp r11, 2
je 0x10022b40
lea rdi, [r11 - 3]
mov rcx, rdi
shl rcx, 4
mov rcx, qword [rsi + rcx]
lea r9, [r8 + rax]
cmp rcx, r9
jbe 0x10022815
cmp r11, 3
jbe 0x10022b4b
add r8, rcx
cmp qword [rdx + rsi - 0x40], r8
jbe 0x10022815
jmp 0x10022b56
cmp r11, 2
je 0x1002281a
lea rdi, [r11 - 3]
mov rcx, rdi
shl rcx, 4
mov rcx, qword [rsi + rcx]
cmp rcx, rax
jb 0x1002281e
lea rdi, [r11 - 2]
cmp r11, rdi
jbe 0x1002329b
mov qword [rsp + 0x38], r10
lea r12, [rdi + 1]
cmp r11, r12
jbe 0x10023280
mov rdx, rdi
shl rdx, 4
mov rcx, qword [rsi + rdx + 8]
shl r12, 4
mov rax, qword [rsi + r12]
mov r13, qword [rsi + r12 + 8]
add r13, rax
mov r15, r13
sub r15, rcx
jb 0x100232e2
mov qword [rsp + 0x60], rdi
cmp r13, rbp
ja 0x100232f9
mov qword [rsp + 0x88], rax
mov qword [rsp + 0xe8], r11
mov qword [rsp + 0x80], rdx
mov r14, qword [rsi + rdx]
mov qword [rsp + 0x250], rcx
mov rbp, rcx
shl rbp, 5
add rbp, qword [rsp + 0x30]
mov rdi, r14
shl rdi, 5
lea rsi, [rdi + rbp]
shl r13, 5
mov rbx, r15
sub rbx, r14
cmp rbx, r14
jae 0x10022970
mov rdi, rbx
shl rdi, 5
mov r15, qword [rsp + 0x58]
mov rcx, r15
mov rdx, rsi
mov r8, rdi
call fcn.100360a0
add rdi, r15
test r14, r14
jle 0x10022a10
test rbx, rbx
jle 0x10022a10
add r13, qword [rsp + 0x248]
mov rbx, qword [rsp + 0x60]
nop dword [rax]
mov rax, rsi
mov rcx, rdi
mov rdx, qword [rdi - 0x10]
mov r8, qword [rsi - 0x10]
cmp rdx, r8
mov esi, 0
sbb rsi, rsi
cmp rdx, r8
mov edi, 0
adc rdi, 0xffffffffffffffff
shl rsi, 5
add rsi, rax
shl rdi, 5
add rdi, rcx
cmp rdx, r8
mov rax, rdi
cmovb rax, rsi
movdqu xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r13 + 0x10], xmm1
movdqu xmmword [r13], xmm0
cmp rsi, rbp
jbe 0x1002295e
add r13, 0xffffffffffffffe0
cmp rdi, r15
ja 0x10022900
mov rbp, rsi
mov rdx, r15
jmp 0x10022710
mov rbx, qword [rsp + 0x58]
mov rcx, rbx
mov rdx, rbp
mov r8, rdi
call fcn.100360a0
add rdi, rbx
test r14, r14
jle 0x10022a18
cmp r15, r14
mov rbx, qword [rsp + 0x60]
jle 0x100226ff
add r13, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x58]
nop word [rax + rax]
mov r8, rdx
mov rcx, qword [rsi + 0x10]
xor edx, edx
xor eax, eax
cmp rcx, qword [r8 + 0x10]
setae dl
setb cl
mov r9, r8
cmovb r9, rsi
movdqu xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movups xmmword [rbp + 0x10], xmm1
movdqu xmmword [rbp], xmm0
add rbp, 0x20
shl edx, 5
add rdx, r8
cmp rdx, rdi
jae 0x10022710
mov al, cl
shl eax, 5
add rsi, rax
cmp rsi, r13
jb 0x100229b0
jmp 0x10022710
mov rbp, rsi
mov rdx, r15
jmp 0x10022a1d
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x60]
jmp 0x10022710
mov r10, qword [rcx + 0x30]
cmp r10, qword [rcx + 0x10]
jae 0x10022b00
mov edx, 2
cmp r9, 2
je 0x10022a7a
mov rdx, qword [rsp + 0xc0]
lea r8, [rdx + rax]
mov edx, 2
nop word [rax + rax]
mov r11, r10
mov r10, qword [r8]
cmp r10, r11
jae 0x10022a7a
inc rdx
add r8, 0x20
cmp r9, rdx
jne 0x10022a60
mov rdx, r9
mov r10, rdx
add r10, rbx
jb 0x1002338d
cmp r10, rbp
ja 0x10023376
mov r14, rsi
mov r8d, 1
cmp rdx, 2
jb 0x10022620
mov r8, rdx
shr r8, 1
add rax, qword [rsp + 0x240]
mov r9, r10
shl r9, 5
add r9, qword [rsp + 0x238]
nop
movups xmm0, xmmword [rax - 0x10]
movups xmm1, xmmword [r9 - 0x10]
movups xmmword [rax - 0x10], xmm1
movups xmmword [r9 - 0x10], xmm0
movdqu xmm0, xmmword [rax]
movups xmm1, xmmword [r9]
movups xmmword [rax], xmm1
movdqu xmmword [r9], xmm0
add rax, 0x20
add r9, 0xffffffffffffffe0
dec r8
jne 0x10022ac0
mov r8, rdx
jmp 0x10022620
mov r8d, 2
cmp r9, 2
je 0x10022619
add rax, qword [rsp + 0xc0]
nop dword [rax + rax]
mov rdx, r10
mov r10, qword [rax]
cmp r10, rdx
jb 0x10022619
inc r8
add rax, 0x20
cmp r9, r8
jne 0x10022b20
jmp 0x10022616
mov r12d, 2
jmp 0x100225e6
mov r12d, 3
jmp 0x100225e6
mov r12, r11
jmp 0x100225e6
mov edx, 8
mov rcx, rsi
call fcn.100043b0
mov edx, 8
mov rcx, qword [rsp + 0x58]
call fcn.100043b0
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 8
mov qword [rsp + 0x50], 0
cmp word [rsp + 0x1da], 5
jae 0x10022bb8
cmp dword [rsp + 0xf0], 0x2e
je 0x10022c33
lea r8, [rsp + 0xf0]
jmp 0x10022bcb
cmp qword [rsp + 0x188], 0
je 0x10022c33
mov r8, qword [rsp + 0x180]
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x268]
lea r9, [rsp + 0xf0]
mov rdx, qword [rsp + 0x258]
call fcn.100239c0
mov r14, qword [rsp + 0x268]
mov rbx, qword [rsp + 0x270]
mov rsi, qword [rsp + 0x278]
cmp r14, r15
jne 0x10022c70
mov rax, qword [rsp + 0xd0]
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax], 0
mov esi, 8
jmp 0x10022e6f
lea rcx, [rsp + 0x40]
xor edx, edx
call fcn.100236d0
mov r15, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
lea rcx, [rdi + rdi*2]
lea rax, [r15 + rcx*8]
mov qword [r15 + rcx*8], 0
mov ebx, 1
xor esi, esi
jmp 0x10022c92
lea rcx, [r9 + r10]
inc rcx
mov al, 0x13
jmp 0x10022f7a
lea rcx, [rsp + 0x40]
xor edx, edx
call fcn.100236d0
mov r15, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
lea rcx, [rdi + rdi*2]
lea rax, [r15 + rcx*8]
mov qword [r15 + rcx*8], r14
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
inc rdi
mov qword [rsp + 0x50], rdi
mov r12d, 1
xor r13d, r13d
lea rsi, [rsp + 0x268]
jmp 0x10022ce1
lea rax, [rdi + rdi*2]
mov qword [r15 + rax*8], rbp
mov qword [r15 + rax*8 + 8], r14
mov qword [r15 + rax*8 + 0x10], rbx
inc rdi
mov qword [rsp + 0x50], rdi
inc r12
add r13, 0x40
cmp word [rsp + 0x1da], 5
jae 0x10022d20
test r12, r12
je 0x10022d3f
lea rax, [r12 - 1]
cmp rax, qword [rsp + 0x188]
jae 0x10022dd3
mov r8, qword [rsp + 0x180]
add r8, r13
jmp 0x10022d60
cmp qword [rsp + 0x188], r12
jbe 0x10022dd3
mov r8, r12
shl r8, 6
add r8, qword [rsp + 0x180]
jmp 0x10022d60
cmp dword [rsp + 0xf0], 0x2e
lea r8, [rsp + 0xf0]
je 0x10022dd3
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x260]
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, qword [rsp + 0x258]
lea r9, [rsp + 0xf0]
call fcn.100239c0
mov rbp, qword [rsp + 0x268]
mov r14, qword [rsp + 0x270]
mov rbx, qword [rsp + 0x278]
movabs rax, 0x8000000000000000
cmp rbp, rax
je 0x10022e21
cmp rdi, qword [rsp + 0x40]
jne 0x10022cc0
lea rcx, [rsp + 0x40]
mov rdx, rdi
call fcn.100236d0
mov r15, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
jmp 0x10022cc0
mov rbx, qword [rsp + 0x48]
cmp qword [rsp + 0x40], rdi
jbe 0x10022ffa
test rdi, rdi
je 0x10022fe8
lea rax, [rdi*8]
lea rsi, [rax + rax*2]
mov rcx, rbx
mov rdx, rsi
call fcn.100043d0
mov rbx, rax
test rax, rax
jne 0x10022ffa
mov ecx, 8
mov rdx, rsi
call fcn.100045d0
jmp 0x100233cb
mov rax, qword [rsp + 0xd0]
mov qword [rax + 8], r14
mov qword [rax + 0x10], rbx
mov rsi, qword [rsp + 0x48]
mov qword [rax], 0
test rdi, rdi
je 0x10022e6f
lea rbx, [rsi + 8]
jmp 0x10022e59
add rbx, 0x18
dec rdi
je 0x10022e6f
cmp qword [rbx - 8], 0
je 0x10022e50
mov rcx, qword [rbx]
mov edx, 1
call fcn.100043b0
jmp 0x10022e50
cmp qword [rsp + 0x40], 0
je 0x100223da
mov edx, 8
mov rcx, rsi
call fcn.100043b0
jmp 0x100223da
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x230], r8
mov cl, 6
mov rax, qword [rsp + 0x240]
jmp 0x10022379
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x230], r8
mov cl, 6
mov rax, qword [rsp + 0xc8]
jmp 0x10022379
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x230], r8
mov cl, 6
mov rax, qword [rsp + 0x70]
jmp 0x10022379
mov qword [rsp + 0x228], r10
mov qword [rsp + 0x230], r8
mov cl, 6
mov rax, qword [rsp + 0xc0]
jmp 0x10022379
mov cl, 6
mov rax, r13
jmp 0x10022379
movdqa xmm0, xmmword [0x10038f40]
xor r12d, r12d
mov rax, r11
jmp 0x10022383
add rax, rdx
jmp 0x1002236b
movaps xmm0, xmmword [0x10038f40]
jmp 0x10022380
mov qword [rsp + 0x228], rsi
mov qword [rsp + 0x230], r9
mov al, 6
mov rcx, qword [rsp + 0x78]
jmp 0x10022f7a
mov rcx, qword [rsp + 0x30]
add rcx, rbp
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x230], 0
mov al, 0x13
jmp 0x10022f7a
mov al, 7
mov rcx, qword [rsp + 0x238]
movzx eax, al
movd xmm0, eax
xor r12d, r12d
mov rax, rcx
jmp 0x10022383
movzx ecx, r9b
jmp 0x1002237c
mov qword [rsp + 0x228], r11
mov qword [rsp + 0x230], r8
mov cl, 6
mov rdx, qword [rsp + 0x298]
movzx eax, word [rsp + 0x6e]
jmp 0x10022fd9
add r9, rdx
mov qword [rsp + 0x228], r9
mov qword [rsp + 0x230], 0
mov rax, r9
mov rdx, rax
shr rdx, 0x10
mov cl, 0x13
shl rdx, 0x10
movzx eax, ax
or rax, rdx
jmp 0x10022379
mov edx, 8
mov rcx, rbx
call fcn.100043b0
mov ebx, 8
mov rcx, qword [rsp + 0x98]
mov r14, qword [rsp + 0xa0]
cmp qword [rsp + 0x90], r14
jbe 0x10023051
test r14, r14
je 0x10023042
mov rsi, r14
shl rsi, 5
mov rdx, rsi
call fcn.100043d0
mov rcx, rax
test rax, rax
jne 0x10023051
mov ecx, 8
mov rdx, rsi
call fcn.100045d0
jmp 0x100233cb
mov edx, 8
call fcn.100043b0
mov ecx, 8
mov rax, qword [rsp + 0xd0]
mov qword [rax], rbx
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], r14
cmp qword [rsp + 0x130], 0
je 0x10023085
mov rcx, qword [rsp + 0x138]
mov edx, 2
call fcn.100043b0
cmp qword [rsp + 0x148], 0
je 0x100230a2
mov rcx, qword [rsp + 0x150]
mov edx, 8
call fcn.100043b0
cmp qword [rsp + 0x160], 0
je 0x100230bf
mov rcx, qword [rsp + 0x168]
mov edx, 2
call fcn.100043b0
cmp qword [rsp + 0x178], 0
je 0x100230dc
mov rcx, qword [rsp + 0x180]
mov edx, 8
call fcn.100043b0
cmp qword [rsp + 0xa8], 0
je 0x100224c7
mov rcx, qword [rsp + 0xb0]
mov edx, 8
jmp 0x100224c2
add r12, rdx
mov r9b, 0x13
mov rax, r12
movzx ecx, r9b
jmp 0x1002237c
movd eax, xmm7
shr eax, 8
movd xmm0, eax
psllw xmm0, 8
pand xmm0, xmmword [0x10038f50]
por xmm0, xmmword [0x10038f40]
mov rax, rcx
jmp 0x10022388
movdqa xmm0, xmmword [0x10038f40]
jmp 0x10022f81
add r15, r11
mov rbx, r15
mov r9b, 0x13
mov rax, rbx
movzx ecx, r9b
jmp 0x1002237c
add rbx, r11
mov rdx, rbx
mov r9b, 0x13
mov rax, rdx
movzx ecx, r9b
jmp 0x1002237c
mov dl, 0x17
jmp 0x10023209
mov qword [rsp + 0x268], 0x13
mov qword [rsp + 0x270], rax
mov rcx, qword [rsp + 0x269]
mov eax, dword [rsp + 0x271]
mov edx, dword [rsp + 0x274]
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x4b], edx
mov qword [rsp + 0x40], rcx
mov r15d, ecx
shr r15d, 8
mov ebx, ecx
shr ebx, 0x10
mov r12, rcx
shr r12, 0x18
mov dl, 0x13
jmp 0x10023225
mov qword [rsp + 0x47], rax
mov dl, 0x13
xor r15d, r15d
xor ebx, ebx
xor r12d, r12d
xor ecx, ecx
jmp 0x10023225
mov dword [rsp + 0x40], 0
mov byte [rsp + 0x46], 0
mov word [rsp + 0x44], 0
jmp 0x10023200
mov word [rsp + 0x40], 0
mov byte [rsp + 0x42], 0
mov dword [rsp + 0x43], 0
mov qword [rsp + 0x47], rax
mov dl, 0x13
xor ecx, ecx
mov r15d, dword [rsp + 0x41]
movzx r12d, word [rsp + 0x45]
shl r12, 0x20
or r12, r15
mov ebx, r15d
shr ebx, 8
shr r12, 0x10
mov rax, qword [rsp + 0x47]
movzx edx, dl
movzx ecx, cl
shl ecx, 8
or ecx, edx
movd xmm0, ecx
jmp 0x10022388
lea rcx, str.attempt_to_divide_by_zero
lea r8, str._rust_depsgimli_0.28.1_src_readline.rs
jmp 0x10023276
mov edx, 0x39
lea rcx, str.attempt_to_calculate_the_remainder_with_a_divisor_of_zero_rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_strpattern.rs
lea r8, str._rust_depsgimli_0.28.1_src_readline.rs
jmp 0x10023276
mov edx, 0x19
lea rcx, str.attempt_to_divide_by_zero
lea r8, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_numwrapping.rsH4J
call fcn.10005ac0
jmp 0x100233cb
mov r14, rsi
lea rax, [0x104a2c58]
mov qword [rsp + 0x268], rax
lea rdx, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
jmp 0x100232b4
mov r14, rsi
lea rax, [0x104a2c58]
mov qword [rsp + 0x268], rax
lea rdx, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
lea rcx, [rsp + 0x268]
mov qword [rcx + 8], 1
lea rax, [0x104a50f0]
mov qword [rcx + 0x10], rax
pxor xmm0, xmm0
movdqu xmmword [rcx + 0x18], xmm0
call fcn.10004d90
jmp 0x100233cb
mov r14, rsi
lea r8, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
mov rdx, r13
call fcn.10006170
jmp 0x100233cb
mov r14, rsi
lea r8, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
mov rcx, r13
mov rdx, qword [rsp + 0xd8]
call fcn.10005750
jmp 0x100233cb
movd ecx, xmm7
shr ecx, 8
movd xmm0, ecx
psllw xmm0, 8
pand xmm0, xmmword [0x10038f50]
por xmm0, xmmword [0x10038f40]
jmp 0x10022388
lea rcx, str.assertion_failed:_end___start__end___len
lea r8, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
mov edx, 0x2c
call fcn.10005ac0
jmp 0x100233cb
mov rdx, rax
lea rax, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
mov qword [rsp + 0x78], rax
jmp 0x10023393
lea rcx, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
call fcn.10006c60
jmp 0x100233cb
mov r14, rsi
lea r8, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
mov rcx, r10
mov rdx, rbp
call fcn.10005750
jmp 0x100233cb
mov rdx, r10
mov r14, rsi
mov rcx, rbx
mov r8, qword [rsp + 0x78]
call fcn.10006170
jmp 0x100233cb
lea rcx, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
call fcn.10006c60
jmp 0x100233cb
lea rcx, str._rustc_9b00956e56009bab2aa15d7bff10916599e3d6d6librarycore_src_slice_sort.rs
call fcn.10006c60
jmp 0x100233cb
mov ecx, 8
mov rdx, r15
call fcn.100045d0
ud2
mov dword [rsp + 0x50], esp
mov rax, qword [r14 + 0x18]
test rax, rax
je case.default.0x10023af2
cmp word [r15 + 0xea], 5
jae 0x10023acb
dec rax
cmp rax, qword [r15 + 0x68]
jb 0x10023ad5
jmp case.default.0x10023af2
cmp qword [r15 + 0x68], rax
jbe case.default.0x10023af2
lea rdx, [rax + rax*2]
shl rdx, 3
add rdx, qword [r15 + 0x60]
mov rax, qword [rdx]
lea rcx, [0x10039014]
movsxd r8, dword [rcx + rax*4]
add r8, rcx
jmp r8
mov rcx, qword [rdx + 8]
mov edx, ecx
shr edx, 8
mov r8, rcx
shr r8, 0x10
movabs r9, 0xffffffff00000000
and r9, rcx
jmp 0x10023b20
movzx ecx, byte [rdx + 8]
xor r8d, r8d
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x58], rax
shl edx, 8
movzx eax, cl
or eax, edx
shl r8d, 0x10
movzx eax, ax
or eax, r8d
or rax, r9
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], r10
movzx r8d, byte [rdi + 0x49]
mov r9, qword [rdi + 0x188]
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x28]
mov rdx, rbx
call fcn.10023e80
cmp qword [rsp + 0x28], 0
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
jne 0x10023c84
lea rcx, [rsp + 0x28]
call fcn.100047b0
mov r12, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rax, [rbp + 1]
cmp r12, rax
je 0x10023c84
lea rcx, [rsp + 0x40]
mov r15, rdx
call fcn.10004400
shl r12, 1
test r12, r12
jne 0x10023bfc
mov rax, qword [r14]
lea rcx, [0x100390cc]
movsxd rdx, dword [rcx + rax*4]
add rdx, rcx
jmp rdx
mov rcx, qword [r14 + 8]
mov qword [rsp + 0x30], rcx
jmp 0x10023c25
mov rcx, qword [rdx + 8]
mov r10, qword [rdx + 0x10]
mov edx, ecx
shr edx, 8
mov r8, rcx
shr r8, 0x10
movabs r9, 0xffffffff00000000
and r9, rcx
jmp 0x10023b20
mov edx, 1
mov rcx, r15
call fcn.100043b0
mov rax, qword [r14]
lea rcx, [0x100390cc]
movsxd rdx, dword [rcx + rax*4]
add rdx, rcx
jmp rdx
movzx ecx, byte [r14 + 8]
mov byte [rsp + 0x30], cl
mov qword [rsp + 0x28], rax
movzx r8d, byte [rdi + 0x49]
mov r9, qword [rdi + 0x188]
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x70]
mov rdx, rbx
call fcn.10023e80
cmp qword [rsp + 0x70], 0
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x80]
jne 0x10023c84
lea rcx, [rsp + 0x28]
call fcn.100047b0
mov rbx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
lea rax, [rbp + 1]
cmp rbx, rax
jne 0x10023ca8
mov qword [rsi + 8], rdx
mov qword [rsi + 0x10], r8
mov qword [rsi], rbp
cmp qword [rsp + 0x40], 0
je 0x10023cdb
mov rcx, qword [rsp + 0x48]
mov edx, 1
call fcn.100043b0
jmp 0x10023cdb
lea rcx, [rsp + 0x40]
mov rdi, rdx
call fcn.10004400
shl rbx, 1
test rbx, rbx
je 0x10023cca
mov edx, 1
mov rcx, rdi
call fcn.100043b0
mov rax, qword [rsp + 0x50]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rsi], xmm0
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movups xmm0, xmmword [r14 + 8]
movups xmmword [rsp + 0x30], xmm0
jmp 0x10023c25
movzx ecx, word [r14 + 8]
mov word [rsp + 0x30], cx
jmp 0x10023c25
mov ecx, dword [r14 + 8]
mov dword [rsp + 0x30], ecx
jmp 0x10023c25
movzx ecx, word [rdx + 8]
mov edx, ecx
shr edx, 8
xor r8d, r8d
xor r9d, r9d
jmp 0x10023b12
mov ecx, dword [rdx + 8]
mov edx, ecx
shr edx, 8
mov r8d, ecx
shr r8d, 0x10
xor r9d, r9d
jmp 0x10023b12
mov edx, 8
mov rcx, rsi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
jmp fcn.100043b0
mov esi, ecx
lea rbx, [rcx + 8]
jmp 0x10023e49
add rbx, 0x18
dec rdi
je 0x10023e5f
cmp qword [rbx - 8], 0
je 0x10023e40
mov rcx, qword [rbx]
mov edx, 1
call fcn.100043b0
jmp 0x10023e40
mov edx, 8
mov rcx, rsi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
jmp fcn.100043b0
or byte [rbx + r9*4 + 0x42], cl
invalid
imul ecx, dword [rdx + 8]
sub r11, r9
jae 0x10023ffe
mov edi, eax
invalid
and rax, 0xffffffffffffff00
movzx edi, dil
or rdi, rax
mov byte [rcx + 8], 0x13
mov byte [rcx + 0xf], sil
movzx eax, r11b
movzx r11d, bl
shl r11d, 8
or r11d, eax
movzx eax, r10b
shl eax, 0x10
or eax, r11d
fadd dword [rbp + 0xf]
mov dh, 0xc9
fadd dword [rbp + 0xf]
mov dh, 0xc9
shl r9d, 0x18
or r9d, eax
mov dword [rcx + 9], r9d
movzx eax, dl
movzx edx, r8b
shl edx, 8
or edx, eax
mov word [rcx + 0xd], dx
mov qword [rcx + 0x10], rdi
mov eax, 1
jmp 0x1002404e
add rax, r9
cmp r8b, 8
jne 0x10024012
cmp r11, 7
jbe 0x1002406d
mov r9, qword [rax]
jmp 0x1002401b
cmp r11, 3
jbe 0x1002408d
mov r9d, dword [rax]
mov r8, qword [rdx + 0x60]
mov rax, qword [rdx + 0x68]
cmp rax, r9
jb 0x10024041
add r8, r9
sub rax, r9
je 0x10024041
xor edx, edx
cmp byte [r8 + rdx], 0
je 0x10024059
inc rdx
cmp rax, rdx
jne 0x10024032
mov byte [rcx + 8], 0x13
mov eax, 1
mov qword [rcx + 0x10], r8
mov qword [rcx], rax
add rsp, 0x30
pop rbx
pop rdi
pop rsi
ret
mov qword [rcx + 8], r8
xor eax, eax
mov qword [rcx + 0x10], rdx
jmp 0x1002404e
mov qword [rsp + 0x10], 0x13
mov qword [rsp + 0x18], rax
movsd xmm0, qword [rsp + 0x11]
movaps xmmword [rsp + 0x20], xmm0
movzx edi, byte [rsp + 0x27]
jmp 0x10024092
xorps xmm0, xmm0
mov edi, eax
movaps xmmword [rsp], xmm0
movzx esi, byte [rsp + 6]
movzx r8d, byte [rsp + 5]
movzx edx, byte [rsp + 4]
movzx r9d, byte [rsp + 3]
movzx r10d, byte [rsp + 2]
movzx r11d, byte [rsp]
movzx ebx, byte [rsp + 1]
jmp 0x10023f0c
add al, 0xfd
add byte [rax], al
add byte [rax], al
shl edx, 3
test rcx, rcx
je 0x10024a95
mov rax, qword [rsi + 8]
shl rcx, 3
mov qword [rsp + 0x40], rax
and al, 0x40
and al, 0x40
mov qword [rsp + 0x50], rcx
mov eax, 8
jmp 0x10024a97
xor eax, eax
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x28]
lea r9, [rsp + 0x40]
call fcn.10014860
cmp qword [rsp + 0x28], 0
jne 0x10024ac6
mov rax, qword [rsp + 0x30]
mov qword [rsi + 8], rax
mov qword [rsi], rdi
add rsp, 0x58
pop rdi
pop rsi
ret
mov rcx, qword [rsp + 0x30]
test rcx, rcx
jne 0x10024ad5
call fcn.10004590
mov rdx, qword [rsp + 0x38]
call fcn.100045d0
int1
cli
std
dec esp
int1
cli
std
dec esp
and byte [rcx + 0xf], al
mov bh, 0x59
or cl, byte [rbx + rcx*4 + 0x3a]
cmp al, 0xa6
mov ebp, esi
jns 0x10024bbb
add al, 0x19
add byte [rbx - 0xb6f83f], al
ror dword [rcx - 0x7d], 0xc3
push qword [rdx - 0x36]
xor al, 0x89
and al, 0x40
add dword [rcx + 0x8e9c1c1], ecx
leave
clc
invalid
and al, 0x38
movzx eax, byte [rcx]
movzx eax, word [rcx]
push rcx
invalid
rol ecx, 0xe9
or byte [rcx - 0x45], al
or al, 0
add byte [rax], al
invalid
invalid
adc byte [r8 - 0x77], cl
add cl, byte [rcx + rcx*4 + 0x5a]
or byte [rcx + rcx*4 - 0x37], al
add byte [rax], al
add byte [rax], al
add byte [rax], al
invalid
add al, 0x80
test byte [0x5902530c], ah
dec ebx
and al, 0x20
mov eax, 0
ror byte [rax], cl
add byte [rax], al
and byte [rsi - 0x7d], ah
stc
add cl, byte [rdi]
test dword [rdx], esi
add al, 0
add byte [rax - 0x73], cl
and al, 0x28
test dl, al
add dword [rax], eax
add byte [rdi - 0x73], cl
add al, 0x19
out 0x48, eax
or eax, edi
mov bh, 0x4b
or cl, al
loope 0x10025607
adc byte [rdi], cl
mov bh, 0xc0
mov eax, 0
add byte [rax], al
add byte [rax], al
add cl, ch
add ebp, edi
invalid
mov ebx, 0x1d
or byte [rbp - 0x77], cl
retf 0xc149
adc ecx, dword [rbx - 0x74afdbbc]
and al, 0x53
and al, 0x29
and al, 0x2c
mov byte [rbp + 8], al
or byte [r11 - 0x749fdbbc], r9b
push rsp
and al, 0x63
invalid
sal byte [rcx], cl
leave
rol eax, 0xe1
add ecx, dword [rax - 0x39]
sar bh, 0xff
invalid
dec dword [rax - 0x2d]
call 0x4281e2a1
add eax, 0x49c08949
sbb eax, 0
lea esi, [rcx - 3]
jno 0x10025fa9
test byte [rax], al
add byte [rax], al
add byte [rax], al
fisttp dword [rdi]
mov edi, edx
add al, byte [rax]
add byte [rbx - 0xb6f83f], al
ret
mov dword [rsp + 0x50], eax
inc ebp
test esi, esi
lea esi, [rdx + 3]
movzx eax, al
add byte [rax], al
sub byte [r15], r9b
mov dh, 0x57
xor byte [rcx], dh
leave
nop dword [rax + rax]
out dx, al
add eax, dword [rax]
add byte [rbx + rcx*4 + 8], cl
invalid
add dword [rbx + rcx*4 + 0x74], ecx
and al, 0x48
add eax, dword [rax]
add byte [rcx - 0x7d], al
stc
invalid
test cl, cl
add al, byte [rax]
add byte [rdi + rcx - 0x4a], al
or cl, ch
xchg edx, eax
add byte [rax], al
add byte [rax - 0x7d], cl
cmp rdx, 8
mov r14, qword [rsp + 0x48]
xor byte [rcx], al
add byte [rdi], cl
invalid
dec dword [rcx - 0x7d]
sti
add ecx, dword [rbx + rcx*4 + 0x74]
and al, 0x48
push rdi
and byte [rax - 0x39], cl
sub byte [r8], r8b
add byte [rax], al
add byte [rbp - 0x77], cl
ror dword [rax - 0x75], cl
pop rsp
and al, 0x40
adc byte [rdi], cl
mov dh, 0xd2
sub byte [r8], r8b
add byte [rax], al
add byte [rax - 0x77], cl
or byte [r9 + r9*4 + 0x5b], cl
adc byte [rax - 0x39], cl
add eax, dword [rdx]
add byte [rax], al
add cl, ch
lea eax, [rax]
add byte [rax], al
xor dword [rcx + rcx - 0x3e], ecx
invalid
adc esi, dword [rcx]
leave
shl rcx, 0x20
and al, 0x40
jmp 0x1002674c
jmp 0x1002674c