Function at 0x4016b0
Capabilities:
Hash data using murmur3

Disassembly:
push ebx
push edi
push esi
sub esp, 0x154
mov eax, dword [esp + 0x168]
mov ecx, dword [esp + 0x164]
mov edx, 0xe1978f1
mov dword [esp + 0x150], eax
mov dword [esp + 0x14c], ecx
mov eax, dword [0x490c7c]
and eax, 0x933a7267
mov dword [0x490c7c], eax
mov eax, dword [0x48eed8]
mov ecx, eax
dec ecx
mov dword [0x48eed8], ecx
mov si, word [0x49a77a]
mov cx, si
add ecx, eax
mov si, cx
mov word [0x49a77a], si
mov si, word [0x497a28]
mov ax, si
xor eax, 0x34b6
mov si, ax
mov word [0x49abbe], si
mov eax, dword [0x4959c0]
cmp edx, eax
jne 0x40174b
mov ax, word [0x4977d2]
mov cx, ax
add ecx, 0x10418004
mov ax, cx
mov word [0x4977d2], ax
mov dword [esp + 0x1c], 0
cmp dword [esp + 0x1c], 0x10
je 0x401861
mov eax, 0x6f1afc26
mov dword [0x4923e4], 0x2a7ec763
mov ecx, dword [0x4957e8]
or ecx, 0x2fc5a334
mov dword [0x4957e8], ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x150]
movzx esi, byte [edx + ecx*4]
shl esi, 0x18
movzx edi, byte [edx + ecx*4 + 1]
shl edi, 0x10
or esi, edi
movzx edi, byte [edx + ecx*4 + 2]
shl edi, 8
or esi, edi
movzx edx, byte [edx + ecx*4 + 3]
or esi, edx
mov dword [esp + ecx*4 + 0x44], esi
mov bx, word [0x4965d4]
mov cx, bx
mov bx, word [0x497e38]
mov dx, bx
sub edx, ecx
mov bx, dx
mov word [0x497e38], bx
mov ecx, dword [0x491fb0]
cmp eax, ecx
je 0x401828
mov eax, 0x2ce50412
mov ecx, dword [0x48b854]
mov edx, ecx
inc edx
mov dword [0x48b854], edx
cmp eax, ecx
jne 0x401823
mov eax, 0x1473ca2f
mov ecx, dword [0x48bc48]
imul ecx, ecx, 0xbf6bfb5e
and ecx, 0x603b2e48
cmp eax, ecx
jle 0x40181e
jmp 0x40181e
jmp 0x401823
jmp 0x40183e
mov eax, dword [0x48d760]
mov ecx, 0x5099367c
sub ecx, eax
mov dx, cx
mov word [0x499ed6], dx
mov eax, dword [0x48df98]
mov ecx, dword [0x48e63c]
and ecx, eax
mov dword [0x48e63c], ecx
mov eax, dword [esp + 0x1c]
add eax, 1
mov dword [esp + 0x1c], eax
jmp 0x401753
mov eax, 0x2010200
mov ecx, dword [0x48bf20]
add ecx, 0x1e84a038
mov dword [0x48bf20], ecx
mov ecx, dword [esp + 0x14c]
add ecx, 8
mov edx, 9
lea edi, [esp + 0x20]
mov dword [esp + 0x10], ecx
mov ecx, edx
mov esi, dword [esp + 0x10]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x4916a0]
inc ecx
mov dword [0x4916a0], ecx
imul ecx, ecx, 0x62a5e29d
or ecx, 0x44e7df9a
cmp eax, ecx
jg 0x401911
mov eax, 0x206544cb
mov ecx, dword [0x492e5c]
shl ecx, 4
sub ecx, 0x4ff94d62
sub ecx, 0xa6194290
cmp eax, ecx
jg 0x4018fd
mov eax, dword [0x48d250]
dec eax
mov dword [0x48d250], eax
and eax, 0xa7a849a6
mov ecx, dword [0x490840]
add ecx, eax
mov dword [0x490840], ecx
jmp 0x40190c
mov eax, dword [0x491034]
and eax, 0x2d7f529
mov dword [0x491034], eax
jmp 0x401911
mov eax, 0xbd659d71
mov ecx, esp
mov dword [ecx + 4], 0x100
mov dword [ecx], 0x412a
mov dword [esp + 0xc], eax
call fcn.00447ef0
mov dword [esp + 0x14], eax
mov eax, dword [0x491038]
mov ecx, dword [0x48b76c]
mov edx, dword [esp + 0xc]
sub edx, ecx
add edx, 0x385a437e
cmp eax, edx
jg 0x401961
mov eax, dword [0x48eb14]
imul eax, eax, 0x695aff7b
mov dword [0x48eb14], eax
mov dword [esp + 0x1c], 0
cmp dword [esp + 0x1c], 0x40
je 0x401d6a
mov eax, dword [0x48eeb4]
add eax, 0x22a48aee
and eax, 0x28d2c835
mov ecx, dword [0x48ae60]
sub ecx, eax
mov dword [0x48ae60], ecx
cmp dword [esp + 0x1c], 0xf
jle 0x401aa2
mov eax, dword [0x48d54c]
not eax
mov ecx, dword [0x49555c]
shr ecx, 8
or eax, ecx
mov dx, word [0x495c94]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x495c94], dx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + eax*4 + 0x3c]
mov esi, ecx
rol esi, 0xf
mov edi, ecx
rol edi, 0xd
xor esi, edi
shr ecx, 0xa
xor esi, ecx
mov dword [esp + eax*4 + 0x44], esi
mov eax, dword [0x4945f8]
mov ecx, eax
dec ecx
mov dword [0x4945f8], ecx
imul eax, eax, 0x633be26
add eax, 0x6b64769f
mov dx, word [0x499b72]
mov cx, dx
and ecx, eax
mov dx, cx
mov word [0x499b72], dx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + eax*4 + 0x28]
mov esi, dword [esp + eax*4 + 0x44]
add esi, ecx
mov dword [esp + eax*4 + 0x44], esi
mov dx, word [0x49605e]
movsx eax, dx
add eax, 0x34fdad63
mov ecx, dword [0x494a20]
and ecx, eax
mov dword [0x494a20], ecx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + eax*4 + 8]
mov esi, ecx
rol esi, 0x19
mov edi, ecx
rol edi, 0xe
xor esi, edi
shr ecx, 3
xor esi, ecx
mov ecx, dword [esp + eax*4 + 0x44]
add ecx, esi
mov dword [esp + eax*4 + 0x44], ecx
mov eax, dword [0x48d950]
imul eax, eax, 0xf99750df
add eax, 0x6cb618f2
mov ecx, dword [0x49060c]
imul ecx, eax
mov dword [0x49060c], ecx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + eax*4 + 4]
mov esi, dword [esp + eax*4 + 0x44]
add esi, ecx
mov dword [esp + eax*4 + 0x44], esi
mov eax, dword [0x48d2a4]
or eax, 0x305db0ea
mov dword [0x48d2a4], eax
mov eax, dword [0x494c98]
mov ecx, dword [0x48fad0]
and eax, ecx
or eax, 0x7607481a
mov ecx, dword [0x494e8c]
mov edx, dword [0x48add8]
imul ecx, edx
cmp eax, ecx
jg 0x401ada
mov eax, dword [0x492634]
and eax, 0x29a40200
mov dword [0x492634], eax
mov eax, dword [0x48ec48]
and eax, 0x68460e73
mov dword [0x48ec48], eax
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov esi, ecx
rol esi, 0x1a
mov edi, ecx
rol edi, 0x15
xor esi, edi
mov edi, ecx
rol edi, 7
xor esi, edi
add eax, esi
mov esi, dword [esp + 0x38]
xor edx, esi
and ecx, edx
xor esi, ecx
add eax, esi
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov edx, dword [edx + ecx*4]
add eax, edx
mov ecx, dword [esp + ecx*4 + 0x44]
add eax, ecx
mov dword [esp + 0x148], eax
mov bx, word [0x499f08]
mov ax, bx
imul eax, eax, 0x6a9d49ad
mov bx, ax
mov word [0x499f08], bx
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edx, eax
rol edx, 0x1e
mov esi, eax
rol esi, 0x13
xor edx, esi
mov esi, eax
rol esi, 0xa
xor edx, esi
mov esi, eax
and esi, ecx
mov edi, dword [esp + 0x28]
or eax, ecx
and edi, eax
or esi, edi
add edx, esi
mov dword [esp + 0x144], edx
mov eax, dword [0x48b444]
add eax, 0xdc97b0f9
mov dword [0x48b444], eax
mov eax, dword [esp + 0x148]
mov ecx, dword [esp + 0x2c]
add ecx, eax
mov dword [esp + 0x2c], ecx
mov eax, dword [0x491ef0]
add eax, 0xe5c2d595
mov dword [0x491ef0], eax
mov eax, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
add eax, ecx
mov dword [esp + 0x3c], eax
mov bx, word [0x49a7a2]
mov ax, bx
or eax, 0x873a
mov bx, ax
mov word [0x49a7a2], bx
mov bx, word [0x4993b8]
mov ax, bx
shl eax, 8
or eax, 0x43e
mov bx, word [0x499482]
mov cx, bx
xor ecx, eax
mov bx, cx
mov word [0x499482], bx
mov bx, word [0x499dee]
mov ax, bx
or eax, 0x8917
mov bx, ax
mov word [0x499dee], bx
mov dword [esp + 0x18], 8
cmp dword [esp + 0x18], 0
je 0x401cd6
mov eax, 0xffe47df7
mov cx, word [0x49b07e]
mov dx, cx
inc edx
mov si, dx
mov word [0x49b07e], si
movsx edx, cx
cmp eax, edx
jle 0x401c72
mov ax, word [0x4970f2]
movsx ecx, ax
shr ecx, 3
xor ecx, 0x2a66
or ecx, 0xd490
mov ax, cx
mov word [0x499f88], ax
mov eax, 0xd782e89a
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + ecx*4 + 0x1c]
mov dword [esp + ecx*4 + 0x20], edx
mov si, word [0x499c60]
mov cx, si
inc ecx
mov si, cx
mov word [0x499c60], si
movsx ecx, si
add ecx, 0x1d602a8e
cmp eax, ecx
je 0x401cc1
mov ax, word [0x495f5a]
mov cx, ax
and ecx, 0x13d7
mov ax, cx
mov word [0x495f5a], ax
jmp 0x401cc6
mov eax, dword [esp + 0x18]
add eax, 0xffffffff
mov dword [esp + 0x18], eax
jmp 0x401c21
mov eax, 0x20340460
mov cx, word [0x497fb2]
mov dx, cx
dec edx
mov si, dx
mov word [0x497fb2], si
movsx edx, cx
mov edi, dword [0x48c1d0]
add edi, 0xd8c85b5c
xor edx, edi
mov edi, dword [0x48eff8]
add edi, edx
mov dword [0x48eff8], edi
mov edx, dword [esp + 0x40]
mov dword [esp + 0x20], edx
mov edx, dword [0x493248]
mov edi, dword [0x4921c8]
mov ebx, edi
inc ebx
mov dword [0x4921c8], ebx
imul edi, edi, 0x83a96202
xor edx, edi
cmp eax, edx
jne 0x401d55
mov ax, word [0x498b82]
movsx ecx, ax
not ecx
mov edx, dword [0x48e15c]
or edx, ecx
mov dword [0x48e15c], edx
jmp 0x401d5a
mov eax, dword [esp + 0x1c]
add eax, 1
mov dword [esp + 0x1c], eax
jmp 0x401969
mov eax, 0xff9df9ff
mov ecx, dword [0x48fa20]
mov edx, dword [0x4903ac]
imul edx, edx, 0x80fa6f96
add ecx, edx
cmp eax, ecx
jl 0x401ddf
mov ax, word [0x49ad68]
movsx ecx, ax
imul ecx, ecx, 0xdadc261d
imul ecx, ecx, 0x4c71616e
cmp ecx, 0xf653bef9
jle 0x401dc0
mov eax, dword [0x495a24]
add eax, 0x10d64a44
mov dword [0x495a24], eax
jmp 0x401dda
mov eax, dword [0x48e094]
imul eax, eax, 0x3685c162
xor eax, 0x9247
mov cx, ax
mov word [0x4992a0], cx
jmp 0x401ddf
mov eax, 0xedfc3d05
mov ecx, dword [esp + 0x14]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x100
mov dword [esp + 8], eax
call fcn.00437960
mov eax, dword [0x495848]
inc eax
mov dword [0x495848], eax
add eax, 0x7a4a0e28
mov ecx, dword [esp + 8]
cmp ecx, eax
je 0x401e2c
mov eax, dword [0x48cd3c]
xor eax, 0x47bce17c
mov dword [0x48cd3c], eax
jmp 0x401e69
mov ax, word [0x499160]
mov cx, ax
inc ecx
mov dx, cx
mov word [0x499160], dx
movsx ecx, ax
mov esi, dword [0x48b0ac]
mov edi, esi
dec edi
mov dword [0x48b0ac], edi
and esi, 0xf3a49669
or ecx, esi
mov esi, dword [0x493aac]
imul esi, ecx
mov dword [0x493aac], esi
mov dword [esp + 0x1c], 0
cmp dword [esp + 0x1c], 8
je 0x401ec9
mov word [0x49aede], 0x4a2
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + eax*4 + 0x20]
mov edx, dword [esp + 0x14c]
mov esi, dword [edx + eax*4 + 8]
add esi, ecx
mov dword [edx + eax*4 + 8], esi
mov eax, dword [0x49583c]
shl eax, 7
or eax, 0x1e1ef563
mov ecx, dword [0x48d9b8]
xor ecx, eax
mov dword [0x48d9b8], ecx
mov eax, dword [esp + 0x1c]
add eax, 1
mov dword [esp + 0x1c], eax
jmp 0x401e71
mov eax, 0xaee624f3
mov cx, word [0x497f96]
movsx edx, cx
not edx
mov esi, dword [0x48cdd4]
shl esi, 6
or edx, esi
cmp eax, edx
jl 0x401f00
mov eax, dword [0x48b13c]
mov ecx, dword [0x4918c8]
and ecx, eax
mov dword [0x4918c8], ecx
add esp, 0x154
pop esi
pop edi
pop ebx
ret