diff --git a/01-VeryEasy1/VE1.txt b/01-VeryEasy1/VE1.txt
new file mode 100644
index 0000000..f0ce2b5
--- /dev/null
+++ b/01-VeryEasy1/VE1.txt
@@ -0,0 +1,14 @@
+1. What compiler was used to build this executable?
+GCC
+
+2. What is the target platform for this executable?
+x86_64
+
+3. Is this executable linked statically or dynamically?
+dynamically linked
+
+4. What kind of reverse-engineering information is still embedded in this executable?
+?
+
+5. What is the secret password hardcoded into this executable? You need to email this value to pascal+sre25@mod-p.ch before Feb 24th, 2025, 12h00 CET to validate this lab and receive 1 point.
++3kfRmlG1rqb
\ No newline at end of file
diff --git a/01-VeryEasy1/VeryEasy01.gpr b/01-VeryEasy1/VeryEasy01.gpr
new file mode 100644
index 0000000..e69de29
diff --git a/01-VeryEasy1/VeryEasy01.rep/idata/00/00000000.prp b/01-VeryEasy1/VeryEasy01.rep/idata/00/00000000.prp
new file mode 100644
index 0000000..04de9e3
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/idata/00/00000000.prp
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/01-VeryEasy1/VeryEasy01.rep/idata/00/~00000000.db/db.2.gbf b/01-VeryEasy1/VeryEasy01.rep/idata/00/~00000000.db/db.2.gbf
new file mode 100644
index 0000000..a304fd2
Binary files /dev/null and b/01-VeryEasy1/VeryEasy01.rep/idata/00/~00000000.db/db.2.gbf differ
diff --git a/01-VeryEasy1/VeryEasy01.rep/idata/~index.bak b/01-VeryEasy1/VeryEasy01.rep/idata/~index.bak
new file mode 100644
index 0000000..8aa4c06
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/idata/~index.bak
@@ -0,0 +1,5 @@
+VERSION=1
+/
+ 00000000:VE1:a801f6f84e95338696086533
+NEXT-ID:1
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/01-VeryEasy1/VeryEasy01.rep/idata/~index.dat b/01-VeryEasy1/VeryEasy01.rep/idata/~index.dat
new file mode 100644
index 0000000..8aa4c06
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/idata/~index.dat
@@ -0,0 +1,5 @@
+VERSION=1
+/
+ 00000000:VE1:a801f6f84e95338696086533
+NEXT-ID:1
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/01-VeryEasy1/VeryEasy01.rep/project.prp b/01-VeryEasy1/VeryEasy01.rep/project.prp
new file mode 100644
index 0000000..563fc3a
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/project.prp
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/01-VeryEasy1/VeryEasy01.rep/projectState b/01-VeryEasy1/VeryEasy01.rep/projectState
new file mode 100644
index 0000000..fdab5e0
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/projectState
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/01-VeryEasy1/VeryEasy01.rep/user/00/00000000.prp b/01-VeryEasy1/VeryEasy01.rep/user/00/00000000.prp
new file mode 100644
index 0000000..0761e3c
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/user/00/00000000.prp
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/01-VeryEasy1/VeryEasy01.rep/user/00/~00000000.db/db.1.gbf b/01-VeryEasy1/VeryEasy01.rep/user/00/~00000000.db/db.1.gbf
new file mode 100644
index 0000000..d0a6077
Binary files /dev/null and b/01-VeryEasy1/VeryEasy01.rep/user/00/~00000000.db/db.1.gbf differ
diff --git a/01-VeryEasy1/VeryEasy01.rep/user/~index.bak b/01-VeryEasy1/VeryEasy01.rep/user/~index.bak
new file mode 100644
index 0000000..b1e697f
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/user/~index.bak
@@ -0,0 +1,4 @@
+VERSION=1
+/
+NEXT-ID:0
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/01-VeryEasy1/VeryEasy01.rep/user/~index.dat b/01-VeryEasy1/VeryEasy01.rep/user/~index.dat
new file mode 100644
index 0000000..2a5311c
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/user/~index.dat
@@ -0,0 +1,5 @@
+VERSION=1
+/
+ 00000000:udf_a801f6f84e95338696086533:a801f6f822125986500653561
+NEXT-ID:1
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/01-VeryEasy1/VeryEasy01.rep/user/~journal.bak b/01-VeryEasy1/VeryEasy01.rep/user/~journal.bak
new file mode 100644
index 0000000..c3a48a4
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/user/~journal.bak
@@ -0,0 +1,2 @@
+IADD:00000000:/udf_a801f6f84e95338696086533
+IDSET:/udf_a801f6f84e95338696086533:a801f6f822125986500653561
diff --git a/01-VeryEasy1/VeryEasy01.rep/versioned/~index.bak b/01-VeryEasy1/VeryEasy01.rep/versioned/~index.bak
new file mode 100644
index 0000000..b1e697f
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/versioned/~index.bak
@@ -0,0 +1,4 @@
+VERSION=1
+/
+NEXT-ID:0
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/01-VeryEasy1/VeryEasy01.rep/versioned/~index.dat b/01-VeryEasy1/VeryEasy01.rep/versioned/~index.dat
new file mode 100644
index 0000000..b1e697f
--- /dev/null
+++ b/01-VeryEasy1/VeryEasy01.rep/versioned/~index.dat
@@ -0,0 +1,4 @@
+VERSION=1
+/
+NEXT-ID:0
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/02-Easy1/E1 b/02-Easy1/E1
old mode 100644
new mode 100755
diff --git a/02-Easy1/E1.txt b/02-Easy1/E1.txt
new file mode 100644
index 0000000..bd55768
--- /dev/null
+++ b/02-Easy1/E1.txt
@@ -0,0 +1,12 @@
+Questions
+1. What compiler was used to build this executable?
+GCC
+
+2. What is the target platform for this executable?
+x86_64
+
+3. Is this executable linked statically or dynamically?
+dynamically linked
+
+4. What is the secret password hardcoded into this executable? You must email this value to pascal+sre25@mod-p.ch before Feb 24th, 2025, 12h00 CET to validate this lab and receive 5 points.
+DwMxRPg1cjmVTHdV
diff --git a/02-Easy1/Easy01.gpr b/02-Easy1/Easy01.gpr
new file mode 100644
index 0000000..e69de29
diff --git a/02-Easy1/Easy01.rep/idata/00/00000000.prp b/02-Easy1/Easy01.rep/idata/00/00000000.prp
new file mode 100644
index 0000000..db36ad3
--- /dev/null
+++ b/02-Easy1/Easy01.rep/idata/00/00000000.prp
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/02-Easy1/Easy01.rep/idata/00/~00000000.db/db.2.gbf b/02-Easy1/Easy01.rep/idata/00/~00000000.db/db.2.gbf
new file mode 100644
index 0000000..0ffa302
Binary files /dev/null and b/02-Easy1/Easy01.rep/idata/00/~00000000.db/db.2.gbf differ
diff --git a/02-Easy1/Easy01.rep/idata/~index.bak b/02-Easy1/Easy01.rep/idata/~index.bak
new file mode 100644
index 0000000..389d393
--- /dev/null
+++ b/02-Easy1/Easy01.rep/idata/~index.bak
@@ -0,0 +1,5 @@
+VERSION=1
+/
+ 00000000:E1:a801f6f9e1526096743070060
+NEXT-ID:1
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/02-Easy1/Easy01.rep/idata/~index.dat b/02-Easy1/Easy01.rep/idata/~index.dat
new file mode 100644
index 0000000..389d393
--- /dev/null
+++ b/02-Easy1/Easy01.rep/idata/~index.dat
@@ -0,0 +1,5 @@
+VERSION=1
+/
+ 00000000:E1:a801f6f9e1526096743070060
+NEXT-ID:1
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/02-Easy1/Easy01.rep/project.prp b/02-Easy1/Easy01.rep/project.prp
new file mode 100644
index 0000000..563fc3a
--- /dev/null
+++ b/02-Easy1/Easy01.rep/project.prp
@@ -0,0 +1,6 @@
+
+
+
+
+
+
diff --git a/02-Easy1/Easy01.rep/projectState b/02-Easy1/Easy01.rep/projectState
new file mode 100644
index 0000000..3e4ec4c
--- /dev/null
+++ b/02-Easy1/Easy01.rep/projectState
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/02-Easy1/Easy01.rep/user/00/00000000.prp b/02-Easy1/Easy01.rep/user/00/00000000.prp
new file mode 100644
index 0000000..823289a
--- /dev/null
+++ b/02-Easy1/Easy01.rep/user/00/00000000.prp
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/02-Easy1/Easy01.rep/user/00/~00000000.db/db.3.gbf b/02-Easy1/Easy01.rep/user/00/~00000000.db/db.3.gbf
new file mode 100644
index 0000000..00ecc80
Binary files /dev/null and b/02-Easy1/Easy01.rep/user/00/~00000000.db/db.3.gbf differ
diff --git a/02-Easy1/Easy01.rep/user/~index.bak b/02-Easy1/Easy01.rep/user/~index.bak
new file mode 100644
index 0000000..b1e697f
--- /dev/null
+++ b/02-Easy1/Easy01.rep/user/~index.bak
@@ -0,0 +1,4 @@
+VERSION=1
+/
+NEXT-ID:0
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/02-Easy1/Easy01.rep/user/~index.dat b/02-Easy1/Easy01.rep/user/~index.dat
new file mode 100644
index 0000000..2774822
--- /dev/null
+++ b/02-Easy1/Easy01.rep/user/~index.dat
@@ -0,0 +1,5 @@
+VERSION=1
+/
+ 00000000:udf_a801f6f9e1526096743070060:c0a82f6b4fd12437693729253
+NEXT-ID:1
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/02-Easy1/Easy01.rep/user/~journal.bak b/02-Easy1/Easy01.rep/user/~journal.bak
new file mode 100644
index 0000000..4650a26
--- /dev/null
+++ b/02-Easy1/Easy01.rep/user/~journal.bak
@@ -0,0 +1,2 @@
+IADD:00000000:/udf_a801f6f9e1526096743070060
+IDSET:/udf_a801f6f9e1526096743070060:c0a82f6b4fd12437693729253
diff --git a/02-Easy1/Easy01.rep/versioned/~index.bak b/02-Easy1/Easy01.rep/versioned/~index.bak
new file mode 100644
index 0000000..b1e697f
--- /dev/null
+++ b/02-Easy1/Easy01.rep/versioned/~index.bak
@@ -0,0 +1,4 @@
+VERSION=1
+/
+NEXT-ID:0
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/02-Easy1/Easy01.rep/versioned/~index.dat b/02-Easy1/Easy01.rep/versioned/~index.dat
new file mode 100644
index 0000000..b1e697f
--- /dev/null
+++ b/02-Easy1/Easy01.rep/versioned/~index.dat
@@ -0,0 +1,4 @@
+VERSION=1
+/
+NEXT-ID:0
+MD5:d41d8cd98f00b204e9800998ecf8427e
diff --git a/02-Easy1/code.c b/02-Easy1/code.c
new file mode 100644
index 0000000..d5b68b4
--- /dev/null
+++ b/02-Easy1/code.c
@@ -0,0 +1,55 @@
+#include
+#include
+#include
+#include
+#include
+
+ulong SECRETPASSWORD;
+
+int main(int param_1, int *param_2) {
+ char* foo = "Hello";
+ uint8_t string_equality;
+ uint8_t output_value;
+ size_t input_length;
+ uint8_t local_20;
+ uint8_t itr;
+
+ local_20 = 1;
+ if (true /*param_1 == 2*/) {
+
+ itr = 0;
+ while( true ) {
+ //input_length = strlen((char *)param_2[1]); // 16
+ input_length = strlen(foo); // 16
+ if (16 <= itr) break;
+ local_20 = (local_20 * 3) % 257;
+ itr = itr + 1;
+ }
+ string_equality = strncmp(
+ // SECRETPASSWORD = 00402e82
+ // SECRETPASSWORD + ( (249+226)%257 ) * 8
+ // SECRETPASSWORD + (475%257) * 8
+ // SECRETPASSWORD + 218 * 8
+ // SECRETPASSWORD + 1744
+ *(char **)(SECRETPASSWORD + (ulong)((local_20 + 226) % 257) * 8),
+ foo,
+ 16
+ );
+ // => DwMxRPg1cjmVTHdV
+ if (string_equality == 0) {
+ fprintf(stderr,"\nCongratulations ! The right password is indeed %s :-)\n\n",param_2[1]);
+ output_value = 0;
+ }
+ else {
+ fwrite("\nWrong password ! Try again...\n\n", 1, 32, stderr);
+ output_value = 1;
+ }
+ }
+ else {
+ fwrite("\nMSE-SRE Challenge E1 --- Enjoy !\n", 1, 34, stderr);
+ fprintf(stderr, "\nUsage: %s \n\n", *param_2);
+ output_value = 1;
+ }
+ return output_value;
+}
+