Function at 0x413cd0
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [0x4ad314]
sub esp, 0x134
movss xmm0, dword [0x4ad110]
movsd xmm3, qword [0x49eee0]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [0x4ad314], eax
movss xmm0, dword [0x4ad110]
addss xmm0, dword [0x49eed8]
movss dword [0x4ad110], xmm0
movsx eax, word [0x4ad194]
movsd xmm0, qword [0x4ad420]
addsd xmm0, qword [0x4ad3b0]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov word [0x4ad194], ax
movsd xmm0, qword [0x4ad3b0]
subsd xmm0, xmm3
movsd qword [0x4ad3b0], xmm0
mov ax, word [0x4ad0d0]
mov word [0x4ad414], ax
movsd xmm0, qword [0x4ad228]
addsd xmm0, xmm3
movsd qword [0x4ad228], xmm0
movsd xmm2, qword [0x4ad228]
movsx eax, word [0x4ad100]
movss xmm0, dword [0x4ad0e0]
subsd xmm2, qword [0x49f8b8]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
subsd xmm2, qword [0x4a00e8]
subss xmm1, xmm0
cvtps2pd xmm0, xmm1
ucomisd xmm2, xmm0
movss xmm0, dword [0x4ad0e0]
addss xmm0, dword [0x49eed8]
lahf
movss dword [0x4ad0e0], xmm0
inc word [0x4ad100]
test ah, 0x44
jnp 0x413e18
movsd xmm1, qword [0x4ad068]
movss xmm0, dword [0x4ad350]
addsd xmm1, qword [0x49fb20]
cvtps2pd xmm0, xmm0
subsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [0x4ad02c], xmm0
movsd xmm0, qword [0x4ad068]
subsd xmm0, xmm3
movsd qword [0x4ad068], xmm0
mov edx, dword [ebp + 0xc]
movss xmm6, dword [0x4a0bc0]
movsd xmm7, qword [0x4a19b0]
movsd xmm2, qword [0x49f708]
movss xmm4, dword [0x4a16ec]
movss xmm5, dword [0x4a1518]
push ebx
push esi
xor esi, esi
add edx, 2
push edi
nop dword [eax + eax]
mov eax, dword [0x4ad434]
movsd xmm0, qword [0x4ad270]
sub eax, 0x31aeab94
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
cvttsd2si eax, xmm1
mov dword [0x4ad434], eax
movss xmm0, dword [0x4ad25c]
subss xmm0, xmm6
movss dword [0x4ad25c], xmm0
movss xmm0, dword [0x4ad1d0]
movzx ecx, byte [edx - 2]
movzx eax, byte [edx - 1]
cvtps2pd xmm1, xmm0
shl ecx, 8
or ecx, eax
movzx eax, byte [edx]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 8
movsd xmm0, qword [0x4ad240]
or ecx, eax
addsd xmm0, xmm1
mov dword [ebp + esi*4 - 0x134], ecx
cvtpd2ps xmm0, xmm0
movss dword [0x4ad1d0], xmm0
movsd xmm0, qword [0x4ad240]
addsd xmm0, xmm3
movsd qword [0x4ad240], xmm0
mov ax, word [0x4ad094]
movsx ecx, word [0x4ad2c8]
movsd xmm0, qword [0x4ad478]
dec word [0x4ad094]
cwde
add ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
comisd xmm1, xmm7
jbe 0x413f63
dec word [0x4ad280]
movsd xmm1, qword [0x4ad1f8]
movsx eax, word [0x4ad280]
subsd xmm1, xmm2
movd xmm0, eax
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm1
jb 0x413f63
movss xmm0, dword [0x4ad1d0]
subss xmm0, xmm4
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4ad3d8]
mulsd xmm0, xmm1
movsd qword [0x4ad3d8], xmm0
movss xmm1, dword [0x4ad190]
movsx eax, word [0x4ad054]
subss xmm1, xmm5
movd xmm0, eax
mov eax, dword [0x4ad178]
cvtdq2ps xmm0, xmm0
add eax, 0x161d0228
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
ucomiss xmm1, xmm0
lahf
dec dword [0x4ad178]
dec word [0x4ad054]
test ah, 0x44
jp 0x413fc7
mov eax, dword [0x4ad3c0]
mov ecx, 0xac205e4d
sub ecx, eax
mov eax, dword [0x4ad118]
add eax, ecx
add dword [0x4ad3cc], eax
inc dword [0x4ad3c0]
inc esi
add edx, 4
cmp esi, 0x10
jne 0x413e50
movzx eax, word [0x4ad084]
imul eax, eax, 0x8e9eb563
push pe_nt_image_headers32
push 0x8b6
mov word [0x4ad084], ax
mov eax, dword [ebp + 8]
add eax, 8
mov dword [ebp - 0x10], eax
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x34], xmm0
movups xmm0, xmmword [eax + 0x10]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x14], eax
movsx eax, word [0x4ad230]
movups xmmword [ebp - 0x24], xmm0
movsd xmm0, qword [0x4ad418]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4ad418], xmm0
inc word [0x4ad230]
call fcn.0043dd00
mov ecx, dword [0x4ad0e8]
lea ebx, [ebp - 0x134]
movss xmm0, dword [0x4ad4dc]
xor edx, edx
subss xmm0, dword [0x4a0d98]
movss xmm2, dword [0x49eed8]
add esp, 8
movd xmm1, ecx
movss xmm6, dword [0x4a2540]
movss xmm4, dword [0x4a1408]
movsd xmm5, qword [0x4a0af8]
movss xmm7, dword [0x4a13f8]
movsd xmm3, qword [0x49eee0]
cvtdq2ps xmm1, xmm1
mov dword [ebp - 8], eax
lea eax, [ebp - 0x34]
sub eax, 4
mov dword [ebp + 8], edx
sub ebx, 8
mov dword [ebp - 0xc], eax
mov dword [ebp - 4], ebx
subss xmm1, xmm0
cvttss2si ecx, xmm1
mov dword [0x4ad0e8], ecx
movss xmm0, dword [0x4ad4dc]
subss xmm0, xmm2
movss dword [0x4ad4dc], xmm0
jmp 0x4140d8
movss xmm2, dword [0x49eed8]
mov ax, word [0x4ad344]
movsd xmm1, qword [0x4ad1a0]
movsx ecx, ax
movsx eax, word [0x4ad260]
add eax, 0x966ba3dd
add eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4ad1a0], xmm1
dec word [0x4ad260]
cmp edx, 0xf
jle 0x4141e3
mov eax, dword [0x4ad3f8]
mov ecx, 0xcc88725c
movsd xmm0, qword [0x4ad130]
mov edi, dword [ebx]
mov edx, edi
rol edx, 0xf
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4ad130], xmm0
dec word [0x4ad0d0]
movsx eax, word [0x4ad0d0]
movsd xmm0, qword [0x4ad130]
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4ad130], xmm0
movss xmm0, dword [0x4ad08c]
addss xmm0, dword [0x4a0cf8]
mov esi, dword [ebx - 0x34]
mov ecx, esi
rol ecx, 0xe
movss dword [0x4ad08c], xmm0
inc word [0x4ad23c]
mov ax, word [0x4ad23c]
cwde
sub dword [0x4ad444], eax
mov eax, edi
movsd xmm0, qword [0x4ad3b8]
mulsd xmm0, qword [0x4a1c38]
rol eax, 0xd
xor edx, eax
shr edi, 0xa
mov eax, esi
xor edx, edi
ror eax, 7
xor ecx, eax
shr esi, 3
xor ecx, esi
add edx, ecx
add edx, dword [ebx - 0x38]
add edx, dword [ebx - 0x14]
mov dword [ebx + 8], edx
movsd qword [0x4ad3b8], xmm0
movsd xmm1, qword [0x4ad3e0]
movsd xmm0, qword [0x4ad2b0]
addsd xmm0, qword [0x49fb70]
subsd xmm1, xmm0
movsd qword [0x4ad3e0], xmm1
movsd xmm0, qword [0x4ad2b0]
subsd xmm0, xmm3
movsd qword [0x4ad2b0], xmm0
movss xmm1, dword [0x4ad3ac]
movsx eax, word [0x4ad100]
subss xmm1, dword [0x4a0d80]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, dword [0x4a0d58]
mulss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4ad100], ax
movss xmm0, dword [0x4ad3ac]
mov edx, dword [ebp - 0x24]
subss xmm0, xmm2
mov ecx, dword [ebp - 0x20]
mov edi, edx
xor ecx, dword [ebp - 0x1c]
mov eax, edx
rol eax, 7
and ecx, edx
xor ecx, dword [ebp - 0x1c]
ror edi, 0xb
xor edi, eax
movss dword [0x4ad3ac], xmm0
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]
mov eax, dword [0x4ad448]
movss xmm0, dword [0x4ad364]
add edi, dword [ebx + 8]
add edi, dword [ebp - 0x18]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
addss xmm0, xmm1
cvttss2si eax, xmm0
mov dword [0x4ad448], eax
mov ax, word [0x4ad100]
mov ecx, dword [0x4ad2f0]
movsd xmm0, qword [0x4ad4c8]
cwde
sub ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
addsd xmm0, xmm1
movsd qword [0x4ad4c8], xmm0
dec dword [0x4ad2f0]
add dword [ebp - 0x28], edi
add dword [0x4ad460], 0xb03177b1
mov edx, dword [ebp - 0x34]
mov esi, edx
movss xmm1, dword [0x4ad02c]
mov eax, edx
rol eax, 0xa
ror esi, 0xd
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
mov eax, dword [0x4ad348]
add ecx, esi
mov dword [ebp - 0x18], ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movsx eax, word [0x4ad188]
movsd xmm0, qword [0x4ad3f0]
sub eax, 0x3775f52
cvtps2pd xmm2, xmm1
movd xmm1, eax
cvtdq2pd xmm1, xmm1
subsd xmm1, xmm0
movsd xmm0, qword [0x4ad3f0]
addsd xmm0, xmm3
movsd qword [0x4ad3f0], xmm0
inc word [0x4ad188]
inc dword [0x4ad348]
comisd xmm2, xmm1
movss xmm0, dword [0x4ad02c]
subss xmm0, dword [0x49eed8]
movss dword [0x4ad02c], xmm0
jbe 0x4143c1
movss xmm1, dword [0x4ad0d4]
movsx eax, word [0x4ad094]
subss xmm1, xmm6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4ad094], ax
movzx eax, word [0x4ad168]
mov ecx, 0x5996a7b0
add eax, 0xcf5e69b
mov ebx, dword [ebp - 0xc]
mov word [0x4ad168], ax
mov edx, 8
mov eax, dword [0x4ad208]
sub ecx, eax
movsd xmm1, qword [0x4ad2a0]
mov eax, dword [0x4ad2a8]
add eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm1, xmm0
movsd qword [0x4ad2a0], xmm1
inc dword [0x4ad208]
dec word [0x4ad174]
mov ecx, 0x5cd1f4ff
movsx eax, word [0x4ad174]
movsd xmm0, qword [0x4ad4c8]
sub ecx, eax
mov eax, dword [ebx + edx*4]
mov dword [ebp + edx*4 - 0x34], eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4ad4c8], xmm0
movss xmm0, dword [0x4ad388]
addss xmm0, xmm4
cvttss2si eax, xmm0
mov dword [0x4ad49c], eax
sub edx, 1
jne 0x414410
movsd xmm0, qword [0x4ad048]
mov ebx, dword [ebp - 4]
ucomisd xmm5, xmm0
movsd xmm0, qword [0x4ad048]
addsd xmm0, xmm3
lahf
movsd qword [0x4ad048], xmm0
test ah, 0x44
jnp 0x4144c4
movss xmm0, dword [0x4ad10c]
addss xmm0, xmm7
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4ad2e8]
addsd xmm0, xmm1
cvttsd2si eax, xmm0
mov word [0x4ad44c], ax
movsd xmm0, qword [0x4ad2e8]
subsd xmm0, xmm3
movsd qword [0x4ad2e8], xmm0
mov eax, dword [ebp - 0x14]
add ebx, 4
movss xmm1, dword [0x4ad1d0]
mov dword [ebp - 0x34], eax
mov eax, dword [0x4ad348]
mov edx, dword [ebp + 8]
inc edx
mov dword [ebp - 4], ebx
mov dword [ebp + 8], edx
movd xmm0, eax
movsx eax, word [0x4ad174]
cvtdq2ps xmm0, xmm0
subss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm1, dword [0x4a1584]
addss xmm0, xmm1
cvttss2si eax, xmm0
mov word [0x4ad174], ax
inc dword [0x4ad348]
cmp edx, 0x40
jne 0x4140d0
movss xmm0, dword [0x4ad190]
movss xmm1, dword [0x4a0f84]
subss xmm1, xmm0
movsd xmm0, qword [0x4ad240]
push dword [ebp - 8]
push pe_nt_image_headers32
addss xmm1, dword [0x4a1148]
cvtps2pd xmm1, xmm1
mulsd xmm0, xmm1
movsd qword [0x4ad240], xmm0
movss xmm0, dword [0x4ad190]
subss xmm0, dword [0x49eed8]
movss dword [0x4ad190], xmm0
call fcn.0040f590
movsd xmm1, qword [0x4ad198]
add esp, 8
mov eax, dword [0x4ad118]
mov edx, dword [ebp - 0x10]
sub eax, 0x67cb2a89
xor ecx, ecx
pop edi
pop esi
movd xmm0, eax
cvtdq2pd xmm0, xmm0
pop ebx
subsd xmm1, xmm0
movsd qword [0x4ad198], xmm1
nop dword [eax + eax]
movsx eax, word [0x4ad21c]
movss xmm0, dword [0x4ad224]
add eax, 0x755660b0
movd xmm1, eax
mov eax, dword [ebp + ecx*4 - 0x34]
inc ecx
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
movss dword [0x4ad224], xmm0
add dword [edx], eax
add edx, 4
movss xmm0, dword [0x4ad160]
cvtps2pd xmm1, xmm0
movsd xmm0, qword [0x4ad198]
addsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss dword [0x4ad160], xmm0
cmp ecx, 8
jne 0x4145b0
mov dword [0x4ad3ac], 0x4e667f02
mov esp, ebp
pop ebp
ret