Function at 0x44f2c0
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x148
mov eax, dword [esp + 0x160]
mov ecx, dword [esp + 0x15c]
mov dword [esp + 0x144], eax
mov dword [esp + 0x140], ecx
mov eax, dword [0x49e958]
imul eax, eax, 0x1859bcf7
mov dword [0x49e958], eax
mov dx, word [0x498c82]
movsx eax, dx
sar eax, 5
add eax, 0x30728adf
mov ecx, dword [0x4a85e0]
or ecx, eax
mov dword [0x4a85e0], ecx
mov dx, word [0x49440e]
mov ax, dx
add eax, 0xf918ee85
mov dx, ax
mov word [0x49440e], dx
mov dx, word [0x495342]
movsx eax, dx
mov ecx, dword [0x4aa2c0]
imul eax, ecx
add eax, 0x54bdc4a3
mov ecx, dword [0x4aa1a8]
imul ecx, eax
mov dword [0x4aa1a8], ecx
mov dword [esp + 0x10], 0
cmp dword [esp + 0x10], 0x10
je 0x44f47c
mov eax, 0xacf63fbf
mov ecx, dword [0x49bc2c]
and ecx, 0xa969b451
cmp eax, ecx
je 0x44f391
mov eax, dword [0x4a317c]
add eax, 0xdcdffff6
mov dword [0x4a317c], eax
mov eax, dword [0x4ac784]
imul eax, eax, 0x70d15029
mov dword [0x4ac784], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x144]
movzx edx, byte [ecx + eax*4]
shl edx, 0x18
movzx esi, byte [ecx + eax*4 + 1]
shl esi, 0x10
or edx, esi
movzx esi, byte [ecx + eax*4 + 2]
shl esi, 8
or edx, esi
movzx ecx, byte [ecx + eax*4 + 3]
or edx, ecx
mov dword [esp + eax*4 + 0x38], edx
mov di, word [0x48f7de]
mov ax, di
dec eax
mov bx, ax
mov word [0x48f7de], bx
movsx eax, di
imul eax, eax, 0xe576c1bc
mov ecx, dword [0x4ad2f0]
and eax, ecx
cmp eax, 0x7548c79e
je 0x44f417
mov eax, dword [0x4a9638]
add eax, 0x9b66baac
mov dword [0x4a9638], eax
jmp 0x44f42a
mov eax, dword [0x4a25b0]
mov ecx, dword [0x49c714]
or ecx, eax
mov dword [0x49c714], ecx
mov ax, word [0x4926ec]
movsx ecx, ax
xor ecx, 0x9e12d05a
cmp ecx, 0xefc096c1
je 0x44f45d
mov ax, word [0x498bb2]
mov cx, ax
xor ecx, 0xe9cf
mov ax, cx
mov word [0x498bb2], ax
mov eax, dword [0x4aac7c]
and eax, 0x5149c76a
mov dword [0x4aac7c], eax
mov eax, dword [esp + 0x10]
add eax, 1
mov dword [esp + 0x10], eax
jmp 0x44f35e
mov eax, dword [0x4ad230]
xor eax, 0xf28
mov cx, word [0x491b98]
mov dx, cx
add edx, eax
mov cx, dx
mov word [0x491b98], cx
mov eax, dword [esp + 0x140]
mov edx, dword [eax + 0x28]
mov dword [esp + 0x34], edx
movsd xmm0, qword [eax + 0x20]
movsd qword [esp + 0x2c], xmm0
movsd xmm0, qword [eax + 0x18]
movsd qword [esp + 0x24], xmm0
movsd xmm0, qword [eax + 8]
movsd xmm1, qword [eax + 0x10]
movsd qword [esp + 0x1c], xmm1
movsd qword [esp + 0x14], xmm0
mov cx, word [0x494da8]
mov ax, cx
xor eax, 0xc483
mov cx, ax
mov word [0x494da8], cx
mov eax, esp
mov dword [eax + 4], 0x100
mov dword [eax], 0x1f59
call fcn.004033e0
mov dword [esp + 8], eax
mov eax, dword [0x4a0328]
or eax, 0x2885c33
and eax, 0xe2c85eff
mov edx, dword [0x4ad7f4]
sub edx, eax
mov dword [0x4ad7f4], edx
mov dword [esp + 0x10], 0
cmp dword [esp + 0x10], 0x40
je 0x44f923
mov eax, dword [0x49aa2c]
mov ecx, eax
inc ecx
mov dword [0x49aa2c], ecx
imul eax, eax, 0x980420fe
mov ecx, 0x9aeb535f
sub ecx, eax
mov eax, dword [0x4a7b64]
imul eax, eax, 0xeb750c62
cmp ecx, eax
jg 0x44f574
mov eax, dword [0x49f398]
add eax, 0x88fd94cd
mov dword [0x49f398], eax
cmp dword [esp + 0x10], 0xf
jle 0x44f69b
mov eax, 0xc6b1288f
mov dword [0x4a5140], 0x15c8762a
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + ecx*4 + 0x30]
mov esi, edx
rol esi, 0xf
mov edi, edx
rol edi, 0xd
xor esi, edi
shr edx, 0xa
xor esi, edx
mov dword [esp + ecx*4 + 0x38], esi
mov ecx, dword [0x49ae7c]
inc ecx
mov dword [0x49ae7c], ecx
cmp eax, ecx
jg 0x44f5dc
mov eax, dword [0x4aa998]
mov ecx, eax
inc ecx
mov dword [0x4aa998], ecx
mov ecx, dword [0x4a5eb0]
xor ecx, eax
mov dword [0x4a5eb0], ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + eax*4 + 0x1c]
mov edx, dword [esp + eax*4 + 0x38]
add edx, ecx
mov dword [esp + eax*4 + 0x38], edx
mov eax, dword [0x4a7cc4]
xor eax, 0xc98ffd19
mov dword [0x4a7cc4], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + eax*4 - 4]
mov edx, ecx
rol edx, 0x19
mov esi, ecx
rol esi, 0xe
xor edx, esi
shr ecx, 3
xor edx, ecx
mov ecx, dword [esp + eax*4 + 0x38]
add ecx, edx
mov dword [esp + eax*4 + 0x38], ecx
mov eax, dword [0x4a31a8]
imul eax, eax, 0x258ae3f5
mov dword [0x4a31a8], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + eax*4 - 8]
mov edx, dword [esp + eax*4 + 0x38]
add edx, ecx
mov dword [esp + eax*4 + 0x38], edx
mov eax, dword [0x49fe90]
mov ecx, eax
inc ecx
mov dword [0x49fe90], ecx
add eax, 0x5fd25523
xor eax, 0x7e4a39cd
mov ecx, dword [0x4a406c]
not ecx
mov edx, dword [0x49f8f8]
xor edx, 0xffffffff
sub ecx, edx
xor ecx, 0xfebb0104
cmp eax, ecx
jl 0x44f696
mov eax, dword [0x49ef0c]
shl eax, 8
xor eax, 0xcd5f4a10
mov ecx, dword [0x4aaa88]
sub ecx, eax
mov dword [0x4aaa88], ecx
jmp 0x44f69b
mov eax, 0x8014d65e
mov ecx, dword [0x4a48bc]
or ecx, 0xe18dfc67
mov dword [0x4a48bc], ecx
mov dx, word [0x48f852]
mov cx, dx
add ecx, 0xc700a906
mov dx, cx
mov word [0x48f852], dx
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
mov ebx, esi
rol ebx, 0x1a
mov ebp, esi
rol ebp, 0x15
xor ebx, ebp
mov ebp, esi
rol ebp, 7
xor ebx, ebp
add ecx, ebx
mov ebx, dword [esp + 0x2c]
xor edi, ebx
and esi, edi
xor ebx, esi
add ecx, ebx
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 8]
mov edi, dword [edi + esi*4]
add ecx, edi
mov esi, dword [esp + esi*4 + 0x38]
add ecx, esi
mov dword [esp + 0x13c], ecx
mov word [0x4940d6], 0xa5b6
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov edi, ecx
rol edi, 0x1e
mov ebx, ecx
rol ebx, 0x13
xor edi, ebx
mov ebx, ecx
rol ebx, 0xa
xor edi, ebx
mov ebx, ecx
and ebx, esi
mov ebp, dword [esp + 0x1c]
or ecx, esi
and ebp, ecx
or ebx, ebp
add edi, ebx
mov dword [esp + 0x138], edi
mov ecx, dword [0x4a9ba8]
mov esi, dword [0x4ad80c]
inc esi
mov dword [0x4ad80c], esi
imul ecx, esi
add ecx, 0x8167484c
cmp eax, ecx
je 0x44f798
mov ax, word [0x492b78]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x492b78], dx
movsx ecx, ax
mov esi, dword [0x49aa88]
imul esi, ecx
mov dword [0x49aa88], esi
mov eax, dword [esp + 0x13c]
mov ecx, dword [esp + 0x20]
add ecx, eax
mov dword [esp + 0x20], ecx
mov eax, dword [0x4a77b8]
or eax, 0x15ad868
mov dword [0x4a77b8], eax
mov eax, dword [esp + 0x13c]
mov ecx, dword [esp + 0x138]
add eax, ecx
mov dword [esp + 0x30], eax
mov eax, dword [0x4a2150]
and eax, 0xd4575ac3
mov dword [0x4a2150], eax
mov eax, dword [0x4a2ad4]
add eax, 0x8acc0c53
mov dword [0x4a2ad4], eax
mov eax, dword [0x4a69f0]
mov ecx, eax
dec ecx
mov dword [0x4a69f0], ecx
and eax, 0xa2cc1679
mov ecx, dword [0x4a2d40]
or ecx, eax
mov dword [0x4a2d40], ecx
mov dword [esp + 0xc], 8
cmp dword [esp + 0xc], 0
je 0x44f861
mov ax, word [0x4956fe]
movsx ecx, ax
or ecx, 0x793a2fa3
mov edx, dword [0x4a054c]
sub edx, ecx
mov dword [0x4a054c], edx
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + ecx*4 + 0x10]
mov dword [esp + ecx*4 + 0x14], edx
mov dword [0x4a8960], 0xb93cd14f
mov eax, dword [esp + 0xc]
add eax, 0xffffffff
mov dword [esp + 0xc], eax
jmp 0x44f813
mov eax, 0xa30d1a32
mov ecx, dword [0x4a9388]
xor ecx, 0xffffffff
cmp eax, ecx
jg 0x44f8d5
mov eax, 0x6c9934c9
mov cx, word [0x497e6a]
movsx edx, cx
shl edx, 9
xor edx, 0xf313fdb1
cmp eax, edx
jle 0x44f8ab
mov eax, dword [0x4ad3e8]
add eax, 0xdffffde0
mov dword [0x4ad3e8], eax
jmp 0x44f8d0
mov eax, 0x2c440b20
mov ecx, dword [0x4a06ac]
xor ecx, 0xffffffff
cmp eax, ecx
je 0x44f8c6
jmp 0x44f8cb
jmp 0x44f8cb
jmp 0x44f8d0
jmp 0x44f8d5
mov eax, 0xffdfffff
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x14], ecx
mov ecx, dword [0x4a2f60]
inc ecx
mov dword [0x4a2f60], ecx
mov edx, dword [0x4a9818]
and ecx, edx
cmp eax, ecx
jge 0x44f90e
mov eax, dword [0x4a6764]
and eax, 0x24104000
mov dword [0x4a6764], eax
jmp 0x44f913
mov eax, dword [esp + 0x10]
add eax, 1
mov dword [esp + 0x10], eax
jmp 0x44f52c
mov dword [0x4abe44], 0x4015ede4
mov eax, dword [esp + 8]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x100
call fcn.0043ade0
mov eax, dword [0x4a1a58]
imul eax, eax, 0x8e8f1402
mov dword [0x4a1a58], eax
mov dword [esp + 0x10], 0
cmp dword [esp + 0x10], 8
je 0x44fa3d
mov eax, 0x6a92549f
mov ecx, dword [0x49ce54]
mov dx, word [0x490eee]
movsx esi, dx
sub ecx, esi
cmp eax, ecx
jge 0x44f9e2
mov eax, dword [0x49db78]
mov ecx, eax
inc ecx
mov dword [0x49db78], ecx
mov ecx, dword [0x4a5c28]
mov edx, ecx
inc edx
mov dword [0x4a5c28], edx
sub eax, ecx
sub eax, 0x81cad638
cmp eax, 0xc0837e82
jl 0x44f9dd
mov ax, word [0x498df0]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x498df0], dx
movsx ecx, ax
xor ecx, 0x61b824f9
mov esi, dword [0x4ab2c4]
sub esi, ecx
mov dword [0x4ab2c4], esi
jmp 0x44f9e2
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + eax*4 + 0x14]
mov edx, dword [esp + 0x140]
mov esi, dword [edx + eax*4 + 8]
add esi, ecx
mov dword [edx + eax*4 + 8], esi
mov eax, dword [0x49a52c]
mov ecx, dword [0x4a7c70]
sar ecx, 8
cmp eax, ecx
jge 0x44fa28
mov ax, word [0x49300e]
movsx ecx, ax
mov edx, dword [0x4a79d4]
or edx, ecx
mov dword [0x4a79d4], edx
jmp 0x44fa2d
mov eax, dword [esp + 0x10]
add eax, 1
mov dword [esp + 0x10], eax
jmp 0x44f959
mov eax, dword [0x49ad00]
add eax, 0x29fb673f
mov ecx, dword [0x49fe10]
xor ecx, eax
mov dword [0x49fe10], ecx
add esp, 0x148
pop esi
pop edi
pop ebx
pop ebp
ret