March 29th, 2013, 07:24 PM
Timer freezer code injection assembly
hi, first post here. Ihave some very weak basis of assembly (had some classes on electronics) but to me is as much as 0. So if you feel this is just something i shoudnt get myself into let me know lol.
I was trying to freeze the timer on an old ROM (an arcade fighting game) and with a mem locator i could easely find the adress and set its value, problem was when i restart the game theses adresses have changed therefore doesnt work.
So it came down to code injectio or keep doing it over and over again, and i though... well this might be the beggining of some programming knowledge. Again if you feel this is not as plain as it might sound let me know.
k, found the non static adress and looked for its assembly line it stated.
mov (ecx+eax), dl
ecx is fixed (0000108) but eax has no static adress so i looked to where it wrote to in the assembly line.
so i get that eax has a value of esi+(eax*4)+300020 and this line should refer to a number like 98 on the timer if i make this loop it should loop on the 98 timer value....
- mov [ecx+eax],dl
- pop esi
Am i reading this right ?
I could use some tips on how to solve this challenge lol...
I think that what i want to do is make a code so that makes him jump to the adress where the 99 value for the timer is set each time he gets below that number.
something like: Set A, 99 ; max timer value
IFG A, 99 ; A<99 A=99
and someway push that into the existing code...