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

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rdi, rcx
xor r12d, r12d
mov dword [rsp + 0x20], r12d
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], 0xf
mov byte [rcx], r12b
mov dword [rsp + 0x20], 1
mov r14d, r12d
lea r15d, [r12 - 6]
mov rcx, rdx
cmp qword [rdx + 0x18], 0x10
jb 0x14013c0ae
mov rcx, qword [rdx]
mov r9, rcx
mov r8, rcx
jmp 0x14013c0b4
mov r9, rdx
mov r8, rdx
mov qword [rsp + 0x78], r9
mov rax, qword [rdx + 0x10]
add rax, r8
mov qword [rsp + 0x80], rax
cmp rcx, rax
je 0x14013c4fe
lea r8, [0x1401b8430]
movzx ebx, byte [rsp + 0x70]
nop dword [rax]
shl r14d, 8
movzx eax, byte [r9]
add r14d, eax
add r15d, 8
js 0x14013c301
movsxd r13, r14d
movsxd rsi, r15d
lea ecx, [r15 + 6]
mov eax, 0xaaaaaaab
mul ecx
shr edx, 2
mov ebp, edx
imul eax, edx, 0xfffffffa
add r15d, eax
cmp dword [0x1401b8478], 0
jne 0x14013c299
mov eax, dword [0x1401b8474]
mov rdx, r12
nop word [rax + rax]
xor byte [rdx + r8], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 1], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 2], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 3], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 4], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 5], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 6], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 7], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 8], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 9], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 0xa], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 0xb], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
xor byte [rdx + r8 + 0xc], al
mov ecx, eax
shl ecx, 0xd
xor eax, ecx
mov ecx, eax
shr ecx, 0x11
xor eax, ecx
mov ecx, eax
shl ecx, 5
xor eax, ecx
add rdx, 0xd
cmp rdx, 0x41
jne 0x14013c130
mov dword [0x1401b8478], 1
mov rax, r13
mov rcx, rsi
sar rax, cl
and eax, 0x3f
movzx r9d, byte [rax + r8]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14013c2d6
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0x10
jb 0x14013c2cb
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14013c2ee
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.140105230
lea r8, [0x1401b8430]
sub rsi, 6
sub rbp, 1
jne 0x14013c111
mov r9, qword [rsp + 0x78]
inc r9
mov qword [rsp + 0x78], r9
cmp r9, qword [rsp + 0x80]
jne 0x14013c0e0
cmp r15d, 0xfffffffa
jle 0x14013c4fe
cmp dword [0x1401b8478], 0
jne 0x14013c4a9
mov ecx, dword [0x1401b8474]
nop dword [rax]
nop dword [rax + rax]
xor byte [r12 + r8], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 1], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 2], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 3], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 4], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 5], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 6], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 7], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 8], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 9], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 0xa], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 0xb], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
xor byte [r12 + r8 + 0xc], cl
mov eax, ecx
shl eax, 0xd
xor ecx, eax
mov eax, ecx
shr eax, 0x11
xor ecx, eax
mov eax, ecx
shl eax, 5
xor ecx, eax
add r12, 0xd
cmp r12, 0x41
jne 0x14013c340
mov dword [0x1401b8478], 1
lea ecx, [r15 + 8]
shl r14d, 8
movsxd rdx, r14d
sar rdx, cl
and edx, 0x3f
movzx r9d, byte [rdx + r8]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14013c4eb
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0x10
jb 0x14013c4e0
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14013c4fe
movzx r8d, byte [rsp + 0x70]
mov edx, 1
mov rcx, rdi
call fcn.140105230
mov rcx, qword [rdi + 0x10]
test cl, 3
je 0x14013c552
movzx ebx, byte [rsp + 0x70]
nop dword [rax]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14013c535
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0x10
jb 0x14013c52d
mov rax, qword [rdi]
mov word [rcx + rax], 0x3d
jmp 0x14013c549
mov r9b, 0x3d
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.140105230
mov rcx, qword [rdi + 0x10]
test cl, 3
jne 0x14013c510
mov rax, rdi
mov rbx, qword [rsp + 0x88]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret