Let's use Firefox as the software you use.
First, you proxify Firefox, and set the proxy to No proxy. Every request will be routed to Germany (e.g
germany-proxy.de) and your IP will show as coming from Germany. Nothing unexpected here, right?
Next, you configure Firefox and use a proxy on France (e.g
france-proxy.fr). Firefox will try to connect to
france-proxy.fr, and the request is intercepted by the proxifier. The connection gets redirected to
germany-proxy.de, which will establish the connection to
france-proxy.fr. On this moment,
france-proxy.fr thinks you are from Germany, and
germany-proxy.de knows where you are. The destination have not received anything from you yet.
If Firefox connects to, let's say, Google, is
france-proxy.fr the one connecting, so Google will think you are connecting from France. France will think you are connecting from Germany, and Germany knows where you live.
That's a oversimplified version of Tor. On Tor, you connect to a proxy, that connects to another one, that connects to another one . . . that connects to the destination, and every hop is encrypted.