Function at 0x140026670
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 fcn.140025b80
movzx ecx, byte [rsi + 0xf0]
test rcx, rcx
je 0x140026895
shl rcx, 2
xor edx, edx
nop word [rax + rax]
cmp rdx, 0x3b
ja 0x1400268a2
cmp rcx, 0x3c
jae 0x1400268ab
mov eax, dword [rsi + rdx*4]
mov ebx, dword [rsi + rcx*4]
mov dword [rsi + rdx*4], ebx
mov dword [rsi + rcx*4], eax
lea rax, [rcx + 1]
cmp rax, 0x3c
jae 0x1400268b4
mov eax, dword [rsi + rdx*4 + 4]
mov ebx, dword [rsi + rcx*4 + 4]
mov dword [rsi + rdx*4 + 4], ebx
mov dword [rsi + rcx*4 + 4], eax
lea rax, [rcx + 2]
cmp rax, 0x3c
jae 0x1400268cc
mov eax, dword [rsi + rdx*4 + 8]
mov ebx, dword [rsi + rcx*4 + 8]
mov dword [rsi + rdx*4 + 8], ebx
mov dword [rsi + rcx*4 + 8], eax
lea rax, [rcx + 3]
cmp rax, 0x3b
ja 0x1400268d5
mov eax, dword [rsi + rdx*4 + 0xc]
mov ebx, dword [rsi + rcx*4 + 0xc]
mov dword [rsi + rdx*4 + 0xc], ebx
mov dword [rsi + rcx*4 + 0xc], eax
add rdx, 4
add rcx, 0xfffffffffffffffc
cmp rdx, rcx
jb 0x1400266a0
mov r14b, byte [rsi + 0xf0]
cmp r14b, 2
jb 0x140026895
add r14b, 0xff
mov ecx, 7
lea r15, [0x14004e428]
lea r8, [0x14004e8c8]
lea r9, [0x14004ece0]
lea r10, [0x14004f0e0]
lea r11, [0x14004f4e0]
nop dword [rax + rax]
cmp rcx, 0x3f
je 0x1400268eb
mov ebx, dword [rsi + rcx*4 - 0xc]
mov rdi, rbx
movzx ebp, bh
movzx eax, bl
shr rbx, 0x18
movzx ebx, byte [r15 + rbx*4]
shr rdi, 0xe
and edi, 0x3fc
movzx edi, byte [rdi + r15]
mov edi, dword [r9 + rdi*4]
xor edi, dword [r8 + rbx*4]
mov edx, dword [rsi + rcx*4 - 8]
movzx ebp, byte [r15 + rbp*4]
xor edi, dword [r10 + rbp*4]
movzx eax, byte [r15 + rax*4]
xor edi, dword [r11 + rax*4]
mov rax, rdx
movzx ebp, dh
mov rbx, rdx
shr rbx, 0x18
movzx ebx, byte [r15 + rbx*4]
shr rax, 0xe
and eax, 0x3fc
movzx eax, byte [rax + r15]
mov eax, dword [r9 + rax*4]
xor eax, dword [r8 + rbx*4]
movzx edx, dl
movzx ebx, byte [r15 + rbp*4]
xor eax, dword [r10 + rbx*4]
mov dword [rsi + rcx*4 - 0xc], edi
movzx edx, byte [r15 + rdx*4]
xor eax, dword [r11 + rdx*4]
mov dword [rsi + rcx*4 - 8], eax
mov ebx, dword [rsi + rcx*4 - 4]
mov rax, rbx
movzx edx, bh
movzx edi, bl
shr rbx, 0x18
movzx ebx, byte [r15 + rbx*4]
shr rax, 0xe
and eax, 0x3fc
movzx eax, byte [rax + r15]
mov eax, dword [r9 + rax*4]
xor eax, dword [r8 + rbx*4]
movzx edx, byte [r15 + rdx*4]
xor eax, dword [r10 + rdx*4]
movzx edx, byte [r15 + rdi*4]
xor eax, dword [r11 + rdx*4]
mov dword [rsi + rcx*4 - 4], eax
mov ebx, dword [rsi + rcx*4]
mov rax, rbx
mov rdx, rbx
shr rdx, 0x18
movzx edx, byte [r15 + rdx*4]
shr rax, 0xe
and eax, 0x3fc
movzx eax, byte [rax + r15]
mov eax, dword [r9 + rax*4]
xor eax, dword [r8 + rdx*4]
movzx edx, bh
movzx edx, byte [r15 + rdx*4]
xor eax, dword [r10 + rdx*4]
movzx edx, bl
movzx edx, byte [r15 + rdx*4]
xor eax, dword [r11 + rdx*4]
mov dword [rsi + rcx*4], eax
add rcx, 4
add r14b, 0xff
jne 0x140026770
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
lea r8, str.C:UsersEmran.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8libaes_0.6.2_srclib.rs
jmp 0x1400268bb
lea r8, str.C:UsersEmran.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8libaes_0.6.2_srclib.rs
jmp 0x1400268c0
lea r8, str.C:UsersEmran.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8libaes_0.6.2_srclib.rs
mov ecx, 0x3c
mov edx, 0x3c
call fcn.1400499b0
ud2
lea r8, str.C:UsersEmran.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8libaes_0.6.2_srclib.rs
jmp 0x1400268dc
lea r8, str.C:UsersEmran.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8libaes_0.6.2_srclib.rs
mov edx, 0x3c
mov rcx, rax
call fcn.1400499b0
ud2
lea r8, str.C:UsersEmran.cargo_registry_srcmirrors.ustc.edu.cn_61ef6e0cd06fb9b8libaes_0.6.2_srclib.rs
xor ecx, ecx
xor edx, edx
call fcn.1400499b0
ud2