Function at 0x140029aa4
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
mov rbp, rsp
sub rsp, 0x30
mov r14, r8
mov r13, rdx
mov rbx, rcx
and dword [rbp - 0x10], 0
and qword [rcx], 0
and qword [rcx + 0x10], 0
and qword [rcx + 0x10], 0
mov qword [rcx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rcx], 0
mov dword [rbp - 0x10], 1
xor edi, edi
test r8, r8
je 0x140029cec
xor ecx, ecx
lea esi, [rdi + 3]
dec r14
mov al, byte [r13]
inc r13
mov byte [rbp + rcx + 0x50], al
inc edi
inc rcx
mov dl, byte [rbp + 0x52]
mov r15b, byte [rbp + 0x51]
mov r12b, byte [rbp + 0x50]
cmp rcx, rsi
jne 0x140029bc6
mov al, r12b
shr al, 2
mov byte [rbp + 0x58], al
mov cl, r12b
and cl, sil
shl cl, 4
mov al, r15b
shr al, 4
add cl, al
mov byte [rbp + 0x59], cl
mov cl, r15b
and cl, 0xf
shl cl, 2
mov al, dl
shr al, 6
add cl, al
mov byte [rbp + 0x5a], cl
mov al, dl
and al, 0x3f
mov byte [rbp + 0x5b], al
xor edi, edi
lea rcx, [0x1400813d0]
cmp qword [reloc.WS2_32.dll_ntohs], 0x10
cmovae rcx, qword [0x1400813d0]
movzx eax, byte [rbp + rdi + 0x58]
mov r9b, byte [rax + rcx]
mov rcx, qword [rbx + 0x10]
cmp rcx, qword [rbx + 0x18]
jae 0x140029ba7
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x140029b9c
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140029bb6
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.140007544
inc rdi
cmp rdi, 4
jl 0x140029b5d
xor edi, edi
xor ecx, ecx
mov dl, byte [rbp + 0x52]
test r14, r14
jne 0x140029afd
test edi, edi
je 0x140029cec
cmp edi, esi
jge 0x140029bfe
mov eax, esi
sub eax, edi
movsxd r8, eax
movsxd rax, edi
lea rcx, [rbp + 0x50]
add rcx, rax
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov dl, byte [rbp + 0x52]
mov r15b, byte [rbp + 0x51]
mov r12b, byte [rbp + 0x50]
mov al, r12b
shr al, 2
mov byte [rbp + 0x58], al
and r12b, sil
shl r12b, 4
mov al, r15b
shr al, 4
add r12b, al
mov byte [rbp + 0x59], r12b
and r15b, 0xf
shl r15b, 2
mov al, dl
shr al, 6
add r15b, al
mov byte [rbp + 0x5a], r15b
and dl, 0x3f
mov byte [rbp + 0x5b], dl
lea eax, [rdi + 1]
movsxd r15, eax
test eax, eax
jle 0x140029ca4
xor r14d, r14d
lea rcx, [0x1400813d0]
cmp qword [reloc.WS2_32.dll_ntohs], 0x10
cmovae rcx, qword [0x1400813d0]
movzx eax, byte [rbp + r14 + 0x58]
mov r9b, byte [rax + rcx]
mov rcx, qword [rbx + 0x10]
cmp rcx, qword [rbx + 0x18]
jae 0x140029c8d
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x140029c82
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140029c9c
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.140007544
inc r14
cmp r14, r15
jl 0x140029c42
cmp edi, esi
jge 0x140029cec
sub esi, edi
movsxd rdi, esi
mov rcx, qword [rbx + 0x10]
cmp rcx, qword [rbx + 0x18]
jae 0x140029cd4
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x140029ccc
mov rax, qword [rbx]
mov word [rax + rcx], 0x3d
jmp 0x140029ce6
mov r9b, 0x3d
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.140007544
sub rdi, 1
jne 0x140029cad
mov rax, rbx
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret