knuckle cracker includes a tool that compares two binary files and generates human-readable (and writable) patch scripts signed with MD5. It features smart string/binary recognition. Non-printable string portions are presented in C-like escaping style ("\x20\7\r\n"). It also features a utility that applies such a patch.
C
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
LICENSE.txt
Makefile.bcc
Makefile.gcc
README.txt
WinRAR_3.20.bss
alphanum.h
bin_diff.c
bin_diff.dsp
crk_parser.c
crk_parser.h
escape.c
escape.h
knuckle_cracker.dsp
knuckle_cracker.dsw
main.c
md5.c
md5.h
patcher.c
patcher.h
sample.bss
unbind.c
unbind.h

README.txt

!!! DOS line endings, use "unzip -aa knuckle_cracker.zip" on UN*X systems !!!


/****************************************************************************
	This file is part of Knuckle Cracker binary diff utility.
	Copyright (C) 2004  Stanislaw Y. Pusep

	This program is free software; you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation; either version 2 of the License, or
	(at your option) any later version.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with this program; if not, write to the Free Software
	Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

	E-Mail:	cr@cker.com.br
	Site:	http://sysd.org/
****************************************************************************/


### VERY VERY BAD, TERRIBLE, HORRIBLE, ASTONISHING NOT GOOD ALPHA RELEASE ###


 * Author:
	mail: "stas" <cr@cker.com.br>
	site: http://sysd.org/


 * Purpose:
	Support for human-readable binary file patch format that crackers
	could use to share their work.

	bin_diff	=> Compares patched (cracked) file with original one
			   and generates modifications script.
	knuckle_cracker	=> Applies crack script generated by bin_diff.
			   Script may be passed as command line parameter
			   or you may bind it directly to executable:
			   "cat knuckle_cracker WinRAR_3.20.bss > cRARck"

	Compiles on Linux, FreeBSD (gcc) & Win32 (Borland C/CYGWIN/MinGW/MSVC).


 * Files:

alphanum.h		- alphanum macros
bin_diff.c		- utility to generate diff scripts
crk_parser.c		- patch script parser
crk_parser.h		- ...
escape.c		- plaintextifies binary data (and of course inverses ;)
escape.h		- ...
main.c			- sample console cracker
md5.c			- MD5 implementation ripped from PuTTY
md5.h			- ...
patcher.c		- patching facilities
patcher.h		- ...
unbind.c		- unbinds patch script from crack executable
unbind.h		- ...

bin_diff.dsp		- MSVC 6 diff utility project
knuckle_cracker.dsp	- MSVC 6 cracker project
knuckle_cracker.dsw	- MSVC 6 workspace
Makefile.bcc		- Borland C Makefile
Makefile.gcc		- gcc Makefile

LICENSE.txt		- GNU GENERAL PUBLIC LICENSE, of course
README.txt		- this fuck you're readin'

sample.bss		- format reference
WinRAR_3.20.bss		- a real fuckin' workin' crack!