Function at 0x180014d70
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
sub rsp, 0xa8
mov rax, qword [0x18001d140]
xor rax, rsp
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [0x18001a5f0]
movups xmm1, xmmword [0x18001a600]
mov eax, dword [0x18001a630]
mov qword [r11 + 8], rbx
mov qword [r11 - 0x18], r15
xor r15d, r15d
cmp dword [0x18001d188], 2
mov ecx, r15d
movups xmmword [rsp + 0x20], xmm0
movups xmm0, xmmword [0x18001a610]
movups xmmword [rsp + 0x30], xmm1
movups xmm1, xmmword [0x18001a620]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm1
mov dword [rsp + 0x60], eax
jl 0x180014eba
movdqa xmm4, xmmword [0x18001a8e0]
lea rdx, [r11 - 0x80]
movdqa xmm5, xmmword [0x18001a8f0]
movaps xmmword [r11 - 0x28], xmm6
movdqa xmm6, xmmword [str.]
nop
xorps xmm0, xmm0
movd xmm1, ecx
pshufd xmm1, xmm1, 0
lea eax, [rcx + 4]
paddd xmm1, xmm4
lea rdx, [rdx + 0x10]
pcmpgtd xmm0, xmm1
movq xmm2, xmm6
andps xmm0, xmm5
add ecx, 8
paddd xmm0, xmm1
psrad xmm0, 2
pslld xmm0, 2
psubd xmm1, xmm0
pshuflw xmm0, xmm1, 0xd8
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rdx - 0x18]
pshufd xmm3, xmm1, 0xd8
movd xmm1, eax
psubw xmm3, xmm2
pshufd xmm1, xmm1, 0
xorps xmm3, xmm0
movq qword [rdx - 0x18], xmm3
xorps xmm0, xmm0
paddd xmm1, xmm4
movq xmm2, xmm6
pcmpgtd xmm0, xmm1
andps xmm0, xmm5
paddd xmm0, xmm1
psrad xmm0, 2
pslld xmm0, 2
psubd xmm1, xmm0
pshuflw xmm0, xmm1, 0xd8
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rdx - 0x10]
pshufd xmm3, xmm1, 0xd8
psubw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rdx - 0x10], xmm3
cmp ecx, 0x20
jl 0x180014e00
movaps xmm6, xmmword [rsp + 0x80]
cmp ecx, 0x22
jge 0x180014ee8
movsxd rax, ecx
lea rdx, [rsp + 0x20]
lea rdx, [rdx + rax*2]
mov eax, ecx
and eax, 0x80000003
jge 0x180014ed6
dec eax
or eax, 0xfffffffc
inc eax
sub ax, 0x27
inc ecx
xor word [rdx], ax
add rdx, 2
cmp ecx, 0x22
jl 0x180014ec6
lea rdx, [rsp + 0x20]
lea rcx, str.ModuleName:__ls_n
call fcn.1800010a0
call fcn.180015ca0
mov rbx, rax
test rax, rax
jne 0x180014f0e
mov rdx, r15
jmp 0x180015072
mov qword [rsp + 0xb8], rbp
lea rcx, str.Process_Enviroment_Structure:__p_n
mov qword [rsp + 0xc0], rsi
mov rdx, rbx
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0x98], r14
call fcn.1800010a0
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x18001504f
mov rsi, qword [rax + 0x20]
lea r14, [rax + 0x20]
cmp rsi, r14
je 0x18001504f
nop dword [rax + rax]
mov rdx, qword [rsi + 0x40]
lea rcx, str.DllName:__ls_n
call fcn.1800010a0
mov rcx, qword [rsi + 0x40]
mov eax, r15d
mov rdx, rcx
test rcx, rcx
je 0x180014f90
cmp word [rcx], ax
je 0x180014f90
inc eax
lea rdx, [rdx + 2]
cmp word [rdx], r15w
jne 0x180014f84
mov r8d, r15d
lea rdx, [rsp + 0x20]
cmp word [rsp + 0x20], r8w
je 0x180014fad
inc r8d
lea rdx, [rdx + 2]
cmp word [rdx], r15w
jne 0x180014fa0
cmp eax, r8d
jl 0x180015043
sub eax, r8d
movsxd rbx, r8d
movsxd rbp, eax
mov r11, r15
lea rax, [rsp + 0x20]
sub rcx, rax
mov rax, r15
mov r10, rcx
test r8d, r8d
je 0x180015029
nop word [rax + rax]
lea rdi, [rsp + 0x20]
add rdi, rcx
nop dword [rax + rax]
movzx edx, word [rsp + rax*2 + 0x20]
movzx r9d, word [rdi + rax*2]
lea ecx, [rdx - 0x41]
cmp cx, 0x19
lea r8d, [rdx + 0x20]
lea ecx, [r9 - 0x41]
cmova r8w, dx
cmp cx, 0x19
lea edx, [r9 + 0x20]
cmova dx, r9w
cmp dx, r8w
jne 0x18001502f
inc rax
cmp rax, rbx
jb 0x180014ff0
mov rdx, qword [rsi + 0x20]
jmp 0x180015052
inc r11
add r10, 2
cmp r11, rbp
ja 0x180015043
mov rcx, r10
mov rax, r15
jmp 0x180014fe0
mov rsi, qword [rsi]
cmp rsi, r14
jne 0x180014f60
mov rdx, r15
mov rdi, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0xb8]
mov r14, qword [rsp + 0x98]
mov rbx, qword [rsp + 0xb0]
movzx ecx, r15w
mov r15, qword [rsp + 0x90]
mov eax, ecx
shl ecx, 0x10
or ecx, eax
mov qword [0x18001da98], rdx
mov dword [rsp + 0x60], ecx
movd xmm0, ecx
pshufd xmm0, xmm0, 0
movups xmmword [rsp + 0x20], xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm0
test rdx, rdx
jne 0x1800150dd
lea rcx, str.Error:_Failed_to_find_game_base_address__n
call fcn.1800010a0
xor al, al
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.180015dc0
add rsp, 0xa8
ret
lea rcx, str.GameBase:__p_n
call fcn.1800010a0
mov al, 1
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.180015dc0
add rsp, 0xa8
ret