Function at 0x140004600
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x80
mov rax, qword [0x140045048]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x24], 0
movdqa xmm0, xmmword [0x140031510]
movdqa xmmword [rsp + 0x30], xmm0
movdqa xmm1, xmmword [0x140031520]
movdqa xmmword [rsp + 0x40], xmm1
movdqa xmm0, xmmword [0x140031530]
movdqa xmmword [rsp + 0x50], xmm0
movdqa xmm1, xmmword [str.wxyz0123456789_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvbad_allocation]
movdqa xmmword [rsp + 0x60], xmm1
mov qword [rcx], 0
mov qword [rcx + 0x10], 0
mov qword [rcx + 0x18], recv
mov byte [rcx], 0
mov dword [rsp + 0x24], 1
xor ebp, ebp
cmp rdx, r8
je 0x1400049c1
nop word [rax + rax]
movzx eax, byte [rbx]
mov byte [rsp + rbp + 0x20], al
inc rbp
movzx r15d, byte [rsp + 0x21]
movzx r14d, byte [rsp + 0x20]
cmp rbp, 3
jne 0x140004814
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 0x140004709
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x1400046fe
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140004718
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rsi
call fcn.140003d50
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 0x140004760
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x140004755
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14000476f
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rsi
call fcn.140003d50
movzx ecx, r15b
and cl, 0xf
shl cl, 2
movzx ebp, byte [rsp + 0x22]
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 0x1400047bc
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x1400047b1
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400047cb
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rsi
call fcn.140003d50
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 0x140004803
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x1400047f8
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140004812
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rsi
call fcn.140003d50
xor ebp, ebp
inc rbx
cmp rbx, rdi
jne 0x1400046b0
test rbp, rbp
je 0x1400049c1
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 0x140004862
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x140004857
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140004871
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rsi
call fcn.140003d50
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
and r14b, 3
shl r14b, 4
cmp rbp, 1
jne 0x1400048d2
movzx eax, r14b
movzx r9d, byte [rsp + rax + 0x30]
cmp rcx, rdx
jae 0x1400048bb
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x1400048aa
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
inc rbp
jmp 0x14000496f
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rsi
call fcn.140003d50
inc rbp
jmp 0x14000496f
movzx eax, r15b
shr al, 4
add r14b, al
movzx eax, r14b
movzx r9d, byte [rsp + rax + 0x30]
cmp rcx, rdx
jae 0x14000490a
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x1400048ff
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140004919
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rsi
call fcn.140003d50
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 0x140004957
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x14000494c
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140004966
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rsi
call fcn.140003d50
inc rbp
cmp rbp, 4
jae 0x1400049c1
mov ebx, 4
sub rbx, rbp
nop word [rax + rax]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x1400049a9
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x1400049a1
mov rax, qword [rsi]
mov word [rax + rcx], 0x3d
jmp 0x1400049bb
mov r9b, 0x3d
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rsi
call fcn.140003d50
sub rbx, 1
jne 0x140004980
mov rax, rsi
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.14000e470
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rdi
ret