title: Can you help with this assembly language code?
body: <p>I've been looking through a piece of code of a pc game that I'm trying to "improve". (ok so maybe I suck at the game but I still want to play it). Could you please look into the following code:</p>
  
  <pre><code>fld dword ptr[ebp+00007B1C]
  fsub dword ptr[esp+64]
  fst dword ptr[ebp+00007B1C]
  call 004A2E48
  </code></pre>
  
  <p>This code is called every second for the level countdown timer. I need to stay on a particular level for a few minutes. If I can modify the above code so that the value pushed into the address [ebp+00007B1C] is 0 then the game level will always time out and it will save me playing those crazy "survival" minigames.</p>
  
  <p>I'll explain what I understand from this code. <strong>Dont worry, you dont have to go deep into this.</strong>
  In the <strong>first line</strong> we get the timer value. For example if 97 seconds are remaining then it is here that this value is loaded.<br>
  In the <strong>second line</strong> a value (1 second) is subtracted from 97.<br>
  In the <strong>third line</strong> 96 is again moved to memory.
  And finally we have the function call that will do other processing based on the time remaining.</p>
  
  <p>Now all I need to do is patch this piece of code somehow so that the value that is pushed is 0 (in the third step).<br>
  Can you please help me out with this?</p>