Int32.MaxValueの値を2進数で表すと
0111111(中略)1111111
この先頭の0は符号ビットといって、0なら正の数、1なら負の数を表すことになっている。
TickCountのカウントは符号を考慮しないので、ここからカウンタが1だけ増えると
1000000(中略)0000000
となる。これを符号付き整数として解釈するので、結果が負の値になってしまう。
これは不便だからInt32.MaxValueとのANDをとっている。Int32.MaxValueは符号ビット以外全部1だから、符号ビットが無視されて
0000000(中略)0000000
になってくれる。