NSRange is just a C struct as described
in this document. You can simply retrieve the location and length from each range and work out if they overlap.
There is also the very handy
NSIntersectionRange function which will return a new range representing the intersection (or overlap). This basically does exactly what you want.