Function at 0x1400f3650
Capabilities:
Encode data using base64

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
cmp dword [r8], 0
jle 0x1400f3665
xor eax, eax
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
lea rax, [rcx + 0x16]
cmp byte [rcx + 0x16], 0
jle 0x1400f36b2
mov r9d, dword [rcx + 0x18]
mov r8d, dword [rcx + 0x1c]
add dword [rcx + 0x20], r9d
cmp byte [rcx + 0x17], 0
je 0x1400f3685
add dword [rcx + 0x24], r8d
add dword [rcx + 0x28], r8d
mov r8d, dword [rcx + 0x10]
test r8d, r8d
jle 0x1400f36eb
cmp r8d, 1
jne 0x1400f36d5
mov dword [rcx + 0x10], 0
movsxd r11, dword [rcx + 8]
mov r8d, dword [rcx + 0xc]
cmp r11d, r8d
jge 0x1400f37d7
jmp 0x1400f36fc
setne r9b
mov r8d, dword [rcx + 0x10]
test r8d, r8d
setg r10b
and r10b, r9b
cmp r10b, 1
jne 0x1400f36e3
inc dword [rcx + 8]
mov byte [rcx + 0x16], 1
mov al, 1
jmp 0x1400f365e
dec r8d
mov dword [rcx + 0x10], r8d
mov al, 1
jmp 0x1400f365e
mov byte [rax], 1
test r8d, r8d
jg 0x1400f3692
movsxd r11, dword [rcx + 8]
mov r8d, dword [rcx + 0xc]
cmp r11d, r8d
jge 0x1400f37d7
mov r9, qword [rcx]
lea r10d, [r11 + 1]
mov dword [rcx + 8], r10d
movzx esi, word [r9 + r11*2]
cmp esi, 0xfff
ja 0x1400f3799
mov byte [rcx + 0x17], 0
lea r11d, [rsi + 1]
mov dword [rcx + 0x18], r11d
cmp r10d, r8d
jge 0x1400f3767
movsxd rsi, r10d
lea rdi, [r9 + rsi*2]
movzx esi, word [rdi]
cmp esi, 0xfff
ja 0x1400f3776
inc r10d
mov dword [rcx + 8], r10d
add r11d, esi
inc r11d
mov dword [rcx + 0x18], r11d
add rdi, 2
cmp r8d, r10d
jne 0x1400f3730
xor edi, edi
mov r10d, r8d
mov dword [rcx + 0x1c], r11d
test dl, dl
jne 0x1400f3785
jmp 0x1400f39f7
xor edi, edi
mov dword [rcx + 0x1c], r11d
test dl, dl
jne 0x1400f3785
jmp 0x1400f39f7
mov dil, 1
mov dword [rcx + 0x1c], r11d
test dl, dl
je 0x1400f39f7
add dword [rcx + 0x20], r11d
add dword [rcx + 0x28], r11d
test dil, dil
je 0x1400f37d7
inc r10d
mov dword [rcx + 8], r10d
mov byte [rcx + 0x17], 1
cmp esi, 0x6fff
ja 0x1400f37e9
mov edx, esi
shr edx, 0xc
mov r11d, esi
shr r11d, 9
and r11d, 7
and esi, 0x1ff
lea edi, [rsi + 1]
cmp byte [rcx + 0x15], 0
je 0x1400f3815
imul edx, edi
mov dword [rcx + 0x18], edx
imul r11d, edi
mov dword [rcx + 0x1c], r11d
jmp 0x1400f38cc
mov word [rax + 8], 0
mov qword [rax], 0
jmp 0x1400f365c
mov r11d, esi
shr r11d, 6
mov edx, r11d
and edx, 0x3f
cmp edx, 0x3d
jb 0x1400f3861
movsxd rax, r10d
jne 0x1400f382e
lea r10d, [rax + 1]
mov dword [rcx + 8], r10d
movzx edx, word [r9 + rax*2]
and edx, 0x7fff
jmp 0x1400f3861
mov dword [rcx + 0x18], edx
mov dword [rcx + 0x1c], r11d
mov al, 1
test esi, esi
je 0x1400f365e
mov dword [rcx + 0x10], edi
jmp 0x1400f365e
and r11d, 1
shl r11d, 0x1e
movzx r10d, word [r9 + rax*2]
and r10d, 0x7fff
shl r10d, 0xf
or r10d, r11d
movzx edx, word [r9 + rax*2 + 2]
and edx, 0x7fff
or edx, r10d
add eax, 2
mov dword [rcx + 8], eax
mov r10d, eax
mov dword [rcx + 0x18], edx
mov r11d, esi
and r11d, 0x3f
cmp r11d, 0x3d
jb 0x1400f38be
movsxd rax, r10d
jne 0x1400f388c
lea r10d, [rax + 1]
mov dword [rcx + 8], r10d
movzx r11d, word [r9 + rax*2]
and r11d, 0x7fff
jmp 0x1400f38be
and esi, 1
shl esi, 0x1e
movzx r10d, word [r9 + rax*2]
and r10d, 0x7fff
shl r10d, 0xf
or r10d, esi
movzx r11d, word [r9 + rax*2 + 2]
and r11d, 0x7fff
or r11d, r10d
add eax, 2
mov dword [rcx + 8], eax
mov r10d, eax
mov dword [rcx + 0x1c], r11d
cmp byte [rcx + 0x15], 0
je 0x1400f39f7
mov al, 1
cmp r10d, r8d
jl 0x1400f3913
jmp 0x1400f365e
mov r10d, esi
and r10d, 0x1ff
inc r10d
mov ebx, esi
shr ebx, 0xc
imul ebx, r10d
add edx, ebx
mov dword [rcx + 0x18], edx
shr esi, 9
and esi, 7
imul esi, r10d
mov r10d, esi
add r11d, r10d
mov dword [rcx + 0x1c], r11d
mov r10d, edi
cmp edi, r8d
jge 0x1400f365e
movsxd rsi, r10d
movzx esi, word [r9 + rsi*2]
cmp esi, 0x1000
jb 0x1400f365e
lea edi, [r10 + 1]
mov dword [rcx + 8], edi
cmp esi, 0x6fff
jbe 0x1400f38d8
mov ebp, esi
shr ebp, 6
mov ebx, ebp
and ebx, 0x3f
cmp ebx, 0x3d
jb 0x1400f3992
movsxd rdi, edi
jne 0x1400f395f
add r10d, 2
mov dword [rcx + 8], r10d
movzx ebx, word [r9 + rdi*2]
and ebx, 0x7fff
jmp 0x1400f398f
and ebp, 1
shl ebp, 0x1e
movzx r14d, word [r9 + rdi*2]
and r14d, 0x7fff
shl r14d, 0xf
or r14d, ebp
movzx ebx, word [r9 + rdi*2 + 2]
and ebx, 0x7fff
or ebx, r14d
add r10d, 3
mov dword [rcx + 8], r10d
mov edi, r10d
add edx, ebx
mov dword [rcx + 0x18], edx
mov r10d, esi
and r10d, 0x3f
cmp r10d, 0x3d
jb 0x1400f3900
movsxd rbx, edi
jne 0x1400f39c4
lea edi, [rbx + 1]
mov dword [rcx + 8], edi
movzx r10d, word [r9 + rbx*2]
and r10d, 0x7fff
jmp 0x1400f3900
and esi, 1
shl esi, 0x1e
movzx edi, word [r9 + rbx*2]
and edi, 0x7fff
shl edi, 0xf
or edi, esi
movzx r10d, word [r9 + rbx*2 + 2]
and r10d, 0x7fff
or r10d, edi
add ebx, 2
mov dword [rcx + 8], ebx
mov edi, ebx
jmp 0x1400f3900
mov al, 1
jmp 0x1400f365e