There are about 44,000 airports in the world. If you pack the lat and long into 32 bit binary integers, you would need 8 bytes. The ICAO code would need 4 more bytes, so that is 12 bytes for each airport. That is over 528 k of memory needed, which would require a SD card of some kind on the Arduino. Even with just the USA you would require over 180k. And then how would you handle airports that don't have an ICAO code?