Function at 0x7ff65ed2ddd0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
mov rbx, rdx
mov rdi, rcx
xor ebp, ebp
mov dword [rsp + 0x20], ebp
mov qword [rcx], rbp
mov qword [rcx + 0x10], rbp
mov qword [rcx + 0x18], 0xf
mov byte [rcx], bpl
mov dword [rsp + 0x20], 1
lea rsi, [rdx + 0x10]
mov rdx, qword [rsi]
call fcn.7ff65ed48b50
lea r15d, [rbp - 6]
mov rcx, rbx
mov qword [rsp + 0x88], rbx
cmp qword [rbx + 0x18], 0x10
jb 0x7ff65ed2de3b
mov rcx, qword [rbx]
mov qword [rsp + 0x88], rcx
mov rbx, rcx
mov rax, qword [rsi]
add rax, rbx
mov qword [rsp + 0x28], rax
movabs r8, 0x7fffffffffffffff
cmp rcx, rax
je 0x7ff65ed2e0ea
lea r9, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
shl ebp, 8
movzx eax, byte [rcx]
add ebp, eax
mov qword [rsp + 0x98], rbp
add r15d, 8
js 0x7ff65ed2dfc3
movsxd rax, ebp
mov qword [rsp + 0x90], rax
nop word [rax + rax]
mov ecx, r15d
sar rax, cl
and eax, 0x3f
movzx r12d, byte [rax + r9]
mov rsi, qword [rdi + 0x10]
mov rbp, qword [rdi + 0x18]
cmp rsi, rbp
jae 0x7ff65ed2decd
lea rax, [rsi + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rbp, 0x10
jb 0x7ff65ed2debf
mov rax, qword [rdi]
mov byte [rax + rsi], r12b
mov byte [rax + rsi + 1], 0
jmp 0x7ff65ed2dfa1
mov rax, r8
sub rax, rsi
cmp rax, 1
jb 0x7ff65ed2e20f
lea r13, [rsi + 1]
mov rbx, r13
or rbx, 0xf
cmp rbx, r8
jbe 0x7ff65ed2def2
mov rbx, r8
jmp 0x7ff65ed2df13
mov rcx, rbp
shr rcx, 1
mov rax, r8
sub rax, rcx
cmp rbp, rax
jbe 0x7ff65ed2df08
mov rbx, r8
jmp 0x7ff65ed2df13
lea rax, [rcx + rbp]
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
call fcn.7ff65ec844e0
mov r14, rax
mov qword [rdi + 0x10], r13
mov qword [rdi + 0x18], rbx
mov r8, rsi
mov rcx, rax
cmp rbp, 0x10
jb 0x7ff65ed2df7b
mov rbx, qword [rdi]
mov rdx, rbx
call fcn.7ff65efe2f30
mov byte [r14 + rsi], r12b
mov byte [r14 + rsi + 1], 0
lea rdx, [rbp + 1]
cmp rdx, 0x1000
jb 0x7ff65ed2df71
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x7ff65ed2e209
mov rbx, rcx
mov rcx, rbx
call fcn.7ff65efe070c
jmp 0x7ff65ed2df8d
mov rdx, rdi
call fcn.7ff65efe2f30
mov byte [r14 + rsi], r12b
mov byte [r14 + rsi + 1], 0
lea r9, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
movabs r8, 0x7fffffffffffffff
mov qword [rdi], r14
sub r15d, 6
mov rax, qword [rsp + 0x90]
jns 0x7ff65ed2de90
mov rbp, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x88]
inc rcx
mov qword [rsp + 0x88], rcx
cmp rcx, qword [rsp + 0x28]
jne 0x7ff65ed2de60
cmp r15d, 0xfffffffa
jle 0x7ff65ed2e0ea
lea ecx, [r15 + 8]
shl ebp, 8
movsxd rdx, ebp
sar rdx, cl
and edx, 0x3f
movzx r15d, byte [rdx + r9]
mov rsi, qword [rdi + 0x10]
mov rbp, qword [rdi + 0x18]
cmp rsi, rbp
jae 0x7ff65ed2e027
lea rax, [rsi + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rbp, 0x10
jb 0x7ff65ed2e019
mov rax, qword [rdi]
mov byte [rax + rsi], r15b
mov byte [rax + rsi + 1], 0
jmp 0x7ff65ed2e0ea
mov rax, r8
sub rax, rsi
cmp rax, 1
jb 0x7ff65ed2e20f
lea r12, [rsi + 1]
mov rbx, r12
or rbx, 0xf
cmp rbx, r8
jbe 0x7ff65ed2e04c
mov rbx, r8
jmp 0x7ff65ed2e06d
mov rcx, rbp
shr rcx, 1
mov rax, r8
sub rax, rcx
cmp rbp, rax
jbe 0x7ff65ed2e062
mov rbx, r8
jmp 0x7ff65ed2e06d
lea rax, [rcx + rbp]
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
call fcn.7ff65ec844e0
mov r14, rax
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], rbx
mov r8, rsi
mov rcx, rax
cmp rbp, 0x10
jb 0x7ff65ed2e0d5
mov rbx, qword [rdi]
mov rdx, rbx
call fcn.7ff65efe2f30
mov byte [r14 + rsi], r15b
mov byte [r14 + rsi + 1], 0
lea rdx, [rbp + 1]
cmp rdx, 0x1000
jb 0x7ff65ed2e0cb
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x7ff65ed2e209
mov rbx, rcx
mov rcx, rbx
call fcn.7ff65efe070c
jmp 0x7ff65ed2e0e7
mov rdx, rdi
call fcn.7ff65efe2f30
mov byte [r14 + rsi], r15b
mov byte [r14 + rsi + 1], 0
mov qword [rdi], r14
mov rcx, qword [rdi + 0x10]
test cl, 3
je 0x7ff65ed2e1f5
mov rbp, rcx
movabs r12, 0x7fffffffffffffff
mov rsi, qword [rdi + 0x18]
cmp rcx, rsi
jae 0x7ff65ed2e12c
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rsi, 0x10
jb 0x7ff65ed2e121
mov rax, qword [rdi]
mov word [rax + rcx], 0x3d
jmp 0x7ff65ed2e1e5
mov rax, r12
sub rax, rbp
cmp rax, 1
jb 0x7ff65ed2e20f
lea r15, [rbp + 1]
mov rbx, r15
or rbx, 0xf
cmp rbx, r12
jbe 0x7ff65ed2e151
mov rbx, r12
jmp 0x7ff65ed2e172
mov rcx, rsi
shr rcx, 1
mov rax, r12
sub rax, rcx
cmp rsi, rax
jbe 0x7ff65ed2e167
mov rbx, r12
jmp 0x7ff65ed2e172
lea rax, [rcx + rsi]
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
call fcn.7ff65ec844e0
mov r14, rax
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], rbx
mov r8, rbp
mov rcx, rax
cmp rsi, 0x10
jb 0x7ff65ed2e1d3
mov rbx, qword [rdi]
mov rdx, rbx
call fcn.7ff65efe2f30
mov word [r14 + rbp], 0x3d
lea rdx, [rsi + 1]
cmp rdx, 0x1000
jb 0x7ff65ed2e1c9
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x7ff65ed2e209
mov rbx, rcx
mov rcx, rbx
call fcn.7ff65efe070c
jmp 0x7ff65ed2e1e2
mov rdx, rdi
call fcn.7ff65efe2f30
mov word [r14 + rbp], 0x3d
mov qword [rdi], r14
mov rcx, qword [rdi + 0x10]
mov rbp, rcx
test cl, 3
jne 0x7ff65ed2e104
mov rax, rdi
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call fcn.7ff65efe777c
int3
call fcn.7ff65ec84720
int3