EV shouldn't be a problem since it's only multiplying everything by x (linear), but contrast shouldn't be saved then, that's right.
You can simply do the same highlight compression as in corona by using this formula for each channel like this:
n1 is the amount of compression
r1, g1, b1 is the (float) value of the pixel in r, g or b
r1 * (1+r1/(n1*n1))/(1+r1)
g1 * (1+g1/(n1*n1))/(1+g1)
b1 * (1+b1/(n1*n1))/(1+b1)