Reverse Engineering for Beginners
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS The third conditional jump,JNB: Figure 12.3:OllyDbg:f_unsigned(): th ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS Now let’s review thef_signed()function, which works with signed valu ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS The secondJNZconditional jump triggering: if ZF=0 (zero flag): Figur ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS The third conditional jumpJGEwill not trigger because it would only ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS x86 + MSVC + Hiew We can try to patch the executable file in a way t ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS Here is the modified code: Figure 12.8:Hiew: let’s modify thef_unsig ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS jmp puts We also seeJMP putshere instead ofCALL puts / RETN. This ki ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS .text:000000E0 70 80 BD A8 LDMGEFD SP!, {R4-R6,PC} .text:000000E4 70 ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS .text:00000074 0C 00 MOVS R4, R1 .text:00000076 05 00 MOVS R5, R0 .t ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS ldr x19, [sp,16] ldp x29, x30, [sp], 48 ret .L27: ldr x19, [sp,16] a ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS ; this is pseudoinstruction. in fact, "slt $v0,$v0,$v1" is there. ; ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS .text:000000E0 .text:000000E0 var_10 = -0x10 .text:000000E0 var_8 = ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS 12.2 Calculating absolute value. A simple function: int my_abs (int ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS 12.2.4 Non-optimizing GCC 4.9 (ARM64) ARM64 has instruction NEG for ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS 12.3.1 x86 Old and non-optimizing compilers generate assembly code j ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS 12.3.2 ARM. Optimizing Keil for ARM mode also uses the conditional i ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS 12.3.4 MIPS. Unfortunately, GCC 4.4.5 for MIPS is not very smart, ei ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS 12.4 Getting minimal and maximal values. 12.4.1 32-bit. int my_max(i ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS There is one unneededJMPinstruction in each function, which MSVC pro ...
CHAPTER 12. CONDITIONAL JUMPS CHAPTER 12. CONDITIONAL JUMPS my_max: mov edx, DWORD PTR [esp+4] mov eax, DWORD PTR [esp+8] ; EDX= ...
«
3
4
5
6
7
8
9
10
11
12
»
Free download pdf