How to annoy Reverse Engineers

Game developers are often times not experienced in hacking games, or how reverse engineers, modders and server emulator developers analyze the games while working on their respective projects. For the hackers, this is good news, because it makes their life easier. For the game developers less so, because they don’t understand how to protect their products.

Continue reading “How to annoy Reverse Engineers”

Simple C# Web Server with PHP Support using CGI

The world is full of capable web servers, but there might come a point, where you need a small, portable .NET web server. And for compatibility reasons, you might want to use PHP with it, but you can’t find any guides on how to do that. And for that day, I have written this post.

Continue reading “Simple C# Web Server with PHP Support using CGI”

Assembly: Redefined – Macros to the rescue

After taking my first steps in the world of Assembly, and getting my little extended Hello World running, I had learned that writing error-free Assembly code is by no means impossible, but you have to take great care to not make mistakes. I basically had to turn on my debugger after every bigger modification, because I had accidentally broken something.

But just like C and other languages protect you from simple mistakes, like not unwinding the stack after calling a cdecl-convention function, or addressing variables on the stack incorrectly, you can easily help yourself write cleaner, more robust code with the help of macros.

Continue reading “Assembly: Redefined – Macros to the rescue”

A little adventure into Assembly

A few days ago, a thought popped into my head. “Hey, let’s learn how to write assembly!”

While I know the basics of how Assembly works, and even though I’ve read some Assembly code over the years, while debugging or analyzing applications, I’ve never written an actual program in any Assembly language. That obviously had to change.

How hard could it be, right?

Continue reading “A little adventure into Assembly”

My experience translating for Nexon

Many years ago, when the European version of the MMORPG Mabinogi was still active, I was approached by a moderator of the official Mabinogi EU forum. Apparently Nexon was looking for people to translate an upcoming patch for MapleStory, another MMORPG of theirs, from English to their native language. This was on a Wednesday, one week before the patch was to be released, though they didn’t seem to be in much of a hurry. My first question was regarding payment, and after the moderator had consulted his contact at Nexon I was told some numbers. The translation of the entire update into one language would’ve been worth about 750€ ($900), and since I didn’t have anything better to do that week, I agreed.

Continue reading “My experience translating for Nexon”

My thoughts about Go

I’ve always liked C and its simplicity, but it’s kinda tedious to write bigger programs in it, which is why I’ve always refrained from doing so. It’s not even the memory management, it’s simple things, like working with strings, or the overhead you have for calling “methods”, animal_do_something(animal). In comes Go, the programming language by Google.

Continue reading “My thoughts about Go”