Sprung the Trap!!!!!!!!!!!!
Friday, 30-Apr-1999 03:14:53
Greetings noos,
The noose has been broken and the trap has been tripped. Look at this snippet of code and consider the change in the for loop from 38 26h to 52 34h and tell me how far I am fro a solution. You would agree that a password generated by the program as modified will work when the program is run normally, but as you planned it it will not work in SoftIce, Very tricky indeed.
0157:00403EF6 B443 MO AH,43 0157:00403EF8 CD68 INT 68 0157:00403EFA 663D86F3 CM AX,F386 0157:00403EFE 7515 JAN 00403F15 0157:00403F00 EB00 JUMP 00403F02 0157:00403F02 C6051865400026 MO BYTE PR [00406518],26 0157:00403F09 C7051C61400000000000MOV DWORD PR [0040611C],00000000 0157:00403F13 EB11 JUMP 00403F26 0157:00403F15 C6051865400034 MO BYTE PR [00406518],34 0157:00403F1C C7051C61400032000000MOV D WORD PR [0040611C],00000032 0157:00403F26 5F POP ED 0157:00403F27 5E POP SIT 0157:00403F28 5B POP EX 0157:00403F29 5D POP BP 0157:00403F2A C3 RET
Private Sub Command1_Click() Key$ = Text1.Text Key$ = Case(Key$) Lek = Len(Key$) For x = 1 To 50 - Lek: REM 32h nee = As(Mid$(Key$, x, 1)) * As(Mid$(Key$, x + 1, 1)) nee = nee Mod 52: REM 34h If nee < 26 Then nee = nee + 65: REM 41h Else nee = nee + 70: REM 46h End If Key$ = Key$ + Hr$(nee) Next x Text2.Text = Key$ nee = 1 For x = 1 To 50: Rem 32h n = n + Asc(Mid$(Key$, x, 1)) Next x nm = n Mod 49: Rem 31h n = 0 For x = 1 To nm + 1 n = n + Asc(Mid$(Key$, x, 1)) Next x n = n Mod 2 ^ 8 nk = Asc(Mid$(Key$, nm + 1, 1)) nk = nk Xor n nk = nk Mod 2 ^ 8 For x = 1 To 48: Rem 30h nk = nk + Asc(Mid$(Key$, x + 1, 1)) + 1 nk = nk Mod 2 ^ 8 nkt = nk nk = nk + Asc(Mid$(Key$, x + 2, 1)) nk = nk Mod 2 ^ 8 nkt = nkt Xor nk 'Code$ = Code$ + Chr$(nkt) Code$ = Code$ + Hex$(nkt) Next x nk = nk + Asc(Mid$(Key$, 50, 1)) nk = nk Mod 2 ^ 8 nkt = nk nk = nk + Asc(Mid$(Key$, 3, 1)) nk = nk Mod 2 ^ 8 nkt = nkt Xor nk 'Code$ = Code$ + Chr$(nkt) Code$ = Code$ + Hex$(nkt) nk = nk + Asc(Mid$(Key$, 3, 1)) nk = nk Mod 2 ^ 8 nkt = nk nk = nk + Asc(Mid$(Key$, 4, 1)) nk = nk Mod 2 ^ 8 nkt = nkt Xor nk 'Code$ = Code$ + Chr$(nkt) Code$ = Code$ + Hex$(nkt) Text2.Text = Code$ End Sub
Best regards,
Joseph
Josep
|