Function at 0x14000148a
Capabilities:
Encode data using base64

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0x60
mov qword [rbp + 0x10], rcx
cmp qword [rbp + 0x10], 0
jne 0x1400014b0
mov eax, 0
jmp 0x140001760
mov rax, qword [rbp + 0x10]
mov rcx, rax
call sub.msvcrt.dll_strlen
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x28]
and eax, 3
test rax, rax
je 0x1400014e0
mov eax, 0
jmp 0x140001760
mov qword [rbp - 8], 0
mov rax, qword [rbp - 0x28]
lea rdx, [rax - 1]
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x3d
jne 0x140001510
add qword [rbp - 8], 1
nop word cs:[rax + rax]
nop
mov rax, qword [rbp - 0x28]
lea rdx, [rax - 2]
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x3d
jne 0x140001530
add qword [rbp - 8], 1
nop dword [rax + rax]
mov rax, qword [rbp - 0x28]
shr rax, 2
mov rdx, rax
mov rax, rdx
add rax, rax
add rax, rdx
sub rax, qword [rbp - 8]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x30]
add rax, 1
mov rcx, rax
call sub.msvcrt.dll_malloc
mov qword [rbp - 0x38], rax
cmp qword [rbp - 0x38], 0
jne 0x140001580
mov eax, 0
jmp 0x140001760
mov dword [rbp - 0xc], 0
jmp 0x1400015c0
mov eax, dword [rbp - 0xc]
cdqe
lea rdx, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
movzx eax, byte [rax + rdx]
movzx eax, al
mov edx, dword [rbp - 0xc]
mov ecx, edx
cdqe
lea rdx, [0x14000f040]
mov byte [rax + rdx], cl
add dword [rbp - 0xc], 1
nop dword [rax + rax]
cmp dword [rbp - 0xc], 0x3f
jle 0x140001590
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x20], 0
jmp 0x140001740
mov rdx, qword [rbp + 0x10]
mov rax, qword [rbp - 0x18]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
cdqe
lea rdx, [0x14000f040]
movzx eax, byte [rax + rdx]
mov byte [rbp - 0x39], al
mov rax, qword [rbp - 0x18]
lea rdx, [rax + 1]
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
cdqe
lea rdx, [0x14000f040]
movzx eax, byte [rax + rdx]
mov byte [rbp - 0x3a], al
mov rax, qword [rbp - 0x18]
lea rdx, [rax + 2]
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
cdqe
lea rdx, [0x14000f040]
movzx eax, byte [rax + rdx]
mov byte [rbp - 0x3b], al
mov rax, qword [rbp - 0x18]
lea rdx, [rax + 3]
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
movzx eax, al
cdqe
lea rdx, [0x14000f040]
movzx eax, byte [rax + rdx]
mov byte [rbp - 0x3c], al
movzx eax, byte [rbp - 0x39]
lea ecx, [rax*4]
movzx eax, byte [rbp - 0x3a]
shr al, 4
mov r8d, eax
mov rax, qword [rbp - 0x20]
lea rdx, [rax + 1]
mov qword [rbp - 0x20], rdx
mov rdx, qword [rbp - 0x38]
add rax, rdx
or ecx, r8d
mov edx, ecx
mov byte [rax], dl
mov rax, qword [rbp - 0x18]
lea rdx, [rax + 2]
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x3d
je 0x1400016f0
movzx eax, byte [rbp - 0x3a]
shl eax, 4
mov ecx, eax
movzx eax, byte [rbp - 0x3b]
shr al, 2
mov r8d, eax
mov rax, qword [rbp - 0x20]
lea rdx, [rax + 1]
mov qword [rbp - 0x20], rdx
mov rdx, qword [rbp - 0x38]
add rax, rdx
or ecx, r8d
mov edx, ecx
mov byte [rax], dl
nop word cs:[rax + rax]
nop dword [rax]
mov rax, qword [rbp - 0x18]
lea rdx, [rax + 3]
mov rax, qword [rbp + 0x10]
add rax, rdx
movzx eax, byte [rax]
cmp al, 0x3d
je 0x140001730
movzx eax, byte [rbp - 0x3b]
shl eax, 6
mov r8d, eax
movzx ecx, byte [rbp - 0x3c]
mov rax, qword [rbp - 0x20]
lea rdx, [rax + 1]
mov qword [rbp - 0x20], rdx
mov rdx, qword [rbp - 0x38]
add rax, rdx
mov edx, r8d
or edx, ecx
mov byte [rax], dl
nop
add qword [rbp - 0x18], 4
nop word cs:[rax + rax]
mov rax, qword [rbp - 0x18]
cmp rax, qword [rbp - 0x28]
jb 0x1400015e0
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x30]
add rax, rdx
mov byte [rax], 0
mov rax, qword [rbp - 0x38]
add rsp, 0x60
pop rbp
ret