CrackMe CRK50CRK.ASM by Independent (IND)
24 of 790 files
computer tool
-
This download is an executable MS-DOS program that will not run on a modern computer.
It needs a DOS emulator such as DOSBox-X, Staging;
or a virtualized MS-DOS or FreeDOS system.
Browsers may flag this download as unwanted or malicious. If unsure, scan it with VirusTotal. -
Last modified Nov 6, 2017 5:16:35 PM
MD5 checksum 910c86177cdc8462c8ba7baa9e4d8fb6
Mime type Zip archive data
Download CRACK50.zip
Size 1 kB
1997
; How to use this crap:
; calculate the last two bytes for a given number of loops of his main loops
; calculate them as: 35d8h+132h+number_of_looops
; read it off with break points.. in softice or something
; a correct serial is: PJ/7
; 25 loops is min. to make the last two bytes "typeable" but there is no values.
- Zip - DOS / Computer tool
3 items in the archive
- CRACK50/
- CRACK50.COM
- CRK50CRK.ASM
; How to use this crap:
; calculate the last two bytes for a given number of loops of his main loops
; calculate them as: 35d8h+132h+number_of_looops
; read it off with break points.. in softice or something
; a correct serial is: PJ/7
; 25 loops is min. to make the last two bytes "typeable" but there is no values
; that first 25 loops.. 26 loops gives the PJ/7 serial
.model small
.stack 100h ; Plenty stack space
.386 ; Who knows.. I might wanna use 386 code?
.data
sentence db 05,04 ; input from int21h/0ah
db 0,0 ; Interate of these mother fuckers
db 47,37h ; Bytes consistent with 26 loops : 35d8h+132h+26d
db 0dh ; 0d terminated string - since read with int 21h/ah=0a
count db 0 ; counter
finish dw 0 ; place to store the current guess during iterations
.code
mov ax, @data ; Make DS&ES point to the DATA
mov ds,ax
mov es,ax
xor dx,dx ; dx=0
next:
lea bx, [sentence+2] ; let bx point to the bytes we're checking for a fit
mov word ptr [bx],dx ; reset the bytes for next attempt
inc word ptr [bx] ; next two bytes
mov bx, word ptr [bx] ; fetch it
push bx ; feed it to the call
call flaffer ; try it!
pop dx ; fetch attempt
test ax,ax ; Did it work?
jnz next ; no - try next
mov ax,4c00h ; Breakpoint here - when it breaks DX=first two bytes
int 21h
flaffer:
lea si,sentence
mov cx,131h
call again
mov byte ptr [count],0
ret
again:
PUSH SI
INC CX
LODSW
XCHG AX,BX
LODSW
ROL BX,CL
XOR BX,AX
XOR BX,CX
MOV BP,[SI]
LODSW
MUL BX
MOV [SI-04],AX
POP SI
inc byte ptr [count]
cmp byte ptr [count],26h ; patch number of loops here
je notagain
; OR AX,AX
JNZ again
; ret
notagain:
ret
end