Function at 0x140008870
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0x100
mov rax, qword [0x140090080]
xor rax, rsp
mov qword [rbp + 0x47], rax
lea rcx, [0x140091040]
call fcn.14001a810
xor esi, esi
cmp byte [0x140091250], sil
jne 0x1400089fa
call fcn.140002f20
movdqa xmm0, xmmword [0x1400844a0]
xor ecx, ecx
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x29], cl
mov r8d, esi
nop
movsxd rdx, r8d
lea ecx, [r8 + 0x4f]
inc r8d
xor byte [rbp + rdx - 0x39], cl
cmp r8d, 0x10
jb 0x1400088d0
mov rdx, rax
mov byte [rbp - 0x29], sil
lea rcx, [rbp - 0x39]
call fcn.14000b430
xor eax, eax
mov dword [rbp - 0x21], 0x2630241c
mov byte [rbp - 0x19], al
mov r8d, esi
mov dword [rbp - 0x1d], 0x766f2726
nop word [rax + rax]
movsxd rdx, r8d
lea eax, [r8 + 0x4f]
inc r8d
xor byte [rbp + rdx - 0x21], al
cmp r8d, 8
jb 0x140008910
mov rcx, qword [0x140075460]
lea rdx, [rbp - 0x21]
mov byte [rbp - 0x19], sil
call fcn.14000bf00
cmp qword [0x140091270], 0x10
lea rdx, [0x140091258]
mov r8, qword [0x140091268]
mov rcx, rax
cmovae rdx, qword [0x140091258]
call fcn.14000dcd0
lea rdx, [0x14000c0d0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
movdqa xmm0, xmmword [0x140084540]
xor eax, eax
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x29], al
mov edx, esi
mov qword [rbp - 0x41], 0xffffffffff1b1e40
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 0x39], al
cmp edx, 0x10
jb 0x140008990
lea r8, [rbp - 0x41]
mov byte [rbp - 0x29], sil
lea rcx, [rbp - 0x39]
call fcn.14000ba40
movdqa xmm0, xmmword [0x140084620]
xor eax, eax
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x27], al
mov edx, esi
mov word [rbp - 0x29], 0x132c
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 0x39], al
cmp edx, 0x12
jb 0x1400089d0
lea rcx, [rbp - 0x39]
mov byte [rbp - 0x27], sil
call fcn.140009cd0
test eax, eax
jns 0x1400089fa
mov byte [0], sil
movdqa xmm0, xmmword [0x140084440]
xor eax, eax
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x29], al
mov edx, esi
mov qword [rbp - 0x41], rsi
nop dword [rax]
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 0x39], al
cmp edx, 0x10
jb 0x140008a20
lea rdx, [rbp - 0x41]
mov byte [rbp - 0x29], sil
lea rcx, [rbp - 0x39]
call fcn.14000ca50
movdqa xmm0, xmmword [0x140084550]
xor eax, eax
movdqu xmmword [rbp - 9], xmm0
mov byte [rbp + 0xd], al
mov edx, esi
mov dword [rbp + 7], 0x713080b
mov word [rbp + 0xb], 2
nop dword [rax]
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 9], al
cmp edx, 0x16
jb 0x140008a70
mov rdx, qword [rbp - 0x41]
lea rcx, [rbp - 9]
mov byte [rbp + 0xd], sil
call fcn.14000cda0
mov rdi, qword [rbp - 0x41]
test rdi, rdi
jne 0x140008b8a
xor eax, eax
mov dword [rbp - 0x21], 0x3d23220a
mov byte [rbp - 0x19], al
mov r8d, esi
mov dword [rbp - 0x1d], 0x64767421
nop word [rax + rax]
movsxd rdx, r8d
lea eax, [r8 + 0x4f]
inc r8d
xor byte [rbp + rdx - 0x21], al
cmp r8d, 8
jb 0x140008ac0
mov rcx, qword [0x140075460]
lea rdx, [rbp - 0x21]
mov byte [rbp - 0x19], sil
call fcn.14000bf00
lea rdx, [0x14000c0d0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
movdqa xmm0, xmmword [0x140084540]
xor eax, eax
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x29], al
mov edx, esi
mov qword [rbp - 0x11], 0xffffffffff1b1e40
nop dword [rax]
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 0x39], al
cmp edx, 0x10
jb 0x140008b20
lea r8, [rbp - 0x11]
mov byte [rbp - 0x29], sil
lea rcx, [rbp - 0x39]
call fcn.14000ba40
movdqa xmm0, xmmword [0x140084620]
xor eax, eax
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x27], al
mov edx, esi
mov word [rbp - 0x29], 0x132c
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 0x39], al
cmp edx, 0x12
jb 0x140008b60
lea rcx, [rbp - 0x39]
mov byte [rbp - 0x27], sil
call fcn.140009cd0
test eax, eax
jns 0x140008b8a
mov byte [0], sil
mov rcx, qword [0x140075460]
lea rdx, str.Success
call fcn.14000bf00
lea rdx, [0x14000c0d0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
call fcn.1400062a0
nop dword [rax]
nop word [rax + rax]
movdqa xmm0, xmmword [0x140084390]
mov edx, esi
movdqu xmmword [rbp - 0x21], xmm0
nop
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 0x21], al
cmp edx, 0xf
jb 0x140008bd0
mov rdx, 0xffffffffffffffff
mov byte [rbp - 0x12], sil
lea rcx, [rbp - 0x21]
call fcn.14000a600
movdqa xmm0, xmmword [0x1400845d0]
xor eax, eax
movdqu xmmword [rbp + 0xf], xmm0
mov byte [rbp + 0x27], al
mov edx, esi
mov byte [rbp - 0x49], sil
mov qword [rbp - 0x21], rsi
mov dword [rbp + 0x1f], 0xa350e30
mov dword [rbp + 0x23], 0x2040111
nop
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx + 0xf], al
cmp edx, 0x18
jb 0x140008c20
lea rax, [rbp - 0x21]
mov byte [rbp + 0x27], sil
lea r9, [rbp - 0x49]
mov qword [rsp + 0x28], rax
mov rdx, rdi
lea rcx, [rbp + 0xf]
call fcn.14000c730
cmp byte [rbp - 0x49], sil
je 0x140008c9a
movdqa xmm0, xmmword [0x140084620]
xor eax, eax
movdqu xmmword [rbp + 0x2f], xmm0
mov byte [rbp + 0x41], al
mov edx, esi
mov word [rbp + 0x3f], 0x132c
nop
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx + 0x2f], al
cmp edx, 0x12
jb 0x140008c70
lea rcx, [rbp + 0x2f]
mov byte [rbp + 0x41], sil
call fcn.140009cd0
test eax, eax
jns 0x140008c9a
mov byte [0], sil
mov dword [rbp - 0x11], 0x34233118
mov edx, esi
mov dword [rbp - 0xd], 0x303732
nop word [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 0x11], al
cmp edx, 7
jb 0x140008cb0
mov byte [rbp - 0xa], sil
mov edx, esi
mov dword [rbp - 0x39], 0x1728222c
mov dword [rbp - 0x35], 0x181c131d
mov word [rbp - 0x31], reloc.WS2_32.dll_select
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 0x39], al
cmp edx, 9
jb 0x140008ce0
lea rdx, [rbp - 0x11]
mov byte [rbp - 0x30], sil
lea rcx, [rbp - 0x39]
call qword [sym.imp.USER32.dll_FindWindowA]
mov rcx, rax
xor edx, edx
mov rbx, rax
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
test rbx, rbx
je 0x140008d1e
test eax, eax
jne 0x140008bc0
movdqa xmm0, xmmword [0x140084620]
xor eax, eax
movdqu xmmword [rbp - 9], xmm0
mov byte [rbp + 9], al
mov edx, esi
mov word [rbp + 7], 0x132c
nop dword [rax + rax]
movsxd rcx, edx
lea eax, [rdx + 0x4f]
inc edx
xor byte [rbp + rcx - 9], al
cmp edx, 0x12
jb 0x140008d40
lea rcx, [rbp - 9]
mov byte [rbp + 9], sil
call fcn.140009cd0
test eax, eax
jns 0x140008bc0
mov byte [0], sil
jmp 0x140008bc0