How would I measure current using current sense resistor at high voltages(-50 / +50V)
Well, one possibility is to float the ADC.  Call one end of the sense resistor 'ground', power a differential ADC with an isolated DC-DC converter, talk to it through a digital isolator.  Analog Devices makes some combination isolated converter/digital isolator parts that could work, but they're a bit pricey.  

If that's too expensive, then dividing down is probably the most reasonable method.  You'll have to be very careful with the resistor matching and temperature coefficients to make sure the division ratios are very close, if you want to use a differential amplifier.  If you convert each 'end' of the resistor separately, then you have some more flexibility in terms of digital calibration after the ADC.  This would also require an ADC with a lot of bits.  

Perhaps another option would be to divide down both sides of the sense resistor and use a differential amplifier, then feed both the amplified differential voltage as well as the common mode voltage (probably just the absolute divided down voltage on one end of the sense resistor) into two different ADC channels, then calibrate and compensate the common mode to differential gain due to mismatched dividers after the ADC.  I'm thinking this may be the best option here.  

Alright, let's do the math for that 3rd option.  Let's say \$V_a\$ and 
\$V_b\$ are the voltages on each end of the sense resistor.  You want to know \$V_a-V_b\$.  So you divide each of them with resistive dividers.  The problem is that resistors aren't perfect, so you get a divider with gain \$A\$ for \$V_a\$ and a divider with gain \$B\$ for \$V_b\$.  Then you want to get high resolution, so you use a differential amplifier with gain \$G\$ to subtract those two.  You get \$V_{out} = G(A V_a-B V_b)\$.  Let's rearrange that a bit.  

\$V_{out} = G(A V_a - B V_b + A V_b - A V_b)\$

\$V_{out} = G(A V_a - A V_b - B V_b + A V_b)\$

\$V_{out} = G A (V_a - V_b) - G (B - A) V_b\$

Hmm.  That's got the term you want, \$V_a-V_b\$, but it also has two extra terms - \$G A\$ and \$G (B-A) V_b\$.  \$G A\$ is constant, and so is easy to deal with.  But \$G (B-A) V_b\$ involves \$V_b\$.  The idea is that by measuring \$V_b\$ (or \$V_a\$) separately, you can calculate \$G (B-A) V_b\$ for each point and compensate for the 'common mode to differential gain' caused by the mismatched dividers.  The cost is an additional ADC channel, some math, and some calibration method, but it should be relatively easy to implement.  

The problem term is really just \$B-A\$ as \$G\$, \$A\$, and \$B\$ are probably going to be accurate enough by design.  You'll have to measure it (directly with a meter or indirectly by applying known voltages and/or currents) on a per-device basis and possibly even do some temperature compensation, depending on the accuracy you're hoping to achieve.