Function at 0x140016dcd
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x138
movaps xmmword [rsp + 0x120], xmm6
mov rcx, qword [rcx]
mov rax, qword [0x140165d30]
mov al, byte [rax]
cmp al, 1
jne 0x140016a24
movaps xmm6, xmmword [rsp + 0x120]
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x140016dcd
mov qword [rsp + 0x38], rcx
mov rdi, qword [rdx]
mov rbx, qword [rdx + 8]
mov r14, qword [rdx + 0x10]
mov rbp, qword [rdx + 0x18]
mov qword [rsp + 0x28], rbp
shr rbp, 2
mov qword [rsp + 0x30], rbp
xor r13d, r13d
xorps xmm6, xmm6
lea r15, [rsp + 0x90]
cmp qword [rsp + 0x30], r13
je 0x140016b93
movaps xmmword [rsp + 0x100], xmm6
movaps xmmword [rsp + 0xf0], xmm6
movaps xmmword [rsp + 0xe0], xmm6
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm6
xor esi, esi
cmp rsi, 0x40
je 0x140016ab9
mov rcx, r15
mov rdx, rdi
call fcn.1400174a0
movups xmm0, xmmword [rsp + 0x90]
movups xmmword [rsp + rsi + 0x40], xmm0
add rsi, 0x10
jmp 0x140016a95
mov r12, r13
shl r12, 6
lea rsi, [rsp + 0xd0]
mov rcx, rsi
mov rdx, qword [rsp + 0x38]
lea rbp, [rsp + 0x40]
mov r8, rbp
call fcn.140001e0f
movups xmm0, xmmword [rbx + r12]
movups xmm1, xmmword [rbx + r12 + 0x10]
movups xmm2, xmmword [rbx + r12 + 0x20]
movups xmm3, xmmword [rbx + r12 + 0x30]
movaps xmmword [rsp + 0xc0], xmm3
movaps xmmword [rsp + 0xb0], xmm2
movaps xmmword [rsp + 0xa0], xmm1
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm6
mov rdx, r15
xor r8d, r8d
cmp r8, 4
je 0x140016b60
xor r9d, r9d
cmp r9, 0x10
je 0x140016b4f
mov r10b, byte [rsi + r9]
xor r10b, byte [rdx + r9]
mov byte [rbp + r9], r10b
inc r9
jmp 0x140016b37
inc r8
add rdx, 0x10
add rsi, 0x10
add rbp, 0x10
jmp 0x140016b2e
inc r13
movaps xmm0, xmmword [rsp + 0x40]
movaps xmm1, xmmword [rsp + 0x50]
movaps xmm2, xmmword [rsp + 0x60]
movaps xmm3, xmmword [rsp + 0x70]
movups xmmword [r14 + r12 + 0x30], xmm3
movups xmmword [r14 + r12 + 0x20], xmm2
movups xmmword [r14 + r12 + 0x10], xmm1
movups xmmword [r14 + r12], xmm0
jmp 0x140016a54
mov rsi, qword [rsp + 0x28]
mov r8d, esi
and r8d, 3
xorps xmm6, xmm6
lea rcx, [rsp + 0xd0]
movaps xmmword [rcx + 0x30], xmm6
movaps xmmword [rcx + 0x20], xmm6
movaps xmmword [rcx + 0x10], xmm6
movaps xmmword [rcx], xmm6
mov edx, 4
mov qword [rsp + 0x88], r8
call fcn.140016923
cmp rdx, 4
jae 0x140016d02
mov r15, rax
shl rsi, 4
and rsi, 0xffffffffffffffc0
add rbx, rsi
add r14, rsi
mov qword [rsp + 0x28], rdx
mov rbp, rdx
shl rbp, 4
mov qword [rsp + 0x30], rbp
xor esi, esi
cmp qword [rsp + 0x30], rsi
je 0x140016c6c
lea r12, [r15 + rsi]
lea r13, [rsp + 0x110]
mov rcx, r13
mov rdx, rdi
call fcn.1400174a0
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm6
lea rbp, [rsp + 0x90]
mov rcx, rbp
mov rdx, r13
call fcn.140015e57
lea rcx, [rsp + 0x40]
mov rdx, qword [rsp + 0x38]
mov r8, rbp
call fcn.140001e0f
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [r12], xmm0
add rsi, 0x10
jmp 0x140016bf9
xor ecx, ecx
xorps xmm0, xmm0
mov r9, qword [rsp + 0x88]
mov r10, qword [rsp + 0x28]
cmp rcx, r9
je 0x140016cd4
cmp rcx, r10
je 0x140016cf0
lea rax, [rcx + 1]
shl rcx, 4
lea rdx, [r14 + rcx]
movups xmm1, xmmword [rbx + rcx]
movaps xmmword [rsp + 0x90], xmm1
movaps xmmword [rsp + 0x40], xmm0
xor ecx, ecx
cmp rcx, 0x10
je 0x140016cc3
mov r8b, byte [r15 + rcx]
xor r8b, byte [rsp + rcx + 0x90]
mov byte [rsp + rcx + 0x40], r8b
inc rcx
jmp 0x140016ca7
movaps xmm1, xmmword [rsp + 0x40]
movups xmmword [rdx], xmm1
add r15, 0x10
mov rcx, rax
jmp 0x140016c7e
movaps xmm6, xmmword [rsp + 0x120]
add rsp, 0x138
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str..cargo_registry_srcindex.crates.io_6f17d22bba15001fcipher_0.4.4_src_stream_core.rs
mov rcx, r10
mov rdx, r10
call fcn.1400088d0
lea rcx, str.assertion_failed:_blocks.len_____Self::ParBlocksSize::USIZE
lea r8, str..cargo_registry_srcindex.crates.io_6f17d22bba15001fcipher_0.4.4_src_stream_core.rs
mov edx, 0x3b
call fcn.140008780
int3
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2e8
movaps xmmword [rsp + 0x2d0], xmm15
movaps xmmword [rsp + 0x2c0], xmm14
movaps xmmword [rsp + 0x2b0], xmm13
movaps xmmword [rsp + 0x2a0], xmm12
movaps xmmword [rsp + 0x290], xmm11
movaps xmmword [rsp + 0x280], xmm10
movaps xmmword [rsp + 0x270], xmm9
movaps xmmword [rsp + 0x260], xmm8
movaps xmmword [rsp + 0x250], xmm7
movaps xmmword [rsp + 0x240], xmm6
mov rbx, qword [rdx]
mov rbp, qword [rdx + 8]
mov rsi, qword [rdx + 0x10]
mov rax, qword [rdx + 0x18]
mov qword [rsp + 0x28], rax
shr rax, 3
mov qword [rsp + 0xd8], rax
movaps xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x120], xmm0
movdqa xmm0, xmmword [rcx + 0x10]
movdqa xmm1, xmmword [rcx + 0x20]
movaps xmm2, xmmword [rcx + 0x30]
movaps xmmword [rsp + 0xf0], xmm2
movaps xmm2, xmmword [rcx + 0x40]
movaps xmmword [rsp + 0xe0], xmm2
movdqa xmm11, xmmword [rcx + 0x50]
movdqa xmm12, xmmword [rcx + 0x60]
movdqa xmm13, xmmword [rcx + 0x70]
movdqa xmm14, xmmword [rcx + 0x80]
movdqa xmm15, xmmword [rcx + 0x90]
movdqa xmm6, xmmword [rcx + 0xa0]
movdqa xmm7, xmmword [rcx + 0xb0]
movdqa xmm8, xmmword [rcx + 0xc0]
movdqa xmm9, xmmword [rcx + 0xd0]
mov qword [rsp + 0xd0], rcx
movdqa xmm10, xmmword [rcx + 0xe0]
xor r14d, r14d
lea rdi, [rsp + 0x1c0]
lea r15, [rsp + 0x140]
lea r12, [rsp + 0x30]
movdqa xmmword [rsp + 0x110], xmm0
movdqa xmmword [rsp + 0x100], xmm1
cmp qword [rsp + 0xd8], r14
je 0x140017301
mov r13, rdi
mov rcx, rdi
call fcn.140015dde
mov rcx, r15
call fcn.140015dde
xor edi, edi
cmp rdi, 0x80
je 0x140016f52
mov rcx, r12
mov rdx, rbx
call fcn.1400174a0
movdqu xmm0, xmmword [rsp + 0x30]
movdqu xmmword [rsp + rdi + 0x140], xmm0
add rdi, 0x10
jmp 0x140016f29
movaps xmm0, xmmword [rsp + 0x140]
movaps xmm1, xmmword [rsp + 0x120]
xorps xmm0, xmm1
movaps xmmword [rsp + 0x30], xmm0
movaps xmm0, xmmword [rsp + 0x150]
xorps xmm0, xmm1
movaps xmmword [rsp + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x160]
xorps xmm0, xmm1
movaps xmmword [rsp + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x170]
xorps xmm0, xmm1
movaps xmmword [rsp + 0x60], xmm0
movaps xmm0, xmmword [rsp + 0x180]
xorps xmm0, xmm1
movaps xmmword [rsp + 0x70], xmm0
movaps xmm0, xmmword [rsp + 0x190]
xorps xmm0, xmm1
movaps xmmword [rsp + 0x80], xmm0
movaps xmm0, xmmword [rsp + 0x1a0]
xorps xmm0, xmm1
movaps xmmword [rsp + 0x90], xmm0
movaps xmm0, xmmword [rsp + 0x1b0]
xorps xmm0, xmm1
movaps xmmword [rsp + 0xa0], xmm0
xor eax, eax
movdqa xmm1, xmmword [rsp + 0x110]
mov rdi, r13
cmp rax, 0x80
je 0x140017010
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm1
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140016ff1
xor eax, eax
movdqa xmm1, xmmword [rsp + 0x100]
cmp rax, 0x80
je 0x14001703a
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm1
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x14001701b
xor eax, eax
movdqa xmm1, xmmword [rsp + 0xf0]
cmp rax, 0x80
je 0x140017064
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm1
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140017045
xor eax, eax
movdqa xmm1, xmmword [rsp + 0xe0]
cmp rax, 0x80
je 0x14001708e
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm1
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x14001706f
xor eax, eax
cmp rax, 0x80
je 0x1400170b0
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm11
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140017090
xor eax, eax
cmp rax, 0x80
je 0x1400170d2
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm12
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x1400170b2
xor eax, eax
cmp rax, 0x80
je 0x1400170f4
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm13
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x1400170d4
xor eax, eax
cmp rax, 0x80
je 0x140017116
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm14
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x1400170f6
xor eax, eax
cmp rax, 0x80
je 0x140017138
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm15
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140017118
xor eax, eax
cmp rax, 0x80
je 0x140017159
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm6
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x14001713a
xor eax, eax
cmp rax, 0x80
je 0x14001717a
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm7
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x14001715b
xor eax, eax
cmp rax, 0x80
je 0x14001719c
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm8
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x14001717c
xor eax, eax
cmp rax, 0x80
je 0x1400171be
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm9
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x14001719e
xor eax, eax
cmp rax, 0x80
je 0x1400171e0
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenclast xmm0, xmm10
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x1400171c0
mov r13, r14
shl r13, 7
mov rdx, rbp
add rdx, r13
movaps xmm0, xmmword [rsp + 0x30]
movaps xmmword [rsp + 0xb0], xmm0
movdqa xmm1, xmmword [rsp + 0x40]
movaps xmm2, xmmword [rsp + 0x50]
movaps xmm3, xmmword [rsp + 0x60]
movaps xmm4, xmmword [rsp + 0x70]
movaps xmm5, xmmword [rsp + 0x80]
movaps xmm0, xmmword [rsp + 0x90]
movaps xmmword [rsp + 0xc0], xmm0
movaps xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x130], xmm0
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x1c0], xmm0
movdqa xmmword [rsp + 0x1d0], xmm1
movaps xmmword [rsp + 0x1e0], xmm2
movaps xmmword [rsp + 0x1f0], xmm3
movaps xmmword [rsp + 0x200], xmm4
movaps xmmword [rsp + 0x210], xmm5
movaps xmm0, xmmword [rsp + 0xc0]
movaps xmmword [rsp + 0x220], xmm0
movdqa xmm0, xmmword [rsp + 0x130]
movdqa xmmword [rsp + 0x230], xmm0
mov r8d, pe_nt_image_headers64
mov rcx, r15
call sub.msvcrt.dll_memcpy
mov rcx, r12
call fcn.140015dde
mov rax, r12
mov rcx, rdi
mov rdx, r15
xor r8d, r8d
cmp r8, 8
je 0x1400172e5
xor r9d, r9d
cmp r9, 0x10
je 0x1400172d4
mov r10b, byte [rcx + r9]
xor r10b, byte [rdx + r9]
mov byte [rax + r9], r10b
inc r9
jmp 0x1400172bd
inc r8
add rdx, 0x10
add rcx, 0x10
add rax, 0x10
jmp 0x1400172b4
inc r14
add r13, rsi
mov r8d, pe_nt_image_headers64
mov rcx, r13
mov rdx, r12
call sub.msvcrt.dll_memcpy
jmp 0x140016f06
mov rdi, qword [rsp + 0x28]
mov rax, rdi
and rax, 0xfffffffffffffff8
mov qword [rsp + 0xb0], rax
and edi, 7
lea r14, [rsp + 0x30]
mov rcx, r14
call fcn.140015dde
mov edx, 8
mov rcx, r14
mov qword [rsp + 0x28], rdi
mov r8, rdi
call fcn.140016923
mov r15, rax
mov r14, rdx
mov qword [rsp + 0xc0], rdx
shl r14, 4
lea r12, [rsp + 0x140]
mov r13, rax
test r14, r14
je 0x140017393
mov rdi, rsi
mov rsi, rbp
lea rbp, [r13 + 0x10]
mov rcx, r12
mov rdx, rbx
call fcn.1400174a0
mov rcx, qword [rsp + 0xd0]
mov rdx, r12
mov r8, r13
call fcn.1400168ac
add r14, 0xfffffffffffffff0
mov r13, rbp
mov rbp, rsi
mov rsi, rdi
jmp 0x140017357
mov rax, qword [rsp + 0xb0]
shl rax, 4
add rbp, rax
add rsi, rax
xor ecx, ecx
pxor xmm0, xmm0
mov r9, qword [rsp + 0x28]
mov r10, qword [rsp + 0xc0]
cmp rcx, r9
je 0x140017421
cmp rcx, r10
je 0x14001748d
lea rax, [rcx + 1]
shl rcx, 4
lea rdx, [rsi + rcx]
movdqu xmm1, xmmword [rbp + rcx]
movdqa xmmword [rsp + 0x1c0], xmm1
movdqa xmmword [rsp + 0x140], xmm0
xor ecx, ecx
cmp rcx, 0x10
je 0x14001740b
mov r8b, byte [r15 + rcx]
xor r8b, byte [rsp + rcx + 0x1c0]
mov byte [rsp + rcx + 0x140], r8b
inc rcx
jmp 0x1400173ec
movdqa xmm1, xmmword [rsp + 0x140]
movdqu xmmword [rdx], xmm1
add r15, 0x10
mov rcx, rax
jmp 0x1400173b8
movaps xmm6, xmmword [rsp + 0x240]
movaps xmm7, xmmword [rsp + 0x250]
movaps xmm8, xmmword [rsp + 0x260]
movaps xmm9, xmmword [rsp + 0x270]
movaps xmm10, xmmword [rsp + 0x280]
movaps xmm11, xmmword [rsp + 0x290]
movaps xmm12, xmmword [rsp + 0x2a0]
movaps xmm13, xmmword [rsp + 0x2b0]
movaps xmm14, xmmword [rsp + 0x2c0]
movaps xmm15, xmmword [rsp + 0x2d0]
add rsp, 0x2e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str..cargo_registry_srcindex.crates.io_6f17d22bba15001fcipher_0.4.4_src_stream_core.rs
mov rcx, r10
mov rdx, r10
call fcn.1400088d0
int3