Damage formula is split into 2 parts [Use tool Wallmarket to have a better idea]. Let's use Conformer as an example.
First, the type of attack. Conformer uses A
A is Physical. Check accuracy, Critical, and Ultimate Weapon formula (only used for the 9 ally Ultimate Weapons)
Next, the sub type. Conformer uses 3.
3 sets the power value to be the average of enemy level.
3 is a subtype of A - so it HAS to be used with A.
The byte in full is thus A3, in the game, at Attacker's Data (99E308) + 40.
The game actually splits this back up into A and 3 in function 5D17C7 and places these values in Attacker's Data (99E308) + A0 and Attacker's Data (99E308) + A4.
From here, for some reason, it assigns another value for the type and subtype based on these values.
Conformer ends up with a Type of 5 (from table 8FF068) and a Subtype of D (from table 7B7720).
From here, 5 and D (for Conformer) are also used for other functions and to set certain conditions.
The alternate SubType value is placed in Attacker's Data (99E308) + BC
The alternate Type value is used (in function 5D17C7) to set other conditions (3 total).
If a Physical attack is set, it will set an unknown flag to Attacker's Data (99E308) + 6C.
If Special Formula (Type 7) is set, it does a meaningless(?) check to make sure that the Subtype lies within a range.
If Ultimate Weapon formula is set (A), it will assign a Subtype flag to Attacker's Data (99E308) + BC. As stated above, for Conformer, this is D.
The Ultimate Weapon power is calculated from hardcoded data at function 5DC880.
Since Yuffie's Conformer is set to use Subtype 03 (changed by engine, remember, to 0D) the jump at 5DC901 will be to 5DCD83 [Set power value to Enemy average level].
And there you go. Funnily enough, the engine does something strange there and sets eax to 1 and then tests if it is 0. lmao. Not sure why?
So, the function 5DC880 deals with the 9 Ultimate Weapon calcs. It uses jumps 0A, 0B, 0C, 0D, 1E, 1F, 20, 21, 22.
It's likely many more of the core calculations are done in this same function, and I will be testing that soon.