Welcome back.
In this video, we show you how to analyze the binary, so you click on this to open the C1 binary and
you show you the browser, go to the functions for the military and scroll down and never click on the.
So now you can drink this anglicised so that we can have a better view and you can see from here that
this is the mean signature for the main function of a C program.
I mean, anywhere except to carry this oxy, and that would be me, just refresh your memory.
Well, see program, this is how I mean, it looks like the first barometer he's oxy.
Oxy means how many parameters are they?
For example, if you were to run this program.
You can click on the map here from the window, say, initially open.
So when we run this program, they see one.
There are two arguments.
This one is for argument and parameter is the second argument.
So access to that is the meaning of oxy.
The second parameter is this string so that the EU contains a list of the arguments.
So in this case, example here, the first argument is the name of the binary, which is Alvie zero
and the second parameter name of the first parameter to the argument to the binary cell.
So if you were to use these people just now, Hoxsey nanva.
V0 will be see one Hungwe one would be tree to tree to tree.
OK.
So this is how it works.
So over here, you can see that the signature is wrong.
It's supposed to be like this, so we have to change it.
Just click on this edit function signature and you can change the signature that actually.
To see how you come.
And for the second one, we will change it to.
Char.
Out the.
So the two stars they missed and this is an array of strings to correspond to this, so these two are
equal and you can use the square bracket in the in here.
So we need to put to stock here.
So a nice guy he didn't to clock and you can see now he's coming and going over here, so you notice
some other changes that reflect this thing.
Now, if I do this, you can do it by Control Z.
You can also undo here and redo here.
So before I rename the signature, he was like, this hardly makes no sense when I mean, he added the
signature to become the correct means preventing each of these things make sense.
So you can see here the program here is comparing where they are to arguments.
Right, if there are two arguments, then you enter the loop, enter the block here in the first thing
and you to get the length, get the length of the password.
This is a password that it is looking for.
So we know that it is linked.
So we rename it correctly.
We numerable to Shaherkani Elche.
Maybe I can remember something.
So now it's easier to read then today, once he's got the line, he's going to do a string and compare.
Strong and compact, so if you don't know what this means, you can always refer to the Gitanes point,
a search.
String compay.
And you can click on the first rizza and you can read all about it and compare compares to swing swing
on a swing to get up to the number of characters.
So if you specify three characters, you to compare three characters here.
And here is an example.
So in this case, you have to string a string when it's trying to string one is lowercase A, B, C,
D, E, F, string two is a case.
So when you call string and compare is comparing the first four characters, string one, extreme two.
So it is comparing A, B, C, D from here with A, B, C, D from here and returning the result even
to the two strings matches, he will return zero as a result.
So zero means the strings are identical.
If the streets are not the same, either return less than zero, I'll be gone in zero.
So this is how Street and Compare works now applying this knowledge to and then it is the street and
convey here is comparing the user input, how everyone feels that way and is comparing for the length.
So the line of this person is provided by Swingline.
So the line should be one, two, three, four, five, six, seven, eight, nine, nine to nine.
So you regret the first nine character of your input.
How P1 and comparing it to nine characters from Hecate.
You if they're identical, then the result will be zero.
So we know that is the result of the extreme compay we can reliably by clicking and we need.
Maybe you can call it a.
Should it be easier to read and if there is zero, there is a user that they cannot possibly and so
you would be incorrect, that password.
Was this the whole time?
All right, this is a format specified in C language, so whenever you see percentages, he means that
he will substitute this variable inside here and print the original parts of it in here.
So let's try it out now so we know the password must be this.
So let's go to our terminal, Insana.
So now we're going into this massive Hecate you.
Hey, uh, did you hit enter and he correct that was you this whole time, so this string is coming
from here and.
Yes, he's coming from here.
So this percentage has seized the passport itself, which is how we won.
We ended up here, so we won and we won.
His argument to the binary how V0 is the name of the binary.
So if you had two parameters, then the second argument would be at we to be zero.
I'll be one.
How we do this is how the second barometer works, right?
So now we saw Quami One and this is basically the technical analysis, Hindiya.
We will try to analyze the computer code and rename the labels until it makes sense.
So in our view, it's almost like the original lead compact of the original C program itself and is
much easier to read than the assembly version.
And so that's all for this video.
Before you close on C, on C, Sehar.
OK, so when you close this in reopening in all you relabel items are still the.
We have not lost it, so if you go back to the functions main and reopen me, you will see that the
reading labels are intact.
Right.
So this one has you in the next one.
Thank you for watching.