Example #1
0
 internal override byte[] GetCodeInfo(ref int stackSize, ref int initLocals, ref int EHCount)
 {
     stackSize = this.m_stackSize;
     if (this.m_exceptionHeader != null && this.m_exceptionHeader.Length != 0)
     {
         if (this.m_exceptionHeader.Length < 4)
         {
             throw new FormatException();
         }
         if (((int)this.m_exceptionHeader[0] & 64) != 0)
         {
             byte[] numArray = new byte[4];
             for (int index = 0; index < 3; ++index)
             {
                 numArray[index] = this.m_exceptionHeader[index + 1];
             }
             EHCount = (BitConverter.ToInt32(numArray, 0) - 4) / 24;
         }
         else
         {
             EHCount = ((int)this.m_exceptionHeader[1] - 2) / 12;
         }
     }
     else
     {
         EHCount = DynamicResolver.CalculateNumberOfExceptions(this.m_exceptions);
     }
     initLocals = this.m_method.InitLocals ? 1 : 0;
     return(this.m_code);
 }
 // Token: 0x060048E2 RID: 18658 RVA: 0x00107444 File Offset: 0x00105644
 internal override byte[] GetCodeInfo(ref int stackSize, ref int initLocals, ref int EHCount)
 {
     stackSize = this.m_stackSize;
     if (this.m_exceptionHeader != null && this.m_exceptionHeader.Length != 0)
     {
         if (this.m_exceptionHeader.Length < 4)
         {
             throw new FormatException();
         }
         byte b = this.m_exceptionHeader[0];
         if ((b & 64) != 0)
         {
             byte[] array = new byte[4];
             for (int i = 0; i < 3; i++)
             {
                 array[i] = this.m_exceptionHeader[i + 1];
             }
             EHCount = (BitConverter.ToInt32(array, 0) - 4) / 24;
         }
         else
         {
             EHCount = (int)((this.m_exceptionHeader[1] - 2) / 12);
         }
     }
     else
     {
         EHCount = DynamicResolver.CalculateNumberOfExceptions(this.m_exceptions);
     }
     initLocals = (this.m_method.InitLocals ? 1 : 0);
     return(this.m_code);
 }