Example #1
0
 public MemoryStream m000075(struct03a p0)
 {
     byte[] buffer = new byte[0x8000];
     uint num = p0.f00001b;
     MemoryStream stream = new MemoryStream();
     this.fs.Seek((long) p0.f00005f, SeekOrigin.Begin);
     while (num > 0)
     {
         int count = this.fs.Read(buffer, 0, (int) Math.Min((long) num, (long) buffer.Length));
         stream.Write(buffer, 0, count);
         num -= (uint) count;
     }
     stream.Seek(0L, SeekOrigin.Begin);
     return stream;
 }
Example #2
0
 private void m000051(struct03a p0)
 {
     this.fs.Write(new byte[] { 80, 0x4b, 1, 2, 0x17, 11, 20, 0, 0, 0 }, 0, 10);
     this.fs.Write(BitConverter.GetBytes((ushort) 0), 0, 2);
     this.fs.Write(BitConverter.GetBytes(this.m000077(p0.f000063)), 0, 4);
     this.fs.Write(BitConverter.GetBytes(p0.f000062), 0, 4);
     this.fs.Write(BitConverter.GetBytes(p0.f00001b), 0, 4);
     this.fs.Write(BitConverter.GetBytes(p0.f00001b), 0, 4);
     this.fs.Write(BitConverter.GetBytes((ushort) p0.f000006.Length), 0, 2);
     this.fs.Write(BitConverter.GetBytes((ushort) 0), 0, 2);
     this.fs.Write(BitConverter.GetBytes((ushort) p0.f000007.Length), 0, 2);
     this.fs.Write(BitConverter.GetBytes((ushort) 0), 0, 2);
     this.fs.Write(BitConverter.GetBytes((ushort) 0), 0, 2);
     this.fs.Write(BitConverter.GetBytes((ushort) 0), 0, 2);
     this.fs.Write(BitConverter.GetBytes((ushort) 0x8100), 0, 2);
     this.fs.Write(BitConverter.GetBytes(p0.f000061), 0, 4);
     this.fs.Write(Encoding.UTF8.GetBytes(p0.f000006), 0, p0.f000006.Length);
     this.fs.Write(Encoding.UTF8.GetBytes(p0.f000007), 0, p0.f000007.Length);
 }
Example #3
0
 public struct03a m000073(string p0)
 {
     ushort num2;
     ushort num3;
     ushort num4;
     if (this.f000008 == null)
     {
         throw new InvalidOperationException("Central directory currently does not exist");
     }
     p0 = m000079(p0).ToLower();
     for (int i = 0; i < this.f000008.Length; i += ((0x2e + num2) + num3) + num4)
     {
         num2 = BitConverter.ToUInt16(this.f000008, i + 0x1c);
         num3 = BitConverter.ToUInt16(this.f000008, i + 30);
         num4 = BitConverter.ToUInt16(this.f000008, i + 0x20);
         string str = Encoding.UTF8.GetString(this.f000008, i + 0x2e, num2);
         if (str.ToLower() == p0)
         {
             uint num5 = BitConverter.ToUInt32(this.f000008, i + 0x2a);
             uint num6 = BitConverter.ToUInt32(this.f000008, i + 20);
             uint num7 = BitConverter.ToUInt32(this.f000008, i + 12);
             uint num8 = (uint) (((0x2e + num2) + num3) + num4);
             struct03a structa = new struct03a();
             structa.f000006 = str;
             structa.f00005f = this.m000074(num5);
             structa.f00001b = num6;
             structa.f000061 = num5;
             structa.f000060 = num8;
             structa.f000063 = this.m000078(num7);
             if (num4 > 0)
             {
                 structa.f000007 = Encoding.UTF8.GetString(this.f000008, ((i + 0x2e) + num2) + num3, num4);
             }
             return structa;
         }
     }
     return new struct03a();
 }