Function at 0x140008610
Capabilities:
Encode data using xor

Disassembly:
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0x90
movaps xmmword [rsp + 0x80], xmm6
mov rax, qword [0x140043040]
xor rax, rsp
mov qword [rbp + 0x3f], rax
lea rdx, str._________________________________________________________________________n_________________________________________________________________n______________________________________________________________n_________________________________________________n____________________________________________________n___________.____________________________________n________________________________________________________________________n____________________________________________________________________n_n_____n_t_t_t
call fcn.14000b100
lea rcx, [0x140087aa0]
call fcn.1400090b0
call fcn.140007d50
lea rcx, [0x140087aa0]
call fcn.1400090b0
mov ecx, 0x74
xor edx, edx
call fcn.140001150
mov ecx, 0x65
mov word [rbp + 0x17], ax
mov edx, 1
call fcn.140001150
mov ecx, 0x73
mov word [rbp + 0x19], ax
mov edx, 2
call fcn.140001150
mov ecx, 0x74
mov word [rbp + 0x1b], ax
mov edx, 3
call fcn.140001150
mov ecx, 0x2e
mov word [rbp + 0x1d], ax
mov edx, 4
call fcn.140001150
mov ecx, 0x64
mov word [rbp + 0x1f], ax
mov edx, 5
call fcn.140001150
mov ecx, 0x6c
mov word [rbp + 0x21], ax
mov edx, 6
call fcn.140001150
mov edx, 7
mov word [rbp + 0x23], ax
call fcn.140001150
xor ecx, ecx
mov word [rbp + 0x25], ax
mov edx, 8
call fcn.140001150
movzx ecx, word [0x14003d762]
mov edx, 9
mov word [rbp + 0x27], ax
call fcn.140001150
movzx ecx, word [0x14003d764]
mov edx, 0xa
mov word [rbp + 0x29], ax
call fcn.140001150
movzx ecx, word [0x14003d766]
mov edx, 0xb
mov word [rbp + 0x2b], ax
call fcn.140001150
movzx ecx, word [str.invalid_string_position]
mov edx, 0xc
mov word [rbp + 0x2d], ax
call fcn.140001150
movzx ecx, word [0x14003d76a]
mov edx, 0xd
mov word [rbp + 0x2f], ax
call fcn.140001150
movzx ecx, word [0x14003d76c]
mov edx, 0xe
mov word [rbp + 0x31], ax
call fcn.140001150
movzx ecx, word [0x14003d76e]
mov edx, 0xf
mov word [rbp + 0x33], ax
call fcn.140001150
movzx ecx, word [0x14003d770]
mov edx, 0x10
mov word [rbp + 0x35], ax
call fcn.140001150
movdqa xmm6, xmmword [0x14003d7d0]
movdqa xmm5, xmmword [0x14003d7f0]
mov word [rbp + 0x37], ax
xor eax, eax
mov word [rbp + 0x39], ax
xor r11d, r11d
nop
movsxd r10, eax
lea ecx, [rax + 7]
lea edx, [rax + 6]
movd xmm0, eax
pshufd xmm0, xmm0, 0
lea r8d, [rax + 5]
paddd xmm0, xmm6
lea r9d, [rax + 4]
pshufhw xmm0, xmm0, 0xd8
movq xmm2, xmm5
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp + r10*2 + 0x17]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm1, ecx
xorps xmm3, xmm0
movd xmm2, edx
movq qword [rbp + r10*2 + 0x17], xmm3
lea ecx, [rax + 0xb]
punpckldq xmm2, xmm1
lea edx, [rax + 0xa]
movd xmm0, r8d
lea r8d, [rax + 9]
movd xmm3, r9d
lea r9d, [rax + 8]
punpckldq xmm3, xmm0
punpcklqdq xmm3, xmm2
movq xmm2, xmm5
pshufhw xmm0, xmm3, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp + r10*2 + 0x1f]
pshufd xmm4, xmm1, 0xd8
paddw xmm4, xmm2
movd xmm1, ecx
xorps xmm4, xmm0
movd xmm2, edx
movq qword [rbp + r10*2 + 0x1f], xmm4
lea ecx, [rax + 0xf]
punpckldq xmm2, xmm1
lea edx, [rax + 0xe]
movd xmm0, r8d
lea r8d, [rax + 0xd]
movd xmm3, r9d
lea r9d, [rax + 0xc]
punpckldq xmm3, xmm0
add eax, 0x10
punpcklqdq xmm3, xmm2
movq xmm2, xmm5
pshufhw xmm0, xmm3, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp + r10*2 + 0x27]
pshufd xmm4, xmm1, 0xd8
movd xmm1, ecx
paddw xmm4, xmm2
movd xmm2, edx
xorps xmm4, xmm0
movq qword [rbp + r10*2 + 0x27], xmm4
punpckldq xmm2, xmm1
movd xmm0, r8d
movd xmm3, r9d
punpckldq xmm3, xmm0
punpcklqdq xmm3, xmm2
movq xmm2, xmm5
pshufhw xmm0, xmm3, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp + r10*2 + 0x2f]
pshufd xmm4, xmm1, 0xd8
paddw xmm4, xmm2
xorps xmm4, xmm0
movq qword [rbp + r10*2 + 0x2f], xmm4
cmp eax, 0x10
jb 0x1400087c0
cmp eax, 0x11
jae 0x14000892a
mov r9d, 0x133
nop dword [rax + rax]
movsxd rcx, eax
lea r8, [rbp + 0x17]
lea r8, [r8 + rcx*2]
lea ecx, [r9 + rax]
inc eax
xor word [r8], cx
cmp eax, 0x11
jb 0x140008910
xor edx, edx
mov word [rbp + 0x39], r11w
mov cl, 0x43
call fcn.1400022d0
mov edx, 1
mov byte [rbp - 9], al
mov cl, 0x61
call fcn.1400022d0
mov edx, 2
mov byte [rbp - 8], al
mov cl, 0x6c
call fcn.1400022d0
mov edx, 3
mov byte [rbp - 7], al
call fcn.1400022d0
mov edx, 4
mov byte [rbp - 6], al
mov cl, 0x20
call fcn.1400022d0
mov edx, 5
mov byte [rbp - 5], al
mov cl, 0x6f
call fcn.1400022d0
mov edx, 6
mov byte [rbp - 4], al
mov cl, 0x66
call fcn.1400022d0
mov edx, 7
mov byte [rbp - 3], al
mov cl, 0x20
call fcn.1400022d0
mov edx, 8
mov byte [rbp - 2], al
mov cl, 0x44
call fcn.1400022d0
mov edx, 9
mov byte [rbp - 1], al
mov cl, 0x75
call fcn.1400022d0
mov edx, 0xa
mov byte [rbp], al
mov cl, 0x74
call fcn.1400022d0
mov edx, 0xb
mov byte [rbp + 1], al
mov cl, 0x79
call fcn.1400022d0
mov edx, 0xc
mov byte [rbp + 2], al
mov cl, 0xae
call fcn.1400022d0
mov edx, 0xd
mov byte [rbp + 3], al
mov cl, 0x3a
call fcn.1400022d0
mov edx, 0xe
mov byte [rbp + 4], al
mov cl, 0x20
call fcn.1400022d0
mov edx, 0xf
mov byte [rbp + 5], al
mov cl, 0x4d
call fcn.1400022d0
mov edx, 0x10
mov byte [rbp + 6], al
mov cl, 0x6f
call fcn.1400022d0
mov edx, 0x11
mov byte [rbp + 7], al
mov cl, 0x64
call fcn.1400022d0
mov edx, 0x12
mov byte [rbp + 8], al
mov cl, 0x65
call fcn.1400022d0
mov edx, 0x13
mov byte [rbp + 9], al
mov cl, 0x72
call fcn.1400022d0
mov byte [rbp + 0xa], al
mov edx, 0x14
mov cl, 0x6e
call fcn.1400022d0
mov edx, 0x15
mov byte [rbp + 0xb], al
mov cl, 0x20
call fcn.1400022d0
mov edx, 0x16
mov byte [rbp + 0xc], al
mov cl, 0x57
call fcn.1400022d0
mov edx, 0x17
mov byte [rbp + 0xd], al
mov cl, 0x61
call fcn.1400022d0
mov edx, 0x18
mov byte [rbp + 0xe], al
mov cl, 0x72
call fcn.1400022d0
mov edx, 0x19
mov byte [rbp + 0xf], al
mov cl, 0x66
call fcn.1400022d0
mov edx, 0x1a
mov byte [rbp + 0x10], al
mov cl, 0x61
call fcn.1400022d0
mov edx, 0x1b
mov byte [rbp + 0x11], al
mov cl, 0x72
call fcn.1400022d0
mov edx, 0x1c
mov byte [rbp + 0x12], al
mov cl, 0x65
call fcn.1400022d0
mov edx, 0x1d
mov byte [rbp + 0x13], al
mov cl, 0xae
call fcn.1400022d0
movdqa xmm0, xmmword [0x14003d800]
movdqa xmm4, xmmword [0x14003d7e0]
mov byte [rbp + 0x14], al
xor eax, eax
movdqa xmmword [rbp - 0x19], xmm0
mov r10d, dword [rbp - 0x19]
mov byte [rbp + 0x15], al
nop word [rax + rax]
movsxd r9, r11d
lea eax, [r11 + 7]
lea ecx, [r11 + 6]
movd xmm1, r11d
pshufd xmm1, xmm1, 0
lea edx, [r11 + 5]
paddd xmm1, xmm6
movd xmm2, ecx
andps xmm1, xmm4
movd xmm0, r10d
packuswb xmm1, xmm1
lea r8d, [r11 + 4]
packuswb xmm1, xmm1
lea ecx, [r11 + 0xa]
paddb xmm1, xmm0
movd xmm3, r8d
movd xmm0, dword [rbp + r9 - 9]
lea r8d, [r11 + 8]
xorps xmm1, xmm0
movd xmm0, edx
punpckldq xmm3, xmm0
lea edx, [r11 + 9]
movd dword [rbp + r9 - 9], xmm1
movd xmm1, eax
lea eax, [r11 + 0xb]
punpckldq xmm2, xmm1
punpcklqdq xmm3, xmm2
andps xmm3, xmm4
movd xmm1, eax
packuswb xmm3, xmm3
lea eax, [r11 + 0xf]
packuswb xmm3, xmm3
movd xmm0, r10d
paddb xmm3, xmm0
movd xmm2, ecx
movd xmm0, dword [rbp + r9 - 5]
lea ecx, [r11 + 0xe]
xorps xmm3, xmm0
punpckldq xmm2, xmm1
movd dword [rbp + r9 - 5], xmm3
movd xmm0, edx
lea edx, [r11 + 0xd]
movd xmm3, r8d
lea r8d, [r11 + 0xc]
punpckldq xmm3, xmm0
add r11d, 0x10
punpcklqdq xmm3, xmm2
movd xmm0, r10d
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm1, eax
paddb xmm3, xmm0
movd xmm0, dword [rbp + r9 - 1]
movd xmm2, ecx
xorps xmm3, xmm0
movd dword [rbp + r9 - 1], xmm3
movd xmm0, edx
movd xmm3, r8d
punpckldq xmm3, xmm0
movd xmm0, r10d
punpckldq xmm2, xmm1
punpcklqdq xmm3, xmm2
andps xmm3, xmm4
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm0
movd xmm0, dword [rbp + r9 + 3]
xorps xmm3, xmm0
movd dword [rbp + r9 + 3], xmm3
cmp r11d, 0x10
jb 0x140008b10
cmp r11d, 0x1e
jae 0x140008c69
movsxd rax, r11d
lea rdx, [rbp - 9]
add rdx, rax
lea eax, [r11 + 0x13]
inc r11d
xor byte [rdx], al
cmp r11d, 0x1e
jb 0x140008c50
lea rdx, [rbp + 0x17]
mov byte [rbp + 0x15], 0
lea rcx, [rbp - 9]
call fcn.1400056b0
lea rcx, [0x140087aa0]
call fcn.1400090b0
xor ecx, ecx
call fcn.140015758
int3