Function at 0x140181260
Capabilities:
Hash data using murmur3

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov r14, rcx
movabs r12, 0xc4ceb9fe1a85ec53
mov qword [rsp + 0x78], r12
lea rax, [rbp - 0x68]
mov qword [rbp - 0x80], rax
lea rax, [rbp - 0x68]
mov qword [rbp - 0x78], rax
xor r15d, r15d
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], r15
mov qword [rbp - 0x60], r15
mov qword [rbp - 0x58], 0x20
mov edx, r15d
mov rcx, qword [rcx]
movzx edi, word [rcx + 0xbac]
shl rdi, 0x20
mov eax, dword [rcx + 0xba8]
or rdi, rax
mov qword [rbp + 0xa8], rdi
mov eax, dword [rcx + 0xbae]
lea r8, [rdi + rax*8]
mov qword [rbp - 0x28], r8
mov rcx, rdi
cmp rdi, r8
je 0x140181a24
mov rax, qword [rcx]
add edx, dword [rax + 0x7d]
add rcx, 8
cmp rcx, r8
jne 0x1401812f1
test edx, edx
je 0x140181a24
movabs rsi, 0x1c71c71c71c71c72
movabs r13, 0xff51afd7ed558ccd
nop dword [rax]
mov rax, qword [r14]
movzx eax, byte [rax + 0x7a]
test al, al
jne 0x140181a7d
mov rcx, qword [rdi]
movzx ebx, word [rcx + 0x8f]
shl rbx, 0x20
mov eax, dword [rcx + 0x8b]
or rbx, rax
mov qword [rbp + 0xa0], rbx
movzx r9d, word [rcx + 0x7b]
shl r9, 0x20
mov eax, dword [rcx + 0x77]
or r9, rax
mov qword [rbp + 0x98], r9
mov ecx, dword [rcx + 0x7d]
lea rax, [r9 + rcx*8]
add rcx, rax
mov qword [rbp - 0x30], rcx
cmp r9, rcx
je 0x140181951
nop word [rax + rax]
mov rcx, qword [rdi]
movzx r8d, word [rcx + 0x8f]
shl r8, 0x20
mov eax, dword [rcx + 0x8b]
or r8, rax
mov eax, dword [rcx + 0x91]
lea rcx, [rax + rax*8]
add r8, rcx
cmp rbx, r8
je 0x140181470
movsx r11, word [r9 + 4]
shl r11, 0x20
mov eax, dword [r9]
or r11, rax
mov r10, rbx
sub r8, rbx
mov rax, rsi
imul r8
mov rax, rdx
shr rax, 0x3f
add rdx, rax
test rdx, rdx
jle 0x140181425
nop dword [rax + rax]
mov r8, rdx
shr r8, 1
lea r9, [r10 + r8*8]
movsx rcx, word [r9 + r8 + 4]
shl rcx, 0x20
mov eax, dword [r9 + r8]
or rcx, rax
cmp rcx, r11
jae 0x140181416
lea r10, [r8 + 9]
add r10, r9
mov rax, 0xffffffffffffffff
sub rax, r8
add rdx, rax
jmp 0x140181419
mov rdx, r8
test rdx, rdx
jg 0x1401813e0
mov r9, qword [rbp + 0x98]
mov rbx, r10
mov qword [rbp + 0xa0], rbx
mov rcx, qword [rdi]
movzx edx, word [rcx + 0x8f]
shl rdx, 0x20
mov eax, dword [rcx + 0x8b]
or rdx, rax
mov eax, dword [rcx + 0x91]
lea rcx, [rax + rax*8]
add rdx, rcx
cmp r10, rdx
je 0x140181470
movsx rcx, word [r10 + 4]
shl rcx, 0x20
mov eax, dword [r10]
or rcx, rax
cmp rcx, r11
je 0x140181938
movzx ebx, byte [r9 + 8]
shl ebx, 0x10
movzx eax, word [r9 + 6]
or ebx, eax
mov eax, ebx
mov ecx, ebx
shr rcx, 0x21
xor rcx, rax
imul rcx, r13
mov rdx, rcx
shr rdx, 0x21
xor rdx, rcx
imul rdx, qword [rsp + 0x78]
mov rax, rdx
shr rax, 0x21
xor rdx, rax
mov rcx, rdx
and ecx, 0x1f
mov eax, dword [rbp - 0x54]
shrx r8, rcx, rax
mov r10d, dword [rbp - 0x58]
add r8d, r10d
shr rdx, 5
mov r11, qword [rbp - 0x68]
and rdx, r11
mov rcx, qword [rbp - 0x78]
movzx eax, byte [rcx + rdx]
mov r9, qword [rbp - 0x80]
cmp r8d, eax
jne 0x1401814df
cmp ebx, dword [r9 + rdx*8]
je 0x140181517
inc rdx
add r8d, r10d
movzx eax, byte [rcx + rdx]
cmp r8d, eax
jne 0x1401814f4
cmp ebx, dword [r9 + rdx*8]
je 0x140181517
inc rdx
add r8d, r10d
movzx eax, byte [rcx + rdx]
cmp r8d, eax
jbe 0x1401814d7
test r11, r11
jne 0x14018150d
mov rdx, r15
jmp 0x140181517
mov rdx, rcx
sub rdx, r9
sar rdx, 3
lea rax, [r9 + rdx*8]
cmp rax, rcx
jne 0x140181582
mov dword [rsp + 0x20], ebx
mov dword [rsp + 0x24], 1
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x70]
call fcn.14004c680
mov ecx, dword [rbp - 8]
test ecx, ecx
je 0x140181ab6
sub ecx, 1
je 0x140181585
sub ecx, 1
je 0x14018156c
cmp ecx, 1
jne 0x140181585
mov rdx, qword [rsp + 0x20]
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 0x80]
mov qword [rax + rcx*8], rdx
jmp 0x140181585
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 0x80]
lea rdx, [rax + rcx*8]
mov rax, qword [rsp + 0x20]
mov qword [rdx], rax
jmp 0x140181585
inc dword [rax + 4]
mov r14, qword [r14]
movzx edx, word [r14 + 0xedc]
shl rdx, 0x20
mov eax, dword [r14 + 0xed8]
or rdx, rax
lea rcx, [rbx + rbx*2]
movzx r8d, word [rdx + rcx*2 + 4]
shl r8, 0x20
mov eax, dword [rdx + rcx*2]
or r8, rax
movzx edi, word [r8 + 0xa]
shl rdi, 0x20
mov eax, dword [r8 + 6]
or rdi, rax
mov rdx, rdi
lea rcx, [r14 + 0xee8]
call fcn.1401b54d0
shl rax, 4
add rax, qword [r14 + 0xef8]
cmp rax, qword [r14 + 0xf00]
je 0x14018191c
mov rax, qword [rax + 8]
test rax, rax
je 0x14018191c
movzx ecx, word [rax + 4]
shl rcx, 0x20
mov eax, dword [rax]
or rcx, rax
mov rax, qword [rcx + 0xa]
mov qword [rbp - 0x48], rax
lea r13, [r14 + 0x11a0]
lea rdx, [rbp - 0x48]
mov rcx, r13
call fcn.1401b5240
lea rcx, [rax + rax*8]
mov rax, qword [r13 + 0x10]
lea rsi, [rax + rcx*8]
cmp rsi, qword [r14 + 0x11b8]
jne 0x140181854
mov rax, qword [rdi]
mov qword [rbp - 0x40], rax
mov dword [rbp - 0x38], 1
mov qword [rsp + 0x30], r12
lea rax, [rsp + 0x50]
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x50]
mov qword [rsp + 0x40], r8
xor r14d, r14d
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r9d, 0x20
mov qword [rsp + 0x60], r9
lea r15, [rbp - 0x40]
nop
vmovsd xmm0, qword [r15]
vmovsd qword [rbp - 0x50], xmm0
vmovsd qword [rbp + 0x10], xmm0
mov r12d, dword [r15 + 8]
mov rsi, qword [rbp + 0x10]
nop word [rax + rax]
mov rbx, qword [rsp + 0x30]
imul rbx, rsi
mov rax, rbx
shr rax, 0x21
xor rbx, rax
mov rcx, rbx
and ecx, 0x1f
mov eax, dword [rsp + 0x64]
shrx rdi, rcx, rax
add edi, r9d
shr rbx, 5
and rbx, qword [rsp + 0x50]
movzx eax, byte [r8 + rbx]
cmp edi, eax
jae 0x1401816ef
nop word [rax + rax]
inc rbx
add edi, r9d
movzx eax, byte [r8 + rbx]
cmp edi, eax
jb 0x1401816e0
movzx eax, byte [r8 + rbx]
cmp edi, eax
jne 0x140181721
lea rcx, [rbx + rbx*2]
mov rax, qword [rsp + 0x38]
lea rdx, [rax + rcx*4]
cmp rsi, qword [rdx]
je 0x1401817f5
inc rbx
add rdx, 0xc
add edi, r9d
movzx eax, byte [r8 + rbx]
cmp edi, eax
je 0x140181705
mov rax, qword [rsp + 0x58]
cmp qword [rsp + 0x48], rax
jb 0x14018175e
lea rcx, [rsp + 0x28]
call fcn.1401c0500
test al, al
je 0x140181abc
inc r14d
cmp r14d, 0x100
jge 0x140181abc
mov r9d, dword [rsp + 0x60]
mov r8, qword [rsp + 0x40]
jmp 0x1401816a0
mov rsi, rbx
lea eax, [r9 + rdi]
mov rcx, qword [rsp + 0x58]
cmp eax, 0xff
mov r14d, 0
cmova rcx, r14
mov qword [rsp + 0x58], rcx
cmp byte [r8 + rbx], r14b
je 0x1401817a7
inc rbx
cmp byte [r8 + rbx], r14b
jne 0x140181784
cmp rbx, rsi
je 0x1401817a7
mov r8, rsi
mov rdx, rbx
lea rcx, [rsp + 0x28]
call fcn.1401bf9a0
mov r8, qword [rsp + 0x40]
mov byte [r8 + rsi], dil
inc qword [rsp + 0x48]
mov ecx, r14d
cmp rbx, rsi
setne cl
add ecx, 2
je 0x140181abc
sub ecx, 1
je 0x1401817e9
sub ecx, 1
je 0x1401817d1
cmp ecx, 1
jne 0x1401817e9
lea rcx, [rsi + rsi*2]
mov rax, qword [rsp + 0x38]
vmovsd xmm0, qword [rbp - 0x50]
vmovsd qword [rax + rcx*4], xmm0
mov dword [rax + rcx*4 + 8], r12d
mov r9d, dword [rsp + 0x60]
mov r8, qword [rsp + 0x40]
jmp 0x1401817f8
xor r14d, r14d
add r15, 0xc
lea rax, [rbp - 0x34]
cmp r15, rax
jne 0x140181680
lea r9, [rsp + 0x28]
lea r8, [rbp - 0x48]
lea rdx, [rbp + 0x20]
mov rcx, r13
call fcn.1401b1f60
nop
cmp qword [rsp + 0x50], 0
je 0x140181842
mov qword [rsp + 0x48], r14
lea rax, [rsp + 0x50]
mov rcx, qword [rsp + 0x38]
cmp rcx, rax
je 0x140181842
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
xor r15d, r15d
movabs r12, 0xc4ceb9fe1a85ec53
jmp 0x140181908
mov rdx, rdi
lea rcx, [rsi + 8]
call fcn.14004b0a0
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x18]
lea rdx, [rax + rcx*4]
cmp rdx, qword [rsi + 0x20]
jne 0x140181905
mov rdi, qword [rdi]
mov qword [rbp - 0x20], rdi
mov dword [rbp - 0x18], 1
lea r8, [rbp - 0x20]
lea rdx, [rbp]
lea rcx, [rsi + 8]
call fcn.1401b8640
mov ecx, dword [rbp + 8]
test ecx, ecx
je 0x140181ab0
sub ecx, 1
je 0x140181908
sub ecx, 1
movabs r13, 0xff51afd7ed558ccd
je 0x1401818eb
mov r9, qword [rbp + 0x98]
mov rbx, qword [rbp + 0xa0]
cmp ecx, 1
jne 0x1401818df
mov rax, qword [rbp]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x18]
mov qword [rax + rcx*4], rdi
mov dword [rax + rcx*4 + 8], 1
movabs rsi, 0x1c71c71c71c71c72
jmp 0x14018192a
mov rax, qword [rbp]
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 0x18]
mov qword [rax + rcx*4], rdi
mov dword [rax + rcx*4 + 8], 1
jmp 0x140181912
inc dword [rdx + 8]
movabs r13, 0xff51afd7ed558ccd
movabs rsi, 0x1c71c71c71c71c72
mov rbx, qword [rbp + 0xa0]
mov r9, qword [rbp + 0x98]
mov r14, qword [rbp + 0x90]
mov rdi, qword [rbp + 0xa8]
add r9, 9
mov qword [rbp + 0x98], r9
cmp r9, qword [rbp - 0x30]
jne 0x140181380
mov r8, qword [rbp - 0x28]
add rdi, 8
mov qword [rbp + 0xa8], rdi
cmp rdi, r8
jne 0x140181320
mov rsi, qword [rbp - 0x78]
cmp qword [rbp - 0x70], 0
jne 0x140181978
mov rdi, rsi
mov rbx, r15
jmp 0x1401819bf
mov r8, qword [rbp - 0x80]
mov rbx, rsi
mov rax, qword [rsi]
test rax, rax
jne 0x1401819a0
nop word [rax + rax]
add rbx, 8
add r8, 0x40
mov rax, qword [rbx]
test rax, rax
je 0x140181990
bsf rcx, rax
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
lea rdi, [r8 + rcx*8]
cmp rdi, rsi
je 0x140181a24
xor r9d, r9d
mov r8d, dword [rdi + 4]
mov edx, dword [rdi]
mov rcx, qword [r14]
call fcn.1401a33c0
inc rbx
add rdi, 8
mov rax, qword [rbx]
test rax, rax
jne 0x140181a00
nop dword [rax]
nop dword [rax + rax]
add rbx, 8
add rdi, 0x40
mov rax, qword [rbx]
test rax, rax
je 0x1401819f0
bsf rcx, rax
mov eax, 0x40
cmovne eax, ecx
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rcx, eax
add rbx, rcx
lea rdi, [rdi + rcx*8]
cmp rdi, rsi
jne 0x1401819c4
mov rbx, qword [r14]
lea rcx, [rbx + 0x998]
call qword [sym.imp.MSVCP140.dll__Mtx_lock]
test eax, eax
je 0x140181a44
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov eax, dword [rbx + 0x9e4]
cmp eax, 0x7fffffff
jne 0x140181a65
dec eax
mov dword [rbx + 0x9e4], eax
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov rax, qword [r14]
mov byte [rax + 0x12a1], 1
lea rcx, [rbx + 0x998]
call qword [sym.imp.MSVCP140.dll__Mtx_unlock]
nop
cmp qword [rbp - 0x68], 0
je 0x140181a9c
mov qword [rbp - 0x70], r15
lea rax, [rbp - 0x68]
mov rcx, qword [rbp - 0x80]
cmp rcx, rax
je 0x140181a9c
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
add rsp, 0x148
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.14001c8f0
nop
call fcn.14001c8f0
int3
call fcn.14001c8f0
int3