Function at 0x1401bbc40
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.1402563f0
sub rsp, rax
mov rax, qword [0x1403bb2d8]
xor rax, rsp
mov qword [rbp + 0x70], rax
mov rax, r8
mov r13, rcx
mov r15, rdx
lea r8, [0x14034f510]
lea rcx, [rbp - 0x10]
mov rdx, rax
call fcn.1401f9c90
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x10]
call fcn.1401fa1a0
mov r14d, reloc.WS2_32.dll_select
nop
cmp r14d, 0x12
je 0x1401bbcb4
xor r8d, r8d
mov rdx, r13
mov rcx, r13
call fcn.1401bae60
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 0x1401bbcfb
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 0x1401bbcd1
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.140254810
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 0x1401bbd71
dec rdi
dec r11
dec r10
jne 0x1401bbd50
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 0x1401bbdb0
lea r8, [rbp - 0x50]
lea rdx, [0x14034f490]
lea rcx, [rbp + 0x30]
call fcn.1401bac10
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 0x1401bbe40
cmp r14d, 0x12
jne 0x1401bbeec
test r12d, r12d
jne 0x1401bbeec
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x70]
lea rcx, [r13 + 0x40]
call fcn.1401f89f0
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x70]
mov rcx, r13
call fcn.1401bac10
lea rcx, [r13 + 0xc0]
lea rdx, [r13 + 0x40]
mov r8, r13
call fcn.1401f9270
movaps xmm0, xmmword [0x14034f4d0]
movups xmmword [r13 + 0x80], xmm0
movaps xmm1, xmmword [0x14034f4e0]
movups xmmword [r13 + 0x90], xmm1
movaps xmm0, xmmword [0x14034f4f0]
movups xmmword [r13 + 0xa0], xmm0
movaps xmm1, xmmword [0x14034f500]
movups xmmword [r13 + 0xb0], xmm1
jmp 0x1401bbf0f
cmp r12d, 4
jne 0x1401bbeff
cmp r14d, 1
je 0x1401bbeff
lea r8d, [r12 - 3]
jmp 0x1401bbf02
xor r8d, r8d
lea rdx, [rsp + 0x30]
mov rcx, r13
call fcn.1401bb3e0
inc r12d
cmp r12d, 5
jb 0x1401bbcc0
dec r14d
jne 0x1401bbca0
lea rcx, [rsp + 0x30]
mov edx, 0xc0
call fcn.1400f5f80
lea edx, [r14 + 0x38]
lea rcx, [rbp - 0x10]
call fcn.1400f5f80
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.140254fb0
mov rbx, qword [rsp + 0x1c8]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret