Function at 0x1402555c0
Capabilities:
Hash data using murmur3

Disassembly:
lea rbx, [rsp - 0x58]
cmp rbx, qword [r15 + 8]
jbe fcn.140095bf0
mov rsp, rbx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x50], r8
mov eax, dword [r15 + 0x48]
test eax, eax
je 0x140255d1a
mov eax, dword [r14 + rax*8 + 0xdc]
test eax, eax
je 0x140255d36
mov esi, 0
mov ebx, eax
mov ecx, r9d
nop word [rax + rax]
nop
mov edi, dword [rdx + 0x10]
test edi, edi
jne 0x14025568f
nop dword [rax + rax]
cmp dword [rdx + 0x2c], 0
je 0x14025564f
mov rax, qword [rdx + 0x20]
mov rdi, r8
add rdi, rax
lock cmpxchg qword [rdx + 0x20], rdi
je 0x140255d26
sub dword [r15 + 0x10], 1
jg 0x140255610
call fcn.140116590
nop
jmp 0x140255610
mov eax, dword [rdx + 0x10]
test eax, eax
jne 0x14025562a
mov eax, 0
mov r9d, 1
lock cmpxchg dword [rdx + 0x2c], r9d
jne 0x14025562a
mov eax, dword [rdx + 0x10]
test eax, eax
je 0x140255c25
mov dword [rdx + 0x2c], 0
lock add dword [rsp], 0
sub dword [r15 + 0x10], 1
jg 0x140255610
call fcn.140116590
nop
jmp 0x140255610
mov r9d, dword [r14 + rdi*8 + 4]
test r9d, r9d
je 0x14025582f
mov eax, r9d
dec eax
and eax, ebx
lea r10, [r14 + rdi*8]
cmp r9d, eax
jbe 0x140256110
mov eax, eax
mov r11d, dword [r10 + rax*4 + 8]
nop dword [rax + rax]
test r11d, r11d
jne 0x140255731
cmp dword [rdx + 0x2c], 0
jne 0x14025589c
cmp dword [rdx + 0x2c], 0
jne 0x140255870
mov eax, 0
mov edi, 1
lock cmpxchg dword [rdx + 0x2c], edi
jne 0x1402558a6
mov edi, dword [rdx + 0x10]
test edi, edi
je 0x14025587a
mov eax, dword [r14 + rdi*8 + 4]
test eax, eax
jne 0x1402557d8
mov dword [rdx + 0x2c], 0
lock add dword [rsp], 0
sub dword [r15 + 0x10], 1
nop dword [rax + rax]
jg 0x140255610
call fcn.140116590
nop
jmp 0x140255610
test ecx, ecx
je 0x1402557d1
mov rax, qword [r14 + r11*8 + 0x88]
mov r12, r8
add r12, rax
lock cmpxchg qword [r14 + r11*8 + 0x88], r12
je 0x140255d26
cmp edi, dword [rdx + 0x10]
jne 0x140255825
cmp r9d, 0x20
jb 0x1402558b0
mov esi, 0
mov eax, dword [r15 + 0x48]
mov edi, ebx
shl edi, 0xd
xor ebx, edi
mov edi, ebx
shr edi, 0x11
xor ebx, edi
mov edi, ebx
shl edi, 5
xor ebx, edi
test eax, eax
je 0x1402557b1
mov dword [r14 + rax*8 + 0xdc], ebx
sub dword [r15 + 0x10], 1
nop
jg 0x140255610
call fcn.140116590
nop
jmp 0x140255610
mov dword [0xdc], ebx
sub dword [r15 + 0x10], 1
nop
jg 0x140255610
call fcn.140116590
nop
jmp 0x140255610
mov ecx, 1
jmp 0x14025576f
mov r9d, eax
dec r9d
and r9d, ebx
lea rdi, [r14 + rdi*8]
cmp eax, r9d
jbe 0x140256127
mov eax, r9d
mov r9d, dword [rdi + rax*4 + 8]
test r9d, r9d
je 0x140255e9a
mov dword [rdx + 0x2c], 0
lock add dword [rsp], 0
sub dword [r15 + 0x10], 1
jg 0x140255610
call fcn.140116590
nop
nop dword [rax]
jmp 0x140255610
mov esi, 0
jmp 0x14025576f
cmp dword [rdx + 0x2c], 0
jne 0x14025562a
nop dword [rax]
cmp edi, dword [rdx + 0x10]
jne 0x14025562a
mov eax, 0
mov r9d, 1
lock cmpxchg dword [rdx + 0x2c], r9d
jne 0x14025562a
mov eax, dword [rdx + 0x10]
cmp eax, edi
jne 0x140255674
jmp 0x140255f38
mov esi, 0
jmp 0x14025576f
mov dword [rdx + 0x2c], 0
lock add dword [rsp], 0
sub dword [r15 + 0x10], 1
jg 0x140255610
call fcn.140116590
nop
jmp 0x140255610
mov esi, 0
jmp 0x14025576f
mov esi, 0
jmp 0x14025576f
test esi, esi
je 0x140255912
nop dword [rax + rax]
cmp dword [rdx + 0x2c], 0
jne 0x14025576f
mov eax, 0
mov r11d, 1
lock cmpxchg dword [rdx + 0x2c], r11d
nop dword [rax + rax]
jne 0x14025576f
mov eax, dword [rdx + 0x10]
cmp eax, edi
je 0x14025591c
mov dword [rdx + 0x2c], 0
lock add dword [rsp], 0
sub dword [r15 + 0x10], 1
jle 0x140255c08
mov esi, 0
jmp 0x140255610
mov esi, 1
jmp 0x14025576f
lea rsi, [r14 + 0x24c0c8]
mov rdi, qword [r15 + 0x28]
mov r11d, r9d
shl r11d, 1
mov r12d, r11d
shl r12, 2
lea r12, [r12 + 0xf]
and r12, 0xfffffffffffffff8
mov r13, r12
add r13, rdi
sub rsi, r14
shl rsi, 2
cmp r13, qword [r15 + 0x20]
ja 0x140255bb3
mov qword [r15 + 0x28], r13
prefetchnta byte [r12 + rdi + 0xc0]
prefetchnta byte [r12 + rdi + 0x100]
prefetchnta byte [r12 + rdi + 0x140]
prefetchnta byte [r12 + rdi + 0x180]
mov dword [rdi], esi
mov dword [rdi + 4], r11d
mov qword [rsp + 0x10], rdi
lea rax, [rdi + 8]
lea rsi, [r10 + 8]
cmp r11d, r9d
mov r10d, r11d
cmova r10d, r9d
mov r9d, r10d
mov r12d, r11d
cmp r11d, r10d
mov r13, r12
cmova r13, r9
cmp r13, 8
jb 0x140255aff
mov qword [rsp + 0x38], r12
lea r12, [r13 - 8]
mov rdi, 0
nop word [rax + rax]
nop
vmovdqu ymm0, ymmword [rsi + rdi*4]
vmovdqu ymmword [rax + rdi*4], ymm0
lea rdi, [rdi + 8]
nop
cmp rdi, r12
jle 0x1402559d0
lea r12, [r13 - 4]
cmp rdi, r12
jg 0x140255a00
vmovdqu xmm0, xmmword [rsi + rdi*4]
vmovdqu xmmword [rax + rdi*4], xmm0
lea rdi, [rdi + 4]
lea r12, [r13 - 2]
cmp rdi, r12
jg 0x140255a1d
vmovq xmm0, qword [rsi + rdi*4]
vmovq qword [rax + rdi*4], xmm0
lea rdi, [rdi + 2]
dec r13
cmp rdi, r13
jg 0x140255a2f
mov esi, dword [rsi + rdi*4]
mov dword [rax + rdi*4], esi
cmp r11d, r10d
je 0x140255af8
mov r12, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x10]
lea rax, [rdi + r9*4 + 8]
sub r12, r9
vpxor xmm0, xmm0, xmm0
cmp r12, 8
jl 0x140255b15
lea rsi, [r12 - 8]
mov r9, 0
nop dword [rax + rax]
nop
vmovdqu ymmword [rax + r9*4], ymm0
lea r9, [r9 + 8]
cmp r9, rsi
jle 0x140255a70
lea rsi, [r12 - 4]
cmp r9, rsi
jg 0x140255b10
vmovdqu xmmword [rax + r9*4], xmm0
lea rsi, [r9 + 4]
lea r9, [r12 - 2]
nop dword [rax]
cmp rsi, r9
jg 0x140255ab3
vmovq qword [rax + rsi*4], xmm0
lea rsi, [rsi + 2]
dec r12
cmp rsi, r12
jg 0x140255ac6
mov dword [rax + rsi*4], 0
mov eax, dword [rdi]
test rax, 2
jne 0x140255b55
sub rdi, r14
shr rdi, 3
mov dword [rdx + 0x10], edi
lock add dword [rsp], 0
mov eax, dword [rdx]
test rax, 2
je 0x1402558f1
jmp 0x140255b25
mov rdi, qword [rsp + 0x10]
jmp 0x140255ac6
mov qword [rsp + 0x38], r12
mov rdi, 0
jmp 0x1402559e5
mov rsi, r9
jmp 0x140255a97
mov r9, 0
nop dword [rax]
jmp 0x140255a7f
mov rax, rdx
mov rsi, rax
and rsi, 0xfffffffffff00000
lea rdi, [rsi + 0x1030]
sub rax, rdi
shr rax, 9
cmp byte [rsi + rax + 0x30], 0
je 0x1402558f1
mov byte [rsi + rax + 0x30], 0
jmp 0x1402558f1
mov rsi, rdi
nop dword [rax + rax]
test rax, 1
jne 0x140255b9a
mov rax, rsi
and rax, 0xfffffffffff00000
lea r9, [rax + 0x1030]
sub rsi, r9
shr rsi, 9
cmp byte [rax + rsi + 0x30], 0
je 0x140255ad5
mov byte [rax + rsi + 0x30], 0
jmp 0x140255ad5
nop word [rax + rax]
cmp byte [rsi - 8], 0
je 0x140255ad5
mov byte [rsi - 8], 0
jmp 0x140255ad5
mov qword [rsp + 0x10], r10
mov dword [rsp + 0x34], r9d
mov dword [rsp + 0x4c], ebx
mov dword [rsp + 0x48], ecx
lea rax, [r14 + rax*8]
mov rdx, rsi
mov r8d, r11d
mov dword [rsp + 0x30], r11d
mov qword [rsp + 0x18], rax
call fcn.14007ecd0
nop
mov rdi, rax
mov r11d, dword [rsp + 0x30]
mov r10, qword [rsp + 0x10]
mov r9d, dword [rsp + 0x34]
mov ebx, dword [rsp + 0x4c]
mov ecx, dword [rsp + 0x48]
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x28]
jmp 0x140255982
mov dword [rsp + 0x4c], ebx
mov dword [rsp + 0x48], ecx
call fcn.140116590
nop
mov esi, 0
mov rdx, qword [rsp + 0x28]
jmp 0x140255610
mov qword [rsp + 0x20], r14
mov dword [rsp + 0x4c], ebx
mov dword [rsp + 0x48], ecx
lea rcx, [r14 + 0x24c178]
lea rdx, [r14 + 0x24c0c8]
mov rbx, qword [r15 + 0x28]
lea r8, [rbx + 0x128]
cmp r8, qword [r15 + 0x20]
ja 0x140255f75
mov qword [r15 + 0x28], r8
prefetchnta byte [rbx + 0x1e8]
prefetchnta byte [rbx + 0x228]
prefetchnta byte [rbx + 0x268]
prefetchnta byte [rbx + 0x2a8]
test rbx, rbx
je 0x140255f75
mov r8, qword [rsp + 0x50]
mov rax, rbx
lea rsi, [rbx + 0x10]
mov dword [rbx + 4], 2
sub rdx, r14
shl rdx, 2
mov dword [rbx], edx
mov qword [rbx + 8], 0
sub rcx, r14
shl rcx, 2
mov dword [rbx + 0x10], ecx
mov qword [rbx + 0x98], r8
mov dword [rbx + 0x120], 0
mov ebx, dword [rsp + 0x4c]
and ebx, 1
mov edx, ebx
sub rsi, r14
shr rsi, 3
mov dword [rax + rdx*4 + 8], esi
mov edx, dword [rax]
test rdx, 2
jne 0x140255e55
mov rdx, qword [rsp + 0x28]
sub rax, r14
shr rax, 3
mov dword [rdx + 0x10], eax
mov eax, dword [rdx]
test rax, 2
jne 0x140255e20
mov dword [rdx + 0x2c], 0
lock add dword [rsp], 0
add rsp, 0x58
sub dword [r15 + 0x10], 1
jle fcn.140116590
ret
mov eax, dword [0xdc]
jmp 0x1402555f0
add rsp, 0x58
sub dword [r15 + 0x10], 1
jle fcn.140116590
ret
mov eax, 0x9e3779b9
lock xadd dword [r14 + 0x33518c], eax
mov ecx, dword [r14 + 0x33519c]
lea ebx, [rax - 0x61c88647]
cmp eax, 0x61c88647
mov eax, 1
cmove ebx, eax
nop
test ecx, ecx
je 0x140255f4e
lea rcx, [r14 + rcx*8]
movabs rax, 0xbb67ae8584caa73b
lock xadd qword [rcx + 8], rax
mov ecx, dword [r15 + 0x48]
mov rsi, rax
shr rsi, 0x21
xor rsi, rax
movabs rax, 0xff51afd7ed558ccd
imul rsi, rax
mov rax, rsi
shr rax, 0x21
xor rsi, rax
movabs rax, 0xc4ceb9fe1a85ec53
imul rsi, rax
mov rax, rsi
shr rax, 0x21
xor rsi, rax
nop word [rax + rax]
test ecx, ecx
je 0x140255dfb
mov qword [r14 + rcx*8 + 0xe0], rsi
test ecx, ecx
je 0x140255e05
mov dword [r14 + rcx*8 + 0xdc], ebx
test ecx, ecx
je 0x140255e0e
mov eax, dword [r14 + rcx*8 + 0xdc]
mov r9d, 1
jmp 0x1402555f8
mov qword [0xe0], rsi
jmp 0x140255dd0
mov dword [0xdc], ebx
jmp 0x140255de0
mov eax, dword [0xdc]
mov r9d, 1
jmp 0x1402555f8
mov rax, rdx
mov rcx, rax
and rcx, 0xfffffffffff00000
lea rbx, [rcx + 0x1030]
sub rax, rbx
shr rax, 9
nop dword [rax + rax]
cmp byte [rcx + rax + 0x30], 0
je 0x140255cfe
mov byte [rcx + rax + 0x30], 0
jmp 0x140255cfe
mov rcx, rax
nop dword [rax + rax]
test rdx, 1
jne 0x140255f25
mov rdx, rcx
and rdx, 0xfffffffffff00000
lea rbx, [rdx + 0x1030]
sub rcx, rbx
shr rcx, 9
cmp byte [rdx + rcx + 0x30], 0
je 0x140255ce0
mov byte [rdx + rcx + 0x30], 0
jmp 0x140255ce0
mov dword [rsp + 0x48], ecx
lea rdx, [r14 + 0x24c178]
mov rcx, qword [r15 + 0x28]
lea r9, [rcx + 0x118]
sub rdx, r14
shl rdx, 2
nop word [rax + rax]
cmp r9, qword [r15 + 0x20]
ja 0x140256078
mov qword [r15 + 0x28], r9
prefetchnta byte [rcx + 0x1d8]
mov dword [rcx], edx
mov qword [rcx + 0x88], r8
mov dword [rcx + 0x110], 0
sub rcx, r14
shr rcx, 3
mov dword [rdi + rax*4 + 8], ecx
mov eax, dword [rdi]
nop word [rax + rax]
test rax, 2
jne 0x140256025
mov r8, qword [rsp + 0x28]
mov dword [r8 + 0x2c], 0
lock add dword [rsp], 0
nop
jmp 0x140255d26
cmp byte [rcx - 8], 0
je 0x140255ce0
mov byte [rcx - 8], 0
jmp 0x140255ce0
mov dword [rsp + 0x48], ecx
lea rax, [r14 + rax*8]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x4c], ebx
jmp 0x140255c32
mov dword [rsp + 0x4c], ebx
lea rdx, [r14 + 0x335198]
call fcn.1400b0800
nop
mov rcx, rax
mov ebx, dword [rsp + 0x4c]
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x28]
jmp 0x140255d6c
mov ebx, dword [rsp + 0x4c]
mov r8, qword [rsp + 0x28]
mov r9, qword [r15 + 0x28]
lea r10, [r9 + 0x10]
sub rdx, r14
shl rdx, 2
lea rdi, [r14 + rdi*8]
mov qword [rsp + 0x18], rdi
cmp r10, qword [r15 + 0x20]
ja 0x1402560d8
mov qword [r15 + 0x28], r10
prefetchnta byte [r9 + 0xd0]
prefetchnta byte [r9 + 0x110]
prefetchnta byte [r9 + 0x150]
prefetchnta byte [r9 + 0x190]
mov dword [r9], edx
mov dword [r9 + 4], 2
mov qword [r9 + 8], 0
mov rdx, qword [r15 + 0x28]
lea r10, [rdx + 0x118]
sub rcx, r14
shl rcx, 2
cmp r10, qword [r15 + 0x20]
ja 0x1402560a7
mov qword [r15 + 0x28], r10
prefetchnta byte [rdx + 0x1d8]
mov dword [rdx], ecx
mov r10, qword [rsp + 0x50]
mov qword [rdx + 0x88], r10
mov dword [rdx + 0x110], 0
mov rsi, rdx
mov rax, r9
nop dword [rax]
jmp 0x140255cc1
mov r8, qword [rsp + 0x28]
test rax, 1
jne 0x140256065
mov rdx, rdi
and rdx, 0xfffffffffff00000
lea rax, [rdx + 0x1030]
sub rdi, rax
shr rdi, 9
cmp byte [rdx + rdi + 0x30], 0
je 0x140255f12
mov byte [rdx + rdi + 0x30], 0
nop
jmp 0x140255f12
cmp byte [rdi - 8], 0
je 0x140255f12
mov byte [rdi - 8], 0
jmp 0x140255f12
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x10], rdi
mov dword [rsp + 0x44], esi
mov dword [rsp + 0x4c], ebx
call fcn.14007f170
nop
mov rcx, rax
mov rax, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x10]
mov r8, qword [rsp + 0x50]
jmp 0x140255ed7
mov qword [rsp + 0x10], r9
mov dword [rsp + 0x44], esi
mov dword [rsp + 0x4c], ebx
mov rdx, rcx
call fcn.14007f170
nop
mov rdx, rax
mov r9, qword [rsp + 0x10]
mov ebx, dword [rsp + 0x4c]
mov r10, qword [rsp + 0x50]
mov r8, qword [rsp + 0x28]
jmp 0x140256005
mov qword [rsp + 0x10], rcx
mov dword [rsp + 0x44], esi
mov dword [rsp + 0x4c], ebx
mov r8d, 2
call fcn.14007ecd0
nop
mov r9, rax
mov rcx, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
mov esi, dword [rsp + 0x44]
mov ebx, dword [rsp + 0x4c]
mov r8, qword [rsp + 0x28]
jmp 0x140255fcf
mov dword [rsp + 0x44], esi
mov dword [rsp + 0x4c], ebx
mov dword [rsp + 0x48], ecx
mov edx, eax
mov r8d, r9d
call fcn.14010b8d0
nop
mov r10d, ecx
mov rcx, r8
mov edx, r9d
mov r8d, eax
call fcn.140104f20
nop
mov rcx, qword [rsp + 0x28]
mov dword [rcx + 0x2c], 0
lock add dword [rsp], 0
lea r8, [rsp + 0x60]
mov rdx, rax
call fcn.1401007f0
nop
int3