Function at 0x180145dd0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xe0
movzx r9d, r8b
mov r15, rdx
mov r14, rcx
xor r12d, r12d
cmp r9b, 1
ja 0x1801462bd
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
mov qword [rbp - 0x79], r12
mov qword [rbp - 0x71], r12
mov qword [rbp - 0x79], 8
mov qword [rbp - 0x71], 0xf
movabs r10, 0x6b63697473796f6a
mov qword [rsp + 0x20], r10
mov byte [rsp + 0x28], r12b
movabs rbx, 0xcbf29ce484222325
mov rdx, rbx
mov ecx, r12d
movabs rsi, 0x100000001b3
nop dword [rax]
movzx eax, byte [rsp + rcx + 0x20]
xor rdx, rax
imul rdx, rsi
inc rcx
cmp rcx, 8
jb 0x180145e60
mov r8, qword [r14 + 0x998]
and r8, rdx
add r8, r8
mov rax, qword [r14 + 0x980]
mov rcx, qword [rax + r8*8 + 8]
cmp rcx, qword [r14 + 0x970]
je 0x180145ec8
mov r8, qword [rax + r8*8]
nop dword [rax + rax]
lea rax, [rcx + 0x10]
mov rdx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x180145eb2
mov rax, qword [rax]
cmp rdx, 8
jne 0x180145ebd
cmp r10, qword [rax]
je 0x180145ecb
cmp rcx, r8
je 0x180145ec8
mov rcx, qword [rcx + 8]
jmp 0x180145ea0
mov rcx, r12
mov qword [rbp - 0x79], r12
mov qword [rbp - 0x71], 0xf
mov byte [rsp + 0x20], 0
test rcx, rcx
je 0x1801462bd
imul r13, r9, 0x2c8
lea rdi, [r14 + r13]
lea rdx, [rbp - 0x49]
mov rcx, r14
call fcn.180145590
mov r10, rax
mov r8, qword [rax + 0x10]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x180145f10
mov rdx, qword [rax]
mov r9, rbx
mov rcx, r12
test r8, r8
je 0x180145f33
nop dword [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, rsi
inc rcx
cmp rcx, r8
jb 0x180145f20
mov r8, r10
lea rdx, [rsp + 0x20]
lea rcx, [rdi + 0xc10]
call fcn.18003b070
mov rsi, qword [rax + 8]
test rsi, rsi
je 0x180145f5c
lea rdi, [r14 + 0xc18]
add rdi, r13
jmp 0x180145f66
add rdi, 0xc18
mov rsi, qword [rdi]
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x180145fa1
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180145f9c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801462f2
call fcn.18026a1a0
movdqa xmm0, xmmword [0x1802f2720]
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x49], 0
cmp rsi, qword [rdi]
je 0x1801462bd
xorps xmm0, xmm0
movups xmmword [rbp - 0x69], xmm0
mov qword [rbp - 0x59], r12
mov qword [rbp - 0x51], r12
mov qword [rbp - 0x59], 8
mov qword [rbp - 0x51], 0xf
movabs r10, 0x6b63697473796f6a
mov qword [rbp - 0x69], r10
mov byte [rbp - 0x61], 0
mov rdx, rbx
mov rcx, r12
movabs r9, 0x100000001b3
nop dword [rax]
movzx eax, byte [rbp + rcx - 0x69]
xor rdx, rax
imul rdx, r9
inc rcx
cmp rcx, 8
jb 0x180146000
and rdx, qword [rsi + 0x60]
add rdx, rdx
mov rax, qword [rsi + 0x48]
mov rcx, qword [rax + rdx*8 + 8]
cmp rcx, qword [rsi + 0x38]
je 0x180146058
mov r8, qword [rax + rdx*8]
nop
lea rax, [rcx + 0x10]
mov rdx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x180146042
mov rax, qword [rax]
cmp rdx, 8
jne 0x18014604d
cmp r10, qword [rax]
je 0x18014605b
cmp rcx, r8
je 0x180146058
mov rcx, qword [rcx + 8]
jmp 0x180146030
mov rcx, r12
mov qword [rbp - 0x59], r12
mov qword [rbp - 0x51], 0xf
mov byte [rbp - 0x69], 0
xorps xmm0, xmm0
test rcx, rcx
je 0x180146128
movups xmmword [rsp + 0x20], xmm0
mov qword [rbp - 0x79], r12
mov qword [rbp - 0x71], r12
mov qword [rbp - 0x79], 8
mov qword [rbp - 0x71], 0xf
mov qword [rsp + 0x20], r10
mov byte [rsp + 0x28], 0
mov rcx, r12
movzx eax, byte [rsp + rcx + 0x20]
xor rbx, rax
imul rbx, r9
inc rcx
cmp rcx, 8
jb 0x1801460a1
and rbx, qword [r14 + 0x998]
add rbx, rbx
mov rax, qword [r14 + 0x980]
mov rcx, qword [rax + rbx*8 + 8]
mov r9, qword [r14 + 0x970]
cmp rcx, r9
je 0x180146108
mov r8, qword [rax + rbx*8]
nop dword [rax]
lea rax, [rcx + 0x10]
mov rdx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x1801460f2
mov rax, qword [rax]
cmp rdx, 8
jne 0x1801460fd
cmp r10, qword [rax]
je 0x18014610b
cmp rcx, r8
je 0x180146108
mov rcx, qword [rcx + 8]
jmp 0x1801460e0
mov rcx, r12
test rcx, rcx
cmovne r9, rcx
mov qword [rbp - 0x79], r12
mov qword [rbp - 0x71], 0xf
mov byte [rsp + 0x20], 0
jmp 0x1801461e2
movups xmmword [rbp - 0x69], xmm0
mov qword [rbp - 0x59], r12
mov qword [rbp - 0x51], r12
mov qword [rbp - 0x59], 8
mov qword [rbp - 0x51], 0xf
movabs r10, 0x6461706863756f74
mov qword [rbp - 0x69], r10
mov byte [rbp - 0x61], 0
mov rcx, r12
nop dword [rax]
movzx eax, byte [rbp + rcx - 0x69]
xor rbx, rax
imul rbx, r9
inc rcx
cmp rcx, 8
jb 0x180146160
mov r8, qword [r14 + 0x998]
and r8, rbx
add r8, r8
mov rax, qword [r14 + 0x980]
mov rcx, qword [rax + r8*8 + 8]
mov r9, qword [r14 + 0x970]
cmp rcx, r9
je 0x1801461c8
mov r8, qword [rax + r8*8]
nop
lea rax, [rcx + 0x10]
mov rdx, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x1801461b2
mov rax, qword [rax]
cmp rdx, 8
jne 0x1801461bd
cmp r10, qword [rax]
je 0x1801461cb
cmp rcx, r8
je 0x1801461c8
mov rcx, qword [rcx + 8]
jmp 0x1801461a0
mov rcx, r12
test rcx, rcx
cmovne r9, rcx
mov qword [rbp - 0x59], r12
mov qword [rbp - 0x51], 0xf
mov byte [rbp - 0x69], 0
cmp r9, qword [r14 + 0x970]
je 0x1801462bd
mov rax, qword [r9 + 0x30]
mov dword [rbp - 0x21], 0x3a
xorps xmm0, xmm0
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 0x11], rax
mov rax, qword [r13 + r14 + 0xb38]
mov qword [rbp - 9], rax
mov dword [rbp - 1], 0x19
xor eax, eax
movups xmmword [rbp + 7], xmm0
movups xmmword [rbp + 0x17], xmm0
mov qword [rbp + 0x27], rax
lea r8, [rbp - 1]
lea rdx, [rbp - 0x21]
mov rcx, qword [r14 + 0x3f0]
call fcn.1801b37c0
test eax, eax
je 0x1801462e6
mov r8d, eax
lea rdx, [rbp - 0x49]
mov rcx, r14
call fcn.180145c60
nop
lea rcx, str._VR__Failed_to_get_stick_action_state:_
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], 0x29
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.180019a30
nop
mov rdx, qword [rbp - 0x31]
cmp rdx, 0x10
jb 0x1801462ac
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801462a7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801462ec
call fcn.18026a1a0
movdqa xmm0, xmmword [0x1802f2720]
movdqu xmmword [rbp - 0x39], xmm0
mov byte [rbp - 0x49], 0
xor eax, eax
mov qword [r15], rax
mov rax, r15
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rax, qword [rbp + 0xf]
jmp 0x1801462bf
call fcn.18028cdc8
int3
call fcn.18028cdc8
int3