Function at 0x1400f5100
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push r15
push rbp
sub rsp, 0x58
mov rbp, rdx
mov qword [rsp + 0x70], rcx
xor ecx, ecx
cmp rbp, r8
je 0x1400f51d3
sub r8, rbp
mov r10d, 1
mov rdx, r8
xor eax, eax
shr rdx, 0x3f
add rdx, r8
sar rdx, 1
test rdx, rdx
jbe 0x1400f51a0
movabs r15, 0x9e3779b9
nop dword [rax + rax]
nop dword [rax]
mov r11, rcx
mov r10, rcx
shl r11, 6
shr r10, 2
add r11, r10
movsx r10, byte [rbp + rax*2]
add r11, r10
add r11, r15
xor rcx, r11
mov r10, rcx
mov r11, rcx
shl r10, 6
shr r11, 2
add r10, r11
movsx r11, byte [rbp + rax*2 + 1]
add r10, r11
add r10, r15
inc rax
xor rcx, r10
cmp rax, rdx
jb 0x1400f5150
lea r10, [rax*2 + 1]
lea rax, [r10 - 1]
cmp r8, rax
jbe 0x1400f51d3
mov rdx, rcx
mov rax, rcx
shl rdx, 6
shr rax, 2
add rdx, rax
movsx rbp, byte [rbp + r10 - 1]
add rdx, rbp
movabs r10, 0x9e3779b9
add rdx, r10
xor rcx, rdx
movabs r8, 0x200009c482fb3f8b
mov rax, rcx
mul r8
shr rdx, 0x1c
imul r11, rdx, 0xffffffff80002712
mov rdx, qword [rsp + 0x70]
lea r11, [rcx + r11 + 0x2710]
mov qword [rsp + 0x50], rdx
lea rcx, [rsp + 0x48]
mov qword [rsp + 0x40], rcx
mov r8, rdx
mov rax, qword [rdx + 8]
cmp rcx, rax
jae 0x1400f526a
mov r10, qword [rdx]
lea rbp, [rsp + 0x48]
cmp r10, rbp
ja 0x1400f526a
mov rbp, qword [rdx + 0x10]
lea rcx, [rsp + 0x48]
sub rcx, r10
sar rcx, 3
mov qword [rsp + 0x40], rcx
cmp rax, rbp
je 0x1400f52fb
mov r9, qword [r8 + 8]
test r9, r9
mov rbp, qword [r8]
je 0x1400f5260
mov eax, dword [rbp + rcx*8]
mov dword [r9], eax
mov ecx, dword [rbp + rcx*8 + 4]
mov dword [r9 + 4], ecx
mov r9, qword [r8 + 8]
add r9, 8
mov qword [r8 + 8], r9
jmp 0x1400f52a1
mov dword [rsp + 0x4c], r11d
mov dword [rsp + 0x48], r9d
mov r10, qword [rdx + 0x10]
cmp rax, r10
je 0x1400f54a0
mov rbp, qword [r8 + 8]
test rbp, rbp
je 0x1400f5299
mov eax, dword [rcx]
mov ecx, dword [rcx + 4]
mov dword [rbp], eax
mov dword [rbp + 4], ecx
mov rbp, qword [r8 + 8]
add rbp, 8
mov qword [r8 + 8], rbp
mov rbp, qword [rdx]
mov rax, qword [rdx + 8]
cmp rbp, rax
je 0x1400f52f3
lea rdx, [rax - 8]
cmp rdx, rbp
lea rcx, [rax - 0x10]
je 0x1400f52f3
mov r8d, dword [rdx + 4]
mov rax, rcx
cmp r8d, dword [rcx + 4]
jge 0x1400f52f3
mov r8d, dword [rdx]
lea r15, [rdx - 8]
mov r9d, dword [r15]
add rcx, 0xfffffffffffffff8
mov dword [r15], r8d
mov dword [rdx], r9d
mov r10d, dword [rdx + 4]
mov r11d, dword [r15 + 4]
mov dword [r15 + 4], r10d
mov dword [rdx + 4], r11d
mov rdx, r15
cmp rdx, rbp
jne 0x1400f52ba
add rsp, 0x58
pop rbp
pop r15
ret
mov r15, rbp
sub r15, rax
sar r15, 3
cmp r15, 1
jae 0x1400f5241
mov dword [rsp + 0x48], r9d
mov r9, rax
sub r9, r10
mov dword [rsp + 0x4c], r11d
sar r9, 3
sub rbp, r10
movabs r11, 0x1fffffffffffffff
sar rbp, 3
inc r9
mov r15, rbp
shr r15, 1
mov qword [rsp + 0x20], rdx
lea rcx, [rbp + r15]
neg r15
add r15, r11
cmp rbp, r15
mov ebp, 0
cmova rcx, rbp
cmp r9, rcx
cmova rcx, r9
xor r9d, r9d
mov qword [rsp + 0x28], rcx
test rcx, rcx
je 0x1400f539c
cmp rcx, r11
ja 0x1400f550d
shl rcx, 3
call fcn.14010fbf8
mov r9, rax
test r9, r9
je 0x1400f550d
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x20]
mov rax, qword [r8 + 8]
mov r10, qword [r8]
mov qword [rsp + 0x30], r9
cmp r10, rax
je 0x1400f5453
mov r11, rax
xor ebp, ebp
sub r11, r10
mov ecx, 1
add r11, 7
sar r11, 2
shr r11, 0x3d
sub r11, r10
lea r15, [rax + r11 + 7]
xor eax, eax
sar r15, 3
mov r11, r15
shr r11, 1
test r11, r11
jbe 0x1400f542e
mov qword [rsp + 0x38], rbx
mov rcx, r9
add rcx, rax
je 0x1400f53fb
mov ebx, dword [rax + r10]
mov dword [rax + r9], ebx
mov ebx, dword [rax + r10 + 4]
mov dword [rax + r9 + 4], ebx
cmp rcx, 0xfffffffffffffff8
je 0x1400f5415
mov ecx, dword [rax + r10 + 8]
mov dword [rax + r9 + 8], ecx
mov ebx, dword [rax + r10 + 0xc]
mov dword [rax + r9 + 0xc], ebx
inc rbp
add rax, 0x10
cmp rbp, r11
jb 0x1400f53e1
mov rbx, qword [rsp + 0x38]
lea rcx, [rbp*2 + 1]
lea rax, [rcx - 1]
cmp rax, r15
jae 0x1400f5453
lea rcx, [r9 + rcx*8 - 8]
test rcx, rcx
je 0x1400f5453
mov ecx, dword [r10 + rax*8]
mov dword [r9 + rax*8], ecx
mov ebp, dword [r10 + rax*8 + 4]
mov dword [r9 + rax*8 + 4], ebp
mov rcx, qword [rdx]
mov rbp, qword [rdx + 8]
sub rbp, rcx
test rcx, rcx
je 0x1400f5476
call fcn.1401100d8
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x20]
mov r9, qword [rsp + 0x30]
mov rax, qword [rsp + 0x28]
and rbp, 0xfffffffffffffff8
add rbp, r9
mov qword [rdx + 8], rbp
mov qword [rdx], r9
lea rcx, [r9 + rax*8]
mov qword [rdx + 0x10], rcx
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x70]
jmp 0x1400f5241
mov rbp, r10
sub rbp, rax
sar rbp, 3
cmp rbp, 1
jae 0x1400f5281
mov rbp, rax
mov rcx, qword [rdx]
sub rbp, rcx
sar rbp, 3
sub r10, rcx
movabs r9, 0x1fffffffffffffff
sar r10, 3
inc rbp
mov r11, r10
shr r11, 1
mov qword [rsp + 0x20], rdx
lea rcx, [r10 + r11]
neg r11
add r11, r9
cmp r10, r11
mov r10d, 0
cmova rcx, r10
cmp rbp, rcx
cmova rcx, rbp
mov qword [rsp + 0x28], rcx
test rcx, rcx
je 0x1400f5531
cmp rcx, r9
jbe 0x1400f5512
call fcn.14010ac28
shl rcx, 3
call fcn.14010fbf8
mov r10, rax
test r10, r10
je 0x1400f550d
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x20]
mov rax, qword [r8 + 8]
mov rbp, qword [r8]
cmp rbp, rax
mov qword [rsp + 0x30], r10
je 0x1400f55e7
mov r11, rax
xor r9d, r9d
sub r11, rbp
mov ecx, 1
add r11, 7
sar r11, 2
shr r11, 0x3d
sub r11, rbp
lea r15, [r11 + rax + 7]
xor eax, eax
sar r15, 3
mov r11, r15
shr r11, 1
test r11, r11
jbe 0x1400f55c3
mov qword [rsp + 0x38], rbx
mov rcx, r10
add rcx, rax
je 0x1400f5592
mov ebx, dword [rax + rbp]
mov dword [rax + r10], ebx
mov ebx, dword [rax + rbp + 4]
mov dword [rax + r10 + 4], ebx
cmp rcx, 0xfffffffffffffff8
je 0x1400f55aa
mov ecx, dword [rax + rbp + 8]
mov dword [rax + r10 + 8], ecx
mov ebx, dword [rax + rbp + 0xc]
mov dword [rax + r10 + 0xc], ebx
inc r9
add rax, 0x10
cmp r9, r11
jb 0x1400f557a
mov rbx, qword [rsp + 0x38]
lea rcx, [r9*2 + 1]
lea rax, [rcx - 1]
cmp rax, r15
jae 0x1400f55e7
lea rcx, [r10 + rcx*8 - 8]
test rcx, rcx
je 0x1400f55e7
mov ecx, dword [rbp + rax*8]
mov dword [r10 + rax*8], ecx
mov ebp, dword [rbp + rax*8 + 4]
mov dword [r10 + rax*8 + 4], ebp
mov rcx, qword [rdx]
mov rbp, qword [rdx + 8]
sub rbp, rcx
test rcx, rcx
je 0x1400f560a
call fcn.1401100d8
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x20]
mov r10, qword [rsp + 0x30]
mov rax, qword [rsp + 0x28]
and rbp, 0xfffffffffffffff8
add rbp, r10
mov qword [rdx + 8], rbp
mov qword [rdx], r10
lea rcx, [r10 + rax*8]
mov qword [rdx + 0x10], rcx
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x70]
jmp 0x1400f5281