I know there are services that perform reverse geocoding, given a pair of lat-long and return an approximate address, city, etc.
The problem I have is that given a lat-long, I want to return the region it falls under (on the map) but the region is custom defined (e.g. a random square on the map).
For example, I have the following picture with different custom regions (the region shapes are stored in a KMZ file).
How can I determine which red polygon a lat-long falls inside? Or if it falls outside all of them?