Helping others with the expectation that they will help you in return.
This explains cooperation between non-relatives. It requires memory (to remember who helped) and the ability to punish "cheaters" (who take but don't give back).
Evolutionary
Reciprocal Altruism
I scratch your back, you scratch mine