Function at 0x140022d70
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov r14, r8
mov r15, rdx
mov rsi, rcx
mov qword [rsp + 0x30], rcx
xor ebp, ebp
mov dword [rsp + 0x2c], ebp
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], rbp
mov qword [rcx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rcx], bpl
mov dword [rsp + 0x2c], 1
mov edi, ebp
mov ecx, ebp
movzx ebx, byte [rsp + 0x20]
nop word [rax + rax]
dec r14
movzx eax, byte [r15]
lea r15, [r15 + 1]
mov byte [rsp + rcx + 0x24], al
inc edi
inc rcx
movzx edx, byte [rsp + 0x26]
movzx r12d, byte [rsp + 0x25]
movzx r13d, byte [rsp + 0x24]
cmp rcx, 3
jne 0x140022ec1
movzx eax, r13b
shr al, 2
mov byte [rsp + 0x28], al
movzx ecx, r13b
and cl, 3
shl cl, 4
movzx eax, r12b
shr al, 4
add cl, al
mov byte [rsp + 0x29], cl
movzx ecx, r12b
and cl, 0xf
shl cl, 2
movzx eax, dl
shr al, 6
add cl, al
mov byte [rsp + 0x2a], cl
movzx eax, dl
and al, 0x3f
mov byte [rsp + 0x2b], al
mov rdi, rbp
nop dword [rax]
nop word [rax + rax]
lea rcx, [0x140119fe0]
cmp qword [0x140119ff8], 0x10
cmovae rcx, qword [0x140119fe0]
movzx eax, byte [rsp + rdi + 0x28]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x140022e9d
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x140022e92
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140022eae
movzx r8d, bl
mov edx, 1
mov rcx, rsi
call fcn.14000a7e0
inc rdi
cmp rdi, 4
jl 0x140022e50
mov edi, ebp
mov rcx, rbp
movzx edx, byte [rsp + 0x26]
test r14, r14
jne 0x140022dd0
test edi, edi
je 0x140023013
movsxd rax, edi
cmp rax, 3
jge 0x140022f00
jae 0x140023034
mov byte [rsp + rax + 0x24], 0
inc rax
cmp rax, 3
jl 0x140022edb
movzx edx, byte [rsp + 0x26]
movzx r12d, byte [rsp + 0x25]
movzx r13d, byte [rsp + 0x24]
movzx eax, r13b
shr al, 2
mov byte [rsp + 0x28], al
and r13b, 3
shl r13b, 4
movzx eax, r12b
shr al, 4
add r13b, al
mov byte [rsp + 0x29], r13b
and r12b, 0xf
shl r12b, 2
movzx eax, dl
shr al, 6
add r12b, al
mov byte [rsp + 0x2a], r12b
and dl, 0x3f
mov byte [rsp + 0x2b], dl
lea eax, [rdi + 1]
movsxd r14, eax
test eax, eax
jle 0x140022fb6
movzx ebx, byte [rsp + 0x20]
nop
lea rcx, [0x140119fe0]
cmp qword [0x140119ff8], 0x10
cmovae rcx, qword [0x140119fe0]
movzx eax, byte [rsp + rbp + 0x28]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x140022f9d
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x140022f92
mov rax, qword [rsi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140022fae
movzx r8d, bl
mov edx, 1
mov rcx, rsi
call fcn.14000a7e0
inc rbp
cmp rbp, r14
jl 0x140022f50
cmp edi, 3
jge 0x140023013
mov eax, 3
sub eax, edi
mov edi, eax
movzx ebx, byte [rsp + 0x20]
nop dword [rax]
mov rcx, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
cmp rcx, rdx
jae 0x140022ff9
lea rax, [rcx + 1]
mov qword [rsi + 0x10], rax
mov rax, rsi
cmp rdx, 0x10
jb 0x140022ff1
mov rax, qword [rsi]
mov word [rax + rcx], 0x3d
jmp 0x14002300d
mov r9b, 0x3d
movzx r8d, bl
mov edx, 1
mov rcx, rsi
call fcn.14000a7e0
sub rdi, 1
jne 0x140022fd0
mov rax, rsi
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.1400a13f0
int3