Function at 0x14006efc0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x20
lea rdi, [0x14022c470]
mov qword [rsp + 0x38], rdi
mov byte [0x14022c470], 0
xorps xmm0, xmm0
movups xmmword [0x14022c478], xmm0
mov qword [0x14022c488], 1
mov qword [0x14022c490], 0xf
movzx eax, word [0x140173fe8]
mov byte [0x14022c478], al
mov byte [0x14022c479], 0
xor ebx, ebx
mov dword [0x14022c498], ebx
movups xmmword [0x14022c4a0], xmm0
mov qword [0x14022c4b0], 1
mov qword [0x14022c4b8], 0xf
movzx eax, word [0x140173fec]
mov byte [0x14022c4a0], al
mov byte [0x14022c4a1], bl
movups xmmword [0x14022c4c0], xmm0
mov qword [0x14022c4d0], 1
mov qword [0x14022c4d8], 0xf
mov byte [0x14022c4c0], al
mov byte [0x14022c4c1], bl
mov dword [0x14022c4e0], ebx
mov byte [0x14022c4e4], bl
mov dword [0x14022c4e8], 2
mov dword [0x14022c4ec], 2
movdqa xmm0, xmmword [reloc.WS2_32.dll_sendto]
movdqu xmmword [0x14022c4f0], xmm0
mov qword [0x14022c500], rbx
mov dword [0x14022c508], ebx
mov word [0x14022c50c], 0x100
mov dword [0x14022c510], ebx
mov dword [0x14022c514], 2
mov word [0x14022c518], 0x101
mov byte [0x14022c51a], bl
mov eax, dword [0x140171a94]
mov dword [rsp + 0x30], eax
cmp byte [0x140171a97], bl
je 0x14006f1b0
cmp dword [0x14018f090], 2
jl 0x14006f179
movdqa xmm3, xmmword [0x1401760b0]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140176190]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140176190]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 1
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1401760e0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140176180]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x1401761a0]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x30], xmm2
jmp 0x14006f1b0
lea r9, [rsp + 0x30]
mov r8d, ebx
mov eax, 0x94f2095
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x37
movzx eax, r8b
sub al, cl
add al, 0x3a
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x14006f181
xorps xmm0, xmm0
movups xmmword [0x14022c520], xmm0
mov qword [0x14022c530], rbx
mov qword [0x14022c538], rbx
lea rax, [rsp + 0x30]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14006f1d4
lea rdx, [rsp + 0x30]
lea rcx, [0x14022c520]
call fcn.14005c1e0
nop
mov dword [0x14022c540], ebx
mov word [0x14022c544], 0x101
mov byte [0x14022c546], 1
mov dword [0x14022c548], 0
mov qword [0x14022c54c], 0x3f800000
mov dword [0x14022c554], 0x3f800000
mov byte [0x14022c558], 1
mov dword [0x14022c55c], 0
mov qword [0x14022c560], 0x3f000000
mov dword [0x14022c568], 0x3e4ccccd
mov byte [0x14022c56c], 1
movaps xmm0, xmmword [0x1401761d0]
movups xmmword [0x14022c570], xmm0
mov byte [0x14022c580], 1
mov dword [0x14022c584], 0x3f800000
mov dword [0x14022c588], 0x3f800000
mov dword [0x14022c58c], 0x3f800000
mov qword [0x14022c590], 0x3f800000
mov byte [0x14022c598], 1
mov qword [0x14022c59c], 0x3f800000
mov dword [0x14022c5a4], 0x3f800000
mov dword [0x14022c5a8], 0x3f800000
mov byte [0x14022c5ac], 1
movaps xmm0, xmmword [0x140176280]
movups xmmword [0x14022c5b0], xmm0
mov byte [0x14022c5c0], 1
mov dword [0x14022c5c4], 0
mov qword [0x14022c5c8], 0x3f800000
mov dword [0x14022c5d0], 0x3f800000
mov byte [0x14022c5d4], 1
mov dword [0x14022c5d8], 0
mov qword [0x14022c5dc], 0x3f800000
mov dword [0x14022c5e4], 0x3f800000
mov byte [0x14022c5e8], 1
mov dword [0x14022c5ec], 0
mov qword [0x14022c5f0], 0x3f800000
mov dword [0x14022c5f8], 0x3f800000
mov byte [0x14022c5fc], 1
movaps xmm0, xmmword [0x1401761e0]
movups xmmword [0x14022c600], xmm0
mov byte [0x14022c610], 1
mov qword [0x14022c614], 0x3f800000
mov dword [0x14022c61c], 0
mov dword [0x14022c620], 0x3f800000
mov byte [0x14022c624], 1
mov dword [0x14022c628], 0x41a00000
mov dword [0x14022c62c], 0x41a00000
mov dword [0x14022c630], 0x43960000
mov qword [0x14022c634], 0x43960000
xorps xmm0, xmm0
movdqu xmmword [0x14022c640], xmm0
mov qword [0x14022c650], rbx
mov qword [0x14022c658], rbx
movdqu xmmword [0x14022c660], xmm0
mov byte [0x14022c670], 1
mov dword [0x14022c674], 0x451c4000
mov dword [0x14022c678], 0x472fc800
mov ecx, 0x88
call fcn.14011191c
mov qword [rsp + 0x30], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], send
mov byte [rax], 0
mov byte [rax + 0x20], 0
mov dword [rax + 0x24], ebx
mov qword [rax + 0x28], rbx
mov qword [rax + 0x30], rbx
mov qword [rax + 0x38], rbx
movabs rcx, 0x3ff0000000000000
mov qword [rax + 0x40], rcx
mov qword [rax + 0x48], rbx
mov qword [rax + 0x50], rbx
mov qword [rax + 0x58], rbx
mov qword [rax + 0x68], rbx
mov qword [rax + 0x70], rbx
mov qword [rax + 0x78], rbx
mov qword [0x14022c680], rax
mov rax, rdi
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret