public static object DecodeRK(uint value) { bool flag = (value & 1u) == 1u; bool flag2 = (value & 2u) == 0u; object result; if (flag2) { ulong data = (ulong)(value & 4294967292u) << 32; double num = Record.TreatUInt64AsDouble(data); if (flag) { num /= 100.0; } result = num; } else { int num2 = checked ((int)(value & 4294967292u)) >> 2; if (flag) { result = num2 / 100m; } else { result = num2; } } return(result); }