Function at 0x415860
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x154
fld qword [0x4488c8]
push ebx
fstp qword [0x44d1d0]
push esi
fld dword [0x44d428]
push edi
fsubr qword [0x4488c0]
fadd qword [0x44d3d0]
fadd qword [0x44d018]
fstp qword [0x44d018]
mov ax, word [0x44d008]
movzx ecx, word [0x44d1a4]
cwde
movsx edx, cx
sub eax, edx
sub eax, 0x1c996599
mov dword [ebp - 8], eax
mov edx, 1
fild dword [ebp - 8]
fmul dword [0x44d2f8]
fstp dword [0x44d2f8]
add word [0x44d008], dx
mov eax, dword [0x44d090]
movzx ecx, word [0x44d17c]
mov dword [ebp - 8], eax
movsx eax, cx
fild dword [ebp - 8]
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0xc]
fild dword [ebp - 8]
fsub dword [0x44d210]
fsubp st(1)
fistp qword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov dword [0x44d090], ecx
add word [0x44d17c], dx
fld qword [0x4488b8]
xor ecx, ecx
fld qword [0x4488b0]
add eax, 2
fld qword [0x4488a8]
fld1
fld qword [0x44d280]
add eax, 4
fld qword [0x44d3e0]
fadd st(5)
fsubp st(1)
fstp qword [0x44d280]
fld dword [str._pVM]
mov si, word [0x44d1a8]
movsx esi, si
mov dword [ebp - 8], esi
mov esi, dword [0x44d438]
fild dword [ebp - 8]
mov dword [ebp - 8], esi
fsubp st(1)
fild dword [ebp - 8]
fmulp st(1)
fistp qword [ebp - 0x18]
mov esi, dword [ebp - 0x18]
mov dword [0x44d438], esi
movzx esi, byte [eax - 6]
movzx edi, byte [eax - 5]
fld dword [0x44d35c]
fmul st(3)
shl esi, 8
or esi, edi
movzx edi, byte [eax - 4]
shl esi, 8
or esi, edi
movzx edi, byte [eax - 3]
shl esi, 8
or esi, edi
mov dword [ebp + ecx*4 - 0x154], esi
add ecx, edx
fstp dword [0x44d35c]
fld qword [0x44d368]
mov esi, dword [0x44d0c0]
fsub st(2)
mov dword [ebp - 8], esi
fild dword [ebp - 8]
faddp st(1)
fistp qword [ebp - 0x10]
mov esi, dword [ebp - 0x10]
mov dword [0x44d0c0], esi
fld qword [0x44d368]
fsub st(1)
fstp qword [0x44d368]
mov esi, dword [0x44d490]
mov edi, dword [0x44d140]
lea esi, [edi + esi + 0x4eb3b03]
mov dword [0x44d490], esi
cmp ecx, 0x10
jne 0x41591e
movzx edx, word [0x44d404]
fstp st(3)
fstp st(1)
movsx eax, dx
fstp st(0)
fstp st(0)
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
add eax, 8
fild dword [ebp - 8]
push 0x24
push eax
lea ecx, [ebp - 0x3c]
fmul qword [0x44d230]
push ecx
mov dword [ebp - 0x14], eax
fstp qword [0x44d230]
call fcn.00417ea0
fld dword [0x44d218]
movzx edx, word [0x44d030]
fsub qword [0x4488a0]
movsx eax, dx
mov dword [ebp + 8], eax
push 0x100
push 0x2ef0
fild dword [ebp + 8]
fmulp st(1)
fistp qword [ebp - 0x10]
mov cx, word [ebp - 0x10]
mov word [0x44d030], cx
call fcn.00412070
or ebx, 0xffffffff
add word [0x44d440], bx
fld qword [0x44d170]
fadd qword [0x44d2d8]
mov dword [ebp - 8], eax
movzx edx, word [0x44d440]
movsx eax, dx
fsub qword [0x448898]
mov dword [ebp + 8], eax
add esp, 0x14
fild dword [ebp + 8]
fcompp
fnstsw ax
fld qword [0x44d170]
fld1
fsub st(1), st(0)
fxch st(1)
fstp qword [0x44d170]
fld qword [0x44d2d8]
fsub st(1)
fstp qword [0x44d2d8]
test ah, 1
jne 0x415ade
mov ecx, dword [0x44d27c]
add ecx, 0x7be7207e
mov dword [ebp + 8], ecx
fild dword [ebp + 8]
fmul qword [0x44d330]
fstp qword [0x44d330]
fld qword [0x448890]
lea eax, [ebp - 0x3c]
fld qword [0x448888]
xor edi, edi
fld qword [0x448880]
sub eax, 4
fld qword [0x448878]
lea esi, [ebp - 0x154]
mov dword [ebp + 8], edi
mov dword [ebp - 0xc], eax
sub esi, 8
mov dx, word [0x44d454]
mov ecx, dword [0x44d27c]
movsx eax, dx
add eax, 0xc2eab8fb
add ecx, eax
mov word [0x44d454], cx
add dword [0x44d27c], ebx
cmp edi, 0xf
jle 0x415c94
mov dx, word [0x44d3bc]
mov ecx, dword [0x44d40c]
movsx eax, dx
sub eax, ecx
mov word [0x44d3bc], ax
add dword [0x44d40c], ebx
mov eax, dword [esi]
fld qword [0x44d0c8]
mov ecx, eax
fcomp qword [0x448870]
rol ecx, 0xf
mov edx, eax
rol edx, 0xd
shr eax, 0xa
xor ecx, edx
xor ecx, eax
mov dword [esi + 8], ecx
fnstsw ax
test ah, 5
jp 0x415baa
fld qword [0x44d208]
fadd qword [0x44d1f8]
mov ax, word [0x44d098]
movsx edx, ax
mov dword [ebp - 4], edx
fild dword [ebp - 4]
faddp st(1)
fadd dword [0x44d134]
fstp dword [0x44d134]
fld qword [0x44d3a8]
movzx eax, word [0x44d248]
movsx edx, ax
mov dword [ebp - 4], edx
fild dword [ebp - 4]
fsubp st(1)
fstp qword [0x44d3a8]
inc word [0x44d248]
fld dword [0x44d068]
movzx edx, word [0x44d3a0]
mov eax, dword [esi - 0x34]
fsub st(4)
movsx edx, dx
mov dword [ebp - 4], edx
mov ebx, eax
fild dword [ebp - 4]
faddp st(1)
fistp qword [ebp - 0x44]
movzx edx, word [ebp - 0x44]
mov word [0x44d3a0], dx
mov edx, eax
fld dword [0x44d068]
rol edx, 0xe
shr eax, 3
fadd st(5)
ror ebx, 7
xor edx, ebx
xor edx, eax
add edx, dword [esi - 0x38]
fstp dword [0x44d068]
movzx eax, word [0x44d2b0]
add edx, dword [esi - 0x14]
add edx, ecx
movsx ecx, ax
add ecx, 0x2624cc39
mov dword [ebp - 4], ecx
mov dword [esi + 8], edx
fild dword [ebp - 4]
fsub dword [0x44d11c]
movzx edx, word [0x44d1a8]
movsx eax, dx
mov dword [ebp - 4], eax
fild dword [ebp - 4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x415c6d
fld dword [0x44d428]
fsub qword [0x448868]
fstp dword [0x44d428]
jmp 0x415c91
mov ecx, dword [0x44d084]
add ecx, 0x1efe6965
mov dword [ebp - 4], ecx
fild dword [ebp - 4]
fmul qword [0x44d078]
fstp qword [0x44d078]
inc dword [0x44d084]
or ebx, 0xffffffff
inc dword [0x44d44c]
add word [0x44d0b0], bx
mov edx, dword [0x44d44c]
sub edx, 0x4f092116
mov dword [ebp - 4], edx
fild dword [ebp - 4]
fadd dword [0x44d1dc]
mov ax, word [0x44d0b0]
mov dx, word [0x44d13c]
movsx ecx, ax
movsx eax, dx
sub eax, ecx
mov ecx, dword [0x44d1d8]
add ecx, eax
mov dword [ebp - 4], ecx
fild dword [ebp - 4]
fucompp
fnstsw ax
fld dword [0x44d1dc]
fsub st(5)
fstp dword [0x44d1dc]
test ah, 0x44
jnp 0x415d1b
fld dword [0x44d178]
fld qword [0x44d1f8]
fadd qword [0x44d2d8]
fsubp st(1)
fstp dword [0x44d178]
fld qword [0x44d1f8]
fadd st(5)
fstp qword [0x44d1f8]
mov dx, word [0x44d3bc]
movzx ecx, word [0x44d4b8]
movsx eax, dx
mov ebx, dword [ebp - 0x28]
add eax, 0x2e7694c7
imul ecx, eax
mov eax, dword [ebp - 0x2c]
mov word [0x44d4b8], cx
mov ecx, eax
fld dword [0x44d0bc]
ror ecx, 0xb
mov edx, eax
fsub st(5)
rol edx, 7
xor ecx, edx
mov edx, eax
ror edx, 6
xor ecx, edx
mov edx, dword [ebp - 0x24]
xor ebx, edx
and ebx, eax
mov eax, dword [ebp - 8]
xor ebx, edx
add ecx, ebx
add ecx, dword [eax + edi*4]
add ecx, dword [esi + 8]
add ecx, dword [ebp - 0x20]
fstp dword [0x44d0bc]
fld dword [0x44d088]
fadd st(5)
fstp dword [0x44d088]
fld dword [0x44d0bc]
fld dword [0x44d088]
fadd qword [0x44d1c0]
fucompp
fnstsw ax
test ah, 0x44
jp 0x415db4
fld qword [0x44d3d8]
fmul qword [0x448860]
fstp qword [0x44d3d8]
mov eax, dword [ebp - 0x3c]
fld dword [0x44d26c]
mov edx, eax
fsub st(5)
mov edi, eax
ror edx, 0xd
rol edi, 0xa
xor edx, edi
mov edi, eax
ror edi, 2
xor edx, edi
mov edi, dword [ebp - 0x38]
mov ebx, edi
or ebx, eax
and ebx, dword [ebp - 0x34]
fstp dword [0x44d26c]
and edi, eax
movzx eax, word [0x44d450]
cwde
mov dword [ebp - 4], eax
or ebx, edi
add edx, ebx
fild dword [ebp - 4]
fstp dword [ebp - 4]
fld dword [0x44d26c]
add dword [ebp - 0x30], ecx
fsubr dword [ebp - 4]
fistp qword [ebp - 0x4c]
movzx eax, word [ebp - 0x4c]
mov word [0x44d450], ax
movzx eax, word [0x44d220]
cwde
mov dword [ebp - 4], eax
fild dword [ebp - 4]
fld dword [0x44d3f4]
fsub st(4)
fucompp
fnstsw ax
fld dword [0x44d3f4]
fsub st(5)
fstp dword [0x44d3f4]
inc word [0x44d220]
test ah, 0x44
jnp 0x415e6d
fld dword [0x44d020]
mov ax, word [0x44d150]
cwde
mov dword [ebp - 4], eax
fild dword [ebp - 4]
fadd qword [0x44d498]
fsub qword [0x448858]
fsubp st(1)
fstp dword [0x44d020]
add edx, ecx
mov cx, word [0x44d2d0]
mov dword [ebp - 0x20], edx
movsx edx, cx
add edx, 0x7eeab147
mov dword [ebp - 4], edx
or ebx, 0xffffffff
fild dword [ebp - 4]
fadd dword [0x44d1a0]
fstp dword [0x44d1a0]
fld dword [0x44d384]
mov ax, word [0x44d3a0]
mov dx, word [0x44d2b8]
movsx ecx, ax
mov dword [ebp - 4], ecx
movsx eax, dx
fild dword [ebp - 4]
mov dword [ebp - 4], eax
lea eax, [ebx + 9]
faddp st(1)
fild dword [ebp - 4]
faddp st(1)
fadd qword [0x44d430]
fstp qword [0x44d430]
add word [0x44d3a0], bx
fld dword [0x44d400]
fsub st(5)
fstp dword [0x44d400]
fld dword [0x44d400]
mov ecx, dword [0x44d3b8]
fsub st(2)
mov dword [ebp - 4], ecx
fild dword [ebp - 4]
mov ecx, dword [ebp - 0xc]
fmulp st(1)
fistp qword [ebp - 0x54]
mov edx, dword [ebp - 0x54]
mov dword [0x44d3b8], edx
sub eax, 1
fld qword [0x44d330]
fld dword [0x44d2e8]
mov edx, dword [ecx + eax*4 + 4]
fsubr st(2)
mov dword [ebp + eax*4 - 0x38], edx
fsubp st(1)
fstp qword [0x44d330]
fld qword [0x44d260]
fsub qword [0x44d478]
fadd dword [0x44d08c]
fadd dword [0x44d088]
fstp dword [0x44d088]
fld qword [0x44d478]
fadd st(5)
fstp qword [0x44d478]
jne 0x415f09
mov eax, dword [0x44d358]
fld dword [0x448850]
mov edi, dword [ebp + 8]
imul eax, eax, 0x3b55787d
mov ecx, dword [ebp - 0x1c]
inc edi
add esi, 4
mov dword [0x44d358], eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp + 8], edi
fstp dword [0x44d43c]
cmp edi, 0x40
jne 0x415b0d
movzx edx, word [0x44d1b4]
fstp st(0)
fstp st(0)
movsx eax, dx
fstp st(1)
fstp st(0)
mov dword [ebp + 8], eax
mov eax, dword [ebp - 8]
push eax
fild dword [ebp + 8]
push 0x100
fadd qword [0x44d280]
movzx ecx, word [0x44d238]
movsx edx, cx
mov dword [ebp + 8], edx
fild dword [ebp + 8]
faddp st(1)
fadd dword [0x44d4b0]
fstp dword [0x44d4b0]
fsubr qword [0x44d280]
fstp qword [0x44d280]
add word [0x44d1b4], bx
call fcn.00413df0
fld qword [0x448848]
movzx ecx, word [0x44d378]
movzx edx, word [0x44d224]
movsx eax, cx
add eax, 0x52cdda63
imul edx, eax
mov eax, dword [ebp - 0x14]
add esp, 8
mov word [0x44d224], dx
xor ecx, ecx
mov edx, 0xe3b3b96c
add dword [str.B8I_Ij_], edx
mov esi, dword [ebp + ecx*4 - 0x3c]
add dword [eax], esi
add word [0x44d06c], bx
mov si, word [0x44d06c]
movsx esi, si
sub esi, 0x50b0020e
cmp esi, 0x9c8060f6
je 0x416064
fld qword [0x44d050]
fld qword [0x44d1f0]
fsub qword [0x44d468]
fsub st(2)
fsubp st(1)
fstp qword [0x44d050]
inc ecx
add eax, 4
cmp ecx, 8
jne 0x41601d
fstp st(0)
pop edi
fld qword [0x44d1e0]
pop esi
fld1
pop ebx
fadd st(1), st(0)
fxch st(1)
fstp qword [0x44d1e0]
fld dword [0x44d020]
fld qword [0x44d3a8]
fsubr qword [0x448840]
fsub qword [0x44d1e0]
fsubp st(1)
fstp dword [0x44d020]
fadd qword [0x44d3a8]
fstp qword [0x44d3a8]
mov esp, ebp
pop ebp
ret