デバッガーで覗いてみたところ、なぜかtimeGetTime関数を呼ぶと値が変わってしまうようです。
よくわからないので、その部分だけ値を入れなおすようにしました。