Function at 0x470820
Capabilities:
Hash data using fnv

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x47109e
push rbp
mov rbp, rsp
sub rsp, 0x10
mov qword [rsp + 0x20], rax
xor ecx, ecx
movabs rdx, 0xcbf29ce484222325
jmp 0x47084f
lea rax, [rsi + 0x10]
inc rcx
mov rdx, rdi
cmp rbx, rcx
jle 0x470bfb
mov rsi, rax
mov rdi, qword [rax]
nop
test rdi, rdi
je 0x470c28
mov r8d, dword [rdi + 0x10]
mov r9, qword [rax + 8]
cmp r8d, 0x854f63b7
ja 0x470a40
nop
cmp r8d, 0x5272f85c
ja 0x470947
cmp r8d, 0x7e34ced
ja 0x4708eb
cmp r8d, 0x778cdb8
jne 0x4708c0
lea rax, [0x004824c0]
cmp rdi, rax
jne 0x470c28
mov rdi, qword [r9]
mov r8, qword [r9 + 8]
xor r9d, r9d
jmp 0x471080
cmp r8d, 0x7e34ced
jne 0x470c28
lea r8, [0x004815c0]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x471016
cmp r8d, 0x38dfc0a9
jne 0x470920
lea r8, [0x00481700]
nop dword [rax + rax]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x470fc8
cmp r8d, 0x5272f85c
jne 0x470c28
lea r8, [0x00482780]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
xor eax, eax
jmp 0x470fa1
cmp r8d, 0x6bed3cfa
ja 0x4709a7
cmp r8d, 0x64fd0d3c
jne 0x470980
lea r8, [0x00482840]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
xor eax, eax
jmp 0x470f61
cmp r8d, 0x6bed3cfa
jne 0x470c28
lea r8, [0x004826c0]
cmp rdi, r8
jne 0x470c28
mov edi, dword [r9]
xor eax, eax
jmp 0x470f24
cmp r8d, 0x6d0f0857
jne 0x4709e0
lea r8, [0x00481d80]
nop word [rax + rax]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x470eba
cmp r8d, 0x81044065
jne 0x470a07
lea r8, [0x00481600]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x470e99
cmp r8d, 0x854f63b7
jne 0x470c28
lea r8, [0x00481900]
nop dword [rax + rax]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x470e34
cmp r8d, 0x99d6dd43
ja 0x470b13
cmp r8d, 0x95738979
ja 0x470ac0
cmp r8d, 0x8fc52ddb
jne 0x470a80
lea r8, [0x004828c0]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
xor eax, eax
jmp 0x470e12
cmp r8d, 0x95738979
jne 0x470c28
lea r8, [0x00482800]
cmp rdi, r8
jne 0x470c28
movzx edi, byte [r9]
xor rdi, rdx
nop
movabs rdx, 0x100000001b3
imul rdi, rdx
jmp 0x470845
cmp r8d, 0x99777383
jne 0x470ae7
lea r8, [0x00481e80]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x470dab
cmp r8d, 0x99d6dd43
jne 0x470c28
lea r8, [0x00482700]
nop dword [rax + rax]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
xor eax, eax
jmp 0x470d89
cmp r8d, 0xcb735792
ja 0x470b73
nop dword [rax]
cmp r8d, 0xbe66ff1c
jne 0x470b47
lea r8, [0x00481e40]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x470d22
cmp r8d, 0xcb735792
jne 0x470c28
lea r8, [0x00482640]
nop dword [rax + rax]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
xor eax, eax
jmp 0x470d00
cmp r8d, 0xd83fe3b3
jne 0x470ba0
lea r8, [0x00481640]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
jmp 0x470c92
cmp r8d, 0xe8fe0eb5
jne 0x470bc5
lea r8, [0x00481e00]
cmp rdi, r8
jne 0x470c28
mov rdi, qword [r9]
mov r9, qword [r9 + 8]
xor eax, eax
nop
jmp 0x470c42
cmp r8d, 0xe927f9e3
jne 0x470c28
lea r8, [0x004827c0]
cmp rdi, r8
jne 0x470c28
mov edi, dword [r9]
xor eax, eax
nop
jmp 0x470c20
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
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 0x470c04
jmp 0x470be2
lea rax, [0x004824c0]
lea rbx, [0x004b4830]
call sym.runtime.gopanic
lea rdi, [r10 + 0x10]
inc rax
cmp rax, r9
jge 0x470c56
mov r10, rdi
mov r11, qword [rdi]
mov rdi, qword [rdi + 8]
xor r12d, r12d
jmp 0x470c88
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
movzx r13d, byte [r12 + r11]
xor rdx, r13
inc r12
movabs r13, 0x100000001b3
imul rdx, r13
cmp r12, rdi
jl 0x470c6f
jmp 0x470c3b
inc rax
cmp rax, r9
jge 0x470ca2
mov r10d, dword [rdi + rax*4]
xor r11d, r11d
nop
jmp 0x470cd7
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10d, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 4
jl 0x470cbb
jmp 0x470c8f
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 0x470cdf
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
inc rax
cmp rax, r9
jge 0x470d30
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x470d65
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x470d49
jmp 0x470d1f
movzx r9d, dil
xor rdx, r9
inc rax
shr rdi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 8
jl 0x470d6d
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
inc rax
cmp rax, r9
jge 0x470db9
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x470dee
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x470dd2
jmp 0x470da8
movzx r9d, dil
xor rdx, r9
inc rax
shr rdi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 8
jl 0x470df6
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
inc rax
cmp rax, r9
jge 0x470e42
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x470e77
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x470e5b
jmp 0x470e31
movzx r10d, byte [rax + rdi]
xor rdx, r10
inc rax
nop
movabs r10, 0x100000001b3
imul rdx, r10
cmp rax, r9
jl 0x470e7f
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
inc rax
cmp rax, r9
jge 0x470ec8
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x470f01
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
nop dword [rax]
jmp 0x470845
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x470ee5
jmp 0x470eb7
movzx r9d, dil
xor rdx, r9
inc rax
shr edi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 4
jl 0x470f09
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
nop
jmp 0x470845
movzx r9d, dil
xor rdx, r9
inc rax
shr rdi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 8
jl 0x470f45
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
nop dword [rax + rax]
jmp 0x470845
movzx r9d, dil
xor rdx, r9
inc rax
shr rdi, 8
movabs r9, 0x100000001b3
imul rdx, r9
cmp rax, 8
jl 0x470f85
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
nop dword [rax + rax]
jmp 0x470845
inc rax
cmp rax, r9
jge 0x470fd6
mov r10d, dword [rdi + rax*4]
xor r11d, r11d
jmp 0x47100b
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10d, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 4
jl 0x470fef
jmp 0x470fc5
inc rax
cmp rax, r9
jge 0x471024
mov r10, qword [rdi + rax*8]
xor r11d, r11d
jmp 0x471059
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
movzx r12d, r10b
xor rdx, r12
inc r11
shr r10, 8
movabs r12, 0x100000001b3
imul rdx, r12
cmp r11, 8
jl 0x47103d
nop
jmp 0x471013
movzx r10d, byte [r9 + rdi]
xor rdx, r10
inc r9
movabs r10, 0x100000001b3
imul rdx, r10
nop dword [rax + rax]
cmp r9, r8
jl 0x471062
lea r8, [0x00482800]
mov rdi, rdx
movabs rdx, 0x100000001b3
jmp 0x470845
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