Function at 0x180014340
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
mov rbx, qword [r8]
mov r9, rcx
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r9
mov rsi, r8
repne scasb al, byte [rdi]
mov r11, rdx
not rcx
dec rcx
cmp rcx, 3
jae 0x18001437f
mov eax, 0xffffffcb
mov rbx, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
pop rdi
ret
cmp byte [r9], 0x30
jne 0x18001436e
movsx eax, byte [r9 + 1]
add r9, 2
mov qword [rsp + 0x10], rbp
cmp eax, 0x42
je 0x1800144a4
cmp eax, 0x58
je 0x1800143b3
cmp eax, 0x62
je 0x1800144a4
cmp eax, 0x78
jne 0x180014797
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r9
repne scasb al, byte [rdi]
not rcx
dec rcx
test cl, 1
je 0x1800143ea
movzx eax, byte [r9]
inc r9
cmp al, 0x39
movsx eax, al
jg 0x1800143dc
sub eax, 0x30
jmp 0x1800143e2
sub eax, 7
and eax, 0xf
inc r11
mov byte [rdx], al
dec rbx
movzx ecx, byte [r9]
test cl, cl
je 0x18001448e
test rbx, rbx
je 0x1800147ad
cmp cl, 0x30
jl 0x180014409
cmp cl, 0x39
jle 0x180014425
cmp cl, 0x61
jl 0x180014413
cmp cl, 0x66
jle 0x180014425
cmp cl, 0x41
jl 0x180014797
cmp cl, 0x46
jg 0x180014797
movzx edx, byte [r9 + 1]
add r9, 2
cmp dl, 0x30
jl 0x180014438
cmp dl, 0x39
jle 0x18001444d
cmp dl, 0x61
jl 0x180014442
cmp dl, 0x66
jle 0x18001444d
lea eax, [rdx - 0x41]
cmp al, 5
ja 0x180014797
movsx eax, cl
cmp cl, 0x39
jg 0x18001445a
sub eax, 0x30
jmp 0x180014460
sub eax, 7
and eax, 0xf
movsx ecx, dl
cmp dl, 0x39
jg 0x18001446d
sub ecx, 0x30
jmp 0x180014473
sub ecx, 7
and ecx, 0xf
shl al, 4
inc r11
dec rbx
or al, cl
mov byte [r11 - 1], al
movzx ecx, byte [r9]
test cl, cl
jne 0x1800143f6
sub qword [r8], rbx
mov rbp, qword [rsp + 0x10]
xor eax, eax
mov rbx, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
pop rdi
ret
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r9
repne scasb al, byte [rdi]
not rcx
dec rcx
test cl, 3
jne 0x180014797
movzx edx, byte [r9]
test dl, dl
je 0x180014781
lea ebp, [rax + 0x3f]
nop dword [rax]
test rbx, rbx
je 0x1800147ad
cmp dl, 0x41
jl 0x1800144e3
cmp dl, 0x5a
jle 0x180014505
cmp dl, 0x61
jl 0x1800144ed
cmp dl, 0x7a
jle 0x180014505
cmp dl, 0x30
jl 0x1800144f7
cmp dl, 0x39
jle 0x180014505
cmp dl, 0x2b
je 0x180014505
cmp dl, 0x2f
jne 0x180014797
movzx r10d, byte [r9 + 1]
cmp r10b, 0x41
jl 0x180014516
cmp r10b, 0x5a
jle 0x18001453e
cmp r10b, 0x61
jl 0x180014522
cmp r10b, 0x7a
jle 0x18001453e
cmp r10b, 0x30
jl 0x18001452e
cmp r10b, 0x39
jle 0x18001453e
cmp r10b, 0x2b
je 0x18001453e
cmp r10b, 0x2f
jne 0x180014797
movzx r8d, byte [r9 + 2]
cmp r8b, 0x41
jl 0x18001454f
cmp r8b, 0x5a
jle 0x18001457d
cmp r8b, 0x61
jl 0x18001455b
cmp r8b, 0x7a
jle 0x18001457d
cmp r8b, 0x30
jl 0x180014567
cmp r8b, 0x39
jle 0x18001457d
cmp r8b, 0x2b
je 0x18001457d
cmp r8b, 0x2f
je 0x18001457d
cmp r8b, 0x3d
jne 0x180014797
movzx edi, byte [r9 + 3]
add r9, 4
cmp r8b, 0x3d
jne 0x180014595
cmp dil, r8b
jne 0x180014797
cmp dil, 0x41
jl 0x1800145a1
cmp dil, 0x5a
jle 0x1800145cf
cmp dil, 0x61
jl 0x1800145ad
cmp dil, 0x7a
jle 0x1800145cf
cmp dil, 0x30
jl 0x1800145b9
cmp dil, 0x39
jle 0x1800145cf
cmp dil, 0x2b
je 0x1800145cf
cmp dil, 0x2f
je 0x1800145cf
cmp dil, 0x3d
jne 0x180014797
lea eax, [rdx - 0x41]
cmp al, 0x19
ja 0x1800145de
movsx ecx, dl
sub ecx, 0x41
jmp 0x180014611
lea eax, [rdx - 0x61]
cmp al, 0x19
ja 0x1800145ed
movsx ecx, dl
sub ecx, 0x47
jmp 0x180014611
lea eax, [rdx - 0x30]
cmp al, 9
ja 0x1800145fc
movsx ecx, dl
add ecx, 4
jmp 0x180014611
cmp dl, 0x2b
jne 0x180014608
mov ecx, 0x3e
jmp 0x180014611
or ecx, 0xffffffff
cmp dl, 0x2f
cmove ecx, ebp
lea eax, [r10 - 0x41]
cmp al, 0x19
ja 0x180014622
movsx eax, r10b
sub eax, 0x41
jmp 0x18001465b
lea eax, [r10 - 0x61]
cmp al, 0x19
ja 0x180014633
movsx eax, r10b
sub eax, 0x47
jmp 0x18001465b
lea eax, [r10 - 0x30]
cmp al, 9
ja 0x180014644
movsx eax, r10b
add eax, 4
jmp 0x18001465b
cmp r10b, 0x2b
jne 0x180014651
mov eax, 0x3e
jmp 0x18001465b
or eax, 0xffffffff
cmp r10b, 0x2f
cmove eax, ebp
shl ecx, 6
or ecx, eax
shl ecx, 0xc
cmp r8b, 0x3d
jne 0x180014685
cmp byte [r9], 0
jne 0x180014797
shr ecx, 0x10
inc r11
dec rbx
mov byte [r11 - 1], cl
jmp 0x180014775
lea eax, [r8 - 0x41]
cmp al, 0x19
ja 0x180014696
movsx eax, r8b
sub eax, 0x41
jmp 0x1800146cf
lea eax, [r8 - 0x61]
cmp al, 0x19
ja 0x1800146a7
movsx eax, r8b
sub eax, 0x47
jmp 0x1800146cf
lea eax, [r8 - 0x30]
cmp al, 9
ja 0x1800146b8
movsx eax, r8b
add eax, 4
jmp 0x1800146cf
cmp r8b, 0x2b
jne 0x1800146c5
mov eax, 0x3e
jmp 0x1800146cf
or eax, 0xffffffff
cmp r8b, 0x2f
cmove eax, ebp
shl eax, 6
or ecx, eax
cmp dil, 0x3d
jne 0x180014708
cmp byte [r9], 0
jne 0x180014797
cmp rbx, 2
jb 0x1800147ad
mov eax, ecx
shr ecx, 8
add r11, 2
shr eax, 0x10
sub rbx, 2
mov byte [r11 - 2], al
mov byte [r11 - 1], cl
jmp 0x180014775
lea eax, [rdi - 0x41]
cmp al, 0x19
ja 0x180014718
movsx eax, dil
sub eax, 0x41
jmp 0x18001474f
lea eax, [rdi - 0x61]
cmp al, 0x19
ja 0x180014728
movsx eax, dil
sub eax, 0x47
jmp 0x18001474f
lea eax, [rdi - 0x30]
cmp al, 9
ja 0x180014738
movsx eax, dil
add eax, 4
jmp 0x18001474f
cmp dil, 0x2b
jne 0x180014745
mov eax, 0x3e
jmp 0x18001474f
or eax, 0xffffffff
cmp dil, 0x2f
cmove eax, ebp
or ecx, eax
cmp rbx, 3
jb 0x1800147ad
mov eax, ecx
add r11, 3
shr eax, 0x10
mov byte [r11 - 3], al
mov eax, ecx
shr eax, 8
sub rbx, 3
mov byte [r11 - 2], al
mov byte [r11 - 1], cl
movzx edx, byte [r9]
test dl, dl
jne 0x1800144d0
sub qword [rsi], rbx
mov rbp, qword [rsp + 0x10]
xor eax, eax
mov rbx, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
pop rdi
ret
mov eax, 0xffffffcb
mov rbp, qword [rsp + 0x10]
mov rbx, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
pop rdi
ret
mov rbp, qword [rsp + 0x10]
mov rbx, qword [rsp + 0x18]
mov rsi, qword [rsp + 0x20]
mov eax, 0xffffffd7
pop rdi
ret