Function at 0x423770
Capabilities:
Hash data using murmur3

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x18]
jbe 0x423a93
sub rsp, 0x48
mov qword [rsp + 0x40], rbp
lea rbp, [rsp + 0x40]
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0x50]
cmp dword [rcx + 0x1c], 0
je 0x423a5b
mov qword [rsp], rcx
call fcn.00409ce0
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax + 0x30]
mov rcx, qword [rcx + 0x130]
mov rcx, qword [rcx + 8]
add qword [0x005ade58], rcx
mov rcx, qword [rax + 0x30]
mov rcx, qword [rcx + 0x130]
mov qword [rcx + 8], 0
mov rcx, qword [rax + 0x30]
mov rcx, qword [rcx + 0x130]
mov rcx, qword [rcx + 0x20]
add qword [0x005ade28], rcx
mov rax, qword [rax + 0x30]
mov rax, qword [rax + 0x130]
mov qword [rax + 0x20], 0
mov rax, qword [rsp + 0x50]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 8], rcx
lea rdx, [0x005ac748]
mov qword [rsp + 0x10], rdx
call fcn.00423d70
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x30], rax
test rax, rax
jne 0x4238e7
cmp dword [0x005ab0e0], 0
jne 0x4238cd
cmp byte [0x0059afd0], 0
jne 0x423887
mov rax, qword [rsp + 0x50]
mov qword [rsp], rax
call fcn.00409ed0
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x68], rax
mov rbp, qword [rsp + 0x40]
add rsp, 0x48
ret
nop
mov qword [rsp + 0x28], 0
mov rax, qword [0x005ade50]
mov qword [rsp + 0x28], rax
mov byte [rsp], 0x21
mov qword [rsp + 8], 0xffffffffffffffff
lea rax, [rsp + 0x28]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 1
mov qword [rsp + 0x20], 1
call fcn.00447910
jmp 0x423865
lea rax, [0x005ab660]
mov qword [rsp], rax
call fcn.004174f0
mov rax, qword [rsp + 0x30]
jmp 0x42385c
mov rcx, qword [rsp + 0x50]
mov edx, dword [rcx + 0x18]
xchg dword [rax + 0x58], edx
mov edx, dword [rcx + 0x18]
shr edx, 1
and edx, 1
lea rdx, [rdx + rdx*4]
lea rdx, [rcx + rdx*8]
lea rdx, [rdx + 0x40]
mov qword [rsp], rdx
mov qword [rsp + 8], rax
call fcn.00421580
mov rax, qword [rsp + 0x30]
mov byte [rax + 0x63], 1
mov word [rax + 0x60], 0
movzx ecx, byte [rsp + 0x60]
mov byte [rax + 0x62], cl
shr cl, 1
test cl, cl
jne 0x423a0a
mov rdx, qword [rax + 0x20]
shl rdx, 0xd
mov qword [rax + 0x68], rdx
mov byte [rax + 0x65], 0
mov word [rax + 0x5c], 0
mov byte [rax + 0x66], 0
mov word [rax + 0x5e], 0
nop
nop
mov rdx, qword [rax + 0x18]
nop
movabs rbx, 0x800000000000
add rbx, rdx
mov rsi, rbx
shr rbx, 0x2a
cmp rbx, 0x40
jae 0x423a78
lea rcx, [0x00590c90]
mov rcx, qword [rcx + rbx*8]
shr rsi, 0x16
and rsi, 0xfffff
mov rbx, qword [rcx + rsi*8]
test byte [rbx], al
test byte [rcx], al
mov rcx, rdx
shr rdx, 0x10
and rdx, 0x3f
movzx esi, byte [rbx + rdx + 0x21000]
shr rcx, 0xd
and rcx, 7
bts esi, ecx
mov byte [rbx + rdx + 0x21000], sil
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
add qword [rdx + 0x98], rcx
movzx ebx, byte [rsp + 0x61]
test bl, bl
je 0x423853
inc qword [0x005ac758]
mov rbx, qword [rax + 0x68]
add qword [0x00590a58], rbx
inc qword [0x00590a60]
shl rcx, 0xd
lea rbx, [0x005ade50]
lock xadd qword [rbx], rcx
jmp 0x423853
movsx rdx, cl
cmp rdx, 0x43
jae 0x423a85
lea rbx, [0x0057a1e0]
movzx ebx, word [rbx + rdx*2]
mov qword [rax + 0x68], rbx
lea rdx, [rdx + rdx*2]
mov rbx, rdx
shl rdx, 1
lea rsi, [0x0057c160]
movzx edi, byte [rsi + rdx]
mov byte [rax + 0x65], dil
movzx edi, word [rsi + rbx*2 + 2]
mov word [rax + 0x5c], di
movzx edx, byte [rsi + rdx + 1]
mov byte [rax + 0x66], dl
movzx edx, word [rsi + rbx*2 + 4]
mov word [rax + 0x5e], dx
jmp 0x423955
mov qword [rsp], rcx
mov rax, qword [rsp + 0x58]
mov qword [rsp + 8], rax
call fcn.00423180
mov rcx, qword [rsp + 0x50]
jmp 0x4237bc
mov rax, rbx
mov ecx, 0x40
call fcn.004561b0
mov rax, rdx
mov ecx, 0x43
call fcn.004561a0
nop
call fcn.00441750
jmp fcn.00423770