I'm trying to analyze a decryption algorithm I'm reverse engineering and am wondering if anyone would from looking at the logic be able to identify one of the standard/common ciphers people use.
The decryption code I'm extracting this from calls out to these functions which are all in essence very similar (they are about 50 functions in total that call to one another), they all are composed of a series of while loops, if statements and VERY LONG switch/case statements which seem to analyze each position or byte value for a position and decide a course of action to generate the output from it.
Some of these functions are 11-30k lines in length, which makes me wonder if this is how the original code was built or if this might be a compiler optimization deal that expands the original logic to so many lines like that.
Here's an extract for 2 of these functions: https://gist.github.com/robertoandrade/ac3a810b82ba48d3b136
I renamed them both just for ease of identification and both have a similar signature:
int ____________________switch_magic (followed by a number just to help count how many of them exist).
PS: I found the same logic in a series of applications I've tried to reverse engineering, hence my assumption this is some kind of common algorithm I'm unable to identify by looking at the obfuscated decompiled code.