public override void RemovePublicSign(string assemblyPath) { using (var stream = new FileStream(assemblyPath, FileMode.Open, FileAccess.ReadWrite, FileShare.Read)) using (var peReader = new PEReader(stream)) using (var writer = new BinaryWriter(stream)) { if (!ContentUtil.IsPublicSigned(peReader)) { return; } stream.Position = peReader.PEHeaders.CorHeaderStartOffset + OffsetFromStartOfCorHeaderToFlags; writer.Write((UInt32)(peReader.PEHeaders.CorHeader.Flags & ~CorFlags.StrongNameSigned)); } }