Function at 0x14009e770
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r14d, r8d
mov r13, rdx
mov rdi, rcx
xor esi, esi
mov dword [rsp + 0x28], esi
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], rsi
mov qword [rcx + 0x18], sendto
mov byte [rcx], sil
mov dword [rsp + 0x28], 1
mov ebp, esi
test r8d, r8d
je 0x14009eb33
mov ecx, esi
movzx ebx, byte [rsp + 0x80]
nop word [rax + rax]
dec r14d
movzx eax, byte [r13]
lea r13, [r13 + 1]
mov byte [rsp + rcx + 0x20], al
inc ebp
inc rcx
movzx r8d, byte [rsp + 0x22]
movzx r15d, byte [rsp + 0x21]
movzx r12d, byte [rsp + 0x20]
cmp rcx, 3
jne 0x14009e9ce
movzx eax, r12b
shr al, 2
movzx ecx, al
mov byte [rsp + 0x24], cl
movzx ebp, r12b
and bpl, 3
shl bpl, 4
movzx eax, r15b
shr al, 4
add bpl, al
movzx edx, r15b
and dl, 0xf
shl dl, 2
movzx eax, r8b
shr al, 6
add dl, al
mov byte [rsp + 0x80], dl
movzx eax, r8b
and al, 0x3f
mov byte [rsp + 0x88], al
lea rax, [0x1402226a8]
cmp qword [0x1402226c0], 0xf
cmova rax, qword [0x1402226a8]
movzx r9d, byte [rcx + rax]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14009e894
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x14009e889
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14009e8a5
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14008d780
lea rcx, [0x1402226a8]
cmp qword [0x1402226c0], 0xf
cmova rcx, qword [0x1402226a8]
movzx eax, bpl
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14009e8f1
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x14009e8e6
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14009e902
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14008d780
lea rbp, [0x1402226a8]
mov rcx, rbp
cmp qword [0x1402226c0], 0xf
cmova rcx, qword [0x1402226a8]
movzx eax, byte [rsp + 0x80]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14009e955
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x14009e94a
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14009e966
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14008d780
mov rcx, rbp
cmp qword [0x1402226c0], 0xf
cmova rcx, qword [0x1402226a8]
movzx eax, byte [rsp + 0x88]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14009e9b2
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x14009e9a7
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14009e9c3
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14008d780
mov ebp, esi
mov rcx, rsi
movzx r8d, byte [rsp + 0x22]
test r14d, r14d
jne 0x14009e7d0
test ebp, ebp
je 0x14009eb33
movsxd rax, ebp
cmp rax, 3
jge 0x14009ea0e
jae 0x14009eb4b
mov byte [rsp + rax + 0x20], 0
inc rax
cmp rax, 3
jl 0x14009e9e8
movzx r8d, byte [rsp + 0x22]
movzx r15d, byte [rsp + 0x21]
movzx r12d, byte [rsp + 0x20]
movzx eax, r12b
shr al, 2
mov byte [rsp + 0x24], al
and r12b, 3
shl r12b, 4
movzx eax, r15b
shr al, 4
add r12b, al
mov byte [rsp + 0x25], r12b
and r15b, 0xf
shl r15b, 2
movzx eax, r8b
shr al, 6
add r15b, al
mov byte [rsp + 0x26], r15b
and r8b, 0x3f
mov byte [rsp + 0x27], r8b
lea eax, [rbp + 1]
movsxd r14, eax
test eax, eax
jle 0x14009ead6
movzx ebx, byte [rsp + 0x80]
nop dword [rax]
nop word [rax + rax]
lea rcx, [0x1402226a8]
cmp qword [0x1402226c0], 0xf
cmova rcx, qword [0x1402226a8]
movzx eax, byte [rsp + rsi + 0x24]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14009eabd
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x14009eab2
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14009eace
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14008d780
inc rsi
cmp rsi, r14
jl 0x14009ea70
cmp ebp, 3
jge 0x14009eb33
mov esi, 3
sub esi, ebp
movzx ebx, byte [rsp + 0x80]
nop word [rax + rax]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14009eb19
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x14009eb11
mov rax, qword [rdi]
mov word [rax + rcx], 0x3d
jmp 0x14009eb2d
mov r9b, 0x3d
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14008d780
sub rsi, 1
jne 0x14009eaf0
mov rax, rdi
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400a9178
int3