Function at 0x14001e060
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
movdqa xmmword [rsp + 0xa0], xmm8
movdqa xmmword [rsp + 0x90], xmm7
movdqa xmmword [rsp + 0x80], xmm6
mov rsi, r8
mov r15, rdx
mov rbx, rcx
nop dword [rax + rax]
mov eax, dword [0x141dbf798]
or eax, dword [0x141dbf79c]
xor eax, 0x974ea0d5
imul eax, eax, 0x61e9b577
imul rax, rax, 0x77760835
shr rax, 0x3e
cmp eax, 0xb90946ce
ja 0x14001e0a0
cmp qword [rbx + 0x18], 0
je 0x14001e0f3
mov eax, dword [0x141dbf7a0]
and eax, dword [0x141dbf7a4]
imul eax, eax, 0xe3fdeb23
add eax, 0xaabc11c7
cmp eax, 0x3a2f9ee1
jae 0x14001e0fa
jmp 0x14001e18a
xor eax, eax
jmp 0x14001e55a
mov edi, dword [0x141dbf7a8]
imul edi, dword [0x141dbf7ac]
add edi, 0x5cb4655f
or edi, 0x25874f94
movdqu xmm0, xmmword [rbx + 0x20]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmmword [0x1400ff660]
movdqa xmmword [rsp + 0x30], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmmword [0x1400ff670]
movdqa xmmword [rsp + 0x40], xmm1
movdqa xmmword [rsp + 0x50], xmm0
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], 0
lea r14, [rsp + 0x30]
mov rcx, r14
mov rdx, r15
mov r8, rsi
call fcn.14001c300
mov byte [rsp + 0x27], 0xff
lea rdx, [rsp + 0x27]
mov r8d, 1
mov rcx, r14
call fcn.14001c300
cmp edi, 0x11841e43
jne 0x14001e1fe
movdqu xmm0, xmmword [rbx + 0x20]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmmword [0x1400ff660]
movdqa xmmword [rsp + 0x30], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmmword [0x1400ff670]
movdqa xmmword [rsp + 0x40], xmm1
movdqa xmmword [rsp + 0x50], xmm0
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], 0
lea r14, [rsp + 0x30]
mov rcx, r14
mov rdx, r15
mov r8, rsi
call fcn.14001c300
mov byte [rsp + 0x27], 0xff
lea rdx, [rsp + 0x27]
mov r8d, 1
mov rcx, r14
call fcn.14001c300
jmp 0x14001e0fa
mov rax, qword [rsp + 0x40]
mov r8, qword [rsp + 0x60]
shl r8, 0x38
or r8, qword [rsp + 0x68]
mov r14, qword [rsp + 0x48]
xor r14, r8
mov rdx, qword [rsp + 0x30]
add rdx, rax
mov rcx, qword [rsp + 0x38]
add rcx, r14
rol rax, 0xd
xor rax, rdx
rol r14, 0x10
rol rdx, 0x20
xor r14, rcx
add rcx, rax
rol rax, 0x11
add rdx, r14
xor rax, rcx
rol r14, 0x15
xor r14, rdx
rol rcx, 0x20
xor rdx, r8
xor rcx, 0xff
add rdx, rax
rol rax, 0xd
add rcx, r14
xor rax, rdx
rol r14, 0x10
xor r14, rcx
rol rdx, 0x20
add rcx, rax
add rdx, r14
rol rax, 0x11
xor rax, rcx
rol r14, 0x15
rol rcx, 0x20
xor r14, rdx
add rdx, rax
rol rax, 0xd
add rcx, r14
xor rax, rdx
rol r14, 0x10
xor r14, rcx
rol rdx, 0x20
add rdx, r14
nop dword [rax + rax]
mov r8d, dword [0x141dbf7b0]
sub r8d, dword [0x141dbf7b4]
xor r8d, 0x3000302c
or r8d, 0x8f6bc7c2
imul r8d, r8d, 0x5f24ce89
cmp r8d, 0x9855c92a
je 0x14001e2b0
add rcx, rax
rol rax, 0x11
xor rax, rcx
rol r14, 0x15
xor r14, rdx
rol rcx, 0x20
add rdx, rax
add rcx, r14
rol rax, 0xd
xor rax, rdx
rol r14, 0x10
xor r14, rcx
add rcx, rax
rol rax, 0x11
rol r14, 0x15
mov rdx, rcx
rol rdx, 0x20
mov r8d, dword [0x141dbf7b8]
and r8d, dword [0x141dbf7bc]
or r8d, 0xa3ad4e35
and r8d, 0xefad7e35
cmp r8d, 0x683a68f5
mov qword [rsp + 0x78], r15
xor r14, rax
xor r14, rdx
xor r14, rcx
mov rax, r14
shr rax, 0x39
movd xmm0, eax
punpcklbw xmm0, xmm0
pshuflw xmm0, xmm0, 0
pshufd xmm6, xmm0, 0
nop word cs:[rax + rax]
mov eax, dword [0x141dbf7c0]
or eax, dword [0x141dbf7c4]
cmp eax, 0x614769b1
je 0x14001e370
mov r15, qword [rbx]
mov rbx, qword [rbx + 8]
mov r13d, 0x8551b2cf
pcmpeqd xmm7, xmm7
mov ebp, 0xd2485bd5
xor eax, eax
mov qword [rsp + 0x28], rax
and r14, rbx
movdqu xmm8, xmmword [r15 + r14]
movdqa xmm0, xmm8
pcmpeqb xmm0, xmm6
pmovmskb edi, xmm0
test edi, edi
je 0x14001e476
nop
mov eax, dword [0x141dbf7c8]
xor edx, edx
div dword [0x141dbf7cc]
nop
mov eax, dword [0x141dbf7d0]
and eax, dword [0x141dbf7d4]
imul eax, eax, 0xab99b88e
cmp eax, 0xd243491d
je 0x14001e3d0
tzcnt eax, edi
add rax, r14
and rax, rbx
neg rax
imul r12, rax, 0x38
cmp qword [r15 + r12 - 0x28], rsi
jne 0x14001e41e
add r12, r15
mov rdx, qword [r12 - 0x30]
mov rcx, qword [rsp + 0x78]
mov r8, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14001e525
lea ecx, [rdi - 1]
mov eax, dword [0x141dbf7e8]
xor edx, edx
div dword [0x141dbf7ec]
imul rax, rbp
shr rax, 0x3f
or eax, 0x28b99c74
cmp eax, 0x29cf2c1d
ja 0x14001e421
and ecx, edi
mov edi, ecx
nop word [rax + rax]
mov eax, dword [0x141dbf7f0]
or eax, dword [0x141dbf7f4]
add eax, 0xd579e5e8
and eax, 0x58100c60
cmp eax, 0x9db613ae
ja 0x14001e450
test di, di
jne 0x14001e3c0
xor ecx, ecx
nop dword [rax + rax]
mov eax, dword [0x141dbf7d8]
add eax, dword [0x141dbf7dc]
or eax, 0xc2700040
and eax, 0xc2780148
imul rax, r13
shr rax, 0x3e
cmp eax, 0xd0c9694a
ja 0x14001e480
nop word cs:[rax + rax]
test cl, cl
jne 0x14001e4b0
pcmpeqb xmm8, xmm7
pmovmskb eax, xmm8
mov ecx, dword [0x141dbf7e0]
xor ecx, dword [0x141dbf7e4]
add ecx, 0xb878c29a
or ecx, 0x2a457e7e
cmp ecx, 0xc5f8e007
ja 0x14001e4be
test ax, ax
jne 0x14001e522
mov rax, qword [rsp + 0x28]
add r14, rax
add r14, 0x10
add rax, 0x10
mov qword [rsp + 0x28], rax
nop dword [rax + rax]
mov eax, dword [0x141dbf7f8]
or eax, dword [0x141dbf7fc]
and eax, 0x58812491
add eax, 0x8c34b0bc
cmp eax, 0x71ecb174
jb 0x14001e500
jmp 0x14001e3a0
xor r12d, r12d
lea rcx, [r12 - 0x38]
nop word [rax + rax]
mov edx, dword [str._Kq_i]
xor edx, dword [0x141dbf804]
or edx, 0xf6edf1bf
and edx, 0xfefdf3ff
test r12, r12
mov rax, rcx
cmove rax, r12
cmp edx, 0x5d6a7642
je 0x14001e530
movaps xmm6, xmmword [rsp + 0x80]
movaps xmm7, xmmword [rsp + 0x90]
movaps xmm8, xmmword [rsp + 0xa0]
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret