Function at 0x1400bc270
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x58
lea rbp, [rsp + 0x50]
mov qword [rbp], 0xfffffffffffffffe
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x14016c258]
xor ecx, ecx
xor edx, edx
sub rdx, qword [0x14016c2c8]
movabs r10, 0xf30443b2023d8c62
xor rdx, r10
lea rdx, [rdx + rdx*4]
add rdx, 5
xor rdx, r10
mov rax, qword [rax + rdx + 0x19]
xor edx, edx
sub rdx, qword [0x14016c308]
mov r8, qword [0x14016c298]
xor rdx, r10
lea r9, [rdx + rdx*2]
lea rdx, [rdx + r9*4]
add rdx, 0xd
xor rdx, r10
mov rdx, qword [r8 + rdx + 0x19]
sub rcx, rdx
movabs r14, 0x3a5aa32bcb93262f
xor rcx, r14
lea rcx, [rcx + rcx*2]
add rcx, 3
xor rcx, r14
add rax, rcx
inc rax
mov rcx, rdi
call rax
lea rbx, [rbp - 0x28]
movabs r13, 0xdeb3614760f04524
mov qword [rbp - 8], rdi
movabs r12, 0xf30443b2023d8c62
nop dword [rax + rax]
mov rax, qword [0x14016c240]
mov rcx, qword [0x14016c2b0]
add rcx, rcx
neg rcx
movabs rdx, 0xe6088764047b18c5
xor rcx, rdx
add rcx, 2
xor rcx, r12
mov rax, qword [rax + rcx]
mov rcx, qword [0x14016c278]
xor edx, edx
sub rdx, qword [0x14016c2e8]
xor rdx, r12
lea rdx, [rdx + rdx*8]
add rdx, 9
xor rdx, r12
xor r15d, r15d
sub r15, qword [rcx + rdx + 1]
xor r15, rax
movabs rcx, 0xf9201601d72c08b
imul r15, rcx
xor r15, rax
movabs rax, 0xf06dfe9fe28d3f75
add r15, rax
and r15, rsi
mov rax, qword [0x14016c258]
xor ecx, ecx
sub rcx, qword [0x14016c2c8]
xor rcx, r12
lea rcx, [rcx + rcx*4]
add rcx, 5
xor rcx, r12
mov rax, qword [rax + rcx + 9]
mov rcx, qword [0x14016c298]
xor edx, edx
sub rdx, qword [0x14016c308]
xor rdx, r12
lea r8, [rdx + rdx*2]
lea rdx, [rdx + r8*4]
add rdx, 0xd
xor rdx, r12
xor r8d, r8d
sub r8, qword [rcx + rdx + 9]
xor r8, r14
inc r8
xor r8, r14
add rax, r8
inc rax
mov rdx, qword [0x14016c230]
movabs rcx, 0xf30443b2023da1eb
add rdx, rcx
lea rcx, [0x14017b5f8]
call rax
mov rax, qword [0x14016c300]
xor ecx, ecx
sub rcx, rax
movabs rax, 0x330443b2023d8c62
xor rcx, rax
lea rax, [rcx + rcx*2]
lea rax, [rax*4 + 0xd]
xor rax, r12
add rax, qword [0x14016c290]
movzx edx, byte [r15 + rax]
mov rcx, rbx
mov r8, rdi
call fcn.1400bca70
xor eax, eax
sub rax, qword [0x14016c2c8]
mov rcx, qword [0x14016c258]
movabs r15, 0xf30443b2023d8c62
xor rax, r15
lea rax, [rax + rax*4]
add rax, 5
xor rax, r15
mov rax, qword [rcx + rax + 0x11]
xor ecx, ecx
sub rcx, qword [0x14016c308]
mov rdx, qword [0x14016c298]
xor rcx, r15
lea r8, [rcx + rcx*2]
lea rcx, [rcx + r8*4]
add rcx, 0xd
xor rcx, r15
mov rcx, qword [rdx + rcx + 0x11]
add rcx, rcx
neg rcx
movabs rdx, 0x74b5465797264c5e
xor rcx, rdx
add rcx, 2
xor rcx, r14
add rax, rcx
inc rax
mov rdi, qword [rbp - 8]
mov rcx, rdi
mov rdx, rbx
call rax
mov rax, qword [0x14016c258]
xor ecx, ecx
sub rcx, qword [0x14016c2c8]
xor rcx, r15
lea rcx, [rcx + rcx*4]
add rcx, 5
xor rcx, r15
mov rax, qword [rax + rcx + 1]
movabs rcx, 0x3a5aa32bcb932630
add rax, rcx
mov rcx, rbx
call rax
mov rax, qword [0x14016c238]
xor ecx, ecx
sub rcx, qword [0x14016c2a8]
xor rcx, r15
inc rcx
xor rcx, r15
mov eax, dword [rax + rcx + 1]
mov rcx, qword [0x14016c248]
xor edx, edx
sub rdx, qword [0x14016c2b8]
xor rdx, r15
lea rdx, [rdx + rdx*2]
add rdx, 3
xor rdx, r15
xor r8d, r8d
sub r8d, dword [rcx + rdx + 1]
xor r8d, eax
imul ecx, r8d, 0xe9c05ce8
xor ecx, eax
add cl, 0x18
shr rsi, cl
mov rax, qword [0x14016c250]
mov rcx, qword [0x14016c2c0]
shl rcx, 2
neg rcx
movabs rdx, 0xcc110ec808f63189
xor rcx, rdx
add rcx, 4
xor rcx, r15
mov rax, qword [rax + rcx]
mov rcx, qword [0x14016c280]
xor edx, edx
sub rdx, qword [0x14016c2f0]
movabs r8, 0x730443b2023d8c62
xor rdx, r8
lea rdx, [rdx + rdx*4]
lea rdx, [rdx*2 + 0xb]
xor rdx, r15
mov rcx, qword [rcx + rdx]
xor edx, edx
sub rdx, rcx
xor rdx, rax
movabs rcx, 0x214c9eb89f0fbadc
imul rdx, rcx
xor rdx, rax
add rdx, r13
cmp rsi, rdx
ja 0x1400bc330
xor eax, eax
sub rax, qword [0x14016c2d8]
mov rcx, qword [0x14016c268]
movabs r8, 0xf30443b2023d8c62
xor rax, r8
lea rdx, [rax*8]
sub rdx, rax
add rdx, 7
xor rdx, r8
cmp byte [rcx + rdx + 1], 0
jne 0x1400bc65c
mov rax, qword [0x14016c258]
xor ecx, ecx
sub rcx, qword [0x14016c2c8]
movabs rdx, 0xf30443b2023d8c62
xor rcx, rdx
lea rcx, [rcx + rcx*4]
add rcx, 5
xor rcx, rdx
movabs rdx, 0x3a5aa32bcb932630
add rdx, qword [rax + rcx + 1]
mov rcx, rdi
call rdx
mov rax, rdi
add rsp, 0x58
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret