Function at 0x14004b260
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x50
mov r12d, r8d
mov rdi, rdx
mov rbx, rcx
xor esi, esi
mov dword [rbp - 0x30], esi
lea ecx, [rsi + 0x50]
call fcn.1401833e0
mov r13, rax
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x10], 0x40
mov qword [rbp - 8], 0x4f
movaps xmm0, xmmword [str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x1401e5330]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x1401e5340]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x1401e5350]
movups xmmword [rax + 0x30], xmm1
mov byte [rax + 0x40], sil
mov qword [rbx], rsi
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 0xf
mov byte [rbx], sil
mov dword [rbp - 0x30], 1
mov r14d, esi
test r12d, r12d
je 0x14004b53d
mov edx, esi
nop
mov ecx, r14d
dec r12d
movzx eax, word [rdi]
add rdi, 2
mov qword [rbp + 0x48], rdi
mov word [rbp + rdx*2 + 0x58], ax
inc r14d
inc rdx
mov eax, 0xffffffff
sub eax, ecx
mov r15d, 0xffffffff
sub r15d, ecx
movzx r10d, word [rbp + 0x5c]
movzx r8d, word [rbp + 0x5a]
movzx r9d, word [rbp + 0x58]
cmp rdx, 3
jne 0x14004b405
movzx eax, r9w
shr ax, 2
and ax, 0x3f
mov word [rbp - 0x28], ax
movzx ecx, r8w
shr cx, 4
and cx, 0xf
movzx eax, r9w
and ax, dx
shl ax, 4
add cx, ax
mov word [rbp - 0x26], cx
movzx ecx, r10w
shr cx, 6
and cx, dx
movzx eax, r8w
and ax, 0xf
shl ax, 2
add cx, ax
mov word [rbp - 0x24], cx
movzx eax, r10w
and ax, 0x3f
mov word [rbp - 0x22], ax
mov rdi, rsi
movzx eax, word [rbp + rdi*2 - 0x28]
movzx r9d, byte [rax + r13]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14004b3d6
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x14004b3cb
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14004b3de
mov rcx, rbx
call fcn.1400290b0
inc rdi
cmp rdi, 4
jl 0x14004b3a0
mov r14d, esi
mov rdx, rsi
mov eax, esi
mov r15d, esi
mov rdi, qword [rbp + 0x48]
movzx r8d, word [rbp + 0x5a]
movzx r9d, word [rbp + 0x58]
movzx r10d, word [rbp + 0x5c]
test r12d, r12d
jne 0x14004b300
test r14d, r14d
je 0x14004b53d
cmp r14d, 3
jge 0x14004b44a
mov edx, 3
sub edx, r14d
movsxd rcx, edx
movsxd rax, r14d
lea rdi, [rbp + 0x58]
lea rdi, [rdi + rax*2]
movzx eax, si
rep stosw word [rdi], ax
movzx r10d, word [rbp + 0x5c]
movzx r8d, word [rbp + 0x5a]
movzx r9d, word [rbp + 0x58]
jmp 0x14004b44d
lea edx, [rax + 3]
movzx eax, r9w
shr ax, 2
and ax, 0x3f
mov word [rbp - 0x28], ax
movzx eax, r8w
shr ax, 4
and ax, 0xf
and r9w, 3
shl r9w, 4
add ax, r9w
mov word [rbp - 0x26], ax
movzx eax, r10w
shr ax, 6
and ax, 3
and r8w, 0xf
shl r8w, 2
add ax, r8w
mov word [rbp - 0x24], ax
and r10w, 0x3f
mov word [rbp - 0x22], r10w
lea eax, [r14 + 1]
movsxd rdi, eax
test eax, eax
jle 0x14004b4fa
nop
movzx eax, word [rbp + rsi*2 - 0x28]
movzx r9d, byte [rax + r13]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14004b4e6
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x14004b4db
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14004b4ee
mov rcx, rbx
call fcn.1400290b0
inc rsi
cmp rsi, rdi
jl 0x14004b4b0
lea edx, [r15 + 3]
cmp r14d, 3
jge 0x14004b53d
movsxd rdi, edx
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14004b52c
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x14004b524
mov rax, qword [rbx]
mov word [rax + rcx], 0x3d
jmp 0x14004b537
mov r9b, 0x3d
mov rcx, rbx
call fcn.1400290b0
sub rdi, 1
jne 0x14004b503
lea rcx, [rbp - 0x20]
call fcn.1400305d0
mov rax, rbx
mov rbx, qword [rsp + 0xa0]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret