Seems that there is no way you could possibly determine that given the circumstances besides speculating about supply and demand.
Because they know their salary, and what is supposed to be for their role?
1) Someone like Verizon that uses it for cheap labor
2) Someone like Netflix that wants to hire good engineers
The way the program works now (before those changes?), it's much easier for group 1 to fill its positions via staffing agencies overseas. That's true even if a company from group 2 already know who they want to hire, since it's a lottery system.
Would be easier if this were two different visas (or program got revamped in a way that it actually works as it's sold to public), but we can't have "Cheap Human Labor Visa" for various reasons.
But, there may be 300,000 unemployed tech workers. While I also find it hard to believe none fit the bill, I believe most don't. So many are out of random bootcamps, self proclaimed programmers who can't solve fizzbuzz. I also have not seen any H1B in my career that is good and willing to take a 60% haircut. In my own company, they are the highest paid and are grumpy we are not paying more. They are all really good engineers too. Heck, when I was looking to move to the US, I refused tons of low paying jobs. When we opened up backend programming jobs, only a handful American citizens even applied. We hired one of them, while we needed 4. The rest didn't make it through the interview process. We also rejected tons of H1bs because they didnt make it through the process. Same salary range offered to H1Bs. And we are a fully remote. So I wonder where are these 300,000 unemployed tech workers.
Cut the fraud and it automatically becomes a decent program. Now, if one is entirely against the program of attracting foreign talent, thats a different discussion.