Function at 0x140002cc0
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 0x140002cf0
mov eax, 0x8fd
add rsp, 0x58
pop r12
pop rsi
ret
test rdx, rdx
je 0x140002d16
lea rax, [r9 + 3]
shr rax, 2
lea rcx, [rax + rax*2]
cmp qword [rdx], rcx
jae 0x140002d16
mov qword [rdx], rcx
mov eax, 0x514
add rsp, 0x58
pop r12
pop rsi
ret
test r8, r8
je 0x140003123
test rdx, rdx
je 0x140003123
test r12, r12
je 0x140003123
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 0x140002d8a
nop word [rax + rax]
movsx edx, byte [r12 + rsi - 1]
lea rcx, str._r_n_t
call fcn.1400a1ae0
test rax, rax
je 0x140002d80
inc r14
sub rsi, 1
jne 0x140002d60
mov rdx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x70]
xor edi, edi
xor r13d, r13d
cmp rsi, 3
jbe 0x1400030dc
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 0x1400030cf
movsx ecx, byte [rdi + r12]
call fcn.1400af378
test eax, eax
jne 0x140002dfb
movsx ecx, byte [rdi + r12]
call fcn.1400af498
test eax, eax
jne 0x140002dfb
movzx eax, byte [rdi + r12]
sub al, 0x2b
test al, 0xfb
jne 0x1400030ca
movsx ecx, byte [rdi + r12 + 1]
call fcn.1400af378
test eax, eax
jne 0x140002e29
movsx ecx, byte [rdi + r12 + 1]
call fcn.1400af498
test eax, eax
jne 0x140002e29
movzx eax, byte [rdi + r12 + 1]
sub al, 0x2b
test al, 0xfb
jne 0x1400030ca
movsx ecx, byte [rdi + r12 + 2]
call fcn.1400af378
test eax, eax
jne 0x140002e6e
movsx ecx, byte [rdi + r12 + 2]
call fcn.1400af498
test eax, eax
jne 0x140002e6e
movzx edx, byte [rdi + r12 + 2]
lea eax, [rdx - 0x2b]
test al, 0xfb
je 0x140002e6e
lea rcx, [rdi + 2]
lea rax, [rsi - 2]
cmp rcx, rax
jb 0x1400030ca
cmp dl, 0x3d
jne 0x1400030ca
movsx ecx, byte [rdi + r12 + 3]
call fcn.1400af378
test eax, eax
jne 0x140002eb3
movsx ecx, byte [rdi + r12 + 3]
call fcn.1400af498
test eax, eax
jne 0x140002eb3
movzx edx, byte [rdi + r12 + 3]
lea eax, [rdx - 0x2b]
test al, 0xfb
je 0x140002eb3
lea rcx, [rdi + 3]
lea rax, [rsi - 2]
cmp rcx, rax
jb 0x1400030ca
cmp dl, 0x3d
jne 0x1400030ca
movzx eax, byte [rdi + r12]
cmp al, 0x3d
jne 0x140002ec1
xor r15d, r15d
jmp 0x140002f06
cmp al, 0x2f
jne 0x140002ecd
mov r15d, 0x3f
jmp 0x140002f06
cmp al, 0x2b
jne 0x140002ed9
mov r15d, 0x3e
jmp 0x140002f06
movsx ecx, al
call fcn.1400af498
movsx ecx, byte [rdi + r12]
test eax, eax
je 0x140002ef0
lea r15d, [rcx + 4]
jmp 0x140002f06
call fcn.1400af568
movsx ecx, byte [rdi + r12]
lea r15d, [rcx - 0x47]
test eax, eax
jne 0x140002f06
lea r15d, [rcx - 0x41]
movzx eax, byte [rdi + r12 + 1]
cmp al, 0x3d
jne 0x140002f14
xor ebp, ebp
jmp 0x140002f58
cmp al, 0x2f
jne 0x140002f1f
mov ebp, 0x3f
jmp 0x140002f58
cmp al, 0x2b
jne 0x140002f2a
mov ebp, 0x3e
jmp 0x140002f58
movsx ecx, al
call fcn.1400af498
movsx ecx, byte [rdi + r12 + 1]
test eax, eax
je 0x140002f41
lea ebp, [rcx + 4]
jmp 0x140002f58
call fcn.1400af568
movsx ebp, byte [rdi + r12 + 1]
test eax, eax
je 0x140002f55
add ebp, 0xffffffb9
jmp 0x140002f58
add ebp, 0xffffffbf
movzx eax, byte [rdi + r12 + 2]
cmp al, 0x3d
jne 0x140002f66
xor ebx, ebx
jmp 0x140002faa
cmp al, 0x2f
jne 0x140002f71
mov ebx, 0x3f
jmp 0x140002faa
cmp al, 0x2b
jne 0x140002f7c
mov ebx, 0x3e
jmp 0x140002faa
movsx ecx, al
call fcn.1400af498
movsx ecx, byte [rdi + r12 + 2]
test eax, eax
je 0x140002f93
lea ebx, [rcx + 4]
jmp 0x140002faa
call fcn.1400af568
movsx ebx, byte [rdi + r12 + 2]
test eax, eax
je 0x140002fa7
add ebx, 0xffffffb9
jmp 0x140002faa
add ebx, 0xffffffbf
movzx eax, byte [rdi + r12 + 3]
cmp al, 0x3d
jne 0x140002fb8
xor ecx, ecx
jmp 0x140002ffc
cmp al, 0x2f
jne 0x140002fc3
mov ecx, 0x3f
jmp 0x140002ffc
cmp al, 0x2b
jne 0x140002fce
mov ecx, 0x3e
jmp 0x140002ffc
movsx ecx, al
call fcn.1400af498
movsx ecx, byte [rdi + r12 + 3]
test eax, eax
je 0x140002fe5
add ecx, 4
jmp 0x140002ffc
call fcn.1400af568
movsx ecx, byte [rdi + r12 + 3]
test eax, eax
je 0x140002ff9
add ecx, 0xffffffb9
jmp 0x140002ffc
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 0x140003076
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 0x140003073
inc rbp
mov qword [rsp + 0x88], rbp
cmp rbx, rsi
jae 0x1400030a9
nop dword [rax + rax]
movsx edx, byte [rbx + r12]
lea rcx, str._r_n_t
call fcn.1400a1ae0
test rax, rax
je 0x1400030a4
inc r14
inc rdi
inc rbx
cmp rbx, rsi
jb 0x140003080
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 0x140002dc0
jmp 0x1400030cf
mov rdx, qword [rsp + 0x78]
mov r15, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x80]
cmp rdi, rsi
mov rdi, qword [rsp + 0x48]
jne 0x14000311c
mov rcx, qword [rdx]
lea rax, [r14 + 3]
shr rax, 2
lea rax, [rax + rax*2]
sub rcx, rax
cmp r13, rcx
jne 0x14000311c
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 0x140003105
mov eax, 0x8fc
add rsp, 0x58
pop r12
pop rsi
ret