Function at 0x18000f3b0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
mov rax, qword [0x18009d7c0]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov rsi, rcx
mov qword [rsp + 0x70], rcx
xor ecx, ecx
lea rdx, [rbp - 0x70]
mov r8d, 0x104
xor r15d, r15d
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
jne 0x18000f40a
lea rdx, str.Unknown
mov rcx, rsi
call fcn.180002170
jmp 0x18000f7dd
cmp dword [reloc.WS2_32.dll_accept], 2
mov ecx, r15d
movups xmm0, xmmword [0x180090a30]
movzx eax, byte [0x180090a50]
movups xmm1, xmmword [0x180090a40]
mov qword [rsp + 0x1f8], rbx
mov qword [rsp + 0x200], rdi
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x1c8], r13
movups xmmword [rsp + 0x48], xmm1
mov byte [rsp + 0x58], al
jl 0x18000f58e
movdqa xmm0, xmmword [0x180091530]
lea rdx, [rsp + 0x3c]
movdqa xmm4, xmmword [0x180091460]
movdqa xmm3, xmmword [0x180091550]
movdqa xmm5, xmmword [0x180091480]
movdqa xmmword [rsp + 0x70], xmm0
mov r8d, dword [rsp + 0x70]
movaps xmmword [rsp + 0x1b0], xmm6
movdqa xmm6, xmmword [0x180091500]
nop word [rax + rax]
movd xmm2, ecx
lea eax, [rcx + 4]
pshufd xmm2, xmm2, 0
lea rdx, [rdx + 8]
paddd xmm2, xmm4
add ecx, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, r8d
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rdx - 0xc]
xorps xmm2, xmm0
movd dword [rdx - 0xc], xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm4
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, r8d
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [rdx - 8]
xorps xmm2, xmm0
movd dword [rdx - 8], xmm2
cmp ecx, 0x20
jl 0x18000f4a0
movaps xmm6, xmmword [rsp + 0x1b0]
cmp ecx, 0x21
jge 0x18000f5cd
movsxd rax, ecx
lea r8, [rsp + 0x38]
add r8, rax
nop dword [rax]
mov eax, 0x4d4873ed
lea r8, [r8 + 1]
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x35
movzx eax, cl
inc ecx
sub al, dl
add al, 0x38
xor byte [r8 - 1], al
cmp ecx, 0x21
jl 0x18000f5a0
xorps xmm0, xmm0
lea rax, [rbp - 0x70]
mov rdi, 0xffffffffffffffff
movups xmmword [rsp + 0x70], xmm0
mov rbx, rdi
inc rbx
cmp byte [rax + rbx], r15b
jne 0x18000f5e3
movabs r13, 0x7fffffffffffffff
mov qword [rsp + 0x208], r12
mov qword [rsp + 0x1c0], r14
cmp rbx, r13
ja 0x18000f8e1
movabs rax, 0x8000000000000000
mov ecx, reloc.WLDAP32.dll_Ordinal_22
cmp rbx, 0xf
ja 0x18000f658
mov r8, rbx
mov qword [rbp - 0x80], rbx
lea rdx, [rbp - 0x70]
mov qword [rbp - 0x78], reloc.WS2_32.dll_ntohs
lea rcx, [rsp + 0x70]
call sub.VCRUNTIME140.dll_memcpy
mov byte [rsp + rbx + 0x70], r15b
mov r14, qword [rbp - 0x78]
mov rbx, qword [rbp - 0x80]
mov r12, qword [rsp + 0x70]
jmp 0x18000f6e0
mov r14, rbx
or r14, 0xf
cmp r14, r13
jbe 0x18000f66d
mov r14, r13
add rax, 0x27
jmp 0x18000f698
cmp r14, rcx
cmovb r14, rcx
lea rcx, [r14 + 1]
test rcx, rcx
jne 0x18000f682
mov r12, r15
jmp 0x18000f6c0
cmp rcx, 0x1000
jb 0x18000f6b8
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000f8e7
mov rcx, rax
call fcn.18007aa30
test rax, rax
je 0x18000f8ae
lea r12, [rax + 0x27]
and r12, 0xffffffffffffffe0
mov qword [r12 - 8], rax
jmp 0x18000f6c0
call fcn.18007aa30
mov r12, rax
mov r8, rbx
mov qword [rsp + 0x70], r12
lea rdx, [rbp - 0x70]
mov qword [rbp - 0x80], rbx
mov rcx, r12
mov qword [rbp - 0x78], r14
call sub.VCRUNTIME140.dll_memcpy
mov byte [r12 + rbx], r15b
lea rcx, [rsp + 0x38]
mov rax, rdi
nop dword [rax + rax]
inc rax
cmp byte [rcx + rax], r15b
jne 0x18000f6f0
cmp r14, 0xf
lea rcx, [rsp + 0x70]
cmova rcx, r12
cmp rbx, rax
jne 0x18000f720
mov r8, rbx
lea rdx, [rsp + 0x38]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18000f720
mov bl, 1
jmp 0x18000f722
xor bl, bl
cmp r14, 0xf
jbe 0x18000f75a
lea rdx, [r14 + 1]
mov rax, r12
cmp rdx, 0x1000
jb 0x18000f752
mov r12, qword [r12 - 8]
add rdx, 0x27
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000f8ae
mov rcx, r12
call fcn.18007aa74
test bl, bl
je 0x18000f7fb
lea r9, [rsp + 0x60]
mov byte [rsp + 0x60], r15b
xor r8d, r8d
mov dword [rsp + 0x70], r15d
mov dl, 1
mov ecx, reloc.WS2_32.dll_send
call qword [sym.imp.ntdll.dll_RtlAdjustPrivilege]
lea rax, [rsp + 0x70]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 6
mov ecx, 0xc0000006
call qword [sym.imp.ntdll.dll_NtRaiseHardError]
lea rdx, [0x1800904f0]
mov rcx, rsi
call fcn.180002170
mov r12, qword [rsp + 0x208]
mov r14, qword [rsp + 0x1c0]
mov rdi, qword [rsp + 0x200]
mov rbx, qword [rsp + 0x1f8]
mov r13, qword [rsp + 0x1c8]
mov rax, rsi
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.18007aa10
add rsp, 0x1d0
pop r15
pop rsi
pop rbp
ret
xorps xmm0, xmm0
lea rax, [rbp - 0x70]
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r15
mov qword [rsi + 0x18], r15
nop dword [rax]
inc rdi
cmp byte [rax + rdi], r15b
jne 0x18000f810
cmp rdi, r13
ja 0x18000f8e1
cmp rdi, 0xf
ja 0x18000f84c
mov r8, rdi
mov qword [rsi + 0x10], rdi
lea rdx, [rbp - 0x70]
mov qword [rsi + 0x18], reloc.WS2_32.dll_ntohs
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + rsi], r15b
jmp 0x18000f7b5
mov rax, rdi
or rax, 0xf
cmp rax, r13
jbe 0x18000f881
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.18007aa30
test rax, rax
je 0x18000f8ae
lea r15, [rax + 0x27]
and r15, 0xffffffffffffffe0
mov qword [r15 - 8], rax
jmp 0x18000f8bd
cmp rax, 0x16
mov r13, rax
mov eax, reloc.WLDAP32.dll_Ordinal_22
cmovb r13, rax
lea rcx, [r13 + 1]
test rcx, rcx
je 0x18000f8bd
cmp rcx, 0x1000
jb 0x18000f8b5
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18000f8e7
jmp 0x18000f866
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18007aa30
mov r15, rax
mov r8, rdi
mov qword [rsi], r15
lea rdx, [rbp - 0x70]
mov qword [rsi + 0x10], rdi
mov rcx, r15
mov qword [rsi + 0x18], r13
call sub.VCRUNTIME140.dll_memcpy
mov byte [r15 + rdi], 0
jmp 0x18000f7b5
call fcn.180001840
int3
call fcn.1800017a0
int3