To provide a bit more depth to the answer, the only factors which affect rating change.
1) The difference in ratings between you and your opponent (using the top ratings held during thecoiurse of the game, I believe).
2) The result (win, loss, draw)
3) How established you and your opponent's ratings are (Unrated, Provisional, Established)
The theory is as follows. Players are assumed to play at a certain strength of play, although this strength cannot be determined exactly. It must be estimated by looking at past game history, and adjusting this estimate after every game.
Given 2 players and their ratings, there is a formula for expected result, with a value from 0 to 1. This formula is based entirely on difference in ratings.
Rating adjustments are made by comparing the actual result to the expected result and shifting the ratings to reflect this new data, from the underachiever to the overachiever. Past game history doesn't directly affect this shift, save for accounting for new and provisional players.
This makes the process simpler by eliminating extraneous information from consideration, as well as allowing easier adjustments for those cases when a player may genuinely have grown stronger in their play (say after a week long intensive chess class from which they gains a lot of insight).
Established players don't tend to shift their level of play as significantly as provisional players, however, so the most their score will adjust will be 32 points, whereas provisional and especially unrated players allow for much higher shifts, because the system lacks enough data to firmly and reliably establish their level of play.