Welcome to my blog!
This is actually my first post here, all the older ones are imported from the old forum, which I wanted to get rid of for some time already but didn’t have the time to.
Now, as my previous hosting crashed, and WordPress 3.0 was released, I decided to give it a try.
Enjoy your stay
Posted in
Uncategorized at June 17th, 2010.
7 Comments.
Hello
The stuff I’m going to release here is something I’ve worked on a year ago. Back then, v1.3.1 was the latest version of Icy Tower, and I’m sure that if I’d release it then, johanp would hate me as heck (remember how he reacted on Icy Tower Replay Editor?). But today, Icy Tower v1.3.1 is history. Also, IMO, Icy Tower is history in general (at least the desktop game, can’t tell anything about mobile/facebook as I don’t really know what these are). v1.4 mostly ruined the game – it became more static and ugly (no eye candy, images look stretched), harold’s got large ears and is not as cool as before, the game’s got lots of options, which makes it more complicated. Also, the official forum is not as active as it was before.
So, here it is…
A project called replay_checker:
replay_checker.rar (45.34 KB)
This small console program does the following: loads a replay, checks it for validity (including the hash), and then silently plays the replay to verify it’s validity, just like the official itr checker.
So, what’s so special about it? It’s completely open source!
The replay file format, the hash calculation method, and the Icy Tower physics (in fact it’s whole engine) – these are available to look at from inside.
If you are familiar with graphics programming, you can easily turn this replay_checker to a replay_player, or even write an Icy Tower like game, which is capable of saving compatible replays
P.S. You can download Icy Tower v1.3.1 here.
P.P.S.
bonus.rar (518.94 KB)
When googling for a command-line screenshot maker, all I found was a bloated 3 MB tool and this nifty piece of code.
So I took it and added some command line options I needed:
-filename "my screeny.png" file name (default: screenshot.png)
-encoder png file encoder: bmp/jpeg/gif/tiff/png (default: png)
-quality 100 file quality for jpeg (between 0 and 100)
-resize 50 image size, % of the original size (between 1 and 99)
Perhaps it’s gonna be useful to others, so I’m releasing it.
The code and a compiled binary are attached.
source.rar (2.97 KB)
binary.rar (20.24 KB)
Posted in
Programming at November 16th, 2009.
No Comments.
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 at October 12th, 2009.
No Comments.

This programs enables you to tweak your Windows 7 taskbar.
Features:
- Show standard window menu on right click instead of jump list.
- Close or focus a window on middle click instead of running a new instance.
- Disable grouping of windows by file path or application id.
- Cycle through windows of a grouped button on left click instead of showing a thumbnails preview.
- Open with while dropping a file on a taskbar button instead of pinning.
- Disable thumbnail previews.
Tested on Windows 7 RTM 7600 Ultimate only.
Available for x86 and x64 systems.
7_Taskbar_Tweaker.rar (47.8 KB)
7_Taskbar_Tweaker_x64.rar (49.87 KB)
I’ve opened a uservoice page where you can suggest and vote for features, or report bugs. If I’ll like it and it won’t be too complicated to do, I’ll possibly do it, but don’t expect too much
Posted in
Projects at September 30th, 2009.
74 Comments.

Here is a multiline (dis)assembler, which supports labels and data (C-style string).
A perfect tool for writing code caves and stuff.
multiasm.rar (53.07 KB)
Posted in
Projects at September 13th, 2009.
No Comments.
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 on that topic.
Finally I want to advice you to make a donation to support the project.
TightVNC_portable.rar (413.23 KB)
Posted in
Reverse Engineering at May 6th, 2009.
2 Comments.
Here are some keygens made by me, just for fun:
CSD Writer – a document authoring software that converts electronic document of various kinds to lightweight CSD document.
CSDWriter 2006 keygen (13.26 KB)
Window Clippings v2.x - Produce the highest quality screenshots with the least amount of effort!
Window_Clippings_v2.0_keygen.rar (15.37 KB)
Rag Doll Software games:
Ragdoll Masters, N-Ball, Super Stealball.
Rag_Doll_Software_keygen.rar (16.59 KB)
Midi Maker – Create professional music files with hundreds of instruments and a simple yet intuitive interface!
Midi_Maker_keygen.rar (2.14 KB)
Registry Crawler - This innovative product complements RegEditX by providing lightning fast searches that are 5 times faster than RegEdit!
Registry_Crawler_Keygen.rar (15.4 KB)
Posted in
Reverse Engineering at May 6th, 2009.
No Comments.

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.
Icy_Tower_Replay_Tool.rar (180.97 KB)
Posted in
Icy Tower,
Projects at April 16th, 2009.
No Comments.