So I found that the .sc files have a fingerprint and hash on them, not allowing you to edit them, however, the _tex.sc files don't. I was able to replace the chr_princess_tex.sc with chr_electro_wiz_tex.sc and it worked using filza on jailbreak. The problem is that the normal .sc files can't be changed, so it ends up trying to perform an animation meant for the princess texture, on the electro wizard, making the textures offset and out of place.
I am trying to find a way to use LZMA and the dumpsc.py script to reencrypt edited .png files that will save them as the correct encrypted .sc files. Do you know enough about the script to reverse the process?
As I said before, the reverse process is relatively simple. Unfortunately I'm a bit busy at work to code it, but here is an outline:
0- Change your PNG file as wished; to keep it simple, keep the image dimensions the same.
1- Load the image using PIL/pillow, convert it to an 1D array of pixels, encoded as 4 bytes per pixel (RGBA)
2- Write the header:
2.1- byte 0 is 0x01
2.2- bytes 1-4 should be the number of pixels * the number of bytes per pixel (4), little endian notation
2.3- byte 5 should be 0x00
2.4- bytes 6-7 are the image width, little endian
2.5- bytes 8-9 are the image height, little endian
3- Write header + image data to a file, compress using LZMA
4- Remove 4 0x00 bytes from position 9 of the compressed file
5- Save as .sc
Some sprite map files have the image pixel format in them, this could probably
cause some errors; you would need to note the pixel format of the source image and re-encode the pixels in the original format, but this is outside my knowledge, the instructions above are for RGBA8888. Check the convert_pixel function and reverse the binary operations there.