Reverse Engineering for Beginners
CHAPTER 42. STRING TO NUMBER CONVERSION (ATOI()) CHAPTER 42. STRING TO NUMBER CONVERSION (ATOI()) If the “minus” sign was encoun ...
CHAPTER 42. STRING TO NUMBER CONVERSION (ATOI()) CHAPTER 42. STRING TO NUMBER CONVERSION (ATOI()) 42.3 Exercise Oh, by the way, ...
CHAPTER 43. INLINE FUNCTIONS CHAPTER 43. INLINE FUNCTIONS Chapter 43 Inline functions Inlined code is when the compiler, instead ...
CHAPTER 43. INLINE FUNCTIONS CHAPTER 43. INLINE FUNCTIONS 43.1 Strings and memory functions Another very common automatic optimi ...
CHAPTER 43. INLINE FUNCTIONS CHAPTER 43. INLINE FUNCTIONS $SG3456 DB 'false', 00H _s$ = 8 ; size = 4 ?is_bool@@YA_NPAD@Z PROC ; ...
CHAPTER 43. INLINE FUNCTIONS CHAPTER 43. INLINE FUNCTIONS push OFFSET $SG3458 push OFFSET $SG3459 call DWORD PTR __imp___wassert ...
CHAPTER 43. INLINE FUNCTIONS CHAPTER 43. INLINE FUNCTIONS Listing 43.10: 32 bytes include <stdio.h> void f(char *out) { me ...
CHAPTER 43. INLINE FUNCTIONS CHAPTER 43. INLINE FUNCTIONS 43.1.5 memcpy(). Short blocks The routine to copy short blocks is ofte ...
CHAPTER 43. INLINE FUNCTIONS CHAPTER 43. INLINE FUNCTIONS _outbuf$ = 12 ; size = 4 _memcpy_128 PROC push esi mov esi, DWORD PTR ...
CHAPTER 43. INLINE FUNCTIONS CHAPTER 43. INLINE FUNCTIONS .L24: movzx eax, BYTE PTR [esi] lea edi, [edx+11] add esi, 1 test edi, ...
CHAPTER 43. INLINE FUNCTIONS CHAPTER 43. INLINE FUNCTIONS movzx eax, BYTE PTR [edx+3] movzx ecx, BYTE PTR [ecx+3] sub eax, ecx $ ...
CHAPTER 44. C99 RESTRICT CHAPTER 44. C99 RESTRICT Chapter 44 C99 restrict Here is a reason why FORTRAN programs, in some cases, ...
CHAPTER 44. C99 RESTRICT CHAPTER 44. C99 RESTRICT Listing 44.1: GCC x64: f1() f1: push r15 r14 r13 r12 rbp rdi rsi rbx mov r13, ...
CHAPTER 44. C99 RESTRICT CHAPTER 44. C99 RESTRICT jne .L11 .L7: pop rbx rsi rdi rbp r12 r13 ret The difference between the compi ...
CHAPTER 45. BRANCHLESS ABS() FUNCTION CHAPTER 45. BRANCHLESS ABS() FUNCTION Chapter 45 Branchless abs() function Let’s revisit a ...
CHAPTER 45. BRANCHLESS ABS() FUNCTION CHAPTER 45. BRANCHLESS ABS() FUNCTION 45.2 Optimizing GCC 4.9 ARM64 GCC 4.9 for ARM64 gene ...
CHAPTER 46. VARIADIC FUNCTIONS CHAPTER 46. VARIADIC FUNCTIONS Chapter 46 Variadic functions Functions likeprintf()andscanf()can ...
CHAPTER 46. VARIADIC FUNCTIONS CHAPTER 46. VARIADIC FUNCTIONS _arith_mean PROC NEAR mov eax, DWORD PTR _v$[esp-4] ; load 1st arg ...
CHAPTER 46. VARIADIC FUNCTIONS CHAPTER 46. VARIADIC FUNCTIONS mov edx, DWORD PTR [rcx] ; load 2nd argument mov r8d, 1 ; count=1 ...
CHAPTER 46. VARIADIC FUNCTIONS CHAPTER 46. VARIADIC FUNCTIONS add r8d, 1 .L5: ; decide, which part we will work out now. ; is cu ...
«
21
22
23
24
25
26
27
28
29
30
»
Free download pdf