terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches
ZipFile.cs
Go to the documentation of this file.
1using System;
5using System.IO;
7using System.Text;
10using Ionic.Zlib;
11
12namespace Ionic.Zip
13{
14 // Token: 0x02000027 RID: 39
15 [ComVisible(true)]
16 [Guid("ebc25cf6-9120-4283-b972-0e5520d00005")]
17 public class ZipFile : IEnumerable<ZipEntry>, IEnumerable, IDisposable
18 {
19 // Token: 0x06000152 RID: 338 RVA: 0x000056D8 File Offset: 0x000038D8
21 {
23 return zipEntry;
24 }
25
26 // Token: 0x06000153 RID: 339 RVA: 0x000056E8 File Offset: 0x000038E8
28 {
29 bool flag = File.Exists(fileOrDirectoryName);
30 return this.AddFile(fileOrDirectoryName, directoryPathInArchive);
31 }
32
33 // Token: 0x06000154 RID: 340 RVA: 0x0000571C File Offset: 0x0000391C
34 public ZipEntry AddFile(string fileName)
35 {
37 return zipEntry;
38 }
39
40 // Token: 0x06000155 RID: 341 RVA: 0x0000572C File Offset: 0x0000392C
41 public ZipEntry AddFile(string fileName, string directoryPathInArchive)
42 {
43 if (!true)
44 {
45 }
48 if (this._StatusMessageTextWriter != null)
49 {
50 }
51 return this._InternalAddEntry(zipEntry);
52 }
53
54 // Token: 0x06000156 RID: 342 RVA: 0x0000575C File Offset: 0x0000395C
56 {
57 if (entriesToRemove != null)
58 {
59 return;
60 }
61 throw new OutOfMemoryException();
62 }
63
64 // Token: 0x06000157 RID: 343 RVA: 0x00005794 File Offset: 0x00003994
66 {
67 if (entriesToRemove != null)
68 {
69 return;
70 }
71 throw new OutOfMemoryException();
72 }
73
74 // Token: 0x06000158 RID: 344 RVA: 0x000057CC File Offset: 0x000039CC
76 {
77 }
78
79 // Token: 0x06000159 RID: 345 RVA: 0x000057DC File Offset: 0x000039DC
83
84 // Token: 0x0600015A RID: 346 RVA: 0x000057EC File Offset: 0x000039EC
86 {
87 long num = 0L;
88 this.AddFiles(fileNames, num != 0L, directoryPathInArchive);
89 }
90
91 // Token: 0x0600015B RID: 347 RVA: 0x00005804 File Offset: 0x00003A04
93 {
94 if (fileNames != null)
95 {
96 this.OnAddStarted();
97 return;
98 }
99 throw new OutOfMemoryException();
100 }
101
102 // Token: 0x0600015C RID: 348 RVA: 0x000058E0 File Offset: 0x00003AE0
104 {
105 if (fileNames != null)
106 {
107 this.OnAddStarted();
108 return;
109 }
110 throw new OutOfMemoryException();
111 }
112
113 // Token: 0x0600015D RID: 349 RVA: 0x00005934 File Offset: 0x00003B34
114 public ZipEntry UpdateFile(string fileName)
115 {
117 return zipEntry;
118 }
119
120 // Token: 0x0600015E RID: 350 RVA: 0x00005944 File Offset: 0x00003B44
121 public ZipEntry UpdateFile(string fileName, string directoryPathInArchive)
122 {
123 if (!true)
124 {
125 }
127 if (this[text] != null)
128 {
129 this.RemoveEntry(text);
130 }
131 return this.AddFile(fileName, directoryPathInArchive);
132 }
133
134 // Token: 0x0600015F RID: 351 RVA: 0x00005974 File Offset: 0x00003B74
136 {
138 return zipEntry;
139 }
140
141 // Token: 0x06000160 RID: 352 RVA: 0x00005984 File Offset: 0x00003B84
143 {
144 return this.AddOrUpdateDirectoryImpl(directoryName, directoryPathInArchive, AddOrUpdateAction.AddOrUpdate);
145 }
146
147 // Token: 0x06000161 RID: 353 RVA: 0x0000599C File Offset: 0x00003B9C
148 public void UpdateItem(string itemName)
149 {
150 }
151
152 // Token: 0x06000162 RID: 354 RVA: 0x000059AC File Offset: 0x00003BAC
153 public void UpdateItem(string itemName, string directoryPathInArchive)
154 {
155 bool flag = File.Exists(itemName);
157 }
158
159 // Token: 0x06000163 RID: 355 RVA: 0x000059E8 File Offset: 0x00003BE8
160 public ZipEntry AddEntry(string entryName, string content)
161 {
162 Encoding @default = Encoding.Default;
163 return this.AddEntry(entryName, content, @default);
164 }
165
166 // Token: 0x06000164 RID: 356 RVA: 0x00005A08 File Offset: 0x00003C08
167 public ZipEntry AddEntry(string entryName, string content, Encoding encoding)
168 {
170 return zipEntry;
171 }
172
173 // Token: 0x06000165 RID: 357 RVA: 0x00005A18 File Offset: 0x00003C18
174 public ZipEntry AddEntry(string entryName, Stream stream)
175 {
176 if (!true)
177 {
178 }
183 zipEntry.SetEntryTimes(now, now2, now3);
184 if (this._StatusMessageTextWriter != null)
185 {
186 }
187 return this._InternalAddEntry(zipEntry);
188 }
189
190 // Token: 0x06000166 RID: 358 RVA: 0x00005A68 File Offset: 0x00003C68
192 {
193 if (!true)
194 {
195 }
197 if (this._StatusMessageTextWriter != null)
198 {
199 }
200 return this._InternalAddEntry(zipEntry);
201 }
202
203 // Token: 0x06000167 RID: 359 RVA: 0x00005A90 File Offset: 0x00003C90
205 {
206 if (!true)
207 {
208 }
213 zipEntry.SetEntryTimes(now, now2, now3);
214 if (this._StatusMessageTextWriter != null)
215 {
216 }
217 return this._InternalAddEntry(zipEntry);
218 }
219
220 // Token: 0x06000168 RID: 360 RVA: 0x00005AE0 File Offset: 0x00003CE0
222 {
225 CompressionLevel compressionLevel = this.<CompressionLevel>k__BackingField;
226 ze.CompressionLevel = compressionLevel;
229 if (this.ZipError != null)
230 {
231 this._zipErrorAction = ZipErrorAction.InvokeErrorEvent;
232 return ze;
233 }
242 string password = this._Password;
243 ze._Password = password;
244 if (password != null)
245 {
246 ZipEntrySource source = ze._Source;
247 if (!ze._sourceIsEncrypted)
248 {
250 }
251 if (ze._Encryption == EncryptionAlgorithm.None)
252 {
254 return ze;
255 }
256 }
259 bool emitNtfsTimes = this._emitNtfsTimes;
262 bool emitUnixTimes = this._emitUnixTimes;
263 ze._metadataChanged = true;
265 this.InternalAddEntry(fileNameInArchive, ze);
266 this.AfterAddEntry(ze);
267 return ze;
268 }
269
270 // Token: 0x06000169 RID: 361 RVA: 0x00005BF4 File Offset: 0x00003DF4
271 public ZipEntry UpdateEntry(string entryName, string content)
272 {
273 Encoding @default = Encoding.Default;
274 this.RemoveEntryForUpdate(entryName);
275 return this.AddEntry(entryName, content, @default);
276 }
277
278 // Token: 0x0600016A RID: 362 RVA: 0x00005C1C File Offset: 0x00003E1C
279 public ZipEntry UpdateEntry(string entryName, string content, Encoding encoding)
280 {
281 this.RemoveEntryForUpdate(entryName);
282 return this.AddEntry(entryName, content, encoding);
283 }
284
285 // Token: 0x0600016B RID: 363 RVA: 0x00005C3C File Offset: 0x00003E3C
287 {
288 this.RemoveEntryForUpdate(entryName);
289 return this.AddEntry(entryName, writer);
290 }
291
292 // Token: 0x0600016C RID: 364 RVA: 0x00005C58 File Offset: 0x00003E58
294 {
295 this.RemoveEntryForUpdate(entryName);
296 return this.AddEntry(entryName, opener, closer);
297 }
298
299 // Token: 0x0600016D RID: 365 RVA: 0x00005C78 File Offset: 0x00003E78
300 public ZipEntry UpdateEntry(string entryName, Stream stream)
301 {
302 this.RemoveEntryForUpdate(entryName);
303 return this.AddEntry(entryName, stream);
304 }
305
306 // Token: 0x0600016E RID: 366 RVA: 0x00005C94 File Offset: 0x00003E94
307 private void RemoveEntryForUpdate(string entryName)
308 {
309 bool flag = string.IsNullOrEmpty(entryName);
311 string fileName = Path.GetFileName(entryName);
312 }
313
314 // Token: 0x0600016F RID: 367 RVA: 0x00005CCC File Offset: 0x00003ECC
315 public ZipEntry AddEntry(string entryName, byte[] byteContent)
316 {
317 while (byteContent == null)
318 {
319 }
321 return zipEntry;
322 }
323
324 // Token: 0x06000170 RID: 368 RVA: 0x00005CE0 File Offset: 0x00003EE0
326 {
327 this.RemoveEntryForUpdate(entryName);
328 return this.AddEntry(entryName, byteContent);
329 }
330
331 // Token: 0x06000171 RID: 369 RVA: 0x00005CFC File Offset: 0x00003EFC
333 {
335 return zipEntry;
336 }
337
338 // Token: 0x06000172 RID: 370 RVA: 0x00005D0C File Offset: 0x00003F0C
340 {
342 return zipEntry;
343 }
344
345 // Token: 0x06000173 RID: 371 RVA: 0x00005D1C File Offset: 0x00003F1C
375
376 // Token: 0x06000174 RID: 372 RVA: 0x00005DC8 File Offset: 0x00003FC8
378 {
379 long num = 0L;
380 return this.AddOrUpdateDirectoryImpl(directoryName, rootDirectoryPathInArchive, action, true, (int)num);
381 }
382
383 // Token: 0x06000175 RID: 373 RVA: 0x00005DE4 File Offset: 0x00003FE4
384 internal void InternalAddEntry(string name, ZipEntry entry)
385 {
388 }
389
390 // Token: 0x06000176 RID: 374 RVA: 0x00005E00 File Offset: 0x00004000
392 {
393 if (this._StatusMessageTextWriter != null)
394 {
395 }
396 if (level == 0)
397 {
398 this.OnAddStarted();
399 }
400 if (this._addOperationCanceled)
401 {
402 }
403 int stringLength = directoryName._stringLength;
404 if ("adding" == null)
405 {
406 }
407 string text2;
409 bool flag = rootDirectoryPathInArchive != "";
415 zipEntry.MarkAsDirectory();
416 bool emitNtfsTimes = this._emitNtfsTimes;
417 int num = 1;
418 string fileNameInArchive = zipEntry._FileNameInArchive;
420 bool emitUnixTimes = this._emitUnixTimes;
421 zipEntry._metadataChanged = num != 0;
424 string fileNameInArchive2 = zipEntry._FileNameInArchive;
425 this.InternalAddEntry(fileNameInArchive2, zipEntry);
426 this.AfterAddEntry(zipEntry);
427 string fileNameInArchive3 = zipEntry._FileNameInArchive;
428 if (!this._addOperationCanceled)
429 {
431 long num2 = 0L;
432 if (!this._addOperationCanceled)
433 {
434 if (action != AddOrUpdateAction.AddOnly)
435 {
437 return zipEntry2;
438 }
439 if (!this._addOperationCanceled)
440 {
442 uint attributes = NetCfFile.GetAttributes(fileNameInArchive3);
443 if (!this.<AddDirectoryWillTraverseReparsePoints>k__BackingField)
444 {
445 }
446 int num3 = 1;
448 }
449 }
450 }
451 if (level == 0)
452 {
453 this.OnAddCompleted();
454 }
455 return zipEntry;
456 }
457
458 // Token: 0x06000177 RID: 375 RVA: 0x00005F48 File Offset: 0x00004148
459 public static bool CheckZip(string zipFileName)
460 {
461 if (!true)
462 {
463 }
464 bool flag;
465 return flag;
466 }
467
468 // Token: 0x06000178 RID: 376 RVA: 0x00005F5C File Offset: 0x0000415C
469 public static bool CheckZip(string zipFileName, bool fixIfNecessary, TextWriter writer)
470 {
471 if (!true)
472 {
473 }
475 IEnumerator<ZipEntry> enumerator = zipFile.GetEnumerator();
476 if (fixIfNecessary)
477 {
478 }
479 if (fixIfNecessary)
480 {
481 }
482 if (fixIfNecessary)
483 {
484 }
485 if (fixIfNecessary)
486 {
487 }
488 if (fixIfNecessary)
489 {
490 if (enumerator == null)
491 {
492 return fixIfNecessary;
493 }
494 goto IL_0033;
495 }
496 else if (enumerator != null)
497 {
498 goto IL_0033;
499 }
500 IL_003A:
501 long num;
502 while (num == 0L)
503 {
504 }
505 throw new ArrayTypeMismatchException();
506 IL_0033:
507 if ("{0}: mismatch in Crc32 (0x{1:X4} != 0x{2:X4})" != null)
508 {
509 goto IL_003A;
510 }
511 goto IL_003A;
512 }
513
514 // Token: 0x06000179 RID: 377 RVA: 0x000060BC File Offset: 0x000042BC
515 public static void FixZipDirectory(string zipFileName)
516 {
517 }
518
519 // Token: 0x0600017A RID: 378 RVA: 0x000060EC File Offset: 0x000042EC
520 public static bool CheckZipPassword(string zipFileName, string password)
521 {
522 if (!true)
523 {
524 }
526 IEnumerator<ZipEntry> enumerator = zipFile.GetEnumerator();
527 long num = 0L;
528 if (enumerator != null)
529 {
530 }
531 if (num == 0L)
532 {
533 long num2 = 0L;
534 if (zipFile != null)
535 {
536 }
537 if (num2 == 0L)
538 {
539 }
540 throw new OutOfMemoryException();
541 }
542 throw new OutOfMemoryException();
543 }
544
545 // Token: 0x1700004F RID: 79
546 // (get) Token: 0x0600017B RID: 379 RVA: 0x0000615C File Offset: 0x0000435C
547 public string Info
548 {
549 get
550 {
551 string name = this._name;
552 string text = string.Format(" ZipFile: {0}\n", name);
553 bool flag = string.IsNullOrEmpty(this._Comment);
554 string comment = this._Comment;
555 string text2 = string.Format(" Comment: {0}\n", comment);
556 if (this._versionMadeBy != 0)
557 {
558 }
559 if (this._versionNeededToExtract != 0)
560 {
561 }
562 bool? inputUsesZip = this.InputUsesZip64;
567 throw new OutOfMemoryException();
568 }
569 }
570
571 // Token: 0x17000050 RID: 80
572 // (get) Token: 0x0600017C RID: 380 RVA: 0x000061E4 File Offset: 0x000043E4
573 // (set) Token: 0x0600017D RID: 381 RVA: 0x000061F8 File Offset: 0x000043F8
574 public bool FullScan
575 {
576 get
577 {
578 return this.<FullScan>k__BackingField;
579 }
580 set
581 {
582 }
583 }
584
585 // Token: 0x17000051 RID: 81
586 // (get) Token: 0x0600017E RID: 382 RVA: 0x00006208 File Offset: 0x00004408
587 // (set) Token: 0x0600017F RID: 383 RVA: 0x0000621C File Offset: 0x0000441C
589 {
590 get
591 {
593 }
594 set
595 {
596 }
597 }
598
599 // Token: 0x17000052 RID: 82
600 // (get) Token: 0x06000180 RID: 384 RVA: 0x0000622C File Offset: 0x0000442C
601 // (set) Token: 0x06000181 RID: 385 RVA: 0x00006240 File Offset: 0x00004440
603 {
604 get
605 {
607 }
608 set
609 {
610 }
611 }
612
613 // Token: 0x17000053 RID: 83
614 // (get) Token: 0x06000182 RID: 386 RVA: 0x00006250 File Offset: 0x00004450
615 // (set) Token: 0x06000183 RID: 387 RVA: 0x00006264 File Offset: 0x00004464
616 public int BufferSize
617 {
618 get
619 {
620 return this._BufferSize;
621 }
622 set
623 {
625 }
626 }
627
628 // Token: 0x17000054 RID: 84
629 // (get) Token: 0x06000184 RID: 388 RVA: 0x00006278 File Offset: 0x00004478
630 // (set) Token: 0x06000185 RID: 389 RVA: 0x0000628C File Offset: 0x0000448C
632 {
633 get
634 {
635 return this.<CodecBufferSize>k__BackingField;
636 }
637 set
638 {
640 }
641 }
642
643 // Token: 0x17000055 RID: 85
644 // (get) Token: 0x06000186 RID: 390 RVA: 0x000062A0 File Offset: 0x000044A0
645 // (set) Token: 0x06000187 RID: 391 RVA: 0x000062B4 File Offset: 0x000044B4
647 {
648 get
649 {
651 }
652 set
653 {
654 }
655 }
656
657 // Token: 0x17000056 RID: 86
658 // (get) Token: 0x06000188 RID: 392 RVA: 0x000062C4 File Offset: 0x000044C4
659 // (set) Token: 0x06000189 RID: 393 RVA: 0x000062D8 File Offset: 0x000044D8
661 {
662 get
663 {
664 return this._Strategy;
665 }
666 set
667 {
669 }
670 }
671
672 // Token: 0x17000057 RID: 87
673 // (get) Token: 0x0600018A RID: 394 RVA: 0x000062EC File Offset: 0x000044EC
674 // (set) Token: 0x0600018B RID: 395 RVA: 0x00006300 File Offset: 0x00004500
675 public string Name
676 {
677 get
678 {
679 return this._name;
680 }
681 set
682 {
684 }
685 }
686
687 // Token: 0x17000058 RID: 88
688 // (get) Token: 0x0600018C RID: 396 RVA: 0x00006314 File Offset: 0x00004514
689 // (set) Token: 0x0600018D RID: 397 RVA: 0x00006328 File Offset: 0x00004528
691 {
692 get
693 {
695 }
696 set
697 {
699 }
700 }
701
702 // Token: 0x17000059 RID: 89
703 // (get) Token: 0x0600018E RID: 398 RVA: 0x0000633C File Offset: 0x0000453C
704 // (set) Token: 0x0600018F RID: 399 RVA: 0x00006350 File Offset: 0x00004550
706 {
707 get
708 {
709 return this._compressionMethod;
710 }
711 set
712 {
714 }
715 }
716
717 // Token: 0x1700005A RID: 90
718 // (get) Token: 0x06000190 RID: 400 RVA: 0x00006364 File Offset: 0x00004564
719 // (set) Token: 0x06000191 RID: 401 RVA: 0x00006378 File Offset: 0x00004578
720 public string Comment
721 {
722 get
723 {
724 return this._Comment;
725 }
726 set
727 {
730 }
731 }
732
733 // Token: 0x1700005B RID: 91
734 // (get) Token: 0x06000192 RID: 402 RVA: 0x00006394 File Offset: 0x00004594
735 // (set) Token: 0x06000193 RID: 403 RVA: 0x000063A8 File Offset: 0x000045A8
737 {
738 get
739 {
740 return this._emitNtfsTimes;
741 }
742 set
743 {
744 }
745 }
746
747 // Token: 0x1700005C RID: 92
748 // (get) Token: 0x06000194 RID: 404 RVA: 0x000063B8 File Offset: 0x000045B8
749 // (set) Token: 0x06000195 RID: 405 RVA: 0x000063CC File Offset: 0x000045CC
751 {
752 get
753 {
754 return this._emitUnixTimes;
755 }
756 set
757 {
758 }
759 }
760
761 // Token: 0x1700005D RID: 93
762 // (get) Token: 0x06000196 RID: 406 RVA: 0x000063DC File Offset: 0x000045DC
763 internal bool Verbose
764 {
765 get
766 {
767 /*
768An exception occurred when decompiling this method (06000196)
769
770ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Ionic.Zip.ZipFile::get_Verbose()
771
772 ---> System.Exception: Basic block has to end with unconditional control flow.
773{
774 Block_0:
775 stloc:TextWriter(var_0_06, ldfld:TextWriter(ZipFile::_StatusMessageTextWriter, ldloc:ZipFile(this)))
776}
777
778 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
779 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
780 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
781 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
782 --- End of inner exception stack trace ---
783 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
784 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
785*/;
786 }
787 }
788
789 // Token: 0x06000197 RID: 407 RVA: 0x000063F0 File Offset: 0x000045F0
790 public bool ContainsEntry(string name)
791 {
792 /*
793An exception occurred when decompiling this method (06000197)
794
795ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Ionic.Zip.ZipFile::ContainsEntry(System.String)
796
797 ---> System.Exception: Basic block has to end with unconditional control flow.
798{
799 IL_000A:
800 stloc:string(var_1_10, call:string(SharedUtilities::NormalizePathForUseInZipFile, ldloc:string(name)))
801}
802
803 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
804 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
805 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
806 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
807 --- End of inner exception stack trace ---
808 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
809 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
810*/;
811 }
812
813 // Token: 0x1700005E RID: 94
814 // (get) Token: 0x06000198 RID: 408 RVA: 0x00006410 File Offset: 0x00004610
815 // (set) Token: 0x06000199 RID: 409 RVA: 0x00006424 File Offset: 0x00004624
817 {
818 get
819 {
820 return this._CaseSensitiveRetrieval;
821 }
822 set
823 {
825 }
826 }
827
828 // Token: 0x1700005F RID: 95
829 // (get) Token: 0x0600019A RID: 410 RVA: 0x00006440 File Offset: 0x00004640
830 // (set) Token: 0x0600019B RID: 411 RVA: 0x00006468 File Offset: 0x00004668
831 [Obsolete("Beginning with v1.9.1.6 of DotNetZip, this property is obsolete. It will be removed in a future version of the library. Your applications should use AlternateEncoding and AlternateEncodingUsage instead.")]
833 {
834 get
835 {
836 /*
837An exception occurred when decompiling this method (0600019A)
838
839ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean Ionic.Zip.ZipFile::get_UseUnicodeAsNecessary()
840
841 ---> System.Exception: Basic block has to end with unconditional control flow.
842{
843 Block_0:
844 stloc:Encoding(var_0_06, ldfld:Encoding(ZipFile::_alternateEncoding, ldloc:ZipFile(this)))
845 stloc:Encoding(var_1_11, call:Encoding(Encoding::GetEncoding, ldstr:string("UTF-8")))
846 stloc:ZipOption(var_3_1A, ldfld:ZipOption(ZipFile::_alternateEncodingUsage, ldloc:ZipFile(this)))
847}
848
849 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
850 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
851 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
852 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
853 --- End of inner exception stack trace ---
854 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
855 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
856*/;
857 }
858 set
859 {
860 Encoding encoding = Encoding.GetEncoding("UTF-8");
861 this._alternateEncoding = encoding;
862 }
863 }
864
865 // Token: 0x17000060 RID: 96
866 // (get) Token: 0x0600019C RID: 412 RVA: 0x00006498 File Offset: 0x00004698
867 // (set) Token: 0x0600019D RID: 413 RVA: 0x000064AC File Offset: 0x000046AC
869 {
870 get
871 {
872 return this._zip64;
873 }
874 set
875 {
877 }
878 }
879
880 // Token: 0x17000061 RID: 97
881 // (get) Token: 0x0600019E RID: 414 RVA: 0x00002122 File Offset: 0x00000322
882 public bool? RequiresZip64
883 {
884 get
885 {
886 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
887 }
888 }
889
890 // Token: 0x17000062 RID: 98
891 // (get) Token: 0x0600019F RID: 415 RVA: 0x000064C0 File Offset: 0x000046C0
892 public bool? OutputUsedZip64
893 {
894 get
895 {
896 return this._OutputUsesZip64;
897 }
898 }
899
900 // Token: 0x17000063 RID: 99
901 // (get) Token: 0x060001A0 RID: 416 RVA: 0x000064D4 File Offset: 0x000046D4
902 public bool? InputUsesZip64
903 {
904 get
905 {
907 IEnumerator<ZipEntry> enumerator = this.GetEnumerator();
908 long num;
909 int num2;
910 if (enumerator == null)
911 {
912 num = 0L;
913 num2 = 6;
914 if (enumerator != null)
915 {
916 }
917 }
918 if (num != 0L || num2 == 0)
919 {
920 }
921 throw new OutOfMemoryException();
922 }
923 }
924
925 // Token: 0x17000064 RID: 100
926 // (get) Token: 0x060001A1 RID: 417 RVA: 0x0000652C File Offset: 0x0000472C
927 // (set) Token: 0x060001A2 RID: 418 RVA: 0x00006548 File Offset: 0x00004748
928 [Obsolete("use AlternateEncoding instead.")]
930 {
931 get
932 {
934 return this._alternateEncoding;
935 }
936 set
937 {
940 }
941 }
942
943 // Token: 0x17000065 RID: 101
944 // (get) Token: 0x060001A3 RID: 419 RVA: 0x00006564 File Offset: 0x00004764
945 // (set) Token: 0x060001A4 RID: 420 RVA: 0x00006578 File Offset: 0x00004778
947 {
948 get
949 {
950 return this._alternateEncoding;
951 }
952 set
953 {
955 }
956 }
957
958 // Token: 0x17000066 RID: 102
959 // (get) Token: 0x060001A5 RID: 421 RVA: 0x0000658C File Offset: 0x0000478C
960 // (set) Token: 0x060001A6 RID: 422 RVA: 0x000065A0 File Offset: 0x000047A0
962 {
963 get
964 {
965 return this._alternateEncodingUsage;
966 }
967 set
968 {
970 }
971 }
972
973 // Token: 0x17000067 RID: 103
974 // (get) Token: 0x060001A7 RID: 423 RVA: 0x000065B4 File Offset: 0x000047B4
976 {
977 get
978 {
979 if (!true)
980 {
981 }
982 return 1;
983 }
984 }
985
986 // Token: 0x17000068 RID: 104
987 // (get) Token: 0x060001A8 RID: 424 RVA: 0x000065C8 File Offset: 0x000047C8
988 // (set) Token: 0x060001A9 RID: 425 RVA: 0x000065DC File Offset: 0x000047DC
990 {
991 get
992 {
993 return this._StatusMessageTextWriter;
994 }
995 set
996 {
998 }
999 }
1000
1001 // Token: 0x17000069 RID: 105
1002 // (get) Token: 0x060001AA RID: 426 RVA: 0x000065F0 File Offset: 0x000047F0
1003 // (set) Token: 0x060001AB RID: 427 RVA: 0x00006604 File Offset: 0x00004804
1004 public string TempFileFolder
1005 {
1006 get
1007 {
1008 return this._TempFileFolder;
1009 }
1010 set
1011 {
1013 if (value != null)
1014 {
1015 bool flag = Directory.Exists(value);
1016 }
1017 }
1018 }
1019
1020 // Token: 0x1700006A RID: 106
1021 // (get) Token: 0x060001AD RID: 429 RVA: 0x00006658 File Offset: 0x00004858
1022 // (set) Token: 0x060001AC RID: 428 RVA: 0x00006630 File Offset: 0x00004830
1023 public string Password
1024 {
1025 private get
1026 {
1027 return this._Password;
1028 }
1029 set
1030 {
1032 if (value == null)
1033 {
1034 return;
1035 }
1036 if (this._Encryption != EncryptionAlgorithm.None)
1037 {
1038 return;
1039 }
1041 }
1042 }
1043
1044 // Token: 0x1700006B RID: 107
1045 // (get) Token: 0x060001AE RID: 430 RVA: 0x0000666C File Offset: 0x0000486C
1046 // (set) Token: 0x060001AF RID: 431 RVA: 0x00006680 File Offset: 0x00004880
1048 {
1049 get
1050 {
1052 }
1053 set
1054 {
1056 }
1057 }
1058
1059 // Token: 0x1700006C RID: 108
1060 // (get) Token: 0x060001B0 RID: 432 RVA: 0x00006694 File Offset: 0x00004894
1061 // (set) Token: 0x060001B1 RID: 433 RVA: 0x000066B8 File Offset: 0x000048B8
1063 {
1064 get
1065 {
1066 if (this.ZipError != null)
1067 {
1068 this._zipErrorAction = ZipErrorAction.InvokeErrorEvent;
1069 return ZipErrorAction.InvokeErrorEvent;
1070 }
1071 return this._zipErrorAction;
1072 }
1073 set
1074 {
1076 if (this.ZipError != null)
1077 {
1078 }
1079 }
1080 }
1081
1082 // Token: 0x1700006D RID: 109
1083 // (get) Token: 0x060001B2 RID: 434 RVA: 0x000066D4 File Offset: 0x000048D4
1084 // (set) Token: 0x060001B3 RID: 435 RVA: 0x000066E8 File Offset: 0x000048E8
1086 {
1087 get
1088 {
1089 return this._Encryption;
1090 }
1091 set
1092 {
1094 }
1095 }
1096
1097 // Token: 0x1700006E RID: 110
1098 // (get) Token: 0x060001B4 RID: 436 RVA: 0x000066FC File Offset: 0x000048FC
1099 // (set) Token: 0x060001B5 RID: 437 RVA: 0x00006710 File Offset: 0x00004910
1101 {
1102 get
1103 {
1104 return this.<SetCompression>k__BackingField;
1105 }
1106 set
1107 {
1109 }
1110 }
1111
1112 // Token: 0x1700006F RID: 111
1113 // (get) Token: 0x060001B6 RID: 438 RVA: 0x00006724 File Offset: 0x00004924
1114 // (set) Token: 0x060001B7 RID: 439 RVA: 0x00006738 File Offset: 0x00004938
1116 {
1117 get
1118 {
1119 return this._maxOutputSegmentSize;
1120 }
1121 set
1122 {
1123 while (value != 0)
1124 {
1125 }
1127 }
1128 }
1129
1130 // Token: 0x17000070 RID: 112
1131 // (get) Token: 0x060001B8 RID: 440 RVA: 0x00006750 File Offset: 0x00004950
1133 {
1134 get
1135 {
1136 /*
1137An exception occurred when decompiling this method (060001B8)
1138
1139ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 Ionic.Zip.ZipFile::get_NumberOfSegmentsForMostRecentSave()
1140
1141 ---> System.Exception: Basic block has to end with unconditional control flow.
1142{
1143 Block_0:
1144 stloc:uint32(var_0_06, ldfld:uint32(ZipFile::_numberOfSegmentsForMostRecentSave, ldloc:ZipFile(this)))
1145}
1146
1147 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1148 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1149 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1150 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1151 --- End of inner exception stack trace ---
1152 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1153 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1154*/;
1155 }
1156 }
1157
1158 // Token: 0x060001B9 RID: 441 RVA: 0x00006764 File Offset: 0x00004964
1159 public override string ToString()
1160 {
1161 string name = this._name;
1162 return string.Format("ZipFile::{0}", name);
1163 }
1164
1165 // Token: 0x17000071 RID: 113
1166 // (get) Token: 0x060001BA RID: 442 RVA: 0x00002122 File Offset: 0x00000322
1168 {
1169 get
1170 {
1171 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
1172 }
1173 }
1174
1175 // Token: 0x060001BB RID: 443 RVA: 0x00006784 File Offset: 0x00004984
1176 internal void NotifyEntryChanged()
1177 {
1178 this._contentsChanged = true;
1179 }
1180
1181 // Token: 0x060001BC RID: 444 RVA: 0x00006798 File Offset: 0x00004998
1183 {
1184 uint diskNumberWithCd;
1185 do
1186 {
1188 }
1189 while (this._readName != null);
1191 Stream stream;
1192 return stream;
1193 }
1194
1195 // Token: 0x060001BD RID: 445 RVA: 0x000067C4 File Offset: 0x000049C4
1196 internal void Reset(bool whileSaving)
1197 {
1198 if (this._JustSaved)
1199 {
1200 if (this._readName == null)
1201 {
1202 string name = this._name;
1203 }
1205 if (this._alternateEncodingUsage == ZipOption.Default)
1206 {
1207 }
1208 return;
1209 }
1210 }
1211
1212 // Token: 0x060001BE RID: 446 RVA: 0x000068C0 File Offset: 0x00004AC0
1213 public ZipFile(string fileName)
1214 {
1215 int num = 1;
1216 int num2 = 8;
1217 this._emitNtfsTimes = num != 0;
1219 this._ReadStreamIsOurs = num != 0;
1220 this._locEndOfCDS = (long)num;
1221 Encoding encoding = Encoding.GetEncoding("IBM437");
1222 this._alternateEncoding = encoding;
1223 if (num == 0)
1224 {
1225 }
1227 this._BufferSize = num;
1228 base..ctor();
1229 }
1230
1231 // Token: 0x060001BF RID: 447 RVA: 0x00006928 File Offset: 0x00004B28
1232 public ZipFile(string fileName, Encoding encoding)
1233 {
1234 int num = 1;
1235 int num2 = 8;
1236 this._emitNtfsTimes = num != 0;
1238 this._ReadStreamIsOurs = num != 0;
1239 this._locEndOfCDS = (long)num;
1242 if (num == 0)
1243 {
1244 }
1246 this._BufferSize = num;
1247 base..ctor();
1248 int num3 = 2;
1249 this._alternateEncoding = encoding;
1251 }
1252
1253 // Token: 0x060001C0 RID: 448 RVA: 0x000069A0 File Offset: 0x00004BA0
1254 public ZipFile()
1255 {
1256 this._emitNtfsTimes = true;
1260 Encoding encoding = Encoding.GetEncoding("IBM437");
1261 this._alternateEncoding = encoding;
1262 if (!true)
1263 {
1264 }
1266 this._BufferSize = 1;
1267 base..ctor();
1268 }
1269
1270 // Token: 0x060001C1 RID: 449 RVA: 0x000069F4 File Offset: 0x00004BF4
1271 public ZipFile(Encoding encoding)
1272 {
1273 this._emitNtfsTimes = true;
1279 if (!true)
1280 {
1281 }
1283 this._BufferSize = 1;
1284 base..ctor();
1285 this._alternateEncoding = encoding;
1287 }
1288
1289 // Token: 0x060001C2 RID: 450 RVA: 0x00006A54 File Offset: 0x00004C54
1290 public ZipFile(string fileName, TextWriter statusMessageWriter)
1291 {
1292 int num = 1;
1293 int num2 = 8;
1294 this._emitNtfsTimes = num != 0;
1296 this._ReadStreamIsOurs = num != 0;
1297 this._locEndOfCDS = (long)num;
1298 Encoding encoding = Encoding.GetEncoding("IBM437");
1299 this._alternateEncoding = encoding;
1300 if (num == 0)
1301 {
1302 }
1304 this._BufferSize = num;
1305 base..ctor();
1306 this._InitInstance(fileName, statusMessageWriter);
1307 }
1308
1309 // Token: 0x060001C3 RID: 451 RVA: 0x00006AC4 File Offset: 0x00004CC4
1310 public ZipFile(string fileName, TextWriter statusMessageWriter, Encoding encoding)
1311 {
1312 int num = 1;
1313 int num2 = 8;
1314 this._emitNtfsTimes = num != 0;
1316 this._ReadStreamIsOurs = num != 0;
1317 this._locEndOfCDS = (long)num;
1320 if (num == 0)
1321 {
1322 }
1324 this._BufferSize = num;
1325 base..ctor();
1326 int num3 = 2;
1327 this._alternateEncoding = encoding;
1329 this._InitInstance(fileName, statusMessageWriter);
1330 }
1331
1332 // Token: 0x060001C4 RID: 452 RVA: 0x00006B44 File Offset: 0x00004D44
1333 public void Initialize(string fileName)
1334 {
1335 }
1336
1337 // Token: 0x060001C5 RID: 453 RVA: 0x00006B60 File Offset: 0x00004D60
1339 {
1341 if (true && caseSensitiveRetrieval)
1342 {
1343 if (!true)
1344 {
1345 }
1346 return;
1347 }
1348 if (!true)
1349 {
1350 }
1351 if (this._entries != null)
1352 {
1353 return;
1354 }
1355 }
1356
1357 // Token: 0x060001C6 RID: 454 RVA: 0x00006B8C File Offset: 0x00004D8C
1359 {
1362 this._contentsChanged = true;
1366 bool flag = File.Exists(this._name);
1367 if (this.<FullScan>k__BackingField)
1368 {
1370 return;
1371 }
1374 }
1375
1376 // Token: 0x17000072 RID: 114
1377 // (get) Token: 0x060001C7 RID: 455 RVA: 0x00006BEC File Offset: 0x00004DEC
1379 {
1380 get
1381 {
1382 /*
1383An exception occurred when decompiling this method (060001C7)
1384
1385ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.List`1<Ionic.Zip.ZipEntry> Ionic.Zip.ZipFile::get_ZipEntriesAsList()
1386
1387 ---> System.Exception: Basic block has to end with unconditional control flow.
1388{
1389 Block_0:
1390 stloc:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(var_0_0E, ldfld:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(ZipFile::_entries, ldloc:ZipFile(this)))
1391}
1392
1393 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1394 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1395 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1396 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1397 --- End of inner exception stack trace ---
1398 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1399 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1400*/;
1401 }
1402 }
1403
1404 // Token: 0x17000073 RID: 115
1405 public ZipEntry this[int ix]
1406 {
1407 get
1408 {
1409 /*
1410An exception occurred when decompiling this method (060001C8)
1411
1412ICSharpCode.Decompiler.DecompilerException: Error decompiling Ionic.Zip.ZipEntry Ionic.Zip.ZipFile::get_Item(System.Int32)
1413
1414 ---> System.Exception: Basic block has to end with unconditional control flow.
1415{
1416 Block_0:
1417 stloc:class [mscorlib]System.Collections.Generic.List`1<class Ionic.Zip.ZipEntry>(var_0_06, callgetter:List`1[exp:class [mscorlib]System.Collections.Generic.List`1<class Ionic.Zip.ZipEntry>](ZipFile::get_ZipEntriesAsList, ldloc:ZipFile(this)))
1418}
1419
1420 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1421 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1422 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1423 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1424 --- End of inner exception stack trace ---
1425 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1426 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1427*/;
1428 }
1429 }
1430
1431 // Token: 0x17000074 RID: 116
1432 public ZipEntry this[string fileName]
1433 {
1434 get
1435 {
1436 /*
1437An exception occurred when decompiling this method (060001C9)
1438
1439ICSharpCode.Decompiler.DecompilerException: Error decompiling Ionic.Zip.ZipEntry Ionic.Zip.ZipFile::get_Item(System.String)
1440
1441 ---> System.Exception: Basic block has to end with unconditional control flow.
1442{
1443 IL_0003:
1444 stloc:string(var_0_09, call:string(SharedUtilities::NormalizePathForUseInZipFile, ldloc:string(fileName)))
1445 stloc:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(var_1_10, ldfld:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(ZipFile::_entries, ldloc:ZipFile(this)))
1446 stloc:string(var_2_21, call:string(string::Replace, ldloc:string(var_0_09), ldstr:string("/"), ldstr:string("\\")))
1447 stloc:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(var_3_28, ldfld:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(ZipFile::_entries, ldloc:ZipFile(this)))
1448 stloc:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(var_4_2F, ldfld:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(ZipFile::_entries, ldloc:ZipFile(this)))
1449}
1450
1451 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1452 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1453 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1454 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1455 --- End of inner exception stack trace ---
1456 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1457 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1458*/;
1459 }
1460 }
1461
1462 // Token: 0x17000075 RID: 117
1463 // (get) Token: 0x060001CA RID: 458 RVA: 0x00006C5C File Offset: 0x00004E5C
1465 {
1466 get
1467 {
1468 /*
1469An exception occurred when decompiling this method (060001CA)
1470
1471ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.ICollection`1<System.String> Ionic.Zip.ZipFile::get_EntryFileNames()
1472
1473 ---> System.Exception: Basic block has to end with unconditional control flow.
1474{
1475 Block_0:
1476 stloc:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(var_0_06, ldfld:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(ZipFile::_entries, ldloc:ZipFile(this)))
1477}
1478
1479 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1480 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1481 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1482 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1483 --- End of inner exception stack trace ---
1484 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1485 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1486*/;
1487 }
1488 }
1489
1490 // Token: 0x17000076 RID: 118
1491 // (get) Token: 0x060001CB RID: 459 RVA: 0x00006C70 File Offset: 0x00004E70
1493 {
1494 get
1495 {
1496 /*
1497An exception occurred when decompiling this method (060001CB)
1498
1499ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.ICollection`1<Ionic.Zip.ZipEntry> Ionic.Zip.ZipFile::get_Entries()
1500
1501 ---> System.Exception: Basic block has to end with unconditional control flow.
1502{
1503 Block_0:
1504 stloc:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(var_0_06, ldfld:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(ZipFile::_entries, ldloc:ZipFile(this)))
1505}
1506
1507 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1508 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1509 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1510 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1511 --- End of inner exception stack trace ---
1512 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1513 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1514*/;
1515 }
1516 }
1517
1518 // Token: 0x17000077 RID: 119
1519 // (get) Token: 0x060001CC RID: 460 RVA: 0x00006C84 File Offset: 0x00004E84
1521 {
1522 get
1523 {
1524 return this.Entries;
1525 }
1526 }
1527
1528 // Token: 0x17000078 RID: 120
1529 // (get) Token: 0x060001CD RID: 461 RVA: 0x00006CD0 File Offset: 0x00004ED0
1530 public int Count
1531 {
1532 get
1533 {
1534 /*
1535An exception occurred when decompiling this method (060001CD)
1536
1537ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 Ionic.Zip.ZipFile::get_Count()
1538
1539 ---> System.Exception: Basic block has to end with unconditional control flow.
1540{
1541 Block_0:
1542 stloc:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(var_0_06, ldfld:class [mscorlib]System.Collections.Generic.Dictionary`2<string, class Ionic.Zip.ZipEntry>(ZipFile::_entries, ldloc:ZipFile(this)))
1543}
1544
1545 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1546 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1547 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1548 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1549 --- End of inner exception stack trace ---
1550 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1551 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1552*/;
1553 }
1554 }
1555
1556 // Token: 0x060001CE RID: 462 RVA: 0x00006CE4 File Offset: 0x00004EE4
1557 public void RemoveEntry(ZipEntry entry)
1558 {
1559 while (entry == null)
1560 {
1561 }
1564 this._contentsChanged = true;
1565 }
1566
1567 // Token: 0x060001CF RID: 463 RVA: 0x00006D10 File Offset: 0x00004F10
1568 public void RemoveEntry(string fileName)
1569 {
1571 do
1572 {
1573 if (!true)
1574 {
1575 }
1576 string text;
1577 zipEntry = this[text];
1578 }
1579 while (zipEntry == null);
1580 this.RemoveEntry(zipEntry);
1581 }
1582
1583 // Token: 0x060001D0 RID: 464 RVA: 0x00006D34 File Offset: 0x00004F34
1584 public void Dispose()
1585 {
1586 GC.SuppressFinalize(this);
1587 }
1588
1589 // Token: 0x060001D1 RID: 465 RVA: 0x00006D48 File Offset: 0x00004F48
1590 protected virtual void Dispose(bool disposeManagedResources)
1591 {
1592 if (!this._disposed)
1593 {
1594 if (!this._ReadStreamIsOurs || this._readstream != null)
1595 {
1596 }
1597 if (this._temporaryFileName == null || this._name == null || this._writestream != null)
1598 {
1599 }
1600 this._disposed = true;
1601 }
1602 }
1603
1604 // Token: 0x17000079 RID: 121
1605 // (get) Token: 0x060001D2 RID: 466 RVA: 0x00006D8C File Offset: 0x00004F8C
1607 {
1608 get
1609 {
1610 /*
1611An exception occurred when decompiling this method (060001D2)
1612
1613ICSharpCode.Decompiler.DecompilerException: Error decompiling System.IO.Stream Ionic.Zip.ZipFile::get_ReadStream()
1614
1615 ---> System.Exception: Basic block has to end with unconditional control flow.
1616{
1617 IL_001A:
1618 stloc:FileStream(var_1_23, call:FileStream(File::Open, ldloc:string(var_0), ldc.i4:FileMode(3), ldc.i4:FileAccess(1), ldc.i4:FileShare(3)))
1619 stfld:Stream(ZipFile::_readstream, ldloc:ZipFile(this), ldloc:FileStream[exp:Stream](var_1_23))
1620 stfld:bool(ZipFile::_ReadStreamIsOurs, ldloc:ZipFile(this), ldc.i4:bool(1))
1621}
1622
1623 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1624 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1625 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1626 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1627 --- End of inner exception stack trace ---
1628 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1629 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1630*/;
1631 }
1632 }
1633
1634 // Token: 0x1700007A RID: 122
1635 // (get) Token: 0x060001D3 RID: 467 RVA: 0x00006DCC File Offset: 0x00004FCC
1636 // (set) Token: 0x060001D4 RID: 468 RVA: 0x00006E14 File Offset: 0x00005014
1638 {
1639 get
1640 {
1641 /*
1642An exception occurred when decompiling this method (060001D3)
1643
1644ICSharpCode.Decompiler.DecompilerException: Error decompiling System.IO.Stream Ionic.Zip.ZipFile::get_WriteStream()
1645
1646 ---> System.Exception: Basic block has to end with unconditional control flow.
1647{
1648 Block_3:
1649 stloc:string(var_5_39, call:string(Path::GetDirectoryName, ldloc:string(var_1_12)))
1650}
1651
1652 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
1653 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
1654 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
1655 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
1656 --- End of inner exception stack trace ---
1657 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
1658 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
1659*/;
1660 }
1661 set
1662 {
1663 while (value != null)
1664 {
1665 }
1666 }
1667 }
1668
1669 // Token: 0x1700007B RID: 123
1670 // (get) Token: 0x060001D5 RID: 469 RVA: 0x00006E24 File Offset: 0x00005024
1671 private string ArchiveNameForEvent
1672 {
1673 get
1674 {
1675 string name = this._name;
1676 return "(stream)";
1677 }
1678 }
1679
1680 // Token: 0x14000001 RID: 1
1681 // (add) Token: 0x060001D6 RID: 470 RVA: 0x00006E40 File Offset: 0x00005040
1682 // (remove) Token: 0x060001D7 RID: 471 RVA: 0x00006E68 File Offset: 0x00005068
1684 {
1685 add
1686 {
1688 if (@delegate != null && @delegate == null)
1689 {
1690 return;
1691 }
1692 }
1693 remove
1694 {
1696 if (@delegate != null && @delegate == null)
1697 {
1698 return;
1699 }
1700 }
1701 }
1702
1703 // Token: 0x060001D8 RID: 472 RVA: 0x00006E90 File Offset: 0x00005090
1704 internal bool OnSaveBlock(ZipEntry entry, long bytesXferred, long totalBytesToXfer)
1705 {
1706 if (this.SaveProgress != null)
1707 {
1708 string name = this._name;
1710 {
1712 }
1713 }
1714 return this._saveOperationCanceled;
1715 }
1716
1717 // Token: 0x060001D9 RID: 473 RVA: 0x00006ED0 File Offset: 0x000050D0
1718 private void OnSaveEntry(int current, ZipEntry entry, bool before)
1719 {
1720 if (this.SaveProgress != null)
1721 {
1722 string name = this._name;
1724 if (9 != 0)
1725 {
1727 }
1728 }
1729 }
1730
1731 // Token: 0x060001DA RID: 474 RVA: 0x00006F00 File Offset: 0x00005100
1733 {
1734 if (this.SaveProgress != null && this._name != null)
1735 {
1737 }
1738 }
1739
1740 // Token: 0x060001DB RID: 475 RVA: 0x00006F24 File Offset: 0x00005124
1741 private void OnSaveStarted()
1742 {
1743 if (this.SaveProgress != null)
1744 {
1745 string name = this._name;
1746 if (SaveProgressEventArgs.Started("(stream)")._cancel)
1747 {
1749 }
1750 }
1751 }
1752
1753 // Token: 0x060001DC RID: 476 RVA: 0x00006F58 File Offset: 0x00005158
1754 private void OnSaveCompleted()
1755 {
1756 if (this.SaveProgress != null)
1757 {
1758 string name = this._name;
1760 return;
1761 }
1762 }
1763
1764 // Token: 0x14000002 RID: 2
1765 // (add) Token: 0x060001DD RID: 477 RVA: 0x00006F80 File Offset: 0x00005180
1766 // (remove) Token: 0x060001DE RID: 478 RVA: 0x00006FA8 File Offset: 0x000051A8
1768 {
1769 add
1770 {
1772 if (@delegate != null && @delegate == null)
1773 {
1774 return;
1775 }
1776 }
1777 remove
1778 {
1780 if (@delegate != null && @delegate == null)
1781 {
1782 return;
1783 }
1784 }
1785 }
1786
1787 // Token: 0x060001DF RID: 479 RVA: 0x00006FD0 File Offset: 0x000051D0
1788 private void OnReadStarted()
1789 {
1790 if (this.ReadProgress != null)
1791 {
1792 string name = this._name;
1794 return;
1795 }
1796 }
1797
1798 // Token: 0x060001E0 RID: 480 RVA: 0x00006FF8 File Offset: 0x000051F8
1799 private void OnReadCompleted()
1800 {
1801 if (this.ReadProgress != null)
1802 {
1803 string name = this._name;
1805 return;
1806 }
1807 }
1808
1809 // Token: 0x060001E1 RID: 481 RVA: 0x00007020 File Offset: 0x00005220
1810 internal void OnReadBytes(ZipEntry entry)
1811 {
1812 if (this.ReadProgress != null)
1813 {
1814 string name = this._name;
1815 Stream readStream = this.ReadStream;
1817 return;
1818 }
1819 }
1820
1821 // Token: 0x060001E2 RID: 482 RVA: 0x0000704C File Offset: 0x0000524C
1822 internal void OnReadEntry(bool before, ZipEntry entry)
1823 {
1824 if (this.ReadProgress != null)
1825 {
1826 string name = this._name;
1828 return;
1829 }
1830 }
1831
1832 // Token: 0x1700007C RID: 124
1833 // (get) Token: 0x060001E3 RID: 483 RVA: 0x00007074 File Offset: 0x00005274
1835 {
1836 get
1837 {
1839 long fileLength;
1840 if (this._ReadStreamIsOurs)
1841 {
1842 fileLength = SharedUtilities.GetFileLength(this._name);
1843 return fileLength;
1844 }
1845 this._lengthOfReadStream = fileLength;
1846 return fileLength;
1847 }
1848 }
1849
1850 // Token: 0x14000003 RID: 3
1851 // (add) Token: 0x060001E4 RID: 484 RVA: 0x000070A8 File Offset: 0x000052A8
1852 // (remove) Token: 0x060001E5 RID: 485 RVA: 0x000070D0 File Offset: 0x000052D0
1854 {
1855 add
1856 {
1858 if (@delegate != null && @delegate == null)
1859 {
1860 return;
1861 }
1862 }
1863 remove
1864 {
1866 if (@delegate != null && @delegate == null)
1867 {
1868 return;
1869 }
1870 }
1871 }
1872
1873 // Token: 0x060001E6 RID: 486 RVA: 0x000070F8 File Offset: 0x000052F8
1874 private void OnExtractEntry(int current, bool before, ZipEntry currentEntry, string path)
1875 {
1876 if (this.ExtractProgress != null)
1877 {
1878 string name = this._name;
1880 if (17 != 0)
1881 {
1883 }
1884 }
1885 }
1886
1887 // Token: 0x060001E7 RID: 487 RVA: 0x00007128 File Offset: 0x00005328
1889 {
1890 if (this.ExtractProgress != null)
1891 {
1892 string name = this._name;
1894 {
1896 }
1897 }
1898 return this._extractOperationCanceled;
1899 }
1900
1901 // Token: 0x060001E8 RID: 488 RVA: 0x00007168 File Offset: 0x00005368
1902 internal bool OnSingleEntryExtract(ZipEntry entry, string path, bool before)
1903 {
1904 if (this.ExtractProgress != null)
1905 {
1906 string name = this._name;
1909 if (extractProgressEventArgs2._cancel)
1910 {
1912 }
1913 }
1914 return this._extractOperationCanceled;
1915 }
1916
1917 // Token: 0x060001E9 RID: 489 RVA: 0x000071A8 File Offset: 0x000053A8
1918 internal bool OnExtractExisting(ZipEntry entry, string path)
1919 {
1920 if (this.ExtractProgress != null)
1921 {
1922 string name = this._name;
1923 if (ExtractProgressEventArgs.ExtractExisting("(stream)", entry, path)._cancel)
1924 {
1926 }
1927 }
1928 return this._extractOperationCanceled;
1929 }
1930
1931 // Token: 0x060001EA RID: 490 RVA: 0x000071E4 File Offset: 0x000053E4
1932 private void OnExtractAllCompleted(string path)
1933 {
1934 if (this.ExtractProgress != null)
1935 {
1936 string name = this._name;
1938 return;
1939 }
1940 }
1941
1942 // Token: 0x060001EB RID: 491 RVA: 0x00007210 File Offset: 0x00005410
1943 private void OnExtractAllStarted(string path)
1944 {
1945 if (this.ExtractProgress != null)
1946 {
1947 string name = this._name;
1949 return;
1950 }
1951 }
1952
1953 // Token: 0x14000004 RID: 4
1954 // (add) Token: 0x060001EC RID: 492 RVA: 0x0000723C File Offset: 0x0000543C
1955 // (remove) Token: 0x060001ED RID: 493 RVA: 0x00007264 File Offset: 0x00005464
1957 {
1958 add
1959 {
1961 if (@delegate != null && @delegate == null)
1962 {
1963 return;
1964 }
1965 }
1966 remove
1967 {
1969 if (@delegate != null && @delegate == null)
1970 {
1971 return;
1972 }
1973 }
1974 }
1975
1976 // Token: 0x060001EE RID: 494 RVA: 0x0000728C File Offset: 0x0000548C
1977 private void OnAddStarted()
1978 {
1979 if (this.AddProgress != null)
1980 {
1981 string name = this._name;
1982 if (AddProgressEventArgs.Started("(stream)")._cancel)
1983 {
1985 }
1986 }
1987 }
1988
1989 // Token: 0x060001EF RID: 495 RVA: 0x000072C0 File Offset: 0x000054C0
1990 private void OnAddCompleted()
1991 {
1992 if (this.AddProgress != null)
1993 {
1994 string name = this._name;
1996 return;
1997 }
1998 }
1999
2000 // Token: 0x060001F0 RID: 496 RVA: 0x000072E8 File Offset: 0x000054E8
2001 internal void AfterAddEntry(ZipEntry entry)
2002 {
2003 if (this.AddProgress != null)
2004 {
2005 string name = this._name;
2008 if (addProgressEventArgs._cancel)
2009 {
2011 }
2012 }
2013 }
2014
2015 // Token: 0x14000005 RID: 5
2016 // (add) Token: 0x060001F1 RID: 497 RVA: 0x0000731C File Offset: 0x0000551C
2017 // (remove) Token: 0x060001F2 RID: 498 RVA: 0x00007344 File Offset: 0x00005544
2019 {
2020 add
2021 {
2023 if (@delegate != null && @delegate == null)
2024 {
2025 return;
2026 }
2027 }
2028 remove
2029 {
2031 if (@delegate != null && @delegate == null)
2032 {
2033 return;
2034 }
2035 }
2036 }
2037
2038 // Token: 0x060001F3 RID: 499 RVA: 0x0000736C File Offset: 0x0000556C
2039 internal bool OnZipErrorSaving(ZipEntry entry, Exception exc)
2040 {
2041 if (this.ZipError != null)
2042 {
2043 object @lock = this.LOCK;
2044 Monitor.Enter(@lock);
2047 if (zipErrorEventArgs._cancel)
2048 {
2050 }
2051 Monitor.Exit(@lock);
2052 }
2053 return this._saveOperationCanceled;
2054 }
2055
2056 // Token: 0x060001F4 RID: 500 RVA: 0x000073E8 File Offset: 0x000055E8
2057 public void ExtractAll(string path)
2058 {
2059 this._InternalExtractAll(path, true);
2060 }
2061
2062 // Token: 0x060001F5 RID: 501 RVA: 0x00007400 File Offset: 0x00005600
2068
2069 // Token: 0x060001F6 RID: 502 RVA: 0x0000741C File Offset: 0x0000561C
2071 {
2072 for (;;)
2073 {
2075 int num = 1;
2076 this._inExtractAll = num != 0;
2077 this.OnExtractAllStarted(path);
2080 if ("Name" != null && "Name" == null)
2081 {
2082 goto IL_0151;
2083 }
2084 if ("Modified" != null && "Modified" == null)
2085 {
2086 goto IL_0157;
2087 }
2088 if ("Size" != null && "Size" == null)
2089 {
2090 goto IL_015D;
2091 }
2092 if ("Ratio" != null && "Ratio" == null)
2093 {
2094 goto IL_0163;
2095 }
2096 if ("Packed" != null && "Packed" == null)
2097 {
2098 goto IL_0169;
2099 }
2101 if (this._StatusMessageTextWriter != null)
2102 {
2103 break;
2104 }
2105 string password = this._Password;
2106 if (password != null)
2107 {
2108 if (password != null)
2109 {
2110 continue;
2111 }
2112 if (!true)
2113 {
2114 return;
2115 }
2116 }
2119 {
2120 goto Block_10;
2121 }
2122 }
2123 DateTime dateTime;
2124 string text = dateTime.ToString("yyyy-MM-dd HH:mm:ss");
2125 if (text == null || text != null)
2126 {
2127 return;
2128 }
2129 throw new ArrayTypeMismatchException();
2130 Block_10:
2131 if (false)
2132 {
2133 throw new OutOfMemoryException();
2134 }
2135 if (!this._extractOperationCanceled)
2136 {
2138 string text3;
2139 string text2 = Path.Combine(path, text3);
2140 return;
2141 }
2142 return;
2143 IL_0151:
2144 throw new ArrayTypeMismatchException();
2145 IL_0157:
2146 throw new ArrayTypeMismatchException();
2147 IL_015D:
2148 throw new ArrayTypeMismatchException();
2149 IL_0163:
2150 throw new ArrayTypeMismatchException();
2151 IL_0169:
2152 throw new ArrayTypeMismatchException();
2153 }
2154
2155 // Token: 0x060001F7 RID: 503 RVA: 0x000075FC File Offset: 0x000057FC
2156 public static ZipFile Read(string fileName)
2157 {
2158 if (!true)
2159 {
2160 }
2162 return zipFile;
2163 }
2164
2165 // Token: 0x060001F8 RID: 504 RVA: 0x00007610 File Offset: 0x00005810
2166 public static ZipFile Read(string fileName, ReadOptions options)
2167 {
2168 while (fileName == null)
2169 {
2170 }
2171 int stringLength = fileName._stringLength;
2173 return zipFile;
2174 }
2175
2176 // Token: 0x060001F9 RID: 505 RVA: 0x00007628 File Offset: 0x00005828
2178 {
2179 /*
2180An exception occurred when decompiling this method (060001F9)
2181
2182ICSharpCode.Decompiler.DecompilerException: Error decompiling Ionic.Zip.ZipFile Ionic.Zip.ZipFile::Read(System.String,System.IO.TextWriter,System.Text.Encoding,System.EventHandler`1<Ionic.Zip.ReadProgressEventArgs>)
2183
2184 ---> System.Exception: Basic block has to end with unconditional control flow.
2185{
2186 IL_000C:
2187 brtrue(IL_0000, logicnot:bool(ldloc:string[exp:bool](fileName)))
2188}
2189
2190 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
2191 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
2192 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
2193 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
2194 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
2195 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
2196 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
2197 --- End of inner exception stack trace ---
2198 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
2199 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
2200*/;
2201 }
2202
2203 // Token: 0x060001FA RID: 506 RVA: 0x00007644 File Offset: 0x00005844
2205 {
2206 if (!true)
2207 {
2208 }
2210 return zipFile;
2211 }
2212
2213 // Token: 0x060001FB RID: 507 RVA: 0x00007658 File Offset: 0x00005858
2215 {
2216 while (zipStream == null)
2217 {
2218 }
2219 object identity = zipStream._identity;
2220 Stream.ReadWriteTask activeReadWriteTask = zipStream._activeReadWriteTask;
2221 SemaphoreSlim asyncActiveSemaphore = zipStream._asyncActiveSemaphore;
2223 return zipFile;
2224 }
2225
2226 // Token: 0x060001FC RID: 508 RVA: 0x00007680 File Offset: 0x00005880
2228 {
2229 /*
2230An exception occurred when decompiling this method (060001FC)
2231
2232ICSharpCode.Decompiler.DecompilerException: Error decompiling Ionic.Zip.ZipFile Ionic.Zip.ZipFile::Read(System.IO.Stream,System.IO.TextWriter,System.Text.Encoding,System.EventHandler`1<Ionic.Zip.ReadProgressEventArgs>)
2233
2234 ---> System.Exception: Basic block has to end with unconditional control flow.
2235{
2236 IL_0009:
2237 brtrue(IL_0000, logicnot:bool(ldloc:Encoding[exp:bool](encoding)))
2238}
2239
2240 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
2241 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
2242 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
2243 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
2244 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
2245 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
2246 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
2247 --- End of inner exception stack trace ---
2248 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
2249 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
2250*/;
2251 }
2252
2253 // Token: 0x060001FD RID: 509 RVA: 0x00007698 File Offset: 0x00005898
2254 private static void ReadIntoInstance(ZipFile zf)
2255 {
2256 Stream readStream = zf.ReadStream;
2257 string name = zf._name;
2259 zf.OnReadStarted();
2260 uint num = ZipFile.ReadFirstFourBytes(readStream);
2261 int num2 = 19280;
2262 long num3 = SharedUtilities.FindSignature(readStream, num2);
2264 }
2265
2266 // Token: 0x060001FE RID: 510 RVA: 0x0000773C File Offset: 0x0000593C
2268 {
2269 Stream readStream = zf.ReadStream;
2270 long num;
2272 int num2 = SharedUtilities.ReadInt(readStream);
2273 }
2274
2275 // Token: 0x060001FF RID: 511 RVA: 0x00007760 File Offset: 0x00005960
2276 private static uint ReadFirstFourBytes(Stream s)
2277 {
2278 /*
2279An exception occurred when decompiling this method (060001FF)
2280
2281ICSharpCode.Decompiler.DecompilerException: Error decompiling System.UInt32 Ionic.Zip.ZipFile::ReadFirstFourBytes(System.IO.Stream)
2282
2283 ---> System.Exception: Basic block has to end with unconditional control flow.
2284{
2285 IL_0000:
2286 brtrue(IL_0000, ldc.i4:bool(1))
2287}
2288
2289 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
2290 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
2291 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
2292 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
2293 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
2294 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
2295 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
2296 --- End of inner exception stack trace ---
2297 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
2298 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
2299*/;
2300 }
2301
2302 // Token: 0x06000200 RID: 512 RVA: 0x00007770 File Offset: 0x00005970
2303 private static void ReadCentralDirectory(ZipFile zf)
2304 {
2305 if (!true)
2306 {
2307 }
2309 if (zipEntry != null)
2310 {
2311 if (zf._StatusMessageTextWriter != null)
2312 {
2314 }
2316 string fileNameInArchive2 = zipEntry._FileNameInArchive;
2317 bool inputUsesZip = zipEntry._InputUsesZip64;
2318 string fileNameInArchive3 = zipEntry._FileNameInArchive;
2319 return;
2320 }
2321 zf._zip64 = Zip64Option.Always;
2322 long locEndOfCDS = zf._locEndOfCDS;
2323 Stream readStream = zf.ReadStream;
2324 long locEndOfCDS2 = zf._locEndOfCDS;
2326 if (zf._StatusMessageTextWriter != null)
2327 {
2328 bool flag = string.IsNullOrEmpty(zf._Comment);
2329 TextWriter statusMessageTextWriter = zf._StatusMessageTextWriter;
2330 string comment = zf._Comment;
2331 if (zf._StatusMessageTextWriter != null)
2332 {
2334 }
2335 }
2336 zf.OnReadCompleted();
2337 }
2338
2339 // Token: 0x06000201 RID: 513 RVA: 0x00007814 File Offset: 0x00005A14
2340 private static void ReadIntoInstance_Orig(ZipFile zf)
2341 {
2342 zf.OnReadStarted();
2343 if (zf._StatusMessageTextWriter != null && zf._name != null)
2344 {
2345 return;
2346 }
2348 if (zipEntry != null)
2349 {
2350 if (zf._StatusMessageTextWriter != null)
2351 {
2353 }
2355 string fileNameInArchive2 = zipEntry._FileNameInArchive;
2356 return;
2357 }
2359 if (zipEntry2 != null)
2360 {
2362 string fileNameInArchive3 = zipEntry2._FileNameInArchive;
2363 if (entries2 != null)
2364 {
2365 string comment = zipEntry2._Comment;
2366 if (zipEntry2._IsDirectory)
2367 {
2368 }
2369 }
2370 string fileNameInArchive4 = zipEntry2._FileNameInArchive;
2371 return;
2372 }
2373 long locEndOfCDS = zf._locEndOfCDS;
2374 Stream readStream = zf.ReadStream;
2375 long locEndOfCDS2 = zf._locEndOfCDS;
2377 if (zf._StatusMessageTextWriter != null)
2378 {
2379 bool flag = string.IsNullOrEmpty(zf._Comment);
2380 TextWriter statusMessageTextWriter = zf._StatusMessageTextWriter;
2381 string comment2 = zf._Comment;
2382 }
2383 zf.OnReadCompleted();
2384 }
2385
2386 // Token: 0x06000202 RID: 514 RVA: 0x000078E8 File Offset: 0x00005AE8
2388 {
2389 Stream readStream = zf.ReadStream;
2390 int num = SharedUtilities.ReadSignature(readStream);
2391 ushort num2;
2393 ushort num3;
2395 uint num4;
2397 int num5 = SharedUtilities.ReadSignature(readStream);
2398 int num6 = SharedUtilities.ReadSignature(readStream);
2399 Stream readStream2 = zf.ReadStream;
2400 uint diskNumberWithCd = zf._diskNumberWithCd;
2401 if (diskNumberWithCd == 0U)
2402 {
2403 if (diskNumberWithCd == 0U)
2404 {
2405 }
2407 }
2408 if (diskNumberWithCd == 0U)
2409 {
2410 }
2412 }
2413
2414 // Token: 0x06000203 RID: 515 RVA: 0x00007974 File Offset: 0x00005B74
2415 private static void ReadZipFileComment(ZipFile zf)
2416 {
2417 Stream readStream = zf.ReadStream;
2418 Stream readStream2 = zf.ReadStream;
2419 Encoding alternateEncoding = zf._alternateEncoding;
2421 zf._contentsChanged = true;
2422 }
2423
2424 // Token: 0x06000204 RID: 516 RVA: 0x000079A4 File Offset: 0x00005BA4
2425 public static bool IsZipFile(string fileName)
2426 {
2427 if (!true)
2428 {
2429 }
2430 bool flag;
2431 return flag;
2432 }
2433
2434 // Token: 0x06000205 RID: 517 RVA: 0x000079B8 File Offset: 0x00005BB8
2435 public static bool IsZipFile(string fileName, bool testExtract)
2436 {
2437 int num = 3;
2439 bool flag = ZipFile.IsZipFile(fileStream, num != 0);
2440 long num2 = 0L;
2441 if (fileStream != null)
2442 {
2443 }
2444 if (num2 == 0L)
2445 {
2446 }
2447 throw new OutOfMemoryException();
2448 }
2449
2450 // Token: 0x06000206 RID: 518 RVA: 0x00007A18 File Offset: 0x00005C18
2451 public static bool IsZipFile(Stream stream, bool testExtract)
2452 {
2453 if (!true)
2454 {
2455 }
2457 IEnumerator<ZipEntry> enumerator = zipFile.GetEnumerator();
2458 long num = 0L;
2459 if (enumerator != null)
2460 {
2461 }
2462 if (num == 0L)
2463 {
2464 long num2 = 0L;
2465 if (zipFile != null)
2466 {
2467 }
2468 if (num2 == 0L)
2469 {
2470 }
2471 throw new OutOfMemoryException();
2472 }
2473 throw new OutOfMemoryException();
2474 }
2475
2476 // Token: 0x06000207 RID: 519 RVA: 0x00007A80 File Offset: 0x00005C80
2477 private void DeleteFileWithRetry(string filename)
2478 {
2479 File.Delete(filename);
2480 }
2481
2482 // Token: 0x06000208 RID: 520 RVA: 0x00007AB0 File Offset: 0x00005CB0
2483 public void Save()
2484 {
2485 int num = 1;
2486 this.OnSaveStarted();
2487 if (this.WriteStream != null)
2488 {
2489 bool flag;
2490 if (num == 0 || flag)
2491 {
2492 if (flag)
2493 {
2494 if (flag)
2495 {
2496 }
2497 if (flag)
2498 {
2499 if (flag)
2500 {
2501 return;
2502 }
2503 if ("No save is necessary...." != null)
2504 {
2505 }
2506 return;
2507 }
2508 }
2509 else
2510 {
2512 if (collection != null)
2513 {
2514 return;
2515 }
2516 return;
2517 }
2518 }
2519 throw new OutOfMemoryException();
2520 }
2521 throw new OutOfMemoryException();
2522 }
2523
2524 // Token: 0x06000209 RID: 521 RVA: 0x00007C48 File Offset: 0x00005E48
2526 {
2527 }
2528
2529 // Token: 0x0600020A RID: 522 RVA: 0x00007C84 File Offset: 0x00005E84
2530 private void RemoveTempFile()
2531 {
2532 bool flag = File.Exists(this._temporaryFileName);
2535 }
2536
2537 // Token: 0x0600020B RID: 523 RVA: 0x00007CB8 File Offset: 0x00005EB8
2539 {
2540 if (this._name != null)
2541 {
2542 if (this._writestream != null)
2543 {
2544 }
2545 if (this._temporaryFileName != null)
2546 {
2547 this.RemoveTempFile();
2548 }
2549 }
2550 }
2551
2552 // Token: 0x0600020C RID: 524 RVA: 0x00007CE8 File Offset: 0x00005EE8
2553 public void Save(string fileName)
2554 {
2555 string name = this._name;
2556 if (name != null)
2557 {
2559 return;
2560 }
2561 this._name = fileName;
2562 bool flag = Directory.Exists(fileName);
2563 string name2 = this._name;
2564 this._contentsChanged = true;
2565 bool flag2 = File.Exists(name2);
2567 this.Save();
2568 }
2569
2570 // Token: 0x0600020D RID: 525 RVA: 0x00007D38 File Offset: 0x00005F38
2572 {
2573 if (outputStream != null)
2574 {
2575 this._contentsChanged = true;
2576 this.Save();
2577 return;
2578 }
2579 }
2580
2581 // Token: 0x0600020E RID: 526 RVA: 0x00007D58 File Offset: 0x00005F58
2583 {
2584 }
2585
2586 // Token: 0x0600020F RID: 527 RVA: 0x00007D68 File Offset: 0x00005F68
2588 {
2589 /*
2590An exception occurred when decompiling this method (0600020F)
2591
2592ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator Ionic.Zip.ZipFile::System.Collections.IEnumerable.GetEnumerator()
2593
2594 ---> System.Exception: Basic block has to end with unconditional control flow.
2595{
2596 Block_0:
2597 stloc:class [mscorlib]System.Collections.Generic.IEnumerator`1<class Ionic.Zip.ZipEntry>(var_0_06, call:IEnumerator`1[exp:class [mscorlib]System.Collections.Generic.IEnumerator`1<class Ionic.Zip.ZipEntry>](ZipFile::GetEnumerator, ldloc:ZipFile(this)))
2598}
2599
2600 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
2601 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
2602 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
2603 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
2604 --- End of inner exception stack trace ---
2605 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
2606 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
2607*/;
2608 }
2609
2610 // Token: 0x06000210 RID: 528 RVA: 0x00007D7C File Offset: 0x00005F7C
2611 [DispId(-4)]
2613 {
2614 /*
2615An exception occurred when decompiling this method (06000210)
2616
2617ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.IEnumerator Ionic.Zip.ZipFile::GetNewEnum()
2618
2619 ---> System.Exception: Basic block has to end with unconditional control flow.
2620{
2621 Block_0:
2622 stloc:class [mscorlib]System.Collections.Generic.IEnumerator`1<class Ionic.Zip.ZipEntry>(var_0_06, call:IEnumerator`1[exp:class [mscorlib]System.Collections.Generic.IEnumerator`1<class Ionic.Zip.ZipEntry>](ZipFile::GetEnumerator, ldloc:ZipFile(this)))
2623}
2624
2625 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
2626 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
2627 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
2628 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
2629 --- End of inner exception stack trace ---
2630 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
2631 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
2632*/;
2633 }
2634
2635 // Token: 0x06000211 RID: 529 RVA: 0x00007D90 File Offset: 0x00005F90
2636 // Note: this type is marked as 'beforefieldinit'.
2637 static ZipFile()
2638 {
2639 Encoding encoding = Encoding.GetEncoding("IBM437");
2640 }
2641
2642 // Token: 0x040000BD RID: 189
2644
2645 // Token: 0x040000BE RID: 190
2647
2648 // Token: 0x040000BF RID: 191
2650
2651 // Token: 0x040000C0 RID: 192
2653
2654 // Token: 0x040000C1 RID: 193
2655 private ushort _versionMadeBy;
2656
2657 // Token: 0x040000C2 RID: 194
2659
2660 // Token: 0x040000C3 RID: 195
2661 private uint _diskNumberWithCd;
2662
2663 // Token: 0x040000C4 RID: 196
2665
2666 // Token: 0x040000C5 RID: 197
2668
2669 // Token: 0x040000C6 RID: 198
2671
2672 // Token: 0x040000C7 RID: 199
2673 private bool _disposed;
2674
2675 // Token: 0x040000C8 RID: 200
2677
2678 // Token: 0x040000C9 RID: 201
2680
2681 // Token: 0x040000CA RID: 202
2682 private string _name;
2683
2684 // Token: 0x040000CB RID: 203
2685 private string _readName;
2686
2687 // Token: 0x040000CC RID: 204
2688 private string _Comment;
2689
2690 // Token: 0x040000CD RID: 205
2691 internal string _Password;
2692
2693 // Token: 0x040000CE RID: 206
2694 private bool _emitNtfsTimes;
2695
2696 // Token: 0x040000CF RID: 207
2697 private bool _emitUnixTimes;
2698
2699 // Token: 0x040000D0 RID: 208
2701
2702 // Token: 0x040000D1 RID: 209
2704
2705 // Token: 0x040000D2 RID: 210
2707
2708 // Token: 0x040000D3 RID: 211
2709 private string _temporaryFileName;
2710
2711 // Token: 0x040000D4 RID: 212
2712 private bool _contentsChanged;
2713
2714 // Token: 0x040000D5 RID: 213
2715 private bool _hasBeenSaved;
2716
2717 // Token: 0x040000D6 RID: 214
2718 private string _TempFileFolder;
2719
2720 // Token: 0x040000D7 RID: 215
2721 private bool _ReadStreamIsOurs;
2722
2723 // Token: 0x040000D8 RID: 216
2724 private object LOCK;
2725
2726 // Token: 0x040000D9 RID: 217
2728
2729 // Token: 0x040000DA RID: 218
2731
2732 // Token: 0x040000DB RID: 219
2734
2735 // Token: 0x040000DC RID: 220
2737
2738 // Token: 0x040000DD RID: 221
2739 private bool _JustSaved;
2740
2741 // Token: 0x040000DE RID: 222
2742 private long _locEndOfCDS;
2743
2744 // Token: 0x040000DF RID: 223
2746
2747 // Token: 0x040000E0 RID: 224
2749
2750 // Token: 0x040000E1 RID: 225
2751 private bool? _OutputUsesZip64;
2752
2753 // Token: 0x040000E2 RID: 226
2754 internal bool _inExtractAll;
2755
2756 // Token: 0x040000E3 RID: 227
2758
2759 // Token: 0x040000E4 RID: 228
2761
2762 // Token: 0x040000E5 RID: 229
2764
2765 // Token: 0x040000E6 RID: 230
2766 private int _BufferSize;
2767
2768 // Token: 0x040000E7 RID: 231
2770
2771 // Token: 0x040000E8 RID: 232
2772 private bool _SavingSfx;
2773
2774 // Token: 0x040000E9 RID: 233
2775 public static readonly int BufferSizeDefault;
2776
2777 // Token: 0x040000EA RID: 234
2779
2780 // Token: 0x040000EB RID: 235
2782
2783 // Token: 0x040000EC RID: 236
2785
2786 // Token: 0x040000ED RID: 237
2788
2789 // Token: 0x040000EE RID: 238
2791
2792 // Token: 0x040000EF RID: 239
2794
2795 // Token: 0x040000F0 RID: 240
2796 private bool <FullScan>k__BackingField;
2797
2798 // Token: 0x040000F1 RID: 241
2799 private bool <SortEntriesBeforeSaving>k__BackingField;
2800
2801 // Token: 0x040000F2 RID: 242
2802 private bool <AddDirectoryWillTraverseReparsePoints>k__BackingField;
2803
2804 // Token: 0x040000F3 RID: 243
2805 private int <CodecBufferSize>k__BackingField;
2806
2807 // Token: 0x040000F4 RID: 244
2808 private bool <FlattenFoldersOnExtract>k__BackingField;
2809
2810 // Token: 0x040000F5 RID: 245
2811 private CompressionLevel <CompressionLevel>k__BackingField;
2812
2813 // Token: 0x040000F6 RID: 246
2814 private ExtractExistingFileAction <ExtractExistingFile>k__BackingField;
2815
2816 // Token: 0x040000F7 RID: 247
2817 private SetCompressionCallback <SetCompression>k__BackingField;
2818
2819 // Token: 0x02000028 RID: 40
2820 private sealed class <>c__DisplayClass1
2821 {
2822 // Token: 0x06000212 RID: 530 RVA: 0x00007DA8 File Offset: 0x00005FA8
2824 {
2825 }
2826
2827 // Token: 0x06000213 RID: 531 RVA: 0x00007DBC File Offset: 0x00005FBC
2829 {
2833 return string.Compare(fileNameInArchive, fileNameInArchive2, stringComparison);
2834 }
2835
2836 // Token: 0x040000F8 RID: 248
2837 public StringComparison sc;
2838 }
2839
2840 // Token: 0x02000029 RID: 41
2841 private sealed class <GetEnumerator>d__3 : IEnumerator<ZipEntry>, IEnumerator, IDisposable
2842 {
2843 // Token: 0x06000214 RID: 532 RVA: 0x00007DE8 File Offset: 0x00005FE8
2844 private bool MoveNext()
2845 {
2846 if (this.<>1__state == 0)
2847 {
2849 int num = 1;
2850 this.<>1__state = num;
2851 int num2 = 1;
2852 this.<>1__state = num2;
2854 int num3 = 2;
2858 }
2859 throw new OutOfMemoryException();
2860 }
2861
2862 // Token: 0x1700007D RID: 125
2863 // (get) Token: 0x06000215 RID: 533 RVA: 0x00007E4C File Offset: 0x0000604C
2865 {
2867 get
2868 {
2869 return this.<>2__current;
2870 }
2871 }
2872
2873 // Token: 0x06000216 RID: 534 RVA: 0x00002122 File Offset: 0x00000322
2875 void IEnumerator.Reset()
2876 {
2877 throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
2878 }
2879
2880 // Token: 0x06000217 RID: 535 RVA: 0x00007E60 File Offset: 0x00006060
2881 void IDisposable.Dispose()
2882 {
2883 int num = this.<>1__state;
2884 this.<>m__Finally6();
2885 }
2886
2887 // Token: 0x1700007E RID: 126
2888 // (get) Token: 0x06000218 RID: 536 RVA: 0x00007E7C File Offset: 0x0000607C
2889 object IEnumerator.Current
2890 {
2892 get
2893 {
2894 /*
2895An exception occurred when decompiling this method (06000218)
2896
2897ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Object Ionic.Zip.ZipFile/<GetEnumerator>d__3::System.Collections.IEnumerator.get_Current()
2898
2899 ---> System.Exception: Basic block has to end with unconditional control flow.
2900{
2901 Block_0:
2902 stloc:ZipEntry(var_0_06, ldfld:ZipEntry('<GetEnumerator>d__3'::<>2__current, ldloc:'<GetEnumerator>d__3'(this)))
2903}
2904
2905 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
2906 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
2907 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
2908 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
2909 --- End of inner exception stack trace ---
2910 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
2911 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1683
2912*/;
2913 }
2914 }
2915
2916 // Token: 0x06000219 RID: 537 RVA: 0x00007E90 File Offset: 0x00006090
2919 {
2920 this.<>1__state = <>1__state;
2921 }
2922
2923 // Token: 0x0600021A RID: 538 RVA: 0x00007EAC File Offset: 0x000060AC
2924 private void <>m__Finally6()
2925 {
2926 int num = 1;
2927 this.<>1__state = num;
2928 }
2929
2930 // Token: 0x040000F9 RID: 249
2931 private ZipEntry <>2__current;
2932
2933 // Token: 0x040000FA RID: 250
2934 private int <>1__state;
2935
2936 // Token: 0x040000FB RID: 251
2937 public ZipFile <>4__this;
2938
2939 // Token: 0x040000FC RID: 252
2940 public ZipEntry <e>5__4;
2941
2942 // Token: 0x040000FD RID: 253
2944 }
2945 }
2946}
class f__AnonymousType0<< Count > j__TPar
static readonly long
static AddProgressEventArgs Started(string archiveName)
static AddProgressEventArgs Completed(string archiveName)
static ExtractProgressEventArgs BeforeExtractEntry(string archiveName, ZipEntry entry, string extractLocation)
static ExtractProgressEventArgs ExtractAllCompleted(string archiveName, string extractLocation)
static ExtractProgressEventArgs ByteUpdate(string archiveName, ZipEntry entry, long bytesWritten, long totalBytes)
static ExtractProgressEventArgs ExtractExisting(string archiveName, ZipEntry entry, string extractLocation)
static ExtractProgressEventArgs ExtractAllStarted(string archiveName, string extractLocation)
static uint GetAttributes(string lpFileName)
static ReadProgressEventArgs Completed(string archiveName)
static ReadProgressEventArgs Started(string archiveName)
static SaveProgressEventArgs ByteUpdate(string archiveName, ZipEntry entry, long bytesXferred, long totalBytes)
static SaveProgressEventArgs Started(string archiveName)
static SaveProgressEventArgs Completed(string archiveName)
static long GetFileLength(string fileName)
static long FindSignature(Stream stream, int SignatureToFind)
static int ReadSignature(Stream s)
static int ReadInt(Stream s)
static string NormalizePathForUseInZipFile(string pathName)
void MarkAsDirectory()
Definition ZipEntry.cs:926
static ZipEntry CreateFromFile(string filename, string nameInArchive)
Definition ZipEntry.cs:851
static ZipEntry CreateForWriter(string entryName, WriteDelegate d)
Definition ZipEntry.cs:871
static ZipEntry CreateForStream(string entryName, Stream s)
Definition ZipEntry.cs:861
static ZipEntry CreateForJitStreamProvider(string nameInArchive, OpenDelegate opener, CloseDelegate closer)
Definition ZipEntry.cs:881
static ZipEntry CreateFromNothing(string nameInArchive)
Definition ZipEntry.cs:841
string _FileNameInArchive
Definition ZipEntry.cs:2357
static string NameInArchive(string filename, string directoryPathInArchive)
Definition ZipEntry.cs:830
static ZipErrorEventArgs Saving(string archiveName, ZipEntry entry, Exception exception)
ExtractExistingFileAction ExtractExistingFile
Definition ZipFile.cs:1048
ZipEntry UpdateEntry(string entryName, string content)
Definition ZipFile.cs:271
void _InternalExtractAll(string path, bool overrideExtractExistingProperty)
Definition ZipFile.cs:2070
bool? InputUsesZip64
Definition ZipFile.cs:903
ZipEntry AddItem(string fileOrDirectoryName)
Definition ZipFile.cs:20
ZipEntry AddOrUpdateDirectoryImpl(string directoryName, string rootDirectoryPathInArchive, AddOrUpdateAction action, bool recurse, int level)
Definition ZipFile.cs:391
ZipOption _alternateEncodingUsage
Definition ZipFile.cs:2760
void InternalAddEntry(string name, ZipEntry entry)
Definition ZipFile.cs:384
ZipEntry UpdateFile(string fileName, string directoryPathInArchive)
Definition ZipFile.cs:121
bool OnSaveBlock(ZipEntry entry, long bytesXferred, long totalBytesToXfer)
Definition ZipFile.cs:1704
ZipEntry AddEntry(string entryName, Stream stream)
Definition ZipFile.cs:174
static void ReadIntoInstance_Orig(ZipFile zf)
Definition ZipFile.cs:2340
void ExtractAll(string path, ExtractExistingFileAction extractExistingFile)
Definition ZipFile.cs:2063
static ZipFile Read(Stream zipStream, ReadOptions options)
Definition ZipFile.cs:2214
static ZipFile()
Definition ZipFile.cs:2637
void RemoveEntries(ICollection< string > entriesToRemove)
Definition ZipFile.cs:65
EventHandler< ReadProgressEventArgs > ReadProgress
Definition ZipFile.cs:1768
ZipEntry UpdateEntry(string entryName, byte[] byteContent)
Definition ZipFile.cs:325
bool ContainsEntry(string name)
Definition ZipFile.cs:790
static bool CheckZipPassword(string zipFileName, string password)
Definition ZipFile.cs:520
ZipEntry UpdateEntry(string entryName, string content, Encoding encoding)
Definition ZipFile.cs:279
static ZipFile Read(Stream zipStream)
Definition ZipFile.cs:2204
uint _numberOfSegmentsForMostRecentSave
Definition ZipFile.cs:2667
void _InitInstance(string zipFileName, TextWriter statusMessageWriter)
Definition ZipFile.cs:1358
static void ReadZipFileComment(ZipFile zf)
Definition ZipFile.cs:2415
static void FixZipDirectory(string zipFileName)
Definition ZipFile.cs:515
bool FlattenFoldersOnExtract
Definition ZipFile.cs:647
ZipFile(string fileName)
Definition ZipFile.cs:1213
ZipFile(string fileName, TextWriter statusMessageWriter, Encoding encoding)
Definition ZipFile.cs:1310
ZipEntry UpdateDirectory(string directoryName)
Definition ZipFile.cs:135
Zip64Option _zip64
Definition ZipFile.cs:2769
virtual void Dispose(bool disposeManagedResources)
Definition ZipFile.cs:1590
void OnSaveStarted()
Definition ZipFile.cs:1741
ZipEntry AddDirectoryByName(string directoryNameInArchive)
Definition ZipFile.cs:346
bool< FlattenFoldersOnExtract > k__BackingField
Definition ZipFile.cs:2808
static bool CheckZip(string zipFileName)
Definition ZipFile.cs:459
ZipEntry AddFile(string fileName, string directoryPathInArchive)
Definition ZipFile.cs:41
void OnSaveEvent(ZipProgressEventType eventFlavor)
Definition ZipFile.cs:1732
void Save(string fileName)
Definition ZipFile.cs:2553
void Save(Stream outputStream)
Definition ZipFile.cs:2571
EventHandler< ExtractProgressEventArgs > ExtractProgress
Definition ZipFile.cs:1854
void OnAddCompleted()
Definition ZipFile.cs:1990
EventHandler< SaveProgressEventArgs > SaveProgress
Definition ZipFile.cs:1684
Zip64Option UseZip64WhenSaving
Definition ZipFile.cs:869
bool SortEntriesBeforeSaving
Definition ZipFile.cs:589
Stream StreamForDiskNumber(uint diskNumber)
Definition ZipFile.cs:1182
static ZipFile Read(Stream zipStream, TextWriter statusMessageWriter, Encoding encoding, EventHandler< ReadProgressEventArgs > readProgress)
Definition ZipFile.cs:2227
void UpdateFiles(IEnumerable< string > fileNames, string directoryPathInArchive)
Definition ZipFile.cs:103
void RemoveEntries(ICollection< ZipEntry > entriesToRemove)
Definition ZipFile.cs:55
void NotifyEntryChanged()
Definition ZipFile.cs:1176
void OnAddStarted()
Definition ZipFile.cs:1977
ZipEntry AddEntry(string entryName, byte[] byteContent)
Definition ZipFile.cs:315
long LengthOfReadStream
Definition ZipFile.cs:1835
int _maxOutputSegmentSize
Definition ZipFile.cs:2664
void _initEntriesDictionary()
Definition ZipFile.cs:1338
static ZipFile Read(string fileName)
Definition ZipFile.cs:2156
bool AddDirectoryWillTraverseReparsePoints
Definition ZipFile.cs:603
void AddFiles(IEnumerable< string > fileNames, string directoryPathInArchive)
Definition ZipFile.cs:85
void RemoveEntry(string fileName)
Definition ZipFile.cs:1568
bool< FullScan > k__BackingField
Definition ZipFile.cs:2796
CompressionLevel< CompressionLevel > k__BackingField
Definition ZipFile.cs:2811
void UpdateItem(string itemName)
Definition ZipFile.cs:148
ZipOption AlternateEncodingUsage
Definition ZipFile.cs:962
bool? _OutputUsesZip64
Definition ZipFile.cs:2751
void AddFiles(IEnumerable< string > fileNames, bool preserveDirHierarchy, string directoryPathInArchive)
Definition ZipFile.cs:92
static readonly int BufferSizeDefault
Definition ZipFile.cs:2775
EncryptionAlgorithm Encryption
Definition ZipFile.cs:1086
ushort _versionNeededToExtract
Definition ZipFile.cs:2658
ZipEntry AddEntry(string entryName, string content)
Definition ZipFile.cs:160
static Encoding DefaultEncoding
Definition ZipFile.cs:976
static void Zip64SeekToCentralDirectory(ZipFile zf)
Definition ZipFile.cs:2267
IEnumerator< ZipEntry > GetEnumerator()
Definition ZipFile.cs:2582
void Reset(bool whileSaving)
Definition ZipFile.cs:1196
static bool IsZipFile(string fileName, bool testExtract)
Definition ZipFile.cs:2435
TextWriter StatusMessageTextWriter
Definition ZipFile.cs:990
ZipFile(Encoding encoding)
Definition ZipFile.cs:1271
ZipFile(string fileName, Encoding encoding)
Definition ZipFile.cs:1232
static uint ReadFirstFourBytes(Stream s)
Definition ZipFile.cs:2276
uint _OffsetOfCentralDirectory
Definition ZipFile.cs:2745
static Version LibraryVersion
Definition ZipFile.cs:1168
ZipEntry AddDirectory(string directoryName, string directoryPathInArchive)
Definition ZipFile.cs:339
static void ReadCentralDirectoryFooter(ZipFile zf)
Definition ZipFile.cs:2387
ushort _versionMadeBy
Definition ZipFile.cs:2655
EventHandler< ZipErrorEventArgs > ZipError
Definition ZipFile.cs:2019
void RemoveEntry(ZipEntry entry)
Definition ZipFile.cs:1557
IEnumerator GetNewEnum()
Definition ZipFile.cs:2612
ZipEntry UpdateEntry(string entryName, WriteDelegate writer)
Definition ZipFile.cs:286
static Encoding _defaultEncoding
Definition ZipFile.cs:2763
Stream _writestream
Definition ZipFile.cs:2652
void OnReadStarted()
Definition ZipFile.cs:1788
class< GetEnumerator > IEnumerator
Definition ZipFile.cs:2841
CompressionMethod CompressionMethod
Definition ZipFile.cs:706
static void ReadIntoInstance(ZipFile zf)
Definition ZipFile.cs:2254
void RemoveEntryForUpdate(string entryName)
Definition ZipFile.cs:307
override string ToString()
Definition ZipFile.cs:1159
EventHandler< AddProgressEventArgs > AddProgress
Definition ZipFile.cs:1957
bool CaseSensitiveRetrieval
Definition ZipFile.cs:817
bool _fileAlreadyExists
Definition ZipFile.cs:2706
Encoding AlternateEncoding
Definition ZipFile.cs:947
void ExtractAll(string path)
Definition ZipFile.cs:2057
ZipEntry AddEntry(string entryName, WriteDelegate writer)
Definition ZipFile.cs:191
TextWriter _StatusMessageTextWriter
Definition ZipFile.cs:2643
void OnExtractAllCompleted(string path)
Definition ZipFile.cs:1932
string _temporaryFileName
Definition ZipFile.cs:2709
bool OnExtractBlock(ZipEntry entry, long bytesWritten, long totalBytesToWrite)
Definition ZipFile.cs:1888
bool _addOperationCanceled
Definition ZipFile.cs:2733
bool? RequiresZip64
Definition ZipFile.cs:883
static ZipFile Read(string fileName, TextWriter statusMessageWriter, Encoding encoding, EventHandler< ReadProgressEventArgs > readProgress)
Definition ZipFile.cs:2177
bool OnExtractExisting(ZipEntry entry, string path)
Definition ZipFile.cs:1918
bool EmitTimesInWindowsFormatWhenSaving
Definition ZipFile.cs:737
Dictionary< string, ZipEntry > _entries
Definition ZipFile.cs:2676
int< CodecBufferSize > k__BackingField
Definition ZipFile.cs:2805
class< GetEnumerator > d__3
Definition ZipFile.cs:2841
void OnExtractEntry(int current, bool before, ZipEntry currentEntry, string path)
Definition ZipFile.cs:1874
bool? OutputUsedZip64
Definition ZipFile.cs:893
long _lengthOfReadStream
Definition ZipFile.cs:2784
void AddFiles(IEnumerable< string > fileNames)
Definition ZipFile.cs:75
void DeleteFileWithRetry(string filename)
Definition ZipFile.cs:2477
string TempFileFolder
Definition ZipFile.cs:1005
bool UseUnicodeAsNecessary
Definition ZipFile.cs:833
ZipEntry AddEntry(string entryName, OpenDelegate opener, CloseDelegate closer)
Definition ZipFile.cs:204
bool< AddDirectoryWillTraverseReparsePoints > k__BackingField
Definition ZipFile.cs:2802
ExtractExistingFileAction< ExtractExistingFile > k__BackingField
Definition ZipFile.cs:2814
static bool IsZipFile(string fileName)
Definition ZipFile.cs:2425
bool< SortEntriesBeforeSaving > k__BackingField
Definition ZipFile.cs:2799
ZipEntry AddItem(string fileOrDirectoryName, string directoryPathInArchive)
Definition ZipFile.cs:27
ICollection< ZipEntry > EntriesSorted
Definition ZipFile.cs:1521
ZipEntry _InternalAddEntry(ZipEntry ze)
Definition ZipFile.cs:221
void OnSaveCompleted()
Definition ZipFile.cs:1754
bool OnZipErrorSaving(ZipEntry entry, Exception exc)
Definition ZipFile.cs:2039
string _TempFileFolder
Definition ZipFile.cs:2718
string ArchiveNameForEvent
Definition ZipFile.cs:1672
CompressionMethod _compressionMethod
Definition ZipFile.cs:2703
List< ZipEntry > _zipEntriesAsList
Definition ZipFile.cs:2679
ZipFile(string fileName, TextWriter statusMessageWriter)
Definition ZipFile.cs:1290
ZipEntry AddDirectory(string directoryName)
Definition ZipFile.cs:332
Encoding _alternateEncoding
Definition ZipFile.cs:2757
long _OffsetOfCentralDirectory64
Definition ZipFile.cs:2748
ICollection< string > EntryFileNames
Definition ZipFile.cs:1465
CompressionStrategy Strategy
Definition ZipFile.cs:661
void UpdateItem(string itemName, string directoryPathInArchive)
Definition ZipFile.cs:153
void OnReadBytes(ZipEntry entry)
Definition ZipFile.cs:1810
Encoding ProvisionalAlternateEncoding
Definition ZipFile.cs:930
bool OnSingleEntryExtract(ZipEntry entry, string path, bool before)
Definition ZipFile.cs:1902
void OnSaveEntry(int current, ZipEntry entry, bool before)
Definition ZipFile.cs:1718
bool _extractOperationCanceled
Definition ZipFile.cs:2730
static void NotifyEntriesSaveComplete(ICollection< ZipEntry > c)
Definition ZipFile.cs:2525
ZipEntry AddEntry(string entryName, string content, Encoding encoding)
Definition ZipFile.cs:167
static ZipFile Read(string fileName, ReadOptions options)
Definition ZipFile.cs:2166
SetCompressionCallback< SetCompression > k__BackingField
Definition ZipFile.cs:2817
EncryptionAlgorithm _Encryption
Definition ZipFile.cs:2736
int NumberOfSegmentsForMostRecentSave
Definition ZipFile.cs:1133
bool _saveOperationCanceled
Definition ZipFile.cs:2727
bool EmitTimesInUnixFormatWhenSaving
Definition ZipFile.cs:751
List< ZipEntry > ZipEntriesAsList
Definition ZipFile.cs:1379
void RemoveTempFile()
Definition ZipFile.cs:2530
ZipEntry UpdateDirectory(string directoryName, string directoryPathInArchive)
Definition ZipFile.cs:142
void OnReadEntry(bool before, ZipEntry entry)
Definition ZipFile.cs:1822
ZipEntry AddOrUpdateDirectoryImpl(string directoryName, string rootDirectoryPathInArchive, AddOrUpdateAction action)
Definition ZipFile.cs:377
void OnReadCompleted()
Definition ZipFile.cs:1799
void CleanupAfterSaveOperation()
Definition ZipFile.cs:2538
void UpdateFiles(IEnumerable< string > fileNames)
Definition ZipFile.cs:80
ICollection< ZipEntry > Entries
Definition ZipFile.cs:1493
void Initialize(string fileName)
Definition ZipFile.cs:1333
static bool IsZipFile(Stream stream, bool testExtract)
Definition ZipFile.cs:2451
ZipEntry UpdateFile(string fileName)
Definition ZipFile.cs:114
CompressionStrategy _Strategy
Definition ZipFile.cs:2700
bool _CaseSensitiveRetrieval
Definition ZipFile.cs:2646
static bool CheckZip(string zipFileName, bool fixIfNecessary, TextWriter writer)
Definition ZipFile.cs:469
ZipEntry UpdateEntry(string entryName, OpenDelegate opener, CloseDelegate closer)
Definition ZipFile.cs:293
SetCompressionCallback SetCompression
Definition ZipFile.cs:1101
ZipErrorAction _zipErrorAction
Definition ZipFile.cs:2670
ZipEntry AddFile(string fileName)
Definition ZipFile.cs:34
static void ReadCentralDirectory(ZipFile zf)
Definition ZipFile.cs:2303
ZipEntry UpdateEntry(string entryName, Stream stream)
Definition ZipFile.cs:300
void OnExtractAllStarted(string path)
Definition ZipFile.cs:1943
void AfterAddEntry(ZipEntry entry)
Definition ZipFile.cs:2001
static ZipSegmentedStream ForReading(string name, uint initialDiskNumber, uint maxDiskNumber)
Dictionary< TKey, TValue >.Entry[] _entries
Dictionary< TKey, TValue >.ValueCollection _values
static Delegate Combine(Delegate a, Delegate b)
Definition Delegate.cs:255
static Delegate Remove(Delegate source, Delegate value)
Definition Delegate.cs:278
static void SuppressFinalize(object obj)
Definition GC.cs:116
static string[] GetDirectories(string path)
Definition Directory.cs:126
static bool Exists(string path)
Definition Directory.cs:64
static string[] GetFiles(string path)
Definition Directory.cs:83
static bool Exists(string path)
Definition File.cs:86
static void Delete(string path)
Definition File.cs:77
static string Combine(string path1, string path2)
Definition Path.cs:41
static string GetFileName(string path)
Definition Path.cs:142
static string GetDirectoryName(string path)
Definition Path.cs:86
static Encoding GetEncoding(int codepage)
Definition Encoding.cs:130
static Encoding Default
Definition Encoding.cs:728
static void Exit(object obj)
Definition Monitor.cs:47
static void Enter(object obj)
Definition Monitor.cs:11
static DateTime Now
Definition DateTime.cs:530
override string ToString()
Definition DateTime.cs:834