Function at 0x140107348
Capabilities:
Encode data using xor

Disassembly:
test r8, r8
je 0x1401076d4
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 [0x1405f8008]
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 0x1401073aa
xor eax, eax
jmp 0x140107562
movzx r10d, r9w
mov rdi, r9
shr rdi, 0x20
mov rax, r9
shr rax, 0x10
mov ecx, edi
sub ecx, r12d
movzx r11d, ax
ror ecx, 3
mov eax, r12d
imul ecx, r11d
mov ebx, edi
ror eax, 0x16
movzx edx, di
mov qword [rbp - 0x21], r9
mov qword [rsp + 0x28], r9
add ecx, eax
mov qword [rbp - 1], r9
xor esi, ecx
mov qword [rbp - 0x71], r9
xor ebx, esi
mov qword [rbp - 0x31], r9
ror ebx, 0x10
mov eax, esi
ror eax, 0x10
imul ebx, r10d
mov qword [rbp - 0x61], r9
mov qword [rbp - 0x11], r9
mov qword [rbp - 0x51], r9
mov qword [rsp + 0x18], r9
xor ebx, eax
mov qword [rbp - 0x41], r9
xor ebx, r12d
mov qword [rsp + 0x20], r9
mov ecx, ebx
mov qword [rbp - 0x79], r9
sub ecx, r9d
mov qword [rbp - 0x69], r9
ror ecx, 0x14
mov rax, r9
shr rax, 0x30
imul ecx, eax
mov r8d, eax
mov eax, ebx
mov qword [rbp - 0x59], r9
ror eax, 0x16
mov qword [rbp - 0x49], r9
mov qword [rbp - 0x39], r9
sub ecx, eax
xor esi, ecx
mov ecx, edi
mov eax, esi
ror eax, 2
xor eax, edx
imul eax, r8d
xor ebx, eax
xor ecx, ebx
mov eax, ebx
ror ecx, 2
imul ecx, r11d
ror eax, 2
add ecx, eax
xor esi, ecx
mov eax, esi
ror eax, 0x1e
lea ecx, [rdi + rsi]
ror ecx, 0xc
imul ecx, r10d
add ecx, eax
xor ebx, ecx
mov ecx, ebx
mov eax, ebx
sub ecx, r9d
ror eax, 0xc
ror ecx, 6
imul ecx, r8d
xor ecx, eax
xor esi, ecx
mov ecx, r9d
sub ecx, esi
ror ecx, 0x11
and qword [rsp + 0x10], 0
mov eax, esi
ror eax, 5
imul ecx, edx
mov rdx, r14
mov qword [rbp - 0x29], r9
mov qword [rbp - 0x19], r9
mov qword [rbp - 9], r9
mov qword [rbp + 7], r9
xor ecx, eax
xor ebx, ecx
mov rcx, r13
xor r8d, ebx
mov eax, ebx
imul r8d, r11d
ror eax, 6
add eax, r8d
lea r8, [rsp + 0x10]
xor esi, eax
sub edi, esi
mov dword [rsp], esi
ror edi, 0xb
imul edi, r10d
ror esi, 0x15
sub edi, esi
xor ebx, edi
mov dword [rsp + 4], ebx
sub r8, r13
mov al, byte [rcx]
mov byte [r8 + rcx], al
inc rcx
sub rdx, 1
jne 0x1401074f8
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 0x140107533
mov byte [rdx], 0
inc rdx
sub rcx, 1
jne 0x140107527
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 0x140107546
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 0x1401076ae
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 edx, ebx
mov rcx, qword [r13 + rcx]
sub edx, esi
ror edx, 0xb
imul edx, r8d
shr rcx, 0x20
xor r12d, ecx
movzx r11d, r14w
mov ecx, esi
movzx r8d, bx
ror ecx, 0x15
sub edx, ecx
mov ecx, edi
xor r12d, edx
xor ecx, r12d
mov edx, r12d
ror edx, 6
imul ecx, r11d
add edx, ecx
xor esi, edx
mov edx, r9d
sub edx, esi
mov ecx, esi
ror edx, 0x11
imul edx, r8d
ror ecx, 5
xor edx, ecx
xor r12d, edx
mov edx, r12d
mov ecx, r12d
sub edx, r9d
ror ecx, 0xc
ror edx, 6
imul edx, edi
xor edx, ecx
xor esi, edx
mov ecx, esi
ror ecx, 0x1e
lea edx, [rbx + rsi]
ror edx, 0xc
imul edx, dword [rsp]
add edx, ecx
xor r12d, edx
mov edx, ebx
xor edx, r12d
mov ecx, r12d
ror edx, 2
imul edx, r11d
ror ecx, 2
add edx, ecx
xor esi, edx
mov ecx, esi
ror ecx, 2
xor ecx, r8d
mov r8d, dword [rsp]
imul ecx, edi
xor r12d, ecx
mov edx, r12d
mov ecx, r12d
sub edx, r9d
ror ecx, 0x16
ror edx, 0x14
imul edx, edi
sub edx, ecx
xor esi, edx
mov edx, ebx
xor edx, esi
mov ecx, esi
ror edx, 0x10
imul edx, r8d
ror ecx, 0x10
xor edx, ecx
xor r12d, edx
mov edx, ebx
sub edx, r12d
mov ecx, r12d
ror edx, 3
imul edx, r11d
ror ecx, 0x16
add edx, ecx
mov rcx, qword [rsp + 8]
xor edx, eax
shr rax, 0x20
xor esi, edx
xor r12d, eax
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 0x140107598
mov rcx, qword [rbp + 0xf]
xor rcx, rsp
call fcn.14001af80
mov rbx, qword [rsp + 0x100]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret