Function at 0x140004530
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 0x1400048e3
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 0x140004782
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, [0x1402d9f60]
cmp qword [0x1402d9f78], 0xf
cmova rax, qword [0x1402d9f60]
movzx r9d, byte [rcx + rax]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14000464e
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x140004643
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14000465f
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000a8a0
lea rcx, [0x1402d9f60]
cmp qword [0x1402d9f78], 0xf
cmova rcx, qword [0x1402d9f60]
movzx eax, bpl
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x1400046ab
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1400046a0
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400046bc
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000a8a0
lea rbp, [0x1402d9f60]
mov rcx, rbp
cmp qword [0x1402d9f78], 0xf
cmova rcx, qword [0x1402d9f60]
movzx eax, byte [rsp + 0x28]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x14000470c
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x140004701
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14000471d
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000a8a0
mov rcx, rbp
cmp qword [0x1402d9f78], 0xf
cmova rcx, qword [0x1402d9f60]
movzx eax, byte [rsp + 0x20]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x140004766
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x14000475b
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140004777
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000a8a0
mov ebp, esi
mov rcx, rsi
movzx r8d, byte [rsp + 0x26]
test r14d, r14d
jne 0x140004590
test ebp, ebp
je 0x1400048e3
movsxd rax, ebp
cmp rax, 3
jge 0x1400047c2
jae 0x140004904
mov byte [rsp + rax + 0x24], 0
inc rax
cmp rax, 3
jl 0x14000479c
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 0x140004886
movzx ebx, byte [rsp + 0x20]
nop dword [rax]
nop word [rax + rax]
lea rcx, [0x1402d9f60]
cmp qword [0x1402d9f78], 0xf
cmova rcx, qword [0x1402d9f60]
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 0x14000486d
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x140004862
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14000487e
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000a8a0
inc rsi
cmp rsi, r14
jl 0x140004820
cmp ebp, 3
jge 0x1400048e3
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 0x1400048c9
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1400048c1
mov rax, qword [rdi]
mov word [rax + rcx], 0x3d
jmp 0x1400048dd
mov r9b, 0x3d
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.14000a8a0
sub rsi, 1
jne 0x1400048a0
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.1401c73e0
int3