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

Disassembly:
push rbp
lea r9, [rcx + 0xf0]
lea r11, [0x14000a2e0]
lea r10, [0x14000a6e0]
mov rbp, rsp
push r15
push r14
push r13
push r12
push rdi
push rsi
lea rsi, [0x14000aae0]
push rbx
and rsp, 0xfffffffffffffff0
sub rsp, 0x50
mov eax, dword [rdx]
mov r12d, dword [rdx + 4]
mov qword [rbp + 0x20], r8
mov r13d, dword [rdx + 8]
mov r8d, dword [rdx + 0xc]
mov edx, dword [rcx + 0x1e0]
bswap eax
bswap r12d
xor eax, dword [rcx + 0xf0]
bswap r13d
bswap r8d
xor r12d, dword [rcx + 0xf4]
xor r13d, dword [rcx + 0xf8]
shr edx, 1
xor r8d, dword [rcx + 0xfc]
sub edx, 1
shl rdx, 5
lea rdi, [rcx + rdx + 0x110]
mov qword [rsp + 8], rdi
lea rdi, [0x140009ee0]
jmp 0x140001261
mov eax, dword [rdi + r13*4]
xor eax, dword [rsi + r14*4]
xor eax, r8d
mov r8d, dword [rsp + 0x3c]
xor eax, dword [r11 + r12*4]
mov r13d, dword [rsp + 0x2c]
mov r14d, dword [rsp + 0x18]
xor eax, dword [r10 + r8*4]
mov r8d, dword [rsp + 0x38]
mov r12d, dword [rdi + r8*4]
mov r8d, dword [rsp + 0x28]
xor r12d, dword [rsi + r13*4]
xor r12d, r8d
mov r8d, dword [rsp + 0x34]
xor r12d, dword [r11 + r8*4]
mov r8d, dword [rsp + 0x30]
xor r12d, dword [r10 + r8*4]
mov r8d, dword [rsp + 0x24]
mov r13d, dword [rdi + r8*4]
mov r8d, dword [rsp + 0x20]
xor r13d, dword [rsi + r15*4]
xor r13d, r14d
xor r13d, dword [r11 + r8*4]
mov r8d, dword [rsp + 0x1c]
xor r13d, dword [r10 + r8*4]
mov r8d, dword [rsp + 0x14]
mov r8d, dword [rdi + r8*4]
xor r8d, dword [rsi + rdx*4]
mov edx, ebx
xor r8d, ecx
xor r8d, dword [r11 + rdx*4]
mov edx, dword [rsp + 0x10]
xor r8d, dword [r10 + rdx*4]
mov edx, eax
movzx ecx, r12b
mov ebx, r13d
movzx r14d, r8b
shr edx, 0x18
add r9, 0x20
mov edx, dword [rdi + rdx*4]
xor edx, dword [rsi + rcx*4]
mov ecx, r8d
shr ecx, 0x10
xor edx, dword [r9 - 0x10]
movzx ecx, cl
xor edx, dword [r11 + rcx*4]
movzx ecx, bh
movzx ebx, r13b
mov ecx, ecx
xor edx, dword [r10 + rcx*4]
mov ecx, r12d
shr ecx, 0x18
mov r15d, edx
movzx edx, ah
mov ecx, dword [rdi + rcx*4]
xor ecx, dword [rsi + rbx*4]
mov ebx, eax
mov dword [rsp + 0x40], r15d
shr ebx, 0x10
xor ecx, dword [r9 - 0xc]
movzx ebx, bl
xor ecx, dword [r11 + rbx*4]
mov ebx, r8d
shr r8d, 0x18
movzx ebx, bh
mov ebx, ebx
xor ecx, dword [r10 + rbx*4]
mov ebx, r13d
shr r13d, 0x10
shr ebx, 0x18
movzx r13d, r13b
mov ebx, dword [rdi + rbx*4]
xor ebx, dword [rsi + r14*4]
mov r14d, r12d
shr r14d, 0x10
xor ebx, dword [r9 - 8]
movzx r14d, r14b
xor ebx, dword [r11 + r14*4]
mov r14d, edx
mov edx, r12d
movzx edx, dh
xor ebx, dword [r10 + r14*4]
movzx r14d, al
mov eax, dword [rdi + r8*4]
mov r12d, edx
mov edx, r15d
xor eax, dword [rsi + r14*4]
mov r15d, ecx
shr edx, 0x18
xor eax, dword [r9 - 4]
xor eax, dword [r11 + r13*4]
shr r15d, 0x18
mov r13d, edx
movzx edx, bh
mov dword [rsp + 0x38], r15d
movzx r15d, bl
xor eax, dword [r10 + r12*4]
mov r8d, dword [r9]
mov dword [rsp + 0x3c], edx
movzx r14d, cl
mov edx, dword [rsp + 0x40]
mov dword [rsp + 0x2c], r15d
mov r15d, ebx
mov r12d, eax
shr r15d, 0x18
shr r12d, 0x10
shr edx, 0x10
mov dword [rsp + 0x24], r15d
mov r15d, ecx
movzx r12d, r12b
movzx edx, dl
shr r15d, 0x10
mov dword [rsp + 0x34], edx
movzx edx, ah
movzx r15d, r15b
mov dword [rsp + 0x30], edx
mov edx, dword [r9 + 4]
mov dword [rsp + 0x20], r15d
movzx r15d, al
shr eax, 0x18
mov dword [rsp + 0x28], edx
mov edx, dword [rsp + 0x40]
shr ebx, 0x10
mov dword [rsp + 0x14], eax
movzx eax, ch
movzx ebx, bl
mov ecx, dword [r9 + 0xc]
movzx edx, dh
mov dword [rsp + 0x10], eax
mov dword [rsp + 0x1c], edx
mov edx, dword [r9 + 8]
mov dword [rsp + 0x18], edx
movzx edx, byte [rsp + 0x40]
cmp qword [rsp + 8], r9
jne 0x1400011d8
mov eax, r8d
mov r8d, edx
lea rdx, str.RRRR_t_t_t_tjjjj
mov esi, ebx
movzx r9d, byte [rdx + r14*4]
mov edi, dword [rsp + 0x28]
xor r9d, eax
mov eax, dword [rsp + 0x3c]
mov r10d, r9d
mov r9d, dword [rdx + r12*4]
mov eax, dword [rdx + rax*4]
and r9d, 0xff0000
and eax, 0xff00
xor r10d, eax
mov eax, dword [rdx + r13*4]
and eax, 0xff000000
or eax, r9d
mov r9d, dword [rsp + 0x30]
xor r10d, eax
mov eax, dword [rsp + 0x2c]
mov r9d, dword [rdx + r9*4]
mov ebx, r10d
mov r10d, dword [rsp + 0x34]
movzx eax, byte [rdx + rax*4]
mov r12d, ebx
and r9d, 0xff00
mov r10d, dword [rdx + r10*4]
shr r12d, 8
xor eax, edi
mov edi, ebx
movzx r12d, r12b
xor r9d, eax
mov eax, dword [rsp + 0x38]
and r10d, 0xff0000
shr edi, 0x10
movzx edi, dil
mov eax, dword [rdx + rax*4]
and eax, 0xff000000
or eax, r10d
movzx r10d, byte [rdx + r15*4]
xor r9d, eax
mov eax, dword [rsp + 0x18]
mov r13d, r9d
mov r14d, r9d
mov r15d, r9d
movzx r9d, r9b
xor r10d, eax
mov eax, dword [rsp + 0x1c]
shr r13d, 0x18
movzx r13d, r13b
mov eax, dword [rdx + rax*4]
and eax, 0xff00
xor r10d, eax
mov eax, dword [rsp + 0x24]
mov eax, dword [rdx + rax*4]
and eax, 0xff000000
mov r11d, eax
mov eax, dword [rsp + 0x20]
mov eax, dword [rdx + rax*4]
and eax, 0xff0000
or eax, r11d
xor r10d, eax
movzx eax, byte [rdx + r8*4]
xor eax, ecx
mov ecx, dword [rsp + 0x10]
mov ecx, dword [rdx + rcx*4]
and ecx, 0xff00
xor eax, ecx
mov ecx, dword [rsp + 0x14]
mov r8d, dword [rdx + rcx*4]
mov ecx, esi
mov esi, r10d
mov edx, dword [rdx + rcx*4]
mov ecx, r10d
and r8d, 0xff000000
and edx, 0xff0000
or edx, r8d
mov r8d, r10d
movzx r10d, r10b
xor eax, edx
mov edx, ebx
shr edx, 0x18
shr r14d, 0x10
mov r11d, eax
shr esi, 0x18
shr r15d, 8
movzx r14d, r14b
movzx edx, dl
mov dword [rsp + 0x40], esi
movzx r15d, r15b
mov esi, eax
shl r9, 8
shr esi, 0x10
or r9, r15
shr r11d, 0x18
mov dword [rsp + 0x3c], esi
shl r9, 8
mov esi, eax
movzx eax, al
shr esi, 8
or r9, r14
shl rax, 8
movzx r11d, r11b
shl r9, 8
movzx esi, sil
shr r8d, 8
or r9, r13
or rax, rsi
movzx r13d, bl
movzx ebx, byte [rsp + 0x3c]
shl rax, 8
shl r9, 8
movzx r8d, r8b
or rax, rbx
or r9, r13
shr ecx, 0x10
shl rax, 8
shl r9, 8
movzx ecx, cl
or rax, r11
or r9, r12
shl rax, 8
shl r9, 8
or rax, r10
or r9, rdi
shl rax, 8
shl r9, 8
or rax, r8
shl rax, 8
or rax, rcx
movzx ecx, byte [rsp + 0x40]
or r9, rdx
shl rax, 8
mov qword [rsp + 0x40], r9
or rax, rcx
mov qword [rsp + 0x48], rax
mov rax, qword [rbp + 0x20]
movdqu xmm0, xmmword [rsp + 0x40]
movups xmmword [rax], xmm0
lea rsp, [rbp - 0x38]
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret