Function at 0x14006ad50
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xf0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x14019a900]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rsi, rdx
mov ebx, ecx
lea rcx, [0x14006bec0]
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
movsd xmm0, qword [str.VCWV4]
movsd qword [rbp - 0x69], xmm0
movzx eax, word [0x140164268]
mov ecx, 0x66
mov word [rbp - 0x69], cx
xor word [rbp - 0x67], 0x31
xor word [rbp - 0x65], 0x32
xor word [rbp - 0x63], 0x33
xor ax, 0x34
mov word [rbp - 0x61], ax
lea r8, [rbp - 0x69]
mov rdx, rsi
mov ecx, ebx
call fcn.140089e70
test eax, eax
setg r15b
mov rax, qword [str._U3Y_VcURSD8]
mov qword [rbp - 0x69], rax
xor r12d, r12d
mov r14d, dword [reloc.WS2_32.dll_accept]
cmp word [0x140164276], r12w
je 0x14006aea9
mov edi, r12d
cmp r14d, 2
jl 0x14006ae79
movdqa xmm3, xmmword [0x140125290]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140168090]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140168090]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [str.2222]
psubd xmm3, xmm0
pshufhw xmm0, xmm3, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmmword [str.00000000]
movq xmm0, qword [rbp - 0x69]
xorps xmm2, xmm0
movq qword [rbp - 0x69], xmm2
jmp 0x14006aea9
lea r8, [rbp - 0x69]
nop dword [rax]
mov eax, 0x51eb851f
mul edi
shr edx, 4
movzx eax, dx
imul ecx, eax, 0x32
movzx eax, di
sub ax, cx
add ax, 0x30
xor word [r8], ax
inc edi
lea r8, [r8 + 2]
cmp edi, 4
jl 0x14006ae80
lea r8, [rbp - 0x69]
mov rdx, rsi
mov ecx, ebx
call fcn.140089e70
movups xmm0, xmmword [0x140164278]
movups xmmword [rbp - 0x69], xmm0
movzx eax, word [0x140164288]
mov ecx, 0x69
mov word [rbp - 0x69], cx
xor word [rbp - 0x67], 0x31
xor word [rbp - 0x65], 0x32
xor word [rbp - 0x63], 0x33
xor word [rbp - 0x61], 0x34
xor word [rbp - 0x5f], 0x35
xor word [rbp - 0x5d], 0x36
xor word [rbp - 0x5b], 0x37
xor ax, 0x38
mov word [rbp - 0x59], ax
lea r8, [rbp - 0x69]
mov rdx, rsi
mov ecx, ebx
call fcn.140089e70
movups xmm3, xmmword [str._PA_uYZX_XNRSSnK2A]
movups xmmword [rbp - 0x51], xmm3
movups xmm0, xmmword [0x1401642a0]
movups xmmword [rbp - 0x41], xmm0
mov eax, dword [0x1401642b0]
mov dword [rbp - 0x31], eax
mov ecx, r12d
cmp r14d, 2
jl 0x14006b0d7
movdqa xmm4, xmmword [0x140168090]
movdqa xmm5, xmmword [str.2222]
movdqa xmm6, xmmword [str.00000000]
movdqa xmm2, xmmword [0x140125290]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmm6
movq xmm1, xmm3
xorps xmm2, xmm1
movq qword [rbp - 0x51], xmm2
movdqa xmm3, xmmword [0x140167ea0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
pshufhw xmm0, xmm3, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmm6
movq xmm0, qword [rbp - 0x49]
xorps xmm2, xmm0
movq qword [rbp - 0x49], xmm2
movdqa xmm3, xmmword [0x140167eb0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
pshufhw xmm0, xmm3, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmm6
movq xmm0, qword [rbp - 0x41]
xorps xmm2, xmm0
movq qword [rbp - 0x41], xmm2
movdqa xmm3, xmmword [0x140167ec0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
pshufhw xmm0, xmm3, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmm6
movq xmm0, qword [rbp - 0x39]
xorps xmm2, xmm0
movq qword [rbp - 0x39], xmm2
mov ecx, reloc.WS2_32.dll_recv
mov eax, ecx
lea r8, [rbp - 0x51]
lea r8, [r8 + rax*2]
mov eax, 0x51eb851f
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul eax, eax, 0x32
movzx edi, cx
sub di, ax
add di, 0x30
xor word [r8], di
inc ecx
lea r8, [r8 + 2]
cmp ecx, 0x12
jl 0x14006b0e1
lea r8, [rbp - 0x51]
mov rdx, rsi
mov ecx, ebx
call fcn.140089e70
test eax, eax
setg dil
call fcn.1400a6830
mov qword [0x14019b710], rax
mov eax, dword [0x1401642b4]
mov dword [rbp - 0x69], eax
movzx ecx, word [0x1401642b8]
mov word [rbp - 0x65], cx
movzx eax, byte [0x1401642ba]
mov byte [rbp - 0x69], gethostname
xor byte [rbp - 0x68], 0x31
xor byte [rbp - 0x67], 0x32
xor byte [rbp - 0x66], 0x33
xor cl, 0x34
mov byte [rbp - 0x65], cl
xor byte [rbp - 0x64], 0x35
xor al, 0x36
mov byte [rbp - 0x63], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x11], xmm0
mov qword [rbp - 1], r12
mov qword [rbp + 7], r12
lea rax, [rbp - 0x69]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r12b
jne 0x14006b185
lea rdx, [rbp - 0x69]
lea rcx, [rbp - 0x11]
call fcn.140055880
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], rax
lea rdx, [rbp - 0x11]
lea rcx, [rbp - 0x51]
call fcn.140062100
mov r8, rax
lea rdx, [rbp - 0x29]
lea rcx, [0x14019bb10]
call fcn.1400b7960
nop
mov dword [rbp + 0xf], r12d
lea rax, [rbp + 0xf]
mov qword [rsp + 0x48], rax
lea rax, [0x140081070]
mov qword [rsp + 0x40], rax
mov byte [rsp + 0x38], dil
mov dword [rsp + 0x30], r12d
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], r15b
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbp - 0x29]
mov rcx, qword [0x14019b710]
call fcn.1400a8c10
test rax, rax
jne 0x14006b21e
mov rcx, qword [0x14019b710]
call fcn.1400a7a20
mov rcx, qword [0x14019b710]
call fcn.1400a7a20
mov rax, qword [rbp - 0x29]
cmp rax, qword [rbp - 0x21]
je 0x14006b238
mov qword [rbp - 0x21], rax
mov qword [rbp - 1], r12
lea rax, [rbp - 0x11]
cmp qword [rbp + 7], 0xf
cmova rax, qword [rbp - 0x11]
mov byte [rax], 0
mov rsi, qword [rbp - 0x21]
movabs r14, 0x7fffffffffffffff
mov rcx, qword [rbp - 0x29]
sub rsi, rcx
mov rbx, r12
mov r8, r12
mov rax, r12
je 0x14006b2d5
cmp rsi, r14
ja 0x14006b531
cmp rsi, 0x1000
jb 0x14006b2a8
lea rcx, [rsi + 0x27]
cmp rcx, rsi
jbe 0x14006b52b
call fcn.140112adc
test rax, rax
je 0x14006b4a5
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14006b2b3
mov rcx, rsi
call fcn.140112adc
mov rbx, rax
mov rdi, qword [rbp - 0x21]
mov rdx, qword [rbp - 0x29]
sub rdi, rdx
mov r8, rdi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
lea r8, [rdi + rbx]
lea rax, [rbx + rsi]
mov rcx, qword [rbp - 0x29]
mov qword [rbp - 0x29], rbx
mov qword [rbp - 0x21], r8
mov rdx, qword [rbp - 0x19]
mov qword [rbp - 0x19], rax
test rcx, rcx
je 0x14006b31f
sub rdx, rcx
cmp rdx, 0x1000
jb 0x14006b312
add rdx, 0x27
mov rdi, qword [rcx - 8]
sub rcx, rdi
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14006b4a5
mov rcx, rdi
call fcn.14011231c
mov r8, qword [rbp - 0x21]
mov rbx, qword [rbp - 0x29]
sub r8, rbx
xor edx, edx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp - 0x11]
cmp qword [rbp + 7], 0xf
cmova rcx, qword [rbp - 0x11]
mov r8, qword [rbp - 1]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rcx, qword [rbp - 0x21]
mov rdi, qword [rbp - 0x29]
sub rcx, rdi
xor eax, eax
rep stosb byte [rdi], al
lea rdi, [rbp - 0x11]
cmp qword [rbp + 7], 0xf
cmova rdi, qword [rbp - 0x11]
mov rcx, qword [rbp - 1]
rep stosb byte [rdi], al
mov r8, qword [rbp - 0x21]
mov rcx, qword [rbp - 0x29]
sub r8, rcx
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rsi, qword [rbp - 0x21]
mov rcx, qword [rbp - 0x29]
cmp rsi, rcx
je 0x14006b38e
mov rsi, rcx
mov qword [rbp - 0x21], rcx
sub rsi, rcx
mov rdi, r12
mov rbx, r12
mov rax, r12
je 0x14006b403
cmp rsi, r14
ja 0x14006b531
cmp rsi, 0x1000
jb 0x14006b3d7
lea rcx, [rsi + 0x27]
cmp rcx, rsi
jbe 0x14006b52b
call fcn.140112adc
test rax, rax
je 0x14006b4a5
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x14006b3e2
mov rcx, rsi
call fcn.140112adc
mov rdi, rax
mov rbx, qword [rbp - 0x21]
mov rdx, qword [rbp - 0x29]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
add rbx, rdi
lea rax, [rdi + rsi]
mov rcx, qword [rbp - 0x29]
mov qword [rbp - 0x29], rdi
mov qword [rbp - 0x21], rbx
mov rdx, qword [rbp - 0x19]
mov qword [rbp - 0x19], rax
test rcx, rcx
je 0x14006b449
sub rdx, rcx
cmp rdx, 0x1000
jb 0x14006b43c
add rdx, 0x27
mov rdi, qword [rcx - 8]
sub rcx, rdi
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14006b4a5
mov rcx, rdi
call fcn.14011231c
mov rbx, qword [rbp - 0x21]
mov rdi, qword [rbp - 0x29]
cmp rbx, rdi
je 0x14006b471
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov byte [rdi], al
inc rdi
cmp rdi, rbx
jne 0x14006b450
mov rbx, qword [rbp - 0x21]
mov rdi, qword [rbp - 0x29]
cmp rbx, rdi
je 0x14006b471
mov qword [rbp - 0x21], rdi
test rdi, rdi
je 0x14006b4c0
mov rdx, qword [rbp - 0x19]
sub rdx, rdi
mov rax, rdi
cmp rdx, 0x1000
jb 0x14006b4ac
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006b4ac
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rcx, rdi
call fcn.14011231c
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x19], r12
mov rdx, qword [rbp + 7]
cmp rdx, 0xf
jbe 0x14006b4fe
inc rdx
mov rcx, qword [rbp - 0x11]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006b4f9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006b4f9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14011231c
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.140112790
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.14007eb70
nop
call fcn.14007f100
int3