Function at 0x14009f150
Capabilities:
Encode data using xor
Encrypt data using aes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
mov r10d, dword [rdx]
lea rbx, str.ccccwwww
mov r11, rcx
lea rdi, [0x1400e11ac]
bswap r10d
mov dword [rcx], r10d
mov eax, dword [rdx + 4]
bswap eax
mov dword [rcx + 4], eax
mov eax, dword [rdx + 8]
bswap eax
mov dword [rcx + 8], eax
mov eax, dword [rdx + 0xc]
bswap eax
mov dword [rcx + 0xc], eax
mov eax, dword [rdx + 0x10]
bswap eax
mov dword [rcx + 0x10], eax
lea rax, [rcx + 0x14]
mov ecx, dword [rdx + 0x14]
bswap ecx
mov dword [rax], ecx
mov ecx, dword [rdx + 0x18]
bswap ecx
mov dword [r11 + 0x18], ecx
mov ecx, dword [rdx + 0x1c]
bswap ecx
mov r8d, ecx
mov ecx, ecx
shr rcx, 0x10
movzx edx, cl
mov ecx, r8d
shr rcx, 8
mov dword [r11 + 0x1c], r8d
mov r9d, dword [rbx + rdx*4]
movzx edx, cl
btc r9d, 0x18
and r9d, 0xff000000
mov ecx, dword [rbx + rdx*4]
and ecx, 0xff0000
xor r9d, ecx
mov ecx, r8d
shr rcx, 0x18
movzx ecx, byte [rbx + rcx*4]
xor r9d, ecx
movzx ecx, r8b
mov edx, dword [rbx + rcx*4]
mov ecx, dword [r11 + 8]
and edx, 0xff00
xor r9d, edx
xor r9d, r10d
mov dword [r11 + 0x20], r9d
xor r9d, dword [r11 + 4]
xor ecx, r9d
mov dword [r11 + 0x24], r9d
mov dword [r11 + 0x28], ecx
xor ecx, dword [r11 + 0xc]
mov dword [r11 + 0x2c], ecx
lea r11, [0x1400e1194]
nop word [rax + rax]
mov r8d, dword [rax + 0x18]
mov ecx, r8d
shr rcx, 0x10
movzx edx, cl
mov ecx, r8d
shr rcx, 8
mov r9d, dword [rbx + rdx*4]
movzx edx, cl
and r9d, 0xff0000
mov ecx, dword [rbx + rdx*4]
and ecx, 0xff00
xor r9d, ecx
mov ecx, r8d
shr rcx, 0x18
mov edx, dword [rbx + rcx*4]
and edx, 0xff000000
movzx ecx, r8b
xor r9d, edx
movzx edx, byte [rbx + rcx*4]
mov ecx, dword [rax + 8]
xor r9d, edx
xor r9d, dword [rax - 4]
mov edx, dword [rax + 4]
mov dword [rax + 0x1c], r9d
xor r9d, dword [rax]
xor edx, r9d
mov dword [rax + 0x20], r9d
xor ecx, edx
mov dword [rax + 0x24], edx
mov r8d, ecx
shr rcx, 8
movzx edx, cl
mov ecx, r8d
shr rcx, 0x10
mov dword [rax + 0x28], r8d
mov r9d, dword [rbx + rdx*4]
movzx edx, cl
and r9d, 0xff0000
mov ecx, dword [rbx + rdx*4]
and ecx, 0xff000000
xor r9d, ecx
mov ecx, r8d
shr rcx, 0x18
movzx ecx, byte [rbx + rcx*4]
xor r9d, ecx
movzx ecx, r8b
mov edx, dword [rbx + rcx*4]
and edx, 0xff00
xor r9d, edx
xor r9d, dword [r11 - 8]
xor r9d, dword [rax + 0xc]
mov dword [rax + 0x2c], r9d
mov ecx, dword [rax + 0x10]
xor ecx, r9d
mov dword [rax + 0x30], ecx
mov edx, dword [rax + 0x14]
xor edx, ecx
mov dword [rax + 0x34], edx
xor edx, dword [rax + 0x18]
mov r8d, edx
mov ecx, edx
shr rcx, 0x10
movzx edx, cl
mov ecx, r8d
shr rcx, 8
mov dword [rax + 0x38], r8d
mov r9d, dword [rbx + rdx*4]
movzx edx, cl
and r9d, 0xff0000
mov ecx, dword [rbx + rdx*4]
and ecx, 0xff00
xor r9d, ecx
mov ecx, r8d
shr rcx, 0x18
mov edx, dword [rbx + rcx*4]
and edx, 0xff000000
movzx ecx, r8b
xor r9d, edx
movzx edx, byte [rbx + rcx*4]
xor r9d, edx
xor r9d, dword [rax + 0x1c]
mov ecx, dword [rax + 0x20]
xor ecx, r9d
mov dword [rax + 0x3c], r9d
mov dword [rax + 0x40], ecx
xor ecx, dword [rax + 0x24]
mov dword [rax + 0x44], ecx
xor ecx, dword [rax + 0x28]
mov r8d, ecx
shr rcx, 8
movzx edx, cl
mov ecx, r8d
shr rcx, 0x10
mov dword [rax + 0x48], r8d
mov r9d, dword [rbx + rdx*4]
movzx edx, cl
and r9d, 0xff0000
mov ecx, dword [rbx + rdx*4]
and ecx, 0xff000000
xor r9d, ecx
mov ecx, r8d
shr rcx, 0x18
movzx ecx, byte [rbx + rcx*4]
xor r9d, ecx
movzx ecx, r8b
mov edx, dword [rbx + rcx*4]
and edx, 0xff00
xor r9d, edx
xor r9d, dword [r11 - 4]
xor r9d, dword [rax + 0x2c]
mov dword [rax + 0x4c], r9d
mov ecx, dword [rax + 0x30]
xor ecx, r9d
mov dword [rax + 0x50], ecx
xor ecx, dword [rax + 0x34]
mov dword [rax + 0x54], ecx
xor ecx, dword [rax + 0x38]
mov dword [rax + 0x58], ecx
mov r8d, ecx
shr rcx, 0x10
movzx edx, cl
mov ecx, r8d
shr rcx, 8
mov r9d, dword [rbx + rdx*4]
movzx edx, cl
and r9d, 0xff0000
mov ecx, dword [rbx + rdx*4]
and ecx, 0xff00
xor r9d, ecx
mov ecx, r8d
shr rcx, 0x18
mov edx, dword [rbx + rcx*4]
and edx, 0xff000000
movzx ecx, r8b
xor r9d, edx
movzx edx, byte [rbx + rcx*4]
mov ecx, dword [rax + 0x44]
xor r9d, edx
xor r9d, dword [rax + 0x3c]
mov edx, dword [rax + 0x40]
xor edx, r9d
mov dword [rax + 0x5c], r9d
xor ecx, edx
mov dword [rax + 0x60], edx
mov edx, dword [rax + 0x48]
xor edx, ecx
mov dword [rax + 0x64], ecx
mov r8d, edx
mov ecx, edx
shr rcx, 8
mov dword [rax + 0x68], edx
movzx edx, cl
mov ecx, r8d
shr rcx, 0x10
mov r9d, dword [rbx + rdx*4]
movzx edx, cl
and r9d, 0xff0000
mov ecx, dword [rbx + rdx*4]
and ecx, 0xff000000
xor r9d, ecx
mov ecx, r8d
shr rcx, 0x18
movzx ecx, byte [rbx + rcx*4]
lea rax, [rax + 0x60]
xor r9d, ecx
movzx ecx, r8b
mov edx, dword [rbx + rcx*4]
and edx, 0xff00
xor r9d, edx
xor r9d, dword [r11]
add r11, 0xc
xor r9d, dword [rax - 0x14]
mov dword [rax + 0xc], r9d
mov ecx, dword [rax - 0x10]
xor ecx, r9d
mov dword [rax + 0x10], ecx
xor ecx, dword [rax - 0xc]
mov dword [rax + 0x14], ecx
xor ecx, dword [rax - 8]
mov dword [rax + 0x18], ecx
cmp r11, rdi
jne 0x14009f230
mov rbx, qword [rsp + 8]
mov rdi, qword [rsp + 0x10]
ret