Function at 0x423d30
Capabilities:
Hash data using murmur3

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x18]
jbe 0x424053
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 0x42401b
mov qword [rsp], rcx
call fcn.00409df0
mov rax, qword [rsp + 0x38]
mov rcx, qword [rax + 0x30]
mov rcx, qword [rcx + 0x130]
mov rcx, qword [rcx + 8]
add qword [0x005d7378], 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 [0x005d7348], 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, [0x005d5c68]
mov qword [rsp + 0x10], rdx
call fcn.00424330
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x30], rax
test rax, rax
jne 0x423ea7
cmp dword [0x005d45c0], 0
jne 0x423e8d
cmp byte [0x005c44b0], 0
jne 0x423e47
mov rax, qword [rsp + 0x50]
mov qword [rsp], rax
call fcn.00409fe0
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 [0x005d7370]
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.00447d80
jmp 0x423e25
lea rax, [0x005d4b80]
mov qword [rsp], rax
call fcn.00417ab0
mov rax, qword [rsp + 0x30]
jmp 0x423e1c
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.00421b40
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 0x423fca
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 0x424038
lea rcx, [0x005ba170]
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 0x423e13
inc qword [0x005d5c78]
mov rbx, qword [rax + 0x68]
add qword [0x005b9f38], rbx
inc qword [0x005b9f40]
shl rcx, 0xd
lea rbx, [0x005d7370]
lock xadd qword [rbx], rcx
jmp 0x423e13
movsx rdx, cl
cmp rdx, 0x43
jae 0x424045
lea rbx, [0x005a13c0]
movzx ebx, word [rbx + rdx*2]
mov qword [rax + 0x68], rbx
lea rdx, [rdx + rdx*2]
mov rbx, rdx
shl rdx, 1
lea rsi, [0x005a33e0]
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 0x423f15
mov qword [rsp], rcx
mov rax, qword [rsp + 0x58]
mov qword [rsp + 8], rax
call fcn.00423740
mov rcx, qword [rsp + 0x50]
jmp 0x423d7c
mov rax, rbx
mov ecx, 0x40
call fcn.00456620
mov rax, rdx
mov ecx, 0x43
call fcn.00456610
nop
call fcn.00441d10
jmp fcn.00423d30