Function at 0x1400063a0
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 r8, rdx
mov rbp, qword [rcx]
test rbp, rbp
je 0x14000640c
mov rax, qword [rcx + 8]
cmp rax, 3
jbe 0x14000686d
cmp rax, 7
jbe 0x14000687b
cmp rax, 0xb
jbe 0x140006889
cmp rax, 0xf
jbe 0x140006897
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x48], rax
mov rax, qword [rcx + 0x18]
mov qword [rsp + 0x50], rax
mov edi, dword [rbp]
bswap edi
xor edi, dword [r8]
mov eax, dword [rbp + 4]
bswap eax
xor eax, dword [r8 + 4]
jmp 0x140006457
mov rdx, qword [rcx + 0x10]
cmp rdx, 3
jbe 0x1400068ad
cmp rdx, 7
jbe 0x1400068c0
cmp rdx, 0xb
jbe 0x1400068d3
cmp rdx, 0xf
jbe 0x1400068e6
mov qword [rsp + 0x50], rdx
mov rbp, qword [rcx + 8]
mov edi, dword [rbp]
bswap edi
xor edi, dword [r8]
mov eax, dword [rbp + 4]
bswap eax
xor eax, dword [r8 + 4]
mov qword [rsp + 0x48], rbp
mov edx, dword [rbp + 8]
mov ebx, dword [rbp + 0xc]
bswap edx
bswap ebx
xor edx, dword [r8 + 8]
xor ebx, dword [r8 + 0xc]
movzx ecx, byte [r8 + 0xf0]
shr cl, 1
mov byte [rsp + 0x2f], cl
add r8, 0x2c
mov ebp, 0x3c
mov ecx, edi
nop word cs:[rax + rax]
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x58], rbp
mov ebp, ecx
movzx edi, cl
mov qword [rsp + 0x40], rdi
movzx esi, ch
mov qword [rsp + 0x38], rsi
shr ecx, 0x10
movzx esi, cl
movzx ecx, bl
mov qword [rsp + 0x30], rcx
movzx edi, bh
mov r11d, ebx
shr ebx, 0x18
lea r8, [0x14013a2a8]
mov r15d, dword [r8 + rsi*4]
lea r10, [0x140139ea8]
xor r15d, dword [r10 + rbx*4]
shr ebp, 0x18
mov ebx, eax
shr ebx, 0x10
movzx ebx, bl
mov ebx, dword [r8 + rbx*4]
xor ebx, dword [r10 + rbp*4]
movzx ebp, dh
lea r9, [0x1401396a8]
xor ebx, dword [r9 + rbp*4]
mov ebp, eax
movzx r14d, al
movzx esi, ah
mov rax, r15
shr ebp, 0x18
mov ecx, edx
shr ecx, 0x10
movzx ecx, cl
mov r15d, edx
movzx r12d, dl
mov r13d, dword [r8 + rcx*4]
xor r13d, dword [r10 + rbp*4]
xor r13d, dword [r9 + rdi*4]
shr r15d, 0x18
shr r11d, 0x10
movzx ecx, r11b
lea rdi, [0x140139aa8]
mov edx, dword [r8 + rcx*4]
movzx r8d, byte [rsp + 0x2f]
xor edx, dword [r10 + r15*4]
mov rbp, qword [rsp + 0x38]
xor edx, dword [r9 + rbp*4]
xor eax, dword [r9 + rsi*4]
mov rbp, qword [rsp + 0x30]
xor ebx, dword [rdi + rbp*4]
mov rsi, qword [rsp + 0x60]
xor ebx, dword [rsi - 0x1c]
mov rbp, qword [rsp + 0x40]
xor r13d, dword [rdi + rbp*4]
xor r13d, dword [rsi - 0x18]
xor edx, dword [rdi + r14*4]
xor edx, dword [rsi - 0x14]
xor eax, dword [rdi + r12*4]
xor eax, dword [rsi - 0x10]
dec r8b
mov byte [rsp + 0x2f], r8b
je 0x1400066a3
mov r9, rsi
mov ebp, ebx
mov qword [rsp + 0x40], rbp
movzx ebp, bl
mov qword [rsp + 0x38], rbp
movzx esi, bh
mov qword [rsp + 0x30], rsi
shr ebx, 0x10
mov edi, r13d
movzx ecx, bl
movzx r11d, al
movzx ebp, ah
mov r12d, eax
shr eax, 0x18
lea r15, [0x14013a2a8]
mov ebx, dword [r15 + rcx*4]
lea r13, [0x140139ea8]
xor ebx, dword [r13 + rax*4]
mov r14d, edi
mov esi, edi
shr esi, 0x18
mov ecx, edx
shr ecx, 0x10
movzx ecx, cl
mov eax, dword [r15 + rcx*4]
xor eax, dword [r13 + rsi*4]
mov ecx, edi
movzx r10d, cl
movzx edi, ch
lea rcx, [0x1401396a8]
xor eax, dword [rcx + rbp*4]
movzx ebp, dh
mov esi, edx
shr esi, 0x18
shr r12d, 0x10
movzx r8d, r12b
movzx r12d, dl
mov edx, dword [r15 + r8*4]
xor edx, dword [r13 + rsi*4]
mov rsi, qword [rsp + 0x30]
xor edx, dword [rcx + rsi*4]
xor ebx, dword [rcx + rdi*4]
mov ecx, dword [rcx + rbp*4]
lea rbp, [0x140139aa8]
xor ecx, dword [rbp + r11*4]
lea rdi, [0x140139aa8]
shr r14d, 0x10
movzx ebp, r14b
mov rsi, qword [rsp + 0x40]
shr esi, 0x18
xor ecx, dword [r15 + rbp*4]
xor ecx, dword [r13 + rsi*4]
xor ecx, dword [r9 - 0xc]
mov rbp, qword [rsp + 0x38]
xor eax, dword [rdi + rbp*4]
xor eax, dword [r9 - 8]
xor edx, dword [rdi + r10*4]
xor edx, dword [r9 - 4]
xor ebx, dword [rdi + r12*4]
xor ebx, dword [r9]
mov rbp, qword [rsp + 0x58]
add rbp, 0xfffffffffffffff8
lea r8, [r9 + 0x20]
cmp rbp, 4
ja 0x140006490
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 4
mov edx, 4
call dbg.panic_bounds_check
ud2
lea r11, [0x1401396a8]
lea r9, [0x140139ea8]
lea r8, [0x14013a2a8]
cmp qword [rsp + 0x58], 8
je 0x14000681b
mov r14, qword [rsp + 0x50]
cmp r14, 3
jbe 0x14000682d
mov r10d, edx
mov ecx, ebx
shr ecx, 0x18
movzx ecx, byte [r11 + rcx*4 + 3]
shl ecx, 0x18
mov ebp, r13d
shr r13d, 0x10
movzx edx, r13b
movzx edx, byte [rdi + rdx*4 + 2]
shl edx, 0x10
or edx, ecx
mov ecx, r10d
mov r15d, r10d
movzx ecx, ch
movzx ecx, byte [r9 + rcx*4 + 1]
shl ecx, 8
or ecx, edx
movzx edx, al
mov r10, r8
movzx edx, byte [r8 + rdx*4]
or edx, ecx
xor edx, dword [rsi - 0xc]
bswap edx
mov r8, qword [rsp + 0x48]
mov dword [r8], edx
cmp r14, 8
jb 0x14000683b
mov ecx, ebp
shr ecx, 0x18
movzx ecx, byte [r11 + rcx*4 + 3]
shl ecx, 0x18
mov edx, r15d
shr edx, 0x10
movzx edx, dl
movzx edx, byte [rdi + rdx*4 + 2]
shl edx, 0x10
or edx, ecx
movzx ecx, ah
movzx ecx, byte [r9 + rcx*4 + 1]
shl ecx, 8
or ecx, edx
movzx edx, bl
movzx edx, byte [r10 + rdx*4]
or edx, ecx
xor edx, dword [rsi - 8]
bswap edx
mov dword [r8 + 4], edx
cmp r14, 0xb
jbe 0x140006849
mov ecx, r15d
shr ecx, 0x18
movzx ecx, byte [r11 + rcx*4 + 3]
shl ecx, 0x18
mov edx, eax
shr edx, 0x10
movzx edx, dl
movzx edx, byte [rdi + rdx*4 + 2]
shl edx, 0x10
or edx, ecx
movzx ecx, bh
movzx ecx, byte [r9 + rcx*4 + 1]
shl ecx, 8
or ecx, edx
mov edx, ebp
movzx edx, dl
movzx edx, byte [r10 + rdx*4]
or edx, ecx
xor edx, dword [rsi - 4]
bswap edx
mov dword [r8 + 8], edx
cmp r14, 0xf
jbe 0x140006857
shr eax, 0x18
movzx eax, byte [r11 + rax*4 + 3]
shr ebx, 0x10
movzx ecx, bl
mov edx, ebp
movzx edx, dh
movzx ebp, r15b
shl eax, 0x18
movzx ecx, byte [rdi + rcx*4 + 2]
shl ecx, 0x10
or ecx, eax
movzx eax, byte [r9 + rdx*4 + 1]
shl eax, 8
or eax, ecx
movzx ecx, byte [r10 + rbp*4]
or ecx, eax
xor ecx, dword [rsi]
bswap ecx
mov dword [r8 + 0xc], ecx
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
xor ecx, ecx
xor edx, edx
call dbg.panic_bounds_check
ud2
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 4
jmp 0x140006863
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 8
jmp 0x140006863
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 0xc
jmp 0x140006863
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 0x10
mov rdx, r14
call dbg.slice_end_index_len_fail
ud2
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 4
jmp 0x1400068a3
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 8
jmp 0x1400068a3
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 0xc
jmp 0x1400068a3
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 0x10
mov rdx, rax
call dbg.slice_end_index_len_fail
ud2
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 4
call dbg.slice_end_index_len_fail
ud2
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 8
call dbg.slice_end_index_len_fail
ud2
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 0xc
call dbg.slice_end_index_len_fail
ud2
lea r8, str._home_kali_.cargo_registry_src_github.com_1ecc6299db9ec823_libaes_0.6.5_src_lib.rs
mov ecx, 0x10
call dbg.slice_end_index_len_fail
ud2