Function at 0x4285c0
Capabilities:
Hash data using murmur3

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x20]
cmp rax, qword [rcx + 0x10]
jbe 0x428860
sub rsp, 0xa0
mov qword [rsp + 0x98], rbp
lea rbp, [rsp + 0x98]
mov rdx, qword [rsp + 0xa8]
test byte [rdx], al
mov ebx, dword [rdx + 0x10128]
mov dword [rsp + 0x1c], ebx
mov rsi, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xd0]
mov r9, qword [rsp + 0xc8]
mov rax, r8
xor ecx, ecx
jmp 0x4286e9
inc r14
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xb0]
cmp r14, r8
jge 0x4286db
lea rdx, [r10 + r14]
mov qword [rsp + 0x90], rdx
mov dl, byte [rdx]
nop
cmp r8, r14
jbe 0x42882f
movzx esi, byte [r14 + r13]
not esi
and edx, esi
test dl, dl
je 0x428534
mov qword [rsp + 0x40], r14
xor esi, esi
jmp 0x4285a0
lea rsi, [rcx + 1]
mov rdi, qword [rsp + 0xb8]
mov r11, qword [rsp + 0x68]
mov r15, qword [rsp + 0x78]
mov rcx, rax
mov rax, qword [rsp + 0xd0]
cmp rsi, 8
jae 0x428534
mov qword [rsp + 0x30], rcx
mov rcx, rsi
mov edi, 1
shl edi, cl
test dil, dl
je 0x4286d1
lea rdi, [r12 + r14*8]
add rdi, rcx
cmp rdi, 0x200
jae 0x428822
mov rdi, qword [r9 + rdi*8 + 0x20000]
mov r15d, dword [rdi + 0x58]
lea r11d, [rbx - 2]
cmp r15d, r11d
jne 0x4286c9
lea r15d, [rbx - 1]
mov eax, r11d
lock cmpxchg dword [rdi + 0x58], r15d
sete r11b
nop dword [rax]
test r11b, r11b
jne 0x42860f
mov rax, qword [rsp + 0x30]
jmp 0x42857f
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x20], rdi
mov rax, qword [rdi + 0x20]
mov qword [rsp + 0x28], rax
nop
nop
mov rcx, qword [rsp + 0xa8]
mov qword [rsp], rcx
call fcn.0040c280
mov rax, qword [rsp + 0x20]
mov qword [rsp], rax
mov byte [rsp + 8], 0
call fcn.00425c00
movzx eax, byte [rsp + 0x10]
mov qword [rsp + 0x58], rax
nop
nop
mov rcx, qword [rsp + 0xa8]
mov qword [rsp], rcx
call fcn.0040c020
mov rax, qword [rsp + 0x90]
mov cl, byte [rax]
mov rdx, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x30]
add rdx, rbx
mov rsi, qword [rsp + 0x58]
test rsi, rsi
cmovne rbx, rdx
mov r13, qword [rsp + 0x80]
mov r14, qword [rsp + 0x40]
movzx edx, byte [r14 + r13]
not edx
and edx, ecx
mov rcx, qword [rsp + 0x60]
mov rsi, rcx
mov r8, qword [rsp + 0x38]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x88]
mov r12, qword [rsp + 0x70]
mov rax, rbx
mov ebx, dword [rsp + 0x1c]
jmp 0x42857f
xor r11d, r11d
jmp 0x428600
mov rax, qword [rsp + 0x30]
jmp 0x42857f
lea r9, [r11 + r8*8]
shl r8, 3
sub r15, r8
mov r8, r15
test r8, r8
jbe 0x4287bb
mov r10, r9
shr r9, 9
nop dword [rax]
cmp r9, rdi
jae 0x428854
mov r9, qword [rsi + r9*8]
mov r11, r9
shr r9, 0x14
cmp r9, 0x40
jae 0x428847
mov r9, qword [rdx + r9*8 + 0x10198]
test byte [r9], al
and r11, 0xfffff
mov r9, qword [r9 + r11*8]
test byte [r9], al
mov r11, r10
and r10, 0x1ff
mov r12, r10
shr r10, 3
cmp r10, 0x40
ja 0x42883a
lea r13, [r10 - 0x40]
mov r14, r13
sar r13, 0x3f
and r13, r10
lea r10, [r9 + r13]
lea r10, [r10 + 0x21000]
neg r14
lea r13, [r9 + r13]
lea r13, [r13 + 0x21040]
mov r15, r8
shr r8, 3
cmp r14, r8
jbe 0x4287b6
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x88], r10
mov qword [rsp + 0x80], r13
mov qword [rsp + 0x68], r11
xor r14d, r14d
jmp 0x428547
mov r8, r14
jmp 0x428785
cmp byte [0x008b5d50], 0
jne 0x4287dc
mov qword [rsp + 0xd8], rcx
mov rbp, qword [rsp + 0x98]
add rsp, 0xa0
ret
mov qword [rsp + 0x50], rcx
nop
nop
mov qword [rsp], rdx
call fcn.0040c280
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x50]
sub rax, rcx
shl rax, 0xd
mov qword [rsp], rax
call fcn.004599e0
nop
mov rax, qword [rsp + 0xa8]
mov qword [rsp], rax
call fcn.0040c020
mov rcx, qword [rsp + 0x50]
jmp 0x4287c4
mov rax, rdi
mov ecx, 0x200
call fcn.0046cac0
mov rax, r14
mov rcx, r8
call fcn.0046caa0
mov rax, r10
mov ecx, 0x40
call fcn.0046cb80
mov rax, r9
mov ecx, 0x40
call fcn.0046cac0
mov rax, r9
mov rcx, rdi
call fcn.0046cac0
nop
call fcn.0046a8c0
jmp fcn.004284c0