Function at 0x1800a7860
Capabilities:
Encode data using base64

Disassembly:
push rbp
push rsi
push rdi
push r14
sub rsp, 0x48
xor esi, esi
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rsi
mov rdi, rdx
mov qword [rdx + 0x18], reloc.WS2_32.dll_ntohs
mov ebp, esi
mov byte [rdx], sil
mov rcx, r8
cmp qword [r8 + 0x18], 0xf
jbe 0x1800a7898
mov rcx, qword [r8]
mov rdx, rcx
jmp 0x1800a789b
mov rdx, r8
mov rax, qword [r8 + 0x10]
mov r14, rcx
add rax, rdx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x30], rax
cmp rcx, rax
je 0x1800a7c23
movzx ebx, byte [rsp + 0x20]
mov rcx, rsi
mov qword [rsp + 0x88], r13
nop word [rax + rax]
movzx eax, byte [r14]
inc ebp
mov byte [rsp + rcx + 0x24], al
inc rcx
movzx edx, byte [rsp + 0x26]
movzx r15d, byte [rsp + 0x25]
movzx r12d, byte [rsp + 0x24]
cmp rcx, 3
jne 0x1800a7ac9
movzx eax, r12b
movzx ebp, r12b
shr al, 2
and bpl, 3
movzx ecx, al
movzx r13d, r15b
and r13b, 0xf
shl bpl, 4
shl r13b, 2
movzx eax, r15b
shr al, 4
add bpl, al
mov byte [rsp + 0x28], cl
movzx eax, dl
shr al, 6
add r13b, al
movzx eax, dl
mov rdx, qword [rdi + 0x18]
and al, 0x3f
cmp qword [0x18023d630], 0xf
mov byte [rsp + 0x20], al
mov byte [rsp + 0x2b], al
lea rax, [0x18023d618]
cmova rax, qword [0x18023d618]
movzx r9d, byte [rcx + rax]
mov rcx, qword [rdi + 0x10]
cmp rcx, rdx
jae 0x1800a7996
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1800a798b
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], sil
jmp 0x1800a79a7
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.180057ec0
cmp qword [0x18023d630], 0xf
lea rcx, [0x18023d618]
mov rdx, qword [rdi + 0x18]
cmova rcx, qword [0x18023d618]
movzx eax, bpl
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
cmp rcx, rdx
jae 0x1800a79f3
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1800a79e8
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], sil
jmp 0x1800a7a04
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.180057ec0
cmp qword [0x18023d630], 0xf
lea rcx, [0x18023d618]
mov rdx, qword [rdi + 0x18]
cmova rcx, qword [0x18023d618]
movzx eax, r13b
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
cmp rcx, rdx
jae 0x1800a7a50
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1800a7a45
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], sil
jmp 0x1800a7a61
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.180057ec0
cmp qword [0x18023d630], 0xf
lea rcx, [0x18023d618]
movzx eax, byte [rsp + 0x20]
cmova rcx, qword [0x18023d618]
mov rdx, qword [rdi + 0x18]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
cmp rcx, rdx
jae 0x1800a7aae
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1800a7aa3
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], sil
jmp 0x1800a7abf
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.180057ec0
movzx edx, byte [rsp + 0x26]
mov ebp, esi
mov rcx, rsi
inc r14
cmp r14, qword [rsp + 0x30]
jne 0x1800a78e0
mov r13, qword [rsp + 0x88]
test ebp, ebp
je 0x1800a7c23
movsxd rax, ebp
cmp rax, 3
jge 0x1800a7b15
jae 0x1800a7c42
mov byte [rsp + rax + 0x24], sil
inc rax
cmp rax, 3
jl 0x1800a7af0
movzx edx, byte [rsp + 0x26]
movzx r15d, byte [rsp + 0x25]
movzx r12d, byte [rsp + 0x24]
movzx eax, r12b
shr dl, 6
shr al, 2
and r12b, 3
mov byte [rsp + 0x28], al
movzx eax, r15b
and r15b, 0xf
shr al, 4
shl r12b, 4
add r12b, al
shl r15b, 2
add r15b, dl
mov byte [rsp + 0x29], r12b
lea eax, [rbp + 1]
mov byte [rsp + 0x2a], r15b
movsxd r14, eax
test eax, eax
jle 0x1800a7bc6
movzx ebx, byte [rsp + 0x20]
nop dword [rax]
cmp qword [0x18023d630], 0xf
lea rcx, [0x18023d618]
movzx eax, byte [rsp + rsi + 0x28]
cmova rcx, qword [0x18023d618]
mov rdx, qword [rdi + 0x18]
movzx r9d, byte [rax + rcx]
mov rcx, qword [rdi + 0x10]
cmp rcx, rdx
jae 0x1800a7bad
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1800a7ba2
mov rax, qword [rdi]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1800a7bbe
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.180057ec0
inc rsi
cmp rsi, r14
jl 0x1800a7b60
cmp ebp, 3
jge 0x1800a7c23
movzx ebx, byte [rsp + 0x20]
mov esi, 3
sub esi, ebp
nop word [rax + rax]
mov rcx, qword [rdi + 0x10]
mov rdx, qword [rdi + 0x18]
cmp rcx, rdx
jae 0x1800a7c09
lea rax, [rcx + 1]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x1800a7c01
mov rax, qword [rdi]
mov word [rax + rcx], 0x3d
jmp 0x1800a7c1d
mov r9b, 0x3d
movzx r8d, bl
mov edx, 1
mov rcx, rdi
call fcn.180057ec0
sub rsi, 1
jne 0x1800a7be0
mov r15, qword [rsp + 0x40]
mov rax, rdi
mov r12, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
add rsp, 0x48
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.18019d8b8
int3