I did a bit of spreadsheet magic to approximate the spellpower values you were using into an exponential function -

https://docs.google.com/spreadsheet/...2hwaFBwUEVmLXc
So you could do something like this instead of using your spellpower table:

Lua Code:

local exp, mult = 1.00936754973658, 68.6945347210951

local spellpower = mult * (exp ^ iLvl)

The error should be pretty small (a max of 4 points of spellpower with the given values, so < 0.1%) and you have the added benefits of it working for item levels not in your table.

Edit: Tested ingame and seems to be working pretty well.

The only exception I found so far was armor, which seems to scale differently. I have a Sixteen-Fanged Crown, upgraded once. It has 3208 unupgraded armor and 3250 after the upgrade, scaling it like the other stats yields 3330 armor...