Function at 0x18009fd30
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rsp + 0x70], xmm11
mov rax, qword [0x1802b1080]
xor rax, rsp
mov qword [rbp - 0x39], rax
mov rsi, r8
mov rdi, rdx
mov qword [rbp - 0x79], rdx
mov qword [rbp - 0x61], r8
xor r15d, r15d
mov rax, qword [str.cYSWULRt_WZQXeCYKNXeCYKNRRZ_]
mov qword [rbp - 0x79], rax
movdqa xmm9, xmmword [0x180143490]
movdqa xmm6, xmmword [0x1801433e0]
movdqa xmm7, xmmword [0x18013cb90]
movdqa xmm11, xmmword [str.6666666666666666]
movdqa xmm10, xmmword [str.8888]
movdqa xmm8, xmmword [0x180184b70]
mov r14d, dword [reloc.WS2_32.dll_accept]
cmp byte [0x1801829bf], r15b
je 0x18009fee2
mov r8d, r15d
cmp r14d, 2
jl 0x18009feab
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm7
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm11
movd xmm0, dword [rbp - 0x79]
xorps xmm1, xmm0
movd dword [rbp - 0x79], xmm1
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
movdqa xmm1, xmm6
psubd xmm1, xmm0
andps xmm1, xmm9
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmm11
movd xmm0, dword [rbp - 0x75]
xorps xmm1, xmm0
movd dword [rbp - 0x75], xmm1
jmp 0x18009fee2
lea r9, [rbp - 0x79]
nop
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x36
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18009feb0
xorps xmm0, xmm0
movups xmmword [rbp - 0x59], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x49], xmm1
lea rax, [rbp - 0x79]
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop
inc r8
cmp byte [rax + r8], 0
jne 0x18009ff00
lea rdx, [rbp - 0x79]
lea rcx, [rbp - 0x59]
call fcn.18003d5d0
nop
mov rcx, qword [rsi]
test rcx, rcx
jne 0x18009ff56
movups xmm0, xmmword [rbp - 0x59]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x49]
movups xmmword [rdi + 0x10], xmm1
movdqa xmm0, xmmword [0x18013d810]
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x59], cl
mov rcx, qword [rsi]
test rcx, rcx
je 0x1800a07c5
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x1800a07be
mov rax, qword [rcx]
call qword [rax + Ordinal_26]
mov rdx, rax
lea rcx, [0x1802b45f8]
call fcn.180097860
cmp byte [rax], 0
je 0x1800a0121
mov rax, qword [0x1801829c0]
mov qword [rbp - 0x79], rax
cmp byte [0x1801829c7], 0
je 0x1800a00a2
mov r8d, r15d
cmp r14d, 2
jl 0x1800a0062
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm7, xmm0
andps xmm7, xmm9
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm11
movd xmm0, eax
paddb xmm7, xmm0
movd xmm1, dword [rbp - 0x79]
xorps xmm7, xmm1
movd dword [rbp - 0x79], xmm7
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm6, xmm0
andps xmm6, xmm9
packuswb xmm6, xmm6
packuswb xmm6, xmm6
movd xmm0, eax
paddb xmm6, xmm0
movd xmm1, dword [rbp - 0x75]
xorps xmm6, xmm1
movd dword [rbp - 0x75], xmm6
jmp 0x1800a00a2
lea r9, [rbp - 0x79]
nop word [rax + rax]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x36
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1800a0070
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], r15
lea rax, [rbp - 0x79]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800a00b4
mov r8, rbx
lea rdx, [rbp - 0x79]
mov rcx, rdi
call fcn.18003d5d0
nop
mov rdx, qword [rbp - 0x41]
cmp rdx, 0xf
jbe 0x1800a010b
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a0106
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800a0106
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18012e518
movdqa xmm0, xmmword [0x18013d810]
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x59], 0
jmp 0x18009ff3f
mov rcx, qword [rsi]
mov rax, qword [rcx]
call qword [rax + Ordinal_50]
mov ecx, eax
test eax, eax
je 0x1800a05b8
sub ecx, 1
je 0x1800a0477
sub ecx, 1
je 0x1800a0428
sub ecx, 1
je 0x1800a02e7
cmp ecx, 1
je 0x1800a0298
mov rax, qword [str.cYSWULRhttp:__]
mov qword [rbp - 0x79], rax
cmp byte [0x180182a0f], 0
je 0x1800a0282
mov r8d, r15d
cmp r14d, 2
jl 0x1800a0246
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm7, xmm0
andps xmm7, xmm9
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm11
movd xmm0, eax
paddb xmm7, xmm0
movd xmm1, dword [rbp - 0x79]
xorps xmm7, xmm1
movd dword [rbp - 0x79], xmm7
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm6, xmm0
andps xmm6, xmm9
packuswb xmm6, xmm6
packuswb xmm6, xmm6
movd xmm0, eax
paddb xmm6, xmm0
movd xmm1, dword [rbp - 0x75]
xorps xmm6, xmm1
movd dword [rbp - 0x75], xmm6
jmp 0x1800a0282
lea r9, [rbp - 0x79]
nop word [rax + rax]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x36
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1800a0250
lea rax, [rbp - 0x79]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800a0286
lea rdx, [rbp - 0x79]
jmp 0x1800a0784
movsd xmm0, qword [0x1801829e8]
movsd qword [rbp - 0x79], xmm0
movzx eax, byte [0x1801829f0]
mov byte [rbp - 0x79], 0x53
xor byte [rbp - 0x78], 0x37
xor byte [rbp - 0x77], 0x38
xor byte [rbp - 0x76], 0x39
xor byte [rbp - 0x75], 0x3a
xor byte [rbp - 0x74], 0x3b
xor byte [rbp - 0x73], 0x3c
xor byte [rbp - 0x72], 0x3d
xor al, 0x3e
mov byte [rbp - 0x71], al
lea rax, [rbp - 0x79]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800a02d5
lea rdx, [rbp - 0x79]
jmp 0x1800a0784
mov rax, qword [0x1801829c8]
mov qword [rbp - 0x79], rax
cmp byte [0x1801829cf], 0
je 0x1800a0412
mov r8d, r15d
cmp r14d, 2
jl 0x1800a03d5
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm7, xmm0
andps xmm7, xmm9
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm11
movd xmm0, eax
paddb xmm7, xmm0
movd xmm1, dword [rbp - 0x79]
xorps xmm7, xmm1
movd dword [rbp - 0x79], xmm7
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm6, xmm0
andps xmm6, xmm9
packuswb xmm6, xmm6
packuswb xmm6, xmm6
movd xmm0, eax
paddb xmm6, xmm0
movd xmm1, dword [rbp - 0x75]
xorps xmm6, xmm1
movd dword [rbp - 0x75], xmm6
jmp 0x1800a0412
lea r9, [rbp - 0x79]
nop dword [rax]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x36
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1800a03e0
lea rax, [rbp - 0x79]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800a0416
lea rdx, [rbp - 0x79]
jmp 0x1800a0784
movsd xmm0, qword [0x1801829d0]
movsd qword [rbp - 0x79], xmm0
movzx eax, byte [0x1801829d8]
mov byte [rbp - 0x79], 0x53
xor byte [rbp - 0x78], 0x37
xor byte [rbp - 0x77], 0x38
xor byte [rbp - 0x76], 0x39
xor byte [rbp - 0x75], 0x3a
xor byte [rbp - 0x74], 0x3b
xor byte [rbp - 0x73], 0x3c
xor byte [rbp - 0x72], 0x3d
xor al, 0x3e
mov byte [rbp - 0x71], al
lea rax, [rbp - 0x79]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800a0465
lea rdx, [rbp - 0x79]
jmp 0x1800a0784
mov rax, qword [str.eCWIJXeCWIJRRZ_]
mov qword [rbp - 0x79], rax
cmp byte [0x1801829e7], 0
je 0x1800a05a2
mov r8d, r15d
cmp r14d, 2
jl 0x1800a0565
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm7, xmm0
andps xmm7, xmm9
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm11
movd xmm0, eax
paddb xmm7, xmm0
movd xmm1, dword [rbp - 0x79]
xorps xmm7, xmm1
movd dword [rbp - 0x79], xmm7
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm6, xmm0
andps xmm6, xmm9
packuswb xmm6, xmm6
packuswb xmm6, xmm6
movd xmm0, eax
paddb xmm6, xmm0
movd xmm1, dword [rbp - 0x75]
xorps xmm6, xmm1
movd dword [rbp - 0x75], xmm6
jmp 0x1800a05a2
lea r9, [rbp - 0x79]
nop dword [rax]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x36
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x1800a0570
lea rax, [rbp - 0x79]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800a05a6
lea rdx, [rbp - 0x79]
jmp 0x1800a0784
movsd xmm0, qword [str.cYQWSOURV:_C]
movsd qword [rbp - 0x79], xmm0
mov ecx, dword [0x180182a00]
mov dword [rbp - 0x71], ecx
movzx eax, word [0x180182a04]
mov word [rbp - 0x6d], ax
cmp byte [0x180182a05], 0
je 0x1800a0773
mov r8d, r15d
cmp r14d, 2
jl 0x1800a072b
movdqa xmm1, xmm7
punpckldq xmm1, xmm7
pmuldq xmm1, xmm8
movdqa xmm0, xmm7
punpckhdq xmm0, xmm7
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm7
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm7, xmm0
andps xmm7, xmm9
packuswb xmm7, xmm7
packuswb xmm7, xmm7
movd eax, xmm11
movd xmm0, eax
paddb xmm7, xmm0
movd xmm0, dword [str.cYQWSOURV:_C]
xorps xmm7, xmm0
movd dword [rbp - 0x79], xmm7
movdqa xmm1, xmm6
punpckldq xmm1, xmm6
pmuldq xmm1, xmm8
movdqa xmm0, xmm6
punpckhdq xmm0, xmm6
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm6
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm6, xmm0
andps xmm6, xmm9
packuswb xmm6, xmm6
packuswb xmm6, xmm6
movd xmm0, eax
paddb xmm6, xmm0
movd xmm1, dword [rbp - 0x75]
xorps xmm6, xmm1
movd dword [rbp - 0x75], xmm6
movdqa xmm2, xmmword [0x1801433f0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm8
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm8
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm10
psubd xmm2, xmm0
andps xmm2, xmm9
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, ecx
xorps xmm2, xmm1
movd dword [rbp - 0x71], xmm2
mov r8d, ntohl
mov eax, r8d
lea r9, [rbp - 0x79]
add r9, rax
nop word [rax + rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x36
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xe
jl 0x1800a0740
lea rax, [rbp - 0x79]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1800a0777
lea rdx, [rbp - 0x79]
mov r8, rbx
lea rcx, [rbp - 0x59]
call fcn.1800499a0
movups xmm0, xmmword [rbp - 0x59]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x49]
movups xmmword [rdi + 0x10], xmm1
movdqa xmm0, xmmword [0x18013d810]
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x59], 0
mov rcx, qword [rsi]
test rcx, rcx
je 0x1800a07c5
mov rdx, qword [rcx]
call qword [rdx + reloc.WS2_32.dll_recv]
test al, al
je 0x1800a07c5
mov qword [rsi], r15
mov rax, rdi
mov rcx, qword [rbp - 0x39]
xor rcx, rsp
call fcn.18012eac0
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret