Function at 0x140108804
Capabilities:
Encode data using xor

Disassembly:
test r8, r8
je 0x140108b9b
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xc0
mov rax, qword [0x1405fa008]
xor rax, rsp
mov qword [rbp + 0xf], rax
mov r12d, dword [rbp + 0x77]
mov r13, rcx
mov rcx, qword [rbp + 0x7f]
mov r14, r8
mov qword [rsp + 8], rdx
mov esi, r12d
mov r15, r8
not esi
mov al, byte [r8 + r13 - 1]
mov byte [rcx], al
and r14d, 7
jne 0x140108866
xor eax, eax
jmp 0x140108a26
movzx ebx, r9w
mov r8, r9
shr r8, 0x20
mov rax, r9
shr rax, 0x10
mov edi, r8d
movzx r11d, ax
mov ecx, r12d
sub ecx, r8d
movzx r10d, r8w
ror ecx, 0xb
mov eax, r12d
imul ecx, r11d
ror eax, 0xa
mov qword [rbp - 0x21], r9
mov qword [rsp + 0x28], r9
mov qword [rbp - 1], r9
xor ecx, eax
mov qword [rbp - 0x71], r9
xor esi, ecx
mov qword [rbp - 0x31], r9
sub edi, esi
mov qword [rbp - 0x61], r9
ror edi, 4
mov eax, esi
ror eax, 0xe
mov ecx, r11d
imul edi, ebx
mov qword [rbp - 0x11], r9
mov qword [rbp - 0x51], r9
mov qword [rsp + 0x18], r9
mov qword [rbp - 0x41], r9
add edi, eax
mov qword [rsp + 0x20], r9
xor edi, r12d
mov qword [rbp - 0x79], r9
xor ecx, edi
mov qword [rbp - 0x69], r9
rol ecx, 3
mov rax, r9
shr rax, 0x30
imul ecx, eax
mov edx, eax
mov eax, edi
mov qword [rbp - 0x59], r9
ror eax, 9
mov qword [rbp - 0x49], r9
mov qword [rbp - 0x39], r9
xor ecx, eax
xor esi, ecx
mov ecx, r9d
xor ecx, esi
mov eax, esi
ror ecx, 3
imul ecx, r10d
ror eax, 0x17
add ecx, eax
xor edi, ecx
xor r8d, edi
mov eax, edi
shr eax, 6
rol r8d, 1
imul r8d, r11d
sub r8d, eax
mov eax, r11d
xor esi, r8d
xor eax, esi
mov ecx, esi
ror ecx, 0xf
imul eax, ebx
xor ecx, eax
xor edi, ecx
mov ecx, r9d
xor ecx, edi
mov eax, edi
ror ecx, 0x1f
imul ecx, edx
ror eax, 1
xor ecx, eax
xor esi, ecx
mov ecx, esi
and qword [rsp + 0x10], 0
lea r8, [rsp + 0x10]
sub ecx, edx
mov qword [rbp - 0x29], r9
imul ecx, r10d
mov eax, esi
shr eax, 6
mov rdx, r14
mov qword [rbp - 0x19], r9
mov qword [rbp - 9], r9
mov qword [rbp + 7], r9
sub ecx, eax
xor edi, ecx
mov ecx, r10d
xor ecx, edi
mov eax, edi
imul ecx, r11d
shr eax, 9
xor ecx, eax
xor esi, ecx
mov rcx, r13
xor r10d, esi
mov dword [rsp], esi
rol r10d, 4
imul r10d, ebx
shr esi, 6
add r10d, esi
xor edi, r10d
mov dword [rsp + 4], edi
sub r8, r13
mov al, byte [rcx]
mov byte [r8 + rcx], al
inc rcx
sub rdx, 1
jne 0x1401089bc
mov ecx, dword [rsp + 0x14]
xor dword [rsp + 4], ecx
lea ecx, [rdx + 8]
mov rax, qword [rsp + 0x10]
lea rdx, [rsp]
xor dword [rsp], eax
lea rdx, [rdx + r14]
sub rcx, r14
je 0x1401089f7
mov byte [rdx], 0
inc rdx
sub rcx, 1
jne 0x1401089eb
mov r10, qword [rsp + 8]
lea rcx, [rsp]
sub r10, rcx
lea rdx, [rsp]
mov r8, r14
mov cl, byte [rdx]
mov byte [r10 + rdx], cl
inc rdx
sub r8, 1
jne 0x140108a0a
mov r12d, dword [rsp + 4]
mov esi, dword [rsp]
mov rdx, qword [rsp + 8]
shr r15, 3
lea rcx, [r14 + rdx]
mov qword [rsp + 8], rcx
test r15, r15
je 0x140108b75
mov rdi, r9
movzx r8d, r9w
mov rbx, r9
shr rdi, 0x30
mov r14, r9
shr rbx, 0x20
shr r14, 0x10
sub r13, rdx
mov dword [rsp], r8d
xor esi, dword [r13 + rcx]
mov rcx, qword [r13 + rcx]
shr rcx, 0x20
xor r12d, ecx
movzx r11d, r14w
mov ecx, esi
movzx r10d, bx
shr ecx, 6
mov edx, r10d
xor edx, esi
rol edx, 4
imul edx, r8d
mov r8d, dword [rsp]
add edx, ecx
xor r12d, edx
mov edx, r10d
xor edx, r12d
mov ecx, r12d
imul edx, r11d
shr ecx, 9
xor edx, ecx
xor esi, edx
mov edx, esi
mov ecx, esi
sub edx, edi
shr ecx, 6
imul edx, r10d
sub edx, ecx
xor r12d, edx
mov edx, r9d
xor edx, r12d
mov ecx, r12d
ror edx, 0x1f
imul edx, edi
ror ecx, 1
xor edx, ecx
mov ecx, r11d
xor esi, edx
xor ecx, esi
mov edx, esi
imul ecx, dword [rsp]
ror edx, 0xf
xor edx, ecx
xor r12d, edx
mov edx, ebx
xor edx, r12d
mov ecx, r12d
rol edx, 1
imul edx, r11d
shr ecx, 6
sub edx, ecx
xor esi, edx
mov edx, r9d
xor edx, esi
mov ecx, esi
ror edx, 3
imul edx, r10d
ror ecx, 0x17
add edx, ecx
xor r12d, edx
mov edx, r11d
xor edx, r12d
mov ecx, r12d
rol edx, 3
imul edx, edi
ror ecx, 9
xor edx, ecx
xor esi, edx
mov edx, ebx
sub edx, esi
mov ecx, esi
ror edx, 4
imul edx, r8d
ror ecx, 0xe
add edx, ecx
xor r12d, edx
mov edx, r12d
mov ecx, r12d
sub edx, ebx
ror edx, 0xb
imul edx, r11d
ror ecx, 0xa
xor edx, ecx
mov rcx, qword [rsp + 8]
xor edx, eax
shr rax, 0x20
xor r12d, eax
xor esi, edx
mov rax, qword [r13 + rcx]
mov dword [rcx], esi
mov dword [rcx + 4], r12d
add rcx, 8
mov qword [rsp + 8], rcx
sub r15, 1
jne 0x140108a5c
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.14001af10
mov rbx, qword [rsp + 0x100]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret