Function at 0x140012250
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 [0x14015c068]
mov al, byte [rax]
cmp al, 1
jne 0x140011e1a
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 0x140012250
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 0x140011f89
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 0x140011eaf
mov rcx, r15
mov rdx, rdi
call fcn.140012929
movups xmm0, xmmword [rsp + 0x90]
movups xmmword [rsp + rsi + 0x40], xmm0
add rsi, 0x10
jmp 0x140011e8b
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.140001e7f
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 0x140011f56
xor r9d, r9d
cmp r9, 0x10
je 0x140011f45
mov r10b, byte [rsi + r9]
xor r10b, byte [rdx + r9]
mov byte [rbp + r9], r10b
inc r9
jmp 0x140011f2d
inc r8
add rdx, 0x10
add rsi, 0x10
add rbp, 0x10
jmp 0x140011f24
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 0x140011e4a
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.140011da7
cmp rdx, 4
jae 0x1400120fa
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 0x140012062
lea r12, [r15 + rsi]
lea r13, [rsp + 0x110]
mov rcx, r13
mov rdx, rdi
call fcn.140012929
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.140013b2c
lea rcx, [rsp + 0x40]
mov rdx, qword [rsp + 0x38]
mov r8, rbp
call fcn.140001e7f
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [r12], xmm0
add rsi, 0x10
jmp 0x140011fef
xor ecx, ecx
xorps xmm0, xmm0
mov r9, qword [rsp + 0x88]
mov r10, qword [rsp + 0x28]
cmp rcx, r9
je 0x1400120ca
cmp rcx, r10
je 0x1400120e6
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 0x1400120b9
mov r8b, byte [r15 + rcx]
xor r8b, byte [rsp + rcx + 0x90]
mov byte [rsp + rcx + 0x40], r8b
inc rcx
jmp 0x14001209d
movaps xmm1, xmmword [rsp + 0x40]
movups xmmword [rdx], xmm1
add r15, 0x10
mov rcx, rax
jmp 0x140012074
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.140008e50
ud2
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.140008d60
ud2
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 0x140012784
mov r13, rdi
mov rcx, rdi
call fcn.140013ab2
mov rcx, r15
call fcn.140013ab2
xor edi, edi
cmp rdi, 0x80
je 0x1400123d5
mov rcx, r12
mov rdx, rbx
call fcn.140012929
movdqu xmm0, xmmword [rsp + 0x30]
movdqu xmmword [rsp + rdi + 0x140], xmm0
add rdi, 0x10
jmp 0x1400123ac
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 0x140012493
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm1
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140012474
xor eax, eax
movdqa xmm1, xmmword [rsp + 0x100]
cmp rax, 0x80
je 0x1400124bd
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm1
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x14001249e
xor eax, eax
movdqa xmm1, xmmword [rsp + 0xf0]
cmp rax, 0x80
je 0x1400124e7
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm1
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x1400124c8
xor eax, eax
movdqa xmm1, xmmword [rsp + 0xe0]
cmp rax, 0x80
je 0x140012511
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm1
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x1400124f2
xor eax, eax
cmp rax, 0x80
je 0x140012533
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm11
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140012513
xor eax, eax
cmp rax, 0x80
je 0x140012555
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm12
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140012535
xor eax, eax
cmp rax, 0x80
je 0x140012577
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm13
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140012557
xor eax, eax
cmp rax, 0x80
je 0x140012599
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm14
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140012579
xor eax, eax
cmp rax, 0x80
je 0x1400125bb
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm15
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x14001259b
xor eax, eax
cmp rax, 0x80
je 0x1400125dc
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm6
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x1400125bd
xor eax, eax
cmp rax, 0x80
je 0x1400125fd
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm7
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x1400125de
xor eax, eax
cmp rax, 0x80
je 0x14001261f
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm8
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x1400125ff
xor eax, eax
cmp rax, 0x80
je 0x140012641
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenc xmm0, xmm9
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140012621
xor eax, eax
cmp rax, 0x80
je 0x140012663
movdqa xmm0, xmmword [rsp + rax + 0x30]
aesenclast xmm0, xmm10
movdqa xmmword [rsp + rax + 0x30], xmm0
add rax, 0x10
jmp 0x140012643
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.140013ab2
mov rax, r12
mov rcx, rdi
mov rdx, r15
xor r8d, r8d
cmp r8, 8
je 0x140012768
xor r9d, r9d
cmp r9, 0x10
je 0x140012757
mov r10b, byte [rcx + r9]
xor r10b, byte [rdx + r9]
mov byte [rax + r9], r10b
inc r9
jmp 0x140012740
inc r8
add rdx, 0x10
add rcx, 0x10
add rax, 0x10
jmp 0x140012737
inc r14
add r13, rsi
mov r8d, pe_nt_image_headers64
mov rcx, r13
mov rdx, r12
call sub.msvcrt.dll_memcpy
jmp 0x140012389
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.140013ab2
mov edx, 8
mov rcx, r14
mov qword [rsp + 0x28], rdi
mov r8, rdi
call fcn.140011da7
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 0x140012816
mov rdi, rsi
mov rsi, rbp
lea rbp, [r13 + 0x10]
mov rcx, r12
mov rdx, rbx
call fcn.140012929
mov rcx, qword [rsp + 0xd0]
mov rdx, r12
mov r8, r13
call fcn.140011d30
add r14, 0xfffffffffffffff0
mov r13, rbp
mov rbp, rsi
mov rsi, rdi
jmp 0x1400127da
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 0x1400128a4
cmp rcx, r10
je 0x140012910
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 0x14001288e
mov r8b, byte [r15 + rcx]
xor r8b, byte [rsp + rcx + 0x1c0]
mov byte [rsp + rcx + 0x140], r8b
inc rcx
jmp 0x14001286f
movdqa xmm1, xmmword [rsp + 0x140]
movdqu xmmword [rdx], xmm1
add r15, 0x10
mov rcx, rax
jmp 0x14001283b
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.140008e50
ud2