Function at 0x419290
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x6c
mov ecx, dword [esp + 0x84]
mov dword [esp], 0xec1ae820
mov eax, ecx
sar eax, 0x1f
shr eax, 0x1e
add eax, ecx
mov dword [esp + 0x1c], eax
lea eax, [ecx + 3]
mov dword [esp + 0x18], 0xdbb36fbb
cmp eax, 7
jb 0x4192cb
mov dword [esp + 0x18], 0x74d3974c
and ecx, 3
mov dword [esp + 0x30], ecx
sar dword [esp + 0x1c], 2
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x38]
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x40]
mov eax, dword [esp + 0x44]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov eax, dword [esp]
cmp eax, 0xf9b8cbee
jle 0x41935f
cmp eax, 0x3dfa35e1
jg 0x4193c0
cmp eax, 0x17d19e4a
jg 0x419467
cmp eax, 0xf9b8cbef
je 0x4195c0
cmp eax, 0xfad1b1b1
je 0x41944c
cmp eax, 0x800fd24
jne 0x4192ff
mov eax, esi
shr eax, 2
mov ecx, 0x86fc65c9
cmp esi, 0x648
jae 0x419353
mov ecx, 0x74d3974c
add eax, 0xffffff0d
mov dword [esp], ecx
mov esi, eax
jmp 0x4192ff
cmp eax, 0xb9a360cc
jle 0x4193fb
cmp eax, 0xd6e2ff17
jg 0x41948d
cmp eax, 0xb9a360cd
je 0x419753
cmp eax, 0xcb46c623
je 0x4195e8
cmp eax, 0xd67414a0
jne 0x4192ff
shr esi, 0x19
and esi, 0x3f
push 0x3eb4
push 0x1ec
push esi
push 0x45c6
call fcn.00419290
add esp, 0x10
mov dword [esp], 0x800fd24
jmp 0x4192ff
cmp eax, 0x67204079
jg 0x4194df
cmp eax, 0x3dfa35e2
je 0x419603
cmp eax, 0x5575b63a
je 0x419640
cmp eax, 0x5c4e5be4
jne 0x4192ff
shr esi, 0x17
mov dword [esp], 0x74d3974c
jmp 0x4192ff
cmp eax, 0x9ca3797b
jle 0x419516
cmp eax, 0x9ca3797c
je 0x419567
cmp eax, 0xa3ca849d
je 0x4195a0
cmp eax, 0xb1bc8a42
jne 0x4192ff
xor ebx, ebx
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
cmp eax, 1
je 0x419567
cmp eax, 2
je 0x4195a0
cmp eax, 3
jne 0x4195b0
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + 2]
shl eax, 0x10
mov dword [esp + 0x58], eax
mov dword [esp], 0x3dfa35e2
jmp 0x4192ff
cmp eax, 0x17d19e4b
je 0x4195b0
cmp eax, 0x1c399552
je 0x419661
cmp eax, 0x25e6dbde
je 0x4197ab
jmp 0x4192ff
cmp eax, 0xd6e2ff18
je 0x419671
cmp eax, 0xdbb36fbb
je 0x4196a3
cmp eax, 0xec1ae820
jne 0x4192ff
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x80]
lea eax, [ecx + eax*4]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x18]
mov dword [esp], eax
mov eax, dword [esp + 0x88]
mov dword [esp + 0x10], eax
jmp 0x4192ff
cmp eax, 0x6720407a
je 0x4196b7
cmp eax, 0x6bc14ec9
je 0x419701
cmp eax, 0x74d3974c
jne 0x4192ff
xor eax, eax
sub eax, dword [esp + 0x20]
mov dword [esp + 0x54], eax
mov dword [esp], 0x25e6dbde
jmp 0x4192ff
cmp eax, 0x8282ee34
je 0x41971d
cmp eax, 0x86fc65c9
jne 0x419743
shl esi, 4
add esi, 0xfffffe47
push 0x334b
push 0x1240
push 0x316a
push esi
call fcn.00419860
add esp, 0x10
push 0x32a3
push esi
call fcn.00419bf9
add esp, 8
mov dword [esp], 0x74d3974c
jmp 0x4192ff
imul ecx, dword [esp + 4], 0x4b
add ecx, 0xffffffd3
imul eax, ecx, 0x12a00
imul ecx, ecx
imul edx, ecx, 0x8317
dec edx
add eax, 0x9e00
mov dword [esp + 4], eax
mov eax, 0xb1bc8a42
cmp edx, ecx
je 0x419596
mov eax, 0x1c399552
mov dword [esp], eax
xor ebp, ebp
jmp 0x4192ff
mov dword [esp + 0x60], ebx
mov dword [esp], 0xcb46c623
jmp 0x4192ff
mov dword [esp + 0x68], edi
mov dword [esp], 0x971633db
jmp 0x4192ff
imul eax, dword [esp + 4], 0x270400
add eax, 0xe097ad80
shr eax, 0xf
mov dword [esp + 4], eax
mov dword [esp], 0xdbb36fbb
mov eax, dword [esp + 0x24]
mov dword [esp + 0x10], eax
jmp 0x4192ff
mov eax, dword [esp + 0x14]
movzx ebp, byte [eax + 1]
shl ebp, 8
or ebp, dword [esp + 0x60]
mov dword [esp], 0x1c399552
jmp 0x4192ff
mov ecx, dword [esp + 4]
mov eax, ecx
shr eax, 7
imul eax, eax
and ecx, 0xffffff80
imul edx, eax, 0x5111
dec edx
mov ebx, ecx
shl ebx, 6
sub ebx, ecx
sub ebx, ecx
mov dword [esp + 4], ebx
mov ecx, 0xfad1b1b1
cmp eax, edx
je 0x419634
mov ecx, 0xa3ca849d
mov dword [esp], ecx
mov ebx, dword [esp + 0x58]
jmp 0x4192ff
imul esi, esi, 0xf8000
mov eax, 0x6720407a
cmp esi, 0xdd
jge 0x41973b
mov eax, 0x74d3974c
jmp 0x41973b
mov dword [esp + 0x64], ebp
mov dword [esp], 0xd6e2ff18
jmp 0x4192ff
mov eax, dword [esp + 0x14]
movzx eax, byte [eax]
xor eax, dword [esp + 0x64]
imul ecx, eax, 0xcc9e2d51
imul eax, eax, 0x16a88000
shr ecx, 0x11
or ecx, eax
imul edi, ecx, 0x1b873593
xor edi, dword [esp + 0x2c]
mov dword [esp], 0x17d19e4b
jmp 0x4192ff
mov eax, dword [esp + 0x10]
mov dword [esp + 0x2c], eax
mov dword [esp], 0xb1bc8a42
jmp 0x4192ff
mov dword [esp + 0x34], ebp
mov ebp, edi
mov edi, ebx
shl esi, 4
mov ebx, esi
add ebx, 0xffffffb0
mov esi, ebx
shr esi, 6
push esi
push 0x6f9
call fcn.00419bd7
add esp, 8
call fcn.00419b8b
mov eax, 0x8282ee34
cmp ebx, 0x1740
jae 0x4196f1
mov eax, 0x74d3974c
mov dword [esp], eax
mov ebx, edi
mov edi, ebp
mov ebp, dword [esp + 0x34]
jmp 0x4192ff
mov eax, dword [esp + 8]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x28], eax
mov dword [esp], 0xb9a360cd
jmp 0x4192ff
imul esi, esi, 0x33
add esi, 0xfffffe02
mov eax, 0xb9a360cd
cmp esi, 0xe0000
jae 0x419738
mov eax, 0x74d3974c
shr esi, 0xe
mov dword [esp], eax
jmp 0x4192ff
cmp eax, 0x971633db
jne 0x4192ff
jmp 0x4197fb
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x28]
mov eax, dword [eax + ecx*4]
imul ecx, eax, 0xcc9e2d51
imul eax, eax, 0x16a88000
shr ecx, 0x11
or ecx, eax
imul eax, ecx, 0x1b873593
xor eax, dword [esp + 0x5c]
rol eax, 0xd
lea eax, [eax + eax*4]
add eax, 0xe6546b64
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x28]
mov eax, 0xf9b8cbef
add ecx, 1
mov dword [esp + 0xc], ecx
je 0x41979f
mov eax, 0x6bc14ec9
mov dword [esp], eax
mov eax, dword [esp + 0x24]
jmp 0x4192fb
imul eax, dword [esp + 4], 0xf5
add eax, 0xffffff27
shr eax, 6
mov ecx, eax
imul ecx, eax
shl eax, 8
imul edx, ecx, 0x54c1
dec edx
or eax, 0xb9
imul eax, eax, 0x37
mov dword [esp + 4], eax
mov eax, 0xd67414a0
cmp edx, ecx
je 0x4197e4
mov eax, 0x6bc14ec9
mov dword [esp], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x88]
jmp 0x4192fb
mov dword [esp + 0x50], esi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], ebx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x84]
xor ecx, dword [esp + 0x68]
mov eax, ecx
shr eax, 0x10
xor eax, ecx
imul eax, eax, 0x85ebca6b
mov ecx, eax
shr ecx, 0xd
xor ecx, eax
imul eax, ecx, 0xc2b2ae35
mov ecx, eax
shr ecx, 0x10
xor ecx, eax
mov eax, dword [esp + 0x8c]
mov dword [eax], ecx
add esp, 0x6c
pop esi
pop edi
pop ebx
pop ebp
ret