From 1a57267a17c2fc17fb6e104846fabc3e363c326c Mon Sep 17 00:00:00 2001 From: Emile Date: Fri, 16 Aug 2024 19:50:26 +0200 Subject: initial commit --- templates/index.html | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 templates/index.html (limited to 'templates/index.html') 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" . }} + + {{ template "nav" . }} + {{ if .logged_in }}{{ else }} + {{ end }} + + +

r2wa.rs

+ + {{ if .err }} +
{{ .err }}
+ {{ 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 radare2 ESIL Emulation is used to allow all fun combinations! + + +

What is it and how does it work?

+ + Essentially +

+ +
+  ; 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
+  
+ +
+ More info in the following blogpost: https://emile.space/blog/2020/r2wars/ +
+
+ +
+╭──╮    ╭──────────────────────╮
+│ _│_   │                      │
+│ O O  <  LET THE GAMES BEGIN! │
+│  │╷   │                      │
+│  ││   ╰──────────────────────╯
+│ ─╯│
+╰───╯
+  
+ + + + +{{ template "footer" . }} +{{ end }} -- cgit 1.4.1