Function at 0x14001630d
Capabilities:
Encrypt data using aes

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rsi, r9
mov ebx, r8d
mov rdi, rdx
mov r14, rcx
mov word [rsp + 0x26], r8w
cmp r8w, 0x80
je 0x140016354
movzx eax, bx
cmp eax, 0xc0
je 0x140016350
cmp eax, 0x100
jne 0x1400169d1
mov al, 0xe
jmp 0x140016356
mov al, 0xc
jmp 0x140016356
mov al, 0xa
mov byte [rsi + 0xf0], al
cmp rdi, 3
jbe 0x140016974
mov edx, 4
mov rcx, r14
call sym.libaes::get_u32::h3bd240ce44699819
mov dword [rsi], eax
cmp rdi, 7
jbe 0x140016985
lea rcx, [r14 + 4]
mov edx, 4
call sym.libaes::get_u32::h3bd240ce44699819
mov dword [rsi + 4], eax
cmp rdi, 0xb
jbe 0x140016996
lea rcx, [r14 + 8]
mov edx, 4
call sym.libaes::get_u32::h3bd240ce44699819
mov dword [rsi + 8], eax
cmp rdi, 0xf
jbe 0x1400169a7
lea rcx, [r14 + 0xc]
mov edx, 4
call sym.libaes::get_u32::h3bd240ce44699819
mov dword [rsi + 0xc], eax
cmp bx, 0x80
jne 0x1400164cc
mov eax, 0x3c
xor ebx, ebx
mov ebp, 0xff
lea r15, [0x1400b6d40]
lea r12, [0x1400b7140]
lea r13, [0x1400b7540]
lea r14, [0x1400b7940]
lea rdi, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
cmp rax, 3
jbe 0x140016803
cmp rax, 4
je 0x140016814
mov ecx, dword [rsi + 0xc]
mov edx, ecx
shr edx, 0xe
and edx, 0x3fc
lea r8, [0x1400b6940]
movzx r8d, byte [rdx + r8 + 3]
shl r8d, 0x18
xor r8d, dword [rsi]
mov edx, ecx
shr edx, 8
and edx, ebp
movzx edx, byte [r15 + rdx*4 + 2]
shl edx, 0x10
mov r9d, ecx
and r9d, ebp
movzx r9d, byte [r12 + r9*4 + 1]
shl r9d, 8
xor r9d, edx
mov edx, ecx
shr edx, 0x18
movzx edx, byte [r13 + rdx*4]
xor edx, r9d
xor edx, r8d
xor edx, dword [rbx + r14]
mov dword [rsi + 0x10], edx
cmp rax, 5
jbe 0x14001682a
xor edx, dword [rsi + 4]
mov dword [rsi + 0x14], edx
cmp rax, 6
je 0x140016840
xor edx, dword [rsi + 8]
mov dword [rsi + 0x18], edx
cmp rax, 7
jbe 0x140016849
xor edx, ecx
mov dword [rsi + 0x1c], edx
cmp rbx, 0x24
je 0x1400167f2
mov ecx, 4
mov rdx, rsi
mov r8, rax
mov r9, rdi
call sym._ZN110__LT_core..ops..range..RangeFrom_LT_usize_GT__u20_as_u20_core..slice..index..SliceIndex_LT__u5b_T_u5d__GT__GT_9index_mut
mov rsi, rax
mov rax, rdx
add rbx, 4
jmp 0x140016400
cmp rdi, 0x13
jbe 0x1400169b5
lea rcx, [r14 + 0x10]
mov edx, 4
call sym.libaes::get_u32::h3bd240ce44699819
mov dword [rsi + 0x10], eax
cmp rdi, 0x17
jbe 0x1400169c3
lea rcx, [r14 + 0x14]
mov edx, 4
call sym.libaes::get_u32::h3bd240ce44699819
mov dword [rsi + 0x14], eax
cmp bx, 0xc0
jne 0x140016628
mov eax, 0x3c
xor ebx, ebx
mov ebp, 0xff
lea r15, [0x1400b6d40]
lea r12, [0x1400b7140]
lea r13, [0x1400b7540]
lea r14, [0x1400b7940]
lea rdi, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
cmp rax, 5
jbe 0x140016852
cmp rax, 6
je 0x140016860
mov ecx, dword [rsi + 0x14]
mov edx, ecx
shr edx, 0xe
and edx, 0x3fc
lea r8, [0x1400b6940]
movzx r8d, byte [rdx + r8 + 3]
shl r8d, 0x18
xor r8d, dword [rsi]
mov edx, ecx
shr edx, 8
and edx, ebp
movzx edx, byte [r15 + rdx*4 + 2]
shl edx, 0x10
mov r9d, ecx
and r9d, ebp
movzx r9d, byte [r12 + r9*4 + 1]
shl r9d, 8
xor r9d, edx
mov edx, ecx
shr edx, 0x18
movzx edx, byte [r13 + rdx*4]
xor edx, r9d
xor edx, r8d
xor edx, dword [rbx + r14]
mov dword [rsi + 0x18], edx
cmp rax, 7
jbe 0x140016876
xor edx, dword [rsi + 4]
mov dword [rsi + 0x1c], edx
cmp rax, 8
je 0x14001688c
xor edx, dword [rsi + 8]
mov dword [rsi + 0x20], edx
cmp rax, 9
jbe 0x140016895
xor edx, dword [rsi + 0xc]
mov dword [rsi + 0x24], edx
cmp rbx, 0x1c
je 0x1400167f2
cmp rax, 0xa
je 0x14001689e
xor edx, dword [rsi + 0x10]
mov dword [rsi + 0x28], edx
cmp rax, 0xb
jbe 0x1400168a7
xor edx, ecx
mov dword [rsi + 0x2c], edx
mov ecx, 6
mov rdx, rsi
mov r8, rax
mov r9, rdi
call sym._ZN110__LT_core..ops..range..RangeFrom_LT_usize_GT__u20_as_u20_core..slice..index..SliceIndex_LT__u5b_T_u5d__GT__GT_9index_mut
mov rsi, rax
mov rax, rdx
add rbx, 4
jmp 0x14001653c
cmp rdi, 0x1b
jbe 0x140016a1a
lea rcx, [r14 + 0x18]
mov edx, 4
call sym.libaes::get_u32::h3bd240ce44699819
mov dword [rsi + 0x18], eax
cmp rdi, 0x1f
jbe 0x140016a28
add r14, 0x1c
mov edx, 4
mov rcx, r14
call sym.libaes::get_u32::h3bd240ce44699819
mov dword [rsi + 0x1c], eax
cmp bx, 0x100
jne 0x1400167f2
mov eax, 0x3c
xor ebx, ebx
lea r14, [0x1400b6940]
mov ebp, 0xff
lea r15, [0x1400b6d40]
lea r12, [0x1400b7140]
lea r13, [0x1400b7540]
lea rdi, [0x1400b7940]
cmp rax, 7
jbe 0x1400168b0
cmp rax, 8
je 0x1400168c4
mov ecx, dword [rsi + 0x1c]
mov edx, ecx
shr edx, 0xe
and edx, 0x3fc
movzx r8d, byte [rdx + r14 + 3]
shl r8d, 0x18
xor r8d, dword [rsi]
mov edx, ecx
shr edx, 8
and edx, ebp
movzx edx, byte [r15 + rdx*4 + 2]
shl edx, 0x10
mov r9d, ecx
and r9d, ebp
movzx r9d, byte [r12 + r9*4 + 1]
shl r9d, 8
xor r9d, edx
mov edx, ecx
shr edx, 0x18
movzx edx, byte [r13 + rdx*4]
xor edx, r9d
xor edx, r8d
xor edx, dword [rbx + rdi]
mov dword [rsi + 0x20], edx
cmp rax, 9
jbe 0x1400168da
xor edx, dword [rsi + 4]
mov dword [rsi + 0x24], edx
cmp rax, 0xa
je 0x1400168f0
xor edx, dword [rsi + 8]
mov dword [rsi + 0x28], edx
cmp rax, 0xb
jbe 0x140016906
xor edx, dword [rsi + 0xc]
mov dword [rsi + 0x2c], edx
cmp rbx, 0x18
je 0x1400167f2
cmp rax, 0xc
je 0x14001691c
mov r8d, edx
shr r8d, 0x18
movzx r8d, byte [r14 + r8*4 + 3]
shl r8d, 0x18
xor r8d, dword [rsi + 0x10]
mov r9d, edx
shr r9d, 0xe
and r9d, 0x3fc
movzx r9d, byte [r9 + r15 + 2]
shl r9d, 0x10
mov r10d, edx
shr r10d, 8
and r10d, ebp
movzx r10d, byte [r12 + r10*4 + 1]
shl r10d, 8
xor r10d, r9d
and edx, ebp
movzx edx, byte [r13 + rdx*4]
xor edx, r10d
xor edx, r8d
mov dword [rsi + 0x30], edx
cmp rax, 0xd
jbe 0x140016932
xor edx, dword [rsi + 0x14]
mov dword [rsi + 0x34], edx
cmp rax, 0xe
je 0x140016948
xor edx, dword [rsi + 0x18]
mov dword [rsi + 0x38], edx
cmp rax, 0xf
jbe 0x14001695e
xor edx, ecx
mov dword [rsi + 0x3c], edx
mov ecx, 8
mov rdx, rsi
mov r8, rax
lea r9, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
call sym._ZN110__LT_core..ops..range..RangeFrom_LT_usize_GT__u20_as_u20_core..slice..index..SliceIndex_LT__u5b_T_u5d__GT__GT_9index_mut
mov rsi, rax
mov rax, rdx
add rbx, 4
jmp 0x14001669b
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 3
jmp 0x1400168bc
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 4
mov edx, 4
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 5
mov edx, 5
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
jmp 0x140016867
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
jmp 0x14001687d
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 5
jmp 0x1400168bc
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 6
mov edx, 6
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 7
mov edx, 7
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
jmp 0x1400168cb
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
jmp 0x1400168e1
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
jmp 0x1400168f7
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
jmp 0x14001690d
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 7
mov rdx, rax
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 8
mov edx, 8
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 9
mov edx, 9
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0xa
mov edx, 0xa
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0xb
mov edx, 0xb
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0xc
mov edx, 0xc
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0xd
mov edx, 0xd
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0xe
mov edx, 0xe
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0xf
mov edx, 0xf
call sym.core::panicking::panic_bounds_check::h646967d06236d449
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 4
jmp 0x140016a34
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 8
jmp 0x140016a34
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0xc
jmp 0x140016a34
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0x10
jmp 0x140016a34
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0x14
jmp 0x140016a34
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0x18
jmp 0x140016a34
lea rax, [rsp + 0x26]
lea rdx, [rsp + 0x28]
mov qword [rdx], rax
lea rax, str.wrong_value_for_bits
lea rcx, [rsp + 0x38]
mov qword [rcx], rax
mov eax, 1
mov qword [rcx + 8], rax
and qword [rcx + 0x20], 0
lea r8, [sym.core::fmt::num::imp::__impl_core::fmt::Display_for_u16_::fmt::hbef8eb8920bb16ac]
mov qword [rdx + 8], r8
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], rax
lea rdx, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
call sym.core::panicking::panic_fmt::h18e16da0d04b3f72
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0x1c
jmp 0x140016a34
lea r8, str.C:Users1.cargo_registry_srcindex.crates.io_6f17d22bba15001flibaes_0.7.0_srclib.rs
mov ecx, 0x20
mov rdx, rdi
call sym.core::slice::index::slice_end_index_len_fail::h0369f756e1733715
int3