Those files are actually the C++ Standard Library implementation (see the p
in their name). From the C++ Standard Library
section on CRT Library Features | Microsoft Docs:
When you build a release version of your project, one of the basic C
run-time libraries (libcmt.lib, msvcmrt.lib, msvcrt.lib) is linked by
default, depending on the compiler option you choose (multithreaded,
DLL, /clr). If you include one of the C++ Standard Library header
files in your code, a C++ Standard Library will be linked in
automatically by Visual C++ at compile time. For example:
#include <ios>
For binary compatibility, more than one DLL file may be specified by a
single import library. Version updates may introduce dot libraries,
separate DLLs that introduce new library functionality. For example,
Visual Studio 2017 version 15.6 introduced msvcp140_1.dll to support
additional standard library functionality without breaking the ABI
supported by msvcp140.dll. The msvcprt.lib import library included in
the toolset for Visual Studio 2017 version 15.6 supports both DLLs,
and the vcredist for this version installs both DLLs. Once shipped, a
dot library has a fixed ABI, and will never have a dependency on a
later dot library.
Since Microsoft's C++ Standard Library is open-source you can easily look up what those additional features are, e.g. stl/CMakeLists.txt
even describes the files:
# msvcp140_1.dll (the memory_resource satellite)
and
# msvcp140_2.dll (the special math satellite)
However the source filenames are already descriptive on their own.