Function at 0x14006f6d0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], r9
push rsi
push rdi
push r12
push r13
push r14
push r15
mov r14d, dword [rsp + 0x58]
xor edi, edi
test r8, r8
mov esi, edx
mov r12, rcx
mov rbx, r8
lea r8d, [rdx + 2]
mov ebp, edi
sete bpl
mov eax, 0xaaaaaaab
mul r8d
mov eax, edi
mov r11d, edi
shr edx, 1
mov r10d, edi
shl edx, 2
mov r13d, edi
mov r15d, edi
lea ecx, [rdx + 0x3f]
shr ecx, 6
cmp r14d, 2
cmovne eax, ecx
add edx, eax
mov dword [rsp + 0x40], edx
test r9, r9
je 0x14006fa7b
mov r8d, dword [r9]
cmp edx, r8d
jbe 0x14006f74d
test rbx, rbx
jne 0x14006fa7b
cmp esi, 2
jbe 0x14006f7cc
mov edx, ebp
lea rbp, [0x1400a8950]
nop dword [rax + rax]
mov eax, r13d
inc r13d
movzx ecx, byte [rax + r12]
movzx r11d, byte [r13 + r12]
movzx r9d, cl
movzx eax, r11b
inc r13d
shr al, 4
and r9b, 3
and r11b, 0xf
shl r9b, 4
or r9b, al
shl r11b, 2
movzx r14d, byte [r13 + r12]
inc r13d
movzx eax, r14b
and r14b, 0x3f
shr al, 6
or r11b, al
mov eax, ecx
shr rax, 2
movzx ecx, byte [rax + rbp]
lea ebp, [r10 + 1]
cmp ebp, r8d
jbe 0x14006f80b
test rdx, rdx
jne 0x14006f816
mov r14d, dword [rsp + 0x58]
mov r11d, 0xffffff7c
lea rbp, [0x1400a8950]
mov r9d, r10d
mov eax, r11d
test esi, esi
je 0x14006fa06
mov r10d, r9d
test eax, eax
jne 0x14006f8cf
mov eax, r13d
movzx r10d, byte [rax + r12]
cmp esi, 2
jne 0x14006f909
lea eax, [r13 + 1]
movzx edx, byte [rax + r12]
jmp 0x14006f90b
test rdx, rdx
jne 0x14006f816
mov eax, r10d
mov byte [rax + rbx], cl
mov r10d, ebp
lea rbp, [0x1400a8950]
movzx eax, r9b
lea ecx, [r10 + 1]
movzx r9d, byte [rax + rbp]
cmp ecx, r8d
jbe 0x14006f844
test rdx, rdx
jne 0x14006f84d
mov r14d, dword [rsp + 0x58]
mov r11d, 0xffffff7c
jmp 0x14006f7d3
test rdx, rdx
jne 0x14006f84d
mov byte [r10 + rbx], r9b
movzx eax, r11b
mov r10d, ecx
inc ecx
movzx r9d, byte [rax + rbp]
cmp ecx, r8d
jbe 0x14006f867
test rdx, rdx
je 0x14006f837
jmp 0x14006f870
test rdx, rdx
jne 0x14006f870
mov byte [r10 + rbx], r9b
movzx eax, r14b
mov r10d, ecx
inc ecx
movzx r9d, byte [rax + rbp]
cmp ecx, r8d
jbe 0x14006f88a
test rdx, rdx
je 0x14006f837
jmp 0x14006f893
test rdx, rdx
jne 0x14006f893
mov byte [r10 + rbx], r9b
mov r14d, dword [rsp + 0x58]
add esi, 0xfffffffd
mov r10d, ecx
mov r11d, edi
cmp r14d, 2
je 0x14006f8fb
inc r15d
test r15b, 0xf
jne 0x14006f8fb
test esi, esi
je 0x14006f7d3
lea r10d, [rcx + 1]
cmp r10d, r8d
jbe 0x14006f8f2
test rdx, rdx
jne 0x14006f8fb
mov r11d, 0xffffff7c
mov r10d, ecx
mov r15, qword [rsp + 0x50]
cmp r10d, dword [rsp + 0x40]
je 0x14006fa4e
test r11d, r11d
jne 0x14006fa4e
mov eax, 0xffffff66
jmp 0x14006fa80
test rdx, rdx
jne 0x14006f8fb
mov byte [rcx + rbx], 0xa
cmp esi, 2
ja 0x14006f760
jmp 0x14006f7d3
xor dl, dl
movzx eax, dl
movzx ecx, r10b
shr al, 4
and cl, 3
shl cl, 4
and dl, 0xf
or cl, al
shl dl, 2
mov rax, r10
lea r10d, [r9 + 1]
shr rax, 2
movzx r11d, byte [rax + rbp]
cmp r10d, r8d
jbe 0x14006f948
test rbx, rbx
je 0x14006f951
mov r11d, 0xffffff7c
mov r10d, r9d
jmp 0x14006f8cf
test rbx, rbx
je 0x14006f951
mov byte [r9 + rbx], r11b
movzx eax, cl
lea ecx, [r10 + 1]
movzx r9d, byte [rax + rbp]
cmp ecx, r8d
jbe 0x14006f972
test rbx, rbx
je 0x14006f97b
mov r11d, 0xffffff7c
jmp 0x14006f8cf
test rbx, rbx
je 0x14006f97b
mov byte [r10 + rbx], r9b
mov r15, qword [rsp + 0x50]
mov r10d, ecx
inc ecx
mov r9d, dword [r15]
cmp esi, 2
jne 0x14006f9b1
movzx eax, dl
movzx edx, byte [rax + rbp]
cmp ecx, r9d
jbe 0x14006f9a6
test rbx, rbx
je 0x14006f9cd
mov r11d, 0xffffff7c
jmp 0x14006f9d3
test rbx, rbx
je 0x14006f9cd
mov byte [r10 + rbx], dl
jmp 0x14006f9cd
cmp ecx, r9d
jbe 0x14006f9c3
test rbx, rbx
je 0x14006f9cd
mov r11d, 0xffffff7c
jmp 0x14006f9d3
test rbx, rbx
je 0x14006f9cd
mov byte [r10 + rbx], 0x3d
mov r11d, edi
mov r10d, ecx
test r11d, r11d
jne 0x14006f8d4
lea ecx, [r10 + 1]
cmp ecx, r8d
jbe 0x14006f9f2
test rbx, rbx
je 0x14006f9fe
mov r11d, 0xffffff7c
jmp 0x14006fa0b
test rbx, rbx
je 0x14006f9fe
mov eax, r10d
mov byte [rax + rbx], 0x3d
mov r10d, ecx
mov r11d, edi
jmp 0x14006fa0b
mov r15, qword [rsp + 0x50]
test r11d, r11d
jne 0x14006f8d4
cmp r14d, 2
je 0x14006f8d4
lea ecx, [r10 + 1]
cmp ecx, r8d
jbe 0x14006fa37
test rbx, rbx
je 0x14006fa43
mov r11d, 0xffffff7c
jmp 0x14006f8d4
test rbx, rbx
je 0x14006fa43
mov eax, r10d
mov byte [rax + rbx], 0xa
mov r10d, ecx
mov r11d, edi
jmp 0x14006f8d4
test rbx, rbx
je 0x14006fa5f
cmp r8d, r10d
jbe 0x14006fa5f
mov eax, r10d
mov byte [rax + rbx], dil
mov dword [r15], r10d
test r11d, r11d
jne 0x14006fa76
mov eax, 0xffffff36
test rbx, rbx
cmove edi, eax
mov eax, edi
jmp 0x14006fa80
mov eax, r11d
jmp 0x14006fa80
mov eax, 0xffffff53
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x48]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret