
Reverse Engineering for Beginners : More about strings
1.23.1 strlen() Let us talk about loops again. Very often, the strlen() function is implemented using a while() statement. If you do not know what strlen() does, it simply walks character by ...

1.23.1 strlen() Let us talk about loops again. Very often, the strlen() function is implemented using a while() statement. If you do not know what strlen() does, it simply walks character by ...

1.22.3 When there are several case statements in one block This is a very popular construct: several case statements for the same block: C Copy ...

1.22.1 Small number of cases C Copy #include <stdio.h> // include standard I/O header void f (int a) // define function f taking i...

1.21 Loops x86 The author began this section by saying that there is a special instruction called LOOP in the x86 instruction set. This instruction checks the value in the ECX register; if it...

1.19 Software cracking The author said at the beginning that the vast majority of programs can be cracked in this way That you search for the place where the protection is checked, Whether d...

1.18.3 Ternary conditional operator The ternary conditional operator in C/C++ has this syntax: C Copy expression ? expression : expressi...

1.18 Conditional jumps 1.18.1 Simple example C Copy #include <stdio.h> // include the standard I/O header; this directive includes t...

1.17 GOTO operator Let's first understand what GOTO is in C quickly It simply jumps to a specific place in the code without any condition or comparison or anything The author started saying ...

1.16 Pointers A quick reminder of what Pointers are: it is a variable that stores an address in memory (Memory Address) Not the value itself 1.16.1 Returning values Pointers are often used t...

1.15 More about results returning The author said that in x86, the result of function execution is usually returned in the EAX register. If the type is byte or char, the lower part of the EAX ...