Function at 0x14005d070
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push rbp
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x14016d4c0]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rdi, rcx
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x40], xmm0
xor eax, eax
xor ecx, ecx
cpuid
mov dword [rbp - 0x40], eax
mov dword [rbp - 0x3c], ebx
mov dword [rbp - 0x38], ecx
mov dword [rbp - 0x34], edx
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm0
xorps xmm1, xmm1
movups xmmword [rbp - 0x30], xmm1
xor ebx, ebx
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x30], bl
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
movdqu xmmword [rbp - 0x50], xmm1
mov r8d, 4
lea rdx, [rbp - 0x3c]
lea rcx, [rbp - 0x60]
call fcn.140008c70
nop
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0xf
cmova rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x50]
lea rcx, [rbp - 0x30]
call fcn.140006d00
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x14005d148
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d143
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d355
call fcn.1400c4e5c
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x50], xmm1
mov r8d, 4
lea rdx, [rbp - 0x34]
lea rcx, [rbp - 0x60]
call fcn.140008c70
nop
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0xf
cmova rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x50]
lea rcx, [rbp - 0x30]
call fcn.140006d00
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x14005d1c2
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d1bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d355
call fcn.1400c4e5c
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x50], xmm1
mov r8d, 4
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x60]
call fcn.140008c70
nop
lea rdx, [rbp - 0x60]
cmp qword [rbp - 0x48], 0xf
cmova rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x50]
lea rcx, [rbp - 0x30]
call fcn.140006d00
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0xf
jbe 0x14005d23c
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005d237
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d355
call fcn.1400c4e5c
mov r8, qword [rbp - 0x20]
lea rcx, [r8 + 3]
xor edx, edx
mov rax, qword [0x14017a248]
mov rax, qword [rax + 0x18]
div rcx
movabs rcx, 0xb72b726368e93df
cmp rax, rcx
je 0x14005d27e
lea rdx, [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova rdx, qword [rbp - 0x30]
lea rcx, [rbp - 0x30]
call fcn.140006d00
mov r8, qword [rbp - 0x20]
lea rdx, [rbp - 0x30]
mov r9, qword [rbp - 0x30]
mov r10, qword [rbp - 0x18]
cmp r10, 0xf
cmova rdx, r9
mov rcx, rbx
test r8, r8
je 0x14005d2c1
nop word [rax + rax]
movsx rax, byte [rcx + rdx]
add rax, rbx
imul rbx, rax, 0x401
mov rax, rbx
shr rax, 6
xor rbx, rax
inc rcx
cmp rcx, r8
jb 0x14005d2a0
lea rax, [rbx + rbx*8]
mov rcx, rax
shr rcx, 0xb
xor rcx, rax
imul rax, rcx, 0x8001
test rax, rax
jne 0x14005d2ee
movabs rax, 0x5851f42d4c957f2d
imul r8, rax
inc r8
jmp 0x14005d2f1
mov r8, rax
mov qword [rdi], r8
mov byte [rdi + 8], 1
cmp r10, 0xf
jbe 0x14005d32b
lea rdx, [r10 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x14005d323
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005d34f
mov rcx, r9
call fcn.1400c4e5c
mov rax, rdi
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.1400c4df0
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
call fcn.1400d3b88
nop
call fcn.1400d3b88
nop
int3