Function at 0x14016a850
Capabilities:
Hash data using murmur3

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x58
mov rbp, rcx
mov rsi, r8
mov rcx, rdx
call fcn.14016b0b0
mov r9d, eax
lea r14, [rbp + 0x18]
shr r9d, 0x10
mov r11d, eax
xor r9d, eax
mov r13d, 1
imul r10d, r9d, 0x85ebca6b
mov r9d, r10d
shr r9d, 0xd
xor r9d, r10d
mov r10d, r13d
imul ecx, r9d, 0xc2b2ae35
mov r9d, dword [r14 + 4]
mov edx, ecx
lea eax, [r9 - 1]
shr edx, 0x10
xor edx, ecx
cmovne r10d, edx
xor r15d, r15d
and eax, r10d
mov r8d, r15d
test r9d, r9d
jle 0x14016a90d
mov rbx, qword [r14 + 8]
nop dword [rax]
nop dword [rax + rax]
movsxd rcx, eax
lea rdx, [rcx + rcx*2]
lea rcx, [rbx + rdx*4]
mov edx, dword [rbx + rdx*4 + 8]
test edx, edx
je 0x14016a90d
cmp r10d, edx
jne 0x14016a8fd
cmp r11d, dword [rcx]
je 0x14016a910
sub eax, r13d
jns 0x14016a905
add eax, r9d
inc r8d
cmp r8d, r9d
jl 0x14016a8e0
mov rcx, r15
test rcx, rcx
lea rax, [rcx + 4]
cmove rax, r15
movsxd rax, dword [rax]
mov rcx, rax
mov dword [rsp + 0xb8], eax
mov rax, qword [rbp + 0x38]
mov r12, qword [rax + rcx*8]
mov rcx, rsi
call fcn.14016b0b0
mov r10d, dword [r14 + 4]
mov ecx, eax
shr ecx, 0x10
mov ebx, r13d
xor ecx, eax
mov edi, eax
imul edx, ecx, 0x85ebca6b
mov r9d, r15d
mov ecx, edx
shr ecx, 0xd
xor ecx, edx
imul edx, ecx, 0xc2b2ae35
mov ecx, edx
shr ecx, 0x10
xor ecx, edx
lea edx, [r10 - 1]
cmovne ebx, ecx
and edx, ebx
test r10d, r10d
jle 0x14016a9ad
mov r11, qword [r14 + 8]
nop word [rax + rax]
movsxd rax, edx
lea rcx, [rax + rax*2]
mov eax, dword [r11 + rcx*4 + 8]
lea r8, [r11 + rcx*4]
test eax, eax
je 0x14016a9ad
cmp ebx, eax
jne 0x14016a99d
cmp edi, dword [r8]
je 0x14016a9b0
sub edx, r13d
jns 0x14016a9a5
add edx, r10d
inc r9d
cmp r9d, r10d
jl 0x14016a980
mov r8, r15
test r8, r8
lea rax, [r8 + 4]
cmove rax, r15
xor ebx, ebx
movsxd rax, dword [rax]
lea r15, [rax*8]
mov rax, qword [rbp + 0x38]
mov qword [rsp + 0x40], r15
mov rbp, qword [r15 + rax]
cmp dword [rbp + 0x18], ebx
jle 0x14016aa47
mov r15d, dword [rsp + 0xb8]
xor edi, edi
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbp + 0x10]
lea rcx, [r12 + 0x10]
mov edx, r13d
mov rsi, qword [rdi + rax]
mov dword [rsi + 0x34], r15d
mov eax, dword [r12 + 0x18]
mov dword [rsi + 0x38], eax
call fcn.14016a700
movsxd rdx, dword [r12 + 0x18]
mov rax, qword [r12 + 0x10]
lea r8, [rax + rdx*8]
lea eax, [rdx + 1]
mov dword [r12 + 0x18], eax
test r8, r8
je 0x14016aa2f
mov qword [r8], rsi
inc ebx
add rdi, 8
cmp ebx, dword [rbp + 0x18]
jl 0x14016a9f0
mov r15, qword [rsp + 0x40]
mov rsi, qword [rsp + 0xb0]
mov rax, qword [rsp + 0xa8]
movups xmm0, xmmword [rax + 0x10]
mov rax, qword [rsp + 0xa0]
movups xmmword [r12], xmm0
mov rax, qword [rax + 0x38]
mov rbx, qword [r15 + rax]
mov qword [r15 + rax], 0
test rbx, rbx
je 0x14016aa8c
test byte [rbx + 0x20], r13b
je 0x14016aa84
mov rcx, qword [rbx + 0x10]
call fcn.14008b300
mov rcx, rbx
call fcn.1402dfaa0
cmp dword [rsi + 0xc], 0
jne 0x14016aadf
lock xadd dword [0x1404631e8], r13d
lea ebx, [r13 + 1]
test ebx, ebx
jne 0x14016aadc
lea rax, str.This_should_never_wrap_as_it_should_only_be_called_once_for_each_GrOp_subclass.
xor r8d, r8d
mov qword [rsp + 0x30], rax
lea rcx, str.e:_build_nw26_win64_node_webkit_src_third_party_skia_srcgpuops_GrOp.h
mov dword [rsp + 0x28], 0xd9
lea r9, str._s__d_:_fatal_error:___s__n
mov edx, 0xd9
mov qword [rsp + 0x20], rcx
call fcn.14008b180
call fcn.14008b2a0
mov dword [rsi + 0xc], ebx
mov eax, dword [rsi + 0xc]
lea rdx, [rsp + 0xb0]
mov rcx, r14
mov dword [rsp + 0xb0], eax
call fcn.14016ac20
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret