Function at 0x14017c9f0
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov r14, rdx
mov rsi, rcx
and rdx, 0x3f
je 0x14017ca86
mov eax, 0x40
sub rax, rdx
mov r8, qword [rsi + 8]
mov rdi, qword [rsi + 0x10]
test rdi, rdi
je 0x14017ca82
lea r9, [rdi*8]
xor r10d, r10d
xor r11d, r11d
nop
mov rbx, qword [r8 + r10]
mov r15, rbx
mov ecx, edx
shl r15, cl
mov ecx, eax
shr r11, cl
or r11, r15
mov qword [r8 + r10], r11
add r10, 8
mov r11, rbx
cmp r9, r10
jne 0x14017ca30
mov ecx, eax
shr rbx, cl
test rbx, rbx
je 0x14017ca8a
cmp rdi, qword [rsi]
jne 0x14017ca6f
mov rcx, rsi
call fcn.14017f030
mov r8, qword [rsi + 8]
mov qword [r8 + rdi*8], rbx
inc rdi
je 0x14017cdf4
mov qword [rsi + 0x10], rdi
jmp 0x14017ca8a
xor ebx, ebx
jmp 0x14017ca54
mov rdi, qword [rsi + 0x10]
cmp r14, 0x40
jb 0x14017cca9
test rdi, rdi
je 0x14017cca9
shr r14, 6
mov rax, qword [rsi]
sub rax, rdi
cmp r14, rax
ja 0x14017ccfc
mov qword [rsi + 0x10], 0
lea r15, [rsi + 8]
mov rax, qword [rsi]
sub rax, rdi
cmp r14, rax
ja 0x14017cda3
mov r13, qword [r15]
lea r12, [r14*8]
add r12, r13
lea r8, [rdi*8]
mov rcx, r12
mov rdx, r13
mov qword [rsp + 0x38], r8
call fcn.1402d2020
xor ebp, ebp
mov rbx, r14
mov r15, r14
cmp rbp, r14
mov qword [rsp + 0x30], r13
je 0x14017cb7f
lea r13, [r13 + rbp*8]
lea rax, [r14*8]
lea rcx, [rbp*8]
sub rax, rcx
add rax, 0xfffffffffffffff8
shr rax, 3
lea rcx, [r14 - 1]
cmp rax, rcx
cmovae rax, rcx
lea r8, [rax*8 + 8]
mov rcx, r13
xor edx, edx
call fcn.1402d26c0
mov r15d, 1
sub r15, r14
mov rbx, rbp
nop dword [rax]
inc rbx
je 0x14017cdf4
add r13, 8
mov qword [rsi + 0x10], rbx
cmp r13, r12
je 0x14017cb7c
inc r15
cmp r15, 1
jne 0x14017cb50
mov r15, r14
mov r13, qword [rsp + 0x30]
jmp 0x14017cc74
neg r15
lea rbp, [r15*8]
xor r13d, r13d
mov rax, r15
shr rax, 0x3d
jne 0x14017ce1b
movabs rax, 0x7ffffffffffffff8
cmp rbp, rax
ja 0x14017ce1b
test rbp, rbp
je 0x14017cc48
movzx eax, byte [0x140510d70]
mov r13d, 8
mov edx, 8
mov rcx, rbp
call fcn.1400d99d0
mov rcx, rax
mov r12, r15
test rax, rax
je 0x14017ce1b
test r15, r15
je 0x14017cc55
mov qword [rsp + 0x40], rcx
xor edx, edx
mov r8, rbp
call fcn.1402d26c0
mov rdx, r14
add rdx, rdi
mov r13, qword [rsp + 0x30]
jb 0x14017cdf4
mov rax, qword [rsi]
sub rax, rdx
cmp r15, rax
ja 0x14017cd7c
add r15, r14
lea rdx, [r14*8]
add rdx, r13
lea rcx, [r15*8]
add rcx, r13
mov r8, qword [rsp + 0x38]
call fcn.1402d2020
cmp r15, rbx
jb 0x14017cdf4
mov rcx, qword [rsp + 0x40]
jne 0x14017ccba
mov r15, rbx
jmp 0x14017cc5d
mov ecx, 8
xor r12d, r12d
test r15, r15
jne 0x14017cbe1
mov r15, r14
mov r13, qword [rsp + 0x30]
test r12, r12
je 0x14017cc74
shl r12, 3
mov r8d, 8
mov rdx, r12
call fcn.1400d99f0
cmp r15, rbx
je 0x14017cc9c
lea rdx, [r15*8]
add rdx, r13
lea rcx, [rbx*8]
add rcx, r13
lea r8, [rdi*8]
call fcn.1402d2020
add rbx, rdi
jb 0x14017cdf4
mov qword [rsi + 0x10], rbx
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rax, [rbx*8]
shl r14, 3
sub rax, r14
mov r8, rcx
nop dword [rax]
test rbp, rbp
je 0x14017cc5d
mov rdx, qword [r8]
mov qword [r13 + rbx*8], rdx
inc rbx
je 0x14017cdf4
add r8, 8
mov qword [rsi + 0x10], rbx
add rbp, 0xfffffffffffffff8
cmp rax, rbp
jne 0x14017ccd0
jmp 0x14017cc5d
mov qword [rsp + 0x20], 8
mov r9d, 8
mov rcx, rsi
mov rdx, rdi
mov r8, r14
call fcn.1403cb3d0
mov rdi, qword [rsi + 0x10]
mov qword [rsi + 0x10], 0
lea r15, [rsi + 8]
test rdi, rdi
jne 0x14017cabc
cmp r14, qword [rsi]
ja 0x14017cdf6
xor ebx, ebx
lea rcx, [rbx*8]
add rcx, qword [r15]
lea rdi, [r14 - 1]
mov r15, rbx
not r15
cmp rdi, r15
mov rax, r15
cmovb rax, rdi
lea r8, [rax*8 + 8]
xor edx, edx
call fcn.1402d26c0
cmp rdi, r15
jae 0x14017cdf4
add rbx, r14
jmp 0x14017cca5
mov qword [rsp + 0x20], 8
mov r9d, 8
mov rcx, rsi
mov r8, r15
call fcn.1403cb3d0
mov r13, qword [rsi + 8]
mov rbx, qword [rsi + 0x10]
jmp 0x14017cc10
mov qword [rsp + 0x20], 8
mov r9d, 8
mov rcx, rsi
mov rdx, rdi
mov r8, r14
call fcn.1403cb3d0
mov r13, qword [rsi + 8]
mov rbp, qword [rsi + 0x10]
lea r12, [r14*8]
add r12, r13
lea r8, [rdi*8]
mov rcx, r12
mov rdx, r13
mov qword [rsp + 0x38], r8
call fcn.1402d2020
cmp r14, rbp
jae 0x14017caf3
ud2
mov qword [rsp + 0x20], 8
mov r9d, 8
mov rcx, rsi
xor edx, edx
mov r8, r14
call fcn.1403cb3d0
mov rbx, qword [rsi + 0x10]
jmp 0x14017cd3d
mov rcx, r13
mov rdx, rbp
call fcn.1403e592f
int3