Please direct binary analysis and reverse engineering questions to https://reverseengineering.stackexchange.com/ especially if you are just starting out, since there is already a wealth of relevant knowledge that has been shared there and is frequented by and contributed to by professional reverse engineers and malware analysts.
Possibly relevant existing Q&A:
First and foremost: How can I analyze a potentially harmful binary safely?
If you want to dynamically analyze PE binaries that employ anti-analysis techniques, ScyllaHide, Immunity Debugger and Cheat Engine may be useful. See
for more info.
According to the article A Look at Malware with Virtual Machine Detection, depending on the methods employed to detect whether or not the program is running in a VM it may be straightforward to patch the binary such that those methods do not execute.
A 2006 paper by Ed Skoudis mentioned in the above article called On the Cutting Edge: Thwarting Virtual Machine Detection may also give you some ideas.
The VM detection techniques employed by the binary may also depend on when it was written: according to the 2014 Symantec article Does malware still detect virtual machines?,
Most of the samples use a runtime packer with built in VM detection. Generally, this means the packer or crypter will perform the detections, not the sample itself. Malware authors have realized that it is suspicious when an application detects that it is running on a VM, so they have stopped using those features in recent years.
If this is the case with some of the binaries you would like to analyze, then these may contain useful information:
In addition to traditional methods, there exist binary instrumentation frameworks such as angr and valgrind that accomplish dynamic analysis without ever executing the original object code of the binary.
If none of this is helpful to you, then ask a new question on https://reverseengineering.stackexchange.com/.