Function at 0x4c8980
Capabilities:
Hash data using fnv

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4c91fe
push rbp
mov rbp, rsp
sub rsp, 0x10
mov qword [rsp + 0x20], rax
xor ecx, ecx
movabs rdx, 0xcbf29ce484222325
jmp 0x4c89af
lea rax, [rsi + 0x10]
inc rcx
mov rdx, rdi
cmp rbx, rcx
jle 0x4c8d5b
mov rsi, rax
mov rdi, qword [rax]
nop
test rdi, rdi
je 0x4c8d88
mov r8d, dword [rdi + 0x10]
mov r9, qword [rax + 8]
cmp r8d, 0x854f63b7
ja 0x4c8ba0
nop
cmp r8d, 0x5272f85c
ja 0x4c8aa7
cmp r8d, 0x7e34ced
ja 0x4c8a4b
cmp r8d, 0x778cdb8
jne 0x4c8a20
lea rax, [0x0051da20]
cmp rdi, rax
jne 0x4c8d88
mov rdi, qword [r9]
mov r8, qword [r9 + 8]
xor r9d, r9d
jmp 0x4c91e0
cmp r8d, 0x7e34ced
jne 0x4c8d88
lea r8, [0x0051c660]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x4c9176
cmp r8d, 0x38dfc0a9
jne 0x4c8a80
lea r8, [0x0051c7a0]
nop dword [rax + rax]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x4c9128
cmp r8d, 0x5272f85c
jne 0x4c8d88
lea r8, [0x0051dce0]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
xor eax, eax
jmp 0x4c9101
cmp r8d, 0x6bed3cfa
ja 0x4c8b07
cmp r8d, 0x64fd0d3c
jne 0x4c8ae0
lea r8, [0x0051dda0]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
xor eax, eax
jmp 0x4c90c1
cmp r8d, 0x6bed3cfa
jne 0x4c8d88
lea r8, [0x0051dc20]
cmp rdi, r8
jne 0x4c8d88
mov edi, dword [r9]
xor eax, eax
jmp 0x4c9084
cmp r8d, 0x6d0f0857
jne 0x4c8b40
lea r8, [0x0051cde0]
nop word [rax + rax]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x4c901a
cmp r8d, 0x81044065
jne 0x4c8b67
lea r8, [0x0051c6a0]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x4c8ff9
cmp r8d, 0x854f63b7
jne 0x4c8d88
lea r8, [0x0051c960]
nop dword [rax + rax]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x4c8f94
cmp r8d, 0x99d6dd43
ja 0x4c8c73
cmp r8d, 0x95738979
ja 0x4c8c20
cmp r8d, 0x8fc52ddb
jne 0x4c8be0
lea r8, [0x0051de20]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
xor eax, eax
jmp 0x4c8f72
cmp r8d, 0x95738979
jne 0x4c8d88
lea r8, [0x0051dd60]
cmp rdi, r8
jne 0x4c8d88
movzx edi, byte [r9]
xor rdi, rdx
nop
movabs rdx, 0x100000001b3
imul rdi, rdx
jmp 0x4c89a5
cmp r8d, 0x99777383
jne 0x4c8c47
lea r8, [0x0051cf20]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x4c8f0b
cmp r8d, 0x99d6dd43
jne 0x4c8d88
lea r8, [0x0051dc60]
nop dword [rax + rax]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
xor eax, eax
jmp 0x4c8ee9
cmp r8d, 0xcb735792
ja 0x4c8cd3
nop dword [rax]
cmp r8d, 0xbe66ff1c
jne 0x4c8ca7
lea r8, [0x0051cee0]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x4c8e82
cmp r8d, 0xcb735792
jne 0x4c8d88
lea r8, [0x0051dba0]
nop dword [rax + rax]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
xor eax, eax
jmp 0x4c8e60
cmp r8d, 0xd83fe3b3
jne 0x4c8d00
lea r8, [0x0051c6e0]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x4c8df2
cmp r8d, 0xe8fe0eb5
jne 0x4c8d25
lea r8, [0x0051ce60]
cmp rdi, r8
jne 0x4c8d88
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
nop
jmp 0x4c8da2
cmp r8d, 0xe927f9e3
jne 0x4c8d88
lea r8, [0x0051dd20]
cmp rdi, r8
jne 0x4c8d88
mov edi, dword [r9]
xor eax, eax
nop
jmp 0x4c8d80
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
mov rax, rdx
add rsp, 0x10
pop rbp
ret
movzx r9d, dil
xor rdx, r9
inc rax
shr edi, 8
movabs r9, 0x100000001b3
imul rdx, r9
nop
cmp rax, 4
jl 0x4c8d64
jmp 0x4c8d42
lea rax, [0x0051da20]
lea rbx, [0x0057f8a0]
call sym.runtime.gopanic
lea rdi, [r10 + 0x10]
inc rax
cmp rax, r9
jge 0x4c8db6
mov r10, rdi
mov r11, qword [rdi]
mov rdi, qword [rdi + 8]
xor r12d, r12d
jmp 0x4c8de8
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
movzx r13d, byte [r12 + r11]
xor rdx, r13
inc r12
movabs r13, 0x100000001b3
imul rdx, r13
cmp r12, rdi
jl 0x4c8dcf
jmp 0x4c8d9b
inc rax
cmp rax, r9
jge 0x4c8e02
mov r10d, dword [rdi + rax*4]
xor r11d, r11d
nop
jmp 0x4c8e37
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10d, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 4
jl 0x4c8e1b
jmp 0x4c8def
movzx r9d, dil
xor rdx, r9
inc rax
shr rdi, 8
movabs r9, 0x100000001b3
imul rdx, r9
nop dword [rax + rax]
cmp rax, 8
jl 0x4c8e3f
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
inc rax
cmp rax, r9
jge 0x4c8e90
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x4c8ec5
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x4c8ea9
jmp 0x4c8e7f
movzx r9d, dil
xor rdx, r9
inc rax
shr rdi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 8
jl 0x4c8ecd
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
inc rax
cmp rax, r9
jge 0x4c8f19
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x4c8f4e
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x4c8f32
jmp 0x4c8f08
movzx r9d, dil
xor rdx, r9
inc rax
shr rdi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 8
jl 0x4c8f56
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
inc rax
cmp rax, r9
jge 0x4c8fa2
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x4c8fd7
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x4c8fbb
jmp 0x4c8f91
movzx r10d, byte [rax + rdi]
xor rdx, r10
inc rax
nop
movabs r10, 0x100000001b3
imul rdx, r10
cmp rax, r9
jl 0x4c8fdf
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
inc rax
cmp rax, r9
jge 0x4c9028
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x4c9061
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
nop dword [rax]
jmp 0x4c89a5
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x4c9045
jmp 0x4c9017
movzx r9d, dil
xor rdx, r9
inc rax
shr edi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 4
jl 0x4c9069
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
nop
jmp 0x4c89a5
movzx r9d, dil
xor rdx, r9
inc rax
shr rdi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 8
jl 0x4c90a5
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
nop dword [rax + rax]
jmp 0x4c89a5
movzx r9d, dil
xor rdx, r9
inc rax
shr rdi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 8
jl 0x4c90e5
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
nop dword [rax + rax]
jmp 0x4c89a5
inc rax
cmp rax, r9
jge 0x4c9136
mov r10d, dword [rdi + rax*4]
xor r11d, r11d
jmp 0x4c916b
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10d, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 4
jl 0x4c914f
jmp 0x4c9125
inc rax
cmp rax, r9
jge 0x4c9184
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x4c91b9
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x4c919d
nop
jmp 0x4c9173
movzx r10d, byte [r9 + rdi]
xor rdx, r10
inc r9
movabs r10, 0x100000001b3
imul rdx, r10
nop dword [rax + rax]
cmp r9, r8
jl 0x4c91c2
lea r8, [0x0051dd60]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x4c89a5
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp sym.internal_bisect.Hash