I believe the code:
Code:
crossed -= sign(crossed);


is the same as:
Code:
crossed = crossed - sign(crossed);


and the function sign() returns -1, 0 or 1 (per manual)

does that help?
For what its worth, I'm also studying this strategy at the moment (HTC).