Function at 0x1400060c5
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
xor eax, eax
mov qword [rsp + 0x30], rax
mov rsi, r8
mov rdi, rdx
mov rbp, rcx
mov qword [rsp + 0x38], rax
lea rax, [r8*4]
mov r8d, 3
cqo
idiv r8
lea rcx, [rax + 6]
mov rax, rsi
cqo
idiv r8
lea rax, [rsp + 0x30]
sub rsi, rdx
test r9b, r9b
mov r13, rdx
mov qword [rsp + 0x28], rax
mov rdx, rcx
jne 0x14000613a
mov rcx, rax
xor r14d, r14d
xor ebx, ebx
call fcn.1400054e9
lea r15, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789__ValueError
jmp 0x140006301
mov rcx, qword [rsp + 0x28]
xor r14d, r14d
xor ebx, ebx
lea r15, [0x140022780]
call fcn.1400054e9
cmp rbx, rsi
jne 0x140006172
movabs rsi, 0xaaaaaaaaaaaaaaac
imul rsi, rbx
cmp r13, 1
jne 0x140006215
jmp 0x140006246
movzx edx, byte [rdi + rbx + 1]
movzx ecx, byte [rdi + rbx]
movzx r12d, byte [rdi + rbx + 2]
add rbx, 3
shl edx, 8
shl ecx, 0x10
or edx, ecx
mov rcx, qword [rsp + 0x28]
or r12d, edx
call fcn.1400060b0
mov edx, r12d
shr edx, 0x12
mov cl, byte [r15 + rdx]
mov rdx, qword [rsp + 0x38]
mov byte [rdx + r14 + 8], cl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov edx, r12d
shr edx, 0xc
and edx, 0x3f
mov cl, byte [r15 + rdx]
mov rdx, qword [rsp + 0x38]
mov byte [rdx + r14 + 9], cl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov edx, r12d
and r12d, 0x3f
shr edx, 6
and edx, 0x3f
mov cl, byte [r15 + rdx]
mov rdx, qword [rsp + 0x38]
mov byte [rdx + r14 + 0xa], cl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov cl, byte [r15 + r12]
mov rdx, qword [rsp + 0x38]
mov byte [rdx + r14 + 0xb], cl
add r14, 4
jmp 0x140006150
cmp r13, 2
jne 0x14000640f
movzx edx, byte [rdi + rbx]
lea r12, [0x140022780]
movzx edi, byte [rdi + rbx + 1]
mov rcx, qword [rsp + 0x28]
shl edx, 0x10
shl edi, 8
or edi, edx
call fcn.1400060b0
jmp 0x1400063a9
movzx edi, byte [rdi + rbx]
lea r12, [0x140022780]
mov rcx, qword [rsp + 0x28]
shl edi, 0x10
call fcn.1400060b0
jmp 0x140006364
movzx edx, byte [rdi + rbx + 1]
movzx ecx, byte [rdi + rbx]
movzx r12d, byte [rdi + rbx + 2]
add rbx, 3
shl edx, 8
shl ecx, 0x10
or edx, ecx
mov rcx, qword [rsp + 0x28]
or r12d, edx
call fcn.1400060b0
mov edx, r12d
shr edx, 0x12
mov cl, byte [r15 + rdx]
mov rdx, qword [rsp + 0x38]
mov byte [rdx + r14 + 8], cl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov edx, r12d
shr edx, 0xc
and edx, 0x3f
mov cl, byte [r15 + rdx]
mov rdx, qword [rsp + 0x38]
mov byte [rdx + r14 + 9], cl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov edx, r12d
and r12d, 0x3f
shr edx, 6
and edx, 0x3f
mov cl, byte [r15 + rdx]
mov rdx, qword [rsp + 0x38]
mov byte [rdx + r14 + 0xa], cl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov cl, byte [r15 + r12]
mov rdx, qword [rsp + 0x38]
mov byte [rdx + r14 + 0xb], cl
add r14, 4
cmp rbx, rsi
jne 0x140006263
movabs rsi, 0xaaaaaaaaaaaaaaac
imul rsi, rbx
cmp r13, 1
je 0x14000634c
cmp r13, 2
jne 0x14000640f
movzx edx, byte [rdi + rbx]
lea r12, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789__ValueError
movzx edi, byte [rdi + rbx + 1]
mov rcx, qword [rsp + 0x28]
shl edx, 0x10
shl edi, 8
or edi, edx
call fcn.1400060b0
jmp 0x1400063a9
movzx edi, byte [rdi + rbx]
lea r12, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789__ValueError
mov rcx, qword [rsp + 0x28]
shl edi, 0x10
call fcn.1400060b0
mov eax, edi
shr edi, 0xc
shr eax, 0x12
and edi, 0x30
mov dl, byte [r12 + rax]
mov rax, qword [rsp + 0x38]
mov byte [rax + rsi + 8], dl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov rax, qword [rsp + 0x38]
mov dl, byte [r12 + rdi]
mov byte [rax + rsi + 9], dl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov rax, qword [rsp + 0x38]
mov byte [rax + rsi + 0xa], 0x3d
jmp 0x1400063f7
mov eax, edi
shr eax, 0x12
mov dl, byte [r12 + rax]
mov rax, qword [rsp + 0x38]
mov byte [rax + rsi + 8], dl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov eax, edi
shr edi, 6
shr eax, 0xc
and edi, 0x3c
and eax, 0x3f
mov dl, byte [r12 + rax]
mov rax, qword [rsp + 0x38]
mov byte [rax + rsi + 9], dl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov dl, byte [r12 + rdi]
mov rax, qword [rsp + 0x38]
mov byte [rax + rsi + 0xa], dl
mov rcx, qword [rsp + 0x28]
call fcn.1400060b0
mov rax, qword [rsp + 0x38]
mov byte [rax + rsi + 0xb], 0x3d
add rsi, 4
mov rcx, qword [rsp + 0x28]
mov rdx, rsi
call fcn.1400054e9
movaps xmm0, xmmword [rsp + 0x30]
mov rax, rbp
movups xmmword [rbp], xmm0
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret