Custom Buffer-Manipulation Routines

Here’s my rewrite of the Custom Buffer-Manipulation Routines by Piotr Mintus.
Optimized for and works on 32-bit and 64-bit environments.

//**********************************************************************
// File: buffer.h
//	
// Custom Buffer-Manipulation Routines
//
// By RaMMicHaeL, 12.10.2009
//**********************************************************************

#ifndef _BUFFER_H_
#define _BUFFER_H_

#ifdef FillMemory
#undef FillMemory
#endif
#ifdef ZeroMemory
#undef ZeroMemory
#endif
#ifdef CopyMemory
#undef CopyMemory
#endif
#ifdef MoveMemory
#undef MoveMemory
#endif

__forceinline 
void FillMemory(PVOID Destination, SIZE_T Length, BYTE Fill)
{
	SIZE_T *sizet_p;
	unsigned char *uchar_p;
	SIZE_T sizet_fill;
	SIZE_T count;

	sizet_p = (SIZE_T *)Destination;

	count = Length/sizeof(SIZE_T);
	if(count)
	{
		sizet_fill = Fill;
		sizet_fill |= sizet_fill << 8;
		sizet_fill |= sizet_fill << 16;

#ifdef _WIN64
		sizet_fill |= sizet_fill << 32;
#endif

		do
			*(sizet_p++) = sizet_fill;
		while(--count);
	}

	uchar_p = (unsigned char *)sizet_p;

	count = Length & (sizeof(SIZE_T)-1);
	if(count)
	{
		do
			*(uchar_p++) = Fill;
		while(--count);
	}
}

#define ZeroMemory(Destination, Length) FillMemory(Destination, Length, 0)

__forceinline 
void CopyMemory(PVOID Destination, const VOID *Source, SIZE_T Length)
{
	SIZE_T *sizet_p_dest, *sizet_p_src;
	unsigned char *uchar_p_dest, *uchar_p_src;
	SIZE_T count;

	sizet_p_dest = (SIZE_T *)Destination;
	sizet_p_src = (SIZE_T *)Source;

	count = Length/sizeof(SIZE_T);
	if(count)
	{
		do
			*(sizet_p_dest++) = *(sizet_p_src++);
		while(--count);
	}

	uchar_p_dest = (unsigned char *)sizet_p_dest;
	uchar_p_src = (unsigned char *)sizet_p_src;

	count = Length & (sizeof(SIZE_T)-1);
	if(count)
	{
		do
			*(uchar_p_dest++) = *(uchar_p_src++);
		while(--count);
	}
}

__forceinline 
void MoveMemory(PVOID Destination, const VOID *Source, SIZE_T Length)
{
	SIZE_T *sizet_p_dest, *sizet_p_src;
	unsigned char *uchar_p_dest, *uchar_p_src;
	SIZE_T count;

	if(Destination > Source)
	{
		// Copy in reverse

		uchar_p_dest = (unsigned char *)Destination+Length;
		uchar_p_src = (unsigned char *)Source+Length;

		count = Length & (sizeof(SIZE_T)-1);
		if(count)
		{
			do
				*(--uchar_p_dest) = *(--uchar_p_src);
			while(--count);
		}

		sizet_p_dest = (SIZE_T *)uchar_p_dest;
		sizet_p_src = (SIZE_T *)uchar_p_src;

		count = Length/sizeof(SIZE_T);
		if(count)
		{
			do
				*(--sizet_p_dest) = *(--sizet_p_src);
			while(--count);
		}
	}
	else
		CopyMemory(Destination, Source, Length);
}

#endif  // _BUFFER_H_
Posted in Programming on October 12th, 2009. No Comments.

7+ Taskbar Tweaker

7+ Taskbar Tweaker
7+ Taskbar Tweaker allows you to configure various aspects of the Windows taskbar.
Most of the configuration options it provides can’t be tweaked using the taskbar properties or the registry.
The tweaker is designed for Windows 7, Windows 8, and Windows 10.

Download

exe 7tt_setup.exe (1.78 MB, changelog)
Latest version: v5.15.2
Note: The installer can be used to extract a portable version. Refer to the FAQ below for details.

