Function at 0x1400c5110
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
push rax
movabs rsi, 0x10000000000000
or rsi, rcx
test edx, edx
cmove rsi, rcx
lea eax, [rdx - 0x435]
mov r13d, 0xfffffbcc
cmovne r13d, eax
lea r12, [rsi*4]
test rcx, rcx
setne al
cmp edx, 2
setb bpl
or bpl, al
test r13d, r13d
mov qword [rsp], rsi
js 0x1400c5286
imul r8d, r13d, 0x13441
shr r8d, 0x12
cmp r13d, 4
adc r8d, 0xffffffff
imul r10d, r8d, 0x12934f
shr r10d, 0x13
mov rax, r8
shl rax, 4
lea rcx, [0x140187170]
mov rsi, r12
or rsi, 2
mov rbx, qword [rax + rcx]
mov r9, qword [rax + rcx + 8]
mov rax, rbx
mul rsi
mov rcx, rdx
mov rax, r9
mul rsi
mov r11, rdx
mov rdi, rax
add rdi, rcx
adc r11, 0
mov ecx, r8d
sub ecx, r13d
add ecx, r10d
add cl, 0x3d
shrd rdi, r11, cl
shr r11, cl
movzx r13d, bpl
mov r10, r13
not r10
add r10, r12
mov rax, rbx
mul r10
mov r15, rdx
mov rax, r9
mul r10
mov r10, rdx
mov r14, rax
add r14, r15
adc r10, 0
shrd r14, r10, cl
shr r10, cl
mov rax, rbx
mul r12
mov rbx, rdx
mov rax, r9
mul r12
mov r9, rdx
add rax, rbx
adc r9, 0
shrd rax, r9, cl
shr r9, cl
test cl, 0x40
cmove r11, rdi
cmove r10, r14
cmove r9, rax
cmp r8d, 0x15
ja 0x1400c5402
movabs rcx, 0xcccccccccccccccd
mov rax, r12
mul rcx
shr rdx, 2
lea eax, [rdx + rdx*4]
cmp eax, r12d
jne 0x1400c5393
mov eax, 0xffffffff
movabs rdx, 0x3333333333333333
nop dword [rax + rax]
imul r12, rcx
inc eax
cmp r12, rdx
jbe 0x1400c5270
cmp eax, r8d
setae bl
jmp 0x1400c5404
mov eax, r13d
neg eax
imul r8d, r13d, 0xfff4d105
shr r8d, 0x14
xor ecx, ecx
cmp eax, 2
setge cl
sub r8d, ecx
add r13d, r8d
sub eax, r8d
imul r10d, eax, 0x12934f
shr r10d, 0x13
cdqe
shl rax, 4
lea rcx, [0x1401886d0]
mov r11, r12
or r11, 2
mov rbx, qword [rax + rcx]
mov r9, qword [rax + rcx + 8]
mov rax, rbx
mul r11
mov rcx, rdx
mov rax, r9
mul r11
mov r11, rdx
mov rdi, rax
add rdi, rcx
adc r11, 0
mov ecx, r8d
sub ecx, r10d
add cl, 0x3c
shrd rdi, r11, cl
shr r11, cl
movzx r10d, bpl
not r10
add r10, r12
mov rax, rbx
mul r10
mov r15, rdx
mov rax, r9
mul r10
mov r10, rdx
mov r14, rax
add r14, r15
adc r10, 0
shrd r14, r10, cl
shr r10, cl
mov rax, rbx
mul r12
mov rbx, rdx
mov rax, r9
mul r12
mov r9, rdx
add rax, rbx
adc r9, 0
shrd rax, r9, cl
shr r9, cl
test cl, 0x40
cmove r11, rdi
cmove r10, r14
cmove r9, rax
cmp r8d, 2
jae 0x1400c5375
mov eax, esi
and eax, 1
sete cl
and bpl, cl
sub r11, rax
mov bl, 1
mov r8d, r13d
jmp 0x1400c546e
cmp r8d, 0x3f
jae 0x1400c53cd
mov rax, 0xffffffffffffffff
mov ecx, r8d
shl rax, cl
not rax
test r12, rax
sete bl
jmp 0x1400c53cf
movabs rax, 0x3333333333333333
test byte [rsp], 1
jne 0x1400c53dd
not r13
add r13, r12
mov edx, 0xffffffff
nop
imul r13, rcx
inc edx
cmp r13, rax
jbe 0x1400c53b0
cmp edx, r8d
setae bpl
xor ebx, ebx
test bl, bl
je 0x1400c540a
jmp 0x1400c546e
xor ebx, ebx
xor ebp, ebp
mov r8d, r13d
test bl, bl
je 0x1400c540a
jmp 0x1400c546e
mov edx, 0xffffffff
nop word cs:[rax + rax]
imul rsi, rcx
inc edx
cmp rsi, rax
jbe 0x1400c53f0
cmp edx, r8d
adc r11, 0xffffffffffffffff
xor ebx, ebx
xor ebp, ebp
test bl, bl
jne 0x1400c546e
test bpl, bpl
jne 0x1400c546e
mov rax, r11
shr rax, 2
movabs rbx, 0x28f5c28f5c28f5c3
mul rbx
mov rsi, rdx
shr rsi, 2
mov rax, r10
shr rax, 2
mul rbx
mov rcx, rdx
shr rcx, 2
xor edi, edi
cmp rsi, rcx
jbe 0x1400c55ac
mov rax, r9
shr rax, 2
mul rbx
shr rdx, 2
imul eax, edx, 0xffffff9c
add eax, r9d
cmp eax, 0x32
setae r11b
mov edi, 2
mov r9, rdx
jmp 0x1400c55b5
movabs r14, 0xcccccccccccccccd
mov rax, r11
mul r14
mov rsi, rdx
shr rsi, 3
mov rax, r10
mul r14
shr rdx, 3
xor r15d, r15d
xor edi, edi
cmp rsi, rdx
jbe 0x1400c5505
xor r12d, r12d
nop dword [rax]
mov rcx, rdx
lea r15d, [rdx + rdx]
mov rax, r9
mul r14
mov r11, rdx
lea eax, [r15 + r15*4]
shr r11, 3
lea edx, [r11 + r11]
lea r15d, [rdx + rdx*4]
neg r15d
add r15b, r9b
cmp eax, r10d
sete al
and bpl, al
test r12b, r12b
sete al
and bl, al
mov rax, rsi
mul r14
inc edi
mov rsi, rdx
shr rsi, 3
mov rax, rcx
mul r14
shr rdx, 3
mov r9, r11
mov r10, rcx
mov r12d, r15d
cmp rsi, rdx
ja 0x1400c54a0
test bpl, bpl
jne 0x1400c5510
jmp 0x1400c5576
mov rcx, r10
mov r11, r9
test bpl, bpl
je 0x1400c5576
mov rax, rcx
mul r14
mov r10, rdx
shr r10, 3
lea eax, [r10 + r10]
lea eax, [rax + rax*4]
cmp eax, ecx
jne 0x1400c5576
nop dword [rax + rax]
mov rax, r11
mul r14
mov r9, rdx
shr r9, 3
lea eax, [r9 + r9]
lea esi, [rax + rax*4]
neg esi
add sil, r11b
test r15b, r15b
sete al
and bl, al
inc edi
mov rax, r10
mul r14
shr rdx, 3
lea eax, [rdx + rdx]
lea eax, [rax + rax*4]
mov rcx, r10
mov r11, r9
mov r15d, esi
cmp eax, r10d
mov r10, rdx
je 0x1400c5530
jmp 0x1400c557c
mov esi, r15d
mov r9, r11
cmp sil, 5
setne dl
not bl
setae r10b
cmp r9, rcx
sete al
xor bpl, 1
or bpl, byte [rsp]
and bpl, al
mov eax, r9d
or al, bl
or al, dl
and al, r10b
or al, bpl
jmp 0x1400c562c
mov rcx, r10
mov rsi, r11
xor r11d, r11d
movabs rbx, 0xcccccccccccccccd
mov rax, rsi
mul rbx
mov r10, rdx
mov rax, rcx
mul rbx
shr r10, 3
shr rdx, 3
cmp r10, rdx
jbe 0x1400c5623
nop dword [rax + rax]
mov r11, r9
mov rcx, rdx
mov rax, r9
mul rbx
mov r9, rdx
shr r9, 3
inc edi
mov rax, r10
mul rbx
mov r10, rdx
mov rax, rcx
mul rbx
shr r10, 3
shr rdx, 3
cmp r10, rdx
ja 0x1400c55e0
lea eax, [r9 + r9]
lea eax, [rax + rax*4]
sub r11d, eax
cmp r11d, 5
setae r11b
cmp r9, rcx
sete al
or al, r11b
add r8d, edi
movzx eax, al
add rax, r9
mov edx, r8d
add rsp, 8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret