 # X86 ASSEMBLY: CRACK CHALLENGE 1, STATIC Finale

Hi All,

After long tutorial, Finally I will complete this crack challenge so that we can continue to another tutorial.

Here are some code that we will talk about is just like below

The next condition is to check the array element at 0Dh (13) is equal to ‘o’ with the code cmp byte ptr [eax], 6Fh and jnz To_To_Wrong_Key. 6Fh is equal to ‘o’

Also the next condition is to check element number 0Ch (12) is equal to ‘r’ with cmp eax, [ebp+CharCollected_1] and jnz Go_To_Wrong_Key so based on this condition char in 12th elament shall be r in order to pass.

Based on above two conditions then we can conclude that the key would be

12 = r
13 = o
14 = ?
15 = ?

The next conditions are below.

The condition will check that the element number 2 shall be below or equal 9 (57 in decimal) and greater than ‘/’ (47 in decimal). So the accepted range is

Lets go to the next code. The code below is actually comparing the element no 1 and 12 shall be the same. As we know that element no 12 is ‘r’ then we can conclude that element no 1 shall be ‘r’ as well

0 = Y = 89 ( CharCollected_1 =89)
1 = r
2 = 0 to 9
3 = ?
4 = ?

5 = ?
6 = ?
7 = ?
8 = . = 46
9 = ?
10=?

Ok .. now every condition is all examined so that we can now input the correct key with regard all the condition above

here is the full key

0 = Y
1 = r
2 = 3
3 = o
4 = d
5 = d
6 = d
7 = d
8 = .

9 = d
10=d
11 = Empty
12 = r
13 = o
14 = x
15 = x