Courtesy of Fravia's page of reverse engineering
Well, Edi found the encryption routine and writes: "it took me 2 hours only to UNDERSTAND what is done in 30 lines of assembler... everyone should study this compact code, it was real tasteful :-)" I agree completely with him, in fact I believe we should now slowly proceed (say before the end of September :-) to the 'real' task: reversing the encryption routines used by our stegonating targets!

Edi to Fravia+: 26 March 1998

```Edi:

Dear Fravia+,

First of all I want to thank you for setting up such nice "gates"
to advanced pages. Every one of the 3 was great fun, and they showed
me a important thing:

You can do everything if you just try hard enough!

I found the advanced steganography page. I don't think
it would have been possible without the help you provided on the
starting page, especially without Flynn's light version I wouldn't
write this now. After studying the text I thougt I just need a
working bruteforcer to crack the steganos encrypted file.

But I had to work more: first of all, the file offsets were wrong,
so I had to reverse engineer steganos again, on my own. I found
the encryption routine (it took me 2 hours only to UNDERSTAND what
is done in 30 lines of assembler... everyone should study this
compact code, it was real tasteful :-) and wrote my own bruteforcer,
first in Pascal, which was way too slow, then in C, too slow again,
and finally I decided to write it in assembler. When you have to
try 26^8 possible keys, you need to have
1.) a fast machine
2.) a good and fast algorythm to check the keys

I don't have #1, so I made #2. And the only way to achieve this is
programming in assembler. My program is not perfect, there must
still be ways left to speed it up somewhere, but it works fine for me
now (I had to correct several fatal bugs in the past few days :)
Started it in the evening, I came back in the morning and guess what,
I saw the right key!

Have a look at this self-explaining (I hope) program. You have
to know the file name to use it, but a check to see if you get
a filename is easy to implement.
```
```
The above program checks every possible key. Let it run over night
like I did, go to bed and dream of Fravia's next puzzle (I hope I
don't have to brute force it, I want to THINK :-)

Habi d'ere,
Edi```
(c) 1998 Edi All rights reversed

You are deep inside Fravia's page of reverse engineering, choose your way out: