Function at 0x14000cf70
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x20]
sub rsp, 0x120
xor esi, esi
mov rax, qword [rcx]
mov r12d, dword [rax]
mov eax, 0x51eb851f
imul r12d
mov r15d, edx
sar r15d, 5
mov eax, r15d
shr eax, 0x1f
add r15d, eax
imul eax, r15d, 0x64
mov r14d, r12d
sub r14d, eax
mov dword [rbp + 0x60], 0x1c14
mov rcx, qword [0x140126af0]
add rcx, 0xa8
lea rdx, [rbp + 0x60]
call fcn.1400258f0
movzx edi, byte [rax + 2]
mov dword [rbp + 0x68], 0xf2
mov rcx, qword [0x140126af0]
add rcx, 0xa8
lea rdx, [rbp + 0x68]
call fcn.1400258f0
movzx ebx, byte [rax + 2]
mov dword [rbp + 0x60], 0x704
mov rcx, qword [0x140126af0]
add rcx, 0xa8
lea rdx, [rbp + 0x60]
call fcn.1400258f0
movzx ecx, byte [rax + 2]
imul eax, edi, 0x64
add eax, ecx
imul edi, eax, 0x64
add edi, ebx
mov dword [rbp + 0x68], 0x704
mov rcx, qword [0x140126af0]
add rcx, 0xa8
lea rdx, [rbp + 0x68]
call fcn.1400258f0
cmp byte [rax + 2], 1
jae 0x14000d11d
mov dword [rbp + 0x60], 0x1c14
mov rcx, qword [0x140126af0]
add rcx, 0xa8
lea rdx, [rbp + 0x60]
call fcn.1400258f0
cmp byte [rax + 2], 1
jae 0x14000d11d
mov dword [rbp + 0x70], 0xf2
mov rcx, qword [0x140126af0]
add rcx, 0xa8
lea rdx, [rbp + 0x70]
call fcn.1400258f0
cmp byte [rax + 2], 1
jae 0x14000d11d
movdqa xmm0, xmmword [0x1400f9290]
movdqu xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x30], 0xa3edb8aa
mov dword [rsp + 0x34], 0xfca8beae
mov word [rsp + 0x38], pe_nt_image_headers64
mov ecx, esi
lea eax, [rcx - 0x45]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 0x18
jb 0x14000d0c0
mov byte [rsp + 0x39], sil
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
lea rax, [rsp + 0x20]
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rax + rbx], sil
jne 0x14000d0f3
lea rdx, [rsp + 0x20]
mov r8, rbx
lea rcx, [rsp + 0x40]
call fcn.140028b80
lea rcx, [rsp + 0x40]
call fcn.1400a1af0
jmp 0x14000d5e3
cmp r12d, 1
jge 0x14000d195
movdqa xmm0, xmmword [0x1400f9b90]
movdqu xmmword [rsp + 0x60], xmm0
movdqa xmm1, xmmword [0x1400f9180]
movdqu xmmword [rsp + 0x70], xmm1
mov word [rbp - 0x80], pe_nt_image_headers64
mov rcx, rsi
nop dword [rax + rax]
lea eax, [rcx - 0x45]
xor byte [rsp + rcx + 0x60], al
inc rcx
cmp rcx, 0x20
jb 0x14000d150
mov byte [rbp - 0x7f], sil
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
lea rax, [rsp + 0x60]
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rax + rbx], sil
jne 0x14000d182
lea rdx, [rsp + 0x60]
jmp 0x14000d101
cmp edi, r12d
jge 0x14000d206
movdqa xmm0, xmmword [0x1400f9290]
movdqu xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x30], 0xa3edb8aa
mov dword [rsp + 0x34], 0xa8beae
mov byte [rsp + 0x38], 1
mov rcx, rsi
lea eax, [rcx - 0x45]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 0x17
jb 0x14000d1c0
mov byte [rsp + 0x38], sil
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], rsi
lea rax, [rsp + 0x20]
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rax + rbx], sil
jne 0x14000d1f3
lea rdx, [rsp + 0x20]
jmp 0x14000d101
movabs rdi, 0x7fffffffffffffff
cmp r15d, 1
jl 0x14000d281
xor edx, edx
mov ecx, r15d
call fcn.140009ee0
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x14000d23e
imul rax, rax, 0x64
jmp 0x14000d259
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
movabs rcx, 0x7ffffffffa0a1eff
cmp rax, rcx
jge 0x14000d274
add rax, 0x5f5e100
mov qword [rbp + 0x78], rax
jmp 0x14000d278
mov qword [rbp + 0x78], rdi
lea rcx, [rbp + 0x78]
call fcn.14002a4c0
cmp r14d, 1
jl 0x14000d5e3
mov byte [0x140125a71], 1
mov dword [rbp + 0x78], 0xf2
mov rcx, qword [0x140126af0]
add rcx, 0xa8
lea rdx, [rbp + 0x78]
call fcn.1400258f0
movzx ecx, byte [rax + 2]
cmp ecx, r14d
jge 0x14000d427
mov dword [rbp + 0x60], 0x704
mov rcx, qword [0x140126af0]
add rcx, 0xa8
lea rdx, [rbp + 0x60]
call fcn.1400258f0
cmp byte [rax + 2], 1
jb 0x14000d427
mov word [rsp + 0x61], si
mov byte [rsp + 0x63], sil
mov qword [rsp + 0x64], rsi
mov qword [rsp + 0x6c], rsi
mov qword [rbp - 0x80], rsi
mov dword [rbp - 0x78], esi
xor eax, eax
mov qword [rbp - 0x6c], rax
mov byte [rsp + 0x60], 0xa
mov rbx, qword [0x140126af0]
movss xmm3, dword [rbx + 0x1c0]
movaps xmm0, xmm3
mulss xmm0, dword [0x1400f8c58]
cvttss2si rax, xmm0
mov dword [rbp - 0x74], eax
movss xmm2, dword [rbx + 0x1c4]
movaps xmm0, xmm2
mulss xmm0, dword [0x1400f8c58]
cvttss2si rax, xmm0
mov dword [rbp - 0x70], eax
movss dword [rsp + 0x78], xmm3
movss dword [rsp + 0x7c], xmm2
mov dword [rsp + 0x74], 0x704
cmp qword [rbx + 0x10], rsi
je 0x14000d3c6
cmp qword [rbx + 8], rsi
je 0x14000d3c6
mov edx, 0x41
xor ecx, ecx
lea r8d, [rdx - 0x40]
call fcn.140050980
mov r8, qword [rax + 0x10]
mov dword [r8], 4
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [r8 + 4], xmm0
movups xmm1, xmmword [rsp + 0x70]
movups xmmword [r8 + 0x14], xmm1
movups xmm0, xmmword [rbp - 0x80]
movups xmmword [r8 + 0x24], xmm0
movsd xmm1, qword [rbp - 0x70]
movsd qword [r8 + 0x34], xmm1
mov edx, dword [rbp - 0x68]
mov dword [r8 + 0x3c], edx
xor ecx, ecx
mov byte [r8 + 0x40], cl
xor r8d, r8d
mov rdx, rax
mov rcx, rbx
call fcn.1400cff10
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x14000d3e4
imul rax, rax, 0x64
jmp 0x14000d3ff
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
movabs rcx, 0x7ffffffffd050f7f
cmp rax, rcx
jge 0x14000d41a
add rax, 0x2faf080
mov qword [rbp + 0x60], rax
jmp 0x14000d41e
mov qword [rbp + 0x60], rdi
lea rcx, [rbp + 0x60]
call fcn.14002a4c0
mov edx, r14d
mov ecx, 0xf2
call fcn.140009b70
call fcn.140004a10
mov edx, r14d
lea rcx, [rsp + 0x60]
call fcn.1400031b0
mov rdi, rax
mov edx, r15d
lea rcx, [rbp]
call fcn.1400031b0
nop
movdqa xmm0, xmmword [0x1400f8d50]
movdqu xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 1
mov rdx, rsi
nop dword [rax]
lea ecx, [rdx - 0x45]
xor byte [rsp + rdx + 0x20], cl
inc rdx
cmp rdx, 0xf
jb 0x14000d470
mov byte [rsp + 0x30], 0
lea rcx, [rsp + 0x20]
mov rbx, 0xffffffffffffffff
mov r9, rbx
inc r9
cmp byte [rcx + r9], 0
jne 0x14000d494
lea r8, [rsp + 0x20]
mov rcx, rax
call fcn.140029b60
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov dword [rsp + 0x20], 0xfa84dc9b
mov dword [rsp + 0x24], 0xb5a1e0f3
mov word [rsp + 0x28], pe_nt_image_headers64
mov rcx, rsi
nop word [rax + rax]
lea eax, [rcx - 0x45]
xor byte [rsp + rcx + 0x20], al
inc rcx
cmp rcx, 8
jb 0x14000d500
mov byte [rsp + 0x29], 0
lea rax, [rsp + 0x20]
nop word [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14000d520
mov r8, rbx
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.1400273b0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov r9, rdi
lea r8, [rbp - 0x60]
lea rcx, [rbp - 0x40]
call fcn.140029660
nop
mov dword [rsp + 0x20], 0xe984dc9b
mov dword [rsp + 0x24], 0xa1a0f3
mov byte [rsp + 0x28], 1
nop
lea eax, [rsi - 0x45]
xor byte [rsp + rsi + 0x20], al
inc rsi
cmp rsi, 7
jb 0x14000d580
mov byte [rsp + 0x28], 0
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
call fcn.1400277b0
mov rcx, rax
call fcn.1400a1af0
nop
lea rcx, [rbp - 0x40]
call fcn.140027180
nop
lea rcx, [rbp - 0x60]
call fcn.140027180
nop
lea rcx, [rsp + 0x40]
call fcn.140027180
nop
lea rcx, [rbp]
call fcn.140027180
nop
lea rcx, [rsp + 0x60]
call fcn.140027180
add rsp, 0x120
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret