Function at 0x180008ec0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
push rsi
push rdi
push r14
sub rsp, 0x130
mov rax, qword [0x180063080]
xor rax, rsp
mov qword [rsp + 0x120], rax
mov rbx, r8
mov edi, 4
mov dword [r8 + 0x3c], edi
lea r8, [rsp + 0x20]
call fcn.180008bb0
mov eax, dword [rsp + 0xc0]
lea r14, [rbx + 0x58]
mov dword [rbx + 0x40], eax
lea esi, [rdi + 0xc]
mov eax, dword [rsp + 0xc4]
mov ebp, 0x28
mov dword [rbx + 0x44], eax
mov eax, dword [rsp + 0xc8]
mov dword [rbx + 0x48], eax
mov eax, dword [rsp + 0xcc]
mov dword [rbx + 0x4c], eax
mov eax, ebp
mov r11d, esi
sub eax, edi
sub r11d, edi
mov r9d, dword [rsp + rax*4 + 0x20]
mov eax, r9d
shr eax, 7
and eax, 0x1010101
imul r10d, eax, 0x1b
mov eax, r9d
and eax, 0xff7f7f7f
add eax, eax
xor r10d, eax
mov eax, r10d
shr eax, 7
and eax, 0x1010101
imul r8d, eax, 0x1b
mov eax, r10d
and eax, 0xff7f7f7f
add eax, eax
xor r8d, eax
mov eax, r8d
shr eax, 7
and eax, 0x1010101
imul edx, eax, 0x1b
mov eax, r8d
and eax, 0xff7f7f7f
add eax, eax
xor edx, eax
xor r9d, edx
mov ecx, r9d
mov eax, r9d
xor eax, r10d
ror r9d, 0x18
ror eax, 8
xor ecx, r8d
ror ecx, 0x10
xor ecx, eax
lea eax, [r11 + 0x19]
xor ecx, r9d
mov r9d, dword [rsp + rax*4 + 0x20]
xor ecx, edx
xor ecx, r8d
mov eax, r9d
shr eax, 7
xor ecx, r10d
and eax, 0x1010101
mov dword [r14 - 8], ecx
imul r10d, eax, 0x1b
mov eax, r9d
and eax, 0xff7f7f7f
add eax, eax
xor r10d, eax
mov eax, r10d
shr eax, 7
and eax, 0x1010101
imul r8d, eax, 0x1b
mov eax, r10d
and eax, 0xff7f7f7f
add eax, eax
xor r8d, eax
mov eax, r8d
shr eax, 7
and eax, 0x1010101
imul edx, eax, 0x1b
mov eax, r8d
and eax, 0xff7f7f7f
add eax, eax
xor edx, eax
xor r9d, edx
mov ecx, r9d
mov eax, r9d
xor ecx, r8d
ror r9d, 0x18
ror ecx, 0x10
xor eax, r10d
ror eax, 8
xor ecx, eax
xor ecx, r9d
xor ecx, edx
xor ecx, r8d
xor ecx, r10d
lea eax, [r11 + 0x1a]
mov r9d, dword [rsp + rax*4 + 0x20]
mov eax, r9d
shr eax, 7
and eax, 0x1010101
mov dword [r14 - 4], ecx
imul r10d, eax, 0x1b
mov eax, r9d
and eax, 0xff7f7f7f
add eax, eax
xor r10d, eax
mov eax, r10d
shr eax, 7
and eax, 0x1010101
imul r8d, eax, 0x1b
mov eax, r10d
and eax, 0xff7f7f7f
add eax, eax
xor r8d, eax
mov eax, r8d
shr eax, 7
and eax, 0x1010101
imul edx, eax, 0x1b
mov eax, r8d
and eax, 0xff7f7f7f
add eax, eax
xor edx, eax
xor r9d, edx
mov ecx, r9d
mov eax, r9d
xor eax, r10d
ror r9d, 0x18
ror eax, 8
xor ecx, r8d
ror ecx, 0x10
xor ecx, eax
lea eax, [r11 + 0x1b]
xor ecx, r9d
mov r9d, dword [rsp + rax*4 + 0x20]
xor ecx, edx
xor ecx, r8d
mov eax, r9d
shr eax, 7
xor ecx, r10d
and eax, 0x1010101
mov dword [r14], ecx
imul r10d, eax, 0x1b
mov eax, r9d
and eax, 0xff7f7f7f
add eax, eax
xor r10d, eax
mov eax, r10d
shr eax, 7
and eax, 0x1010101
imul r8d, eax, 0x1b
mov eax, r10d
and eax, 0xff7f7f7f
add eax, eax
xor r8d, eax
mov eax, r8d
shr eax, 7
and eax, 0x1010101
imul edx, eax, 0x1b
mov eax, r8d
and eax, 0xff7f7f7f
add eax, eax
xor edx, eax
xor r9d, edx
mov ecx, r9d
mov eax, r9d
xor ecx, r8d
ror r9d, 0x18
ror ecx, 0x10
xor eax, r10d
ror eax, 8
xor ecx, eax
xor ecx, r9d
xor ecx, edx
xor ecx, r8d
xor ecx, r10d
add edi, 4
mov dword [r14 + 4], ecx
lea r14, [r14 + 0x10]
cmp edi, ebp
jb 0x180008f31
sub esi, edi
lea ecx, [rdi + 1]
sub ebp, edi
mov eax, dword [rsp + rbp*4 + 0x20]
mov dword [rbx + rdi*4 + 0x40], eax
lea eax, [rsi + 0x19]
mov eax, dword [rsp + rax*4 + 0x20]
mov dword [rbx + rcx*4 + 0x40], eax
lea ecx, [rdi + 2]
lea eax, [rsi + 0x1a]
mov eax, dword [rsp + rax*4 + 0x20]
mov dword [rbx + rcx*4 + 0x40], eax
lea eax, [rsi + 0x1b]
lea ecx, [rdi + 3]
mov eax, dword [rsp + rax*4 + 0x20]
mov dword [rbx + rcx*4 + 0x40], eax
xor eax, eax
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.1800205b0
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret