The old links didn't point to valid locations.
Replace the old links with the new links and test those changes with a
small script: https://github.com/initBasti/markdown_link_check .
______________________________________________________________
In order to find and replace the links, I used the following commands:
grep -rwohP '.' -e "\(https\:\/\/0xax.gitbooks.io\/\S*\)" > links.txt
(Find all links recursivly in the project directories and print out the
only the matches links)
Within links.txt:
Remove the '(' & ')' => :%s/\(//g and :%s/\)//g
Remove duplicates => :sort u
Test if the links work with:
python3 md_link_check.py --pattern 0xax.gitbook --output-file bad.txt
(https://github.com/initBasti/markdown_link_check)
Create replace commands:
:%s/.*/grep -rl & '.' | xargs sed -i 's#&##g'
Enter replacement URL between the 2nd & 3rd '#'
Execute commands: :w !sh
Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
I may be misunderstanding the original meaning of the line, however "after the factorial function" seems to mean it would be "offset after the factorial function" (i.e. `0x400537 + 0x18`) but in reality you mean offset after the call function to get to the factorial function (`0x40051a + 0x5 + 0x18`). Very minor edit but may help for clarity. Thanks for creating such an awesome project.
* Added dots around envp and argv since those are arrays of pointers.
While argc and NULL are just 8B, argv and envp are of variable size,
usually more than 8B. The dots visualize this.
* In the first image, moved rsp to point to argc. This is the initial
stack and register layout at the beginning of _start. Only after libc
popped the top of the stack into rsi, rsp will point to beginning of
argv. (*)
(*)
I verified this by writing my own _start implementation:
039ac7c03c/start.asm (L61)