A image unpacker written in Assembly for unpacking sprite-compiled files (as used by games like Tibia) into viewable BMP images.
Note: This application was written in 2009~2010, so it might not support changes in the .spr format that might have happened.
The code has been commented thoroughly for better understanding of each step. Jump points should also be self-explanatory Functions and jump points are underscored, but functions begin with an underscore.
Rough explanation of the structure:
|_main:385
| open sprites file
| create output directory
--->|_read_sprites(file_pointer):145
---- |Read header
---- |loop: read sprites (read pixels/calculate position)
---------> _create_empty_sprite(sprite_index):61
---- | Write to file
For some information regarding x86 Asm instruction set, visit the following page: http://www.hep.wisc.edu/~pinghc/x86AssmTutorial.htm