Try this:
_hasher.Expect(h => h.ComputeHash(Arg<object>.Is.Anything)).Return("some hash")
.WhenCalled(x =>
{
dynamic actual = x.Arguments[0];
Assert.AreEqual("123", actual.PropertyA);
});
It's a bit of a hack, certainly, but it works, and it gives you useful messages when the tests fail.