@Srikanth one hacky method to do this would be via a webhook. Run new leads through a 'hook that returns a numeric counter for the "index" of a lead within its company (based of course on a database on the webserver running the webhook).
For example, srikanth@example.com becomes 1, josh@example.com 2. Then in your smart list you could check Lead_Number_Within_Company <= 10.
Note when a lead opts out you'd need to renumber the other leads (run them thru the flow again). None of this would be pretty.
But there are some flaws in this simple idea anyway. One is that 10 leads in 50-person company may be too much but 10 out of 1000 isn't enough. Another is the the first 10 leads added to your system have no inherent significance. If you keep only nurturing those same 10 you're missing out. Conversely, if you always got a random 10, you'd be missing out on the value of repeated contact with the same lead. So you really need to apply some more intelligence.