Function at 0x14000a770
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
push rbx
push rdi
push r12
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0x90
xor r12d, r12d
mov qword [rax + 0x10], rsi
mov rbx, rcx
mov qword [rax + 0x18], r13
mov qword [rax + 0x20], r15
mov rdi, 0xffffffffffffffff
mov eax, dword [0x1400fbb68]
mov r8, rdi
mov dword [rbp + 0x67], eax
movzx eax, byte [0x1400fbb6c]
xor byte [rbp + 0x68], 0x35
xor byte [rbp + 0x69], 0x36
xor byte [rbp + 0x6a], 0x37
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x20], r12
mov qword [rcx + 0x28], reloc.WS2_32.dll_ntohs
add rcx, 0x58
xor al, 0x38
mov qword [rbx + 0x78], r12
mov byte [rbp + 0x6b], al
lea rax, [rbp + 0x67]
mov qword [rbx + 0x88], r12
mov qword [rcx], r12
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], reloc.WS2_32.dll_ntohs
mov qword [rbx + 0x90], reloc.WS2_32.dll_ntohs
mov qword [rbx + 0xb8], r12
mov qword [rbx + 0xc0], r12
mov qword [rbx + 0xc8], r12
mov qword [rbx + 0xd8], r12
mov qword [rbx + 0xe0], r12
mov qword [rbx + 0xe8], r12
mov byte [rbx + 0x3f], r12b
mov qword [rbx + 0x48], r12
mov qword [rbx + 0x50], r12
mov byte [rbp + 0x67], Ordinal_79
nop dword [rax]
inc r8
cmp byte [rax + r8], r12b
jne 0x14000a840
lea rdx, [rbp + 0x67]
movaps xmmword [rsp + 0x80], xmm6
call fcn.140006a80
cmp byte [0x1400fbb67], r12b
mov rax, qword [str.a__YWNT_zZXR8]
mov r15d, dword [reloc.WS2_32.dll_accept]
mov qword [rbp + 0x67], rax
mov eax, Ordinal_32
lea r13d, [rax - 0x1b]
je 0x14000a9c3
mov r8d, r12d
cmp r15d, 2
jl 0x14000a98a
movdqa xmm2, xmmword [0x14010db10]
movdqa xmm4, xmmword [0x14010e100]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x14010db30]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm6, r13d
movd xmm5, eax
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14010db70]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rbp + 0x67]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
pand xmm2, xmmword [0x14010dc40]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x14010dc60]
pxor xmm2, xmm0
punpckldq xmm1, xmm3
movd dword [rbp + 0x67], xmm2
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14010db70]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rbp + 0x6b]
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14010dc40]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x14010dc60]
pxor xmm2, xmm0
movd dword [rbp + 0x6b], xmm2
jmp 0x14000a9c3
lea r9, [rbp + 0x67]
nop
mov eax, 0x3521cfb3
lea r9, [r9 + 1]
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x34
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x14000a990
lea rax, [rbp + 0x67]
mov r8, rdi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], r12b
jne 0x14000a9d0
lea rdx, [rbp + 0x67]
lea rcx, [rbx + 0x78]
call fcn.140006a80
cmp byte [0x1400fbb67], r12b
mov rax, qword [str.a__YWNT_zZXR8]
mov rsi, qword [rsp + 0xc8]
mov qword [rbp + 0x67], rax
je 0x14000ab53
mov r8d, r12d
cmp r15d, 2
jl 0x14000ab19
movdqa xmm2, xmmword [0x14010db10]
mov eax, Ordinal_32
movdqa xmm4, xmmword [0x14010e100]
movdqa xmm1, xmm2
movdqa xmm3, xmmword [0x14010db30]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movd xmm5, eax
mov eax, dword [0x14010dc60]
movd xmm6, r13d
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14010db70]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14010dc40]
movd xmm1, dword [rbp + 0x67]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movdqa xmm0, xmm3
pxor xmm2, xmm1
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movd dword [rbp + 0x67], xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14010db70]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14010dc40]
movd xmm1, dword [rbp + 0x6b]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
pxor xmm2, xmm1
movd dword [rbp + 0x6b], xmm2
jmp 0x14000ab53
lea r9, [rbp + 0x67]
nop dword [rax]
mov eax, 0x3521cfb3
lea r9, [r9 + 1]
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x34
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x14000ab20
movaps xmm6, xmmword [rsp + 0x80]
lea rax, [rbp + 0x67]
mov r15, qword [rsp + 0xd8]
mov r13, qword [rsp + 0xd0]
nop
inc rdi
cmp byte [rax + rdi], r12b
jne 0x14000ab70
mov r8, rdi
lea rdx, [rbp + 0x67]
lea rcx, [rbx + 0x10]
call fcn.140006a80
xor eax, eax
xorps xmm0, xmm0
movups xmmword [rbx + 0x98], xmm0
mov dword [rbp - 1], eax
movups xmmword [rbx + 0xa8], xmm0
mov dword [rbp + 0x1f], eax
xorps xmm1, xmm1
xorps xmm3, xmm3
movsd qword [rbx + 0xb8], xmm1
xorps xmm2, xmm2
movsd qword [rbx + 0xc8], xmm3
unpckhpd xmm1, xmm1
movsd qword [rbx + 0xc0], xmm1
mov byte [rbx + 0xd0], al
movzx eax, byte [rbp]
mov byte [rbx + 0xd1], al
movzx eax, byte [rbp + 1]
mov byte [rbx + 0xd2], al
movzx eax, byte [rbp + 2]
mov byte [rbx + 0xd3], al
movzx eax, byte [rbp + 0x1f]
movsd qword [rbx + 0xd8], xmm2
movsd qword [rbx + 0xe8], xmm3
unpckhpd xmm2, xmm2
movsd qword [rbx + 0xe0], xmm2
mov byte [rbx + 0xf0], al
movzx eax, byte [rbp + 0x20]
mov byte [rbx + 0xf1], al
movzx eax, byte [rbp + 0x21]
mov byte [rbx + 0xf2], al
movzx eax, byte [rbp + 0x22]
mov byte [rbx + 0xf3], al
mov rax, rbx
movups xmmword [rbx + 0xf8], xmm0
mov qword [rbx + 0x34], r12
movups xmmword [rbx + 0x108], xmm0
mov dword [rbx + 0x30], r12d
movups xmmword [rbx + 0x118], xmm0
mov qword [rbx + 8], r12
movups xmmword [rbx + 0x128], xmm0
add rsp, 0x90
pop r14
pop r12
pop rdi
pop rbx
pop rbp
ret