So I have a coordinates - latitude & longitude. Is there a way or a library out there that would return a country based on those coordinates? Google services or any other API will not be suited as I need to be able to do it offline and handle big amounts of requests also.
What are you looking for is called reverse geocoding.
For javascript, there is an OfflineGeocoder library, that uses GeoNames data.