1) How does the program know NOT to search for ranges that someone else has already searched for? is it automated in the code to get previous searches from other users online? If so, does that mean that it would be a bad idea to run it on an air gapped PC?
The program does not know, but there are MANY ranges to check. That's why a pool would need to be formed. The odds of same range being checked early in the search would be rare and even if, those numbers would be small.
2) I am currently running bat files: 10,17,18... would running them again after scan completion search for different ranges within 10 & 17 & 18 automatically?
Which version are you using?
3) Can I try my luck and use BSGS to search for other wallets' private keys (example: wallet #64 or #66)? If so can someone please Eli5 how to do it? (where to input other wallet's public key and how to set range?
Depends on which version I put out you are using. One version only searches for #120 subtracted range, the other version you could use for any wallet/range.
For #64 or #66, it cannot be used because we do not know the public key for those addresses.