Difference between increasing microphone sensitivity and amplifying output signal in software
From a really basic point of view: you can't amplify what you can't see.

There's two things to that:


Your microphone converts sound waves (changing air pressure) to voltage. The sensitivity is how much volts you get per sound volume. That voltage get digitized by some sound card to digital values; that means that some range of very low voltages get mapped to a discrete set of digital numbers. The less sensitive your microphone, the smaller the voltages, the more get mapped to a single value, for example 0. You can amplify zero all you like: it's going to stay zero. The same goes for all other digitization bins: The smaller your mic's output amplitude, the fewer of the potential "bins" get actually used, the more quantization noise you get.
The digitizer in your sound card sees the voltage-converted sound signal, and it sees additional noise, for example from random electron fluctuations in its electronics, and from cables picking up electromagnetic waves etc. The lower the sensitivity, the lower the wanted signal, the worse the ratio between signal and that noise – you get bad SNR. You can't "solve" SNR afterwards: if you amplify, you just amplify the noise part as much as you amplify the signal part, so you lose.


TL;DR: Can't recover information you never got.