I actually looked into this before I used it. The docs indicate that Assembly.Location will not be null, but might be an empty string:

http://msdn.microsoft.com/en-us/library/system.reflection.assembly.location(v=vs.110).aspx

> If the assembly is loaded from a byte array, such as when using the Load(Byte[]) method overload, the value returned is an empty string ("").