Function at 0x1400af310
Capabilities:
Encode data using xor

Disassembly:
xchg r9, rbx
mov qword [rsp + 8], r9
xchg r9, rbx
mov qword [rsp + 0x10], rbp
mov dword [rsp - 0x44], 0x60a35478
mov qword [rsp + 0x18], rsi
xchg r13, rdi
mov qword [rsp + 0x20], r13
xchg r13, rdi
nop
sub rsp, 8
mov qword [rsp], r12
push r13
xchg r15, r15
push r14
push r15
movsxd rax, r8d
mov r13, rcx
xchg r12, r12
xor ecx, ecx
xchg rbx, r9
mov r12, rbx
xchg r9, rbx
xchg r12, rbx
mov r12, rdx
xchg r12, rbx
mov r10d, ecx
xchg r9, r9
lea r11, [rax + rax*2]
shl r11, 2
nop word [rax + rax]
movsxd rax, dword [r12 + r10*4]
mov rbp, rbp
mov edi, ecx
xchg r9, rbx
mov rbx, qword [r13 + 8]
xchg r9, rbx
add r9, r11
mov dword [r9 + 8], ecx
xchg rsi, rsi
xchg rcx, r15
mov r15, rax
xchg rcx, r15
and eax, 3
mov qword [r9], 0x6a50695e
sub qword [r9], 0x3be54b11
sub qword [r9], 0x1b6899e1
xor qword [r9], 0x3a314e1f
xor qword [r9], 0x2933ca73
lea rsi, [rbx + rax*2]
lea rax, [rcx + 1]
and eax, 3
xchg r9, r9
leave
lea r14, [rbx + rax*2]
lea rax, [rcx - 2]
and eax, 3
xchg r13, r13
lea r15, [rbx + rax*2]
lea rax, [rcx - 1]
and eax, 3
lea rbp, [rbx + rax*2]
mov dword [rsp - 0x30], 0x694ae9ad
mov eax, 0x1e70f24
add eax, 0x781be3ef
sub eax, 0x2526a08a
xor eax, 0xfe76f822
mov ecx, edi
mov dword [rsp - 0x44], 0x724c6799
mul edi
inc edi
shr edx, 1
lea eax, [rdx + rdx*2]
mov dword [rsp - 0x24], 0x3ed360f8
movzx edx, word [rsi]
sub ecx, eax
and dx, 1
movsxd rax, ecx
mov r8, r8
mov ecx, dword [r9 + rax*4]
lea r8, [r9 + rax*4]
movzx eax, dx
add ecx, ecx
mov rsp, rsp
or ecx, eax
not dx
mov dword [r8], ecx
mov dword [rsp - 0x10], esp
movzx eax, word [rsi]
shl dx, 0xa
shl dx, 4
shl dx, 1
shr ax, 1
mov rbx, rbx
or dx, ax
mov word [rsi], dx
movzx edx, word [r14]
mov dword [rsp - 0x40], ecx
mov ecx, dword [r8]
and dx, 1
movzx eax, dx
mov dword [rsp - 0x30], esi
add ecx, ecx
or ecx, eax
not dx
mov dword [rsp - 0xc], edx
mov dword [r8], ecx
movzx eax, word [r14]
shl dx, 6
shl dx, 3
shl dx, 3
shl dx, 2
shl dx, 1
shr ax, 1
or dx, ax
mov word [r14], dx
mov dword [rsp - 0x10], ecx
movzx edx, word [r15]
mov ecx, dword [r8]
and dx, 1
mov r14, r14
movzx eax, dx
add ecx, ecx
or ecx, eax
xchg rsi, rsi
not dx
mov dword [r8], ecx
movzx eax, word [r15]
shl dx, 0xa
shl dx, 2
shl dx, 1
shl dx, 1
shl dx, 1
shr ax, 1
mov dword [rsp - 0x30], 0x74bec2e9
or dx, ax
mov word [r15], dx
movzx edx, word [rbp]
mov ecx, dword [r8]
mov dword [rsp - 0xc], ebx
and dx, 1
movzx eax, dx
add ecx, ecx
or ecx, eax
mov dword [rsp - 0x20], 0x5d01c99f
not dx
mov dword [r8], ecx
movzx eax, word [rbp]
shr ax, 1
mov dword [rsp - 0x20], 0x6b27449a
shl dx, 0xa
shl dx, 4
shl dx, 1
or dx, ax
mov dword [rsp - 0x1c], 0x465bc50e
mov word [rbp], dx
cmp edi, 0xf
jl 0x1400af3ff
mov r15, r15
inc r10
nop
add r11, 0x43c0c104
sub r11, 0x43c0c0f8
mov ecx, 0x7bb3c5b9
sub ecx, 0x4905262b
xor ecx, 0x545217f3
xor ecx, 0x66fc887d
cmp r10, 8
jl 0x1400af380
mov rbx, qword [rsp + 0x28]
mov r11, r11
xchg r12, rbp
mov r12, qword [rsp + 0x30]
xchg r12, rbp
xchg rsi, r13
mov r13, qword [rsp + 0x38]
xchg rsi, r13
xchg rdi, r11
mov r11, qword [rsp + 0x40]
xchg r11, rdi
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
mov r14, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov r13, qword [rsp - 8]
nop
add rsp, 8
mov r12, qword [rsp - 8]
ret