Welcome back.
Now we are going to kill,
we're going to kill the third nag.
This nag here, we are going to kill this one.
So remove this one and rename your second patch back to the original file name.
Make a copy first and then rename it back to the original file name.
So now let's reload,
get back our database and make sure you click Debug, Advanced, Hide Debugger.
And then you run.
Here's our main screen.
So now we're going to search for this nag, this one.
So we do another string search.
Search For, Current Module, String References and look for "further" or the string phrase someone and you
got two hits.
So you click on the first one and this is our first hit.
And I scroll up and I put a comment here to indicate this is the start of the function for the third nag.
Now we want to know who called this third nag.
So we right-click this and then Find References to This Address.
And we find that this is the caller.
So we double-click this.
And yes, here.
All right.
This,
this is the caller for the third nag.
And then you can see there's a jump.
That means we can actually bypass this call for the nag.
Now an easier way to do it is to instead of bypassing it, we just jump straight to the exit function
that will terminate the program.
So how do we do that?
We look for an exit function in this program, but I put a comment there to mark the spot so that I
will come back here later and assemble the jump to the exit function that will bypass the nag and also
exit the program.
So let's do an intermodular call to search for the exit function that we can use.
Right-click here.
Search For, Search For, Current Module, Intermodular Call and then filter exit.
And we have an exit function here.
Double-click on that and copy this address.
This exit function that we can use, right-click, Copy Address.
And then your address will be different from mine.
So just follow what you see for your case.
Now we go back to our comment where we mark the spot.
And now we are going to assemble a jump to the exit function.
So press spacebar and then delete all this address and paste your exit function there.
Right-click, copy and paste your exit function there.
If you click on Keep Size, it will be bigger by four bytes, but that is OK.
So uncheck this.
It doesn't matter if it's bigger by four bytes.
Let it override all this because we don't care.
We're not going to use this.
We are going to jump straight to the exit function in order to bypass this, as well as to exit the
program in one go.
Killing two birds with one stone.
So we close this.
Now we already assembled the, click
OK.
To assemble it.
Sorry.
Um, I think we did a mistake.
It should be jump.
That means it should be JMP, not J-.
Sorry.
It should be JMP like that.
All right.
Click OK.
OK, so we have done that.
So now we can patch.
And click Patch and we'll call it Revamped Three.
Dash three.
Click Save.
OK.
And now we can close everything.
Make sure the Process Hacker is running.
And then we'll go back and we will run our program, patch three.
And you can see it's running.
Patch three is running and wait for main window to show.
In a few seconds, you should be able to see the main window and that's your main window. When you click
OK, look what happens.
The program quits and the third nag is not shown.
So we have successfully killed all the three nags and also successfully quit the program when you close
it.
So let's try again.
Make sure it works. OK.
Patch is running.
Patch two, patch two is running.
After a few seconds, you should be able to see your main window.
There you go.
Your main window.
When you click OK, it should, it should quit the program.
And true enough, you can see the program quits instead of showing your nag three.
So with that, we have successfully completed this project.
Thank you for watching.