Hello guys,
I have a problem with game crash. I'm trying to make unlimited ammo for Black Mesa game. From the beginning everything worked fine, but when I get in to some point in the game where turret starts to fire at NPC, the game will crash. For "frezzing" ammo value I just added // (command) before mov action, but as I see, that's not the right way how to do it. Any ideas? O.o

Look at "server.dll+FBC1F", it will totally jump into the middle of the place where you inject and instead of popping the 3 registers do something random, because the last 3 bytes of your jump instruction are there.

So as you can see that jump instruction already does, what you intended to do, it skips the mov [esi],ebx line. Use that and just change the jump byte at "server.dll+FBC1F" from 74=je to eb=jmp. These one-byte changes are my favorites

To be honest, I'm little bit lost in your explanation. I kinda see what are you pointing at, but I'm not sure why should I change something in ORIGINAL CODE under [DISABLE]. I'm certainly sure, that I misunderstood you. How the code will look like after your suggestion? Maybe I will understand it more, if you will fix it in my code and show me what you have in mind...