okay I managed to solve this using the file system, since the indexes are stored in folders under app_data/search. here's how I did it, if there is a better way, please let me know!
|var indexes = new DirectoryInfo(Server.MapPath("~/App_Data/Search")).GetDirectories();
|if (indexes.Length == 0) return results;
| results = SearchManager.Search(query, indexes.Name, 0, MAX_RESULTS, "AnyWord", out count);
one idea I can see from this is if there are more than 1 search directory, and the results are empty, proceed down the line and append more results...