Davies-Meyer Hash Function
The function $e$ takes two values: $x$ and $H$, and then merges them in a specific way. Your "way" is just XORing them. That's insecure, as you can see. Normally you use a block cipher for the function, like AES-128 for an input of 128 bit.

Example: $$ H_i = H_{i-1} \oplus AES_{xi}(H_{i-1}) $$