Skip to content

Commit 55822c9

Browse files
committed
updated
1 parent 4b5d089 commit 55822c9

File tree

2 files changed

+58
-0
lines changed

2 files changed

+58
-0
lines changed
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
layout: post
3+
title: Getting Started with Assembler for Reverse Engineering
4+
date: 2024-02-28
5+
categories: [reverse-engineering, assembler]
6+
tags: [reference]
7+
---
8+
9+
Mostly notes for my self, but this is one thing I am interested in learning about. Thanks to my friend M who gave me alot of these links!
10+
11+
12+
[0xinfectionl - Reverse Engineering for Everyone](https://0xinfection.github.io/reversing/) - x86, ARM-32, x64, ARM-64, Pico Hacking
13+
14+
[Cool tool](https://defuse.ca/online-x86-assembler.htm#disassembly) to paste in some assembler and convert from mnomics to binary and vice versa
15+
16+
[Microcorruption Game](https://microcorruption.com/) - haven't played alot, but could be fun.
17+
18+
[Intel® 64 and IA-32 Architectures Software Developer’s Manual Combined Volumes: 1, 2A, 2B, 2C, 2D, 3A, 3B, 3C, 3D, and 4](https://www.intel.com/content/www/us/en/content-details/782158/intel-64-and-ia-32-architectures-software-developer-s-manual-combined-volumes-1-2a-2b-2c-2d-3a-3b-3c-3d-and-4.html?wapkw=intel%2064%20and%20ia-32%20architectures%20software%20developer%27s%20manual&docid=782158)
19+
20+
[Exercises in Reverse Engineering](https://challenges.re/) - something to get started on
21+
22+
Tools to get familiar with:
23+
* [Ghidra](https://ghidra-sre.org/)
24+
* [Ida FREE](https://hex-rays.com/ida-free/)
25+
* [Radare2](https://github.com/radareorg/radare2)
26+
* [GNU Dbg](https://www.sourceware.org/gdb/)
27+
28+
29+
## Syntax Styles
30+
31+
### Intel Syntax
32+
33+
* first operand is the `destination`, and the second operand is the `source`
34+
* No prefix on registers or immediates
35+
* Immedates are suffixed with 'h' and 'b'
36+
* If the first hexadecimal digit is a letter then the value is prefixed by a '0'.
37+
* Base registers use [ ]
38+
39+
```
40+
addl eax, [ebx]
41+
mov eax,1
42+
43+
```
44+
45+
### AT&T Syntax
46+
47+
* Registers prefixed with `%`
48+
* Immediates prefixed with `$`, hex is prefixed with 0x
49+
* First operand is the `source`, and the second operand is the `destination`
50+
* Base registers use ( )
51+
52+
```
53+
addl (%ebx), %eax
54+
movl $1,%eax
55+
```
56+
57+
More [details here](https://imada.sdu.dk/u/kslarsen/dm546/Material/IntelnATT.htm)
58+

_posts/images/basb.jpg

-26.6 KB
Binary file not shown.

0 commit comments

Comments
 (0)