では、特定のイベントを発生させるためにプログラムの逆アセンブリを見てみましょう。
ではloc_401040はどういうコードかというと
こんな感じです。赤色で示されたmov esi, [ebp+arg_0]によってloc_401040にジャンプする前にpushされたeaxがesiに代入されています。さらに前のlea eax [ebp+SystemTime]からSystemTime構造体を指すアドレスがesiとなります。
その後にcmp word ptr [esi], 7DChとかあるので、0x7DC = 2012から考えると
年、月、日、時、分、秒という順に比較されていることが分かります。
つまりこれらの比較条件に合うように[esi+?]の値を操作してあげればイベントが発生します。
なのでこの時刻がキーではないかと思います。
ちなみにイベントはただ時刻をお知らせするメッセージボックスが表れるだけでした。
0 件のコメント:
コメントを投稿