Is it a scam - LCA Average Pay vs Actual Pay?

I have been going through lot of resources about the average pay of a software engineer(java developer) I came across different results but let me straighten outta those in four ways
1.The Average pay of Java developer is 96,000$ ( basically this for mid level exp folks ) but my LCA is filled as 76k with junior level exp) , my question is when we find out another job ,definitely consultants market your resume around mid level(saying a bullshit words that your resume won’t be selected if you have junior level exp) technically it’s not true . But when they know that they market resume with mid level , why they won’t do wage according to it ?
2. If we find out a new job with mid level exp who is willing to pay around 100k per year , but still I get paid as in the LCA , it means my agency is cheating on me without showing proper wage to LCA DEP ? Or when we are filling a new LCA when we move to new job ?
3. In most cases I don’t understand how agency’s prepare LCA for h1b candidates, none of them follow transparency.
4. When the companies paying a median based pay to developers, why does most of the agencies files LCA less ?? Even though they know what they get from client ? Is it a modern scam ? How does it work actually the LCA Filling.

Finally I just want clear this out because how agency’s gets benefited by h1b workers , where h1b workers will be broke all the time by paying god damn taxes.

Usually, LCA will not get approved, if the wage is less than the average wage for the position. You can check article below to find out minimum wage. Now, coming to how the companies try to market and the recruiters bargain with candidates is a totally different thing…There is definitely margins for everyone, so it is not black and white.

The reason they put in less amount in LCA is that they do not want to pay more than what is needed for compliance reasons and how they are advertising the position.