Function at 0x1400f8540
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
mov rax, qword [0x140152040]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rdi, r8
mov r14, rcx
mov qword [rbp - 0x69], rcx
xor esi, esi
lea rcx, [rbp - 0x69]
call fcn.1400fe140
mov rax, qword [rbp - 0x69]
cmp rax, rdi
je 0x1400f8824
lea rdx, [rax + 1]
cmp byte [rax], 0x20
jne 0x1400f8824
mov r8, rdi
lea rcx, [rbp - 0x21]
call fcn.1400ff760
mov rax, qword [rbp - 0x21]
cmp rax, rdi
je 0x1400f87c4
lea rbx, [rax + 1]
cmp byte [rax], 0x20
jne 0x1400f87c4
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
mov ecx, esi
mov qword [rbp - 0x39], rcx
mov edx, select
mov qword [rbp - 0x31], rdx
mov byte [rbp - 0x49], cl
cmp rbx, rdi
je 0x1400f8641
movzx r9d, byte [rbx]
cmp r9b, 0x20
je 0x1400f8601
cmp r9b, 9
je 0x1400f8601
lea eax, [r9 - 0x21]
cmp al, 0x5d
jbe 0x1400f8601
cmp r9b, 0x80
jb 0x1400f8641
cmp rcx, rdx
jae 0x1400f8626
lea rax, [rcx + 1]
mov qword [rbp - 0x39], rax
lea rax, [rbp - 0x49]
cmp rdx, 0xf
cmova rax, qword [rbp - 0x49]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400f862f
lea rcx, [rbp - 0x49]
call fcn.1400fc4c0
inc rbx
cmp rbx, rdi
je 0x1400f8641
mov rdx, qword [rbp - 0x31]
mov rcx, qword [rbp - 0x39]
jmp 0x1400f85e3
mov qword [rbp - 9], rbx
movups xmm1, xmmword [rbp - 0x49]
movups xmmword [rbp - 1], xmm1
movups xmm2, xmmword [rbp - 0x39]
movdqu xmmword [rbp + 0xf], xmm2
cmp rbx, rdi
je 0x1400f8764
lea rcx, [rbx + 1]
cmp byte [rbx], 0xd
jne 0x1400f8764
cmp rcx, rdi
je 0x1400f870a
mov rax, rcx
inc rcx
cmp byte [rax], 0xa
jne 0x1400f870a
mov eax, dword [rbp - 0x61]
mov dword [rbp - 0x49], eax
movzx edx, word [rbp - 0x19]
mov word [rbp - 0x45], dx
movups xmmword [rbp - 0x41], xmm1
movdqa xmm0, xmmword [0x140138dd0]
movdqu xmmword [rbp + 0xf], xmm0
mov byte [rbp - 1], 0
mov qword [r14], rcx
mov dword [r14 + 8], eax
mov word [r14 + 0xc], dx
movups xmmword [r14 + 0x10], xmm1
movups xmmword [r14 + 0x20], xmm2
movdqu xmmword [rbp - 0x31], xmm0
mov byte [rbp - 0x41], 0
lea rcx, [rbp - 0x41]
call fcn.1400955d0
nop
lea rcx, [rbp - 1]
call fcn.1400955d0
mov rax, r14
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.14010fe20
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
lea rdx, [rbp - 0x21]
call fcn.1400f9140
mov r9, rax
cmp byte [rax + 0x13], 0
je 0x1400f8ca7
cmp dword [0x140152090], 2
jge 0x1400f8ab8
mov r8, r9
mov eax, 0x29e4129f
mul esi
mov eax, esi
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, sil
sub al, cl
add al, 0x35
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x14
jge 0x1400f8ca7
jmp 0x1400f8730
lea rdx, [rbp - 0x21]
call fcn.1400f9140
mov r9, rax
cmp byte [rax + 0x13], 0
je 0x1400f8edc
cmp dword [0x140152090], 2
jge 0x1400f8cd1
mov r8, r9
nop word [rax + rax]
mov eax, 0x29e4129f
mul esi
mov eax, esi
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, sil
sub al, cl
add al, 0x35
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x14
jge 0x1400f8edc
jmp 0x1400f8790
lea rdx, [rbp - 0x21]
call fcn.1400f9140
mov r9, rax
cmp byte [rax + 0x13], sil
je 0x1400f9111
cmp dword [0x140152090], 2
jge 0x1400f8f06
mov r8, r9
nop word [rax + rax]
mov eax, 0x29e4129f
mul esi
mov eax, esi
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, sil
sub al, cl
add al, 0x35
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x14
jge 0x1400f9111
jmp 0x1400f87f0
lea rdx, [rbp - 0x21]
call fcn.1400f9140
mov r9, rax
cmp byte [rax + 0x13], sil
je 0x1400f8a8e
cmp dword [0x140152090], 2
jl 0x1400f8a54
movdqa xmm5, xmmword [0x140138ff0]
movdqa xmm6, xmmword [str.7777]
movdqa xmm3, xmmword [0x140138f00]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movdqa xmm4, xmmword [0x140138fb0]
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
mov eax, dword [0x140139010]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [r9]
xorps xmm3, xmm0
movd dword [r9], xmm3
movdqa xmm2, xmmword [0x140138f30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm5
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm4
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r9 + 4]
xorps xmm2, xmm0
movd dword [r9 + 4], xmm2
movdqa xmm3, xmmword [0x140138f60]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [r9 + 8]
xorps xmm3, xmm0
movd dword [r9 + 8], xmm3
movdqa xmm2, xmmword [0x140138f70]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm5
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm4
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r9 + 0xc]
xorps xmm2, xmm0
movd dword [r9 + 0xc], xmm2
movdqa xmm3, xmmword [0x140138f80]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [r9 + 0x10]
xorps xmm3, xmm0
movd dword [r9 + 0x10], xmm3
jmp 0x1400f8a8e
mov r8, r9
nop word [rax + rax]
mov eax, 0x29e4129f
mul esi
mov eax, esi
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x37
movzx eax, sil
sub al, cl
add al, 0x35
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x14
jl 0x1400f8a60
mov rdx, r9
lea rcx, [rbp - 0x49]
call fcn.140079ed0
nop
mov rdx, rax
lea rcx, [rbp - 0x69]
call fcn.140078450
lea rdx, [0x14014e018]
lea rcx, [rbp - 0x69]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
movdqa xmm5, xmmword [0x140138ff0]
movdqa xmm6, xmmword [str.7777]
movdqa xmm7, xmmword [0x140139010]
movdqa xmm2, xmmword [0x140138f00]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm5
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
movdqa xmm4, xmmword [0x140138fb0]
andps xmm2, xmm4
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm7
movd xmm0, dword [rax]
xorps xmm2, xmm0
movd dword [rax], xmm2
movdqa xmm3, xmmword [0x140138f30]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm7
movd xmm0, dword [rax + 4]
xorps xmm3, xmm0
movd dword [rax + 4], xmm3
movdqa xmm2, xmmword [0x140138f60]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm5
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm4
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm7
movd xmm0, dword [rax + 8]
xorps xmm2, xmm0
movd dword [rax + 8], xmm2
movdqa xmm3, xmmword [0x140138f70]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm7
movd xmm0, dword [rax + 0xc]
xorps xmm3, xmm0
movd dword [rax + 0xc], xmm3
movdqa xmm2, xmmword [0x140138f80]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm5
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm4
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm7
movd xmm0, dword [rax + 0x10]
xorps xmm2, xmm0
movd dword [rax + 0x10], xmm2
mov rdx, r9
lea rcx, [rbp - 0x49]
call fcn.140079ed0
nop
mov rdx, rax
lea rcx, [rbp - 0x69]
call fcn.140078450
lea rdx, [0x14014e018]
lea rcx, [rbp - 0x69]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
movdqa xmm5, xmmword [0x140138ff0]
movdqa xmm6, xmmword [str.7777]
movdqa xmm3, xmmword [0x140138f00]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movdqa xmm4, xmmword [0x140138fb0]
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
mov eax, dword [0x140139010]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [r9]
xorps xmm3, xmm0
movd dword [r9], xmm3
movdqa xmm2, xmmword [0x140138f30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm5
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm4
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r9 + 4]
xorps xmm2, xmm0
movd dword [r9 + 4], xmm2
movdqa xmm3, xmmword [0x140138f60]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [r9 + 8]
xorps xmm3, xmm0
movd dword [r9 + 8], xmm3
movdqa xmm2, xmmword [0x140138f70]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm5
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm4
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r9 + 0xc]
xorps xmm2, xmm0
movd dword [r9 + 0xc], xmm2
movdqa xmm3, xmmword [0x140138f80]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [r9 + 0x10]
xorps xmm3, xmm0
movd dword [r9 + 0x10], xmm3
mov rdx, r9
lea rcx, [rbp - 0x49]
call fcn.140079ed0
nop
mov rdx, rax
lea rcx, [rbp - 0x69]
call fcn.140078450
lea rdx, [0x14014e018]
lea rcx, [rbp - 0x69]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
movdqa xmm5, xmmword [0x140138ff0]
movdqa xmm6, xmmword [str.7777]
movdqa xmm3, xmmword [0x140138f00]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
movdqa xmm4, xmmword [0x140138fb0]
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
mov eax, dword [0x140139010]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [r9]
xorps xmm3, xmm0
movd dword [r9], xmm3
movdqa xmm2, xmmword [0x140138f30]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm5
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm4
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r9 + 4]
xorps xmm2, xmm0
movd dword [r9 + 4], xmm2
movdqa xmm3, xmmword [0x140138f60]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [r9 + 8]
xorps xmm3, xmm0
movd dword [r9 + 8], xmm3
movdqa xmm2, xmmword [0x140138f70]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm5
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm4
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm0, dword [r9 + 0xc]
xorps xmm2, xmm0
movd dword [r9 + 0xc], xmm2
movdqa xmm3, xmmword [0x140138f80]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm5
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm5
shufps xmm1, xmm0, 0xdd
psrad xmm1, 1
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [r9 + 0x10]
xorps xmm3, xmm0
movd dword [r9 + 0x10], xmm3
mov rdx, r9
lea rcx, [rbp - 0x49]
call fcn.140079ed0
nop
mov rdx, rax
lea rcx, [rbp - 0x69]
call fcn.140078450
lea rdx, [0x14014e018]
lea rcx, [rbp - 0x69]
call sub.VCRUNTIME140.dll__CxxThrowException
int3