Function at 0x140066840
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1898
call fcn.1400f1350
sub rsp, rax
movaps xmmword [rsp + 0x1880], xmm7
movaps xmmword [rsp + 0x1870], xmm6
lea rax, [rcx + 0x10]
mov qword [rsp + 0x40], rax
mov r8, qword [rdx]
mov rax, qword [rdx + 0x18]
mov qword [rsp + 0x870], rax
movups xmm0, xmmword [rdx + 8]
movaps xmmword [rsp + 0x860], xmm0
mov rax, qword [rcx + 0x810]
cmp rax, 0x40
jae 0x1400668f8
shl rax, 5
mov rdx, qword [rsp + 0x40]
mov qword [rdx + rax], r8
movaps xmm0, xmmword [rsp + 0x860]
movups xmmword [rdx + rax + 8], xmm0
mov r8, qword [rsp + 0x870]
mov qword [rdx + rax + 0x18], r8
inc qword [rcx + 0x810]
xor eax, eax
nop word [rax + rax]
test al, al
jne 0x1400668d0
movaps xmm6, xmmword [rsp + 0x1870]
movaps xmm7, xmmword [rsp + 0x1880]
add rsp, 0x1898
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r9, rdx
lea r10, [rdx + 8]
nop
mov eax, dword [0x141dcd368]
imul eax, dword [0x141dcd36c]
xor eax, 0x9e0d106
and eax, 0x59e0d1f7
add eax, 0x4109e3c9
cmp eax, 0x55d82f8e
jb 0x140066900
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140066930
test r8, r8
je 0x140066f20
xor r12d, r12d
movups xmm6, xmmword [0x141dbb450]
movups xmm7, xmmword [0x141dbb460]
lea rbp, [rsp + 0x1070]
lea r13, [rsp + 0x60]
lea rdi, [rsp + 0x860]
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x48], r10
jmp 0x140066996
mov rax, qword [rcx + 0x810]
cmp rax, 0x40
lea r13, [rsp + 0x60]
jb 0x14006689a
mov rax, qword [rsp + 0x870]
mov qword [rsp + 0x30], rax
movaps xmm0, xmmword [rsp + 0x860]
movaps xmmword [rsp + 0x20], xmm0
mov r14, qword [rcx + 8]
mov eax, 0x60
xor r11d, r11d
jmp 0x1400669d4
sub rax, 0xffffffffffffff80
add r11, 4
cmp rax, 0x860
je 0x140066a80
mov edx, dword [0x141dcd380]
imul edx, dword [0x141dcd384]
or edx, 0x4f6eb392
add edx, 0xf210ca98
and edx, 0x423c762b
cmp edx, 0xd23de6a7
ja 0x140066a51
nop dword [rax + rax]
mov edx, dword [0x141dcd388]
xor edx, dword [0x141dcd38c]
imul edx, edx, 0x7635c61f
add edx, 0xbada0336
and edx, 0x47cdb6b8
movups xmmword [rsp + rax], xmm6
movups xmmword [rsp + rax + 0x10], xmm7
movups xmmword [rsp + rax + 0x20], xmm6
movups xmmword [rsp + rax + 0x30], xmm7
movups xmmword [rsp + rax + 0x40], xmm6
movups xmmword [rsp + rax + 0x50], xmm7
movups xmmword [rsp + rax + 0x60], xmm6
movups xmmword [rsp + rax + 0x70], xmm7
cmp edx, 0x4bda44e7
jbe 0x1400669c0
movups xmmword [rsp + rax + 0x10], xmm7
movups xmmword [rsp + rax], xmm6
movups xmmword [rsp + rax + 0x20], xmm6
movups xmmword [rsp + rax + 0x30], xmm7
movups xmmword [rsp + rax + 0x40], xmm6
movups xmmword [rsp + rax + 0x50], xmm7
movups xmmword [rsp + rax + 0x60], xmm6
movups xmmword [rsp + rax + 0x70], xmm7
jmp 0x140066a00
mov eax, dword [str.Y__KX_f]
sub eax, dword [0x141dcd394]
imul eax, eax, 0xf7a6fec0
cmp eax, 0xf21b134
mov rsi, qword [rsp + 0x40]
mov r15, rcx
je 0x140066b0e
nop word cs:[rax + rax]
mov eax, dword [0x141dcd398]
sub eax, dword [0x141dcd39c]
imul ebx, eax, 0x6cee39fa
and ebx, 0xe0301044
mov r8d, 0x800
mov rcx, rbp
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 0x808
mov rcx, rdi
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 0x800
mov rcx, rsi
mov rdx, rbp
call sub.VCRUNTIME140.dll_memcpy
mov qword [r15 + 0x810], 0
cmp ebx, 0x5c20efca
jbe 0x140066b60
mov r8d, 0x800
mov rcx, rbp
mov rdx, r13
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 0x808
mov rcx, rdi
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 0x800
mov rcx, rsi
mov rdx, rbp
call sub.VCRUNTIME140.dll_memcpy
mov rax, r15
mov qword [r15 + 0x810], 0
jmp 0x140066ab0
mov rcx, r15
mov eax, dword [0x141dcd3a0]
xor edx, edx
div dword [0x141dcd3a4]
and eax, 0x11ec80a2
xor eax, 0xd1996498
imul eax, eax, 0x37b31e20
cmp eax, 0x82568ba8
jbe 0x140066b99
mfence
mov rax, qword [r14 + 0x180]
movzx eax, byte [0x141dde6f8]
mov r15, rcx
mov r8d, 0x93bd8d47
nop word cs:[rax + rax]
mov eax, dword [0x141dcd3a8]
xor edx, edx
div dword [0x141dcd3ac]
xor eax, 0x85b73975
imul rax, r8
shr rax, 0x3e
imul eax, eax, 0xa8c59015
mfence
mov rbx, qword [r14 + 0x180]
movzx ecx, byte [0x141dde6f8]
cmp eax, 0x70938fdf
jb 0x140066bb0
mov eax, dword [0x141dcd3b0]
xor eax, dword [0x141dcd3b4]
imul eax, eax, 0x33b82a6d
xor eax, 0x87d083b3
imul rcx, rax, 0xada69b
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1a
cmp eax, 0xb88ac98
je 0x140066e40
nop
mov esi, dword [0x141dcd3b8]
or esi, dword [0x141dcd3bc]
and esi, 0x7385de5c
add esi, 0xb99322e9
or esi, 0xb165f18e
mov edx, 0x818
xor ecx, ecx
call fcn.1400c29b0
cmp esi, 0xbd3b939a
jb 0x140066e40
mov r13, rax
test rax, rax
je 0x140066f69
mov r8d, 0x808
mov rcx, r13
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov qword [r13 + 0x808], rbx
mov qword [r13 + 0x810], 0
mov rcx, r15
nop dword [rax + rax]
mov eax, dword [0x141dcd3c0]
and eax, dword [0x141dcd3c4]
add eax, 0xa1610c9b
xor eax, 0xfbf264d2
add eax, 0x2cd2ba33
cmp eax, 0x35124a83
jb 0x140066c90
mov r9, qword [rsp + 0x50]
mov r10, qword [rsp + 0x48]
lea rbp, [rsp + 0x1070]
nop word cs:[rax + rax]
mov r11, qword [r14 + 0x100]
mov rdx, r11
and rdx, 0xfffffffffffffff8
mov r8, qword [rdx + 0x810]
cmp r8, 7
ja 0x140066d20
mov eax, dword [0x141dcd3c8]
xor eax, dword [0x141dcd3cc]
and eax, 0xaf208688
xor eax, 0x4a611205
or eax, 0x109c6972
cmp eax, 0xa0583f7
jae 0x140066dc0
jmp 0x140066df2
mov eax, dword [0x141dcd3e0]
sub eax, dword [0x141dcd3e4]
imul rax, rax, 0x68b9b3d7
shr rax, 0x3e
imul eax, eax, 0x995cb3b7
cmp eax, 0x34aa94ca
jne 0x140066d50
mov rax, r11
lock cmpxchg qword [r14 + 0x100], r8
mov eax, dword [0x141dcd3e8]
xor edx, edx
div dword [0x141dcd3ec]
imul rdx, rax, 0xa15b05d
mov rax, r11
lock cmpxchg qword [r14 + 0x100], r8
shr rdx, 0x3b
imul eax, edx, 0x36e9f222
xor eax, 0xa386df07
cmp eax, 0x5d2fdedb
jb 0x140066d50
nop word [rax + rax]
mov eax, dword [0x141dcd3f0]
sub eax, dword [0x141dcd3f4]
add eax, 0x14919fcc
xor eax, 0xb6088220
or eax, 0x9737cd2
cmp eax, 0x3b033350
jb 0x140066d90
jmp 0x140066e30
mov eax, dword [0x141dcd3d0]
imul eax, dword [0x141dcd3d4]
imul r8d, eax, 0x4cdd56e0
add r8d, 0xe71754aa
xor eax, eax
lock cmpxchg qword [rdx + 0x810], r13
sete al
cmp r8d, 0xdabc45bd
jbe 0x140066e00
xor eax, eax
lock cmpxchg qword [rdx + 0x810], r13
jmp 0x140066dc0
mov edx, dword [0x141dcd3d8]
and edx, dword [0x141dcd3dc]
xor edx, 0x210e0000
and edx, 0x252f9831
imul edx, edx, 0x20a9e9db
cmp edx, 0x1dfdd7d7
je 0x140066e00
test al, al
jne 0x140066e60
nop word [rax + rax]
test r12b, r12b
jne 0x140066e30
jmp 0x140066cd0
mov edx, 0x818
xor ecx, ecx
call fcn.1400c29b0
jmp 0x140066c20
mov eax, dword [0x141dcd3f8]
xor eax, dword [0x141dcd3fc]
cmp eax, 0x710ad82c
mov r8, qword [rsp + 0x58]
je 0x140066ede
nop dword [rax + rax]
mov edx, dword [0x141dcd400]
or edx, dword [0x141dcd404]
mov rax, r11
lock cmpxchg qword [r14 + 0x100], r13
xor edx, 0x860c0a04
imul eax, edx, 0x6063742
mov qword [r9], r8
mov rdx, qword [rsp + 0x30]
mov qword [r10 + 0x10], rdx
movaps xmm0, xmmword [rsp + 0x20]
movups xmmword [r10], xmm0
mov rdx, qword [rsp + 0x30]
mov qword [rsp + 0x870], rdx
movaps xmm0, xmmword [rsp + 0x20]
movaps xmmword [rsp + 0x860], xmm0
cmp eax, 0xe800b97
jae 0x140066980
mov rax, r11
lock cmpxchg qword [r14 + 0x100], r13
mov qword [r9], r8
mov rax, qword [rsp + 0x30]
mov qword [r10 + 0x10], rax
movaps xmm0, xmmword [rsp + 0x20]
movups xmmword [r10], xmm0
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x870], rax
movaps xmm0, xmmword [rsp + 0x20]
movaps xmmword [rsp + 0x860], xmm0
jmp 0x140066e80
mov eax, dword [0x141dcd370]
add eax, dword [0x141dcd374]
and eax, 0x928
cmp eax, 0x4e5d2bb3
ja 0x140066f20
nop dword [rax + rax]
mov eax, dword [0x141dcd378]
xor edx, edx
div dword [0x141dcd37c]
or eax, 0x786241a7
add eax, 0x15b37d67
or eax, 0xbb596f7
cmp eax, 0x22e342f2
je 0x140066f40
jmp 0x1400668c8
ud2