Function at 0x18006bbe0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
mov ebp, dword [rcx]
lea r15, [rcx + 0x24]
mov edi, dword [rcx + 4]
mov r14, rdx
mov r11d, dword [rcx + 8]
mov r12d, 4
xor ebp, dword [r8]
xor edi, dword [r8 + 4]
xor r11d, dword [r8 + 8]
mov esi, dword [rcx + 0xc]
xor esi, dword [r8 + 0xc]
nop dword [rax]
nop word [rax + rax]
mov ebx, dword [r15 + 4]
mov eax, ebp
shr rax, 0x10
movzx edx, al
mov eax, ebp
shr rax, 8
movzx eax, al
mov r10d, dword [rcx + rdx*4 + 0x8b4]
rol esi, 1
xor r10d, dword [rcx + rax*4 + 0x4b4]
mov eax, ebp
shr rax, 0x18
xor r10d, dword [rcx + rax*4 + 0xcb4]
movzx eax, bpl
xor r10d, dword [rcx + rax*4 + 0xb4]
mov eax, edi
rol eax, 8
mov r8d, eax
shr rax, 0x10
movzx edx, al
mov eax, r8d
shr rax, 8
movzx eax, al
rol edi, 1
mov r9d, dword [rcx + rdx*4 + 0x8b4]
xor r9d, dword [rcx + rax*4 + 0x4b4]
mov eax, r8d
shr rax, 0x18
xor r9d, dword [rcx + rax*4 + 0xcb4]
movzx eax, r8b
xor r9d, dword [rcx + rax*4 + 0xb4]
mov eax, dword [r15 - 4]
add eax, r9d
add eax, r10d
xor r11d, eax
mov eax, dword [r15]
ror r11d, 1
lea edx, [rax + r9*2]
mov eax, r11d
shr rax, 0x10
add edx, r10d
xor esi, edx
movzx edx, al
mov eax, r11d
shr rax, 8
movzx eax, al
mov r10d, dword [rcx + rdx*4 + 0x8b4]
xor r10d, dword [rcx + rax*4 + 0x4b4]
mov eax, r11d
shr rax, 0x18
xor r10d, dword [rcx + rax*4 + 0xcb4]
movzx eax, r11b
xor r10d, dword [rcx + rax*4 + 0xb4]
mov eax, esi
rol eax, 8
mov r8d, eax
shr rax, 0x10
movzx edx, al
mov eax, r8d
shr rax, 8
movzx eax, al
mov r9d, dword [rcx + rdx*4 + 0x8b4]
xor r9d, dword [rcx + rax*4 + 0x4b4]
mov eax, r8d
shr rax, 0x18
xor r9d, dword [rcx + rax*4 + 0xcb4]
movzx eax, r8b
xor r9d, dword [rcx + rax*4 + 0xb4]
mov eax, dword [r15 + 8]
add ebx, r9d
add ebx, r10d
xor ebx, ebp
ror ebx, 1
lea edx, [rax + r9*2]
mov eax, ebx
add edx, r10d
shr rax, 0x10
xor edi, edx
movzx edx, al
mov eax, ebx
shr rax, 8
mov r10d, dword [rcx + rdx*4 + 0x8b4]
movzx eax, al
mov ebp, dword [r15 + 0x14]
lea r15, [r15 + 0x20]
rol esi, 1
xor r10d, dword [rcx + rax*4 + 0x4b4]
mov eax, ebx
shr rax, 0x18
xor r10d, dword [rcx + rax*4 + 0xcb4]
movzx eax, bl
xor r10d, dword [rcx + rax*4 + 0xb4]
mov eax, edi
rol eax, 8
mov r8d, eax
shr rax, 0x10
movzx edx, al
mov eax, r8d
shr rax, 8
movzx eax, al
rol edi, 1
mov r9d, dword [rcx + rdx*4 + 0x8b4]
xor r9d, dword [rcx + rax*4 + 0x4b4]
mov eax, r8d
shr rax, 0x18
xor r9d, dword [rcx + rax*4 + 0xcb4]
movzx eax, r8b
xor r9d, dword [rcx + rax*4 + 0xb4]
mov eax, dword [r15 - 0x14]
add eax, r9d
add eax, r10d
xor r11d, eax
mov eax, dword [r15 - 0x10]
ror r11d, 1
lea edx, [rax + r9*2]
mov eax, r11d
shr rax, 0x10
add edx, r10d
xor esi, edx
movzx edx, al
mov eax, r11d
shr rax, 8
movzx eax, al
mov r10d, dword [rcx + rdx*4 + 0x8b4]
xor r10d, dword [rcx + rax*4 + 0x4b4]
mov eax, r11d
shr rax, 0x18
xor r10d, dword [rcx + rax*4 + 0xcb4]
movzx eax, r11b
xor r10d, dword [rcx + rax*4 + 0xb4]
mov eax, esi
rol eax, 8
mov r8d, eax
shr rax, 0x10
movzx edx, al
mov eax, r8d
shr rax, 8
movzx eax, al
mov r9d, dword [rcx + rdx*4 + 0x8b4]
xor r9d, dword [rcx + rax*4 + 0x4b4]
mov eax, r8d
shr rax, 0x18
xor r9d, dword [rcx + rax*4 + 0xcb4]
movzx eax, r8b
xor r9d, dword [rcx + rax*4 + 0xb4]
mov eax, dword [r15 - 8]
add ebp, r9d
add ebp, r10d
xor ebp, ebx
ror ebp, 1
lea edx, [rax + r9*2]
add edx, r10d
xor edi, edx
sub r12, 1
jne 0x18006bc30
xor esi, dword [rcx + 0x14]
xor ebp, dword [rcx + 0x18]
xor r11d, dword [rcx + 0x10]
xor edi, dword [rcx + 0x1c]
mov rbx, qword [rsp + 0x20]
mov dword [r14 + 0xc], edi
mov rdi, qword [rsp + 0x38]
mov dword [r14 + 4], esi
mov rsi, qword [rsp + 0x30]
mov dword [r14 + 8], ebp
mov rbp, qword [rsp + 0x28]
mov dword [r14], r11d
pop r15
pop r14
pop r12
ret