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

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 8]
sub rsp, 0x108
mov rsi, rdx
mov r13, rcx
xor r15d, r15d
mov dword [rsp + 0x30], r15d
lea r8, [0x1804c06e0]
lea rdx, [rsp + 0x60]
mov rcx, qword [rcx + 0x50]
call fcn.180146dd0
nop
cmp byte [rbp - 0x80], r15b
je 0x1800a9767
mov rbx, qword [r13 + 0x50]
add rbx, 0x28
cmp byte [rbx + 0x20], r15b
je 0x1800a9688
lea rax, [rsp + 0x60]
cmp rbx, rax
je 0x1800a9699
lea rdx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0x10
cmovae rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x70]
mov rcx, rbx
call fcn.180021790
jmp 0x1800a9699
lea rdx, [rsp + 0x60]
mov rcx, rbx
call fcn.180012830
mov byte [rbx + 0x20], 1
mov rbx, qword [r13 + 0x50]
add rbx, 0x28
cmp byte [rbx + 0x20], 0
je 0x1800a9a9a
call fcn.180254440
mov qword [rbp - 0x18], r15
mov qword [rbp - 0x20], r15
mov qword [rbp - 0x10], r15
lea rcx, str._VR__
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x48], 7
movups xmm0, xmmword [rbp - 0x20]
movaps xmmword [rbp - 0x40], xmm0
movsd xmm1, qword [rbp - 0x10]
movsd qword [rbp - 0x30], xmm1
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x50]
mov r8d, 4
lea rdx, [rbp - 0x40]
mov rcx, rax
call fcn.18000b970
mov byte [rsi + 0x20], 0
mov dword [rsp + 0x30], 1
cmp byte [rbp - 0x80], 0
je 0x1800a9a77
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1800a974f
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a974a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9aa0
call fcn.18026a1a0
movdqa xmm0, xmmword [0x1802f2720]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], 0
jmp 0x1800a9a77
cmp byte [rbp - 0x80], 0
je 0x1800a97bd
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1800a97aa
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a97a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9aa0
call fcn.18026a1a0
movdqa xmm0, xmmword [0x1802f2720]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], 0
mov rdi, qword [r13 + 0x1c20]
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x1800a9a59
mov r8d, 0x16
movabs rsi, 0x100000001b3
movabs rdx, 0x7fffffffffffffff
mov r12, qword [r13 + 0x50]
lea rcx, [rsp + 0x40]
mov qword [rbp + 0x68], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], r15
mov r14, qword [rbx + 0x20]
lea r15, [rbx + 0x10]
cmp qword [rbx + 0x28], 0x10
jb 0x1800a981c
mov r15, qword [rbx + 0x10]
cmp r14, rdx
ja 0x1800a9a94
mov qword [rsp + 0x58], 0xf
cmp r14, 0x10
jae 0x1800a9844
mov qword [rsp + 0x50], r14
movups xmm0, xmmword [r15]
movups xmmword [rsp + 0x40], xmm0
jmp 0x1800a9893
mov rsi, r14
or rsi, 0xf
cmp rsi, rdx
jbe 0x1800a9855
mov rsi, rdx
jmp 0x1800a985d
cmp rsi, 0x16
cmovb rsi, r8
lea rdx, [rsi + 1]
lea rcx, [rsp + 0x40]
call fcn.180015660
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], rsi
lea r8, [r14 + 1]
mov rdx, r15
mov rcx, rax
call fcn.180287a80
movabs rsi, 0x100000001b3
lea r8, [rsp + 0x40]
lea rdx, [rbp - 0x78]
mov rcx, r12
call fcn.18014e650
nop
mov r9, qword [r13 + 0x50]
mov qword [rbp + 0x60], r9
lea r8, [rbp - 0x78]
mov r12, qword [rbp - 0x78]
mov r13, qword [rbp - 0x60]
cmp r13, 0x10
cmovae r8, r12
movabs rdx, 0xcbf29ce484222325
xor r15d, r15d
mov ecx, r15d
mov r14, qword [rbp - 0x68]
test r14, r14
je 0x1800a98f4
nop word [rax + rax]
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, rsi
inc rcx
cmp rcx, r14
jb 0x1800a98e0
mov rcx, qword [r9 + 0x998]
and rcx, rdx
add rcx, rcx
mov rax, qword [r9 + 0x980]
mov rsi, qword [rax + rcx*8 + 8]
cmp rsi, qword [r9 + 0x970]
je 0x1800a996a
mov r15, qword [rax + rcx*8]
nop word [rax + rax]
lea rdx, [rsi + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1800a9932
mov rdx, qword [rdx]
lea rcx, [rbp - 0x78]
cmp r13, 0x10
cmovae rcx, r12
cmp r14, rax
jne 0x1800a994f
mov r8, r14
call fcn.180287980
test eax, eax
je 0x1800a995a
cmp rsi, r15
je 0x1800a9963
mov rsi, qword [rsi + 8]
jmp 0x1800a9920
mov r9, qword [rbp + 0x60]
xor r15d, r15d
jmp 0x1800a996d
xor r15d, r15d
mov r9, qword [rbp + 0x60]
mov rsi, r15
test rsi, rsi
je 0x1800a99fe
lea rcx, [r9 + 0x968]
lea r8, [rbp - 0x78]
lea rdx, [rbp - 0x20]
call fcn.18008f800
mov rcx, qword [rax]
mov rdx, qword [rcx + 0x30]
lea rsi, [rbx + 0x10]
mov rax, qword [rsi + 0x20]
mov qword [rax], rdx
call fcn.180254440
mov qword [rbp - 0x38], 0
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x30], r15
lea rcx, str._VR__Successfully_mapped_action__to_
mov qword [rbp - 0x50], rcx
mov qword [rbp - 0x48], 0x28
movups xmm0, xmmword [rbp - 0x40]
movaps xmmword [rsp + 0x40], xmm0
movsd xmm1, qword [rbp - 0x30]
movsd qword [rsp + 0x50], xmm1
lea rcx, [rbp - 0x78]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rsi
lea r9, [rbp - 0x50]
mov r8d, 2
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.180094f40
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x1800a9a35
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a9a30
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a9a8e
call fcn.18026a1a0
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
mov rbx, qword [rbx]
mov r13, qword [rbp + 0x50]
cmp rbx, rdi
jne 0x1800a97d0
mov rsi, qword [rbp + 0x58]
mov qword [r13 + 0x1c58], r15
mov qword [r13 + 0x1c60], 1
mov byte [rsi + 0x20], 0
mov dword [rsp + 0x30], 1
mov rax, rsi
add rsp, 0x108
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18028cdc8
int3
call fcn.180015620
nop
call fcn.180068300
nop
call fcn.18028cdc8
int3