This is a website we download the correct me one.
And if you can recall the two objectives.
The first objective we have already accomplished we have found this hero key and ended it in a nice
box.
Now we are going to go for the second objective which is to bash the FA to always show the Congress
message and the button check is great.
So what it means is for this great me whenever we click on the checkbox it doesn't matter what every
key it has to show the Congress message.
That is the objective.
So we are going to learn how to bash it in this lesson.
Let's get started.
So let's open this uh crime maybe for excessive for BBG
and disgruntled entry point in the entry point.
Now if you have not already done so put a breakpoint point on the string that shows the bent her message
rightly search for current you string references and go to these
message string wrong zero key and here he said putting a breakpoint here put a brake point up here.
This is a junk which decides whether or not to show the Congress message or to jump down and show the
bad message.
So what we want is to have issued a good message.
It means we won this message was to always run instead of this message box.
So obviously we have to bash this gem.
So let's put a brake point here and restart the program.
And run to the right point.
TIME Any anything you want to check in.
It is now past at a break point.
So now this is I mean this.
So if you don't want it to jump down here we have to reverse the zero flight so at a moment if you examine
this it is the arrow key the arrow is red and also indicates down here that it is going to jam.
Jam is taken.
So if we do under jam we just have a dog load as your fly and color goes.
Great.
And then jump is also not taken as indicated here.
So let's try it and see what happens.
Let's press F it and see whether or not the uh Congress message is shown.
Let's press F it.
So he is pushing.
He has pushed you through this thing.
Now he is pushing this and these and these barometers to this day as you can see and I was going to
put a large perimeter This takes all four parameters are pushed to this day one two three four.
And now it is going to call the message box are supposed to call the message box this stridency every
woops nothing happened.
It did not call the message box.
Something random.
So what do you think went wrong.
What duty think been right.
Let's examine this and try to find out the reason why he failed.
So let's we start this
key in the wrong key check.
Now we have to we are back here so to to find out what went wrong.
We are going to repeat what we did just now.
At this point this push zero has already been pushed onto this day.
So it is I mean these this push Zero has been pushed to this day now.
They are going to jam Oh we're not going to jam.
So we have to reverse this.
So we reversed the zero flight.
They're now going to jam press F it.
So we are going to push this next perimeter to this thing that that perimeter which is this Congress
so let's press f it at the moment only this has been pushed it is taken zero.
Now we're going to push this nice ish to this day.
This uh caption press F it.
So Congress is pushing this day.
Now we're going to push we are done to this thing which is is what well done.
Push to this day.
So this press every and done has been pushed to this day and now next we're going to push E X to this
day so he is supposed to be this one
but he said he would use it.
He pushed something else.
It is they is going to push yes.
Which is this value a set of zero is pushing it used to this thing.
Let's take a look at it and pushing this f f f to the state.
Now ever have is not zero obviously f f f is negative one negative 1 is something else.
So according to our analysis is supposed to push zero to the state because there is no parent window.
But instead you push something that a state negative one telling that it has a parent windows know something
has gone wrong.
So in order to fix this we have to push zero to this thing we need to push is E has to be zero not f
f f OK so how do we fix that.
All right so there are two things to fix here.
The first thing they face is this we have to make it not jam.
So to make this turn jam we have to assemble.
No.
Up and would be suitable cleanest and here.
But no no instruction.
So now to check whether the buy is enough or not click keep size.
We see it is smaller by one by.
So no users only one by whereas jam uses to base one buy here two buys.
So you have one spend by seriously.
This feeling is removed is OK and easy to buy says we basically do not find the closest.
Now we have faced a pathway and I suppose we jump.
So he supposed to go here here here but how do we fix the spot where he is supposed to be zero instead
of FFA.
OK.
So notice now you have two spare bikes to use to fix the value of X..
So we can use one of the spare vise here and assembly as a movie instruction.
So let's take a look at this.
And now we are going to move.
We are going to move to x value zero all right.
But we have a problem.
Why we only have two base.
If you click this it give size.
Notice that this instruction is a big over for base.
We only have to base.
We do not have four base.
This movie X requires four base.
So if you were to take if you remove this anklet.
Okay.
You will overwrite this too.
Eddie how the instructions down here which is bad.
So we have to modify this instruction.
So what we do is instead of move 0 2 x they move 0 2 Hey l l like that.
And then he size says fine recession bigger by 1.
OK so that's OK.
So we hope we will be using to base C because here we have to buy.
So there's no problem we say keep size.
Meaning that we only 1 one by.
But he is telling us this is this and that I stand by.
So we can use the next but below it to base.
So that's fine.
So once I mean you know l and what's the difference between L and yes.
So this is a difference.
And this is only the last two bits here l Yes.
Haskell.
All the bits used to.
All right.
So what we need is only just to this by here total you have one by two by three bytes for Vice a hell
uses only the modem and all right.
So it is a X he uses only two bytes one two is L. he uses only one by so this and that's why we use
here.
We trying to save space so a little.
Okay.
All right let's analyze this further.
What I just mentioned was this.
You have.
Yes.
We have a l so e s uses up four bytes
but here
l uses only one byte now here.
So it's enough so we can assemble this and then we only need the lowest basically.
OK.
And there done we've done it.
You move 0 2 L.
So now we can best use by clicking far far Quick fetch.
Having given a new name by appending patch me high please save.
OK now we can test the patch first he closes before we test a patch we close this program and we go
here bash my this.
Now we can test it.
Bash that we have created
yes enter anything
we check shows you are done so that's all for today for this video and uh in this video we have learned
how to bash any program so as to keep showing the congratulations message box no matter what we mean.
So thank you for watching.