Function at 0x18008e8b0
Capabilities:
Encode data using xor

Disassembly:
mov dword [rsp + 8], ecx
push rbx
push rbp
push rsi
push r12
push r13
push r15
sub rsp, 0x68
movsxd r15, dword [0x1805b11f0]
xor r12d, r12d
movaps xmmword [rsp + 0x50], xmm6
movabs rax, 0x50fac3a3e030a6e1
mov qword [rsp + 0xa8], r12
mov qword [0x1805dd278], rax
movaps xmmword [rsp + 0x40], xmm7
mov dword [rsp + 0xa8], r15d
mov rax, qword [rsp + 0xa8]
mov qword [0x180587120], rax
mov qword [rsp + 0x60], r14
mov dword [0x1805870f8], r12d
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0xa8], r12
mov dword [rsp + 0xa0], r12d
mov dword [rsp + 0xa0], r12d
mov r14d, dword [rax]
movabs rax, 0x1899f328b0e12848
mov qword [0x1805dd278], rax
mov dword [rsp + 0xa8], r14d
mov rax, qword [rsp + 0xa8]
mov qword [0x180587120], rax
mov eax, r12d
mov qword [rsp + 0xa8], r12
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0xa8]
mov qword [0x180587128], rax
mov eax, r12d
mov qword [rsp + 0xa8], r12
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0xa8]
mov qword [0x180587130], rax
mov eax, r12d
mov qword [rsp + 0xa8], r12
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0xa8]
mov qword [0x180587138], rax
mov dword [0x1805870f8], r12d
mov dword [rsp + 0xa0], r12d
mov dword [0x1805870e8], 4
call fcn.1801e4620
movzx ebp, byte [rsp + 0xa0]
movsd xmm7, qword [rax + 0x10]
movups xmm6, xmmword [rax]
test bpl, bpl
je 0x18008ea0b
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
xor bpl, bpl
lea rbx, [rax + 0x5dc]
jmp 0x18008ea13
mov rbx, qword [rsp + 0xa8]
movabs rax, 0x7239b21a38f536ba
mov qword [rsp + 0xa8], r12
mov qword [0x1805dd278], rax
mov dword [rsp + 0xa8], r14d
mov rax, qword [rsp + 0xa8]
mov qword [0x180587120], rax
mov qword [rsp + 0xb0], rdi
mov dword [0x1805870f8], r12d
mov dword [0x1805870e8], 1
call fcn.1801e4620
lea r13, [0x180000000]
cmp dword [rax], r12d
je 0x18008ecc6
mov esi, r12d
mov edi, r12d
nop word [rax + rax]
mov eax, esi
movsx ecx, byte [rax + r13 + 0x43c8f4]
call fcn.180370a88
add eax, edi
inc esi
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
cmp esi, 3
jb 0x18008ea80
lea eax, [rdi + rdi*8]
mov edx, r14d
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul ecx, ecx, 0x8001
call fcn.18008cef0
movsxd rdi, eax
movabs rsi, 0x7239b21a38f536ba
mov qword [rsp + 0xa8], r12
mov dword [rsp + 0xa8], edi
mov rcx, qword [rsp + 0xa8]
mov qword [0x180587120], rcx
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], rsi
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
je 0x18008ecd0
movabs rax, 0x49733e92263139d1
mov qword [rsp + 0xa8], r12
mov qword [0x1805dd278], rax
mov dword [rsp + 0xa8], edi
mov rax, qword [rsp + 0xa8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov ecx, edi
call fcn.180092020
mov qword [rsp + 0xa8], r12
movabs rax, 0x59bf8c3d52c92f66
mov qword [0x1805dd278], rax
mov dword [rsp + 0xa8], edi
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0xa8], r12
mov qword [0x180587120], rax
mov dword [rsp + 0xa8], 1
mov rax, qword [rsp + 0xa8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r12d
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0xa8], r12
movabs rax, 0x45f6d8eef34abef1
mov qword [0x1805dd278], rax
mov dword [rsp + 0xa8], edi
mov rax, qword [rsp + 0xa8]
mov qword [0x180587120], rax
mov qword [rsp + 0xa8], r12
mov dword [rsp + 0xa0], 0x3f000000
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0xa8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r12d
mov dword [0x1805870e8], 2
call fcn.1801e4620
movabs rax, 0x6b76dc1f3ae6e6a3
mov qword [rsp + 0xa8], r12
mov qword [0x1805dd278], rax
mov dword [rsp + 0xa8], edi
mov rax, qword [rsp + 0xa8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov qword [0x180587128], r12
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [r13 + r15*8 + 0x5ab3a0], rdi
mov byte [r15 + r13 + 0x5ab4a0], 1
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
cmp rax, rbx
ja 0x18008ecd5
nop
call qword [sym.imp.WINMM.dll_timeGetTime]
mov rcx, qword [0x1805b1c88]
mov dword [0x1805b1c90], eax
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
cmp rax, rbx
jbe 0x18008eca0
jmp 0x18008ecd5
movabs rsi, 0x7239b21a38f536ba
test bpl, bpl
je 0x18008ece5
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
xor bpl, bpl
lea rbx, [rax + 0x5dc]
mov qword [rsp + 0xa8], r12
mov dword [rsp + 0xa8], r14d
mov rax, qword [rsp + 0xa8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], rsi
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
je 0x18008ee28
movaps xmmword [rsp + 0x20], xmm6
mov esi, r12d
movsd qword [rsp + 0x30], xmm7
mov edi, r12d
nop dword [rax + rax]
mov eax, esi
movsx ecx, byte [rax + r13 + 0x43c8e0]
call fcn.180370a88
add eax, edi
inc esi
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
cmp esi, 0x11
jb 0x18008ed40
lea eax, [rdi + rdi*8]
mov ecx, eax
lea rdx, [rsp + 0x20]
shr ecx, 0xb
xor ecx, eax
imul ecx, ecx, 0x8001
call fcn.18008dc00
movsxd rdi, eax
movabs rax, 0x7239b21a38f536ba
mov qword [rsp + 0xa8], r12
mov dword [rsp + 0xa8], edi
mov rcx, qword [rsp + 0xa8]
mov qword [0x180587120], rcx
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], rax
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
je 0x18008ee16
mov qword [r13 + r15*8 + 0x5ab3a0], rdi
mov byte [r15 + r13 + 0x5ab4a0], 1
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
cmp rax, rbx
ja 0x18008ee1b
nop dword [rax]
call qword [sym.imp.WINMM.dll_timeGetTime]
mov rcx, qword [0x1805b1c88]
mov dword [0x1805b1c90], eax
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
cmp rax, rbx
jbe 0x18008edf0
jmp 0x18008ee1b
test bpl, bpl
je 0x18008ee28
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
lea rbx, [rax + 0x5dc]
mov qword [rsp + 0xa8], r12
movabs rbp, 0x7239b21a38f536ba
mov dword [rsp + 0xa8], r14d
mov rax, qword [rsp + 0xa8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], rbp
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov r14, qword [rsp + 0x60]
cmp dword [rax], r12d
je 0x18008ef54
movaps xmmword [rsp + 0x20], xmm6
mov esi, r12d
movsd qword [rsp + 0x30], xmm7
mov edi, r12d
nop dword [rax]
mov eax, esi
movsx ecx, byte [rax + r13 + 0x43c8f8]
call fcn.180370a88
add eax, edi
inc esi
imul edi, eax, 0x401
mov eax, edi
shr eax, 6
xor edi, eax
cmp esi, 0xf
jb 0x18008ee90
lea eax, [rdi + rdi*8]
mov ecx, eax
lea rdx, [rsp + 0x20]
shr ecx, 0xb
xor ecx, eax
imul ecx, ecx, 0x8001
call fcn.18008deb0
movsxd rdi, eax
mov qword [rsp + 0xa8], r12
mov dword [rsp + 0xa8], edi
mov rcx, qword [rsp + 0xa8]
mov qword [0x180587120], rcx
mov dword [0x1805870f8], r12d
mov qword [0x1805dd278], rbp
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r12d
je 0x18008ef54
mov qword [r13 + r15*8 + 0x5ab3a0], rdi
mov byte [r15 + r13 + 0x5ab4a0], 1
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
cmp rax, rbx
ja 0x18008ef54
nop
call qword [sym.imp.WINMM.dll_timeGetTime]
mov rcx, qword [0x1805b1c88]
mov dword [0x1805b1c90], eax
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
cmp rax, rbx
jbe 0x18008ef30
mov rdi, qword [rsp + 0xb0]
movaps xmm6, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x40]
add rsp, 0x68
pop r15
pop r13
pop r12
pop rsi
pop rbp
pop rbx
ret