public T FindTypeByName <T>(string name) where T : class, IDescriptor { if (FileDescriptor.smethod_4(name, '.') != -1) { goto IL_49; } goto IL_FD; uint arg_BD_0; while (true) { IL_B8: uint num; switch ((num = (arg_BD_0 ^ 464370408u)) % 9u) { case 0u: { T t; arg_BD_0 = (((t.File == this) ? 192187766u : 338264466u) ^ num * 343090665u); continue; } case 2u: name = FileDescriptor.smethod_1(this.Package, Module.smethod_36 <string>(1323488018u), name); arg_BD_0 = (num * 3152909545u ^ 3774283465u); continue; case 3u: { T t = this.DescriptorPool.FindSymbol <T>(name); arg_BD_0 = 1469809664u; continue; } case 4u: goto IL_FD; case 5u: goto IL_49; case 6u: { T t; return(t); } case 7u: { T t; arg_BD_0 = (((t != null) ? 484983571u : 1629139297u) ^ num * 2175120638u); continue; } case 8u: goto IL_11C; } break; } return(default(T)); IL_11C: return(default(T)); IL_49: arg_BD_0 = 1699441690u; goto IL_B8; IL_FD: arg_BD_0 = ((FileDescriptor.smethod_2(this.Package) <= 0) ? 1039614224u : 1192626073u); goto IL_B8; }