Given rankings and the factors that determined the rankings, what is the best method to reverse engineer the rankings?
Depending on the complexity of the ranking scheme, this might be more or less difficult, but if you have all the inputs and the outputs, it is very possible.

Start by plotting your data and try to see if you can see a pattern, or any obvious correlation, even though not necessarily linear. Do that for each variable.

You can also look at the distribution of your variables (what you call factors) for each of your rank, and see how they differ.

Once you have a better understanding on the relationship between the dependent variable (rank) and the independent variables (factors), then you can either:


Come up with the model right there
Apply a machine learning algorithm (linear/polynomial regression, decision trees, etc.) which will learn the model's parameters for you. Which one you chose will depend on your analysis.