// Token: 0x06000183 RID: 387 RVA: 0x000122DC File Offset: 0x000104DC internal void method_1(long long_0) { if (Assembly.GetCallingAssembly() != typeof(Class36.Class37).Assembly) { return; } if (!Class36.smethod_1()) { return; } int[] array = new int[4]; array[1] = -1775563011; array[0] = -468888275; array[2] = 108474532; array[3] = -50765676; int num = -1640531527; int num2 = (int)long_0; int num3 = (int)(long_0 >> 32); int num4 = 0; for (int num5 = 0; num5 != 32; num5++) { num2 += ((num3 << 4 ^ num3 >> 5) + num3 ^ num4 + array[num4 & 3]); num4 += num; num3 += ((num2 << 4 ^ num2 >> 5) + num2 ^ num4 + array[num4 >> 11 & 3]); } for (int num6 = 0; num6 != 4; num6++) { array[num6] = 0; } this.int_0 = num2; this.int_1 = num3; }
// Token: 0x06000182 RID: 386 RVA: 0x000121F4 File Offset: 0x000103F4 internal long method_0() { if (Assembly.GetCallingAssembly() != typeof(Class36.Class37).Assembly) { return(2918384L); } if (!Class36.smethod_1()) { return(2918384L); } int[] array = new int[] { 0, 0, 0, -50765676 }; array[1] = -1775563011; array[2] = 108474532; array[0] = -468888275; int num = this.int_0; int num2 = this.int_1; int num3 = -1640531527; int num4 = -957401312; for (int num5 = 0; num5 != 32; num5++) { num2 -= ((num << 4 ^ num >> 5) + num ^ num4 + array[num4 >> 11 & 3]); num4 -= num3; num -= ((num2 << 4 ^ num2 >> 5) + num2 ^ num4 + array[num4 & 3]); } for (int num6 = 0; num6 != 4; num6++) { array[num6] = 0; } ulong num7 = (ulong)((ulong)((long)num2) << 32); return((long)(num7 | (ulong)num)); }
// Token: 0x0600017D RID: 381 RVA: 0x00011FAC File Offset: 0x000101AC internal static long smethod_0() { if (Assembly.GetCallingAssembly() == typeof(Class36).Assembly && Class36.smethod_1()) { long result; lock (Class36.class37_0) { long num = Class36.class37_0.method_0(); if (num == 0L) { Assembly executingAssembly = Assembly.GetExecutingAssembly(); List <byte> list = new List <byte>(); AssemblyName assemblyName; try { assemblyName = executingAssembly.GetName(); } catch { assemblyName = new AssemblyName(executingAssembly.FullName); } byte[] array = assemblyName.GetPublicKeyToken(); if (array != null && array.Length == 0) { array = null; } if (array != null) { list.AddRange(array); } list.AddRange(Encoding.Unicode.GetBytes(assemblyName.Name)); int num2 = Class36.smethod_3(typeof(Class36)); int num3 = Class36.Class40.smethod_0(); list.Add((byte)(num2 >> 8)); list.Add((byte)(num3 >> 8)); list.Add((byte)(num2 >> 16)); list.Add((byte)(num3 >> 16)); list.Add((byte)(num2 >> 24)); list.Add((byte)num3); list.Add((byte)num2); list.Add((byte)(num3 >> 24)); int count = list.Count; ulong num4 = 0UL; for (int num5 = 0; num5 != count; num5++) { num4 += (ulong)list[num5]; num4 += num4 << 20; num4 ^= num4 >> 12; list[num5] = 0; } num4 += num4 << 6; num4 ^= num4 >> 22; num4 += num4 << 30; num = (long)num4; num ^= 4443295120935712978L; Class36.class37_0.method_1(num); } result = num; } return(result); } return(0L); }