It doesn't sound like everyone loses if the companies get cheaper labor, the workers get a chance to work even if for less than they would if they were US citizens, and the more routine tech jobs get filled which probably creates more interesting jobs for those who are actually passionate about their field.
I'm not familar with any information about US companies charging massive fees to the workers. Is there a source for that part of your comment?
Correction, the companies that I have experience with were not US based.
I will elaborate on why everyone loses. The workers lose because they are paid less than if they were free to find the highest paying job, and have to invest a large amount of money to get here (points 2 and 3.) America loses because the workers are forced into earning less money than they would if they didn't need to go with these companies to give them more than a remote chance of getting a visa. This undercuts American workers (point 1.)
The governments may let these companies do this is because the companies pass off their process as selecting higher quality visa candidates. Immigrants like them because they know they will not be turned down for a visa if they go through the company (and getting turned down causes problems later - what the hell??). Still, bad.
I'm not familar with any information about US companies charging massive fees to the workers. Is there a source for that part of your comment?