Function at 0x18007aba0
Capabilities:
Hash data using fnv

Disassembly:
push rbx
push rsi
push r12
sub rsp, 0x60
mov rax, qword [0x18017b008]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rdx, qword [rcx]
mov rbx, rcx
mov r8, qword [rcx + 0x18]
mov rcx, rdx
lea rax, [rdx + 1]
add rax, r8
cmp rdx, rax
je 0x18007ac11
movdqa xmm3, xmmword [0x180143d80]
xorps xmm2, xmm2
movdqa xmm4, xmmword [0x180143d90]
nop dword [rax]
nop dword [rax + rax]
movdqu xmm0, xmmword [rcx]
movdqa xmm1, xmm2
pcmpgtb xmm1, xmm0
pandn xmm1, xmm3
por xmm1, xmm4
movdqu xmmword [rcx], xmm1
add rcx, 0x10
cmp rcx, rax
jne 0x18007abf0
movups xmm0, xmmword [rdx]
xor r12d, r12d
mov esi, r12d
movups xmmword [rax], xmm0
mov byte [r8 + rdx], 0xff
mov r8, qword [rbx + 0x18]
test r8, r8
je 0x18007ae6d
mov qword [rsp + 0x88], rbp
movabs r9, 0xde5fb9d2630458e9
mov qword [rsp + 0x90], rdi
lea rbp, [r12 - 0x10]
mov qword [rsp + 0x98], r13
movabs rdi, 0xcbf29ce484222325
mov qword [rsp + 0x58], r14
movabs r13, 0x100000001b3
mov r14d, r12d
mov qword [rsp + 0x50], r15
nop word [rax + rax]
mov r10, qword [rbx]
cmp byte [r10 + rsi], 0xfe
lea r11, [r10 + rsi]
jne 0x18007ae34
mov rcx, qword [rbx + 8]
movdqa xmm2, xmmword [0x180139870]
add rcx, r14
movdqa xmm1, xmm2
movzx eax, byte [rcx + 1]
movzx edx, byte [rcx]
xor rdx, rdi
imul rdx, r13
xor rdx, rax
movzx eax, byte [rcx + 2]
imul rdx, r13
xor rdx, rax
movzx eax, byte [rcx + 3]
imul rdx, r13
xor rdx, rax
mov rax, r9
imul rdx, r13
mul rdx
lea r9, [rax + rdx]
mov rdx, r12
mov r15, r9
shr r15, 7
and r15, r8
mov rcx, r15
movdqu xmm0, xmmword [r10 + r15]
pcmpgtb xmm1, xmm0
pmovmskb eax, xmm1
test eax, eax
jne 0x18007ad20
nop dword [rax]
add rdx, 0x10
movdqa xmm1, xmm2
add rcx, rdx
and rcx, r8
movdqu xmm0, xmmword [r10 + rcx]
pcmpgtb xmm1, xmm0
pmovmskb eax, xmm1
test eax, eax
je 0x18007ad00
bsf edx, eax
mov rax, rsi
and r9b, 0x7f
sub rax, r15
movsxd rdi, edx
add rdi, rcx
and rdi, r8
mov rcx, rdi
sub rcx, r15
xor rcx, rax
and rcx, r8
test rcx, 0xfffffffffffffff0
jne 0x18007ad6b
mov byte [r11], r9b
mov rcx, rbp
mov rax, qword [rbx + 0x18]
and rcx, rax
and eax, 0xf
add rcx, rax
mov rax, qword [rbx]
mov byte [rcx + rax + 1], r9b
jmp 0x18007ae20
lea rax, [r10 + rdi]
lea rdx, [rdi - 0x10]
shl rdi, 5
cmp byte [rax], 0x80
lea rcx, [rbx + 0x28]
mov byte [rax], r9b
mov rax, qword [rbx + 0x18]
jne 0x18007adca
and rdx, rax
and eax, 0xf
add rdx, rax
mov rax, qword [rbx]
mov byte [rdx + rax + 1], r9b
mov rax, qword [rbx + 8]
lea r8, [r14 + rax]
lea rdx, [rdi + rax]
call fcn.180076380
mov rax, qword [rbx]
mov byte [rsi + rax], 0x80
mov rax, qword [rbx + 0x18]
mov rcx, rax
and eax, 0xf
and rcx, rbp
add rcx, rax
mov rax, qword [rbx]
mov byte [rcx + rax + 1], 0x80
jmp 0x18007ae20
and rdx, rax
and eax, 0xf
add rdx, rax
mov rax, qword [rbx]
mov byte [rdx + rax + 1], r9b
lea rdx, [rsp + 0x28]
mov r8, qword [rbx + 8]
add r8, r14
call fcn.180076380
mov rax, qword [rbx + 8]
lea rcx, [rbx + 0x28]
lea r8, [rax + rdi]
lea rdx, [rax + r14]
call fcn.180076380
mov rdx, qword [rbx + 8]
lea r8, [rsp + 0x28]
add rdx, rdi
lea rcx, [rbx + 0x28]
call fcn.180076380
dec rsi
sub r14, 0x20
dec rbp
movabs rdi, 0xcbf29ce484222325
movabs r9, 0xde5fb9d2630458e9
mov r8, qword [rbx + 0x18]
inc rsi
add r14, 0x20
inc rbp
cmp rsi, r8
jne 0x18007ac80
mov r15, qword [rsp + 0x50]
mov r14, qword [rsp + 0x58]
mov r13, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x88]
mov rax, r8
shr r8, 3
sub rax, qword [rbx + 0x10]
sub rax, r8
mov qword [rbx + 0x28], rax
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.18000b6d0
add rsp, 0x60
pop r12
pop rsi
pop rbx
ret