Function at 0x4056ca
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x138
add dword [0x435ee4], 0x4161b8c7
mov eax, dword [0x4361d4]
not eax
mov dword [0x435c64], eax
dec dword [0x434fe4]
mov eax, dword [0x434fe4]
push ebx
add eax, 0xb87da286
xor ebx, ebx
or eax, dword [0x435564]
push esi
mov esi, dword [ebp + 0xc]
push edi
mov dword [0x435564], eax
mov edi, ebx
mov dword [0x435718], 0x7c435b53
add esi, 2
mov dword [ebp - 0xc], ebx
dec dword [0x4346c4]
mov ecx, 0x8d4e233b
mov edx, dword [0x4346c4]
inc dword [0x435cd8]
mov eax, dword [0x435cd8]
sub ecx, eax
xor ecx, edx
cmp ecx, 0xdca1d8e8
jle 0x40575c
mov ax, word [0x433858]
mov ecx, dword [0x4362d8]
cwde
and ecx, eax
mov word [0x433858], cx
mov eax, 0xffffdb71
mov word [0x4339a8], ax
movzx ecx, byte [esi - 2]
movzx eax, byte [esi - 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi]
shl ecx, 8
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 8
add esi, 4
or ecx, eax
movzx eax, word [0x43343e]
mov dword [ebp + edi*4 - 0x138], ecx
xor eax, 0xde7d83ef
mov word [0x43343e], ax
and dword [0x435b68], 0x40e22080
add dword [0x4359a4], 0x415b9f0c
inc edi
cmp edi, 0x10
jne 0x40571e
imul eax, dword [0x434e84], 0x764b162e
push 0x24
add eax, 0xc91802db
and dword [0x434c08], eax
mov eax, dword [ebp + 8]
inc dword [0x434e84]
add eax, 8
push eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x38]
push eax
call fcn.004028f7
movsx eax, word [0x4339fc]
mov ecx, dword [0x436018]
sar eax, 2
imul ecx, eax
movzx eax, word [0x433a90]
push 0x100
push 0x1ea0
or eax, ecx
or eax, 0x9e733126
mov word [0x433a90], ax
inc dword [0x436018]
call fcn.0041b353
movzx ecx, word [0x433de6]
lea edi, [ebp - 0x138]
mov dword [ebp - 8], eax
or ecx, 0xa4a3e13c
lea eax, [ebp - 0x38]
mov word [0x433de6], cx
sub eax, 4
add esp, 0x14
mov esi, ebx
sub edi, 8
mov dword [ebp + 8], esi
mov ebx, eax
mov dword [ebp - 4], edi
inc word [0x4336ea]
mov ax, word [0x4336ea]
mov edx, dword [0x435d38]
mov ecx, dword [0x435190]
shl edx, 9
sar ecx, 7
add ecx, edx
cwde
add eax, ecx
cmp eax, 0x5aa02418
jle 0x405898
imul eax, dword [0x434ea8], 0xfcf9d5bf
mov dword [0x434ea8], eax
cmp esi, 0xf
jle 0x405a04
add dword [0x434500], 0xb22238f7
mov ecx, dword [0x434598]
movzx eax, word [0x433936]
xor ecx, 0x809ee7b5
mov edx, dword [edi]
mov esi, edx
imul eax, ecx
rol esi, 0xf
mov word [0x433936], ax
mov eax, edx
dec dword [0x434598]
rol eax, 0xd
xor esi, eax
shr edx, 0xa
xor esi, edx
add esi, dword [edi - 0x14]
mov dword [edi + 8], esi
dec word [0x43376c]
mov ax, word [0x43376c]
movsx ecx, word [0x4338fa]
cwde
not ecx
add eax, 0x10a0a6d3
add eax, ecx
cmp eax, 0xb0b2a1cb
jne 0x40591e
mov eax, dword [0x4359f0]
or eax, 0xbd8c29b3
sar eax, 2
or dword [0x435338], eax
mov eax, dword [0x436254]
mov ecx, dword [0x435a80]
mov edx, dword [edi - 0x34]
imul eax, eax, 0xc7931387
shl ecx, 8
or ecx, eax
movzx eax, word [0x43361c]
or eax, ecx
mov ecx, edx
mov word [0x43361c], ax
mov eax, edx
rol ecx, 0xe
ror eax, 7
xor ecx, eax
shr edx, 3
movsx eax, word [0x433eda]
xor ecx, edx
add ecx, dword [edi - 0x38]
imul eax, eax, 0x1f3799ca
add ecx, esi
mov dword [edi + 8], ecx
mov ecx, 0x61dd8d23
sub ecx, eax
mov eax, dword [0x4360d0]
sub eax, 0x13102eb5
dec dword [0x4360d0]
dec word [0x433eda]
cmp ecx, eax
jl 0x4059b4
imul eax, dword [0x435c30], 0x4a895b3f
mov ecx, dword [0x43456c]
add eax, 0x1aae6502
imul ecx, eax
mov dword [0x43456c], ecx
inc dword [0x435c30]
jmp 0x405a04
inc dword [0x435bac]
mov eax, dword [0x435bac]
mov ecx, dword [0x435048]
shl ecx, 0xa
and ecx, eax
cmp ecx, 0x52000005
jne 0x4059e6
movzx eax, word [0x4341c2]
and eax, 0x1c0ad902
mov word [0x4341c2], ax
jmp 0x405a04
mov ax, word [0x433328]
movzx ecx, word [0x433d7c]
cwde
or ecx, eax
mov word [0x433328], cx
dec word [0x433d7c]
movsx ecx, word [0x4334a6]
movzx eax, word [0x4337d8]
add ecx, ecx
add eax, 0x1d195c5
add eax, ecx
mov ecx, 0xc468de53
mov word [0x4337d8], ax
mov eax, dword [0x435790]
sar eax, 3
imul eax, eax, 0x295041d4
sub ecx, eax
mov dword [0x435a7c], ecx
mov ecx, dword [ebp - 0x28]
mov esi, ecx
ror esi, 0xb
mov eax, ecx
rol eax, 7
xor esi, eax
mov eax, ecx
ror eax, 6
xor esi, eax
mov eax, dword [ebp - 0x24]
xor eax, dword [ebp - 0x20]
and eax, ecx
mov ecx, dword [ebp - 8]
xor eax, dword [ebp - 0x20]
add esi, eax
mov eax, dword [ebp + 8]
add esi, dword [ecx + eax*4]
add esi, dword [edi + 8]
add esi, dword [ebp - 0x1c]
cmp dword [0x43450c], 0x594853cc
jg 0x405a84
or dword [0x434ccc], 0xff7cb76d
mov edx, dword [ebp - 0x38]
mov edi, edx
ror edi, 0xd
mov eax, edx
rol eax, 0xa
xor edi, eax
mov eax, edx
ror eax, 2
xor edi, eax
mov eax, dword [ebp - 0x34]
mov ecx, eax
and eax, edx
or ecx, edx
and ecx, dword [ebp - 0x30]
or ecx, eax
mov eax, dword [0x434a64]
sar eax, 9
add edi, ecx
xor eax, 0x83c07fd4
cmp eax, 0x6f654dcf
jle 0x405ad7
movsx ecx, word [0x433856]
movzx eax, word [0x43363c]
not ecx
imul eax, ecx
mov word [0x43363c], ax
imul eax, dword [0x434ed0], 0xca042bc0
add dword [ebp - 0x2c], esi
inc dword [0x434ed0]
cmp eax, 0x888a04f3
jg 0x405b0c
mov eax, dword [0x435368]
not eax
xor eax, 0x8ff38efc
cmp eax, 0xe241937c
jne 0x405b29
mov ax, word [0x43416e]
jmp 0x405b29
movsx ecx, word [0x433162]
mov eax, dword [0x4355ec]
and ecx, 0x41300c89
shl eax, 7
or eax, ecx
and dword [0x43505c], eax
lea eax, [edi + esi]
mov dword [ebp - 0x1c], eax
movzx eax, word [0x433bc4]
imul eax, eax, 0xdbfeaf0b
push 8
pop edx
mov word [0x433bc4], ax
mov dword [0x434910], 0x97032a2e
dec dword [0x435c74]
mov ecx, dword [0x435c74]
movzx eax, word [0x4339e4]
and ecx, 0x30ae1f08
or ecx, eax
mov word [0x4339e4], cx
mov ecx, dword [0x435758]
movsx eax, word [0x433876]
not ecx
add eax, ecx
inc word [0x433876]
cmp eax, 0x9ca6420e
je 0x405b9a
mov dword [0x4358bc], 0xbacb41de
mov eax, dword [ebx + edx*4]
mov dword [ebp + edx*4 - 0x38], eax
inc dword [0x4349a8]
mov ecx, dword [0x4349a8]
mov eax, dword [0x43567c]
sub ecx, eax
inc dword [0x43567c]
cmp ecx, 0xbe9d3eba
jne 0x405be5
mov eax, dword [0x435e0c]
or eax, 0x3c2bd051
cmp eax, 0x1c803578
jge 0x405be5
movzx eax, word [0x433150]
sub eax, 0x282afe73
mov word [0x433150], ax
dec edx
jne 0x405b71
or dword [0x434504], 0x7edead73
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x38], eax
dec dword [0x435988]
mov eax, dword [0x435988]
or eax, 0xe39e2294
cmp eax, 0x40a2b43f
jle 0x405c19
mov dword [0x435048], 0x831dda8e
mov esi, dword [ebp + 8]
mov edi, dword [ebp - 4]
inc esi
add edi, 4
mov dword [ebp + 8], esi
mov dword [ebp - 4], edi
cmp esi, 0x40
jne 0x40585e
imul eax, dword [0x4346d4], 0xd5fe3d7a
push dword [ebp - 8]
push 0x100
mov dword [0x4346d4], eax
call fcn.004041b4
dec dword [0x434480]
mov edx, dword [0x434480]
mov eax, dword [0x436160]
mov ebx, dword [ebp - 0xc]
pop ecx
pop ecx
movzx ecx, word [0x4340b6]
imul eax, eax, 0x94e162cc
or ecx, edx
or ecx, eax
mov word [0x4340b6], cx
mov ecx, dword [ebp - 0x10]
mov eax, 0x7e28
mov word [0x433960], ax
mov eax, dword [ebp + ebx*4 - 0x38]
add dword [ecx], eax
lea ecx, [ecx + 4]
add dword [0x434714], 0xa8c12ec7
inc ebx
cmp ebx, 8
jne 0x405c7f
movzx eax, word [0x433f42]
pop edi
add eax, 0x625182ed
pop esi
mov word [0x433f42], ax
pop ebx
mov esp, ebp
pop ebp
ret