The problem is that you don't know which directories need to be verified until you have parsed and validated the JSON. I don't know if it makes sense to do that in the Global handler.

I'd also like to move more core logic out of Global.asax because I would like to be able to reload Geosite data without having to trigger an Application_Start event.