Function at 0x140092db0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov rbx, rdx
mov edx, dword [rcx + 0x10b0]
sub edx, 2
je 0x14009304c
dec edx
je 0x140092f37
dec edx
jne 0x140093117
xor edi, edi
lea rsi, [rcx + 0xb8]
lea r11, [0x140000000]
movzx eax, byte [rbx + 0xc]
movzx r8d, dil
inc edi
movzx r10d, byte [r8 + r11 + 0x172cc0]
movzx r9d, byte [r8 + r11 + 0x172bc0]
xor rax, r10
movzx ecx, byte [rax + r11 + 0x172cc0]
movzx eax, byte [rbx + 8]
xor rcx, rax
movzx eax, byte [rbx + 4]
movzx edx, byte [rcx + r11 + 0x172bc0]
xor rdx, rax
movzx eax, byte [rbx]
movzx ecx, byte [rdx + r11 + 0x172bc0]
xor rcx, rax
mov eax, dword [r11 + rcx*4 + 0x172dc0]
mov dword [rsi - 8], eax
mov eax, dword [rbx + 0xc]
shr eax, 8
movzx ecx, al
mov eax, dword [rbx + 8]
shr eax, 8
xor rcx, r9
movzx edx, byte [rcx + r11 + 0x172cc0]
movzx eax, al
xor rdx, rax
mov eax, dword [rbx + 4]
movzx ecx, byte [rdx + r11 + 0x172cc0]
shr eax, 8
movzx eax, al
xor rcx, rax
mov eax, dword [rbx]
movzx edx, byte [rcx + r11 + 0x172bc0]
shr eax, 8
movzx eax, al
xor rdx, rax
mov eax, dword [r11 + rdx*4 + 0x1731c0]
mov dword [rsi - 4], eax
movzx eax, byte [rbx + 0xe]
xor rax, r9
movzx ecx, byte [rax + r11 + 0x172bc0]
movzx eax, byte [rbx + 0xa]
xor rcx, rax
movzx eax, byte [rbx + 6]
movzx edx, byte [rcx + r11 + 0x172bc0]
xor rdx, rax
movzx eax, byte [rbx + 2]
movzx ecx, byte [rdx + r11 + 0x172cc0]
xor rcx, rax
mov eax, dword [r11 + rcx*4 + 0x1735c0]
mov dword [rsi], eax
movzx eax, byte [rbx + 0xf]
lea rsi, [rsi + 0x10]
xor rax, r10
movzx ecx, byte [rax + r11 + 0x172bc0]
movzx eax, byte [rbx + 0xb]
xor rcx, rax
movzx eax, byte [rbx + 7]
movzx edx, byte [rcx + r11 + 0x172cc0]
xor rdx, rax
movzx eax, byte [rbx + 3]
movzx ecx, byte [rdx + r11 + 0x172cc0]
xor rcx, rax
mov eax, dword [r11 + rcx*4 + 0x1739c0]
mov dword [rsi - 0xc], eax
cmp edi, 0x100
jb 0x140092df1
jmp 0x140093117
xor edi, edi
lea r10, [rcx + 0xb8]
lea r11, [0x140000000]
movzx eax, byte [rbx + 8]
movzx r9d, dil
inc edi
movzx r8d, byte [r9 + r11 + 0x172cc0]
xor rax, r8
movzx ecx, byte [rax + r11 + 0x172bc0]
movzx eax, byte [rbx + 4]
xor rcx, rax
movzx eax, byte [rbx]
movzx edx, byte [rcx + r11 + 0x172bc0]
xor rdx, rax
mov eax, dword [r11 + rdx*4 + 0x172dc0]
mov dword [r10 - 8], eax
mov eax, dword [rbx + 8]
shr eax, 8
movzx ecx, al
mov eax, dword [rbx + 4]
shr eax, 8
xor rcx, r8
movzx r8d, byte [r9 + r11 + 0x172bc0]
movzx edx, byte [rcx + r11 + 0x172cc0]
movzx eax, al
xor rdx, rax
mov eax, dword [rbx]
movzx ecx, byte [rdx + r11 + 0x172bc0]
shr eax, 8
movzx eax, al
xor rcx, rax
mov eax, dword [r11 + rcx*4 + 0x1731c0]
mov dword [r10 - 4], eax
movzx eax, byte [rbx + 0xa]
xor rax, r8
movzx ecx, byte [rax + r11 + 0x172bc0]
movzx eax, byte [rbx + 6]
xor rcx, rax
movzx eax, byte [rbx + 2]
movzx edx, byte [rcx + r11 + 0x172cc0]
xor rdx, rax
mov eax, dword [r11 + rdx*4 + 0x1735c0]
mov dword [r10], eax
movzx eax, byte [rbx + 0xb]
lea r10, [r10 + 0x10]
xor rax, r8
movzx ecx, byte [rax + r11 + 0x172cc0]
movzx eax, byte [rbx + 7]
xor rcx, rax
movzx eax, byte [rbx + 3]
movzx edx, byte [rcx + r11 + 0x172cc0]
xor rdx, rax
mov eax, dword [r11 + rdx*4 + 0x1739c0]
mov dword [r10 - 0xc], eax
cmp edi, 0x100
jb 0x140092f47
jmp 0x140093117
xor edi, edi
lea r10, [rcx + 0xb8]
lea r11, [0x140000000]
movzx eax, byte [rbx + 4]
movzx edx, dil
inc edi
movzx r9d, byte [rdx + r11 + 0x172bc0]
movzx r8d, byte [rdx + r11 + 0x172cc0]
xor rax, r9
movzx ecx, byte [rax + r11 + 0x172bc0]
movzx eax, byte [rbx]
xor rcx, rax
mov eax, dword [r11 + rcx*4 + 0x172dc0]
mov dword [r10 - 8], eax
mov eax, dword [rbx + 4]
shr eax, 8
movzx ecx, al
mov eax, dword [rbx]
shr eax, 8
xor rcx, r8
movzx edx, byte [rcx + r11 + 0x172bc0]
movzx eax, al
xor rdx, rax
mov eax, dword [r11 + rdx*4 + 0x1731c0]
mov dword [r10 - 4], eax
movzx eax, byte [rbx + 6]
xor rax, r9
movzx ecx, byte [rax + r11 + 0x172cc0]
movzx eax, byte [rbx + 2]
xor rcx, rax
mov eax, dword [r11 + rcx*4 + 0x1735c0]
mov dword [r10], eax
movzx eax, byte [rbx + 7]
lea r10, [r10 + 0x10]
xor rax, r8
movzx ecx, byte [rax + r11 + 0x172cc0]
movzx eax, byte [rbx + 3]
xor rcx, rax
mov eax, dword [r11 + rcx*4 + 0x1739c0]
mov dword [r10 - 0xc], eax
cmp edi, 0x100
jb 0x14009305c
mov rbx, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
ret