Does anyone knows which part of the Bitcoin Core source code contains the proof of work for mining, creating of block and adding to blockchain? What are the files and functions involved?
The mining functionality that does background mining in the Bitcoin core was removed in August of 2016. See the following change log:
The mining code itself is still available for testing and experimentation and is located in the files called "miner.cpp" and "miner.h" which are in the main src directory.