Function at 0x18007ace0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
movaps xmmword [rax - 0x38], xmm7
mov rax, qword [0x180151040]
xor rax, rsp
mov qword [rbp + 0x1f], rax
call fcn.180028770
mov qword [rbp - 0x49], 0
mov rax, qword [0x180139a50]
mov qword [rbp + 7], rax
movdqa xmm7, xmmword [0x18013c550]
xor edi, edi
mov r13d, dword [0x180151098]
cmp byte [0x180139a57], dil
je 0x18007ae72
mov r8d, edi
cmp r13d, 2
jl 0x18007ae34
movdqa xmm4, xmmword [0x18013c6e0]
movdqa xmm2, xmmword [0x18013c4d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.8888]
psubd xmm2, xmm0
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x18013c5a0]
movd xmm0, dword [rbp + 7]
xorps xmm2, xmm0
movd dword [rbp + 7], xmm2
movdqa xmm3, xmmword [0x18013c4f0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.8888]
psubd xmm3, xmm0
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmmword [0x18013c5a0]
movd xmm0, dword [rbp + 0xb]
xorps xmm3, xmm0
movd dword [rbp + 0xb], xmm3
jmp 0x18007ae72
lea r9, [rbp + 7]
nop dword [rax + rax]
mov eax, 0x24924925
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 8
jl 0x18007ae40
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp + 7]
mov rsi, 0xffffffffffffffff
mov r8, rsi
nop
inc r8
cmp byte [rax + r8], dil
jne 0x18007ae90
lea rdx, [rbp + 7]
lea rcx, [rbp - 0x39]
call fcn.180014de0
nop
lea r14, [rbp - 0x39]
cmp qword [rbp - 0x21], 0xf
cmova r14, qword [rbp - 0x39]
movzx eax, word [0x180139998]
mov word [rbp + 0x17], ax
cmp byte [0x180139999], 0
je 0x18007aed1
mov byte [rbp + 0x17], 0x41
xor byte [rbp + 0x18], 0x36
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 9], xmm1
lea rax, [rbp + 0x17]
mov r8, rsi
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18007aef0
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 0x19]
call fcn.180014de0
nop
lea r12, [rbp - 0x19]
cmp qword [rbp - 1], 0xf
cmova r12, qword [rbp - 0x19]
mov rcx, qword [0x1803f0c60]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov rbx, qword [rcx + 0x4000]
movsxd r8, dword [rbx + 0x100]
mov rax, qword [rbx + 0x108]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
mov rcx, r14
call fcn.180018320
mov r15d, eax
mov rcx, qword [rbx]
cmp dword [rcx + 0x404c], eax
jne 0x18007af6c
mov r8, r14
mov edx, 0xb
mov ecx, eax
call fcn.180030130
mov rdx, qword [0x1803f77a0]
add rdx, 0x18
mov ecx, 2
call fcn.180019000
mov rdx, qword [0x1803f77a0]
add rdx, 0x20
mov ecx, 0xe
call fcn.180019000
lea r9, [rbp - 0x49]
mov r8d, r15d
mov rdx, r14
mov rcx, r12
call fcn.180006e00
nop
mov rdx, qword [rbp - 1]
cmp rdx, 0xf
jbe 0x18007afe7
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007afe2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007afe2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180102054
movdqa xmm0, xmmword [0x18013c340]
movdqu xmmword [rbp - 9], xmm0
mov byte [rbp - 0x19], 0
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x18007b036
inc rdx
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007b031
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007b031
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180102054
mov eax, dword [str.pXVZU__]
mov dword [rbp + 7], eax
movzx ecx, word [0x180139924]
mov word [rbp + 0xb], cx
movzx eax, byte [0x180139926]
mov byte [rbp + 7], 0x45
xor byte [rbp + 8], 0x36
xor byte [rbp + 9], 0x37
xor byte [rbp + 0xa], 0x38
xor cl, 0x39
mov byte [rbp + 0xb], cl
xor byte [rbp + 0xc], 0x3a
xor al, 0x3b
mov byte [rbp + 0xd], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 9], xmm1
lea rax, [rbp + 7]
mov r8, rsi
inc r8
cmp byte [rax + r8], 0
jne 0x18007b086
lea rdx, [rbp + 7]
lea rcx, [rbp - 0x19]
call fcn.180014de0
nop
lea rax, [rbp - 0x19]
cmp qword [rbp - 1], 0xf
cmova rax, qword [rbp - 0x19]
mov qword [rbp - 0x49], rax
mov rax, qword [rbp - 9]
mov qword [rbp - 0x41], rax
movaps xmm0, xmmword [rbp - 0x49]
movdqa xmmword [rbp - 0x49], xmm0
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, [0x1803f7961]
lea rdx, [rbp - 0x49]
mov rcx, qword [0x1803f7810]
call fcn.1800078d0
nop
mov rdx, qword [rbp - 1]
cmp rdx, 0xf
jbe 0x18007b129
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007b124
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007b124
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180102054
movsd xmm0, qword [0x1801398a0]
movsd qword [rbp - 0x49], xmm0
mov ecx, dword [0x1801398a8]
mov dword [rbp - 0x41], ecx
movzx eax, byte [0x1801398ac]
mov byte [rbp - 0x3d], al
mov r8d, edi
cmp r13d, 2
jl 0x18007b2a3
movdqa xmm4, xmmword [0x18013c6e0]
movdqa xmm5, xmmword [str.8888]
movdqa xmm3, xmmword [0x18013c4d0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
mov eax, dword [0x18013c5a0]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1801398a0]
xorps xmm3, xmm0
movd dword [rbp - 0x49], xmm3
movdqa xmm2, xmmword [0x18013c4f0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x45]
xorps xmm2, xmm1
movd dword [rbp - 0x45], xmm2
movdqa xmm3, xmmword [0x18013c500]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, ecx
xorps xmm3, xmm1
movd dword [rbp - 0x41], xmm3
mov r8d, 0xc
mov eax, r8d
lea r9, [rbp - 0x49]
add r9, rax
nop dword [rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x35
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x18007b2b0
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp - 0x49]
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18007b300
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x39]
call fcn.180014de0
nop
lea rcx, [rbp - 0x39]
cmp qword [rbp - 0x21], 0xf
cmova rcx, qword [rbp - 0x39]
mov dword [rbp + 0x17], 0x1f4
mov dword [rbp + 7], 1
lea rax, [0x18013bdac]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x17]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 7]
lea r8, [0x1803f0088]
mov edx, 4
call fcn.180008fe0
nop
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x18007b39d
inc rdx
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007b398
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007b398
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180102054
call fcn.180007600
call fcn.1800288b0
movss xmm1, dword [0x18013c294]
xorps xmm0, xmm0
call fcn.180028480
call fcn.180028770
mov qword [rbp - 0x49], 0
movsd xmm0, qword [str.cS_QZVO]
movsd qword [rbp + 7], xmm0
movzx eax, byte [0x18013a6b8]
mov byte [rbp + 7], 0x56
xor byte [rbp + 8], 0x36
xor byte [rbp + 9], 0x37
xor byte [rbp + 0xa], 0x38
xor byte [rbp + 0xb], 0x39
xor byte [rbp + 0xc], 0x3a
xor byte [rbp + 0xd], 0x3b
xor byte [rbp + 0xe], 0x3c
xor al, 0x3d
mov byte [rbp + 0xf], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp + 7]
mov r8, rsi
inc r8
cmp byte [rax + r8], 0
jne 0x18007b413
lea rdx, [rbp + 7]
lea rcx, [rbp - 0x39]
call fcn.180014de0
nop
lea r14, [rbp - 0x39]
cmp qword [rbp - 0x21], 0xf
cmova r14, qword [rbp - 0x39]
movzx eax, word [0x180139998]
mov word [rbp + 0x17], ax
cmp byte [0x180139999], 0
je 0x18007b455
mov byte [rbp + 0x17], 0x41
xor byte [rbp + 0x18], 0x36
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 9], xmm1
lea rax, [rbp + 0x17]
mov r8, rsi
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x18007b470
lea rdx, [rbp + 0x17]
lea rcx, [rbp - 0x19]
call fcn.180014de0
nop
lea r12, [rbp - 0x19]
cmp qword [rbp - 1], 0xf
cmova r12, qword [rbp - 0x19]
mov rcx, qword [0x1803f0c60]
mov rax, qword [rcx + 0x4000]
mov byte [rax + 0xc0], 1
mov rbx, qword [rcx + 0x4000]
movsxd r8, dword [rbx + 0x100]
mov rax, qword [rbx + 0x108]
mov r8d, dword [rax + r8*4 - 4]
xor edx, edx
mov rcx, r14
call fcn.180018320
mov r15d, eax
mov r8, qword [rbx]
cmp dword [r8 + 0x404c], eax
jne 0x18007b4ed
mov r8, r14
mov edx, 0xb
mov ecx, eax
call fcn.180030130
mov rdx, qword [0x1803f77a0]
add rdx, 0x18
mov ecx, 2
call fcn.180019000
mov rdx, qword [0x1803f77a0]
add rdx, 0x20
mov ecx, 0xe
call fcn.180019000
lea r9, [rbp - 0x49]
mov r8d, r15d
mov rdx, r14
mov rcx, r12
call fcn.180006e00
nop
mov rdx, qword [rbp - 1]
cmp rdx, 0xf
jbe 0x18007b568
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007b563
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007b563
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180102054
movdqa xmm0, xmmword [0x18013c340]
movdqu xmmword [rbp - 9], xmm0
mov byte [rbp - 0x19], 0
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x18007b5b7
inc rdx
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007b5b2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007b5b2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180102054
movsd xmm0, qword [0x1801398a0]
movsd qword [rbp - 0x49], xmm0
mov ecx, dword [0x1801398a8]
mov dword [rbp - 0x41], ecx
movzx eax, byte [0x1801398ac]
mov byte [rbp - 0x3d], al
cmp r13d, 2
jl 0x18007b72d
movdqa xmm4, xmmword [0x18013c6e0]
movdqa xmm5, xmmword [str.8888]
movdqa xmm3, xmmword [0x18013c4d0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
mov eax, dword [0x18013c5a0]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [0x1801398a0]
xorps xmm3, xmm0
movd dword [rbp - 0x49], xmm3
movdqa xmm2, xmmword [0x18013c4f0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x45]
xorps xmm2, xmm1
movd dword [rbp - 0x45], xmm2
movdqa xmm3, xmmword [0x18013c500]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, ecx
xorps xmm3, xmm1
movd dword [rbp - 0x41], xmm3
mov edi, 0xc
mov eax, edi
lea r8, [rbp - 0x49]
add r8, rax
nop word [rax + rax]
mov eax, 0x92492493
imul edi
add edx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, dil
sub al, cl
add al, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xd
jl 0x18007b740
xorps xmm0, xmm0
movups xmmword [rbp - 0x39], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x29], xmm1
lea rax, [rbp - 0x49]
inc rsi
cmp byte [rax + rsi], 0
jne 0x18007b782
mov r8, rsi
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x39]
call fcn.180014de0
nop
lea rcx, [rbp - 0x39]
cmp qword [rbp - 0x21], 0xf
cmova rcx, qword [rbp - 0x39]
mov dword [rbp + 7], 0x1f4
mov dword [rbp + 0x17], 1
lea rax, [0x18013bdac]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 7]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x17]
lea r8, [0x1803f0088]
mov edx, 4
call fcn.180008fe0
nop
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x18007b821
inc rdx
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18007b81c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18007b81c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180102054
call fcn.180007600
call fcn.1800288b0
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.180101a90
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm7, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret