WEBVTT

1
00:01.580 --> 00:03.110
Hello and welcome back.

2
00:03.110 --> 00:07.160
In this lesson, we will take a look at the NOT instruction.

3
00:07.850 --> 00:12.350
So we are going to move this value into -, and then NOT -.

4
00:13.670 --> 00:17.960
So I've opened my template 2x in x64dbg.

5
00:18.620 --> 00:23.930
So let's go to the input and key in these instructions.

6
00:24.950 --> 00:26.690
MOV -.

7
00:32.370 --> 00:33.420
Okay.

8
00:34.560 --> 00:36.780
Next is NOT -.

9
00:40.100 --> 00:40.310
Hit

10
00:40.310 --> 00:41.000
okay.

11
00:41.930 --> 00:44.150
Notice it has converted it into AA.

12
00:44.510 --> 00:48.410
Let's open our programmer's calculator and check.

13
00:50.570 --> 01:00.500
Select hex and byte here, and key in AA, and we confirm it is correct.

14
01:01.520 --> 01:02.630
Same as this.

15
01:03.110 --> 01:05.300
Now let's put a breakpoint here.

16
01:05.570 --> 01:09.140
Run to the breakpoint and then step over.

17
01:10.940 --> 01:15.230
Next is NOT -. Step over this as well.

18
01:15.230 --> 01:19.370
And you notice this result is now AA, right?

19
01:20.150 --> 01:24.380
Even though we get 55 at the previous step.

20
01:24.380 --> 01:27.200
And let us check what gives us 55 here.

21
01:29.030 --> 01:31.970
We just NOT this and see what we get.

22
01:34.790 --> 01:36.530
And you get hex 55.

23
01:36.800 --> 01:38.210
So it is correct.

24
01:38.210 --> 01:42.140
So this is how we can use NOT in the assembly.

25
01:42.140 --> 01:43.610
That's all for this video.

26
01:43.610 --> 01:44.870
Thank you for watching.