Function at 0x140003bc8
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
and dword [rbp - 0x50], 0
movdqa xmm0, xmmword [0x14000e6b0]
movdqa xmmword [rbp - 0x40], xmm0
movdqa xmm1, xmmword [0x14000e6c0]
movdqa xmmword [rbp - 0x30], xmm1
movdqa xmm0, xmmword [0x14000e6d0]
movdqa xmmword [rbp - 0x20], xmm0
movdqa xmm1, xmmword [str.wxyz0123456789_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv]
movdqa xmmword [rbp - 0x10], xmm1
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
and qword [rcx + 0x10], 0
and qword [rcx + 0x10], 0
mov qword [rcx + 0x18], recv
mov byte [rcx], 0
mov r13d, 1
mov dword [rbp - 0x50], r13d
xor r14d, r14d
cmp rdx, r8
je 0x140003f34
mov al, byte [rbx]
mov byte [rbp + r14 + 0x48], al
add r14, r13
mov r12b, byte [rbp + 0x49]
movzx r15d, byte [rbp + 0x48]
cmp r14, 3
jne 0x140003da4
mov eax, r15d
shr rax, 2
mov r9b, byte [rbp + rax - 0x40]
mov rcx, qword [rsi + 0x10]
cmp rcx, qword [rsi + 0x18]
jae 0x140003ca9
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003c9e
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140003cb8
mov r8b, byte [rbp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.140003870
mov cl, r15b
and cl, 3
shl cl, 4
mov al, r12b
shr al, 4
add cl, al
movzx eax, cl
mov r9b, byte [rbp + rax - 0x40]
mov rcx, qword [rsi + 0x10]
cmp rcx, qword [rsi + 0x18]
jae 0x140003cfb
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003cf0
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140003d0a
mov r8b, byte [rbp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.140003870
mov cl, r12b
and cl, 0xf
shl cl, 2
mov al, byte [rbp + 0x4a]
shr al, 6
add cl, al
movzx eax, cl
mov r9b, byte [rbp + rax - 0x40]
mov rcx, qword [rsi + 0x10]
cmp rcx, qword [rsi + 0x18]
jae 0x140003d4d
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003d42
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140003d5c
mov r8b, byte [rbp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.140003870
movzx eax, byte [rbp + 0x4a]
and eax, 0x3f
mov r9b, byte [rbp + rax - 0x40]
mov rcx, qword [rsi + 0x10]
cmp rcx, qword [rsi + 0x18]
jae 0x140003d92
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003d87
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140003da1
mov r8b, byte [rbp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.140003870
xor r14d, r14d
add rbx, r13
cmp rbx, rdi
jne 0x140003c56
test r14, r14
je 0x140003f34
mov rax, r15
shr rax, 2
mov r9b, byte [rbp + rax - 0x40]
mov rcx, qword [rsi + 0x10]
cmp rcx, qword [rsi + 0x18]
jae 0x140003def
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003de4
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140003dfe
mov r8b, byte [rbp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.140003870
mov ebx, 4
and r15b, 3
mov rcx, qword [rsi + 0x10]
shl r15b, 4
cmp r14, r13
jne 0x140003e5a
movzx eax, r15b
mov r9b, byte [rbp + rax - 0x40]
cmp rcx, qword [rsi + 0x18]
jae 0x140003e43
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003e38
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140003e52
mov r8b, byte [rbp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.140003870
inc r14
jmp 0x140003ef3
mov al, r12b
shr al, 4
add r15b, al
movzx eax, r15b
mov r9b, byte [rbp + rax - 0x40]
cmp rcx, qword [rsi + 0x18]
jae 0x140003e92
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003e87
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140003ea1
mov r8b, byte [rbp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.140003870
and r12b, 0xf
shl r12b, 2
movzx eax, r12b
mov r9b, byte [rbp + rax - 0x40]
mov rcx, qword [rsi + 0x10]
cmp rcx, qword [rsi + 0x18]
jae 0x140003edc
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003ed1
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140003eeb
mov r8b, byte [rbp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.140003870
add r14, r13
cmp r14, rbx
jae 0x140003f34
sub rbx, r14
mov rcx, qword [rsi + 0x10]
cmp rcx, qword [rsi + 0x18]
jae 0x140003f1d
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp qword [rsi + 0x18], 0x10
jb 0x140003f15
mov rax, qword [rsi]
mov word [rax + rcx], 0x3d
jmp 0x140003f2f
mov r9b, 0x3d
mov r8b, byte [rbp + 0x40]
mov rdx, r13
mov rcx, rsi
call fcn.140003870
sub rbx, r13
jne 0x140003ef6
mov rax, rsi
mov rbx, qword [rsp + 0xc0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret