Function at 0x14014fb30
Capabilities:
Decode data using base64 via dword translation table
Encode data using base64

Disassembly:
push rbx
push rdi
push r12
push r15
sub rsp, 0x28
mov r15, r8
mov rbx, rdx
mov rdi, rcx
test rcx, rcx
je 0x14014fbd0
test r8, r8
jne 0x14014fb57
test r9, r9
jne 0x14014fbd0
mov r12, qword [rsp + 0x70]
test r12, r12
je 0x14014fbd0
mov qword [r12], 0
cmp rdx, 0xffffffffffffffff
jne 0x14014fb7b
mov rbx, rdx
inc rbx
cmp byte [rcx + rbx], 0
jne 0x14014fb72
lea rax, [rcx + rbx]
cmp rax, rdi
jb 0x14014fbd0
lea rax, [rbx + 3]
shr rax, 2
lea rdx, [rax + rax*2]
cmp r9, rdx
jae 0x14014fbdd
mov rcx, rbx
test rbx, rbx
je 0x14014fbad
nop dword [rax]
cmp byte [rdi + rcx - 1], 0x3d
jne 0x14014fbad
sub rcx, 1
jne 0x14014fba0
mov rax, rcx
and eax, 3
jbe 0x14014fbcc
shr rcx, 2
lea rdx, [rcx*2 - 1]
add rdx, rax
add rdx, rcx
cmp r9, rdx
jae 0x14014fbdd
mov qword [r12], rdx
xor al, al
add rsp, 0x28
pop r15
pop r12
pop rdi
pop rbx
ret
test r15, r15
je 0x14014ff6f
lea rax, [r8 + r9]
cmp rax, r15
jbe 0x14014ff6f
mov qword [rsp + 0x50], rbp
xor eax, eax
mov qword [rsp + 0x58], rsi
xor ebp, ebp
mov qword [rsp + 0x20], r14
xor esi, esi
xor r14d, r14d
test rbx, rbx
je 0x14014ff4c
mov qword [rsp + 0x60], r13
movabs r13, 0x100002600
xor r11d, r11d
xor r9d, r9d
xor r8d, r8d
xor r10d, r10d
movabs rdx, 0xffffffc07ff1
cmp rax, rbx
jae 0x14014fe9f
lfence
nop word [rax + rax]
movzx r10d, byte [rax + rdi]
inc rax
cmp r10d, 0x41
jb 0x14014fc64
cmp r10b, 0x5a
jbe 0x14014fca2
lea ecx, [r10 - 0x61]
cmp cl, 0x19
jbe 0x14014fca2
lea ecx, [r10 - 0x2f]
cmp cl, 0xa
jbe 0x14014fca2
cmp r10b, 0x2b
je 0x14014fca2
cmp r10b, 0x3d
je 0x14014fc9d
cmp r10b, 0x20
ja 0x14014fc8e
bt r13, r10
jb 0x14014fc93
mov esi, 1
cmp rax, rbx
jb 0x14014fc50
jmp 0x14014fdbf
mov ebp, 1
cmp rax, rbx
jae 0x14014fdbf
nop dword [rax + rax]
movzx r8d, byte [rax + rdi]
inc rax
cmp r8d, 0x41
jb 0x14014fcc4
cmp r8b, 0x5a
jbe 0x14014fd02
lea ecx, [r8 - 0x61]
cmp cl, 0x19
jbe 0x14014fd02
lea ecx, [r8 - 0x2f]
cmp cl, 0xa
jbe 0x14014fd02
cmp r8b, 0x2b
je 0x14014fd02
cmp r8b, 0x3d
je 0x14014fcfd
cmp r8b, 0x20
ja 0x14014fcee
bt r13, r8
jb 0x14014fcf3
mov esi, 1
cmp rax, rbx
jb 0x14014fcb0
jmp 0x14014fdbf
mov ebp, 1
cmp rax, rbx
jae 0x14014fdbf
nop dword [rax + rax]
movzx r9d, byte [rax + rdi]
inc rax
cmp r9d, 0x41
jb 0x14014fd24
cmp r9b, 0x5a
jbe 0x14014fd5f
lea ecx, [r9 - 0x61]
cmp cl, 0x19
jbe 0x14014fd5f
lea ecx, [r9 - 0x2f]
cmp cl, 0xa
jbe 0x14014fd5f
cmp r9b, 0x2b
je 0x14014fd5f
cmp r9b, 0x3d
je 0x14014fd5a
cmp r9b, 0x20
ja 0x14014fd4e
bt r13, r9
jb 0x14014fd53
mov esi, 1
cmp rax, rbx
jb 0x14014fd10
jmp 0x14014fdbf
mov ebp, 1
cmp rax, rbx
jae 0x14014fdbf
lfence
nop word [rax + rax]
movzx r11d, byte [rax + rdi]
inc rax
cmp r11d, 0x41
jb 0x14014fd84
cmp r11b, 0x5a
jbe 0x14014fdbf
lea ecx, [r11 - 0x61]
cmp cl, 0x19
jbe 0x14014fdbf
lea ecx, [r11 - 0x2f]
cmp cl, 0xa
jbe 0x14014fdbf
cmp r11b, 0x2b
je 0x14014fdbf
cmp r11b, 0x3d
je 0x14014fdba
cmp r11b, 0x20
ja 0x14014fdae
bt r13, r11
jb 0x14014fdb3
mov esi, 1
cmp rax, rbx
jb 0x14014fd70
jmp 0x14014fdbf
mov ebp, 1
lea ecx, [r10 - 0x2b]
cmp ecx, 0x2f
ja 0x14014fdce
bt rdx, rcx
jb 0x14014fddb
lea ecx, [r10 - 0x61]
cmp ecx, 0x19
ja 0x14014fe9f
lea ecx, [r8 - 0x2b]
cmp ecx, 0x2f
ja 0x14014fdea
bt rdx, rcx
jb 0x14014fdf7
lea ecx, [r8 - 0x61]
cmp ecx, 0x19
ja 0x14014fe9f
lea ecx, [r9 - 0x2b]
cmp ecx, 0x2f
ja 0x14014fe06
bt rdx, rcx
jb 0x14014fe13
lea ecx, [r9 - 0x61]
cmp ecx, 0x19
ja 0x14014fe9f
lea ecx, [r11 - 0x2b]
cmp ecx, 0x2f
ja 0x14014fe22
bt rdx, rcx
jb 0x14014fe2b
lea ecx, [r11 - 0x61]
cmp ecx, 0x19
ja 0x14014fe9f
lea rdx, [0x140204270]
movzx r8d, byte [r8 + rdx]
movzx r9d, byte [r9 + rdx]
movzx ecx, r8b
movzx edx, byte [r10 + rdx]
shr cl, 4
and cl, 3
shl dl, 2
or dl, cl
shl r8b, 4
mov byte [r14 + r15], dl
movzx ecx, r9b
shr cl, 2
and cl, 0xf
shl r9b, 6
or cl, r8b
lea r8, [0x140204270]
movzx edx, byte [r11 + r8]
and dl, 0x3f
mov byte [r14 + r15 + 1], cl
or dl, r9b
mov byte [r14 + r15 + 2], dl
add r14, 3
test ebp, ebp
jne 0x14014ff47
cmp rax, rbx
jae 0x14014ff47
jmp 0x14014fc23
mov ecx, r10d
call fcn.14014f910
test eax, eax
je 0x14014ff47
mov ecx, r8d
call fcn.14014f910
test eax, eax
je 0x14014ff0d
mov ecx, r9d
call fcn.14014f910
test eax, eax
je 0x14014ff0d
cmp r11d, 0x3d
jne 0x14014ff0d
mov eax, r8d
lea r8, [0x140204270]
movzx ecx, byte [r10 + r8]
shl cl, 2
movzx edx, byte [rax + r8]
movzx eax, dl
shl dl, 4
shr al, 4
and al, 3
or cl, al
mov byte [r14 + r15], cl
movzx ecx, byte [r9 + r8]
shr cl, 2
and cl, 0xf
or cl, dl
mov byte [r14 + r15 + 1], cl
add r14, 2
jmp 0x14014ff47
mov ecx, r8d
call fcn.14014f910
test eax, eax
je 0x14014ff47
cmp r9d, 0x3d
jne 0x14014ff47
cmp r11d, r9d
jne 0x14014ff47
lea rcx, [0x140204270]
movzx edx, byte [r8 + rcx]
movzx ecx, byte [r10 + rcx]
shr dl, 4
and dl, 3
shl cl, 2
or dl, cl
mov byte [r14 + r15], dl
inc r14
mov r13, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x50]
test esi, esi
mov rsi, qword [rsp + 0x58]
mov qword [r12], r14
sete al
mov r14, qword [rsp + 0x20]
add rsp, 0x28
pop r15
pop r12
pop rdi
pop rbx
ret
test r9, r9
jne 0x14014fbd0
mov al, 1
add rsp, 0x28
pop r15
pop r12
pop rdi
pop rbx
ret