Function at 0x411650
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
movzx eax, word [0x4ae0f4]
sub esp, 0x134
sub eax, 0x2dbe16b0
movss xmm4, dword [0x4a0124]
mov word [0x4ae0f4], ax
mov eax, dword [0x4ae3e8]
movss xmm0, dword [0x4ae1e8]
mov edx, dword [ebp + 0xc]
movsd xmm3, qword [0x4a0128]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
push ebx
push esi
xor esi, esi
add edx, 2
movss xmm6, dword [0x4a2920]
subss xmm1, xmm0
movsd xmm5, qword [0x4a0700]
movsd xmm0, qword [0x4ae1e0]
cvtps2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4ae1e0], xmm0
movss xmm0, dword [0x4ae1e8]
addss xmm0, xmm4
movss dword [0x4ae1e8], xmm0
movss xmm0, dword [0x4ae030]
subss xmm0, xmm4
movss dword [0x4ae030], xmm0
movsd xmm2, qword [0x4ae0c0]
movss xmm1, dword [0x4ae030]
movsx eax, word [0x4ae33c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
cvtps2pd xmm0, xmm1
subsd xmm2, xmm0
movsd qword [0x4ae0c0], xmm2
nop dword [eax]
movsd xmm0, qword [0x4ae4e0]
mov ecx, 0xf47f499b
addsd xmm0, xmm3
movsd qword [0x4ae4e0], xmm0
movss xmm0, dword [0x4ae378]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4ae4e0]
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x4ae378], xmm0
movsx eax, word [0x4ae0f4]
sub ecx, eax
mov eax, dword [0x4ae184]
add eax, ecx
movzx ecx, word [0x4ae1c8]
imul ecx, eax
mov word [0x4ae1c8], cx
dec dword [0x4ae184]
movzx ecx, byte [edx - 2]
movzx eax, byte [edx - 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
mov dword [ebp + esi*4 - 0x134], ecx
dec word [0x4ae10c]
movsx eax, word [0x4ae10c]
add eax, 0xa22a8fdb
add dword [0x4ae310], eax
inc word [0x4ae4d4]
movss xmm0, dword [0x4ae070]
subss xmm0, xmm4
movss dword [0x4ae070], xmm0
mov ax, word [0x4ae4a8]
movsx ecx, word [0x4ae4d0]
cwde
sub ecx, eax
movsx eax, word [0x4ae4d4]
movss xmm1, dword [0x4ae070]
add ecx, 0x765e0627
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movd xmm2, ecx
addss xmm1, xmm0
cvtdq2ps xmm2, xmm2
addss xmm1, xmm6
ucomiss xmm2, xmm1
lahf
test ah, 0x44
jnp 0x411838
movsd xmm0, qword [0x4ae380]
subsd xmm0, xmm5
cvtpd2ps xmm0, xmm0
movss dword [0x4ae49c], xmm0
movsx eax, word [0x4ae3b0]
inc esi
movss xmm0, dword [0x4ae17c]
add edx, 4
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
movss dword [0x4ae17c], xmm0
cmp esi, 0x10
jne 0x411720
movss xmm1, dword [0x4ae26c]
mov ecx, 0xbb174405
mov eax, dword [0x4ae178]
movd xmm0, eax
mov eax, dword [ebp + 8]
cvtdq2ps xmm0, xmm0
add eax, 8
mov dword [ebp - 0x10], eax
subss xmm1, xmm0
movss dword [0x4ae26c], xmm1
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x34], xmm0
movups xmm0, xmmword [eax + 0x10]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x14], eax
movups xmmword [ebp - 0x24], xmm0
dec word [0x4ae0f4]
movsx eax, word [0x4ae0f4]
sub ecx, eax
movsx eax, word [0x4ae3f0]
inc word [0x4ae3f0]
cmp eax, ecx
jg 0x4118e4
movsd xmm0, qword [0x4ae158]
subsd xmm0, qword [0x4a0268]
movsd qword [0x4ae158], xmm0
push 0x100
push 0x3157
call fcn.0044a880
movss xmm0, dword [0x4ae388]
lea ebx, [ebp - 0x134]
movss xmm1, dword [0x4a23bc]
add esp, 8
movss xmm2, dword [0x4a0124]
subss xmm1, xmm0
movss xmm0, dword [0x4ae46c]
xor ecx, ecx
movss xmm5, dword [0x4a2504]
movss xmm6, dword [0x4a27d0]
movss xmm7, dword [0x4a3ba8]
movss xmm4, dword [0x4a261c]
movsd xmm3, qword [0x4a0128]
mulss xmm0, xmm1
mov dword [ebp - 8], eax
lea eax, [ebp - 0x34]
sub eax, 4
mov dword [ebp + 8], ecx
sub ebx, 8
mov dword [ebp - 0xc], eax
movss dword [0x4ae46c], xmm0
movss xmm0, dword [0x4ae388]
subss xmm0, xmm2
mov dword [ebp - 4], ebx
push edi
movss dword [0x4ae388], xmm0
movss xmm1, dword [0x4ae290]
mov eax, dword [0x4ae260]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movsd xmm0, qword [0x4ae320]
cvtps2pd xmm1, xmm1
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x4ae434], eax
movsd xmm0, qword [0x4ae320]
subsd xmm0, xmm3
movsd qword [0x4ae320], xmm0
inc dword [0x4ae260]
cmp ecx, 0xf
jle 0x411adc
movss xmm0, dword [0x4ae170]
subss xmm0, xmm2
movss dword [0x4ae170], xmm0
inc word [0x4ae3e4]
movss xmm0, dword [0x4ae170]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4ae478]
movsx eax, word [0x4ae3e4]
subsd xmm1, xmm0
movd xmm0, eax
mov eax, dword [0x4ae054]
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov dword [0x4ae054], eax
movsd xmm0, qword [0x4ae478]
mov ecx, dword [ebx]
subsd xmm0, xmm3
mov esi, ecx
mov eax, ecx
rol eax, 0xd
rol esi, 0xf
xor esi, eax
shr ecx, 0xa
movsd qword [0x4ae478], xmm0
xor esi, ecx
mov ecx, dword [0x4ae0cc]
mov eax, dword [0x4ae0c8]
add eax, 0xbfb219e2
mov dword [ebx + 8], esi
add ecx, eax
mov eax, dword [0x4ae4dc]
dec dword [0x4ae4dc]
cmp ecx, eax
jle 0x411a91
movss xmm0, dword [0x4ae084]
mulss xmm0, xmm5
movss dword [0x4ae084], xmm0
mov eax, dword [0x4ae208]
mov ecx, 0xc9ac3bc5
movsd xmm0, qword [0x4a33a8]
sub ecx, eax
add dword [0x4ae414], ecx
mov ecx, dword [ebx - 0x34]
mov edx, ecx
rol edx, 0xe
mov eax, ecx
ror eax, 7
xor edx, eax
shr ecx, 3
xor edx, ecx
movsd qword [0x4ae3c0], xmm0
add edx, dword [ebx - 0x38]
add edx, dword [ebx - 0x14]
add edx, esi
mov dword [ebx + 8], edx
mov dword [0x4ae194], 0xce9c44d2
mov eax, dword [0x4ae0f8]
mov ecx, 0x871b7401
movsd xmm0, qword [0x4ae4a0]
add eax, 0x7163e0af
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4ae4a0], xmm0
mov eax, dword [0x4ae39c]
sub ecx, eax
add dword [0x4ae314], ecx
mov edx, dword [ebp - 0x24]
mov edi, edx
mov ecx, dword [ebp - 0x20]
mov eax, edx
xor ecx, dword [ebp - 0x1c]
rol eax, 7
and ecx, edx
xor ecx, dword [ebp - 0x1c]
ror edi, 0xb
xor edi, eax
mov eax, edx
ror eax, 6
xor edi, eax
mov eax, dword [ebp + 8]
add edi, ecx
mov ecx, dword [ebp - 8]
add edi, dword [ecx + eax*4]
movzx eax, word [0x4ae154]
add edi, dword [ebx + 8]
add edi, dword [ebp - 0x18]
movsx ecx, ax
movzx eax, word [0x4ae024]
sub ecx, eax
sub ecx, 0x786c714b
mov word [0x4ae154], cx
movss xmm1, dword [0x4ae344]
mov eax, dword [0x4ae3d0]
addss xmm1, dword [0x4a283c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [0x4ae3d0], eax
movss xmm0, dword [0x4ae344]
add dword [ebp - 0x28], edi
subss xmm0, xmm2
movss dword [0x4ae344], xmm0
imul eax, dword [str.lVJX], 0xf4f1184
mov edx, dword [ebp - 0x34]
mov esi, edx
ror esi, 0xd
mov dword [str.lVJX], eax
mov eax, edx
rol eax, 0xa
xor esi, eax
mov eax, edx
ror eax, 2
xor esi, eax
mov eax, dword [ebp - 0x30]
mov ecx, eax
add esi, edi
or ecx, edx
and eax, edx
and ecx, dword [ebp - 0x2c]
or ecx, eax
add ecx, esi
mov dword [ebp - 0x18], ecx
dec word [0x4ae0e8]
movzx eax, word [0x4ae0e8]
movsx ecx, ax
mov eax, dword [0x4ae0cc]
movsd xmm0, qword [0x4ae0b8]
add eax, 0xa1e2b35
add eax, ecx
movd xmm1, eax
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4ae0b8], xmm0
dec dword [0x4ae0cc]
movsd xmm0, qword [0x4ae218]
addsd xmm0, xmm3
mov ebx, dword [ebp - 0xc]
mov edx, 8
movsd qword [0x4ae218], xmm0
movsd xmm1, qword [0x4ae218]
subsd xmm1, qword [0x4a1318]
movsd xmm0, qword [0x4ae4b8]
addsd xmm1, qword [0x4a17d8]
addsd xmm0, xmm1
movsd qword [0x4ae4b8], xmm0
movsd xmm0, qword [0x4ae380]
addsd xmm0, xmm3
movsd qword [0x4ae380], xmm0
movsd xmm1, qword [0x4ae380]
subsd xmm1, qword [0x4a0200]
movsd xmm0, qword [0x4ae1f8]
mulsd xmm0, xmm1
movsd qword [0x4ae1f8], xmm0
nop
mov eax, dword [0x4ae3d0]
movd xmm2, eax
movsx eax, word [0x4ae4d8]
movss xmm1, dword [0x4ae094]
cvtdq2ps xmm2, xmm2
movd xmm0, eax
mov eax, dword [0x4ae314]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
subss xmm2, xmm1
cvttss2si eax, xmm2
mov dword [0x4ae3d0], eax
mov eax, dword [ebx + edx*4]
mov dword [ebp + edx*4 - 0x34], eax
mov ax, word [0x4ae308]
movsx ecx, ax
movsx eax, word [0x4ae4d4]
add eax, 0x68caef38
add eax, ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [0x4ae4e8], xmm0
sub edx, 1
jne 0x411ca0
dec word [0x4ae06c]
movsd xmm1, qword [0x4ae040]
movsx eax, word [0x4ae06c]
mov ebx, dword [ebp - 4]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd xmm0, qword [0x4ae368]
subsd xmm1, xmm0
movsd xmm0, qword [0x4a3028]
ucomisd xmm0, xmm1
movsd xmm0, qword [0x4ae040]
subsd xmm0, xmm3
lahf
movsd qword [0x4ae040], xmm0
test ah, 0x44
jp 0x411daf
movss xmm0, dword [0x4ae264]
movaps xmm1, xmm6
movsx eax, word [0x4ae250]
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
comiss xmm1, xmm7
jb 0x411daf
movsx eax, word [0x4ae438]
mov ecx, 0xfd8306ef
sub ecx, eax
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [0x4ae340], xmm0
movss xmm0, dword [0x4ae0fc]
add ebx, 4
mov ecx, dword [ebp + 8]
subss xmm0, xmm4
mov eax, dword [ebp - 0x14]
inc ecx
movss xmm2, dword [0x4a0124]
mov dword [ebp - 0x34], eax
mov dword [ebp + 8], ecx
movss dword [0x4ae0fc], xmm0
mov dword [ebp - 4], ebx
cmp ecx, 0x40
jne 0x411980
movsx eax, word [0x4ae220]
movss xmm0, dword [0x4ae070]
add eax, 0x45b5113e
push dword [ebp - 8]
push 0x100
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4ae070], xmm0
call fcn.00441fb0
movsd xmm0, qword [0x4ae140]
add esp, 8
subsd xmm0, qword [0x4a0768]
mov ebx, dword [ebp - 0x10]
xor edx, edx
pop edi
movsd qword [0x4ae140], xmm0
nop dword [eax]
movsx eax, word [0x4ae350]
mov ecx, 0xa65726ea
movsd xmm0, qword [0x4ae228]
movd xmm1, eax
mov eax, dword [ebp + edx*4 - 0x34]
inc edx
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4ae3d4], xmm0
add dword [ebx], eax
add ebx, 4
movsx eax, word [0x4ae2c8]
sub ecx, eax
add dword [0x4ae2bc], ecx
cmp edx, 8
jne 0x411e40
inc dword [0x4ae32c]
movss xmm0, dword [0x4ae094]
subss xmm0, dword [0x4a2180]
mov eax, dword [0x4ae32c]
movsd xmm1, qword [0x4ae1b8]
movss xmm4, dword [0x4a0124]
pop esi
cvtps2pd xmm2, xmm0
pop ebx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
movss xmm0, dword [0x4ae094]
addss xmm0, xmm4
comisd xmm2, xmm1
movss dword [0x4ae094], xmm0
jbe 0x411eee
add dword [0x4ae37c], 0xc00b2ad1
mov esp, ebp
pop ebp
ret
movss xmm0, dword [0x4ae20c]
subss xmm0, xmm4
movss dword [0x4ae20c], xmm0
mov eax, dword [0x4ae32c]
movss xmm1, dword [0x4ae20c]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
movss xmm0, dword [0x4ae290]
movsx eax, word [0x4ae10c]
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4ae10c], ax
movss xmm0, dword [0x4ae290]
addss xmm0, xmm4
movss dword [0x4ae290], xmm0
mov esp, ebp
pop ebp
ret