Beta version
exe 7tt_setup_beta.exe (1.78 MB, changelog)
Latest beta version: v5.15.2.2
More info about beta versions.
Read More…

Posted in Releases, Software on September 30th, 2009. 6,714 Comments.

Multiline Ultimate Assembler (an x64dbg plugin)

Multiline Ultimate Assembler is a multiline (and ultimate) assembler (and disassembler) plugin for x64dbg and OllyDbg. It’s a perfect tool for modifying and extending a compiled executable functionality, writing code caves, etc.

Download

zip multiasm.zip (682.53 kB, changelog)
Latest version: v2.3.7

Source code

https://github.com/m417z/Multiline-Ultimate-Assembler

Posted in Releases, Software on September 13th, 2009. 223 Comments.

Icy Tower v1.3.1 mods

Sparse Floor
Only even floors are present (each second floor is there).

rar icytower13_sparse_floor.rar (274.73 KB)

Solid Floor
You can’t go through the floors – they are solid.

rar icytower13_solid_floor.rar (271.07 KB)

Posted in Reverse Engineering on May 6th, 2009. No Comments.

TightVNC portable (version 1.3.10)

What is TightVNC

Recently, a new version of TightVNC was released, and a portable version of it for U3 flash drives appeared.
That’s great, but what if you don’t have a U3 flash drive, or you don’t like the U3 system in general (that’s me), or you don’t want to use it on a flash drive at all?

Well, here is how you extract the program itself from the .u3p package for a regular use:
1. Download it here.
2. Use WinRAR or similar to extract the host folder from that file, which is in fact a zip archive.
3. Use the following command line parameters to use a local ini file instead of the registry for storing your settings:
winvnc.exe -runwithinifile .\winvnc.ini
vncviewer.exe -settingsfile .\vncviewer.ini

Now you can enjoy the portable version of TightVNC without a U3 drive.

But you must agree, that it’s not really handy to use a command line every time you want to run TightVNC. Well, I’ve patched winvnc.exe and vncviewer.exe and made them use an ini file by default. These are attached below.

Finally I want to advice you to make a donation to support the project.

rar TightVNC_portable.rar (413.45 kB)

Posted in Reverse Engineering on May 6th, 2009. 9 Comments.

Icy Tower Replay Tool

This tool for Icy Tower replays, as the name states, can do the following:
– Load a replay and view it’s content.
– Play a replay and compare real results with the one in the headers.
– Rename a replay, while suggesting a standard Icy-Tower-style file name.
– Edit a replay.
– Associate itself and Icy Tower with .itr files.
– And one hidden feature I might tell you about one day. 🙂

rar Icy_Tower_Replay_Tool.rar (180.97 KB)

Posted in Releases, Software on April 16th, 2009. No Comments.

Ragdoll Masters Online

An add-on for the Ragdoll Masters game that allows you to play online.

Download
rar Ragdoll_Masters_Online.rar (13.01 KB)

Instructions
Download the archive, copy the files to your Ragdoll Masters folder, and run “Ragdoll Masters v3.1 Online.exe”.
The add-on works only with Ragdoll Masters v3.1.

Posted in Releases, Software on February 25th, 2009. 12 Comments.

Icy Tower Floor Controller

Features:
Works for Icy Tower v1.3.1 only.
This program can modify the length of the floor in Icy Tower.
In the left there are the floor numbers, in the right – their length.

If you just want the floors to be as long as possible, you better check out Icy Tower Trainer.

rar Icy_Tower_Floor_Controller.rar (14.29 KB)

Posted in Releases, Software on August 20th, 2007. 14 Comments.

LF2 FPS Changer

This program is able to change the FPS rate of LF2.
Works with LF2 v1.9, v1.9c, v2.0 and v2.0a.

rar LF2_FPS_Changer.rar (45.35 kB)

Posted in Releases, Software on August 12th, 2006. 11 Comments.

K+ calculator

Lets you calculate your Icy Tower K+ score

rar K__calculator.rar (9.94 KB)

Posted in Releases, Software on July 22nd, 2006. No Comments.