A Brochure Design
Reverse Engineering (RCE): For Beginners
Learning software reverse engineering requires a combination of skills and a thorough understanding of computers and software development, but like most worthwhile subjects, the only real prerequisite is a strong curiosity and desire to learn. Software reverse engineering integrates several arts: code breaking, puzzle solving, programming, and logical analysis.
While on one hand reverse engineering is used by software analysts to find flaws and faults in a software, to develop a strong protection scheme for the software and to improve the original code, it is also used (and I suppose more often) by hackers and crackers to modify an application to overcome its protection schemes, inject malicious features into an application and enable-disable restricted features. Reverse engineering, as Elliot Chikofsky describes in his foreword to the book “Reversing: Secrets of Reverse Engineering”, is like a stethoscope, which could not only be used by a doctor to detect breathing or heart problems but also by a burglar to listen to the lock mechanism of a safe as the tumblers fall in place. It is a tool which is not inherently good or bad but the issue is the use to which it is put.
While legal issues surround the usage and application of reverse engineering, acquiring knowledge about the techniques of reverse engineering is perfectly legal. As a beginner, you can learn how to create patches for a software in order to bypass restrictions. You can learn the internal working of a protection scheme to be able to find a password/ serial key for it or (even more) to be able to write a keygen for it. More advanced techniques may also teach you how to inject your own code into a piece of software. It is important for good guys to know these techniques too, as it provides one with a perspective of a hacker. To be able to think like hackers motivates one to develop stronger protection schemes and take anti-reversing measures for your software.
On a more personal note, learning reverse engineering is fun. You suddenly find yourself in a world of endless possibilities. There are several websites offering legal “crackme” files. It can be challenging, mentally satisfying and often addicting, when cracking these files. You force your mind to work analytically as never before. You can take your first step in being someone different from those you see all around you.
I wrote this article a few months back to help people (beginners) understand what reverse code enginerring is all about. I myself am a beginner in this field and hopefully someday I could advance to the next level. For now I already have enough stuff at hand !!
Labels: Articles , Hacking , Resources , Reverse Engineering
Blogger Template- Working with CSS
I had the idea of its syntax and working but never did i actually put my skills to practise. So I decided to start with something simple but something that would be useful and not a waste of time. Thus, I decided to create a blogger template.
Designing a blogger template from scratch would have taken ages.. so i decided to start with a pre-designed template and modify it with my styles and classes to give it the look i wanted. What came up as a result was this template:
This template incorporates shades of black, white and blue.. includes a favicon like the one for this blog, a navigation bar and several other customizable features. To be honest i think the blog banner is a bit too simple and can be futher improved. Since I don't have enough time now.. maybe I will update it in future.
You can download this template and use it for your own blog. Just visit the demo blog above and find out the details. Feel free to give your suggestions!
Labels: Art work , Blog Entries , My work , Resources , Website Designing
Word Game Solver
My first encounter with this game was when a friend of mine challenged me for a game on facebook. Since I am not into playing flash games (except maybe during computing lessons in lab) the game was not intriguing but something else was -- the fundamental logic with which the mind works to find the scrambled words. My programming instincts encouraged me to code this logic and what came up as a result was a word game solver.
This piece of software takes in the scrambled letters and gives you all the words that can be formed with them. So if you are too stressed playing such a game then you can have the computer find the words for you. You can download this solver here:
Labels: Blog Entries , C++ , Game Programming , Hacking , My work , Tips 'n' Tricks
Ideas Worth Spreading
I first landed on this website through an external link and what I found here was truly impressive. The website contains talks by the world's smartest thinkers, greatest visionaries and most-inspiring teachers on various themes like technology, entertainment, science, business, design, culture, arts, global issues and many more. The talks include inspiring speeches, demonstrations of upcoming technology, interesting research results, unconventional explanations, and much more. It is dedicated to the brightest minds of our time talking about things that they love and that changed their lives. The videos are freely available so that millions of people can gain a better understanding of the biggest issues faced by the world and inculcate a desire to help create a better future.
Here is the link to this website:
Labels: Blog Entries
Gmail: Redefining Email
Filters and labels are the backbone of how Gmail works (and by far its biggest strength), yet every Gmail user does not use them or does not know how to use them. One of the online articles about gmail describes “Not using the filters and labels in gmail is like going to visit a hooker and only asking for a hug.” So if you want more with your gmail account here is some useful information.
Labels: Gmail allows the feature of labels as a substitute to folders as used by other webmail services. We have become so used to having folders in our computers to organize our files and documents that at first, the concept of labels might not appear as good. But, once you begin to use it, the flexibility it provides is nowhere close to what folders offer. While one email can only be placed in one folder, it can have more than one label. So, an important email from a friend can be found when you look for it under the label “Friend” and under the label “Important”. Also folders require emails from your inbox, sent mails or archives to be moved under it, while labels give you the choice whether to move it or not. So the email can be in your inbox, sent mail or archives and yet be found under that label.
To learn more: Click Here
Filters: Gmail filters allow you to manage incoming mails. Using filters, you can automatically label, archive, delete, star, or forward your mail, even keep it out of Spam -- all based on a combination of keywords, sender, recipients, and more. If you receive junk mails from some website or some contact and you want to auto-delete them you can do it be just creating a filter. Next email from that contact will follow that action. I have a filter created that labels all my incoming notifications from facebook. This keeps my inbox clean and organized.
To learn more: Click Here
Video and audio chat: Although a well know feature, it definitely separates gmail from most of the popular email services. Now you can have an audio and video conversation with anyone who is online. So if you are a gmail user you do not have to log on to some alternative chat messenger to find a friend online and chat with him. You can do it right away from your gmail window.
Multiple accounts: Although, I am the kind of person who rarely uses my alternative email accounts, but for those who do have multiple email accounts in yahoo, hotmail etc can use their gmail account to check mails on those accounts. The official gmail blog states “Mail Fetcher lets you retrieve messages from up to five different email accounts. Besides taking advantage of Gmail’s spam filtering, you can also use Gmail to send messages using your other email addresses. This is convenient for users juggling multiple accounts -- log in once from anywhere and access all of your messages from different email accounts (without missing a single Gmail chat)."
To learn more: Click Here
Offline Gmail: Only a few days ago, my internet connection was down and I had to get an urgent print out of a document mailed to me by a friend. I didn’t know what to do. There was no way I could access my gmail. Finally I went to a cyber cafe and got the pages printed. The offline gmail feature allows your gmail account to be opened even if you are not connected to the internet. Not only it solves the problem above but it allows much more flexibility. Now you can retrieve, compose and send emails even if you are on a flight or in the outskirts with no internet connection. This is currently an experimental feature but considering its utility in this modern scenario, may soon be permanently implemented.
To learn more: Click Here
Search: There is a saying “There are some things man is not meant to know, for everything else there is Google.” Gmail integrates in it search the capability of the most powerful search engine—Google. You may not have realized it, but whenever you search a mail using search in gmail it performs the most thorough search, checking for the keyword right from the subject till the last letter of every email in your account. Not only emails, it looks for chats, voicemails and if you desire in spam and trash as well.
To learn more: Click Here
By conversation: This is a less credited but extremely useful feature. The gmail help describes it: “Gmail groups all replies with their original message, creating a single conversation or thread. In other email systems, responses appear as separate messages in your inbox, forcing you to wade through all your mail to follow the conversation. In Gmail, replies to replies (and replies to those replies) are displayed in one place, in order, making it easier to understand the context of a message -- or to follow the conversation. When you open one message in a conversation, all of your related messages will be stacked neatly on top of each other, like a deck of cards. We call this Conversation View. In Conversation View, each new message is stacked on top of the ones that arrived before it, so that the newest message is always the one you see first.”
Gmail labs: It allows the gmail user to try out new feature that improve the gmail experience. The official gmail blog states: “Gmail Labs is a way for us to take lots of the ideas we wouldn't normally pick and let you all (who use Gmail) decide whether they're good or not. It has a list of experimental new features, and you can enable or disable each one. Some of the popular ones will become core parts of the product, and we'll eventually retire the ones that don't get much use.” Now you can enable features like undo send, keyboard shortcuts, tasks, forgotten attachment detector etc.
Ads: Email services are free and so they earn revenues by third-party advertisements. Gmail too is free and includes ads. However, unlike any other webmail services gmail ads are clean. All ads are in the right slide. No pop up, no ads on the top, no big flash movies as Ads. Only text based ads, and sometimes they are helpful too.
Along with these, gmail also offers a strong integration between itself and other Google services like Orkut, Calendar, Google docs, Picasa and many more. The creative gmail themes visually improve your gmail experience. This fast and ever-improving service is no-doubt redefining email. Visit the official gmail blog for latest information and updates.
Labels: Articles , Gmail , Resources , Tips 'n' Tricks
EA Sports Cricket
However, do not be disappointed! Just take a look at the few screenshots below:
Do not be confused, this is EA sports cricket 2007 but not the original version. This is the self modified version of the game. The team rosters are updated, players have almost similar faces, new jerseys for all teams, there is IPL, and most importantly there is something that you do not see in the screenshots. There is an improved gameplay with which, shots can be played 360 degrees on the ground.
The next question that would be popping in your mind (of course, if you give a damn about all this) would be how is it done? The answer is: It just takes patience, enthusiasm, passion and an internet connection. If you have all this just follow the link below:
Here are a few things you must learn about to enjoy the game to the core:
- Player Editor: Player Editor07 allows you to edit fully all the player names, abilities, stats etc. It is easy to use and has import/export features to allow you to share players and teams.
- Gameplay Patch: Improve the quality of play with patches for features like IPL, or 360’ shot play, better AI, etc.
- Stroke Editor: Allows variation of height and power and direction of strokes
- Face Making: Create faces of cricketers and watch them play. You can create your own face.
- Kit Making: Learn how to make custom kits for the teams, launch your own kit or improve on the existing ones.
- Bat Making: Create your own bat, with customized features like your name or signature.
- Stadium Graphics: Create stadium banners for a more realistic look or just make whatever banner you want to be displayed on the field.
Above all, you can download pre-made faces, bats, stadiums, kits etc. to use it with your game. Have fun:)
Labels: Cricket , Resources , Tips 'n' Tricks
India in its colors..
Over the centuries, colors have been used for signifying meanings in heraldry, given to the months of the year and the seasons, religious symbolism, and for everything from weddings to babies. Color is the most important element of India, from bright colorful clothes to beautiful and creative paintings, pottery and handicrafts. From mouth watering Indian cuisines to the seasons and festivals, it all reflects the distinctive and rich culture and colorful spirit of the people of India. Here in my collection I have tried to have colors, themselves speak of India and its spirit.
Note: The above images have just been edited by me. Thanks and credits to the original photographers for the image.
I feel this collection is incomplete because several aspects of the indian culture and spirit have not been included. I hope to add other images to this collection.
Agent based navigation in a 3D maze
Introduction
Project Overview
We have used Unreal Tournament (UT), which is a commercial-off-the-shelf (COTS) game system, as a platform to create our 3D maze. UT game engine provides comprehensive tools for the creation of the maze along with advanced visualizations for realistic game play. The UT bots in the maze introduced by JBOT client will be controlled by a Java program that would define its path for the SAR operation in the maze. Three UT bots will be performing three different kinds of searches (Depth-first-search, Breadth-first-search and A*(Star) search) in the same maze simultaneously. The efficiency of these algorithms depends on the map of the terrain and the destination location. By using different maps, the efficiency of the algorithms in different SAR operations can be evaluated.
Project Poster
Labels: Java , My work , Projects , Resources , Simulation
TicTacToe Xtreme
The Game Screen
You can download this game for free. Just follow the link below:
Download
BalloonStrike
Is your hard disk running out of space?
Considering this increase in capacity of 200,000 to 1 and a fall in price of 10 to 1, I reckon, roughly, that by 30 years hence we will be looking at an Exabyte drive selling less than a $100 giving us the capability of storing data equivalent of about 50,000 years of DVD quality video or if you are rich enough to buy five of those you shall be able to store all words ever spoken by human beings till date. And you think you have accumulated enough crap in your hard disk today! Then what will you have to say in years to come? Although I suspect, there will always be those who will still be using their 1TB thumb drive to store their “important” stuff.
Labels: Articles , Blog Entries
The First Click
The idea of game programming struck me when I was talking to a friend about doing something during the holidays. I began researching about programming games using C++. I chose C++ because I was very familiar with most (if not all) aspects of this language. During my research I came across this word “Allegro” a number of times. My next step, as any amateur researcher, was to check for “Allegro” on Wikipedia and what came up was:
http//en.wikipedia.org/wiki/Allegro_library
The functionality of the library includes support for basic 2D graphics, image manipulation, text output, audio output, midi music, input and timers, as well as additional routines for fixed-point and floating-point matrix arithmetic, Unicode strings, file system access, file manipulation, data files, and (limited, software-only) 3D graphics.”
This description was good enough for me to look for some online site that describes how to download and install allegro to work with my Microsoft Visual C++ Express Edition 2005.
Deviating from the topic let me first talk a bit about Microsoft Visual C++ for those who are hearing it for the first time.
“Microsoft Visual C++ (often abbreviated as MSVC) is a commercial integrated development environment (IDE) product engineered by Microsoft for the C, C++, and C++/CLI programming languages. It has tools for developing and debugging C++ code. The idea of express editions, according to Microsoft, is to provide streamlined, easy-to-use and easy-to-learn IDEs for less serious users, such as hobbyists and students.”
In simple terms, it just provides a platform for you to write your codes, compile them and create executables. Other C++ IDE is DEV C++ which is preferred by other programmers. However I will stick to explaining MSVC since I like its interface, formatting and appearance.
Coming back to Allegro,
After a Google search I found these websites dedicated to Allegro Library.
· http//www.talula.demon.co.uk/allegro/readme.html . This might be helpful to understand more about Allegro and download latest versions and tutorials.
· http//wiki.allegro.cc/. This site contains most information you would need with extensive resources and hyperlinks.
· http//www.allegro.cc/ . This is a forum, which will be really helpful for troubleshooting and learning new stuff.
After going through the various sites I finally found this page which was dedicated to configuring allegro with MSVC 2005.
http//wiki.allegro.cc/index.php?title=Visual_C%2B%2B_Express_2005
I followed the links provided to download the compatible version of allegro and followed the instructions to install it. After some initial troubles with the configuration settings I managed to get allegro working however with a slightly different configuration setting than what was listed:
- Select Project / Properties....
- Under Configuration Properties / C/C++ / General, change Debug Information Format to Program Database for Edit & Continue (/ZI).
- Under Configuration Properties / C/C++ / Optimization, change Optimization to Disabled.
- Under Configuration Properties / C/C++ / Code Generation, change Runtime Library to Multi-threaded Debug DLL (/MDd).
- Under Configuration Properties / Linker / Input, add alleg.lib to Additional Dependencies.
- Under Configuration Properties / Linker / Debugging, change Generate Debug Info to Yes (/DEBUG).
- Press OK.
I added alleg.lib to the additional dependencies instead of alld.lib
Then it was time to start learning allegro programming.
The first and most useful tutorial that I used was C++ Game programming at http//www.cppgameprogramming.com/
It covered almost everything that I needed. Then to take a look at the advanced allegro features I directly jumped to the Allegro Manual and documentation which is so well-written that I didn’t require any further tutorials. With this I was on my way with game programming.
Labels: Allegro , C++ , Game Programming , Resources
Welcome!
I am Amulya Khare and this is my blog cum website. You can know more about me by checking out my profile. My views and ideas on topics that grab my attention end up in the blog entries. I have uploaded my works and projects here for you to have a look at. Also i have included resources and articles that you might find interesting or helpful.
You can give your opinion, thoughts or ideas about this website or any of my work. If you need any help or just want to drop by and say "Hi!", feel free to contact me.
Have fun at my site..