Function at 0x1400c6b80
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x60
call fcn.1401127d0
sub rsp, rax
mov rax, qword [0x1401bd830]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov r15, qword [rsp + 0xc0]
mov r12, r9
mov r13, qword [rsp + 0xc8]
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
cmp rcx, rdx
je 0x1400c1219
mov r14, r15
cmp r8, 0x10
jb 0x1400c120f
mov rbp, r8
shr rbp, 4
imul rax, rbp, 0xfffffffffffffff0
add rdi, rax
mov r8, r12
mov rdx, rbx
mov rcx, rsi
call r13
mov rax, qword [r14]
xor qword [rbx], rax
mov rax, qword [r14 + 8]
mov r14, rsi
xor qword [rbx + 8], rax
add rsi, 0x10
add rbx, 0x10
sub rbp, 1
jne 0x1400c11e4
movups xmm0, xmmword [r14]
movups xmmword [r15], xmm0
jmp 0x1400c1272
cmp rdi, 0x10
jb 0x1400c1272
mov rbp, rdi
shr rbp, 4
imul rax, rbp, 0xfffffffffffffff0
add rdi, rax
nop dword [rax]
mov r8, r12
lea rdx, [rsp + 0x48]
mov rcx, rsi
call r13
mov rcx, qword [rsi]
mov rax, qword [r15]
xor rax, qword [rsp + 0x48]
mov qword [rbx], rax
mov rax, qword [rsp + 0x50]
xor rax, qword [r15 + 8]
mov qword [r15], rcx
mov rcx, qword [rsi + 8]
add rsi, 0x10
mov qword [rbx + 8], rax
add rbx, 0x10
mov qword [r15 + 8], rcx
sub rbp, 1
jne 0x1400c1230
test rdi, rdi
je 0x1400c13f0
lea rax, [rsp + 0x48]
mov rbp, rsi
sub rax, r15
lea r14, [rsp + 0x4a]
mov qword [rsp + 0x28], rax
sub rbp, r15
dec rax
sub r14, r15
mov qword [rsp + 0x20], rax
add rbp, 2
mov eax, 1
sub rbx, r15
sub rax, r15
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x49]
sub rax, r15
mov qword [rsp + 0x38], rax
mov eax, 2
sub rax, r15
mov qword [rsp + 0x40], rax
add rbx, 2
mov r8, r12
lea rdx, [rsp + 0x48]
mov rcx, rsi
call r13
mov r10, rsi
lea rcx, [r15 - 2]
sub r10, rcx
lea rax, [r15 + 1]
xor r9d, r9d
sub r10, rbx
cmp r9, rdi
jae 0x1400c13a0
mov rcx, qword [rsp + 0x20]
movzx edx, byte [rax + rbp - 3]
movzx ecx, byte [rax + rcx]
xor cl, byte [rax - 1]
mov byte [rax + rbx - 3], cl
mov rcx, rax
sub rcx, r15
mov byte [rax - 1], dl
cmp rcx, rdi
jae 0x1400c139d
mov rcx, qword [rsp + 0x28]
lea rdx, [rax + rbx]
movzx r8d, byte [r10 + rdx - 2]
movzx ecx, byte [rax + rcx]
xor cl, byte [rax]
mov byte [rdx - 2], cl
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov byte [rax], r8b
cmp rcx, rdi
jae 0x1400c1397
mov rcx, qword [rsp + 0x38]
movzx edx, byte [rax + rbp - 1]
movzx ecx, byte [rax + rcx]
xor cl, byte [rax + 1]
mov byte [rax + rbx - 1], cl
mov rcx, qword [rsp + 0x40]
add rcx, rax
mov byte [rax + 1], dl
cmp rcx, rdi
jae 0x1400c1391
movzx edx, byte [rax + rbp]
add r9, 4
movzx ecx, byte [rax + r14]
xor cl, byte [rax + 2]
mov byte [rax + rbx], cl
mov byte [rax + 2], dl
add rax, 4
cmp r9, 0x10
jb 0x1400c12f2
jmp 0x1400c13a0
add r9, 3
jmp 0x1400c13a0
add r9, 2
jmp 0x1400c13a0
inc r9
cmp rdi, 0x10
jbe 0x1400c13be
add rsi, 0x10
add rbp, 0x10
add rbx, 0x10
sub rdi, 0x10
jne 0x1400c12d0
jmp 0x1400c13f0
cmp r9, 0x10
jae 0x1400c13f0
sub rsi, r15
lea rcx, [r15 + r9]
mov edx, reloc.WS2_32.dll_recv
sub rdx, r9
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rcx + rsi]
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1400c13e0
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.140111cf0
mov rbx, qword [rsp + 0xb0]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov eax, gethostname
call fcn.1401127d0
sub rsp, rax
cmp dword [rsp + 0x68], 0
je 0x1400c6ba9
lea rax, [0x1400c51f0]
mov qword [rsp + 0x68], rax
add rsp, 0x38
jmp fcn.1400c1420
lea rax, [0x1400c43b0]
mov qword [rsp + 0x68], rax
add rsp, 0x38
jmp 0x1400c1180