Function at 0x14001b9ec
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x58]
sub rsp, 0x120
movaps xmmword [rax - 0x48], xmm6
mov rax, qword [0x1401567f8]
xor rax, rsp
mov qword [rbp], rax
mov r15, rdx
mov rsi, rcx
xor r12d, r12d
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], setsockopt
mov byte [rbp - 0x40], r12b
movdqa xmm6, xmmword [0x14013e130]
mov ecx, 4
mov rax, qword gs:[0x58]
mov r14, qword [rax]
or rbx, 0xffffffffffffffff
lea edi, [rbx + 2]
mov eax, dword [rcx + r14]
cmp dword [0x140160b28], eax
jle 0x14001baa3
lea rcx, [0x140160b28]
call fcn.1400b77a0
cmp dword [0x140160b28], ebx
jne 0x14001baa3
mov word [0x1401608f0], 0x1d1
movups xmmword [0x1401608e0], xmm6
lea rcx, [0x1400ff5c0]
call fcn.1400b7e90
lea rcx, [0x140160b28]
call fcn.1400b7740
lea r9, [0x1401608e0]
cmp byte [0x1401608f1], r12b
je 0x14001badf
mov rdx, r12
mov cl, dl
and cl, 7
shl cl, 3
movabs rax, 0xdb3147b56f755dd1
shr rax, cl
xor byte [rdx + r9], al
add rdx, rdi
cmp rdx, 0x11
jb 0x14001bab6
mov byte [0x1401608f1], r12b
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], r12
mov r8, rbx
inc r8
cmp byte [r9 + r8], r12b
jne 0x14001baf1
mov rdx, r9
lea rcx, [rbp - 0x80]
call fcn.14002aaf4
nop
lea rax, [rbp - 0x80]
cmp qword [rbp - 0x68], 0x10
cmovae rax, qword [rbp - 0x80]
mov qword [rbp - 0x70], r12
mov byte [rax], r12b
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x40]
call fcn.14001ab38
mov r13d, 0x1000
test al, al
jne 0x14001bb3b
mov dil, r12b
jmp 0x14001bf72
xorps xmm0, xmm0
xorps xmm1, xmm1
xor r8d, r8d
lea rdx, [0x14013b692]
cmp qword [rbp - 0x30], r12
jne 0x14001bb65
movups xmmword [rbp - 0x20], xmm0
movdqu xmmword [rbp - 0x10], xmm1
lea rcx, [rbp - 0x20]
call fcn.14002aaf4
jmp 0x14001bbc2
movups xmmword [rbp - 0x60], xmm0
movdqu xmmword [rbp - 0x50], xmm1
lea rcx, [rbp - 0x60]
call fcn.14002aaf4
nop
lea r8, [rbp - 0x60]
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
call fcn.14000c92c
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x14001bbc2
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, r13
jb 0x14001bbbc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001c033
call fcn.1400b7640
nop
mov byte [rsp + 0x70], r12b
xor edx, edx
lea rcx, [rsp + 0x78]
call fcn.140025c08
nop
mov byte [rbp - 0x60], r12b
xor edx, edx
lea rcx, [rbp - 0x58]
call fcn.140025c08
nop
lea rax, [rsp + 0x30]
mov qword [rsp + 0x60], rax
mov byte [rsp + 0x30], r12b
xor eax, eax
mov qword [rsp + 0x38], rax
mov dl, r12b
lea rcx, [rsp + 0x38]
call fcn.140023fc4
mov byte [rsp + 0x30], 3
mov rdx, rsi
lea rcx, [rsp + 0x68]
call fcn.140024744
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x68], 0x5fb758d6
mov esi, 4
mov eax, dword [rsi + r14]
cmp dword [0x140160cc8], eax
jle 0x14001bc79
lea rcx, [0x140160cc8]
call fcn.1400b77a0
cmp dword [0x140160cc8], ebx
jne 0x14001bc79
mov byte [0x140160754], dil
mov eax, dword [rsp + 0x68]
mov dword [0x140160750], eax
lea rcx, [0x1400ff5b8]
call fcn.1400b7e90
lea rcx, [0x140160cc8]
call fcn.1400b7740
lea r9, [0x140160750]
cmp byte [0x140160754], r12b
je 0x14001bcb5
mov rdx, r12
mov cl, dl
and cl, 7
shl cl, 3
movabs rax, 0x1b15e3ff5fd331b1
shr rax, cl
xor byte [rdx + r9], al
add rdx, rdi
cmp rdx, 4
jb 0x14001bc8c
mov byte [0x140160754], r12b
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
mov r8, rbx
inc r8
cmp byte [r9 + r8], r12b
jne 0x14001bcc9
mov rdx, r9
lea rcx, [rsp + 0x40]
call fcn.14002aaf4
nop
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.14002001c
mov rdx, rax
mov cl, byte [rax]
mov al, byte [rsp + 0x30]
mov byte [rdx], al
mov byte [rsp + 0x30], cl
mov rax, qword [rdx + 8]
mov rcx, qword [rsp + 0x38]
mov qword [rdx + 8], rcx
mov qword [rsp + 0x38], rax
mov dl, byte [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.140023fc4
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x14001bd58
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, r13
jb 0x14001bd53
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001c021
call fcn.1400b7640
lea rax, [rsp + 0x30]
mov qword [rsp + 0x60], rax
mov byte [rsp + 0x30], r12b
xor eax, eax
mov qword [rsp + 0x38], rax
mov dl, r12b
lea rcx, [rsp + 0x38]
call fcn.140023fc4
mov byte [rsp + 0x30], 3
lea rdx, [rbp - 0x20]
lea rcx, [rsp + 0x68]
call fcn.140024744
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x68], 0x3e99c6a5
mov eax, dword [rsi + r14]
cmp dword [0x140160dd0], eax
jle 0x14001bdeb
lea rcx, [0x140160dd0]
call fcn.1400b77a0
cmp dword [0x140160dd0], ebx
jne 0x14001bdeb
mov word [0x140160f90], 0x1a3
mov eax, dword [rsp + 0x68]
mov dword [0x140160f8c], eax
lea rcx, [0x1400ff5a8]
call fcn.1400b7e90
lea rcx, [0x140160dd0]
call fcn.1400b7740
lea r9, [0x140160f8c]
cmp byte [0x140160f91], r12b
je 0x14001be27
mov rdx, r12
mov cl, dl
and cl, 7
shl cl, 3
movabs rax, 0xf9cd29a35feda7c1
shr rax, cl
xor byte [rdx + r9], al
add rdx, rdi
cmp rdx, 5
jb 0x14001bdfe
mov byte [0x140160f91], r12b
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
inc rbx
cmp byte [r9 + rbx], r12b
jne 0x14001be38
mov r8, rbx
mov rdx, r9
lea rcx, [rsp + 0x40]
call fcn.14002aaf4
nop
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.14002001c
mov rdx, rax
mov cl, byte [rax]
mov al, byte [rsp + 0x30]
mov byte [rdx], al
mov byte [rsp + 0x30], cl
mov rax, qword [rdx + 8]
mov rcx, qword [rsp + 0x38]
mov qword [rdx + 8], rcx
mov qword [rsp + 0x38], rax
mov dl, byte [rsp + 0x30]
lea rcx, [rsp + 0x38]
call fcn.140023fc4
nop
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x14001beca
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, r13
jb 0x14001bec5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001c027
call fcn.1400b7640
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.140020138
mov rdx, rax
mov rcx, r15
call fcn.140022a54
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x14001bf1e
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, r13
jb 0x14001bf18
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001c02d
call fcn.1400b7640
nop
mov dl, byte [rbp - 0x60]
lea rcx, [rbp - 0x58]
call fcn.140023fc4
nop
mov dl, byte [rsp + 0x70]
lea rcx, [rsp + 0x78]
call fcn.140023fc4
nop
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x14001bf72
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, r13
jb 0x14001bf6c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001c033
call fcn.1400b7640
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x14001bfa9
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, r13
jb 0x14001bfa4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001c039
call fcn.1400b7640
mov qword [rbp - 0x70], r12
mov qword [rbp - 0x68], setsockopt
mov byte [rbp - 0x80], r12b
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x14001bfec
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, r13
jb 0x14001bfe7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001c01b
call fcn.1400b7640
mov al, dil
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.1400b7620
lea r11, [rsp + 0x120]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400c9b5c
nop
call fcn.1400c9b5c
nop
call fcn.1400c9b5c
int3
call fcn.1400c9b5c
nop
call fcn.1400c9b5c
nop
call fcn.1400c9b5c
int3