| skipped 1 lines |
2 | 2 | | // Created in preparation for OSED |
3 | 3 | | // William Moody, 06.06.2021 |
4 | 4 | | |
5 | | - | // Compile and run: |
6 | | - | // gcc main.c -o main.exe -l ws2_32; .\main.exe |
| 5 | + | // Compile (DEP, ASLR enabled): |
| 6 | + | // gcc main.c -o main.exe -l ws2_32 '-Wl,--nxcompat,--dynamicbase,--export-all-symbols' |
7 | 7 | | |
8 | 8 | | #include <stdio.h> |
9 | 9 | | #include <stdlib.h> |
| skipped 49 lines |
59 | 59 | | { |
60 | 60 | | printf("Usage: %s [-p PORT] [-h]\n", prog_name); |
61 | 61 | | exit(1); |
| 62 | + | } |
| 63 | + | |
| 64 | + | /** |
| 65 | + | * A mysterious function which never gets called... |
| 66 | + | */ |
| 67 | + | void foo() |
| 68 | + | { |
| 69 | + | asm ( |
| 70 | + | "inc %eax\n" |
| 71 | + | "inc %ebx\n" |
| 72 | + | "inc %ecx\n" |
| 73 | + | "ret" |
| 74 | + | ); |
62 | 75 | | } |
63 | 76 | | |
64 | 77 | | /** |
| skipped 331 lines |