Function at 0x14001b810
Capabilities:
Encrypt data using aes
Reference aes constants

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, r9
call sym.libaes::aes_set_encrypt_key::h9c65a30eacc75ede
movzx ecx, byte [rsi + 0xf0]
test rcx, rcx
je 0x14001ba31
shl ecx, 2
xor edx, edx
nop dword [rax]
cmp rcx, 0x3b
ja 0x14001ba3e
mov eax, dword [rsi + rdx*4]
mov r8d, dword [rsi + rcx*4]
mov dword [rsi + rdx*4], r8d
mov dword [rsi + rcx*4], eax
lea rax, [rcx + 1]
cmp rax, 0x3c
jae 0x14001ba4f
mov eax, dword [rsi + rdx*4 + 4]
mov r8d, dword [rsi + rcx*4 + 4]
mov dword [rsi + rdx*4 + 4], r8d
mov dword [rsi + rcx*4 + 4], eax
lea rax, [rcx + 2]
cmp rax, 0x3c
jae 0x14001ba65
mov eax, dword [rsi + rdx*4 + 8]
mov r8d, dword [rsi + rcx*4 + 8]
mov dword [rsi + rdx*4 + 8], r8d
mov dword [rsi + rcx*4 + 8], eax
lea rax, [rcx + 3]
cmp rax, 0x3c
jae 0x14001ba79
mov eax, dword [rsi + rdx*4 + 0xc]
mov r8d, dword [rsi + rcx*4 + 0xc]
mov dword [rsi + rdx*4 + 0xc], r8d
mov dword [rsi + rcx*4 + 0xc], eax
add rdx, 4
add rcx, 0xfffffffffffffffc
cmp rdx, rcx
jb 0x14001b840
movzx eax, byte [rsi + 0xf0]
cmp al, 2
jb 0x14001ba31
dec al
mov ecx, 7
lea rdx, [0x1400cc3c8]
lea r8, [0x1400cc890]
lea r9, [0x1400ccca8]
lea r10, [0x1400cd0a8]
lea r11, [0x1400cd4a8]
nop word cs:[rax + rax]
cmp rcx, 0x3f
je 0x14001ba8d
mov ebx, dword [rsi + rcx*4 - 0xc]
mov edi, ebx
mov r14d, ebx
shr r14d, 0x18
movzx r14d, byte [rdx + r14*4]
shr edi, 0xe
and edi, 0x3fc
movzx edi, byte [rdi + rdx]
mov edi, dword [r9 + rdi*4]
xor edi, dword [r8 + r14*4]
movzx ebp, bh
movzx r14d, byte [rdx + rbp*4]
xor edi, dword [r10 + r14*4]
movzx ebx, bl
movzx ebx, byte [rdx + rbx*4]
xor edi, dword [r11 + rbx*4]
mov ebx, dword [rsi + rcx*4 - 8]
mov r14d, ebx
movzx ebp, bh
mov r15d, ebx
shr r15d, 0x18
movzx r15d, byte [rdx + r15*4]
shr r14d, 0xe
and r14d, 0x3fc
movzx r14d, byte [r14 + rdx]
mov r14d, dword [r9 + r14*4]
xor r14d, dword [r8 + r15*4]
movzx ebx, bl
movzx r15d, byte [rdx + rbp*4]
xor r14d, dword [r10 + r15*4]
mov dword [rsi + rcx*4 - 0xc], edi
movzx edi, byte [rdx + rbx*4]
xor r14d, dword [r11 + rdi*4]
mov dword [rsi + rcx*4 - 8], r14d
mov ebx, dword [rsi + rcx*4 - 4]
mov edi, ebx
mov r14d, ebx
shr r14d, 0x18
movzx r14d, byte [rdx + r14*4]
shr edi, 0xe
and edi, 0x3fc
movzx edi, byte [rdi + rdx]
mov edi, dword [r9 + rdi*4]
xor edi, dword [r8 + r14*4]
movzx ebp, bh
movzx r14d, byte [rdx + rbp*4]
xor edi, dword [r10 + r14*4]
movzx ebx, bl
movzx ebx, byte [rdx + rbx*4]
xor edi, dword [r11 + rbx*4]
mov dword [rsi + rcx*4 - 4], edi
mov ebx, dword [rsi + rcx*4]
mov edi, ebx
mov r14d, ebx
shr r14d, 0x18
movzx r14d, byte [rdx + r14*4]
shr edi, 0xe
and edi, 0x3fc
movzx edi, byte [rdi + rdx]
mov edi, dword [r9 + rdi*4]
xor edi, dword [r8 + r14*4]
movzx ebp, bh
movzx r14d, byte [rdx + rbp*4]
xor edi, dword [r10 + r14*4]
movzx ebx, bl
movzx ebx, byte [rdx + rbx*4]
xor edi, dword [r11 + rbx*4]
mov dword [rsi + rcx*4], edi
add rcx, 4
dec al
jne 0x14001b910
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
lea r8, str._home_f_.cargo_registry_src_index.crates.io_6f17d22bba15001f_libaes_0.7.0_src_lib.rs
mov edx, 0x3c
call sym.core::panicking::panic_bounds_check::hc59ada7dadd9fb7c
lea r8, str._home_f_.cargo_registry_src_index.crates.io_6f17d22bba15001f_libaes_0.7.0_src_lib.rs
mov ecx, 0x3c
mov edx, 0x3c
call sym.core::panicking::panic_bounds_check::hc59ada7dadd9fb7c
lea r8, str._home_f_.cargo_registry_src_index.crates.io_6f17d22bba15001f_libaes_0.7.0_src_lib.rs
mov edx, 0x3c
mov rcx, rax
call sym.core::panicking::panic_bounds_check::hc59ada7dadd9fb7c
lea r8, str._home_f_.cargo_registry_src_index.crates.io_6f17d22bba15001f_libaes_0.7.0_src_lib.rs
mov edx, 0x3c
mov rcx, rax
call sym.core::panicking::panic_bounds_check::hc59ada7dadd9fb7c
lea r8, str._home_f_.cargo_registry_src_index.crates.io_6f17d22bba15001f_libaes_0.7.0_src_lib.rs
xor ecx, ecx
xor edx, edx
call sym.core::panicking::panic_bounds_check::hc59ada7dadd9fb7c
int3