Function at 0x140002cb0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push r12
sub rsp, 0x58
mov r12, r8
mov r8, rcx
mov rsi, r9
cmp r9, 0x2c00016
jbe 0x140002ce0
mov eax, 0x8fd
add rsp, 0x58
pop r12
pop rsi
ret
test rdx, rdx
je 0x140002d06
lea rax, [r9 + 3]
shr rax, 2
lea rcx, [rax + rax*2]
cmp qword [rdx], rcx
jae 0x140002d06
mov qword [rdx], rcx
mov eax, 0x514
add rsp, 0x58
pop r12
pop rsi
ret
test r8, r8
je 0x140003113
test rdx, rdx
je 0x140003113
test r12, r12
je 0x140003113
mov qword [rsp + 0x50], rbp
xor ebp, ebp
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x38], r14
xor r14d, r14d
mov qword [rsp + 0x88], rbp
test r9, r9
je 0x140002d7a
nop word [rax + rax]
movsx edx, byte [r12 + rsi - 1]
lea rcx, str._r_n_t
call fcn.140099ce0
test rax, rax
je 0x140002d70
inc r14
sub rsi, 1
jne 0x140002d50
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
xor edi, edi
xor r13d, r13d
cmp rsi, 3
jbe 0x1400030cc
mov ecx, 2
mov qword [rsp + 0x80], rbx
sub rcx, r8
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x20], rcx
nop dword [rax]
nop word [rax + rax]
lea rax, [r8 + r13]
add rax, rcx
cmp rax, qword [rdx]
jae 0x1400030bf
movsx ecx, byte [rdi + r12]
call fcn.1400a7588
test eax, eax
jne 0x140002deb
movsx ecx, byte [rdi + r12]
call fcn.1400a76a8
test eax, eax
jne 0x140002deb
movzx eax, byte [rdi + r12]
sub al, 0x2b
test al, 0xfb
jne 0x1400030ba
movsx ecx, byte [rdi + r12 + 1]
call fcn.1400a7588
test eax, eax
jne 0x140002e19
movsx ecx, byte [rdi + r12 + 1]
call fcn.1400a76a8
test eax, eax
jne 0x140002e19
movzx eax, byte [rdi + r12 + 1]
sub al, 0x2b
test al, 0xfb
jne 0x1400030ba
movsx ecx, byte [rdi + r12 + 2]
call fcn.1400a7588
test eax, eax
jne 0x140002e5e
movsx ecx, byte [rdi + r12 + 2]
call fcn.1400a76a8
test eax, eax
jne 0x140002e5e
movzx edx, byte [rdi + r12 + 2]
lea eax, [rdx - 0x2b]
test al, 0xfb
je 0x140002e5e
lea rcx, [rdi + 2]
lea rax, [rsi - 2]
cmp rcx, rax
jb 0x1400030ba
cmp dl, 0x3d
jne 0x1400030ba
movsx ecx, byte [rdi + r12 + 3]
call fcn.1400a7588
test eax, eax
jne 0x140002ea3
movsx ecx, byte [rdi + r12 + 3]
call fcn.1400a76a8
test eax, eax
jne 0x140002ea3
movzx edx, byte [rdi + r12 + 3]
lea eax, [rdx - 0x2b]
test al, 0xfb
je 0x140002ea3
lea rcx, [rdi + 3]
lea rax, [rsi - 2]
cmp rcx, rax
jb 0x1400030ba
cmp dl, 0x3d
jne 0x1400030ba
movzx eax, byte [rdi + r12]
cmp al, 0x3d
jne 0x140002eb1
xor r15d, r15d
jmp 0x140002ef6
cmp al, 0x2f
jne 0x140002ebd
mov r15d, 0x3f
jmp 0x140002ef6
cmp al, 0x2b
jne 0x140002ec9
mov r15d, 0x3e
jmp 0x140002ef6
movsx ecx, al
call fcn.1400a76a8
movsx ecx, byte [rdi + r12]
test eax, eax
je 0x140002ee0
lea r15d, [rcx + 4]
jmp 0x140002ef6
call fcn.1400a7778
movsx ecx, byte [rdi + r12]
lea r15d, [rcx - 0x47]
test eax, eax
jne 0x140002ef6
lea r15d, [rcx - 0x41]
movzx eax, byte [rdi + r12 + 1]
cmp al, 0x3d
jne 0x140002f04
xor ebp, ebp
jmp 0x140002f48
cmp al, 0x2f
jne 0x140002f0f
mov ebp, 0x3f
jmp 0x140002f48
cmp al, 0x2b
jne 0x140002f1a
mov ebp, 0x3e
jmp 0x140002f48
movsx ecx, al
call fcn.1400a76a8
movsx ecx, byte [rdi + r12 + 1]
test eax, eax
je 0x140002f31
lea ebp, [rcx + 4]
jmp 0x140002f48
call fcn.1400a7778
movsx ebp, byte [rdi + r12 + 1]
test eax, eax
je 0x140002f45
add ebp, 0xffffffb9
jmp 0x140002f48
add ebp, 0xffffffbf
movzx eax, byte [rdi + r12 + 2]
cmp al, 0x3d
jne 0x140002f56
xor ebx, ebx
jmp 0x140002f9a
cmp al, 0x2f
jne 0x140002f61
mov ebx, 0x3f
jmp 0x140002f9a
cmp al, 0x2b
jne 0x140002f6c
mov ebx, 0x3e
jmp 0x140002f9a
movsx ecx, al
call fcn.1400a76a8
movsx ecx, byte [rdi + r12 + 2]
test eax, eax
je 0x140002f83
lea ebx, [rcx + 4]
jmp 0x140002f9a
call fcn.1400a7778
movsx ebx, byte [rdi + r12 + 2]
test eax, eax
je 0x140002f97
add ebx, 0xffffffb9
jmp 0x140002f9a
add ebx, 0xffffffbf
movzx eax, byte [rdi + r12 + 3]
cmp al, 0x3d
jne 0x140002fa8
xor ecx, ecx
jmp 0x140002fec
cmp al, 0x2f
jne 0x140002fb3
mov ecx, 0x3f
jmp 0x140002fec
cmp al, 0x2b
jne 0x140002fbe
mov ecx, 0x3e
jmp 0x140002fec
movsx ecx, al
call fcn.1400a76a8
movsx ecx, byte [rdi + r12 + 3]
test eax, eax
je 0x140002fd5
add ecx, 4
jmp 0x140002fec
call fcn.1400a7778
movsx ecx, byte [rdi + r12 + 3]
test eax, eax
je 0x140002fe9
add ecx, 0xffffffb9
jmp 0x140002fec
add ecx, 0xffffffbf
mov r8, qword [rsp + 0x70]
movzx eax, bpl
shr al, 4
and cl, 0x3f
and al, 3
shl bpl, 4
shl r15b, 2
or al, r15b
mov byte [r8 + r13], al
movzx eax, bl
shr al, 2
shl bl, 6
and al, 0xf
or cl, bl
or al, bpl
mov rbp, qword [rsp + 0x88]
lea rbx, [rdi + 4]
mov byte [r8 + r13 + 1], al
mov byte [r8 + r13 + 2], cl
cmp rbx, rsi
jne 0x140003066
cmp byte [rdi + r12 + 2], 0x3d
lea rax, [rbp + 1]
cmovne rax, rbp
cmp byte [rdi + r12 + 3], 0x3d
mov rbp, rax
mov qword [rsp + 0x88], rax
jne 0x140003063
inc rbp
mov qword [rsp + 0x88], rbp
cmp rbx, rsi
jae 0x140003099
nop dword [rax + rax]
movsx edx, byte [rbx + r12]
lea rcx, str._r_n_t
call fcn.140099ce0
test rax, rax
je 0x140003094
inc r14
inc rdi
inc rbx
cmp rbx, rsi
jb 0x140003070
mov r8, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
add rdi, 4
mov rcx, qword [rsp + 0x20]
add r13, 3
lea rax, [rdi + 3]
cmp rax, rsi
jb 0x140002db0
jmp 0x1400030bf
mov rdx, qword [rsp + 0x78]
mov r15, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x80]
cmp rdi, rsi
mov rdi, qword [rsp + 0x48]
jne 0x14000310c
mov rcx, qword [rdx]
lea rax, [r14 + 3]
shr rax, 2
lea rax, [rax + rax*2]
sub rcx, rax
cmp r13, rcx
jne 0x14000310c
sub r13, rbp
mov qword [rdx], r13
xor eax, eax
mov rbp, qword [rsp + 0x50]
mov r13, qword [rsp + 0x40]
mov r14, qword [rsp + 0x38]
add rsp, 0x58
pop r12
pop rsi
ret
mov eax, 0x5dc
jmp 0x1400030f5
mov eax, 0x8fc
add rsp, 0x58
pop r12
pop rsi
ret