It is possible to model the launch vehicle, including staging, by assuming gravity, drag etc. losses are constant for each launch vehicle. Data about maximum payload for a specific orbit can be used to estimate the losses.
To demonstrate the calculations, I will use the Falcon 9 as an example, as it is a simple 2-stage launcher. The calculations should work for any number of stages, but requires estimating core stage fuel burn when applied to launchers with boosters. This is because each separation event (and even each throttle change when using engines with different specific impulses, for the most accurate results), must be modeled as a separate stage when using the multi-stage rocket equation.
Falcon 9 has a maximum payload of 22,800 kg to LEO. Including this payload, the 2nd stage has a dry mass of 26,800 kg and a wet mass of 134,300 kg, and a vacuum specific impulse of 348s. This gives it a $\Delta v$ of 5,502 m/s.
To calculate the delta-v of the 1st stage, the mass of the 2nd stage and payload must be included, giving it a dry mass of 156,500 kg and a wet mass of 567,400 kg. Assuming an average specific impulse halfway between the sea level and vacuum values (297s), this gives a first stage $\Delta v$ of 3,753 m/s, for a total $\Delta v$ of 9,255 m/s.
According to this answer, SpaceX's definition of LEO is 200x360 km. Using the vis-viva equation, the periapsis velocity can be determined to be 7,833 m/s. The losses involved in the launch can be calculated by subtracting the periapsis velocity from the delta-v, giving 1422 m/s of losses.
The accuracy of the constant loss assumption can be tested by using another data point. The GTO payload of Falcon 9 is 8,300 kg. Repeating the same calculations as for LEO gives a $\Delta v$ of 11,731 m/s, and a velocity of 10,242 m/s at 200 km. This gives losses of 1,489 m/s, which is fairly close to the LEO value. Since C3 > 0 is even higher energy than GTO, the GTO losses are probably more representative than the LEO losses. Therefore, the velocity at 200 km will be assumed to be $\Delta v - 1489$ m/s.
The next step is converting the velocity at 200 km into a C3 value, using the formula $C3 = v^2 - v_e^2$, where $v_e$ is the escape velocity (11,012 m/s at 200 km). The C3 can then be plotted for a range of payload values to obtain a graph. Calculating the C3 manually for a suitable number of payload values is tedious, so I have made a script to automate this process.
This produces the following graph: 