I think I might know what’s happening now.
During the update process, the “updater” compares the checksum of files in the existing installation (let’s say CP 1.1.4) with those at https://api.wordpress.org/core/checksums/1.0/?version=4.9.15&locale=en_US (locale may vary). If the checksums match, the file is ignored.
If we take fsockopen.php as an example, the copy of the file in CP 1.1.4 is the same as in WP 4.9.15 and so the checksum will also be the same.
But, if fsockopen.php has been changed since 1.1.4 - as it was in CP 1.2.0 - this change won’t be recognised, as the “upgrader” is comparing the checksums of the CP 1.1.4 version with the WP 4.9.15 version – which, as already mentioned, are identical.
So, when upgrading to CP 1.2.0, fsockopen.php is subsequently added to a “skip” list and ignored - along with several other files.
I may be miles off with this so @james will need to confirm.