Function at 0x1800f65b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
mov eax, 0x180
call fcn.18017e6d0
sub rsp, rax
mov rax, qword [0x1802658e0]
xor rax, rsp
mov qword [rbp + 0x70], rax
mov rax, r8
mov r13, rcx
mov r15, rdx
lea r8, [0x180209130]
lea rcx, [rbp - 0x10]
mov rdx, rax
call fcn.18011f920
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x10]
call fcn.18011fe30
mov r14d, send
nop
cmp r14d, 0x12
je 0x1800f6624
xor r8d, r8d
mov rdx, r13
mov rcx, r13
call fcn.1800f57d0
xor r12d, r12d
nop word [rax + rax]
mov eax, r12d
xor r10d, r10d
xor r9d, r9d
imul eax, eax, 0x5a
lea r8d, [rax + r14 - 1]
cmp r8d, 0x1be
jae 0x1800f666b
mov ecx, r8d
mov eax, r8d
shr rcx, 5
and eax, 0x1f
mov edx, dword [rbp + rcx*4 - 0x10]
movzx ecx, al
shr edx, cl
mov ecx, r9d
and edx, 1
shl edx, cl
or r10d, edx
inc r9d
add r8d, 0x12
cmp r9d, 5
jb 0x1800f6641
mov esi, r10d
lea rcx, [rsp + 0x30]
xor edx, edx
sar esi, 4
mov r8d, 0xc0
dec esi
mov eax, esi
xor eax, r10d
and eax, 0xf
movsxd rdi, eax
mov eax, r12d
shl eax, 4
lea rbx, [rax + rax*2]
shl rbx, 6
add rbx, r15
call fcn.18017e8a0
lea r11, [rdi - 1]
mov r10d, reloc.WS2_32.dll_recv
nop dword [rax + rax]
mov rcx, rdi
mov rax, r11
not rcx
shr rax, 0x3f
shr rcx, 0x3f
and cl, al
neg cl
xor edx, edx
movzx r9d, cl
mov r8d, r9d
not r8d
movzx ecx, byte [rbx]
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x24], r8d
mov eax, dword [rsp + 0x24]
mov eax, dword [rsp + 0x20]
inc rdx
and al, cl
inc rbx
or byte [rsp + rdx + 0x2f], al
cmp rdx, 0xc0
jb 0x1800f66e1
dec rdi
dec r11
dec r10
jne 0x1800f66c0
xor r8d, r8d
nop dword [rax]
mov ecx, dword [rsp + r8*4 + 0x30]
mov edx, dword [rsp + r8*4 + 0x70]
add r8, 4
xor edx, ecx
and edx, esi
mov eax, edx
xor eax, ecx
mov dword [rsp + r8*4 + 0x20], eax
xor dword [rsp + r8*4 + 0x60], edx
mov ecx, dword [rsp + r8*4 + 0x24]
mov eax, dword [rsp + r8*4 + 0x64]
xor eax, ecx
and eax, esi
xor ecx, eax
mov dword [rsp + r8*4 + 0x24], ecx
xor dword [rsp + r8*4 + 0x64], eax
mov ecx, dword [rsp + r8*4 + 0x28]
mov eax, dword [rsp + r8*4 + 0x68]
xor eax, ecx
and eax, esi
xor ecx, eax
mov dword [rsp + r8*4 + 0x28], ecx
xor dword [rsp + r8*4 + 0x68], eax
mov ecx, dword [rsp + r8*4 + 0x2c]
mov eax, dword [rsp + r8*4 + 0x6c]
xor eax, ecx
and eax, esi
xor ecx, eax
mov dword [rsp + r8*4 + 0x2c], ecx
xor dword [rsp + r8*4 + 0x6c], eax
cmp r8, 0x10
jb 0x1800f6720
lea r8, [rbp - 0x50]
lea rdx, [0x1802090b0]
lea rcx, [rbp + 0x30]
call fcn.18011e5b0
mov r11d, esi
xor edx, edx
not r11d
mov dword [rsp + 0x20], esi
mov dword [rsp + 0x24], r11d
add rdx, 4
mov eax, dword [rsp + 0x20]
mov ecx, dword [rbp + rdx + 0x2c]
and ecx, eax
mov eax, dword [rsp + 0x24]
and eax, dword [rbp + rdx - 0x54]
or ecx, eax
mov dword [rbp + rdx - 0x54], ecx
cmp rdx, 0x40
jb 0x1800f67b0
cmp r14d, 0x12
jne 0x1800f685c
test r12d, r12d
jne 0x1800f685c
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x70]
lea rcx, [r13 + 0x40]
call fcn.18011e680
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x70]
mov rcx, r13
call fcn.18011e5b0
lea rcx, [r13 + 0xc0]
lea rdx, [r13 + 0x40]
mov r8, r13
call fcn.18011ef00
movaps xmm0, xmmword [0x1802090f0]
movups xmmword [r13 + 0x80], xmm0
movaps xmm1, xmmword [0x180209100]
movups xmmword [r13 + 0x90], xmm1
movaps xmm0, xmmword [0x180209110]
movups xmmword [r13 + 0xa0], xmm0
movaps xmm1, xmmword [0x180209120]
movups xmmword [r13 + 0xb0], xmm1
jmp 0x1800f687f
cmp r12d, 4
jne 0x1800f686f
cmp r14d, 1
je 0x1800f686f
lea r8d, [r12 - 3]
jmp 0x1800f6872
xor r8d, r8d
lea rdx, [rsp + 0x30]
mov rcx, r13
call fcn.1800f5d50
inc r12d
cmp r12d, 5
jb 0x1800f6630
dec r14d
jne 0x1800f6610
lea rcx, [rsp + 0x30]
mov edx, 0xc0
call fcn.18006b6b0
lea edx, [r14 + 0x38]
lea rcx, [rbp - 0x10]
call fcn.18006b6b0
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.180179370
mov rbx, qword [rsp + 0x1c8]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret