Function at 0x1400162b0
Capabilities:
Encode data using base64

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rbp
mov qword [rax + 8], rcx
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x70
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
xor r12d, r12d
mov dword [rax - 0x78], r12d
movdqa xmm0, xmmword [0x1400901d0]
movdqa xmmword [rax - 0x68], xmm0
movdqa xmm1, xmmword [0x1400901e0]
movdqa xmmword [rax - 0x58], xmm1
movdqa xmm0, xmmword [0x1400901f0]
movdqa xmmword [rax - 0x48], xmm0
movdqa xmm1, xmmword [0x140090160]
movdqa xmmword [rax - 0x38], xmm1
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], setsockopt
mov byte [rcx], r12b
mov dword [rax - 0x78], 1
mov ebp, r12d
cmp rdx, r8
je 0x140016662
nop word [rax + rax]
movzx eax, byte [rbx]
mov byte [rsp + rbp + 0xa8], al
inc rbp
movzx r15d, byte [rsp + 0xa9]
movzx r14d, byte [rsp + 0xa8]
cmp rbp, 3
jne 0x1400164b5
mov eax, r14d
shr rax, 2
movzx r9d, byte [rsp + rax + 0x30]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x1400163a2
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0xf
jbe 0x140016397
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400163b2
xor r8d, r8d
mov edx, 1
mov rcx, rsi
call fcn.1400188e0
movzx ecx, r14b
and cl, 3
shl cl, 4
movzx eax, r15b
shr al, 4
add cl, al
movzx eax, cl
movzx r9d, byte [rsp + rax + 0x30]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x1400163fa
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0xf
jbe 0x1400163ef
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14001640a
xor r8d, r8d
mov edx, 1
mov rcx, rsi
call fcn.1400188e0
movzx ecx, r15b
and cl, 0xf
shl cl, 2
movzx ebp, byte [rsp + 0xaa]
movzx eax, bpl
shr al, 6
add cl, al
movzx eax, cl
movzx r9d, byte [rsp + rax + 0x30]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x14001645a
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0xf
jbe 0x14001644f
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14001646a
xor r8d, r8d
mov edx, 1
mov rcx, rsi
call fcn.1400188e0
mov rax, rbp
and eax, 0x3f
movzx r9d, byte [rsp + rax + 0x30]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x1400164a2
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0xf
jbe 0x140016497
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400164b2
xor r8d, r8d
mov edx, 1
mov rcx, rsi
call fcn.1400188e0
mov rbp, r12
inc rbx
cmp rbx, rdi
jne 0x140016340
test rbp, rbp
je 0x140016662
mov rax, r14
shr rax, 2
movzx r9d, byte [rsp + rax + 0x30]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x140016503
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0xf
jbe 0x1400164f8
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140016513
xor r8d, r8d
mov edx, 1
mov rcx, rsi
call fcn.1400188e0
and r14b, 3
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
shl r14b, 4
cmp rbp, 1
jne 0x140016575
movzx eax, r14b
movzx r9d, byte [rsp + rax + 0x30]
cmp rcx, rdx
jae 0x14001655d
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0xf
jbe 0x14001654c
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
inc rbp
jmp 0x140016614
xor r8d, r8d
mov edx, 1
mov rcx, rsi
call fcn.1400188e0
inc rbp
jmp 0x140016614
movzx eax, r15b
shr al, 4
add r14b, al
movzx eax, r14b
movzx r9d, byte [rsp + rax + 0x30]
cmp rcx, rdx
jae 0x1400165ad
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0xf
jbe 0x1400165a2
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400165bd
xor r8d, r8d
mov edx, 1
mov rcx, rsi
call fcn.1400188e0
and r15b, 0xf
shl r15b, 2
movzx eax, r15b
movzx r9d, byte [rsp + rax + 0x30]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x1400165fb
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0xf
jbe 0x1400165f0
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14001660b
xor r8d, r8d
mov edx, 1
mov rcx, rsi
call fcn.1400188e0
inc rbp
cmp rbp, 4
jae 0x140016662
mov ebx, 4
sub rbx, rbp
nop dword [rax]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x140016649
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0xf
jbe 0x140016641
mov rax, qword [rsi]
mov word [rax + rcx], 0x3d
jmp 0x14001665c
mov r9b, 0x3d
xor r8d, r8d
mov edx, 1
mov rcx, rsi
call fcn.1400188e0
sub rbx, 1
jne 0x140016620
mov rax, rsi
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret