Function at 0x409390
Capabilities:
Hash data using murmur2

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
mov dword [ebp - 0x20], 0x40
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x20], 0
je 0x4093c3
mov ecx, dword [ebp - 0x1c]
mov byte [ecx], 0
mov edx, dword [ebp - 0x1c]
add edx, 1
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x20]
sub eax, 1
mov dword [ebp - 0x20], eax
jmp 0x4093a3
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x6c]
push eax
call fcn.004258f0
add esp, 0xc
mov dword [ebp - 0x14], 0
jmp 0x4093e9
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x14]
cmp edx, dword [ebp + 0xc]
jge 0x40941f
mov eax, dword [ebp - 0x14]
movsx ecx, byte [ebp + eax - 0x6c]
cmp ecx, 0x41
jl 0x40941d
mov edx, dword [ebp - 0x14]
movsx eax, byte [ebp + edx - 0x6c]
cmp eax, 0x5a
jg 0x40941d
mov ecx, dword [ebp - 0x14]
movsx edx, byte [ebp + ecx - 0x6c]
add edx, 0x20
mov eax, dword [ebp - 0x14]
mov byte [ebp + eax - 0x6c], dl
jmp 0x4093e0
mov dword [ebp - 0x28], 0x5bd1e995
mov dword [ebp - 0x2c], 0x18
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x10], ecx
lea edx, [ebp - 0x6c]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 4], eax
cmp dword [ebp + 0xc], 4
jl 0x409494
mov ecx, dword [ebp - 0x18]
mov edx, dword [ecx]
mov dword [ebp - 0xc], edx
imul eax, dword [ebp - 0xc], 0x5bd1e995
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
shr ecx, 0x18
xor ecx, dword [ebp - 0xc]
mov dword [ebp - 0xc], ecx
imul edx, dword [ebp - 0xc], 0x5bd1e995
mov dword [ebp - 0xc], edx
imul eax, dword [ebp - 4], 0x5bd1e995
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp - 0xc]
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x18]
add edx, 4
mov dword [ebp - 0x18], edx
mov eax, dword [ebp + 0xc]
sub eax, 4
mov dword [ebp + 0xc], eax
jmp 0x40943f
mov dword [ebp - 8], 0
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x24], 1
je 0x4094e4
cmp dword [ebp - 0x24], 2
je 0x4094cc
cmp dword [ebp - 0x24], 3
je 0x4094b5
jmp 0x4094f9
mov edx, 1
shl edx, 1
mov eax, dword [ebp - 0x18]
movzx ecx, byte [eax + edx]
shl ecx, 0x10
xor ecx, dword [ebp - 8]
mov dword [ebp - 8], ecx
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x18]
movzx ecx, byte [eax + edx]
shl ecx, 8
xor ecx, dword [ebp - 8]
mov dword [ebp - 8], ecx
mov edx, 1
imul eax, edx, 0
mov ecx, dword [ebp - 0x18]
movzx edx, byte [ecx + eax]
xor edx, dword [ebp - 8]
mov dword [ebp - 8], edx
imul eax, dword [ebp - 8], 0x5bd1e995
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
shr ecx, 0x18
xor ecx, dword [ebp - 8]
mov dword [ebp - 8], ecx
imul edx, dword [ebp - 8], 0x5bd1e995
mov dword [ebp - 8], edx
imul eax, dword [ebp - 4], 0x5bd1e995
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp - 8]
mov dword [ebp - 4], ecx
imul edx, dword [ebp - 0x10], 0x5bd1e995
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x10]
shr eax, 0x18
xor eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
imul ecx, dword [ebp - 0x10], 0x5bd1e995
mov dword [ebp - 0x10], ecx
imul edx, dword [ebp - 4], 0x5bd1e995
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
xor eax, dword [ebp - 0x10]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
shr ecx, 0xd
xor ecx, dword [ebp - 4]
mov dword [ebp - 4], ecx
imul edx, dword [ebp - 4], 0x5bd1e995
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
shr eax, 0xf
xor eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov esp, ebp
pop ebp
ret