I don't believe 115 GB is justified by the 1000 vs. 1024 calculation! A 128 GB stick should really have 128,000,000,000 (128 billion) bytes. That is also what is advertised in the small print on the backside of the package. And that is also the way I have observed with: HDD, SSD, SD- or USB-memory from OTHER MANUFACTURERS THAN SanDisk!
E.g.: If I look at all 4 of my 2 TB HDDs, all of them show a little over 2 trillion (2,000,000,000,000) bytes. Windows will simultaneously show them as 1.81 TB because of the 1024-calculation. Same goes for a 32 GB USB memory stick I just bought from Lexar, which shows 32 billion (32,000,000,000) bytes, being recalculated to - correctly - 29.8 GB).
Unfortunately, I have observed this missing space especially with SanDisk in the last couple of years! Together with the correctly behaving 32 GB Lexar I also bought a SanDisk Ultra 128 GB. And it comes with ONLY 123,000,000,000 (123 billion) bytes instead of 128,000,000,000 (128 billion)! So, like the OP I get only 114 GB shown in Windows, while it should be really (128,000,000,000 / 1024^3) 119 GB! Now there are definitely 5 GB missing!
I can only speculate in SanDisk's favor that they need this extra space for the firmware and some sort of wear leveling. But in that case, it is still false advertisement! If they need 5 GB for wear leveling, they would have to advertise the stick with 5 GB less, even by their standards which are written in small print on the back!
I'm thinking about contacting customer care, but I believe they will just ask me to send in the stick and to refund my money. But nothing will change. I can only suggest to try other manufacturers and compare!