How a Silencer sprites work: Sprite files are similar to tilebanks, and you should read that file first. HEADER (344 bytes): The header is 344 bytes * the number of sprites. Most of the header is unknown data. 344 byte HEADER: word Width word Height dwrd unknown (expected to be two words, appears to be an offset value for animations--x and y most definitely) dwrd const_0_1 (these next three are similar to banks.) dwrd SpriteSize dwrd OffsetInData remainder: unknown, usually but not always 0s. When it's not all zeros, odds are our dumped sprite looks wrong. DATA HEADER: dword Size of data: (Should equal all of the SpriteSizes summed together) DATA: Simply a chunk of data 'Size of Data' bytes long. Compressed with an odd RLE routine. The compression algorithm is identical to the one used in tiles, but this time around the width and height of each image isn't 64.