diff options
author | Emile <git@emile.space> | 2024-08-16 19:50:26 +0200 |
---|---|---|
committer | Emile <git@emile.space> | 2024-08-16 19:50:26 +0200 |
commit | 1a57267a17c2fc17fb6e104846fabc3e363c326c (patch) | |
tree | 1e574e3a80622086dc3c81ff9cba65ef7049b1a9 /templates/index.html |
initial commit
Diffstat (limited to 'templates/index.html')
-rw-r--r-- | templates/index.html | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/templates/index.html b/templates/index.html new file mode 100644 index 0000000..9184a9c --- /dev/null +++ b/templates/index.html @@ -0,0 +1,68 @@ +{{ define "index" }} + +{{ template "head" . }} +<body> + {{ template "nav" . }} + {{ if .logged_in }}{{ else }} + {{ end }} + + <span id="r2wars"></span> + <h1><a href="#r2wars">r2wa.rs</a></h1> + + {{ if .err }} + <div class="error">{{ .err }}</div> + {{ end }} + + + This is the r2wars web platform. Here, you can manage your bots and let them + "fight" (be executed) in the same memory space as others. + + Under the hood, the <a href="https://radare.org/n/">radare2</a> <a href="https://book.rada.re/emulation/intro.html">ESIL Emulation</a> is used to allow all fun combinations! + + <span id="r2wars"></span> + <h2><a href="#r2wars">What is it and how does it work?</a></h2> + + Essentially + <br><br> + + <pre class="code"> + ; r2 malloc://1024 # allocate 1KB of memory + [0x00000000]> e asm.arch = x86 # define the arch to use + [0x00000000]> e asm.bits = 32 # define the bits to use + [0x00000000]> aei # init vm + [0x00000000]> aeim # init staack + [0x00000000]> waf bot.asm # write bot to memory + [0x00000000]> aer PC = 0x100 # set program counter + [0x00000000]> aer SP = SP + 0x100 # set stack pointer + [0x00000000]> e cmd.esil.todo=f theend=1 # define end condition + [0x00000000]> e cmd.esil.trap=f theend=1 # define end condition + [0x00000000]> e cmd.esil.intr=f theend=1 # define end condition + [0x00000000]> e cmd.esil.ioer=f theend=1 # define end condition + [0x00000000]> f theend=0 # set the end flag to 0 + [0x00000000]> aes # step + [0x00000000]> ?v 1+theend # check if the end cond. is met + .. # in a loop + [0x00000000]> aes # step + [0x00000000]> ?v 1+theend # check if the end cond. is met + </pre> + + <br> + More info in the following blogpost: <a href="https://emile.space/blog/2020/r2wars/">https://emile.space/blog/2020/r2wars/</a> + <br> + <br> + + <pre> +╭──╮ ╭──────────────────────╮ +│ _│_ │ │ +│ O O < LET THE GAMES BEGIN! │ +│ │╷ │ │ +│ ││ ╰──────────────────────╯ +│ ─╯│ +╰───╯ + </pre> + + + +</body> +{{ template "footer" . }} +{{ end }} |