Function at 0x140004660
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], 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 r14d, r9d
mov r13, r8
mov rdi, rdx
mov qword [rsp + 0x38], rdx
xor esi, esi
mov dword [rsp + 0x30], esi
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rsi
mov qword [rdx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rdx], sil
mov dword [rsp + 0x30], 1
mov ebp, esi
test r9d, r9d
je 0x140004a13
mov ecx, esi
movzx ebx, byte [rsp + 0x20]
nop
dec r14d
movzx eax, byte [r13]
lea r13, [r13 + 1]
mov byte [rsp + rcx + 0x24], al
inc ebp
inc rcx
movzx r8d, byte [rsp + 0x26]
movzx r15d, byte [rsp + 0x25]
movzx r12d, byte [rsp + 0x24]
cmp rcx, 3
jne 0x1400048b2
movzx eax, r12b
shr al, 2
movzx ecx, al
mov byte [rsp + 0x2c], 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 + 0x28], dl
movzx eax, r8b
and al, 0x3f
mov byte [rsp + 0x20], al
lea rax, [0x1402ee328]
cmp qword [0x1402ee340], 0xf
cmova rax, qword [0x1402ee328]
movzx r9d, byte [rcx + rax]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14000477e
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x140004773
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14000478f
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000b280
lea rcx, [0x1402ee328]
cmp qword [0x1402ee340], 0xf
cmova rcx, qword [0x1402ee328]
movzx eax, bpl
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x1400047db
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1400047d0
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400047ec
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000b280
lea rbp, [0x1402ee328]
mov rcx, rbp
cmp qword [0x1402ee340], 0xf
cmova rcx, qword [0x1402ee328]
movzx eax, byte [rsp + 0x28]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14000483c
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x140004831
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14000484d
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000b280
mov rcx, rbp
cmp qword [0x1402ee340], 0xf
cmova rcx, qword [0x1402ee328]
movzx eax, byte [rsp + 0x20]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x140004896
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x14000488b
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400048a7
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000b280
mov ebp, esi
mov rcx, rsi
movzx r8d, byte [rsp + 0x26]
test r14d, r14d
jne 0x1400046c0
test ebp, ebp
je 0x140004a13
movsxd rax, ebp
cmp rax, 3
jge 0x1400048f2
jae 0x140004a34
mov byte [rsp + rax + 0x24], 0
inc rax
cmp rax, 3
jl 0x1400048cc
movzx r8d, byte [rsp + 0x26]
movzx r15d, byte [rsp + 0x25]
movzx r12d, byte [rsp + 0x24]
movzx eax, r12b
shr al, 2
mov byte [rsp + 0x2c], al
and r12b, 3
shl r12b, 4
movzx eax, r15b
shr al, 4
add r12b, al
mov byte [rsp + 0x2d], r12b
and r15b, 0xf
shl r15b, 2
movzx eax, r8b
shr al, 6
add r15b, al
mov byte [rsp + 0x2e], r15b
and r8b, 0x3f
mov byte [rsp + 0x2f], r8b
lea eax, [rbp + 1]
movsxd r14, eax
test eax, eax
jle 0x1400049b6
movzx ebx, byte [rsp + 0x20]
nop dword [rax]
nop word [rax + rax]
lea rcx, [0x1402ee328]
cmp qword [0x1402ee340], 0xf
cmova rcx, qword [0x1402ee328]
movzx eax, byte [rsp + rsi + 0x2c]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14000499d
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x140004992
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400049ae
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000b280
inc rsi
cmp rsi, r14
jl 0x140004950
cmp ebp, 3
jge 0x140004a13
mov esi, 3
sub esi, ebp
movzx ebx, byte [rsp + 0x20]
nop word [rax + rax]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x1400049f9
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1400049f1
mov rax, qword [rdi]
mov word [rax + rcx], 0x3d
jmp 0x140004a0d
mov r9b, 0x3d
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000b280
sub rsi, 1
jne 0x1400049d0
mov rax, rdi
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
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.1401d5dc0
int3