summaryrefslogtreecommitdiffstats
path: root/private/ntos/cntfs/spec/rwcmp.doc
blob: 303562d189375e90be4578d4b56fb5de17f21592 (plain) (blame)
ofshex dumpascii
0000 d0 cf 11 e0 a1 b1 1a e1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3e 00 03 00 fe ff 09 00 ........................>.......
0020 06 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 03 00 00 00 ................................
0040 01 00 00 00 fe ff ff ff 00 00 00 00 01 00 00 00 80 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ................................
0060 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0080 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
00a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
00c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
00e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0100 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0120 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0140 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0160 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0180 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
01a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
01c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
01e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0200 52 00 6f 00 6f 00 74 00 20 00 45 00 6e 00 74 00 72 00 79 00 00 00 00 00 00 00 00 00 00 00 00 00 R.o.o.t...E.n.t.r.y.............
0220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0240 16 00 05 00 ff ff ff ff ff ff ff ff 03 00 00 00 00 09 02 00 00 00 00 00 c0 00 00 00 00 00 00 46 ...............................F
0260 00 00 00 00 00 00 00 00 00 00 00 00 e0 65 98 7d c4 63 bb 01 04 00 00 00 40 02 00 00 00 00 00 00 .............e.}.c......@.......
0280 01 00 43 00 6f 00 6d 00 70 00 4f 00 62 00 6a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ..C.o.m.p.O.b.j.................
02a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02c0 12 00 02 01 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6e 00 00 00 00 00 00 00 ........................n.......
0300 57 00 6f 00 72 00 64 00 44 00 6f 00 63 00 75 00 6d 00 65 00 6e 00 74 00 00 00 00 00 00 00 00 00 W.o.r.d.D.o.c.u.m.e.n.t.........
0320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0340 1a 00 02 01 ff ff ff ff 04 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 34 00 00 00 b4 b4 00 00 00 00 00 00 ....................4...........
0380 4f 00 62 00 6a 00 65 00 63 00 74 00 50 00 6f 00 6f 00 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 O.b.j.e.c.t.P.o.o.l.............
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 16 00 01 01 01 00 00 00 02 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 20 10 be 5d 93 63 bb 01 20 10 be 5d 93 63 bb 01 00 00 00 00 00 00 00 00 00 00 00 00 .......].c.....].c..............
0400 02 00 00 00 fd ff ff ff fe ff ff ff fe ff ff ff 05 00 00 00 fe ff ff ff 07 00 00 00 08 00 00 00 ................................
0420 09 00 00 00 0a 00 00 00 0b 00 00 00 fe ff ff ff 0d 00 00 00 0e 00 00 00 0f 00 00 00 10 00 00 00 ................................
0440 11 00 00 00 12 00 00 00 13 00 00 00 14 00 00 00 15 00 00 00 16 00 00 00 17 00 00 00 18 00 00 00 ................................
0460 19 00 00 00 1a 00 00 00 1b 00 00 00 1c 00 00 00 1d 00 00 00 1e 00 00 00 1f 00 00 00 20 00 00 00 ................................
0480 21 00 00 00 22 00 00 00 23 00 00 00 24 00 00 00 25 00 00 00 26 00 00 00 27 00 00 00 28 00 00 00 !..."...#...$...%...&...'...(...
04a0 29 00 00 00 2a 00 00 00 2b 00 00 00 2c 00 00 00 2d 00 00 00 2e 00 00 00 2f 00 00 00 30 00 00 00 )...*...+...,...-......./...0...
04c0 31 00 00 00 32 00 00 00 33 00 00 00 64 00 00 00 35 00 00 00 36 00 00 00 37 00 00 00 38 00 00 00 1...2...3...d...5...6...7...8...
04e0 39 00 00 00 3a 00 00 00 3b 00 00 00 0c 00 00 00 3d 00 00 00 3e 00 00 00 3f 00 00 00 40 00 00 00 9...:...;.......=...>...?...@...
0500 41 00 00 00 42 00 00 00 43 00 00 00 44 00 00 00 45 00 00 00 46 00 00 00 47 00 00 00 6d 00 00 00 A...B...C...D...E...F...G...m...
0520 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0540 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0560 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0580 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 65 00 00 00 66 00 00 00 67 00 00 00 68 00 00 00 ................e...f...g...h...
05a0 69 00 00 00 6a 00 00 00 6b 00 00 00 6c 00 00 00 72 00 00 00 6e 00 00 00 6f 00 00 00 70 00 00 00 i...j...k...l...r...n...o...p...
05c0 71 00 00 00 81 00 00 00 73 00 00 00 74 00 00 00 75 00 00 00 76 00 00 00 77 00 00 00 78 00 00 00 q.......s...t...u...v...w...x...
05e0 3c 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff <...............................
0600 05 00 53 00 75 00 6d 00 6d 00 61 00 72 00 79 00 49 00 6e 00 66 00 6f 00 72 00 6d 00 61 00 74 00 ..S.u.m.m.a.r.y.I.n.f.o.r.m.a.t.
0620 69 00 6f 00 6e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 i.o.n...........................
0640 28 00 02 00 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (...............................
0660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 81 01 00 00 00 00 00 00 ................................
0680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06c0 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0740 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07c0 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0800 01 00 00 00 fe ff ff ff 03 00 00 00 04 00 00 00 05 00 00 00 06 00 00 00 07 00 00 00 08 00 00 00 ................................
0820 fe ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0840 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0860 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0880 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
08a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
08c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
08e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0900 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0920 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0940 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0960 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0980 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
09a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
09c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
09e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
0a00 01 00 fe ff 03 0a 00 00 ff ff ff ff 00 09 02 00 00 00 00 00 c0 00 00 00 00 00 00 46 1c 00 00 00 ...........................F....
0a20 4d 69 63 72 6f 73 6f 66 74 20 57 6f 72 64 20 36 2e 30 20 44 6f 63 75 6d 65 6e 74 00 0a 00 00 00 Microsoft.Word.6.0.Document.....
0a40 4d 53 57 6f 72 64 44 6f 63 00 10 00 00 00 57 6f 72 64 2e 44 6f 63 75 6d 65 6e 74 2e 36 00 f4 39 MSWordDoc.....Word.Document.6..9
0a60 b2 71 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .q..............................
0a80 fe ff 00 00 04 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 85 9f f2 ................................
0aa0 f9 4f 68 10 ab 91 08 00 2b 27 b3 d9 30 00 00 00 51 01 00 00 0b 00 00 00 07 00 00 00 98 00 00 00 .Oh.....+'..0...Q...............
0ac0 02 00 00 00 c1 00 00 00 04 00 00 00 df 00 00 00 08 00 00 00 f2 00 00 00 01 00 00 00 05 01 00 00 ................................
0ae0 0f 00 00 00 0b 01 00 00 10 00 00 00 13 01 00 00 12 00 00 00 1b 01 00 00 0e 00 00 00 36 01 00 00 ............................6...
0b00 09 00 00 00 3e 01 00 00 13 00 00 00 49 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ....>.......I...................
0b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0b40 00 00 00 00 00 00 00 00 1e 00 00 00 21 00 00 00 44 3a 5c 77 6f 72 64 36 30 2e 6e 74 5c 54 45 4d ............!...D:\word60.nt\TEM
0b60 50 4c 41 54 45 5c 4e 6f 72 6d 61 6c 2e 64 6f 74 00 1e 00 00 00 16 00 00 00 57 69 6e 64 6f 77 73 PLATE\Normal.dot.........Windows
0b80 20 4e 54 20 42 61 73 65 20 47 72 6f 75 70 00 1e 00 00 00 0b 00 00 00 54 6f 6d 20 4d 69 6c 6c 65 .NT.Base.Group.........Tom.Mille
0ba0 72 00 1e 00 00 00 0b 00 00 00 54 6f 6d 20 4d 69 6c 6c 65 72 00 02 00 00 00 e4 04 03 00 00 00 79 r.........Tom.Miller...........y
0bc0 0f 00 00 03 00 00 00 b7 50 00 00 1e 00 00 00 13 00 00 00 4d 69 63 72 6f 73 6f 66 74 20 57 6f 72 ........P..........Microsoft.Wor
0be0 64 20 36 2e 30 00 03 00 00 00 0d 00 00 00 1e 00 00 00 03 00 00 00 33 35 00 03 00 00 00 00 00 00 d.6.0.................35........
0c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0e00 8c 47 00 00 90 47 00 00 96 47 00 00 a3 47 00 00 a8 47 00 00 ab 47 00 00 ae 47 00 00 5e 48 00 00 .G...G...G...G...G...G...G..^H..
0e20 5f 48 00 00 b7 48 00 00 bd 48 00 00 ee 48 00 00 f4 48 00 00 f5 48 00 00 10 49 00 00 12 49 00 00 _H...H...H...H...H...H...I...I..
0e40 1b 49 00 00 21 49 00 00 2d 49 00 00 1d 4b 00 00 74 4b 00 00 75 4b 00 00 76 4b 00 00 4a 4c 00 00 .I..!I..-I...K..tK..uK..vK..JL..
0e60 4f 4c 00 00 7b 4c 00 00 82 4c 00 00 da 4d 00 00 34 4e 00 00 36 4e 00 00 3b 4e 00 00 54 4e 00 00 OL..{L...L...M..4N..6N..;N..TN..
0e80 68 4e 00 00 d7 51 00 00 fc 5e 00 00 21 5f 00 00 22 5f 00 00 e4 5f 00 00 e5 5f 00 00 5a 60 00 00 hN...Q...^..!_.."_..._..._..Z`..
0ea0 b4 60 00 00 d2 60 00 00 d4 60 00 00 ee 60 00 00 ef 60 00 00 1e 62 00 00 1f 62 00 00 79 62 00 00 .`...`...`...`...`...b...b..yb..
0ec0 9f 62 00 00 c5 62 00 00 d4 62 00 00 d5 62 00 00 fa 62 00 00 54 63 00 00 ae 63 00 00 08 64 00 00 .b...b...b...b...b..Tc...c...d..
0ee0 36 64 00 00 90 64 00 00 ad 64 00 00 ba 64 00 00 cf 64 00 00 09 65 00 00 4a 65 00 00 97 65 00 00 6d...d...d...d...d...e..Je...e..
0f00 98 65 00 00 f2 65 00 00 2f 66 00 00 37 66 00 00 43 66 00 00 4e 66 00 00 4f 66 00 00 53 66 00 00 .e...e../f..7f..Cf..Nf..Of..Sf..
0f20 5a 66 00 00 99 66 00 00 9a 66 00 00 d4 66 00 00 2e 67 00 00 54 67 00 00 75 67 00 00 9c 67 00 00 Zf...f...f...f...g..Tg..ug...g..
0f40 de 67 00 00 eb 67 00 00 ec 67 00 00 ed 67 00 00 ee 67 00 00 48 68 00 00 82 68 00 00 dc 68 00 00 .g...g...g...g...g..Hh...h...h..
0f60 e6 68 00 00 e7 68 00 00 e8 68 00 00 ff 68 00 00 00 69 00 00 01 69 00 00 31 6a 00 00 32 6a 00 00 .h...h...h...h...i...i..1j..2j..
0f80 33 6a 00 00 6e 6a 00 00 82 6a 00 00 df 6a 00 00 05 6b 00 00 28 6b 00 00 2c 6b 00 00 39 6b 00 00 3j..nj...j...j...k..(k..,k..9k..
0fa0 3a 6b 00 00 40 6b 00 00 41 6b 00 00 5e 6b 00 00 6a 6b 00 00 9d 6b 00 00 ac 6b 00 00 d3 6b 00 00 :k..@k..Ak..^k..jk...k...k...k..
0fc0 d9 6b 00 00 f9 6b 00 00 fb 6b 00 00 55 6c 00 00 a6 6c 00 00 a7 6c 00 00 a8 6c 00 00 d2 6c 00 00 .k...k...k..Ul...l...l...l...l..
0fe0 d3 6c 00 00 ea 6c 00 00 f2 6c 00 00 31 6d 00 00 5a 6d 00 00 63 6d 00 00 78 6d 00 00 80 6d 00 00 .l...l...l..1m..Zm..cm..xm...m..
1000 a8 6d 00 00 c3 6d 00 00 c6 6d 00 00 e2 6d 00 00 e3 6d 00 00 e4 6d 00 00 e5 6d 00 00 1d 6e 00 00 .m...m...m...m...m...m...m...n..
1020 1e 6e 00 00 4d 6e 00 00 4e 6e 00 00 4f 6e 00 00 60 00 00 03 00 00 00 00 61 00 7a 64 00 00 00 00 .n..Mn..Nn..On..`.......a.zd....
1040 61 00 58 32 00 00 00 00 60 00 f6 33 00 00 00 00 60 00 81 34 00 00 00 00 60 00 f2 8e 00 00 00 00 a.X2....`..3....`..4....`.......
1060 60 00 f4 8e 00 00 00 00 60 00 19 8f 00 00 00 00 61 00 1a 8f 00 00 00 00 61 00 2b 8f 00 00 00 00 `.......`.......a.......a.+.....
1080 61 00 37 8f 00 00 00 00 61 00 38 8f 00 00 00 00 61 00 84 8f 00 00 00 00 61 00 88 8f 00 00 00 00 a.7.....a.8.....a.......a.......
10a0 60 00 91 8f 00 00 00 00 61 00 98 8f 00 00 00 00 60 00 00 96 00 00 00 00 61 00 7d 96 00 00 00 00 `.......a.......`.......a.}.....
10c0 61 00 99 96 00 00 00 00 61 00 ab 96 00 00 00 00 61 00 ac 96 00 00 00 00 61 00 b4 96 00 00 00 00 a.......a.......a.......a.......
10e0 61 00 d1 96 00 00 00 00 60 00 19 97 00 00 00 00 61 00 2a 97 00 00 00 00 60 00 84 97 00 00 00 00 a.......`.......a.*.....`.......
1100 61 00 d1 97 00 00 00 00 61 00 da 97 00 00 00 00 61 00 df 97 00 00 00 00 61 00 f0 97 00 00 00 00 a.......a.......a.......a.......
1120 61 00 f2 97 00 00 00 00 61 00 f3 97 00 00 00 00 61 00 fa 97 00 00 00 00 61 00 2a 98 00 00 00 00 a.......a.......a.......a.*.....
1140 61 00 84 98 00 00 00 00 61 00 97 98 00 00 00 00 61 00 9a 98 00 00 00 00 61 00 f4 98 00 00 00 00 a.......a.......a.......a.......
1160 61 00 3a 99 00 00 00 00 61 00 3c 99 00 00 00 00 61 00 96 99 00 00 00 00 60 00 b8 99 00 00 00 00 a.:.....a.<.....a.......`.......
1180 60 00 b9 99 00 00 00 00 61 00 ba 99 00 00 00 00 61 00 cd 99 00 00 00 00 61 00 09 9a 00 00 00 00 `.......a.......a.......a.......
11a0 61 00 25 9a 00 00 00 00 61 00 28 9a 00 00 00 00 61 00 54 9a 00 00 00 00 61 00 68 9a 00 00 00 00 a.%.....a.(.....a.T.....a.h.....
11c0 61 00 9d 9a 00 00 00 00 61 00 e3 9a 00 00 00 00 60 00 d1 35 00 00 01 00 60 00 d2 35 00 00 00 00 a.......a.......`..5....`..5....
11e0 60 00 6a 36 00 00 00 00 61 00 1a 38 00 00 00 00 61 00 2a 38 00 00 00 00 61 00 7b 64 00 00 00 00 `.j6....a..8....a.*8....a.{d....
1200 61 00 9b 64 00 00 00 00 61 00 c4 64 00 00 00 00 61 00 ce 64 00 00 00 00 61 00 dc 64 00 00 00 00 a..d....a..d....a..d....a..d....
1220 61 00 ee 64 00 00 00 00 60 00 73 38 00 00 00 00 60 00 cf 3a 00 00 00 00 60 00 ef 64 00 00 00 00 a..d....`.s8....`..:....`..d....
1240 61 00 f0 64 00 00 00 00 61 00 f4 64 00 00 00 00 61 00 fd 64 00 00 00 00 60 00 02 3b 00 00 00 00 a..d....a..d....a..d....`..;....
1260 61 00 24 3c 00 00 00 00 61 00 07 65 00 00 00 00 61 00 55 65 00 00 00 00 61 00 56 3c 00 00 00 00 a.$<....a..e....a.Ue....a.V<....
1280 61 00 dd 3c 00 00 00 00 60 00 a2 65 00 00 00 00 61 00 a4 65 00 00 00 00 61 00 4a 7d 00 00 00 00 a..<....`..e....a..e....a.J}....
12a0 61 00 83 7d 00 00 00 00 61 00 84 7d 00 00 00 00 60 00 40 3d 00 00 00 00 61 00 87 44 00 00 00 00 a..}....a..}....`.@=....a..D....
12c0 61 00 9f 7d 00 00 00 00 61 00 90 44 00 00 00 00 61 00 b0 7d 00 00 00 00 60 00 04 7e 00 00 00 00 a..}....a..D....a..}....`..~....
12e0 60 00 05 7e 00 00 00 00 60 00 42 3d 00 00 00 00 60 00 f5 3e 00 00 00 00 60 00 06 7e 00 00 00 00 `..~....`.B=....`..>....`..~....
1300 61 00 07 7e 00 00 00 00 61 00 14 7e 00 00 00 00 60 00 27 3f 00 00 00 00 61 00 57 40 00 00 00 00 a..~....a..~....`.'?....a.W@....
1320 61 00 1e 7e 00 00 00 00 61 00 37 7e 00 00 00 00 61 00 47 7e 00 00 00 00 61 00 59 7e 00 00 00 00 a..~....a.7~....a.G~....a.Y~....
1340 61 00 76 7e 00 00 00 00 61 00 9e 7e 00 00 00 00 61 00 a9 7e 00 00 00 00 61 00 c3 7e 00 00 00 00 a.v~....a..~....a..~....a..~....
1360 61 00 e8 7e 00 00 00 00 61 00 a9 40 00 00 00 00 61 00 eb 7e 00 00 00 00 61 00 b2 40 00 00 00 00 a..~....a..@....a..~....a..@....
1380 61 00 f1 7e 00 00 00 00 61 00 bf 40 00 00 00 00 61 00 f6 7e 00 00 00 00 60 00 ce 40 00 00 00 00 a..~....a..@....a..~....`..@....
13a0 60 00 7e 41 00 00 00 00 61 00 f9 7e 00 00 00 00 61 00 51 7f 00 00 00 00 61 00 57 7f 00 00 00 00 `.~A....a..~....a.Q.....a.W.....
13c0 61 00 88 7f 00 00 00 00 61 00 8e 7f 00 00 00 00 61 00 8f 7f 00 00 00 00 60 00 40 3d 00 00 00 00 a.......a.......a.......`.@=....
13e0 61 00 6c 4b 00 00 00 00 61 00 aa 7f 00 00 00 00 61 00 b0 7f 00 00 00 00 61 00 75 4b 00 00 00 00 a.lK....a.......a.......a.uK....
1400 61 00 bc 7f 00 00 00 00 60 00 65 4d 00 00 00 00 60 00 13 80 00 00 00 00 60 00 7f 41 00 00 00 00 a.......`.eM....`.......`..A....
1420 61 00 14 80 00 00 00 00 60 00 77 47 00 00 00 00 61 00 19 80 00 00 00 00 60 00 a7 47 00 00 00 00 a.......`.wG....a.......`..G....
1440 61 00 20 80 00 00 00 00 60 00 ff 48 00 00 00 00 61 00 7a 80 00 00 00 00 61 00 7f 80 00 00 00 00 a.......`..H....a.z.....a.......
1460 60 00 8f 47 00 00 00 00 60 00 3c 4e 00 00 00 00 60 00 e7 51 00 00 00 00 60 00 f4 5f 00 00 00 00 `..G....`.<N....`..Q....`.._....
1480 60 00 1a 81 00 00 00 00 60 00 1b 81 00 00 00 00 60 00 dd 81 00 00 00 00 60 00 19 60 00 00 00 00 `.......`.......`.......`..`....
14a0 61 00 9f 80 00 00 00 00 61 00 f9 80 00 00 00 00 60 00 8e 60 00 00 00 00 60 00 de 81 00 00 00 00 a.......a.......`..`....`.......
14c0 60 00 f8 81 00 00 00 00 60 00 f9 81 00 00 00 00 60 00 28 83 00 00 00 00 61 00 29 83 00 00 00 00 `.......`.......`.(.....a.).....
14e0 61 00 83 83 00 00 00 00 61 00 a9 83 00 00 00 00 61 00 cf 83 00 00 00 00 61 00 de 83 00 00 00 00 a.......a.......a.......a.......
1500 61 00 df 83 00 00 00 00 61 00 04 84 00 00 00 00 61 00 5e 84 00 00 00 00 61 00 b8 84 00 00 00 00 a.......a.......a.^.....a.......
1520 61 00 12 85 00 00 00 00 61 00 40 85 00 00 00 00 61 00 9a 85 00 00 00 00 61 00 b7 85 00 00 00 00 a.......a.@.....a.......a.......
1540 61 00 c4 85 00 00 00 00 61 00 d9 85 00 00 00 00 61 00 13 86 00 00 00 00 60 00 54 86 00 00 00 00 a.......a.......a.......`.T.....
1560 60 00 a1 86 00 00 00 00 61 00 a2 86 00 00 00 00 61 00 fc 86 00 00 00 00 61 00 39 87 00 00 00 00 `.......a.......a.......a.9.....
1580 61 00 41 87 00 00 00 00 61 00 4d 87 00 00 00 00 60 00 58 87 00 00 00 00 61 00 59 87 00 00 00 00 a.A.....a.M.....`.X.....a.Y.....
15a0 61 00 5d 87 00 00 00 00 61 00 64 87 00 00 00 00 60 00 a3 87 00 00 00 00 61 00 a4 87 00 00 00 00 a.].....a.d.....`.......a.......
15c0 61 00 de 87 00 00 00 00 61 00 38 88 00 00 00 00 61 00 5e 88 00 00 00 00 61 00 7f 88 00 00 00 00 a.......a.8.....a.^.....a.......
15e0 61 00 a6 88 00 00 00 00 61 00 e8 88 00 00 00 00 61 00 f5 88 00 00 00 00 60 00 f6 88 00 00 00 00 a.......a.......a.......`.......
1600 60 00 f7 88 00 00 00 00 61 00 f8 88 00 00 00 00 61 00 52 89 00 00 00 00 61 00 8c 89 00 00 00 00 `.......a.......a.R.....a.......
1620 61 00 e6 89 00 00 00 00 60 00 f0 89 00 00 00 00 60 00 f1 89 00 00 00 00 61 00 f2 89 00 00 00 00 a.......`.......`.......a.......
1640 60 00 09 8a 00 00 00 00 60 00 0a 8a 00 00 00 00 60 00 0b 8a 00 00 00 00 60 00 a7 60 00 00 03 00 `.......`.......`.......`..`....
1660 60 00 3b 8b 00 00 00 00 61 00 3c 8b 00 00 00 00 61 00 77 8b 00 00 00 00 61 00 8b 8b 00 00 00 00 `.;.....a.<.....a.w.....a.......
1680 61 00 e8 8b 00 00 00 00 61 00 0e 8c 00 00 00 00 61 00 31 8c 00 00 00 00 61 00 35 8c 00 00 00 00 a.......a.......a.1.....a.5.....
16a0 61 00 42 8c 00 00 00 00 61 00 43 8c 00 00 00 00 61 00 49 8c 00 00 00 00 61 00 4a 8c 00 00 00 00 a.B.....a.C.....a.I.....a.J.....
16c0 61 00 67 8c 00 00 00 00 61 00 73 8c 00 00 00 00 61 00 a6 8c 00 00 00 00 61 00 b5 8c 00 00 00 00 a.g.....a.s.....a.......a.......
16e0 61 00 dc 8c 00 00 00 00 61 00 e2 8c 00 00 00 00 61 00 02 8d 00 00 00 00 61 00 04 8d 00 00 00 00 a.......a.......a.......a.......
1700 61 00 5e 8d 00 00 00 00 60 00 af 8d 00 00 00 00 60 00 b0 8d 00 00 00 00 61 00 b1 8d 00 00 00 00 a.^.....`.......`.......a.......
1720 61 00 db 8d 00 00 00 00 61 00 dc 8d 00 00 00 00 61 00 f3 8d 00 00 00 00 60 00 fb 8d 00 00 00 00 a.......a.......a.......`.......
1740 61 00 3a 8e 00 00 00 00 61 00 63 8e 00 00 00 00 61 00 6c 8e 00 00 00 00 61 00 81 8e 00 00 00 00 a.:.....a.c.....a.l.....a.......
1760 61 00 89 8e 00 00 00 00 61 00 b1 8e 00 00 00 00 61 00 cc 8e 00 00 00 00 61 00 cf 8e 00 00 00 00 a.......a.......a.......a.......
1780 60 00 ea 9a 00 00 00 00 60 00 eb 9a 00 00 00 00 60 00 ec 9a 00 00 00 00 61 00 0c 64 00 00 00 00 `.......`.......`.......a..d....
17a0 61 00 ed 9a 00 00 00 00 60 00 45 64 00 00 00 00 60 00 74 64 00 00 00 00 60 00 a8 60 00 00 00 00 a.......`.Ed....`.td....`..`....
17c0 5f 00 15 16 90 01 00 00 54 69 6d 65 73 20 4e 65 77 20 52 6f 6d 61 6e 00 0c 16 90 01 02 00 53 79 _.......Times.New.Roman.......Sy
17e0 6d 62 6f 6c 00 0b 26 90 01 00 00 41 72 69 61 6c 00 0d 31 90 01 00 00 43 6f 75 72 69 65 72 00 11 mbol..&....Arial..1....Courier..
1800 35 90 01 00 00 43 6f 75 72 69 65 72 20 4e 65 77 00 0d 12 90 01 00 00 54 6d 73 20 52 6d 6e 00 22 5....Courier.New.......Tms.Rmn."
1820 00 04 00 01 08 88 18 00 00 d0 02 00 00 68 01 00 00 00 00 82 fa f5 65 83 d4 06 66 5e d4 06 66 23 .............h........e...f^..f#
1840 00 64 03 00 00 79 0f 00 00 b7 50 00 00 0d 00 dd 00 00 00 04 00 83 10 21 02 00 00 79 0f 00 00 b7 .d...y....P............!...y....
1860 50 00 00 0d 00 dd 00 00 00 21 02 00 00 00 00 00 00 24 03 00 00 00 00 3d 00 00 00 15 57 69 6e 64 P........!.......$.....=....Wind
1880 6f 77 73 20 4e 54 20 42 61 73 65 20 47 72 6f 75 70 00 00 00 0a 54 6f 6d 20 4d 69 6c 6c 65 72 0a ows.NT.Base.Group....Tom.Miller.
18a0 54 6f 6d 20 4d 69 6c 6c 65 72 00 00 00 00 00 00 00 00 00 00 20 77 6f 72 6b 73 74 61 74 69 6f 6e Tom.Miller...........workstation
18c0 20 75 73 65 72 73 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 20 20 45 73 70 65 63 69 61 6c .users.of.compression...Especial
18e0 6c 79 20 73 69 6e 63 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 61 6c 77 61 ly.since.the.compression.is.alwa
1900 79 73 20 64 6f 6e 65 20 62 79 20 74 68 65 20 4c 61 7a 79 20 57 72 69 74 65 72 20 69 6e 20 74 68 ys.done.by.the.Lazy.Writer.in.th
1920 65 20 62 61 63 6b 67 72 6f 75 6e 64 2e 0d 0d 41 73 73 65 73 73 69 6e 67 20 74 68 65 20 63 6f 73 e.background...Assessing.the.cos
1940 74 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 73 69 t.of.compressing.and.decompressi
1960 6e 67 20 64 61 74 61 20 6f 6e 20 61 20 66 69 6c 65 20 73 65 72 76 65 72 20 69 73 20 61 6e 6f 74 ng.data.on.a.file.server.is.anot
1980 68 65 72 20 73 74 6f 72 79 20 65 6e 74 69 72 65 6c 79 2e 20 20 57 68 65 6e 20 61 20 57 69 6e 64 her.story.entirely...When.a.Wind
19a0 6f 77 73 20 4e 54 20 33 2e 35 31 20 46 69 6c 65 20 53 65 72 76 65 72 20 68 69 74 73 20 6d 61 78 ows.NT.3.51.File.Server.hits.max
19c0 69 6d 75 6d 20 6c 6f 61 64 2c 20 69 74 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 63 6f 6d 70 75 74 imum.load,.it.is.normally.comput
19e0 65 2d 62 6f 75 6e 64 2e 20 20 54 68 65 72 65 66 6f 72 65 20 61 64 64 69 6e 67 20 74 68 65 20 63 e-bound...Therefore.adding.the.c
1a00 20 4c 5a 4e 54 31 20 61 6c 67 6f 72 69 74 68 6d 20 63 6f 6d 70 72 65 73 73 65 73 20 66 69 6c 65 .LZNT1.algorithm.compresses.file
1a20 73 20 74 6f 20 61 62 6f 75 74 20 68 61 6c 66 20 6f 66 20 74 68 65 69 72 20 6f 72 69 67 69 6e 61 s.to.about.half.of.their.origina
1a40 6c 20 73 69 7a 65 20 2d 20 6d 6f 72 65 20 69 6e 20 73 6f 6d 65 20 63 61 73 65 73 2c 20 6c 65 73 l.size.-.more.in.some.cases,.les
1a60 73 20 69 6e 20 6f 74 68 65 72 73 2e 20 20 54 68 65 20 6d 61 69 6e 20 67 6f 61 6c 20 6f 66 20 75 s.in.others...The.main.goal.of.u
1a80 73 69 6e 67 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 6e 20 74 68 65 20 77 69 72 sing.data.compression.on.the.wir
1aa0 65 20 69 73 20 74 6f 20 61 74 74 65 6d 70 74 20 74 6f 20 74 61 6b 65 20 74 68 69 73 20 61 70 70 e.is.to.attempt.to.take.this.app
1ac0 72 6f 78 69 6d 61 74 65 20 66 61 63 74 6f 72 20 6f 66 20 32 2c 20 61 6e 64 20 70 75 74 20 69 74 roximate.factor.of.2,.and.put.it
1ae0 20 74 6f 20 77 6f 72 6b 20 66 6f 72 20 75 73 20 61 73 20 61 20 6d 75 6c 74 69 70 6c 69 65 72 20 .to.work.for.us.as.a.multiplier.
1b00 6f 66 20 73 65 72 76 65 72 20 70 65 72 66 6f 72 6d 61 6e 63 65 2e 20 20 47 69 76 65 6e 20 74 68 of.server.performance...Given.th
1b20 65 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 69 6e 67 73 20 69 6e 20 74 68 65 20 73 79 73 74 65 6d e.number.of.things.in.the.system
1b40 20 74 68 61 74 20 63 6f 6e 74 72 69 62 75 74 65 20 74 6f 20 66 69 78 65 64 20 6f 76 65 72 68 65 .that.contribute.to.fixed.overhe
1b60 61 64 2c 20 61 20 66 61 63 74 6f 72 20 6f 66 20 32 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 62 65 ad,.a.factor.of.2.performance.be
1b80 6e 65 66 69 74 20 69 73 20 75 6e 61 74 74 61 69 6e 61 62 6c 65 2c 20 62 75 74 20 6d 61 6e 79 20 nefit.is.unattainable,.but.many.
1ba0 61 63 74 69 76 69 74 69 65 73 20 63 6f 75 6c 64 20 62 65 20 61 63 63 65 6c 65 72 61 74 65 64 20 activities.could.be.accelerated.
1bc0 62 79 20 35 30 25 20 6f 72 20 6d 6f 72 65 2e 20 20 49 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 20 by.50%.or.more...In.particular,.
1be0 74 68 65 73 65 20 61 72 65 20 74 68 65 20 67 6f 61 6c 73 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 these.are.the.goals.of.the.compr
1c00 65 73 73 69 6f 6e 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 70 6c 61 6e 6e 65 64 20 66 6f 72 ession.optimizations.planned.for
1c20 20 74 68 65 20 6e 65 78 74 20 72 65 6c 65 61 73 65 3a 0d 0d 49 6e 63 72 65 61 73 65 20 74 68 65 .the.next.release:..Increase.the
1c40 20 65 66 66 65 63 74 69 76 65 20 63 61 70 61 63 69 74 79 20 6f 66 20 74 68 65 20 63 61 63 68 65 .effective.capacity.of.the.cache
1c60 20 62 79 20 63 61 63 68 69 6e 67 20 64 61 74 61 20 69 6e 20 74 68 65 20 63 6f 6d 70 72 65 73 73 .by.caching.data.in.the.compress
1c80 65 64 20 73 74 61 74 65 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 69 6e 63 72 65 61 73 65 20 ed.state...This.should.increase.
1ca0 74 68 65 20 68 69 74 20 72 61 74 65 20 69 6e 20 74 68 65 20 63 61 63 68 65 2e 0d 4f 66 66 6c 6f the.hit.rate.in.the.cache..Offlo
1cc0 61 64 20 74 68 65 20 63 6f 73 74 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 6e 64 20 64 ad.the.cost.of.compressing.and.d
1ce0 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 73 65 72 76 65 ecompressing.data.from.the.serve
1d00 72 20 74 6f 20 74 68 65 20 63 6c 69 65 6e 74 2e 20 20 4d 6f 73 74 20 63 6c 69 65 6e 74 73 20 68 r.to.the.client...Most.clients.h
1d20 61 76 65 20 74 68 65 20 65 78 74 72 61 20 63 79 63 6c 65 73 20 74 6f 20 73 70 61 72 65 20 61 6e ave.the.extra.cycles.to.spare.an
1d40 79 77 61 79 2c 20 61 73 20 63 6f 6e 66 69 72 6d 65 64 20 62 79 20 6f 75 72 20 63 75 72 72 65 6e yway,.as.confirmed.by.our.curren
1d60 74 20 65 78 70 65 72 69 65 6e 63 65 20 77 69 74 68 20 64 69 73 6b 20 64 61 74 61 20 63 6f 6d 70 t.experience.with.disk.data.comp
1d80 72 65 73 73 69 6f 6e 20 6f 6e 20 74 68 65 20 63 6c 69 65 6e 74 2e 20 20 49 6e 20 66 61 63 74 20 ression.on.the.client...In.fact.
1da0 74 68 65 20 63 6f 73 74 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6d 61 79 20 62 65 the.cost.of.decompression.may.be
1dc0 20 6d 6f 72 65 20 74 68 61 6e 20 6f 66 66 73 65 74 20 62 79 20 71 75 69 63 6b 65 72 20 72 65 73 .more.than.offset.by.quicker.res
1de0 70 6f 6e 73 65 20 74 69 6d 65 20 66 72 6f 6d 20 74 68 65 20 73 65 72 76 65 72 2e 0d 41 63 74 75 ponse.time.from.the.server..Actu
1e00 61 6c 6c 79 20 72 65 64 75 63 65 20 74 68 65 20 63 6f 73 74 20 6f 66 20 73 65 72 76 65 72 20 70 ally.reduce.the.cost.of.server.p
1e20 72 6f 63 65 73 73 69 6e 67 20 66 6f 72 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 62 79 rocessing.for.compressed.data.by
1e40 20 73 65 6e 64 69 6e 67 20 61 6e 64 20 72 65 63 65 69 76 69 6e 67 20 66 65 77 65 72 20 70 61 63 .sending.and.receiving.fewer.pac
1e60 6b 65 74 73 2e 20 20 0d 54 68 65 20 63 6f 6d 62 69 6e 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 70 kets....The.combination.of.the.p
1e80 72 65 76 69 6f 75 73 20 70 6f 69 6e 74 73 20 73 68 6f 75 6c 64 20 70 75 73 68 20 6f 75 74 20 74 revious.points.should.push.out.t
1ea0 68 65 20 93 6b 6e 65 65 94 20 69 6e 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 67 72 61 70 68 73 2c he..knee..in.performance.graphs,
1ec0 20 77 68 65 72 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 62 65 67 69 6e 73 20 74 6f 20 6c 65 76 .where.performance.begins.to.lev
1ee0 65 6c 20 6f 66 66 20 77 69 74 68 20 69 6e 63 72 65 61 73 65 64 20 6e 75 6d 62 65 72 73 20 6f 66 el.off.with.increased.numbers.of
1f00 20 63 6c 69 65 6e 74 73 2e 0d 52 65 64 75 63 65 20 6f 76 65 72 61 6c 6c 20 6e 65 74 77 6f 72 6b .clients..Reduce.overall.network
1f20 20 6f 76 65 72 68 65 61 64 20 74 68 72 6f 75 67 68 20 66 65 77 65 72 20 70 61 63 6b 65 74 73 2e .overhead.through.fewer.packets.
1f40 20 20 49 6e 20 66 61 63 74 2c 20 62 79 20 74 72 61 6e 73 6d 69 74 74 69 6e 67 20 63 6f 6d 70 72 ..In.fact,.by.transmitting.compr
1f60 65 73 73 65 64 20 64 61 74 61 20 6f 6e 20 74 68 65 20 77 69 72 65 2c 20 77 65 20 67 65 74 20 74 essed.data.on.the.wire,.we.get.t
1f80 68 65 20 61 70 70 65 61 72 61 6e 63 65 20 6f 66 20 65 78 63 65 65 64 69 6e 67 20 74 68 65 20 93 he.appearance.of.exceeding.the..
1fa0 73 70 65 65 64 20 6c 69 6d 69 74 94 20 6f 6e 20 74 68 65 20 77 69 72 65 2e 0d 46 6f 72 20 64 6f speed.limit..on.the.wire..For.do
1fc0 77 6e 2d 6c 65 76 65 6c 20 63 6c 69 65 6e 74 73 2c 20 61 6c 6c 6f 77 20 74 68 65 20 73 69 6d 75 wn-level.clients,.allow.the.simu
1fe0 6c 74 61 6e 65 6f 75 73 20 63 61 63 68 69 6e 67 20 6f 66 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 ltaneous.caching.of.uncompressed
2000 20 61 73 20 77 65 6c 6c 20 61 73 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 6f 6e 20 74 .as.well.as.compressed.data.on.t
2020 68 65 20 73 65 72 76 65 72 2e 20 20 4e 61 74 75 72 61 6c 6c 79 20 61 20 6e 65 74 77 6f 72 6b 20 he.server...Naturally.a.network.
2040 73 68 6f 75 6c 64 20 6e 6f 74 20 62 65 20 63 6f 6e 66 69 67 75 72 65 64 20 77 69 74 68 20 61 20 should.not.be.configured.with.a.
2060 6d 69 78 20 6f 66 20 52 64 72 32 20 63 6c 69 65 6e 74 73 20 61 6e 64 20 64 6f 77 6e 2d 6c 65 76 mix.of.Rdr2.clients.and.down-lev
2080 65 6c 20 63 6c 69 65 6e 74 73 20 73 75 63 68 20 74 68 61 74 20 6d 6f 73 74 20 66 69 6c 65 73 20 el.clients.such.that.most.files.
20a0 61 72 65 20 62 65 69 6e 67 20 63 61 63 68 65 64 20 62 6f 74 68 20 63 6f 6d 70 72 65 73 73 65 64 are.being.cached.both.compressed
20c0 20 61 6e 64 20 6e 6f 6e 63 6f 6d 70 72 65 73 73 65 64 2c 20 6f 74 68 65 72 20 74 68 61 6e 20 69 .and.noncompressed,.other.than.i
20e0 6e 20 61 20 74 72 61 6e 73 69 74 69 6f 6e 61 6c 20 70 68 61 73 65 2e 20 20 28 41 20 57 69 6e 39 n.a.transitional.phase...(A.Win9
2100 35 20 76 65 72 73 69 6f 6e 20 6f 66 20 6f 75 72 20 52 64 72 32 20 69 73 20 62 65 69 6e 67 20 63 5.version.of.our.Rdr2.is.being.c
2120 6f 64 65 76 65 6c 6f 70 65 64 20 69 6e 20 74 68 65 20 6e 65 74 20 67 72 6f 75 70 2e 20 20 5b 4f odeveloped.in.the.net.group...[O
2140 72 20 77 61 73 21 5d 29 0d 0d 31 2e 32 20 54 65 72 6d 69 6e 6f 6c 6f 67 79 0d 0d 46 6f 6c 6c 6f r.was!])..1.2.Terminology..Follo
2160 77 69 6e 67 20 69 73 20 73 6f 6d 65 20 74 65 72 6d 69 6e 6f 6c 6f 67 79 2c 20 77 69 74 68 20 73 wing.is.some.terminology,.with.s
2180 6f 6d 65 20 6e 75 6d 65 72 69 63 20 63 6c 61 72 69 66 69 63 61 74 69 6f 6e 73 20 73 70 65 63 69 ome.numeric.clarifications.speci
21a0 66 69 63 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 75 73 65 20 6f 66 20 4c 5a 4e 54 31 20 fic.to.the.current.use.of.LZNT1.
21c0 69 6e 20 57 69 6e 64 6f 77 73 20 4e 54 20 33 2e 35 31 20 69 6e 20 4e 74 66 73 2e 0d 0d 4c 5a 4e in.Windows.NT.3.51.in.Ntfs...LZN
21e0 54 31 20 2d 20 54 68 65 20 63 75 72 72 65 6e 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 66 6f 72 T1.-.The.current.compression.for
2200 6d 61 74 20 69 6e 20 75 73 65 20 62 79 20 4e 74 66 73 0d 43 68 75 6e 6b 20 2d 20 54 68 65 20 61 mat.in.use.by.Ntfs.Chunk.-.The.a
2220 6d 6f 75 6e 74 20 6f 66 20 64 61 74 61 20 74 68 61 74 20 69 73 20 63 6f 6d 70 72 65 73 73 65 64 mount.of.data.that.is.compressed
2240 20 61 74 20 6f 6e 63 65 2c 20 61 6e 64 20 69 73 20 74 68 65 72 65 66 6f 72 65 20 74 68 65 20 73 .at.once,.and.is.therefore.the.s
2260 6d 61 6c 6c 65 73 74 20 65 61 73 69 6c 79 20 69 64 65 6e 74 69 66 69 61 62 6c 65 20 75 6e 69 74 mallest.easily.identifiable.unit
2280 20 69 6e 20 61 20 62 75 66 66 65 72 20 6f 66 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2e .in.a.buffer.of.compressed.data.
22a0 20 20 43 75 72 72 65 6e 74 6c 79 20 74 68 65 20 63 68 75 6e 6b 20 73 69 7a 65 20 69 73 20 61 6c ..Currently.the.chunk.size.is.al
22c0 77 61 79 73 20 34 4b 42 20 28 75 6e 63 6f 6d 70 72 65 73 73 65 64 29 20 69 6e 20 4e 74 66 73 2e ways.4KB.(uncompressed).in.Ntfs.
22e0 0d 43 6f 6d 70 72 65 73 73 69 6f 6e 20 55 6e 69 74 20 2d 20 54 68 65 20 61 6d 6f 75 6e 74 20 6f .Compression.Unit.-.The.amount.o
2300 66 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 65 64 20 61 74 20 6f 6e 63 65 20 69 6e 20 61 20 63 f.data.compressed.at.once.in.a.c
2320 6f 6d 70 72 65 73 73 65 64 20 73 74 72 65 61 6d 2e 20 49 6e 20 4e 74 66 73 2c 20 74 68 65 20 63 ompressed.stream..In.Ntfs,.the.c
2340 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 69 73 20 61 6c 77 61 79 73 20 31 36 20 63 6c 75 ompression.unit.is.always.16.clu
2360 73 74 65 72 73 20 28 75 6e 63 6f 6d 70 72 65 73 73 65 64 29 2e 20 20 54 68 69 73 20 6d 65 61 6e sters.(uncompressed)...This.mean
2380 73 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 76 61 72 69 65 73 20 62 65 s.the.compression.unit.varies.be
23a0 74 77 65 65 6e 20 38 4b 42 20 61 6e 64 20 36 34 4b 42 20 69 6e 20 73 69 7a 65 2c 20 63 6f 72 72 tween.8KB.and.64KB.in.size,.corr
23c0 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 63 6c 75 73 74 65 72 20 73 69 7a 65 73 20 6f 66 20 35 31 esponding.to.cluster.sizes.of.51
23e0 32 20 62 79 74 65 73 20 74 6f 20 34 4b 42 2e 20 20 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 63 2.bytes.to.4KB...The.number.of.c
2400 68 75 6e 6b 73 20 69 6e 20 61 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 74 68 75 73 hunks.in.a.compression.unit.thus
2420 20 76 61 72 69 65 73 20 66 72 6f 6d 20 32 20 74 6f 20 31 36 2e 20 20 46 6f 72 20 65 61 63 68 20 .varies.from.2.to.16...For.each.
2440 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 6f 66 20 31 36 20 63 6c 75 73 74 65 72 73 2c compression.unit.of.16.clusters,
2460 20 6f 6e 6c 79 20 61 73 20 6d 61 6e 79 20 63 6c 75 73 74 65 72 73 20 61 72 65 20 61 63 74 75 61 .only.as.many.clusters.are.actua
2480 6c 6c 79 20 61 6c 6c 6f 63 61 74 65 64 20 61 73 20 69 73 20 72 65 71 75 69 72 65 64 20 74 6f 20 lly.allocated.as.is.required.to.
24a0 73 74 6f 72 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 2e 20 20 49 66 20 63 store.the.compressed.data...If.c
24c0 6f 6d 70 72 65 73 73 69 6f 6e 20 64 6f 65 73 20 6e 6f 74 20 72 65 73 75 6c 74 20 69 6e 20 31 35 ompression.does.not.result.in.15
24e0 20 6f 72 20 66 65 77 65 72 20 63 6c 75 73 74 65 72 73 2c 20 74 68 65 6e 20 74 68 65 20 64 61 74 .or.fewer.clusters,.then.the.dat
2500 61 20 69 73 20 6e 6f 74 20 63 6f 6d 70 72 65 73 73 65 64 2e 20 20 4e 74 66 73 20 73 75 70 70 6f a.is.not.compressed...Ntfs.suppo
2520 72 74 73 20 72 61 6e 64 6f 6d 20 61 63 63 65 73 73 20 62 79 20 75 6e 63 6f 6d 70 72 65 73 73 65 rts.random.access.by.uncompresse
2540 64 20 66 69 6c 65 20 6f 66 66 73 65 74 73 20 74 6f 20 6f 6e 65 20 6f 72 20 6d 6f 72 65 20 63 6f d.file.offsets.to.one.or.more.co
2560 6e 74 69 67 75 6f 75 73 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 73 2e 20 20 41 6e 20 ntiguous.compression.units...An.
2580 61 72 62 69 74 72 61 72 69 6c 79 20 73 6d 61 6c 6c 20 61 6d 6f 75 6e 74 20 6f 66 20 64 61 74 61 arbitrarily.small.amount.of.data
25a0 20 6d 61 79 20 62 65 20 65 78 74 72 61 63 74 65 64 20 66 72 6f 6d 20 61 20 63 6f 6d 70 72 65 73 .may.be.extracted.from.a.compres
25c0 73 69 6f 6e 20 75 6e 69 74 2c 20 62 75 74 20 77 68 65 6e 20 6d 6f 64 69 66 69 65 64 20 74 68 65 sion.unit,.but.when.modified.the
25e0 20 65 6e 74 69 72 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 69 73 20 72 65 77 72 .entire.compression.unit.is.rewr
2600 69 74 74 65 6e 20 62 79 20 4e 74 66 73 2e 0d 55 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 itten.by.Ntfs..Uncompressed.size
2620 20 2d 20 54 68 65 20 73 69 7a 65 20 6f 66 20 64 61 74 61 20 69 6e 20 62 79 74 65 73 20 62 65 66 .-.The.size.of.data.in.bytes.bef
2640 6f 72 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 61 70 70 6c 69 65 64 0d 43 6f 6d 70 72 ore.compression.is.applied.Compr
2660 65 73 73 65 64 20 73 69 7a 65 20 2d 20 54 68 65 20 73 69 7a 65 20 6f 66 20 64 61 74 61 20 69 6e essed.size.-.The.size.of.data.in
2680 20 62 79 74 65 73 20 61 66 74 65 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 0d 31 2e 33 20 43 6f .bytes.after.compression..1.3.Co
26a0 6d 70 72 65 73 73 65 64 20 44 61 74 61 20 46 6f 72 6d 61 74 0d 0d 49 6e 20 67 65 6e 65 72 61 6c mpressed.Data.Format..In.general
26c0 2c 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 62 75 66 66 65 72 20 73 68 6f 75 6c ,.a.compressed.data.buffer.shoul
26e0 64 20 62 65 20 76 69 65 77 65 64 20 61 73 20 61 20 63 6f 6e 74 69 6e 75 6f 75 73 20 73 74 72 65 d.be.viewed.as.a.continuous.stre
2700 61 6d 20 6f 66 20 20 62 79 74 65 2d 61 6c 69 67 6e 65 64 20 63 68 75 6e 6b 73 2e 20 45 61 63 68 am.of..byte-aligned.chunks..Each
2720 20 63 68 75 6e 6b 20 69 6e 20 74 68 65 20 62 75 66 66 65 72 20 6d 61 79 20 65 69 74 68 65 72 20 .chunk.in.the.buffer.may.either.
2740 62 65 20 69 6e 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 6f 72 20 75 6e 63 6f 6d 70 72 65 73 73 be.in.a.compressed.or.uncompress
2760 65 64 20 73 74 61 74 65 2e 20 20 49 6e 20 74 68 65 20 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 ed.state...In.the.FastIoDispatch
2780 20 61 6e 64 20 66 69 6c 65 20 73 79 73 74 65 6d 20 69 6e 74 65 72 66 61 63 65 73 2c 20 74 68 65 .and.file.system.interfaces,.the
27a0 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 62 75 66 66 65 72 20 6d 75 73 74 20 62 65 20 .compressed.data.buffer.must.be.
27c0 64 65 73 63 72 69 62 65 64 20 62 79 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0d 0d 46 69 6c described.by.the.following:..Fil
27e0 65 4f 66 66 73 65 74 20 28 75 6e 63 6f 6d 70 72 65 73 73 65 64 29 20 74 6f 20 77 68 69 63 68 20 eOffset.(uncompressed).to.which.
2800 74 68 65 20 64 61 74 61 20 62 65 6c 6f 6e 67 73 20 69 6e 20 61 20 66 69 6c 65 2e 20 20 54 68 69 the.data.belongs.in.a.file...Thi
2820 73 20 6d 75 73 74 20 62 65 20 61 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 74 68 65 20 63 68 75 6e s.must.be.a.multiple.of.the.chun
2840 6b 20 73 69 7a 65 2e 0d 55 6e 63 6f 6d 70 72 65 73 73 65 64 53 69 7a 65 2e 20 20 54 68 69 73 20 k.size..UncompressedSize...This.
2860 6d 75 73 74 20 61 6c 73 6f 20 62 65 20 61 20 6d 75 6c 74 69 70 6c 65 20 6f 66 20 74 68 65 20 63 must.also.be.a.multiple.of.the.c
2880 68 75 6e 6b 20 73 69 7a 65 2c 20 66 6f 72 20 61 6c 6c 20 63 61 73 65 73 20 65 78 63 65 70 74 20 hunk.size,.for.all.cases.except.
28a0 74 68 65 20 63 68 75 6e 6b 20 74 68 61 74 20 73 70 61 6e 73 20 46 69 6c 65 53 69 7a 65 2e 0d 43 the.chunk.that.spans.FileSize..C
28c0 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 2e 20 20 54 68 69 73 20 69 73 20 61 20 73 74 ompressedDataInfo...This.is.a.st
28e0 72 75 63 74 75 72 65 20 63 6f 6e 74 61 69 6e 69 6e 67 20 61 20 63 6f 64 65 20 66 6f 72 20 74 68 ructure.containing.a.code.for.th
2900 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 66 6f 72 6d 61 74 2c 20 61 73 20 77 65 6c 6c 20 61 73 e.compression.format,.as.well.as
2920 20 61 6e 20 61 72 72 61 79 20 6f 66 20 73 69 7a 65 73 20 77 69 74 68 20 6f 6e 65 20 65 6e 74 72 .an.array.of.sizes.with.one.entr
2940 79 20 66 6f 72 20 65 61 63 68 20 63 68 75 6e 6b 2c 20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 y.for.each.chunk,.describing.the
2960 20 73 69 7a 65 20 6f 66 20 74 68 61 74 20 63 68 75 6e 6b 2e 20 20 54 68 65 20 73 69 7a 65 20 6f .size.of.that.chunk...The.size.o
2980 66 20 74 68 65 20 61 72 72 61 79 20 6d 61 79 20 62 65 20 64 65 72 69 76 65 64 20 62 79 20 64 69 f.the.array.may.be.derived.by.di
29a0 76 69 64 69 6e 67 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 53 69 7a 65 20 62 79 20 74 68 65 20 63 viding.UncompressedSize.by.the.c
29c0 68 75 6e 6b 20 73 69 7a 65 2e 20 20 54 68 65 72 65 20 61 72 65 20 74 77 6f 20 73 70 65 63 69 61 hunk.size...There.are.two.specia
29e0 6c 20 63 61 73 65 73 2e 20 20 49 66 20 74 68 65 20 73 69 7a 65 20 66 6f 72 20 61 20 70 61 72 74 l.cases...If.the.size.for.a.part
2a00 69 63 75 6c 61 72 20 63 68 75 6e 6b 20 69 6e 20 74 68 65 20 61 72 72 61 79 20 69 73 20 65 71 75 icular.chunk.in.the.array.is.equ
2a20 61 6c 20 74 6f 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 63 68 75 6e 6b 20 73 69 7a al.to.the.uncompressed.chunk.siz
2a40 65 2c 20 74 68 65 6e 20 74 68 65 20 64 61 74 61 20 66 6f 72 20 74 68 61 74 20 63 68 75 6e 6b 20 e,.then.the.data.for.that.chunk.
2a60 69 6e 20 74 68 65 20 62 75 66 66 65 72 20 69 73 20 73 69 6d 70 6c 79 20 69 6e 20 61 6e 20 75 6e in.the.buffer.is.simply.in.an.un
2a80 63 6f 6d 70 72 65 73 73 65 64 20 73 74 61 74 65 2c 20 77 69 74 68 6f 75 74 20 61 6e 79 20 68 65 compressed.state,.without.any.he
2aa0 61 64 65 72 2e 20 20 49 66 20 74 68 65 20 73 69 7a 65 20 66 6f 72 20 61 20 70 61 72 74 69 63 75 ader...If.the.size.for.a.particu
2ac0 6c 61 72 20 63 68 75 6e 6b 20 69 73 20 7a 65 72 6f 2c 20 74 68 65 6e 20 74 68 61 74 20 72 65 70 lar.chunk.is.zero,.then.that.rep
2ae0 72 65 73 65 6e 74 73 20 61 20 63 68 75 6e 6b 20 66 75 6c 6c 20 6f 66 20 62 69 6e 61 72 79 20 30 resents.a.chunk.full.of.binary.0
2b00 92 73 20 61 6e 64 20 74 68 65 72 65 20 61 72 65 20 6e 6f 20 62 79 74 65 73 20 70 72 65 73 65 6e .s.and.there.are.no.bytes.presen
2b20 74 20 66 6f 72 20 74 68 61 74 20 63 68 75 6e 6b 20 69 6e 20 74 68 65 20 63 6f 6d 70 72 65 73 73 t.for.that.chunk.in.the.compress
2b40 65 64 20 64 61 74 61 2e 20 20 49 6e 20 61 6c 6c 20 6f 74 68 65 72 20 63 61 73 65 73 2c 20 74 68 ed.data...In.all.other.cases,.th
2b60 65 20 73 69 7a 65 20 6d 75 73 74 20 62 65 20 6c 65 73 73 20 74 68 61 6e 20 74 68 65 20 63 68 75 e.size.must.be.less.than.the.chu
2b80 6e 6b 20 73 69 7a 65 2c 20 61 6e 64 20 74 68 65 20 64 61 74 61 20 69 73 20 63 6f 6d 70 72 65 73 nk.size,.and.the.data.is.compres
2ba0 73 65 64 2e 0b 0b 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 63 68 75 6e 6b 20 63 6f 6e 74 61 69 sed...Note.that.the.chunk.contai
2bc0 6e 69 6e 67 20 74 68 65 20 65 6e 64 20 6f 66 20 66 69 6c 65 20 28 46 69 6c 65 53 69 7a 65 29 2c ning.the.end.of.file.(FileSize),
2be0 20 6d 61 79 20 61 6c 73 6f 20 65 69 74 68 65 72 20 62 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 .may.also.either.be.uncompressed
2c00 20 6f 72 20 63 6f 6d 70 72 65 73 73 65 64 2c 20 61 6e 64 20 74 68 69 73 20 77 69 6c 6c 20 62 65 .or.compressed,.and.this.will.be
2c20 20 69 6e 64 69 63 61 74 65 64 20 69 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 76 69 61 20 74 .indicated.in.the.same.way.via.t
2c40 68 65 20 73 69 7a 65 20 65 6e 74 72 79 20 69 6e 20 74 68 65 20 43 6f 6d 70 72 65 73 73 65 64 53 he.size.entry.in.the.CompressedS
2c60 69 7a 65 73 20 61 72 72 61 79 2e 20 20 49 66 20 69 74 20 69 73 20 75 6e 63 6f 6d 70 72 65 73 73 izes.array...If.it.is.uncompress
2c80 65 64 2c 20 74 68 65 6e 20 69 74 73 20 63 68 75 6e 6b 20 73 69 7a 65 20 77 69 6c 6c 20 62 65 20 ed,.then.its.chunk.size.will.be.
2ca0 65 71 75 61 6c 20 74 6f 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 63 68 75 6e 6b 20 equal.to.the.uncompressed.chunk.
2cc0 73 69 7a 65 2c 20 61 6e 64 20 74 68 65 20 65 6e 74 69 72 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 size,.and.the.entire.uncompresse
2ce0 64 20 63 68 75 6e 6b 20 73 69 7a 65 20 77 69 6c 6c 20 62 65 20 6f 63 63 75 70 69 65 64 20 69 6e d.chunk.size.will.be.occupied.in
2d00 20 74 68 65 20 62 75 66 66 65 72 20 28 61 6c 74 68 6f 75 67 68 20 61 6c 6c 20 62 79 74 65 73 20 .the.buffer.(although.all.bytes.
2d20 62 65 79 6f 6e 64 20 46 69 6c 65 53 69 7a 65 20 73 68 6f 75 6c 64 20 62 65 20 7a 65 72 6f 29 2e beyond.FileSize.should.be.zero).
2d40 20 20 49 66 20 74 68 65 20 63 68 75 6e 6b 20 69 73 20 63 6f 6d 70 72 65 73 73 65 64 2c 20 74 68 ..If.the.chunk.is.compressed,.th
2d60 65 6e 20 69 74 73 20 63 68 75 6e 6b 20 73 69 7a 65 20 77 69 6c 6c 20 62 65 20 6c 65 73 73 20 74 en.its.chunk.size.will.be.less.t
2d80 68 61 6e 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 63 68 75 6e 6b 20 73 69 7a 65 2e han.the.uncompressed.chunk.size.
2da0 20 20 49 74 20 69 73 20 70 6f 73 73 69 62 6c 65 20 69 6e 20 74 68 69 73 20 63 61 73 65 20 74 68 ..It.is.possible.in.this.case.th
2dc0 61 74 20 74 68 65 20 63 68 75 6e 6b 20 73 69 7a 65 20 63 6f 75 6c 64 20 62 65 20 6c 61 72 67 65 at.the.chunk.size.could.be.large
2de0 72 20 74 68 61 6e 20 74 68 61 74 20 69 6e 64 69 63 61 74 65 64 20 62 79 20 46 69 6c 65 53 69 7a r.than.that.indicated.by.FileSiz
2e00 65 2e 20 20 4f 66 20 63 6f 75 72 73 65 20 74 68 65 20 63 68 75 6e 6b 20 73 69 7a 65 20 6f 66 20 e...Of.course.the.chunk.size.of.
2e20 74 68 65 20 6c 61 73 74 20 63 68 75 6e 6b 20 6d 61 79 20 61 6c 73 6f 20 62 65 20 7a 65 72 6f 2c the.last.chunk.may.also.be.zero,
2e40 20 69 66 20 74 68 65 72 65 20 61 72 65 20 6e 6f 74 68 69 6e 67 20 62 75 74 20 7a 65 72 6f 73 20 .if.there.are.nothing.but.zeros.
2e60 69 6e 20 74 68 65 20 66 69 6e 61 6c 20 63 68 75 6e 6b 20 75 70 20 74 6f 20 46 69 6c 65 53 69 7a in.the.final.chunk.up.to.FileSiz
2e80 65 2e 0d 0d 48 65 72 65 20 69 73 20 74 68 65 20 64 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 43 6f e...Here.is.the.definition.of.Co
2ea0 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 20 66 72 6f 6d 20 6e 74 72 74 6c 2e 68 3a 0d 0d mpressedDataInfo.from.ntrtl.h:..
2ec0 2f 2f 0d 2f 2f 20 20 43 6f 6d 70 72 65 73 73 65 64 20 44 61 74 61 20 49 6e 66 6f 72 6d 61 74 69 //.//..Compressed.Data.Informati
2ee0 6f 6e 20 73 74 72 75 63 74 75 72 65 2e 20 20 54 68 69 73 20 73 74 72 75 63 74 75 72 65 20 69 73 on.structure...This.structure.is
2f00 0d 2f 2f 20 20 75 73 65 64 20 74 6f 20 64 65 73 63 72 69 62 65 20 74 68 65 20 73 74 61 74 65 20 .//..used.to.describe.the.state.
2f20 6f 66 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 62 75 66 66 65 72 2c 0d 2f 2f 20 of.a.compressed.data.buffer,.//.
2f40 20 77 68 6f 73 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 69 7a 65 20 69 73 20 6b 6e 6f 77 .whose.uncompressed.size.is.know
2f60 6e 2e 20 20 41 6c 6c 20 63 6f 6d 70 72 65 73 73 65 64 20 63 68 75 6e 6b 73 0d 2f 2f 20 20 64 65 n...All.compressed.chunks.//..de
2f80 73 63 72 69 62 65 64 20 62 79 20 74 68 69 73 20 73 74 72 75 63 74 75 72 65 20 6d 75 73 74 20 62 scribed.by.this.structure.must.b
2fa0 65 20 63 6f 6d 70 72 65 73 73 65 64 20 77 69 74 68 20 74 68 65 0d 2f 2f 20 20 73 61 6d 65 20 66 e.compressed.with.the.//..same.f
2fc0 6f 72 6d 61 74 2e 0d 2f 2f 0d 0d 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 5f 43 4f 4d 50 52 ormat..//..typedef.struct._COMPR
2fe0 45 53 53 45 44 5f 44 41 54 41 5f 49 4e 46 4f 20 7b 0d 0d 20 20 20 20 2f 2f 0d 20 20 20 20 2f 2f ESSED_DATA_INFO.{......//.....//
3000 20 20 43 6f 64 65 20 66 6f 72 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 66 6f 72 6d 61 ..Code.for.the.compression.forma
3020 74 20 28 61 6e 64 20 65 6e 67 69 6e 65 29 20 61 73 0d 20 20 20 20 2f 2f 20 20 64 65 66 69 6e 65 t.(and.engine).as.....//..define
3040 64 20 69 6e 20 6e 74 72 74 6c 2e 68 2e 20 20 4e 6f 74 65 20 74 68 61 74 20 43 4f 4d 50 52 45 53 d.in.ntrtl.h...Note.that.COMPRES
3060 53 49 4f 4e 5f 46 4f 52 4d 41 54 5f 4e 4f 4e 45 0d 20 20 20 20 2f 2f 20 20 61 6e 64 20 43 4f 4d SION_FORMAT_NONE.....//..and.COM
3080 50 52 45 53 53 49 4f 4e 5f 46 4f 52 4d 41 54 5f 44 45 46 41 55 4c 54 20 61 72 65 20 69 6e 76 61 PRESSION_FORMAT_DEFAULT.are.inva
30a0 6c 69 64 20 69 66 0d 20 20 20 20 2f 2f 20 20 61 6e 79 20 6f 66 20 74 68 65 20 64 65 73 63 72 69 lid.if.....//..any.of.the.descri
30c0 62 65 64 20 63 68 75 6e 6b 73 20 61 72 65 20 63 6f 6d 70 72 65 73 73 65 64 2e 0d 20 20 20 20 2f bed.chunks.are.compressed....../
30e0 2f 0d 0d 20 20 20 20 55 53 48 4f 52 54 20 43 6f 6d 70 72 65 73 73 69 6f 6e 46 6f 72 6d 61 74 41 /......USHORT.CompressionFormatA
3100 6e 64 45 6e 67 69 6e 65 3b 0d 0d 20 20 20 20 2f 2f 0d 20 20 20 20 2f 2f 20 20 53 69 6e 63 65 20 ndEngine;......//.....//..Since.
3120 63 68 75 6e 6b 73 20 61 6e 64 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 73 20 61 72 65 chunks.and.compression.units.are
3140 20 65 78 70 65 63 74 65 64 20 74 6f 20 62 65 0d 20 20 20 20 2f 2f 20 20 70 6f 77 65 72 73 20 6f .expected.to.be.....//..powers.o
3160 66 20 32 20 69 6e 20 73 69 7a 65 2c 20 77 65 20 65 78 70 72 65 73 73 20 74 68 65 6e 20 6c 6f 67 f.2.in.size,.we.express.then.log
3180 32 2e 20 20 53 6f 2c 20 66 6f 72 0d 20 20 20 20 2f 2f 20 20 65 78 61 6d 70 6c 65 20 28 31 20 3c 2...So,.for.....//..example.(1.<
31a0 3c 20 43 68 75 6e 6b 53 68 69 66 74 29 20 3d 3d 20 43 68 75 6e 6b 53 69 7a 65 49 6e 42 79 74 65 <.ChunkShift).==.ChunkSizeInByte
31c0 73 2e 20 20 54 68 65 0d 20 20 20 20 2f 2f 20 20 43 6c 75 73 74 65 72 53 68 69 66 74 20 69 6e 64 s...The.....//..ClusterShift.ind
31e0 69 63 61 74 65 73 20 68 6f 77 20 6d 75 63 68 20 73 70 61 63 65 20 6d 75 73 74 20 62 65 20 73 61 icates.how.much.space.must.be.sa
3200 76 65 64 0d 20 20 20 20 2f 2f 20 20 74 6f 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 63 6f 6d 70 ved.....//..to.successfully.comp
3220 72 65 73 73 20 61 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 2d 20 65 61 63 68 0d 20 ress.a.compression.unit.-.each..
3240 20 20 20 2f 2f 20 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 63 6f 6d 70 72 65 73 73 65 64 20 63 ...//..successfully.compressed.c
3260 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 6d 75 73 74 20 6f 63 63 75 70 79 0d 20 20 20 20 ompression.unit.must.occupy.....
3280 2f 2f 20 20 61 74 20 6c 65 61 73 74 20 6f 6e 65 20 63 6c 75 73 74 65 72 20 6c 65 73 73 20 69 6e //..at.least.one.cluster.less.in
32a0 20 62 79 74 65 73 20 74 68 61 6e 20 61 6e 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 0d 20 20 20 20 .bytes.than.an.uncompressed.....
32c0 2f 2f 20 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 2e 0d 20 20 20 20 2f 2f 0d 0d 20 20 //..compression.unit......//....
32e0 20 20 55 43 48 41 52 20 43 6f 6d 70 72 65 73 73 69 6f 6e 55 6e 69 74 53 68 69 66 74 3b 0d 20 20 ..UCHAR.CompressionUnitShift;...
3300 20 20 55 43 48 41 52 20 43 68 75 6e 6b 53 68 69 66 74 3b 0d 20 20 20 20 55 43 48 41 52 20 43 6c ..UCHAR.ChunkShift;.....UCHAR.Cl
3320 75 73 74 65 72 53 68 69 66 74 3b 0d 20 20 20 20 55 43 48 41 52 20 52 65 73 65 72 76 65 64 3b 0d usterShift;.....UCHAR.Reserved;.
3340 0d 20 20 20 20 2f 2f 0d 20 20 20 20 2f 2f 20 20 54 68 69 73 20 69 73 20 74 68 65 20 6e 75 6d 62 .....//.....//..This.is.the.numb
3360 65 72 20 6f 66 20 65 6e 74 72 69 65 73 20 69 6e 20 74 68 65 20 43 6f 6d 70 72 65 73 73 65 64 43 er.of.entries.in.the.CompressedC
3380 68 75 6e 6b 53 69 7a 65 73 0d 20 20 20 20 2f 2f 20 20 61 72 72 61 79 2e 0d 20 20 20 20 2f 2f 0d hunkSizes.....//..array......//.
33a0 0d 20 20 20 20 55 53 48 4f 52 54 20 4e 75 6d 62 65 72 4f 66 43 68 75 6e 6b 73 3b 0d 0d 20 20 20 .....USHORT.NumberOfChunks;.....
33c0 20 2f 2f 0d 20 20 20 20 2f 2f 20 20 54 68 69 73 20 69 73 20 61 6e 20 61 72 72 61 79 20 6f 66 20 .//.....//..This.is.an.array.of.
33e0 74 68 65 20 73 69 7a 65 73 20 6f 66 20 61 6c 6c 20 63 68 75 6e 6b 73 20 72 65 73 69 64 65 6e 74 the.sizes.of.all.chunks.resident
3400 0d 20 20 20 20 2f 2f 20 20 69 6e 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 .....//..in.the.compressed.data.
3420 62 75 66 66 65 72 2e 20 20 54 68 65 72 65 20 6d 75 73 74 20 62 65 20 6f 6e 65 20 65 6e 74 72 79 buffer...There.must.be.one.entry
3440 0d 20 20 20 20 2f 2f 20 20 69 6e 20 74 68 69 73 20 61 72 72 61 79 20 66 6f 72 20 65 61 63 68 20 .....//..in.this.array.for.each.
3460 63 68 75 6e 6b 20 70 6f 73 73 69 62 6c 65 20 69 6e 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 chunk.possible.in.the.uncompress
3480 65 64 0d 20 20 20 20 2f 2f 20 20 62 75 66 66 65 72 20 73 69 7a 65 2e 20 20 41 20 73 69 7a 65 20 ed.....//..buffer.size...A.size.
34a0 6f 66 20 46 53 52 54 4c 5f 43 48 55 4e 4b 5f 53 49 5a 45 20 69 6e 64 69 63 61 74 65 73 20 74 68 of.FSRTL_CHUNK_SIZE.indicates.th
34c0 65 0d 20 20 20 20 2f 2f 20 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 63 68 75 6e 6b 20 69 73 e.....//..corresponding.chunk.is
34e0 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 61 6e 64 20 6f 63 63 75 70 69 65 73 20 65 78 61 63 74 .uncompressed.and.occupies.exact
3500 6c 79 0d 20 20 20 20 2f 2f 20 20 74 68 61 74 20 73 69 7a 65 2e 20 20 41 20 73 69 7a 65 20 6f 66 ly.....//..that.size...A.size.of
3520 20 30 20 69 6e 64 69 63 61 74 65 73 20 74 68 61 74 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 .0.indicates.that.the.correspond
3540 69 6e 67 0d 20 20 20 20 2f 2f 20 20 63 68 75 6e 6b 20 63 6f 6e 74 61 69 6e 73 20 6e 6f 74 68 69 ing.....//..chunk.contains.nothi
3560 6e 67 20 62 75 74 20 62 69 6e 61 72 79 20 30 27 73 2c 20 61 6e 64 20 6f 63 63 75 70 69 65 73 20 ng.but.binary.0's,.and.occupies.
3580 6e 6f 0d 20 20 20 20 2f 2f 20 20 73 70 61 63 65 20 69 6e 20 74 68 65 20 63 6f 6d 70 72 65 73 73 no.....//..space.in.the.compress
35a0 65 64 20 64 61 74 61 2e 20 20 41 6c 6c 20 6f 74 68 65 72 20 73 69 7a 65 73 20 6d 75 73 74 20 62 ed.data...All.other.sizes.must.b
35c0 65 0d 20 20 20 20 2f 2f 20 20 6c 65 73 73 20 74 68 61 6e 20 46 53 52 54 4c 5f 43 48 55 4e 4b 5f e.....//..less.than.FSRTL_CHUNK_
35e0 53 49 5a 45 2c 20 61 6e 64 20 69 6e 64 69 63 61 74 65 20 74 68 65 20 65 78 61 63 74 20 73 69 7a SIZE,.and.indicate.the.exact.siz
3600 65 0d 20 20 20 20 2f 2f 20 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 e.....//..of.the.compressed.data
3620 20 69 6e 20 62 79 74 65 73 2e 0d 20 20 20 20 2f 2f 0d 0d 20 20 20 20 55 4c 4f 4e 47 20 43 6f 6d .in.bytes......//......ULONG.Com
3640 70 72 65 73 73 65 64 43 68 75 6e 6b 53 69 7a 65 73 5b 41 4e 59 53 49 5a 45 5f 41 52 52 41 59 5d pressedChunkSizes[ANYSIZE_ARRAY]
3660 3b 0d 0d 7d 20 43 4f 4d 50 52 45 53 53 45 44 5f 44 41 54 41 5f 49 4e 46 4f 3b 0d 74 79 70 65 64 ;..}.COMPRESSED_DATA_INFO;.typed
3680 65 66 20 43 4f 4d 50 52 45 53 53 45 44 5f 44 41 54 41 5f 49 4e 46 4f 20 2a 50 43 4f 4d 50 52 45 ef.COMPRESSED_DATA_INFO.*PCOMPRE
36a0 53 53 45 44 5f 44 41 54 41 5f 49 4e 46 4f 3b 0d 0d 53 69 6e 63 65 20 62 6f 74 68 20 43 6f 70 79 SSED_DATA_INFO;..Since.both.Copy
36c0 20 61 6e 64 20 4d 64 6c 20 69 6e 74 65 72 66 61 63 65 73 20 61 72 65 20 70 72 6f 76 69 64 65 64 .and.Mdl.interfaces.are.provided
36e0 2c 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 69 74 73 65 6c 66 20 77 69 6c ,.the.compressed.data.itself.wil
3700 6c 20 65 69 74 68 65 72 20 62 65 20 69 6e 20 61 20 63 6f 6e 74 69 67 75 6f 75 73 20 62 75 66 66 l.either.be.in.a.contiguous.buff
3720 65 72 20 28 63 6f 70 79 20 63 61 73 65 29 2c 20 6f 72 20 69 6e 20 6f 6e 65 20 6f 72 20 6d 6f 72 er.(copy.case),.or.in.one.or.mor
3740 65 20 64 69 73 63 6f 6e 74 69 67 75 6f 75 73 20 62 75 66 66 65 72 73 20 64 65 73 63 72 69 62 65 e.discontiguous.buffers.describe
3760 64 20 62 79 20 61 6e 20 4d 64 6c 43 68 61 69 6e 2e 0d 0d 41 6c 74 68 6f 75 67 68 20 61 6c 6c 20 d.by.an.MdlChain...Although.all.
3780 63 6f 64 65 20 6f 75 74 73 69 64 65 20 6f 66 20 74 68 65 20 52 74 6c 20 63 6f 6d 70 72 65 73 73 code.outside.of.the.Rtl.compress
37a0 69 6f 6e 20 72 6f 75 74 69 6e 65 73 20 73 68 6f 75 6c 64 20 74 72 65 61 74 20 74 68 65 20 63 6f ion.routines.should.treat.the.co
37c0 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 61 73 20 6f 70 61 71 75 65 2c 20 74 68 65 20 6c 6f 63 mpressed.data.as.opaque,.the.loc
37e0 61 6c 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 69 6e 20 6e 74 6f 73 5c 72 74 6c 5c 6c 7a 6e 74 31 al.definitions.in.ntos\rtl\lznt1
3800 2e 63 20 63 6f 75 6c 64 20 70 72 6f 76 65 20 75 73 65 66 75 6c 20 66 6f 72 20 64 65 62 75 67 67 .c.could.prove.useful.for.debugg
3820 69 6e 67 21 0d 0d 31 2e 34 20 43 61 63 68 65 64 20 43 6f 6d 70 72 65 73 73 65 64 20 44 61 74 61 ing!..1.4.Cached.Compressed.Data
3840 0d 0d 54 68 65 20 66 69 6c 65 20 73 79 73 74 65 6d 20 77 69 6c 6c 20 63 72 65 61 74 65 20 61 20 ..The.file.system.will.create.a.
3860 73 65 63 6f 6e 64 20 73 74 72 65 61 6d 20 74 6f 20 63 61 63 68 65 20 63 6f 6d 70 72 65 73 73 65 second.stream.to.cache.compresse
3880 64 20 64 61 74 61 2e 20 20 54 68 69 73 20 73 74 72 65 61 6d 20 77 69 6c 6c 20 62 65 20 61 6e 20 d.data...This.stream.will.be.an.
38a0 65 78 61 63 74 20 69 6d 61 67 65 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 exact.image.of.the.compressed.da
38c0 74 61 20 61 73 20 69 74 20 69 73 20 73 74 6f 72 65 64 20 6f 6e 20 64 69 73 6b 2e 20 20 54 68 75 ta.as.it.is.stored.on.disk...Thu
38e0 73 20 74 68 65 20 63 61 63 68 65 64 20 64 61 74 61 20 66 6f 72 20 65 61 63 68 20 63 6f 6d 70 72 s.the.cached.data.for.each.compr
3900 65 73 73 69 6f 6e 20 75 6e 69 74 20 77 69 6c 6c 20 62 65 20 73 74 6f 72 65 64 20 61 74 20 74 68 ession.unit.will.be.stored.at.th
3920 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 6f 66 66 73 65 74 20 77 69 74 68 69 6e 20 74 68 65 e.uncompressed.offset.within.the
3940 20 73 74 72 65 61 6d 20 66 6f 72 20 74 68 61 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 .stream.for.that.compression.uni
3960 74 2c 20 62 75 74 20 6f 6e 6c 79 20 6f 63 63 75 70 79 69 6e 67 20 61 73 20 6d 61 6e 79 20 70 61 t,.but.only.occupying.as.many.pa
3980 67 65 73 20 69 6e 20 74 68 65 20 63 61 63 68 65 20 61 73 20 69 73 20 72 65 71 75 69 72 65 64 20 ges.in.the.cache.as.is.required.
39a0 74 6f 20 73 74 6f 72 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 2e 20 20 to.store.the.compression.unit...
39c0 54 68 65 20 6c 61 72 67 65 72 20 63 6c 75 73 74 65 72 20 73 69 7a 65 73 20 77 6f 72 6b 20 62 65 The.larger.cluster.sizes.work.be
39e0 73 74 20 66 6f 72 20 74 68 69 73 20 73 74 72 61 74 65 67 79 2c 20 61 6e 64 20 69 6e 20 66 61 63 st.for.this.strategy,.and.in.fac
3a00 74 20 74 68 65 20 64 65 73 69 67 6e 20 63 65 6e 74 65 72 20 66 6f 72 20 74 68 65 20 63 61 63 68 t.the.design.center.for.the.cach
3a20 69 6e 67 20 6f 66 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 69 73 20 61 20 6c 61 72 67 ing.of.compressed.data.is.a.larg
3a40 65 20 73 65 72 76 65 72 20 77 69 74 68 20 61 20 34 4b 42 20 63 6c 75 73 74 65 72 20 73 69 7a 65 e.server.with.a.4KB.cluster.size
3a60 2e 0d 0d 54 61 6b 65 20 66 6f 72 20 65 78 61 6d 70 6c 65 20 74 68 65 6e 20 61 20 73 65 72 76 65 ...Take.for.example.then.a.serve
3a80 72 20 77 69 74 68 20 61 20 34 4b 42 20 63 6c 75 73 74 65 72 20 73 69 7a 65 20 6f 6e 20 61 20 70 r.with.a.4KB.cluster.size.on.a.p
3aa0 61 72 74 69 74 69 6f 6e 20 77 69 74 68 20 63 6f 6d 70 72 65 73 73 65 64 20 66 69 6c 65 73 2e 20 artition.with.compressed.files..
3ac0 20 54 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 6f 6e 20 74 68 69 73 20 70 61 .The.compression.unit.on.this.pa
3ae0 72 74 69 74 69 6f 6e 20 69 73 20 36 34 4b 42 2c 20 6f 72 20 31 36 20 70 61 67 65 73 20 6f 6e 20 rtition.is.64KB,.or.16.pages.on.
3b00 61 6c 6c 20 70 6c 61 74 66 6f 72 6d 73 20 62 75 74 20 41 6c 70 68 61 20 28 77 68 65 72 65 20 74 all.platforms.but.Alpha.(where.t
3b20 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 69 73 20 38 20 70 61 67 65 73 29 2e he.compression.unit.is.8.pages).
3b40 20 20 49 6e 20 74 68 69 73 20 65 78 61 6d 70 6c 65 2c 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 ..In.this.example,.the.compresse
3b60 64 20 64 61 74 61 20 66 6f 72 20 65 61 63 68 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 d.data.for.each.compression.unit
3b80 20 77 69 6c 6c 20 62 65 20 63 61 63 68 65 64 20 73 74 61 72 74 69 6e 67 20 61 74 20 65 61 63 68 .will.be.cached.starting.at.each
3ba0 20 36 34 4b 42 20 62 6f 75 6e 64 61 72 79 2c 20 61 6e 64 20 77 69 6c 6c 20 6f 63 63 75 70 79 20 .64KB.boundary,.and.will.occupy.
3bc0 6f 6e 6c 79 20 61 73 20 6d 61 6e 79 20 70 61 67 65 73 20 69 6e 20 74 68 65 20 63 61 63 68 65 20 only.as.many.pages.in.the.cache.
3be0 61 73 20 69 73 20 72 65 71 75 69 72 65 64 20 74 6f 20 68 6f 6c 64 20 74 68 65 20 63 6f 6d 70 72 as.is.required.to.hold.the.compr
3c00 65 73 73 65 64 20 64 61 74 61 2e 20 20 54 79 70 69 63 61 6c 6c 79 20 74 68 69 73 20 6d 65 61 6e essed.data...Typically.this.mean
3c20 73 20 74 68 61 74 20 66 6f 72 20 65 61 63 68 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 s.that.for.each.compression.unit
3c40 20 6f 66 20 31 36 20 34 4b 42 20 70 61 67 65 73 2c 20 6f 6e 6c 79 20 36 20 74 6f 20 31 30 20 70 .of.16.4KB.pages,.only.6.to.10.p
3c60 61 67 65 73 20 77 69 6c 6c 20 62 65 20 72 65 71 75 69 72 65 64 20 69 6e 20 74 68 65 20 63 61 63 ages.will.be.required.in.the.cac
3c80 68 65 2e 20 20 49 66 20 61 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 69 73 20 6f 76 he...If.a.compression.unit.is.ov
3ca0 65 72 77 72 69 74 74 65 6e 2c 20 74 68 65 20 66 69 6c 65 20 73 79 73 74 65 6d 20 77 69 6c 6c 20 erwritten,.the.file.system.will.
3cc0 63 61 6c 6c 20 74 68 65 20 43 61 63 68 65 20 4d 61 6e 61 67 65 72 20 74 6f 20 61 64 64 20 6f 72 call.the.Cache.Manager.to.add.or
3ce0 20 72 65 6d 6f 76 65 20 28 70 75 72 67 65 29 20 70 61 67 65 73 20 69 6e 20 74 68 65 20 63 61 63 .remove.(purge).pages.in.the.cac
3d00 68 65 20 61 73 20 72 65 71 75 69 72 65 64 20 69 66 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 he.as.required.if.the.size.of.th
3d20 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 20 63 68 61 6e 67 65 73 2e 20 20 4e 6f 74 e.compression.unit.changes...Not
3d40 65 20 74 68 61 74 20 61 73 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 75 6e 69 74 73 20 61 72 65 20 e.that.as.compression.units.are.
3d60 6f 76 65 72 77 72 69 74 74 65 6e 2c 20 6f 6e 6c 79 20 6c 6f 63 61 6c 20 63 68 61 6e 67 65 73 20 overwritten,.only.local.changes.
3d80 61 72 65 20 72 65 71 75 69 72 65 64 20 69 6e 20 74 68 65 20 63 61 63 68 65 2c 20 61 6e 64 20 74 are.required.in.the.cache,.and.t
3da0 68 65 72 65 20 61 72 65 20 6e 6f 20 72 69 70 70 6c 65 20 65 66 66 65 63 74 73 2e 20 20 28 54 68 here.are.no.ripple.effects...(Th
3dc0 61 6e 6b 73 20 74 6f 20 4a 65 66 66 20 48 61 76 65 6e 73 20 66 6f 72 20 63 6f 6d 69 6e 67 20 75 anks.to.Jeff.Havens.for.coming.u
3de0 70 20 77 69 74 68 20 74 68 69 73 20 73 74 72 61 74 65 67 79 21 29 0d 0d 49 66 20 61 20 72 61 6e p.with.this.strategy!)..If.a.ran
3e00 67 65 20 6f 66 20 74 68 65 20 66 69 6c 65 20 69 73 20 6e 6f 74 20 63 6f 6d 70 72 65 73 73 65 64 ge.of.the.file.is.not.compressed
3e20 20 28 64 75 65 20 74 6f 20 64 65 6c 61 79 65 64 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 72 20 .(due.to.delayed.compression.or.
3e40 75 6e 63 6f 6d 70 72 65 73 73 69 62 6c 65 20 64 61 74 61 29 2c 20 74 68 65 20 69 6d 70 6c 65 6d uncompressible.data),.the.implem
3e60 65 6e 74 61 74 69 6f 6e 20 77 69 6c 6c 20 70 72 6f 62 61 62 6c 79 20 63 68 6f 6f 73 65 20 74 6f entation.will.probably.choose.to
3e80 20 6c 6f 61 64 20 74 68 6f 73 65 20 70 61 67 65 73 20 6f 6e 6c 79 20 69 6e 20 74 68 65 20 75 6e .load.those.pages.only.in.the.un
3ea0 63 6f 6d 70 72 65 73 73 65 64 20 73 74 72 65 61 6d 20 66 6f 72 20 74 68 61 74 20 72 61 6e 67 65 compressed.stream.for.that.range
3ec0 20 6f 66 20 20 74 68 65 20 66 69 6c 65 2c 20 73 6f 20 74 68 61 74 20 74 68 65 20 75 6e 63 6f 6d .of..the.file,.so.that.the.uncom
3ee0 70 72 65 73 73 65 64 20 64 61 74 61 20 69 73 20 6f 6e 6c 79 20 63 61 63 68 65 64 20 6f 6e 63 65 pressed.data.is.only.cached.once
3f00 2e 20 20 54 68 69 73 20 77 69 6c 6c 20 62 65 20 74 72 61 6e 73 70 61 72 65 6e 74 20 74 6f 20 74 ...This.will.be.transparent.to.t
3f20 68 65 20 72 65 61 64 20 61 6e 64 20 77 72 69 74 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 he.read.and.write.compressed.dat
3f40 61 20 41 50 49 73 2e 0d 0d 46 6f 72 20 74 68 65 20 4d 64 6c 20 69 6e 74 65 72 66 61 63 65 20 74 a.APIs...For.the.Mdl.interface.t
3f60 6f 20 63 61 63 68 65 64 20 64 61 74 61 2c 20 74 68 65 20 4d 64 6c 73 20 77 69 6c 6c 20 62 65 20 o.cached.data,.the.Mdls.will.be.
3f80 75 73 65 64 20 74 6f 20 64 65 73 63 72 69 62 65 20 64 61 74 61 20 64 69 72 65 63 74 6c 79 20 69 used.to.describe.data.directly.i
3fa0 6e 20 74 68 65 20 63 61 63 68 65 64 20 63 6f 6d 70 72 65 73 73 65 64 20 28 6f 72 20 75 6e 63 6f n.the.cached.compressed.(or.unco
3fc0 6d 70 72 65 73 73 65 64 29 20 73 74 72 65 61 6d 2e 0d 0d 32 2e 30 20 41 50 49 73 20 61 6e 64 20 mpressed).stream...2.0.APIs.and.
3fe0 49 52 50 73 0d 0d 47 69 76 65 6e 20 74 68 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 72 65 71 75 69 IRPs..Given.the.additional.requi
4000 72 65 6d 65 6e 74 73 20 6f 66 20 64 65 73 63 72 69 62 69 6e 67 20 61 20 63 6f 6d 70 72 65 73 73 rements.of.describing.a.compress
4020 65 64 20 72 65 61 64 20 6f 72 20 77 72 69 74 65 2c 20 61 20 6e 65 77 20 73 65 74 20 6f 66 20 41 ed.read.or.write,.a.new.set.of.A
4040 50 49 73 20 61 72 65 20 72 65 71 75 69 72 65 64 20 69 6e 20 74 68 65 20 43 61 63 68 65 20 4d 61 PIs.are.required.in.the.Cache.Ma
4060 6e 61 67 65 72 20 61 6e 64 20 46 61 73 74 20 49 2f 4f 20 44 69 73 70 61 74 63 68 2c 20 61 6e 64 nager.and.Fast.I/O.Dispatch,.and
4080 20 72 69 67 68 74 20 6f 6e 20 75 70 20 74 68 72 6f 75 67 68 20 74 68 65 20 4e 74 20 49 2f 4f 20 .right.on.up.through.the.Nt.I/O.
40a0 41 50 49 73 20 61 6e 64 20 57 69 6e 33 32 20 69 66 20 77 65 20 64 65 63 69 64 65 20 74 6f 20 65 APIs.and.Win32.if.we.decide.to.e
40c0 78 70 6f 73 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2e 20 20 49 6e 20 61 64 xpose.this.functionality...In.ad
40e0 64 69 74 69 6f 6e 2c 20 61 6e 20 49 72 70 20 66 6f 72 6d 61 74 20 6d 75 73 74 20 62 65 20 64 65 dition,.an.Irp.format.must.be.de
4100 66 69 6e 65 64 20 66 6f 72 20 65 78 70 72 65 73 73 69 6e 67 20 63 6f 6d 70 72 65 73 73 65 64 20 fined.for.expressing.compressed.
4120 72 65 61 64 73 20 61 6e 64 20 77 72 69 74 65 73 2e 0d 0d 32 2e 31 20 46 61 73 74 49 6f 44 69 73 reads.and.writes...2.1.FastIoDis
4140 70 61 74 63 68 20 41 50 49 73 0d 0d 54 68 69 73 20 73 65 63 74 69 6f 6e 20 64 65 66 69 6e 65 73 patch.APIs..This.section.defines
4160 20 74 68 65 20 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 20 41 50 49 73 20 66 6f 72 20 63 6f 6d .the.FastIoDispatch.APIs.for.com
4180 70 72 65 73 73 65 64 20 72 65 61 64 73 20 61 6e 64 20 77 72 69 74 65 73 2e 20 20 54 68 65 73 65 pressed.reads.and.writes...These
41a0 20 41 50 49 73 20 61 72 65 20 63 6c 6f 73 65 6c 79 20 6d 6f 64 65 6c 65 64 20 61 66 74 65 72 20 .APIs.are.closely.modeled.after.
41c0 74 68 65 20 43 6f 70 79 20 61 6e 64 20 4d 64 6c 20 72 65 61 64 2f 77 72 69 74 65 20 41 50 49 73 the.Copy.and.Mdl.read/write.APIs
41e0 20 64 65 66 69 6e 65 64 20 66 6f 72 20 6e 6f 72 6d 61 6c 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 .defined.for.normal.uncompressed
4200 20 64 61 74 61 20 61 63 63 65 73 73 2c 20 61 6e 64 20 69 6e 20 66 61 63 74 20 68 61 76 65 20 74 .data.access,.and.in.fact.have.t
4220 68 65 20 73 69 6d 70 6c 65 20 63 68 61 72 61 63 74 65 72 20 93 43 94 20 61 70 70 65 6e 64 65 64 he.simple.character..C..appended
4240 20 74 6f 20 74 68 65 69 72 20 6e 61 6d 65 73 20 74 6f 20 64 65 6e 6f 74 65 20 63 6f 6d 70 72 65 .to.their.names.to.denote.compre
4260 73 73 65 64 20 64 61 74 61 20 61 63 63 65 73 73 2e 20 20 54 68 65 79 20 6d 61 79 20 62 65 20 63 ssed.data.access...They.may.be.c
4280 61 6c 6c 65 64 20 64 69 72 65 63 74 6c 79 20 62 79 20 74 68 65 20 52 64 72 20 61 6e 64 20 53 65 alled.directly.by.the.Rdr.and.Se
42a0 72 76 65 72 20 66 6f 72 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 61 63 63 65 73 73 2c rver.for.compressed.data.access,
42c0 20 61 6e 64 20 74 68 65 20 74 77 6f 20 63 6f 70 79 20 41 50 49 73 20 77 6f 75 6c 64 20 61 6c 73 .and.the.two.copy.APIs.would.als
42e0 6f 20 62 65 20 63 61 6c 6c 65 64 20 62 79 20 74 68 65 20 49 2f 4f 20 73 79 73 74 65 6d 20 66 6f o.be.called.by.the.I/O.system.fo
4300 72 20 46 61 73 74 20 49 2f 4f 20 77 68 65 6e 20 73 75 70 70 6f 72 74 69 6e 67 20 75 73 65 72 20 r.Fast.I/O.when.supporting.user.
4320 63 61 6c 6c 73 20 74 6f 20 72 65 61 64 20 61 6e 64 20 77 72 69 74 65 20 63 6f 6d 70 72 65 73 73 calls.to.read.and.write.compress
4340 65 64 20 64 61 74 61 2e 0d 0d 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 75 62 73 65 63 74 69 ed.data...The.following.subsecti
4360 6f 6e 73 20 70 72 65 73 65 6e 74 20 74 68 65 20 73 70 65 63 69 66 69 63 20 46 61 73 74 49 6f 44 ons.present.the.specific.FastIoD
4380 69 73 70 61 74 63 68 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 41 50 49 73 20 61 6e 64 20 70 72 65 ispatch.compression.APIs.and.pre
43a0 73 65 6e 74 20 74 68 65 69 72 20 73 65 6d 61 6e 74 69 63 73 2e 20 20 54 6f 20 61 76 6f 69 64 20 sent.their.semantics...To.avoid.
43c0 72 65 64 75 64 61 6e 63 79 20 61 6e 64 20 73 61 76 65 20 70 61 70 65 72 2c 20 61 6c 6c 20 70 61 redudancy.and.save.paper,.all.pa
43e0 72 61 6d 65 74 65 72 73 20 61 72 65 20 66 6f 72 6d 61 6c 6c 79 20 64 65 73 63 72 69 62 65 64 20 rameters.are.formally.described.
4400 69 6e 20 61 20 73 75 62 73 65 63 74 69 6f 6e 20 61 74 20 74 68 65 20 65 6e 64 2e 0d 0d 32 2e 31 in.a.subsection.at.the.end...2.1
4420 2e 31 20 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 2d 3e 43 6f 70 79 52 65 61 64 43 6f 6d 70 72 .1.FastIoDispatch->CopyReadCompr
4440 65 73 73 65 64 0d 0d 42 4f 4f 4c 45 41 4e 0d 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 2d 3e 43 essed..BOOLEAN.FastIoDispatch->C
4460 6f 70 79 52 65 61 64 43 6f 6d 70 72 65 73 73 65 64 20 28 0d 20 20 20 20 49 4e 20 50 46 49 4c 45 opyReadCompressed.(.....IN.PFILE
4480 5f 4f 42 4a 45 43 54 20 46 69 6c 65 4f 62 6a 65 63 74 2c 0d 20 20 20 20 49 4e 20 50 4c 41 52 47 _OBJECT.FileObject,.....IN.PLARG
44a0 45 5f 49 4e 54 45 47 45 52 20 46 69 6c 65 4f 66 66 73 65 74 2c 0d 20 20 20 20 49 4e 20 55 4c 4f E_INTEGER.FileOffset,.....IN.ULO
44c0 4e 47 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 4c 65 6e 67 74 68 2c 0d 20 20 20 20 49 4e 20 55 4c NG.UncompressedLength,.....IN.UL
44e0 4f 4e 47 20 4c 6f 63 6b 4b 65 79 2c 0d 20 20 20 20 4f 55 54 20 50 56 4f 49 44 20 42 75 66 66 65 ONG.LockKey,.....OUT.PVOID.Buffe
4500 72 2c 0d 20 20 20 20 4f 55 54 20 50 49 4f 5f 53 54 41 54 55 53 5f 42 4c 4f 43 4b 20 49 6f 53 74 r,.....OUT.PIO_STATUS_BLOCK.IoSt
4520 61 74 75 73 2c 0d 20 20 20 20 4f 55 54 20 50 43 4f 4d 50 52 45 53 53 45 44 5f 44 41 54 41 5f 49 atus,.....OUT.PCOMPRESSED_DATA_I
4540 4e 46 4f 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 2c 0d 20 20 20 20 49 4e 20 55 NFO.CompressedDataInfo,.....IN.U
4560 4c 4f 4e 47 20 43 6f 6d 70 72 65 73 73 65 64 49 6e 66 6f 4c 65 6e 67 74 68 2c 0d 20 20 20 20 49 LONG.CompressedInfoLength,.....I
4580 4e 20 73 74 72 75 63 74 20 5f 44 45 56 49 43 45 5f 4f 42 4a 45 43 54 20 2a 44 65 76 69 63 65 4f N.struct._DEVICE_OBJECT.*DeviceO
45a0 62 6a 65 63 74 0d 20 20 20 20 29 3b 0d 0d 54 68 69 73 20 72 6f 75 74 69 6e 65 20 6d 61 79 20 62 bject.....);..This.routine.may.b
45c0 65 20 75 73 65 64 20 74 6f 20 72 65 61 64 20 61 20 72 61 6e 67 65 20 6f 66 20 63 6f 6d 70 72 65 e.used.to.read.a.range.of.compre
45e0 73 73 65 64 20 64 61 74 61 20 69 6e 74 6f 20 74 68 65 20 63 61 6c 6c 65 72 92 73 20 62 75 66 66 ssed.data.into.the.caller.s.buff
4600 65 72 2e 20 20 54 68 65 20 46 69 6c 65 4f 66 66 73 65 74 20 61 6e 64 20 55 6e 63 6f 6d 70 72 65 er...The.FileOffset.and.Uncompre
4620 73 73 65 64 4c 65 6e 67 74 68 20 6d 75 73 74 20 73 70 65 63 69 66 79 20 61 6e 20 69 6e 74 65 67 ssedLength.must.specify.an.integ
4640 72 61 6c 20 72 61 6e 67 65 20 6f 66 20 63 68 75 6e 6b 73 2e 20 20 54 68 65 20 6f 75 74 70 75 74 ral.range.of.chunks...The.output
4660 20 62 75 66 66 65 72 20 6d 75 73 74 20 62 65 20 6c 61 72 67 65 20 65 6e 6f 75 67 68 20 74 6f 20 .buffer.must.be.large.enough.to.
4680 72 65 63 65 69 76 65 20 61 6c 6c 20 6f 66 20 74 68 65 20 64 61 74 61 20 69 6e 20 61 6e 20 75 6e receive.all.of.the.data.in.an.un
46a0 63 6f 6d 70 72 65 73 73 65 64 20 66 6f 72 6d 2c 20 69 2e 65 2e 2c 20 69 74 20 6d 75 73 74 20 62 compressed.form,.i.e.,.it.must.b
46c0 65 20 61 74 20 6c 65 61 73 74 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 4c 65 6e 67 74 68 2e 20 20 e.at.least.UncompressedLength...
46e0 54 68 65 20 6e 6f 6e 65 6d 70 74 79 20 63 6f 6d 70 72 65 73 73 65 64 20 61 6e 64 20 75 6e 63 6f The.nonempty.compressed.and.unco
4700 6d 70 72 65 73 73 65 64 20 63 68 75 6e 6b 73 20 61 72 65 20 63 6f 70 69 65 64 20 74 6f 20 74 68 mpressed.chunks.are.copied.to.th
4720 65 20 42 75 66 66 65 72 20 61 6e 64 20 70 61 63 6b 65 64 20 74 6f 20 74 68 65 20 62 79 74 65 2e e.Buffer.and.packed.to.the.byte.
4740 0d 0d 49 66 20 46 41 4c 53 45 20 69 73 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 20 63 61 6c 6c ..If.FALSE.is.returned,.the.call
4760 65 72 20 73 68 6f 75 6c 64 20 62 75 69 6c 64 20 61 6e 20 49 72 70 20 61 6e 64 20 70 61 73 73 20 er.should.build.an.Irp.and.pass.
4780 69 74 20 74 6f 20 74 68 65 20 46 69 6c 65 53 79 73 74 65 6d 20 76 69 61 20 49 6f 43 61 6c 6c 44 it.to.the.FileSystem.via.IoCallD
47a0 72 69 76 65 72 2e 20 20 49 66 20 54 52 55 45 20 69 73 20 72 65 74 75 72 6e 65 64 20 62 75 74 20 river...If.TRUE.is.returned.but.
47c0 74 68 65 72 65 20 69 73 20 61 6e 20 65 72 72 6f 72 20 69 6e 20 74 68 65 20 49 2f 4f 20 73 74 61 there.is.an.error.in.the.I/O.sta
47e0 74 75 73 2c 20 74 68 65 6e 20 74 68 65 72 65 20 69 73 20 6e 6f 20 76 61 6c 69 64 20 64 61 74 61 tus,.then.there.is.no.valid.data
4800 20 69 6e 20 74 68 65 20 62 75 66 66 65 72 2c 20 61 6e 64 20 74 68 65 20 63 61 6c 6c 65 72 20 73 .in.the.buffer,.and.the.caller.s
4820 68 6f 75 6c 64 20 73 69 6d 70 6c 79 20 72 65 74 75 72 6e 20 74 68 65 20 65 72 72 6f 72 2e 0d 0d hould.simply.return.the.error...
4840 32 2e 31 2e 32 20 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 2d 3e 43 6f 70 79 57 72 69 74 65 43 2.1.2.FastIoDispatch->CopyWriteC
4860 6f 6d 70 72 65 73 73 65 64 0d 0d 0d 42 4f 4f 4c 45 41 4e 0d 46 61 73 74 49 6f 44 69 73 70 61 74 ompressed...BOOLEAN.FastIoDispat
4880 63 68 2d 3e 43 6f 70 79 57 72 69 74 65 43 6f 6d 70 72 65 73 73 65 64 20 28 0d 20 20 20 20 49 4e ch->CopyWriteCompressed.(.....IN
48a0 20 50 46 49 4c 45 5f 4f 42 4a 45 43 54 20 46 69 6c 65 4f 62 6a 65 63 74 2c 0d 20 20 20 20 49 4e .PFILE_OBJECT.FileObject,.....IN
48c0 20 50 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 46 69 6c 65 4f 66 66 73 65 74 2c 0d 20 20 20 20 .PLARGE_INTEGER.FileOffset,.....
48e0 49 4e 20 55 4c 4f 4e 47 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 4c 65 6e 67 74 68 2c 0d 20 20 20 IN.ULONG.UncompressedLength,....
4900 20 49 4e 20 55 4c 4f 4e 47 20 4c 6f 63 6b 4b 65 79 2c 0d 20 20 20 20 49 4e 20 50 56 4f 49 44 20 .IN.ULONG.LockKey,.....IN.PVOID.
4920 42 75 66 66 65 72 2c 0d 20 20 20 20 4f 55 54 20 50 49 4f 5f 53 54 41 54 55 53 5f 42 4c 4f 43 4b Buffer,.....OUT.PIO_STATUS_BLOCK
4940 20 49 6f 53 74 61 74 75 73 2c 0d 20 20 20 20 49 4e 20 50 43 4f 4d 50 52 45 53 53 45 44 5f 44 41 .IoStatus,.....IN.PCOMPRESSED_DA
4960 54 41 5f 49 4e 46 4f 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 2c 0d 20 20 20 20 TA_INFO.CompressedDataInfo,.....
4980 49 4e 20 55 4c 4f 4e 47 20 43 6f 6d 70 72 65 73 73 65 64 49 6e 66 6f 4c 65 6e 67 74 68 2c 0d 20 IN.ULONG.CompressedInfoLength,..
49a0 20 20 20 49 4e 20 73 74 72 75 63 74 20 5f 44 45 56 49 43 45 5f 4f 42 4a 45 43 54 20 2a 44 65 76 ...IN.struct._DEVICE_OBJECT.*Dev
49c0 69 63 65 4f 62 6a 65 63 74 0d 20 20 20 20 29 3b 0d 0d 54 68 69 73 20 72 6f 75 74 69 6e 65 20 6d iceObject.....);..This.routine.m
49e0 61 79 20 62 65 20 75 73 65 64 20 74 6f 20 77 72 69 74 65 20 61 20 72 61 6e 67 65 20 6f 66 20 63 ay.be.used.to.write.a.range.of.c
4a00 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 63 61 6c 6c 65 72 92 73 ompressed.data.from.the.caller.s
4a20 20 62 75 66 66 65 72 20 69 6e 74 6f 20 74 68 65 20 66 69 6c 65 2e 20 20 54 68 65 20 46 69 6c 65 .buffer.into.the.file...The.File
4a40 4f 66 66 73 65 74 20 61 6e 64 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 4c 65 6e 67 74 68 20 6d 75 Offset.and.UncompressedLength.mu
4a60 73 74 20 73 70 65 63 69 66 79 20 61 6e 20 69 6e 74 65 67 72 61 6c 20 72 61 6e 67 65 20 6f 66 20 st.specify.an.integral.range.of.
4a80 63 68 75 6e 6b 73 20 28 65 78 63 65 70 74 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 chunks.(except.at.the.end.of.the
4aa0 20 66 69 6c 65 29 2e 20 20 54 68 65 20 69 6e 70 75 74 20 62 75 66 66 65 72 20 6d 75 73 74 20 62 .file)...The.input.buffer.must.b
4ac0 65 20 61 74 20 6c 65 61 73 74 20 61 73 20 6c 61 72 67 65 20 61 73 20 72 65 71 75 69 72 65 64 20 e.at.least.as.large.as.required.
4ae0 74 6f 20 73 74 6f 72 65 20 61 6c 6c 20 6f 66 20 74 68 65 20 63 68 75 6e 6b 73 20 61 73 20 64 65 to.store.all.of.the.chunks.as.de
4b00 73 63 72 69 62 65 64 20 69 6e 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 2e 20 20 scribed.in.CompressedDataInfo...
4b20 41 6c 6c 20 6e 6f 6e 65 6d 70 74 79 20 63 6f 6d 70 72 65 73 73 65 64 20 61 6e 64 20 75 6e 63 6f All.nonempty.compressed.and.unco
4b40 6d 70 72 65 73 73 65 64 20 63 68 75 6e 6b 73 20 6d 75 73 74 20 62 65 20 69 6e 20 74 68 65 20 42 mpressed.chunks.must.be.in.the.B
4b60 75 66 66 65 72 20 61 6e 64 20 70 61 63 6b 65 64 20 74 6f 20 74 68 65 20 62 79 74 65 2e 0d 0d 49 uffer.and.packed.to.the.byte...I
4b80 66 20 46 41 4c 53 45 20 69 73 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 20 63 61 6c 6c 65 72 20 f.FALSE.is.returned,.the.caller.
4ba0 73 68 6f 75 6c 64 20 62 75 69 6c 64 20 61 6e 20 49 72 70 20 61 6e 64 20 70 61 73 73 20 69 74 20 should.build.an.Irp.and.pass.it.
4bc0 74 6f 20 74 68 65 20 46 69 6c 65 53 79 73 74 65 6d 20 76 69 61 20 49 6f 43 61 6c 6c 44 72 69 76 to.the.FileSystem.via.IoCallDriv
4be0 65 72 2e 20 20 49 66 20 54 52 55 45 20 69 73 20 72 65 74 75 72 6e 65 64 20 62 75 74 20 74 68 65 er...If.TRUE.is.returned.but.the
4c00 72 65 20 69 73 20 61 6e 20 65 72 72 6f 72 20 69 6e 20 74 68 65 20 49 2f 4f 20 73 74 61 74 75 73 re.is.an.error.in.the.I/O.status
4c20 2c 20 74 68 65 6e 20 74 68 65 20 63 61 6c 6c 65 72 20 73 68 6f 75 6c 64 20 73 69 6d 70 6c 79 20 ,.then.the.caller.should.simply.
4c40 72 65 74 75 72 6e 20 74 68 65 20 65 72 72 6f 72 2e 0d 0d 32 2e 31 2e 33 20 46 61 73 74 49 6f 44 return.the.error...2.1.3.FastIoD
4c60 69 73 70 61 74 63 68 2d 3e 4d 64 6c 52 65 61 64 43 6f 6d 70 72 65 73 73 65 64 0d 0d 42 4f 4f 4c ispatch->MdlReadCompressed..BOOL
4c80 45 41 4e 0d 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 2d 3e 4d 64 6c 52 65 61 64 43 6f 6d 70 72 EAN.FastIoDispatch->MdlReadCompr
4ca0 65 73 73 65 64 20 28 0d 20 20 20 20 49 4e 20 50 46 49 4c 45 5f 4f 42 4a 45 43 54 20 46 69 6c 65 essed.(.....IN.PFILE_OBJECT.File
4cc0 4f 62 6a 65 63 74 2c 0d 20 20 20 20 49 4e 20 50 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 46 69 Object,.....IN.PLARGE_INTEGER.Fi
4ce0 6c 65 4f 66 66 73 65 74 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 55 6e 63 6f 6d 70 72 65 73 leOffset,.....IN.ULONG.Uncompres
4d00 73 65 64 4c 65 6e 67 74 68 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 4c 6f 63 6b 4b 65 79 2c sedLength,.....IN.ULONG.LockKey,
4d20 0d 20 20 20 20 4f 55 54 20 50 4d 44 4c 20 2a 4d 64 6c 43 68 61 69 6e 2c 0d 20 20 20 20 4f 55 54 .....OUT.PMDL.*MdlChain,.....OUT
4d40 20 50 49 4f 5f 53 54 41 54 55 53 5f 42 4c 4f 43 4b 20 49 6f 53 74 61 74 75 73 2c 0d 20 20 20 20 .PIO_STATUS_BLOCK.IoStatus,.....
4d60 4f 55 54 20 50 43 4f 4d 50 52 45 53 53 45 44 5f 44 41 54 41 5f 49 4e 46 4f 20 43 6f 6d 70 72 65 OUT.PCOMPRESSED_DATA_INFO.Compre
4d80 73 73 65 64 44 61 74 61 49 6e 66 6f 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 43 6f 6d 70 72 ssedDataInfo,.....IN.ULONG.Compr
4da0 65 73 73 65 64 49 6e 66 6f 4c 65 6e 67 74 68 2c 0d 20 20 20 20 49 4e 20 73 74 72 75 63 74 20 5f essedInfoLength,.....IN.struct._
4dc0 44 45 56 49 43 45 5f 4f 42 4a 45 43 54 20 2a 44 65 76 69 63 65 4f 62 6a 65 63 74 0d 20 20 20 20 DEVICE_OBJECT.*DeviceObject.....
4de0 29 3b 0d 0d 54 68 69 73 20 72 6f 75 74 69 6e 65 20 6d 61 79 20 62 65 20 75 73 65 64 20 74 6f 20 );..This.routine.may.be.used.to.
4e00 67 65 74 20 61 6e 20 4d 64 6c 20 66 6f 72 20 61 20 72 61 6e 67 65 20 6f 66 20 63 6f 6d 70 72 65 get.an.Mdl.for.a.range.of.compre
4e20 73 73 65 64 20 64 61 74 61 20 69 6e 20 61 20 66 69 6c 65 2e 20 20 54 68 65 20 46 69 6c 65 4f 66 ssed.data.in.a.file...The.FileOf
4e40 66 73 65 74 20 61 6e 64 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 4c 65 6e 67 74 68 20 6d 75 73 74 fset.and.UncompressedLength.must
4e60 20 73 70 65 63 69 66 79 20 61 6e 20 69 6e 74 65 67 72 61 6c 20 72 61 6e 67 65 20 6f 66 20 63 68 .specify.an.integral.range.of.ch
4e80 75 6e 6b 73 2e 20 20 4f 6e 20 72 65 74 75 72 6e 2c 20 74 68 65 20 6e 6f 6e 65 6d 70 74 79 20 63 unks...On.return,.the.nonempty.c
4ea0 6f 6d 70 72 65 73 73 65 64 20 61 6e 64 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 63 68 75 6e 6b ompressed.and.uncompressed.chunk
4ec0 73 20 77 69 6c 6c 20 62 65 20 64 65 73 63 72 69 62 65 64 20 62 79 20 74 68 65 20 4d 64 6c 43 68 s.will.be.described.by.the.MdlCh
4ee0 61 69 6e 20 70 61 63 6b 65 64 20 74 6f 20 74 68 65 20 62 79 74 65 2e 20 20 54 68 65 20 63 61 6c ain.packed.to.the.byte...The.cal
4f00 6c 65 72 20 73 68 6f 75 6c 64 20 6d 61 6b 65 20 6e 6f 20 61 73 73 75 6d 70 74 69 6f 6e 73 20 61 ler.should.make.no.assumptions.a
4f20 62 6f 75 74 20 68 6f 77 20 6d 61 6e 79 20 63 68 75 6e 6b 73 20 61 72 65 20 70 72 65 73 65 6e 74 bout.how.many.chunks.are.present
4f40 20 69 6e 20 65 61 63 68 20 69 6e 64 69 76 69 64 75 61 6c 20 4d 64 6c 20 6f 66 20 74 68 65 20 63 .in.each.individual.Mdl.of.the.c
4f60 68 61 69 6e 2c 20 6f 72 20 68 6f 77 20 63 6f 6d 70 72 65 73 73 65 64 20 61 6e 64 20 75 6e 63 6f hain,.or.how.compressed.and.unco
4f80 6d 70 72 65 73 73 65 64 20 63 68 75 6e 6b 73 20 6d 61 79 20 62 65 20 6d 69 78 65 64 2e 20 20 49 mpressed.chunks.may.be.mixed...I
4fa0 6e 20 67 65 6e 65 72 61 6c 2c 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 6f 6e 20 77 69 n.general,.the.implementation.wi
4fc0 6c 6c 20 74 72 79 20 74 6f 20 75 73 65 20 61 73 20 66 65 77 20 69 74 65 6d 73 20 69 6e 20 74 68 ll.try.to.use.as.few.items.in.th
4fe0 65 20 4d 64 6c 20 63 68 61 69 6e 20 61 73 20 70 6f 73 73 69 62 6c 65 2c 20 62 75 74 20 69 74 20 e.Mdl.chain.as.possible,.but.it.
5000 77 69 6c 6c 20 6f 66 74 65 6e 20 72 65 74 75 72 6e 20 6d 6f 72 65 20 4d 64 6c 20 65 6e 74 72 69 will.often.return.more.Mdl.entri
5020 65 73 20 69 6e 20 74 68 65 20 63 68 61 69 6e 20 74 68 61 6e 20 77 6f 75 6c 64 20 6e 6f 72 6d 61 es.in.the.chain.than.would.norma
5040 6c 6c 79 20 62 65 20 72 65 74 75 72 6e 65 64 20 62 79 20 46 61 73 74 49 6f 44 69 73 70 61 74 63 lly.be.returned.by.FastIoDispatc
5060 68 2d 3e 4d 64 6c 52 65 61 64 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2e 0d 0d 49 66 20 46 41 4c h->MdlRead,.for.example...If.FAL
5080 53 45 20 69 73 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 20 63 61 6c 6c 65 72 20 73 68 6f 75 6c SE.is.returned,.the.caller.shoul
50a0 64 20 62 75 69 6c 64 20 61 6e 20 49 72 70 20 61 6e 64 20 70 61 73 73 20 69 74 20 74 6f 20 74 68 d.build.an.Irp.and.pass.it.to.th
50c0 65 20 46 69 6c 65 53 79 73 74 65 6d 20 76 69 61 20 49 6f 43 61 6c 6c 44 72 69 76 65 72 2e 20 20 e.FileSystem.via.IoCallDriver...
50e0 49 66 20 54 52 55 45 20 69 73 20 72 65 74 75 72 6e 65 64 20 62 75 74 20 74 68 65 72 65 20 69 73 If.TRUE.is.returned.but.there.is
5100 20 61 6e 20 65 72 72 6f 72 20 69 6e 20 74 68 65 20 49 2f 4f 20 73 74 61 74 75 73 2c 20 74 68 65 .an.error.in.the.I/O.status,.the
5120 6e 20 74 68 65 72 65 20 69 73 20 6e 6f 20 4d 64 6c 20 62 65 69 6e 67 20 72 65 74 75 72 6e 65 64 n.there.is.no.Mdl.being.returned
5140 2c 20 61 6e 64 20 74 68 65 20 63 61 6c 6c 65 72 20 73 68 6f 75 6c 64 20 73 69 6d 70 6c 79 20 72 ,.and.the.caller.should.simply.r
5160 65 74 75 72 6e 20 74 68 65 20 65 72 72 6f 72 2e 0d 0d 32 2e 31 2e 34 20 46 61 73 74 49 6f 44 69 eturn.the.error...2.1.4.FastIoDi
5180 73 70 61 74 63 68 2d 3e 4d 64 6c 52 65 61 64 43 6f 6d 70 6c 65 74 65 43 6f 6d 70 72 65 73 73 65 spatch->MdlReadCompleteCompresse
51a0 64 0d 0d 56 4f 49 44 0d 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 2d 3e 4d 64 6c 52 65 61 64 43 d..VOID.FastIoDispatch->MdlReadC
51c0 6f 6d 70 6c 65 74 65 43 6f 6d 70 72 65 73 73 65 64 20 28 0d 20 20 20 20 49 4e 20 50 46 49 4c 45 ompleteCompressed.(.....IN.PFILE
51e0 5f 4f 42 4a 45 43 54 20 46 69 6c 65 4f 62 6a 65 63 74 2c 0d 20 20 20 20 49 4e 20 50 4d 44 4c 20 _OBJECT.FileObject,.....IN.PMDL.
5200 4d 64 6c 43 68 61 69 6e 2c 0d 20 20 20 20 49 4e 20 73 74 72 75 63 74 20 5f 44 45 56 49 43 45 5f MdlChain,.....IN.struct._DEVICE_
5220 4f 42 4a 45 43 54 20 2a 44 65 76 69 63 65 4f 62 6a 65 63 74 0d 20 20 20 20 29 3b 0d 0d 54 68 69 OBJECT.*DeviceObject.....);..Thi
5240 73 20 72 6f 75 74 69 6e 65 20 73 68 6f 75 6c 64 20 62 65 20 63 61 6c 6c 65 64 20 77 68 65 6e 20 s.routine.should.be.called.when.
5260 74 68 65 20 63 61 6c 6c 65 72 20 68 61 73 20 63 6f 6d 70 6c 65 74 65 64 20 69 74 73 20 75 73 65 the.caller.has.completed.its.use
5280 20 6f 66 20 61 6e 20 4d 64 6c 43 68 61 69 6e 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 61 20 .of.an.MdlChain.returned.from.a.
52a0 73 75 63 63 65 73 73 66 75 6c 20 63 61 6c 6c 20 74 6f 20 46 61 73 74 49 6f 44 69 73 70 61 74 63 successful.call.to.FastIoDispatc
52c0 68 2d 3e 4d 64 6c 52 65 61 64 43 6f 6d 70 72 65 73 73 65 64 2c 20 74 6f 20 66 72 65 65 20 72 65 h->MdlReadCompressed,.to.free.re
52e0 73 6f 75 72 63 65 73 20 61 6c 6c 6f 63 61 74 65 64 20 69 6e 20 74 68 61 74 20 63 61 6c 6c 2e 0d sources.allocated.in.that.call..
5300 0d 32 2e 31 2e 35 20 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 2d 3e 50 72 65 70 61 72 65 4d 64 .2.1.5.FastIoDispatch->PrepareMd
5320 6c 57 72 69 74 65 43 6f 6d 70 72 65 73 73 65 64 0d 0d 42 4f 4f 4c 45 41 4e 0d 46 61 73 74 49 6f lWriteCompressed..BOOLEAN.FastIo
5340 44 69 73 70 61 74 63 68 2d 3e 50 72 65 70 61 72 65 4d 64 6c 57 72 69 74 65 43 6f 6d 70 72 65 73 Dispatch->PrepareMdlWriteCompres
5360 73 65 64 20 28 0d 20 20 20 20 49 4e 20 50 46 49 4c 45 5f 4f 42 4a 45 43 54 20 46 69 6c 65 4f 62 sed.(.....IN.PFILE_OBJECT.FileOb
5380 6a 65 63 74 2c 0d 20 20 20 20 49 4e 20 50 4c 41 52 47 45 5f 49 4e 54 45 47 45 52 20 46 69 6c 65 ject,.....IN.PLARGE_INTEGER.File
53a0 4f 66 66 73 65 74 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 55 6e 63 6f 6d 70 72 65 73 73 65 Offset,.....IN.ULONG.Uncompresse
53c0 64 4c 65 6e 67 74 68 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 4c 6f 63 6b 4b 65 79 2c 0d 20 dLength,.....IN.ULONG.LockKey,..
53e0 20 20 20 4f 55 54 20 50 4d 44 4c 20 2a 4d 64 6c 43 68 61 69 6e 2c 0d 20 20 20 20 4f 55 54 20 50 ...OUT.PMDL.*MdlChain,.....OUT.P
5400 49 4f 5f 53 54 41 54 55 53 5f 42 4c 4f 43 4b 20 49 6f 53 74 61 74 75 73 2c 0d 20 20 20 20 49 4e IO_STATUS_BLOCK.IoStatus,.....IN
5420 20 50 43 4f 4d 50 52 45 53 53 45 44 5f 44 41 54 41 5f 49 4e 46 4f 20 43 6f 6d 70 72 65 73 73 65 .PCOMPRESSED_DATA_INFO.Compresse
5440 64 44 61 74 61 49 6e 66 6f 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 43 6f 6d 70 72 65 73 73 dDataInfo,.....IN.ULONG.Compress
5460 65 64 49 6e 66 6f 4c 65 6e 67 74 68 2c 0d 20 20 20 20 49 4e 20 73 74 72 75 63 74 20 5f 44 45 56 edInfoLength,.....IN.struct._DEV
5480 49 43 45 5f 4f 42 4a 45 43 54 20 2a 44 65 76 69 63 65 4f 62 6a 65 63 74 0d 20 20 20 20 29 3b 0d ICE_OBJECT.*DeviceObject.....);.
54a0 0d 54 68 69 73 20 72 6f 75 74 69 6e 65 20 6d 61 79 20 62 65 20 75 73 65 64 20 74 6f 20 70 72 65 .This.routine.may.be.used.to.pre
54c0 70 61 72 65 20 61 6e 20 4d 64 6c 20 66 6f 72 20 77 72 69 74 69 6e 67 20 61 20 72 61 6e 67 65 20 pare.an.Mdl.for.writing.a.range.
54e0 6f 66 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 69 6e 20 61 20 66 69 6c 65 2e 20 20 54 of.compressed.data.in.a.file...T
5500 68 65 20 46 69 6c 65 4f 66 66 73 65 74 20 61 6e 64 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 4c 65 he.FileOffset.and.UncompressedLe
5520 6e 67 74 68 20 6d 75 73 74 20 73 70 65 63 69 66 79 20 61 6e 20 69 6e 74 65 67 72 61 6c 20 72 61 ngth.must.specify.an.integral.ra
5540 6e 67 65 20 6f 66 20 63 68 75 6e 6b 73 20 28 65 78 63 65 70 74 20 61 74 20 74 68 65 20 65 6e 64 nge.of.chunks.(except.at.the.end
5560 20 6f 66 20 66 69 6c 65 29 2e 20 20 4f 6e 20 72 65 74 75 72 6e 2c 20 74 68 65 20 6e 6f 6e 65 6d .of.file)...On.return,.the.nonem
5580 70 74 79 20 63 6f 6d 70 72 65 73 73 65 64 20 61 6e 64 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 pty.compressed.and.uncompressed.
55a0 63 68 75 6e 6b 73 20 77 69 6c 6c 20 62 65 20 64 65 73 63 72 69 62 65 64 20 62 79 20 74 68 65 20 chunks.will.be.described.by.the.
55c0 4d 64 6c 43 68 61 69 6e 20 70 61 63 6b 65 64 20 74 6f 20 74 68 65 20 62 79 74 65 2e 20 20 54 68 MdlChain.packed.to.the.byte...Th
55e0 65 20 63 61 6c 6c 65 72 20 73 68 6f 75 6c 64 20 6d 61 6b 65 20 6e 6f 20 61 73 73 75 6d 70 74 69 e.caller.should.make.no.assumpti
5600 6f 6e 73 20 61 62 6f 75 74 20 68 6f 77 20 6d 61 6e 79 20 63 68 75 6e 6b 73 20 61 72 65 20 70 72 ons.about.how.many.chunks.are.pr
5620 65 73 65 6e 74 20 69 6e 20 65 61 63 68 20 69 6e 64 69 76 69 64 75 61 6c 20 4d 64 6c 20 6f 66 20 esent.in.each.individual.Mdl.of.
5640 74 68 65 20 63 68 61 69 6e 2c 20 6f 72 20 68 6f 77 20 63 6f 6d 70 72 65 73 73 65 64 20 61 6e 64 the.chain,.or.how.compressed.and
5660 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 63 68 75 6e 6b 73 20 6d 61 79 20 62 65 20 6d 69 78 65 .uncompressed.chunks.may.be.mixe
5680 64 2e 20 20 49 6e 20 67 65 6e 65 72 61 6c 2c 20 74 68 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 d...In.general,.the.implementati
56a0 6f 6e 20 77 69 6c 6c 20 74 72 79 20 74 6f 20 75 73 65 20 61 73 20 66 65 77 20 69 74 65 6d 73 20 on.will.try.to.use.as.few.items.
56c0 69 6e 20 74 68 65 20 4d 64 6c 20 63 68 61 69 6e 20 61 73 20 70 6f 73 73 69 62 6c 65 2c 20 62 75 in.the.Mdl.chain.as.possible,.bu
56e0 74 20 69 74 20 77 69 6c 6c 20 6f 66 74 65 6e 20 72 65 74 75 72 6e 20 6d 6f 72 65 20 4d 64 6c 20 t.it.will.often.return.more.Mdl.
5700 65 6e 74 72 69 65 73 20 69 6e 20 74 68 65 20 63 68 61 69 6e 20 74 68 61 6e 20 77 6f 75 6c 64 20 entries.in.the.chain.than.would.
5720 6e 6f 72 6d 61 6c 6c 79 20 62 65 20 72 65 74 75 72 6e 65 64 20 62 79 20 46 61 73 74 49 6f 44 69 normally.be.returned.by.FastIoDi
5740 73 70 61 74 63 68 2d 3e 50 72 65 70 61 72 65 4d 64 6c 57 72 69 74 65 2c 20 66 6f 72 20 65 78 61 spatch->PrepareMdlWrite,.for.exa
5760 6d 70 6c 65 2e 0d 0d 49 66 20 46 41 4c 53 45 20 69 73 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 mple...If.FALSE.is.returned,.the
5780 20 63 61 6c 6c 65 72 20 73 68 6f 75 6c 64 20 62 75 69 6c 64 20 61 6e 20 49 72 70 20 61 6e 64 20 .caller.should.build.an.Irp.and.
57a0 70 61 73 73 20 69 74 20 74 6f 20 74 68 65 20 46 69 6c 65 53 79 73 74 65 6d 20 76 69 61 20 49 6f pass.it.to.the.FileSystem.via.Io
57c0 43 61 6c 6c 44 72 69 76 65 72 2e 20 20 49 66 20 54 52 55 45 20 69 73 20 72 65 74 75 72 6e 65 64 CallDriver...If.TRUE.is.returned
57e0 20 62 75 74 20 74 68 65 72 65 20 69 73 20 61 6e 20 65 72 72 6f 72 20 69 6e 20 74 68 65 20 49 2f .but.there.is.an.error.in.the.I/
5800 4f 20 73 74 61 74 75 73 2c 20 74 68 65 6e 20 74 68 65 20 63 61 6c 6c 65 72 20 73 68 6f 75 6c 64 O.status,.then.the.caller.should
5820 20 73 69 6d 70 6c 79 20 72 65 74 75 72 6e 20 74 68 65 20 65 72 72 6f 72 2e 0d 0d 0d 42 4f 4f 4c .simply.return.the.error....BOOL
5840 45 41 4e 0d 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 2d 3e 4d 64 6c 57 72 69 74 65 43 6f 6d 70 EAN.FastIoDispatch->MdlWriteComp
5860 6c 65 74 65 43 6f 6d 70 72 65 73 73 65 64 20 28 0d 20 20 20 20 49 4e 20 50 46 49 4c 45 5f 4f 42 leteCompressed.(.....IN.PFILE_OB
5880 4a 45 43 54 20 46 69 6c 65 4f 62 6a 65 63 74 2c 0d 20 20 20 20 49 4e 20 50 4c 41 52 47 45 5f 49 JECT.FileObject,.....IN.PLARGE_I
58a0 4e 54 45 47 45 52 20 46 69 6c 65 4f 66 66 73 65 74 2c 0d 20 20 20 20 49 4e 20 50 4d 44 4c 20 4d NTEGER.FileOffset,.....IN.PMDL.M
58c0 64 6c 43 68 61 69 6e 2c 0d 20 20 20 20 4f 55 54 20 50 49 4f 5f 53 54 41 54 55 53 5f 42 4c 4f 43 dlChain,.....OUT.PIO_STATUS_BLOC
58e0 4b 20 49 6f 53 74 61 74 75 73 2c 0d 20 20 20 20 49 4e 20 73 74 72 75 63 74 20 5f 44 45 56 49 43 K.IoStatus,.....IN.struct._DEVIC
5900 45 5f 4f 42 4a 45 43 54 20 2a 44 65 76 69 63 65 4f 62 6a 65 63 74 0d 20 20 20 20 29 3b 0d 0d 54 E_OBJECT.*DeviceObject.....);..T
5920 68 69 73 20 72 6f 75 74 69 6e 65 20 73 68 6f 75 6c 64 20 62 65 20 63 61 6c 6c 65 64 20 77 68 65 his.routine.should.be.called.whe
5940 6e 20 74 68 65 20 63 61 6c 6c 65 72 20 68 61 73 20 63 6f 6d 70 6c 65 74 65 64 20 69 74 73 20 75 n.the.caller.has.completed.its.u
5960 73 65 20 6f 66 20 61 6e 20 4d 64 6c 43 68 61 69 6e 20 72 65 74 75 72 6e 65 64 20 66 72 6f 6d 20 se.of.an.MdlChain.returned.from.
5980 61 20 73 75 63 63 65 73 73 66 75 6c 20 63 61 6c 6c 20 74 6f 20 46 61 73 74 49 6f 44 69 73 70 61 a.successful.call.to.FastIoDispa
59a0 74 63 68 2d 3e 50 72 65 70 61 72 65 4d 64 6c 57 72 69 74 65 43 6f 6d 70 72 65 73 73 65 64 2c 20 tch->PrepareMdlWriteCompressed,.
59c0 74 6f 20 66 72 65 65 20 72 65 73 6f 75 72 63 65 73 20 61 6c 6c 6f 63 61 74 65 64 20 69 6e 20 74 to.free.resources.allocated.in.t
59e0 68 61 74 20 63 61 6c 6c 2e 20 20 54 68 69 73 20 63 61 6c 6c 20 77 69 6c 6c 20 61 6c 73 6f 20 69 hat.call...This.call.will.also.i
5a00 6e 73 75 72 65 20 74 68 61 74 20 74 68 65 20 64 61 74 61 20 65 76 65 6e 74 75 61 6c 6c 79 20 67 nsure.that.the.data.eventually.g
5a20 65 74 73 20 77 72 69 74 74 65 6e 20 62 79 20 74 68 65 20 4c 61 7a 79 20 57 72 69 74 65 72 2c 20 ets.written.by.the.Lazy.Writer,.
5a40 6f 72 20 77 72 69 74 74 65 6e 20 69 6d 6d 65 64 69 61 74 65 6c 79 20 69 6e 20 74 68 65 20 63 61 or.written.immediately.in.the.ca
5a60 73 65 20 6f 66 20 61 20 77 72 69 74 65 2d 74 68 72 6f 75 67 68 20 46 69 6c 65 4f 62 6a 65 63 74 se.of.a.write-through.FileObject
5a80 2e 20 20 46 6f 72 20 77 72 69 74 65 2d 74 68 72 6f 75 67 68 20 46 69 6c 65 4f 62 6a 65 63 74 73 ...For.write-through.FileObjects
5aa0 2c 20 74 68 65 20 66 69 6e 61 6c 20 77 72 69 74 65 20 73 74 61 74 75 73 20 77 69 6c 6c 20 62 65 ,.the.final.write.status.will.be
5ac0 20 70 72 65 73 65 6e 74 20 69 6e 20 49 6f 53 74 61 74 75 73 2e 0d 0d 49 66 20 46 41 4c 53 45 20 .present.in.IoStatus...If.FALSE.
5ae0 69 73 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 20 63 61 6c 6c 65 72 20 73 68 6f 75 6c 64 20 62 is.returned,.the.caller.should.b
5b00 75 69 6c 64 20 61 6e 20 49 72 70 20 61 6e 64 20 70 61 73 73 20 69 74 20 74 6f 20 74 68 65 20 46 uild.an.Irp.and.pass.it.to.the.F
5b20 69 6c 65 53 79 73 74 65 6d 20 76 69 61 20 49 6f 43 61 6c 6c 44 72 69 76 65 72 2e 20 20 49 66 20 ileSystem.via.IoCallDriver...If.
5b40 54 52 55 45 20 69 73 20 72 65 74 75 72 6e 65 64 20 62 75 74 20 74 68 65 72 65 20 69 73 20 61 6e TRUE.is.returned.but.there.is.an
5b60 20 65 72 72 6f 72 20 69 6e 20 74 68 65 20 49 2f 4f 20 73 74 61 74 75 73 2c 20 74 68 65 6e 20 74 .error.in.the.I/O.status,.then.t
5b80 68 65 20 63 61 6c 6c 65 72 20 73 68 6f 75 6c 64 20 73 69 6d 70 6c 79 20 72 65 74 75 72 6e 20 74 he.caller.should.simply.return.t
5ba0 68 65 20 65 72 72 6f 72 2e 0d 0d 32 2e 31 2e 37 20 50 61 72 61 6d 65 74 65 72 20 44 65 73 63 72 he.error...2.1.7.Parameter.Descr
5bc0 69 70 74 69 6f 6e 73 20 66 6f 72 20 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 20 43 61 6c 6c 73 iptions.for.FastIoDispatch.Calls
5be0 0d 0d 54 42 53 0d 0d 32 2e 32 20 49 52 50 20 46 6f 72 6d 61 74 20 66 6f 72 20 43 6f 6d 70 72 65 ..TBS..2.2.IRP.Format.for.Compre
5c00 73 73 65 64 20 49 2f 4f 20 43 61 6c 6c 73 0d 0d 53 74 61 6e 64 61 72 64 20 72 65 61 64 20 61 6e ssed.I/O.Calls..Standard.read.an
5c20 64 20 77 72 69 74 65 20 49 72 70 73 20 77 69 6c 6c 20 62 65 20 75 73 65 64 20 66 6f 72 20 73 75 d.write.Irps.will.be.used.for.su
5c40 70 70 6f 72 74 69 6e 67 20 74 68 65 20 72 65 61 64 20 61 6e 64 20 77 72 69 74 65 20 63 6f 6d 70 pporting.the.read.and.write.comp
5c60 72 65 73 73 65 64 20 64 61 74 61 20 63 61 6c 6c 73 2c 20 77 69 74 68 20 61 20 66 65 77 20 61 64 ressed.data.calls,.with.a.few.ad
5c80 64 69 74 69 6f 6e 73 2e 20 20 49 6e 20 73 68 6f 72 74 2c 20 67 65 6e 65 72 61 74 69 6e 67 20 61 ditions...In.short,.generating.a
5ca0 6e 20 49 72 70 20 66 6f 72 20 65 69 74 68 65 72 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 43 6f n.Irp.for.either.a.compressed.Co
5cc0 70 79 20 6f 72 20 4d 64 6c 20 63 61 6c 6c 20 77 69 6c 6c 20 62 65 20 65 78 61 63 74 6c 79 20 6c py.or.Mdl.call.will.be.exactly.l
5ce0 69 6b 65 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 75 6e 63 6f 6d 70 72 65 73 73 ike.the.corresponding.uncompress
5d00 65 64 20 72 65 61 64 20 6f 72 20 77 72 69 74 65 20 49 72 70 73 2c 20 77 69 74 68 20 74 77 6f 20 ed.read.or.write.Irps,.with.two.
5d20 65 78 63 65 70 74 69 6f 6e 73 3a 0d 0d 54 68 65 20 49 52 50 5f 4d 4e 5f 43 4f 4d 50 52 45 53 53 exceptions:..The.IRP_MN_COMPRESS
5d40 45 44 20 73 75 62 66 75 6e 63 74 69 6f 6e 20 62 69 74 20 6d 75 73 74 20 62 65 20 73 65 74 0d 43 ED.subfunction.bit.must.be.set.C
5d60 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 20 70 6f 69 6e 74 65 72 20 6d 75 73 74 20 62 ompressedDataInfo.pointer.must.b
5d80 65 20 70 61 73 73 65 64 20 69 6e 20 76 69 61 20 49 72 70 2d 3e 54 61 69 6c 2e 4f 76 65 72 6c 61 e.passed.in.via.Irp->Tail.Overla
5da0 79 2e 41 75 78 69 6c 69 61 72 79 42 75 66 66 65 72 0d 0d 54 68 65 20 41 75 78 69 6c 69 61 72 79 y.AuxiliaryBuffer..The.Auxiliary
5dc0 42 75 66 66 65 72 20 6d 75 73 74 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 Buffer.must.point.to.the.followi
5de0 6e 67 20 73 74 72 75 63 74 75 72 65 2c 20 77 68 69 63 68 20 69 6e 20 74 75 72 6e 20 64 65 73 63 ng.structure,.which.in.turn.desc
5e00 72 69 62 65 73 20 74 68 65 20 43 6f 6d 70 72 65 73 73 65 64 20 44 61 74 61 20 49 6e 66 6f 2e 0d ribes.the.Compressed.Data.Info..
5e20 0d 2f 2f 0d 2f 2f 20 20 49 6e 20 49 72 70 73 2c 20 63 6f 6d 70 72 65 73 73 65 64 20 72 65 61 64 .//.//..In.Irps,.compressed.read
5e40 73 20 61 6e 64 20 77 72 69 74 65 73 20 61 72 65 20 20 64 65 73 69 67 6e 61 74 65 64 20 62 79 20 s.and.writes.are..designated.by.
5e60 74 68 65 0d 2f 2f 20 20 73 75 62 66 75 6e 63 74 69 6f 6e 20 49 52 50 5f 4d 4e 5f 43 4f 4d 50 52 the.//..subfunction.IRP_MN_COMPR
5e80 45 53 53 45 44 20 6d 75 73 74 20 62 65 20 73 65 74 20 61 6e 64 20 74 68 65 20 43 6f 6d 70 72 65 ESSED.must.be.set.and.the.Compre
5ea0 73 73 65 64 0d 2f 2f 20 20 44 61 74 61 20 49 6e 66 6f 20 62 75 66 66 65 72 20 6d 75 73 74 20 62 ssed.//..Data.Info.buffer.must.b
5ec0 65 20 64 65 73 63 72 69 62 65 64 20 62 79 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 74 72 e.described.by.the.following.str
5ee0 75 63 74 75 72 65 0d 2f 2f 20 20 70 6f 69 6e 74 65 64 20 74 6f 20 62 79 20 49 72 70 2d 3e 54 61 ucture.//..pointed.to.by.Irp->Ta
5f00 69 6c 2e 4f 76 65 72 6c 61 79 2e 41 75 78 69 6c 69 61 72 79 42 75 66 66 65 72 2e 0d 2f 2f 0d 0d il.Overlay.AuxiliaryBuffer..//..
5f20 74 79 70 65 64 65 66 20 73 74 72 75 63 74 20 5f 46 53 52 54 4c 5f 41 55 58 49 4c 49 41 52 59 5f typedef.struct._FSRTL_AUXILIARY_
5f40 42 55 46 46 45 52 20 7b 0d 0d 20 20 20 20 2f 2f 0d 20 20 20 20 2f 2f 20 20 42 75 66 66 65 72 20 BUFFER.{......//.....//..Buffer.
5f60 64 65 73 63 72 69 70 74 69 6f 6e 20 77 69 74 68 20 6c 65 6e 67 74 68 2e 0d 20 20 20 20 2f 2f 0d description.with.length......//.
5f80 0d 20 20 20 20 50 56 4f 49 44 20 42 75 66 66 65 72 3b 0d 20 20 20 20 55 4c 4f 4e 47 20 4c 65 6e .....PVOID.Buffer;.....ULONG.Len
5fa0 67 74 68 3b 0d 0d 20 20 20 20 2f 2f 0d 20 20 20 20 2f 2f 20 20 46 6c 61 67 73 0d 20 20 20 20 2f gth;......//.....//..Flags...../
5fc0 2f 0d 0d 20 20 20 20 55 4c 4f 4e 47 20 46 6c 61 67 73 3b 0d 0d 20 20 20 20 2f 2f 20 20 0d 20 20 /......ULONG.Flags;......//.....
5fe0 20 20 2f 2f 20 20 4d 64 6c 20 70 6f 69 6e 74 65 72 20 69 6e 20 63 61 73 65 20 66 69 6c 65 20 73 ..//..Mdl.pointer.in.case.file.s
6000 79 73 74 65 6d 20 6e 65 65 64 73 20 74 6f 20 6c 6f 63 6b 20 74 68 65 20 62 75 66 66 65 72 0d 20 ystem.needs.to.lock.the.buffer..
6020 20 20 20 2f 2f 20 20 69 6e 20 6d 65 6d 6f 72 79 2e 0d 20 20 20 20 2f 2f 0d 0d 20 20 20 20 50 4d ...//..in.memory......//......PM
6040 44 4c 20 4d 64 6c 3b 0d 0d 7d 20 46 53 52 54 4c 5f 41 55 58 49 4c 49 41 52 59 5f 42 55 46 46 45 DL.Mdl;..}.FSRTL_AUXILIARY_BUFFE
6060 52 3b 0d 74 79 70 65 64 65 66 20 46 53 52 54 4c 5f 41 55 58 49 4c 49 41 52 59 5f 42 55 46 46 45 R;.typedef.FSRTL_AUXILIARY_BUFFE
6080 52 20 2a 50 41 55 58 49 4c 49 41 52 59 5f 42 55 46 46 45 52 3b 0d 0d 2f 2f 0d 2f 2f 20 20 49 66 R.*PAUXILIARY_BUFFER;..//.//..If
60a0 20 74 68 69 73 20 66 6c 61 67 20 69 73 20 73 65 74 2c 20 74 68 65 20 61 75 78 69 6c 6c 61 72 79 .this.flag.is.set,.the.auxillary
60c0 20 62 75 66 66 65 72 20 73 74 72 75 63 74 75 72 65 20 69 73 0d 2f 2f 20 20 64 65 61 6c 6c 6f 63 .buffer.structure.is.//..dealloc
60e0 61 74 65 64 20 6f 6e 20 49 72 70 20 63 6f 6d 70 6c 65 74 69 6f 6e 2e 20 20 54 68 65 20 63 61 6c ated.on.Irp.completion...The.cal
6100 6c 65 72 20 68 61 73 20 74 68 65 0d 2f 2f 20 20 6f 70 74 69 6f 6e 20 69 6e 20 74 68 69 73 20 63 ler.has.the.//..option.in.this.c
6120 61 73 65 20 6f 66 20 61 70 70 65 6e 64 69 6e 67 20 74 68 69 73 20 73 74 72 75 63 74 75 72 65 20 ase.of.appending.this.structure.
6140 74 6f 20 74 68 65 0d 2f 2f 20 20 73 74 72 75 63 74 75 72 65 20 62 65 69 6e 67 20 64 65 73 63 72 to.the.//..structure.being.descr
6160 69 62 65 64 2c 20 63 61 75 73 69 6e 67 20 69 74 20 61 6c 6c 20 74 6f 20 62 65 0d 2f 2f 20 20 64 ibed,.causing.it.all.to.be.//..d
6180 65 61 6c 6c 6f 63 61 74 65 64 20 61 74 20 6f 6e 63 65 2e 20 20 49 66 20 74 68 69 73 20 66 6c 61 eallocated.at.once...If.this.fla
61a0 67 20 69 73 20 63 6c 65 61 72 2c 20 6e 6f 20 64 65 61 6c 6c 6f 63 61 74 65 0d 2f 2f 20 20 6f 63 g.is.clear,.no.deallocate.//..oc
61c0 63 75 72 73 2e 0d 2f 2f 0d 0d 23 64 65 66 69 6e 65 20 46 53 52 54 4c 5f 41 55 58 49 4c 49 41 52 curs..//..#define.FSRTL_AUXILIAR
61e0 59 5f 46 4c 41 47 5f 44 45 41 4c 4c 4f 43 41 54 45 20 30 78 30 30 30 30 30 30 30 31 0d 0d 4f 6e Y_FLAG_DEALLOCATE.0x00000001..On
6200 20 72 65 61 64 73 2c 20 74 68 65 20 65 6e 74 69 72 65 20 43 6f 6d 70 72 65 73 73 65 64 20 44 61 .reads,.the.entire.Compressed.Da
6220 74 61 20 49 6e 66 6f 20 69 73 20 61 6e 20 6f 75 74 70 75 74 2c 20 73 6f 20 74 68 65 20 63 61 6c ta.Info.is.an.output,.so.the.cal
6240 6c 65 72 20 73 68 6f 75 6c 64 20 6e 6f 74 20 63 61 75 73 65 20 69 74 20 74 6f 20 67 65 74 20 64 ler.should.not.cause.it.to.get.d
6260 65 61 6c 6c 6f 63 61 74 65 64 21 20 49 74 20 63 6f 75 6c 64 20 62 65 20 6f 6e 20 74 68 65 20 73 eallocated!.It.could.be.on.the.s
6280 74 61 63 6b 20 6f 72 20 69 6e 20 70 6f 6f 6c 20 6d 61 6e 61 67 65 64 20 62 79 20 74 68 65 20 63 tack.or.in.pool.managed.by.the.c
62a0 61 6c 6c 65 72 2e 20 20 4f 6e 20 77 72 69 74 65 73 2c 20 74 68 65 20 65 6e 74 69 72 65 20 73 74 aller...On.writes,.the.entire.st
62c0 72 75 63 74 75 72 65 20 69 73 20 61 6e 20 6f 75 74 70 75 74 2c 20 73 6f 20 74 68 65 20 63 61 6c ructure.is.an.output,.so.the.cal
62e0 6c 65 72 20 68 61 73 20 74 68 65 20 6f 70 74 69 6f 6e 20 6f 66 20 75 73 69 6e 67 20 74 68 65 20 ler.has.the.option.of.using.the.
6300 73 74 61 63 6b 2c 20 6d 61 6e 61 67 69 6e 67 20 69 74 73 20 6f 77 6e 20 61 6c 6c 6f 63 61 74 69 stack,.managing.its.own.allocati
6320 6f 6e 2c 20 6f 72 20 61 6c 6c 6f 77 69 6e 67 20 74 68 65 20 61 75 78 69 6c 69 61 72 79 20 62 75 on,.or.allowing.the.auxiliary.bu
6340 66 66 65 72 20 61 64 64 72 65 73 73 20 74 6f 20 62 65 20 64 65 61 6c 6c 6f 63 61 74 65 64 20 6f ffer.address.to.be.deallocated.o
6360 6e 20 49 2f 4f 20 63 6f 6d 70 6c 65 74 69 6f 6e 2e 20 20 28 54 68 65 20 41 75 78 69 6c 69 61 72 n.I/O.completion...(The.Auxiliar
6380 79 42 75 66 66 65 72 20 66 69 65 6c 64 20 69 6e 20 74 68 65 20 49 72 70 20 69 73 20 61 6c 77 61 yBuffer.field.in.the.Irp.is.alwa
63a0 79 73 20 64 65 61 6c 6c 6f 63 61 74 65 64 20 6f 6e 20 49 72 70 20 63 6f 6d 70 6c 65 74 69 6f 6e ys.deallocated.on.Irp.completion
63c0 2c 20 73 6f 20 74 68 65 20 66 69 6c 65 20 73 79 73 74 65 6d 20 69 73 20 64 6f 69 6e 67 20 65 78 ,.so.the.file.system.is.doing.ex
63e0 74 72 61 20 77 6f 72 6b 20 77 68 65 6e 20 74 68 65 20 66 6c 61 67 20 69 73 20 63 6c 65 61 72 20 tra.work.when.the.flag.is.clear.
6400 74 6f 20 70 72 65 76 65 6e 74 20 74 68 69 73 2e 29 0d 0d 4e 6f 74 65 20 66 6f 72 20 74 68 65 20 to.prevent.this.)..Note.for.the.
6420 4d 64 6c 20 63 61 6c 6c 73 2c 20 74 68 65 20 4d 64 6c 43 68 61 69 6e 20 61 64 64 72 65 73 73 20 Mdl.calls,.the.MdlChain.address.
6440 77 69 6c 6c 20 62 65 20 72 65 74 75 72 6e 65 64 20 76 69 61 20 49 72 70 2d 3e 4d 64 6c 41 64 64 will.be.returned.via.Irp->MdlAdd
6460 72 65 73 73 2c 20 61 6e 64 20 6d 75 73 74 20 62 65 20 63 61 70 74 75 72 65 64 20 69 6e 20 61 20 ress,.and.must.be.captured.in.a.
6480 63 6f 6d 70 6c 65 74 69 6f 6e 20 72 6f 75 74 69 6e 65 20 61 73 20 69 73 20 64 6f 6e 65 20 74 6f completion.routine.as.is.done.to
64a0 64 61 79 20 66 6f 72 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 63 61 6c 6c 73 2e 0d day.for.the.uncompressed.calls..
64c0 0d 32 2e 33 20 52 74 6c 20 43 6f 6d 70 72 65 73 73 69 6f 6e 20 52 6f 75 74 69 6e 65 73 0d 0d 54 .2.3.Rtl.Compression.Routines..T
64e0 68 65 20 52 74 6c 20 72 6f 75 74 69 6e 65 73 20 66 6f 72 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 he.Rtl.routines.for.compressing.
6500 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 64 61 74 61 20 61 72 65 20 64 65 66 69 6e and.decompressing.data.are.defin
6520 65 64 20 69 6e 20 5c 6e 74 5c 70 75 62 6c 69 63 5c 73 64 6b 5c 69 6e 63 5c 6e 74 72 74 6c 2e 68 ed.in.\nt\public\sdk\inc\ntrtl.h
6540 2e 20 20 54 68 65 20 73 6f 75 72 63 65 73 20 66 6f 72 20 4c 5a 4e 54 31 20 61 72 65 20 69 6e 20 ...The.sources.for.LZNT1.are.in.
6560 5c 6e 74 5c 70 72 69 76 61 74 65 5c 6e 74 6f 73 5c 72 74 6c 5c 6c 7a 6e 74 31 2e 63 2e 0d 0d 54 \nt\private\ntos\rtl\lznt1.c...T
6580 68 65 73 65 20 72 6f 75 74 69 6e 65 73 20 61 72 65 20 64 65 73 69 67 6e 65 64 20 74 6f 20 62 65 hese.routines.are.designed.to.be
65a0 20 67 65 6e 65 72 61 6c 20 61 6e 64 20 73 75 70 70 6f 72 74 20 6d 75 6c 74 69 70 6c 65 20 63 6f .general.and.support.multiple.co
65c0 6d 70 72 65 73 73 69 6f 6e 20 65 6e 67 69 6e 65 73 2e 20 20 54 68 65 20 43 6f 6d 70 72 65 73 73 mpression.engines...The.Compress
65e0 69 6f 6e 46 6f 72 6d 61 74 41 6e 64 45 6e 67 69 6e 65 20 63 6f 64 65 20 69 73 20 70 61 73 73 65 ionFormatAndEngine.code.is.passe
6600 64 20 69 6e 74 6f 20 65 61 63 68 20 63 61 6c 6c 2e 20 20 41 73 20 61 20 66 69 72 73 74 20 70 61 d.into.each.call...As.a.first.pa
6620 73 73 20 77 65 20 63 61 6e 20 6f 6e 6c 79 20 61 66 66 6f 72 64 20 74 6f 20 74 61 72 67 65 74 20 ss.we.can.only.afford.to.target.
6640 73 75 70 70 6f 72 74 20 66 6f 72 20 4c 5a 4e 54 31 20 66 6f 72 20 63 6f 6d 6d 75 6e 69 63 61 74 support.for.LZNT1.for.communicat
6660 69 6f 6e 20 6f 6e 20 74 68 65 20 6e 65 74 77 6f 72 6b 2e 20 20 41 20 66 61 69 72 20 61 6d 6f 75 ion.on.the.network...A.fair.amou
6680 6e 74 20 6f 66 20 77 6f 72 6b 20 77 69 6c 6c 20 62 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 61 nt.of.work.will.be.required.to.a
66a0 63 74 75 61 6c 6c 79 20 63 72 65 61 74 65 20 6d 65 63 68 61 6e 69 73 6d 73 20 61 6e 64 20 64 6f ctually.create.mechanisms.and.do
66c0 63 75 6d 65 6e 74 20 68 6f 77 20 61 64 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 72 65 73 73 69 6f cument.how.additional.compressio
66e0 6e 20 66 6f 72 6d 61 74 73 20 63 6f 75 6c 64 20 70 6f 73 73 69 62 6c 79 20 62 65 20 61 64 64 65 n.formats.could.possibly.be.adde
6700 64 20 74 6f 20 74 68 65 20 73 79 73 74 65 6d 2e 20 20 54 68 65 20 64 65 76 69 6c 20 77 69 6c 6c d.to.the.system...The.devil.will
6720 20 62 65 20 69 6e 20 74 68 65 20 64 65 74 61 69 6c 73 2c 20 61 6e 64 20 69 6e 20 70 61 72 74 69 .be.in.the.details,.and.in.parti
6740 63 75 6c 61 72 20 61 6c 67 6f 72 69 74 68 6d 2d 73 70 65 63 69 66 69 63 20 72 65 71 75 69 72 65 cular.algorithm-specific.require
6760 6d 65 6e 74 73 20 66 6f 72 20 73 63 72 61 74 63 68 20 93 77 6f 72 6b 73 70 61 63 65 94 20 73 74 ments.for.scratch..workspace..st
6780 6f 72 61 67 65 20 77 69 6c 6c 20 62 65 20 61 6e 20 69 73 73 75 65 2e 0d 0d 54 68 65 20 66 6f 6c orage.will.be.an.issue...The.fol
67a0 6c 6f 77 69 6e 67 20 73 65 63 74 69 6f 6e 73 20 62 72 69 65 66 6c 79 20 6c 69 73 74 20 74 68 65 lowing.sections.briefly.list.the
67c0 20 72 6f 75 74 69 6e 65 73 2c 20 61 6e 64 20 64 65 66 69 6e 65 20 77 68 65 6e 20 74 68 65 79 20 .routines,.and.define.when.they.
67e0 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 61 6e 64 20 77 68 61 74 20 74 68 65 20 77 6f 72 6b should.be.used.and.what.the.work
6800 73 70 61 63 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 72 65 20 66 6f 72 20 4c 5a 4e 54 31 space.requirements.are.for.LZNT1
6820 2e 20 20 41 6e 79 20 4e 54 20 63 6f 6d 70 6f 6e 65 6e 74 73 20 63 61 6c 6c 69 6e 67 20 74 68 65 ...Any.NT.components.calling.the
6840 73 65 20 72 6f 75 74 69 6e 65 73 20 6d 61 79 20 62 65 20 61 62 6c 65 20 74 6f 20 62 65 6e 65 66 se.routines.may.be.able.to.benef
6860 69 74 20 66 72 6f 6d 20 77 6f 72 6b 73 70 61 63 65 20 73 74 72 61 74 65 67 69 65 73 20 64 65 76 it.from.workspace.strategies.dev
6880 65 6c 6f 70 65 64 20 66 6f 72 20 4e 74 66 73 20 61 6e 64 20 4f 66 73 2e 20 20 54 68 65 20 57 69 eloped.for.Ntfs.and.Ofs...The.Wi
68a0 6e 39 35 20 52 64 72 20 73 68 6f 75 6c 64 20 70 72 6f 62 61 62 6c 79 20 66 6f 72 73 65 65 20 74 n95.Rdr.should.probably.forsee.t
68c0 68 65 20 75 73 65 20 6f 66 20 61 20 73 74 61 74 69 63 20 77 6f 72 6b 73 70 61 63 65 20 62 75 66 he.use.of.a.static.workspace.buf
68e0 66 65 72 2c 20 77 68 69 63 68 20 77 69 6c 6c 20 65 6e 74 61 69 6c 20 73 6f 6d 65 20 73 65 72 69 fer,.which.will.entail.some.seri
6900 61 6c 69 7a 61 74 69 6f 6e 2e 0d 0d 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 77 6f 72 6b 73 70 alization...Note.that.the.worksp
6920 61 63 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 6c 69 73 74 65 64 20 62 65 6c 6f 77 20 61 72 ace.requirements.listed.below.ar
6940 65 20 66 6f 72 20 67 69 76 69 6e 67 20 61 6e 20 61 70 70 72 6f 78 69 6d 61 74 65 20 61 70 70 72 e.for.giving.an.approximate.appr
6960 6f 78 69 6d 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 77 6f 72 6b 73 70 61 63 65 20 72 65 71 75 69 oximation.of.the.workspace.requi
6980 72 65 6d 65 6e 74 73 20 6f 6e 6c 79 20 66 6f 72 20 64 65 73 69 67 6e 20 70 75 72 70 6f 73 65 73 rements.only.for.design.purposes
69a0 2e 20 20 54 68 65 20 61 63 74 75 61 6c 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 6d 75 73 74 20 ...The.actual.requirements.must.
69c0 62 65 20 64 65 74 65 72 6d 69 6e 65 64 20 66 72 6f 6d 20 52 74 6c 47 65 74 43 6f 6d 70 72 65 73 be.determined.from.RtlGetCompres
69e0 73 69 6f 6e 57 6f 72 6b 53 70 61 63 65 53 69 7a 65 2e 0d 0d 32 2e 33 2e 31 20 52 74 6c 47 65 74 sionWorkSpaceSize...2.3.1.RtlGet
6a00 dc a5 68 00 45 c0 09 04 00 00 44 00 65 00 00 00 00 00 00 00 00 00 00 00 00 03 00 00 76 64 00 00 ..h.E.....D.e...............vd..
6a20 b4 b4 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e5 6d 00 00 00 00 00 00 69 00 00 00 .....................m......i...
6a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7c 00 00 4a 01 00 00 .........................|..J...
6a60 00 7c 00 00 4a 01 00 00 00 9e 00 00 00 00 00 00 00 9e 00 00 00 00 00 00 00 9e 00 00 00 00 00 00 .|..J...........................
6a80 00 9e 00 00 00 00 00 00 00 9e 00 00 24 00 00 00 e4 a4 00 00 00 00 00 00 fa 9e 00 00 ea 05 00 00 ............$...................
6aa0 e4 a4 00 00 00 00 00 00 e4 a4 00 00 00 00 00 00 e4 a4 00 00 10 00 00 00 f4 a4 00 00 1c 00 00 00 ................................
6ac0 10 a5 00 00 46 00 00 00 e4 a4 00 00 00 00 00 00 c0 b3 00 00 5f 00 00 00 74 a5 00 00 00 00 00 00 ....F..............._...t.......
6ae0 74 a5 00 00 16 00 00 00 8a a5 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 t...............................
6b00 8a a5 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 a8 a5 00 00 02 00 00 00 ................................
6b20 aa a5 00 00 00 00 00 00 aa a5 00 00 00 00 00 00 aa a5 00 00 30 00 00 00 da a5 00 00 0c 01 00 00 ....................0...........
6b40 e6 a6 00 00 0c 01 00 00 f2 a7 00 00 1e 00 00 00 1f b4 00 00 58 00 00 00 77 b4 00 00 3d 00 00 00 ....................X...w...=...
6b60 10 a8 00 00 b0 0b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 9e 00 00 00 00 00 00 ................................
6b80 8a a5 00 00 00 00 00 00 00 00 33 00 35 00 04 00 0b 00 8a a5 00 00 00 00 00 00 8a a5 00 00 00 00 ..........3.5...................
6ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 8a a5 00 00 00 00 ................................
6bc0 00 00 10 a8 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 00 9e 00 00 00 00 00 00 00 9e 00 00 00 00 ................................
6be0 00 00 8a a5 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 56 a5 00 00 1e 00 ..........................V.....
6c00 00 00 8a a5 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 8a a5 00 00 00 00 ................................
6c20 00 00 00 9e 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 00 9e 00 00 00 00 00 00 8a a5 00 00 00 00 ................................
6c40 00 00 a8 a5 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 24 9e 00 00 50 00 ..........................$...P.
6c60 00 00 74 9e 00 00 86 00 00 00 00 9e 00 00 00 00 00 00 00 9e 00 00 00 00 00 00 00 9e 00 00 00 00 ..t.............................
6c80 00 00 00 9e 00 00 00 00 00 00 8a a5 00 00 00 00 00 00 a8 a5 00 00 00 00 00 00 8a a5 00 00 1e 00 ................................
6ca0 00 00 8a a5 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
6d00 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 57 69 6e 64 ............................Wind
6d20 6f 77 73 20 4e 54 20 42 61 73 65 20 47 72 6f 75 70 0d 0d 43 6f 70 79 20 61 6e 64 20 4d 64 6c 20 ows.NT.Base.Group..Copy.and.Mdl.
6d40 53 75 70 70 6f 72 74 20 66 6f 72 20 43 61 63 68 65 64 20 43 6f 6d 70 72 65 73 73 65 64 20 44 61 Support.for.Cached.Compressed.Da
6d60 74 61 0d 0d 41 75 74 68 6f 72 3a 20 54 6f 6d 20 4d 69 6c 6c 65 72 0d 0d 4f 72 69 67 69 6e 61 6c ta..Author:.Tom.Miller..Original
6d80 20 56 65 72 73 69 6f 6e 20 4d 61 79 20 33 31 2c 20 31 39 39 35 0d 0d 56 65 72 73 69 6f 6e 20 31 .Version.May.31,.1995..Version.1
6da0 2e 34 2c 20 4a 75 6e 65 20 32 36 2c 20 31 39 39 36 0d 0d 0c 31 2e 20 4f 56 45 52 56 49 45 57 20 .4,.June.26,.1996...1..OVERVIEW.
6dc0 2d 20 4d 41 59 20 33 31 2c 20 31 39 39 35 0d 0d 49 6e 20 57 69 6e 64 6f 77 73 20 4e 54 20 33 2e -.MAY.31,.1995..In.Windows.NT.3.
6de0 35 31 2c 20 74 68 65 20 66 69 6c 65 20 73 79 73 74 65 6d 20 67 72 6f 75 70 20 73 68 69 70 70 65 51,.the.file.system.group.shippe
6e00 64 20 61 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 63 61 70 61 62 69 6c 69 74 79 20 d.a.data.compression.capability.
6e20 62 75 69 6c 74 20 69 6e 74 6f 20 4e 74 66 73 2c 20 74 68 61 74 20 77 61 73 20 6f 70 74 69 6d 69 built.into.Ntfs,.that.was.optimi
6e40 7a 65 64 20 66 6f 72 20 77 6f 72 6b 73 74 61 74 69 6f 6e 20 75 73 65 20 28 76 73 2e 20 73 65 72 zed.for.workstation.use.(vs..ser
6e60 76 65 72 29 2e 20 20 4f 70 74 69 6d 69 7a 69 6e 67 20 66 6f 72 20 77 6f 72 6b 73 74 61 74 69 6f ver)...Optimizing.for.workstatio
6e80 6e 20 75 73 65 20 63 61 6e 20 62 72 69 6e 67 20 74 68 65 20 67 72 65 61 74 65 73 74 20 6e 75 6d n.use.can.bring.the.greatest.num
6ea0 65 72 69 63 61 6c 20 62 65 6e 65 66 69 74 2c 20 73 69 6e 63 65 20 69 6e 20 6d 6f 73 74 20 6c 61 erical.benefit,.since.in.most.la
6ec0 72 67 65 20 6e 65 74 77 6f 72 6b 73 20 74 68 65 72 65 20 61 72 65 20 6f 6e 65 20 6f 72 20 6d 6f rge.networks.there.are.one.or.mo
6ee0 72 65 20 6f 72 64 65 72 73 20 6f 66 20 6d 61 67 6e 69 74 75 64 65 20 6d 6f 72 65 20 73 74 6f 72 re.orders.of.magnitude.more.stor
6f00 61 67 65 20 6f 6e 20 74 68 65 20 73 75 6d 20 6f 66 20 61 6c 6c 20 64 65 73 6b 74 6f 70 73 2c 20 age.on.the.sum.of.all.desktops,.
6f20 76 65 72 73 75 73 20 74 68 65 20 73 75 6d 20 6f 66 20 61 6c 6c 20 73 65 72 76 65 72 73 2e 20 20 versus.the.sum.of.all.servers...
6f40 54 68 75 73 20 74 68 65 20 64 65 73 69 67 6e 20 63 65 6e 74 65 72 20 66 6f 72 20 4e 74 66 73 20 Thus.the.design.center.for.Ntfs.
6f60 63 6f 6d 70 72 65 73 73 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20 69 6e 20 33 2e 35 compression.functionality.in.3.5
6f80 31 20 77 61 73 20 61 20 63 61 70 61 62 69 6c 69 74 79 20 73 69 6d 69 6c 61 72 20 74 6f 20 44 6f 1.was.a.capability.similar.to.Do
6fa0 75 62 6c 65 20 53 70 61 63 65 2c 20 44 72 69 76 65 20 53 70 61 63 65 2c 20 6f 72 20 63 6f 6d 70 uble.Space,.Drive.Space,.or.comp
6fc0 72 65 73 73 69 6f 6e 20 75 6e 64 65 72 20 4f 53 2f 32 2c 20 77 68 69 63 68 20 61 6c 73 6f 20 73 ression.under.OS/2,.which.also.s
6fe0 68 6f 75 6c 64 20 62 65 20 63 6c 61 73 73 69 66 69 65 64 20 61 73 20 77 6f 72 6b 73 74 61 74 69 hould.be.classified.as.workstati
7000 6f 6e 20 73 6f 6c 75 74 69 6f 6e 73 2e 20 20 42 75 74 20 75 6e 6c 69 6b 65 20 74 68 65 73 65 20 on.solutions...But.unlike.these.
7020 73 79 73 74 65 6d 73 2c 20 4e 74 66 73 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6d 61 79 20 62 65 systems,.Ntfs.compression.may.be
7040 20 73 70 65 63 69 66 69 65 64 20 6f 6e 20 61 20 70 65 72 2d 66 69 6c 65 20 6f 72 20 70 65 72 2d .specified.on.a.per-file.or.per-
7060 64 69 72 65 63 74 6f 72 79 20 62 61 73 69 73 2e 20 0d 0d 49 6e 20 6f 70 74 69 6d 69 7a 69 6e 67 directory.basis....In.optimizing
7080 20 66 6f 72 20 77 6f 72 6b 73 74 61 74 69 6f 6e 20 75 73 65 2c 20 61 6c 6c 20 64 61 74 61 20 69 .for.workstation.use,.all.data.i
70a0 73 20 63 6f 6d 70 72 65 73 73 65 64 20 69 6e 20 72 65 61 6c 20 74 69 6d 65 20 61 73 20 69 74 20 s.compressed.in.real.time.as.it.
70c0 69 73 20 77 72 69 74 74 65 6e 20 74 6f 20 64 69 73 6b 2c 20 61 6e 64 20 69 74 20 69 73 20 6e 65 is.written.to.disk,.and.it.is.ne
70e0 76 65 72 20 72 65 71 75 69 72 65 64 20 74 68 61 74 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 ver.required.that.the.uncompress
7100 65 64 20 73 69 7a 65 20 6f 66 20 74 68 65 20 64 61 74 61 20 62 65 20 61 6c 6c 6f 63 61 74 65 64 ed.size.of.the.data.be.allocated
7120 20 6f 6e 20 64 69 73 6b 2e 20 44 61 74 61 20 69 73 20 6f 6e 6c 79 20 63 61 63 68 65 64 20 69 6e .on.disk..Data.is.only.cached.in
7140 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 74 61 74 65 2c 20 74 6f 20 61 6c 6c 6f .the.uncompressed.state,.to.allo
7160 77 20 66 61 73 74 20 72 65 61 64 20 61 6e 64 20 77 72 69 74 65 20 61 63 63 65 73 73 20 74 6f 20 w.fast.read.and.write.access.to.
7180 61 70 70 6c 69 63 61 74 69 6f 6e 73 20 77 68 69 63 68 20 74 65 6e 64 20 74 6f 20 72 65 61 64 20 applications.which.tend.to.read.
71a0 61 6e 64 20 77 72 69 74 65 20 77 69 74 68 20 73 6d 61 6c 6c 20 62 79 74 65 20 63 6f 75 6e 74 73 and.write.with.small.byte.counts
71c0 2e 20 20 54 68 75 73 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 74 68 65 20 64 69 73 6b 2c 20 64 ...Thus.when.reading.the.disk,.d
71e0 61 74 61 20 69 73 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 66 72 6f 6d 20 61 20 64 69 73 6b 20 ata.is.decompressed.from.a.disk.
7200 62 75 66 66 65 72 20 69 6e 74 6f 20 74 68 65 20 63 61 63 68 65 2c 20 61 6e 64 20 77 68 65 6e 20 buffer.into.the.cache,.and.when.
7220 77 72 69 74 69 6e 67 20 74 68 65 20 64 69 73 6b 2c 20 64 61 74 61 20 69 73 20 63 6f 6d 70 72 65 writing.the.disk,.data.is.compre
7240 73 73 65 64 20 66 72 6f 6d 20 74 68 65 20 63 61 63 68 65 20 69 6e 74 6f 20 61 20 64 69 73 6b 20 ssed.from.the.cache.into.a.disk.
7260 62 75 66 66 65 72 2e 20 20 54 68 65 20 63 75 72 72 65 6e 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e buffer...The.current.compression
7280 20 66 6f 72 6d 61 74 20 63 68 6f 73 65 6e 20 66 6f 72 20 4e 74 66 73 2c 20 4c 5a 4e 54 31 2c 20 .format.chosen.for.Ntfs,.LZNT1,.
72a0 77 61 73 20 70 72 69 6d 61 72 69 6c 79 20 63 68 6f 73 65 6e 20 66 6f 72 20 69 74 73 20 73 70 65 was.primarily.chosen.for.its.spe
72c0 65 64 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 61 6e 64 20 74 68 65 20 70 72 69 ed.of.decompression,.and.the.pri
72e0 6d 61 72 79 20 64 65 63 6f 6d 70 72 65 73 73 20 63 68 75 6e 6b 20 72 6f 75 74 69 6e 65 20 66 6f mary.decompress.chunk.routine.fo
7300 72 20 4c 5a 4e 54 31 20 69 73 20 77 72 69 74 74 65 6e 20 69 6e 20 61 73 73 65 6d 62 6c 65 72 20 r.LZNT1.is.written.in.assembler.
7320 6f 6e 20 61 6c 6c 20 66 6f 75 72 20 70 6c 61 74 66 6f 72 6d 73 2e 20 20 49 6e 64 65 65 64 2c 20 on.all.four.platforms...Indeed,.
7340 69 6e 20 74 68 65 20 66 69 72 73 74 20 79 65 61 72 20 6f 66 20 75 73 65 2c 20 74 68 65 20 63 6f in.the.first.year.of.use,.the.co
7360 73 74 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 68 61 73 20 6e 65 76 65 72 20 62 65 st.of.decompression.has.never.be
7380 65 6e 20 6f 62 73 65 72 76 65 64 20 74 6f 20 62 65 20 61 20 73 65 72 69 6f 75 73 20 70 65 72 66 en.observed.to.be.a.serious.perf
73a0 6f 72 6d 61 6e 63 65 20 70 65 6e 61 6c 74 79 2e 20 20 54 68 65 20 63 6f 73 74 20 6f 66 20 63 6f ormance.penalty...The.cost.of.co
73c0 6d 70 72 65 73 73 69 6f 6e 2c 20 6f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c 20 77 68 mpression,.on.the.other.hand,.wh
73e0 69 63 68 20 69 6e 76 6f 6c 76 65 73 20 73 65 61 72 63 68 69 6e 67 20 74 68 65 20 75 6e 63 6f 6d ich.involves.searching.the.uncom
7400 70 72 65 73 73 65 64 20 64 61 74 61 20 66 6f 72 20 6d 61 74 63 68 69 6e 67 20 73 74 72 69 6e 67 pressed.data.for.matching.string
7420 73 2c 20 69 73 20 73 75 62 73 74 61 6e 74 69 61 6c 2e 20 20 46 6f 72 74 75 6e 61 74 65 6c 79 2c s,.is.substantial...Fortunately,
7440 20 6d 6f 73 74 20 63 6f 6d 6d 6f 6e 20 77 6f 72 6b 73 74 61 74 69 6f 6e 20 6f 70 65 72 61 74 69 .most.common.workstation.operati
7460 6f 6e 73 20 61 72 65 20 6d 6f 72 65 20 72 65 61 64 2d 69 6e 74 65 6e 73 69 76 65 2c 20 73 6f 20 ons.are.more.read-intensive,.so.
7480 74 68 65 72 65 20 68 61 76 65 20 62 65 65 6e 20 66 65 77 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 there.have.been.few.performance.
74a0 63 6f 6d 70 6c 61 69 6e 74 73 20 61 6d 6f 6e 67 20 6f 75 72 20 77 6f 72 6b 73 74 61 74 69 6f 6e complaints.among.our.workstation
74c0 20 75 73 65 72 73 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 20 20 45 73 70 65 63 69 61 6c .users.of.compression...Especial
74e0 6c 79 20 73 69 6e 63 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 61 6c 77 61 ly.since.the.compression.is.alwa
7500 79 73 20 64 6f 6e 65 20 62 79 20 74 68 65 20 4c 61 7a 79 20 57 72 69 74 65 72 20 69 6e 20 74 68 ys.done.by.the.Lazy.Writer.in.th
7520 65 20 62 61 63 6b 67 72 6f 75 6e 64 2e 0d 0d 41 73 73 65 73 73 69 6e 67 20 74 68 65 20 63 6f 73 e.background...Assessing.the.cos
7540 74 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 73 69 t.of.compressing.and.decompressi
7560 6e 67 20 64 61 74 61 20 6f 6e 20 61 20 66 69 6c 65 20 73 65 72 76 65 72 20 69 73 20 61 6e 6f 74 ng.data.on.a.file.server.is.anot
7580 68 65 72 20 73 74 6f 72 79 20 65 6e 74 69 72 65 6c 79 2e 20 20 57 68 65 6e 20 61 20 57 69 6e 64 her.story.entirely...When.a.Wind
75a0 6f 77 73 20 4e 54 20 33 2e 35 31 20 46 69 6c 65 20 53 65 72 76 65 72 20 68 69 74 73 20 6d 61 78 ows.NT.3.51.File.Server.hits.max
75c0 69 6d 75 6d 20 6c 6f 61 64 2c 20 69 74 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 63 6f 6d 70 75 74 imum.load,.it.is.normally.comput
75e0 65 2d 62 6f 75 6e 64 2e 20 20 54 68 65 72 65 66 6f 72 65 20 61 64 64 69 6e 67 20 74 68 65 20 63 e-bound...Therefore.adding.the.c
7600 6f 73 74 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 ost.of.compression.and.decompres
7620 73 69 6f 6e 20 74 6f 20 74 68 65 20 64 69 73 6b 20 49 2f 4f 20 70 61 74 68 73 20 69 73 20 61 20 sion.to.the.disk.I/O.paths.is.a.
7640 64 69 72 65 63 74 20 68 69 74 20 6f 6e 20 73 65 72 76 65 72 20 70 65 72 66 6f 72 6d 61 6e 63 65 direct.hit.on.server.performance
7660 2e 20 20 45 61 72 6c 79 20 74 68 69 73 20 79 65 61 72 20 66 6f 72 20 74 68 65 20 66 69 72 73 74 ...Early.this.year.for.the.first
7680 20 74 69 6d 65 20 73 6f 6d 65 20 6f 66 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6e 65 74 77 6f .time.some.of.the.standard.netwo
76a0 72 6b 20 62 65 6e 63 68 6d 61 72 6b 73 20 77 65 72 65 20 72 75 6e 20 6f 6e 20 4e 74 66 73 20 77 rk.benchmarks.were.run.on.Ntfs.w
76c0 69 74 68 20 61 6e 64 20 77 69 74 68 6f 75 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 61 6e 64 ith.and.without.compression,.and
76e0 20 61 73 20 65 78 70 65 63 74 65 64 2c 20 74 68 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 68 69 .as.expected,.the.performance.hi
7700 74 20 66 6f 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 77 61 73 20 73 75 62 73 74 61 6e 74 69 61 t.for.compression.was.substantia
7720 6c 20 77 69 74 68 20 6d 6f 72 65 20 74 68 61 6e 20 73 69 78 20 74 6f 20 65 69 67 68 74 20 61 63 l.with.more.than.six.to.eight.ac
7740 74 69 76 65 20 63 6c 69 65 6e 74 73 2e 20 20 42 61 70 63 6f 20 70 65 72 66 6f 72 6d 61 6e 63 65 tive.clients...Bapco.performance
7760 20 77 69 74 68 20 34 38 20 63 6c 69 65 6e 74 73 20 73 68 6f 77 65 64 20 61 20 31 35 25 20 2d 20 .with.48.clients.showed.a.15%.-.
7780 32 30 25 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 70 65 6e 61 6c 74 79 2c 20 77 68 69 6c 65 20 70 20%.performance.penalty,.while.p
77a0 65 72 66 6f 72 6d 61 6e 63 65 20 6f 6e 20 4e 65 74 62 65 6e 63 68 20 33 2e 30 20 28 77 68 69 63 erformance.on.Netbench.3.0.(whic
77c0 68 20 69 73 20 76 65 72 79 20 72 65 61 64 2f 77 72 69 74 65 20 69 6e 74 65 6e 73 69 76 65 29 20 h.is.very.read/write.intensive).
77e0 64 72 6f 70 70 65 64 20 74 6f 20 6c 65 73 73 20 74 68 61 6e 20 68 61 6c 66 2e 20 20 28 4f 6e 20 dropped.to.less.than.half...(On.
7800 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c 20 74 68 65 72 65 20 77 65 72 65 20 6e 6f 20 70 65 the.other.hand,.there.were.no.pe
7820 72 66 6f 72 6d 61 6e 63 65 20 63 6f 6d 70 6c 61 69 6e 74 73 20 6c 61 73 74 20 79 65 61 72 20 77 rformance.complaints.last.year.w
7840 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 77 61 73 20 61 64 64 65 64 20 74 6f 20 74 77 6f hen.compression.was.added.to.two
7860 20 6f 66 20 6f 75 72 20 93 72 65 61 6c 94 20 73 65 72 76 65 72 73 20 2d 20 5c 5c 6b 65 72 6e 65 .of.our..real..servers.-.\\kerne
7880 6c 20 61 6e 64 20 5c 5c 6e 74 78 38 36 34 2e 29 0d 0d 46 6f 72 20 74 68 65 20 73 68 65 6c 6c 20 l.and.\\ntx864.)..For.the.shell.
78a0 72 65 6c 65 61 73 65 20 77 65 20 70 6c 61 6e 20 74 6f 20 74 72 61 6e 73 66 6f 72 6d 20 4e 74 66 release.we.plan.to.transform.Ntf
78c0 73 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 6e 20 74 68 65 20 73 65 72 76 65 72 20 66 72 6f 6d s.compression.on.the.server.from
78e0 20 61 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 6c 69 61 62 69 6c 69 74 79 20 69 6e 74 6f 20 61 20 .a.performance.liability.into.a.
7900 70 65 72 66 6f 72 6d 61 6e 63 65 20 62 65 6e 65 66 69 74 2e 20 20 57 65 20 70 6c 61 6e 20 74 6f performance.benefit...We.plan.to
7920 20 64 6f 20 74 68 69 73 20 70 72 69 6d 61 72 69 6c 79 20 62 79 20 61 64 64 69 6e 67 20 74 68 65 .do.this.primarily.by.adding.the
7940 20 63 61 70 61 62 69 6c 69 74 79 20 74 6f 20 63 61 63 68 65 20 64 61 74 61 20 69 6e 20 69 74 73 .capability.to.cache.data.in.its
7960 20 63 6f 6d 70 72 65 73 73 65 64 20 73 74 61 74 65 2c 20 61 6e 64 20 6d 6f 76 65 20 74 68 65 20 .compressed.state,.and.move.the.
7980 63 6f 73 74 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 cost.of.compressing.and.decompre
79a0 73 73 69 6e 67 20 64 61 74 61 20 6f 75 74 20 74 6f 20 73 6d 61 72 74 20 63 6c 69 65 6e 74 73 2c ssing.data.out.to.smart.clients,
79c0 20 77 68 65 6e 20 70 6f 73 73 69 62 6c 65 2e 0d 0d 31 2e 31 20 43 6f 6d 70 72 65 73 73 69 6f 6e .when.possible...1.1.Compression
79e0 20 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 47 6f 61 6c 73 0d 0d 54 68 65 20 63 75 72 72 65 6e 74 .Optimization.Goals..The.current
7a00 20 74 6f 20 62 65 20 74 72 61 6e 73 6d 69 74 74 65 64 2e 0d 32 2e 31 2e 33 42 4f 4f 4c 45 41 4e .to.be.transmitted..2.1.3BOOLEAN
7a20 20 20 49 66 20 46 41 4c 53 45 20 69 73 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 6e 20 61 6e 20 ..If.FALSE.is.returned,.then.an.
7a40 49 72 70 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 6c 65 74 65 20 74 68 65 Irp.must.be.used.to.complete.the
7a60 20 72 65 61 64 2c 20 61 73 20 64 65 73 63 72 69 62 65 64 20 6c 61 74 65 72 2e 32 2e 31 2e 34 20 .read,.as.described.later.2.1.4.
7a80 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 2d 3e 4d 64 6c 57 72 69 74 65 0d 31 32 02 00 99 0a 20 FastIoDispatch->MdlWrite.12.....
7aa0 20 49 74 20 69 73 20 61 20 74 72 69 76 69 61 6c 20 72 6f 75 74 69 6e 65 20 61 6e 64 20 74 68 65 .It.is.a.trivial.routine.and.the
7ac0 72 65 66 6f 72 65 20 61 20 76 65 72 79 20 68 61 6e 64 79 20 72 6f 75 74 69 6e 65 20 66 6f 72 20 refore.a.very.handy.routine.for.
7ae0 66 69 6e 64 69 6e 67 20 6f 75 74 20 69 66 20 61 20 67 69 76 65 6e 20 63 6f 6d 70 72 65 73 73 69 finding.out.if.a.given.compressi
7b00 6f 6e 20 66 6f 72 6d 61 74 20 69 73 20 73 75 70 70 6f 72 74 65 64 2e 0d 31 31 0d 4e 54 53 59 53 on.format.is.supported..11.NTSYS
7b20 41 50 49 0d 4e 54 53 54 41 54 55 53 0d 4e 54 41 50 49 0d 52 74 6c 47 65 74 43 6f 6d 70 72 65 73 API.NTSTATUS.NTAPI.RtlGetCompres
7b40 73 69 6f 6e 57 6f 72 6b 53 70 61 63 65 53 69 7a 65 20 28 0d 20 20 20 20 49 4e 20 55 53 48 4f 52 sionWorkSpaceSize.(.....IN.USHOR
7b60 54 20 43 6f 6d 70 72 65 73 73 69 6f 6e 46 6f 72 6d 61 74 41 6e 64 45 6e 67 69 6e 65 2c 0d 20 20 T.CompressionFormatAndEngine,...
7b80 20 20 4f 55 54 20 50 55 4c 4f 4e 47 20 43 6f 6d 70 72 65 73 73 42 75 66 66 65 72 57 6f 72 6b 53 ..OUT.PULONG.CompressBufferWorkS
7ba0 70 61 63 65 53 69 7a 65 2c 0d 20 20 20 20 4f 55 54 20 50 55 4c 4f 4e 47 20 43 6f 6d 70 72 65 73 paceSize,.....OUT.PULONG.Compres
7bc0 73 46 72 61 67 6d 65 6e 74 57 6f 72 6b 53 70 61 63 65 53 69 7a 65 0d 20 20 20 20 29 3b 0d 32 2e sFragmentWorkSpaceSize.....);.2.
7be0 33 2e 32 20 52 74 6c 44 65 63 6f 6d 70 72 65 73 73 43 68 75 6e 6b 73 0d 0d 4e 54 53 59 53 41 50 3.2.RtlDecompressChunks..NTSYSAP
7c00 49 0d 4e 54 53 54 41 54 55 53 0d 4e 54 41 50 49 0d 52 74 6c 44 65 63 6f 6d 70 72 65 73 73 43 68 I.NTSTATUS.NTAPI.RtlDecompressCh
7c20 75 6e 6b 73 20 28 0d 20 20 20 20 4f 55 54 20 50 55 43 48 41 52 20 55 6e 63 6f 6d 70 72 65 73 73 unks.(.....OUT.PUCHAR.Uncompress
7c40 65 64 42 75 66 66 65 72 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 55 6e 63 6f 6d 70 72 65 73 edBuffer,.....IN.ULONG.Uncompres
7c60 73 65 64 42 75 66 66 65 72 53 69 7a 65 2c 0d 20 20 20 20 49 4e 20 50 55 43 48 41 52 20 43 6f 6d sedBufferSize,.....IN.PUCHAR.Com
7c80 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 43 6f 6d 70 pressedBuffer,.....IN.ULONG.Comp
7ca0 72 65 73 73 65 64 42 75 66 66 65 72 53 69 7a 65 2c 0d 20 20 20 20 49 4e 20 50 55 43 48 41 52 20 ressedBufferSize,.....IN.PUCHAR.
7cc0 43 6f 6d 70 72 65 73 73 65 64 54 61 69 6c 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 43 6f 6d CompressedTail,.....IN.ULONG.Com
7ce0 70 72 65 73 73 65 64 54 61 69 6c 53 69 7a 65 2c 0d 20 20 20 20 49 4e 20 50 43 4f 4d 50 52 45 53 pressedTailSize,.....IN.PCOMPRES
7d00 53 45 44 5f 44 41 54 41 5f 49 4e 46 4f 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f SED_DATA_INFO.CompressedDataInfo
7d20 0d 20 20 20 20 29 3b 0d 0d 54 68 69 73 20 72 6f 75 74 69 6e 65 20 6d 61 79 20 62 65 20 75 73 65 .....);..This.routine.may.be.use
7d40 64 20 74 6f 20 64 65 63 6f 6d 70 72 65 73 73 20 61 20 73 74 72 65 61 6d 20 6f 66 20 63 68 75 6e d.to.decompress.a.stream.of.chun
7d60 6b 73 20 69 6e 74 6f 20 61 6e 6f 74 68 65 72 20 62 75 66 66 65 72 2e 20 20 28 54 79 70 69 63 61 ks.into.another.buffer...(Typica
7d80 6c 6c 79 20 74 68 65 20 52 64 72 20 77 6f 75 6c 64 20 75 73 65 20 74 68 69 73 20 74 6f 20 64 65 lly.the.Rdr.would.use.this.to.de
7da0 63 6f 6d 70 72 65 73 73 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 77 68 69 63 68 20 69 compress.compressed.data.which.i
7dc0 74 20 68 61 73 20 72 65 63 65 69 76 65 64 20 69 6e 74 6f 20 74 68 65 20 43 61 63 68 65 2e 29 20 t.has.received.into.the.Cache.).
7de0 20 54 6f 20 6d 69 6e 69 6d 69 7a 65 20 62 75 66 66 65 72 69 6e 67 20 72 65 71 75 69 72 65 6d 65 .To.minimize.buffering.requireme
7e00 6e 74 73 20 74 68 69 73 20 72 6f 75 74 69 6e 65 20 73 75 70 70 6f 72 74 73 20 61 20 74 72 69 63 nts.this.routine.supports.a.tric
7e20 6b 20 77 68 65 72 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 6d 61 79 20 k.where.the.compressed.data.may.
7e40 62 65 20 73 75 70 70 6c 69 65 64 20 74 6f 70 2d 61 6c 69 67 6e 65 64 20 69 6e 20 74 77 6f 20 64 be.supplied.top-aligned.in.two.d
7e60 69 66 66 65 72 65 6e 74 20 62 75 66 66 65 72 73 2c 20 77 68 65 72 65 20 74 68 65 20 66 69 72 73 ifferent.buffers,.where.the.firs
7e80 74 20 62 75 66 66 65 72 20 6d 61 79 20 61 63 74 75 61 6c 6c 79 20 62 65 20 74 68 65 20 73 61 6d t.buffer.may.actually.be.the.sam
7ea0 65 20 61 73 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 55 6e 63 6f 6d 70 72 65 73 73 65 e.as.the.destination.Uncompresse
7ec0 64 42 75 66 66 65 72 21 20 20 53 6f 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 dBuffer!..So.when.decompressing.
7ee0 43 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 20 2b 20 43 6f 6d 70 72 65 73 73 65 64 54 61 69 CompressedBuffer.+.CompressedTai
7f00 6c 20 69 6e 74 6f 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 20 43 6f 6d 70 72 l.into.UncompressedBuffer,.Compr
7f20 65 73 73 65 64 42 75 66 66 65 72 20 61 6e 64 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 42 75 66 66 essedBuffer.and.UncompressedBuff
7f40 65 72 20 6d 61 79 20 6f 76 65 72 6c 61 70 20 61 74 20 74 68 65 20 74 6f 70 2e 20 20 54 68 75 73 er.may.overlap.at.the.top...Thus
7f60 20 79 6f 75 20 6f 6e 6c 79 20 68 61 76 65 20 74 6f 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 61 6c .you.only.have.to.dynamically.al
7f80 6c 6f 63 61 74 65 20 61 20 34 4b 42 2b 20 43 6f 6d 70 72 65 73 73 65 64 54 61 69 6c 20 62 75 66 locate.a.4KB+.CompressedTail.buf
7fa0 66 65 72 2c 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 fer,.regardless.of.the.uncompres
7fc0 73 65 64 20 73 69 7a 65 20 6f 66 20 74 68 65 20 74 72 61 6e 73 66 65 72 2e 20 20 54 79 70 69 63 sed.size.of.the.transfer...Typic
7fe0 61 6c 6c 79 20 74 68 65 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 20 73 74 72 75 ally.the.CompressedDataInfo.stru
8000 63 74 75 72 65 20 69 73 20 61 70 70 65 6e 64 65 64 20 74 6f 20 74 68 65 20 63 6f 6d 70 72 65 73 cture.is.appended.to.the.compres
8020 73 65 64 20 64 61 74 61 20 69 74 73 65 6c 66 20 6f 6e 20 74 68 65 20 77 69 72 65 20 61 6e 64 20 sed.data.itself.on.the.wire.and.
8040 73 65 6e 74 20 61 6c 6c 20 61 74 20 6f 6e 63 65 2c 20 73 6f 20 69 6e 20 74 68 69 73 20 73 69 74 sent.all.at.once,.so.in.this.sit
8060 75 61 74 69 6f 6e 20 74 68 65 20 72 75 6c 65 73 20 66 6f 72 20 63 61 6c 6c 69 6e 67 20 52 74 6c uation.the.rules.for.calling.Rtl
8080 44 65 63 6f 6d 70 72 65 73 73 43 68 75 6e 6b 73 20 61 72 65 20 61 73 20 66 6f 6c 6c 6f 77 73 3a DecompressChunks.are.as.follows:
80a0 0d 0d 54 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 74 61 69 6c 20 6d 75 73 74 20 62 65 20 6c 61 ..The.compressed.tail.must.be.la
80c0 72 67 65 20 65 6e 6f 75 67 68 20 74 6f 20 63 6f 6e 74 61 69 6e 20 6f 6e 65 20 75 6e 63 6f 6d 70 rge.enough.to.contain.one.uncomp
80e0 72 65 73 73 65 64 20 63 68 75 6e 6b 20 28 77 6f 72 73 74 20 63 61 73 65 29 20 70 6c 75 73 20 61 ressed.chunk.(worst.case).plus.a
8100 6e 79 20 73 74 72 75 63 74 75 72 65 20 61 70 70 65 6e 64 65 64 20 74 6f 20 74 68 65 20 63 6f 6d ny.structure.appended.to.the.com
8120 70 72 65 73 73 65 64 20 64 61 74 61 20 69 6e 20 74 68 65 20 54 61 69 6c 2e 20 20 49 74 20 6d 61 pressed.data.in.the.Tail...It.ma
8140 79 2c 20 6f 66 20 63 6f 75 72 73 65 2c 20 62 65 20 6c 61 72 67 65 72 2e 0d 54 68 65 20 65 6e 64 y,.of.course,.be.larger..The.end
8160 20 6f 66 20 65 6e 74 69 72 65 20 74 72 61 6e 73 66 65 72 20 69 73 20 61 73 73 75 6d 65 64 20 74 .of.entire.transfer.is.assumed.t
8180 6f 20 62 65 20 74 6f 70 2d 61 6c 69 67 6e 65 64 20 69 6e 20 74 68 65 20 54 61 69 6c 42 75 66 66 o.be.top-aligned.in.the.TailBuff
81a0 65 72 2e 0d 49 66 20 6e 6f 74 20 61 6c 6c 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 er..If.not.all.of.the.compressed
81c0 20 64 61 74 61 20 66 69 74 73 20 69 6e 20 74 68 65 20 54 61 69 6c 42 75 66 66 65 72 2c 20 74 68 .data.fits.in.the.TailBuffer,.th
81e0 65 6e 20 74 68 65 20 54 61 69 6c 42 75 66 66 65 72 20 6d 75 73 74 20 62 65 20 63 6f 6d 70 6c 65 en.the.TailBuffer.must.be.comple
8200 74 65 6c 79 20 66 69 6c 6c 65 64 2c 20 61 6e 64 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 62 tely.filled,.and.the.remaining.b
8220 79 74 65 73 20 61 72 65 20 74 6f 70 2d 61 6c 69 67 6e 65 64 20 69 6e 20 74 68 65 20 55 6e 63 6f ytes.are.top-aligned.in.the.Unco
8240 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 20 61 6e 64 20 64 65 73 63 72 69 62 65 64 20 6f 6e mpressedBuffer,.and.described.on
8260 20 69 6e 70 75 74 20 61 73 20 74 68 65 20 43 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2e 20 .input.as.the.CompressedBuffer..
8280 20 54 72 65 61 74 20 74 68 65 20 64 61 74 61 20 61 73 20 61 20 73 74 72 65 61 6d 20 6f 66 20 62 .Treat.the.data.as.a.stream.of.b
82a0 79 74 65 73 20 77 69 74 68 6f 75 74 20 63 6f 6e 63 65 72 6e 20 66 6f 72 20 77 68 65 74 68 65 72 ytes.without.concern.for.whether
82c0 20 61 20 63 68 75 6e 6b 20 69 73 20 73 70 6c 69 74 20 61 63 72 6f 73 73 20 74 68 65 20 74 77 6f .a.chunk.is.split.across.the.two
82e0 20 62 75 66 66 65 72 73 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2e 0d 0d 42 61 73 69 63 61 6c 6c .buffers,.for.example...Basicall
8300 79 20 74 68 69 73 20 74 72 69 63 6b 20 69 73 20 74 61 6b 69 6e 67 20 61 64 76 61 6e 74 61 67 65 y.this.trick.is.taking.advantage
8320 20 6f 66 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f .of.the.fact.that.the.destinatio
8340 6e 20 62 75 66 66 65 72 20 69 73 20 74 79 70 69 63 61 6c 6c 79 20 70 61 67 65 73 20 69 6e 20 74 n.buffer.is.typically.pages.in.t
8360 68 65 20 43 61 63 68 65 20 77 68 69 63 68 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 6d 61 64 65 20 he.Cache.which.will.not.be.made.
8380 76 61 6c 69 64 20 75 6e 74 69 6c 20 74 68 65 20 72 65 61 64 20 69 74 73 65 6c 66 20 69 73 20 63 valid.until.the.read.itself.is.c
83a0 6f 6d 70 6c 65 74 65 64 20 2d 20 74 68 65 72 65 66 6f 72 65 20 6e 6f 20 6f 6e 65 20 77 69 6c 6c ompleted.-.therefore.no.one.will
83c0 20 65 76 65 72 20 73 65 65 20 61 6e 79 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 73 74 61 74 65 .ever.see.any.intermediate.state
83e0 73 20 6f 66 20 74 68 65 20 62 75 66 66 65 72 2e 0d 0d 32 2e 33 2e 33 20 52 74 6c 43 6f 6d 70 72 s.of.the.buffer...2.3.3.RtlCompr
8400 65 73 73 43 68 75 6e 6b 73 0d 0d 4e 54 53 59 53 41 50 49 0d 4e 54 53 54 41 54 55 53 0d 4e 54 41 essChunks..NTSYSAPI.NTSTATUS.NTA
8420 50 49 0d 52 74 6c 43 6f 6d 70 72 65 73 73 43 68 75 6e 6b 73 20 28 0d 20 20 20 20 49 4e 20 50 55 PI.RtlCompressChunks.(.....IN.PU
8440 43 48 41 52 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 0d 20 20 20 20 49 4e 20 CHAR.UncompressedBuffer,.....IN.
8460 55 4c 4f 4e 47 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 53 69 7a 65 2c 0d 20 20 ULONG.UncompressedBufferSize,...
8480 20 20 4f 55 54 20 50 55 43 48 41 52 20 43 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 0d 20 ..OUT.PUCHAR.CompressedBuffer,..
84a0 20 20 20 49 4e 20 55 4c 4f 4e 47 20 43 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 53 69 7a 65 ...IN.ULONG.CompressedBufferSize
84c0 2c 0d 20 20 20 20 49 4e 20 4f 55 54 20 50 43 4f 4d 50 52 45 53 53 45 44 5f 44 41 54 41 5f 49 4e ,.....IN.OUT.PCOMPRESSED_DATA_IN
84e0 46 4f 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 2c 0d 20 20 20 20 49 4e 20 55 4c FO.CompressedDataInfo,.....IN.UL
8500 4f 4e 47 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 4c 65 6e 67 74 68 2c 0d 20 20 ONG.CompressedDataInfoLength,...
8520 20 20 49 4e 20 50 56 4f 49 44 20 57 6f 72 6b 53 70 61 63 65 0d 20 20 20 20 29 3b 0d 54 68 69 73 ..IN.PVOID.WorkSpace.....);.This
8540 20 72 6f 75 74 69 6e 65 20 6d 61 79 20 62 65 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 72 65 73 73 .routine.may.be.used.to.compress
8560 20 61 20 73 74 72 65 61 6d 20 6f 66 20 62 79 74 65 73 20 69 6e 74 6f 20 61 6e 20 6f 75 74 70 75 .a.stream.of.bytes.into.an.outpu
8580 74 20 62 75 66 66 65 72 2e 20 20 28 54 79 70 69 63 61 6c 6c 79 20 74 68 65 20 52 64 72 20 77 6f t.buffer...(Typically.the.Rdr.wo
85a0 75 6c 64 20 75 73 65 20 74 68 69 73 20 74 6f 20 63 6f 6d 70 72 65 73 73 20 61 6e 20 69 6e 74 65 uld.use.this.to.compress.an.inte
85c0 67 72 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 63 68 75 6e 6b 73 20 66 72 6f 6d 20 74 68 65 20 63 gral.number.of.chunks.from.the.c
85e0 61 63 68 65 20 69 6e 74 6f 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 62 75 66 66 65 72 20 66 6f ache.into.a.compressed.buffer.fo
8600 72 20 74 72 61 6e 73 6d 69 73 73 69 6f 6e 2c 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 43 r.transmission,.along.with.the.C
8620 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 2e 29 20 20 54 68 65 72 65 20 61 72 65 20 6e ompressedDataInfo.)..There.are.n
8640 6f 20 93 74 72 69 63 6b 73 94 20 70 72 6f 76 69 64 65 64 20 74 6f 20 73 75 70 70 6f 72 74 20 69 o..tricks..provided.to.support.i
8660 6e 2d 70 6c 61 63 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 20 20 54 79 70 69 63 61 6c 6c 79 20 n-place.compression...Typically.
8680 74 68 65 20 63 61 6c 6c 65 72 20 69 73 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 66 72 6f 6d 20 65 the.caller.is.compressing.from.e
86a0 69 74 68 65 72 20 76 61 6c 69 64 20 70 61 67 65 73 20 69 6e 20 74 68 65 20 43 61 63 68 65 20 6f ither.valid.pages.in.the.Cache.o
86c0 72 20 70 6f 73 73 69 62 6c 79 20 61 20 6e 6f 6e 6b 65 72 6e 65 6c 20 6d 6f 64 65 20 62 75 66 66 r.possibly.a.nonkernel.mode.buff
86e0 65 72 20 69 6e 74 6f 20 61 20 62 75 66 66 65 72 20 66 6f 72 20 74 72 61 6e 73 6d 69 73 73 69 6f er.into.a.buffer.for.transmissio
8700 6e 2e 20 20 49 6e 20 6e 65 69 74 68 65 72 20 63 61 73 65 20 69 73 20 69 74 20 76 61 6c 69 64 20 n...In.neither.case.is.it.valid.
8720 74 6f 20 6d 75 6e 67 65 20 74 68 65 20 62 75 66 66 65 72 20 69 6e 2d 70 6c 61 63 65 20 66 6f 72 to.munge.the.buffer.in-place.for
8740 20 74 72 61 6e 73 6d 69 73 73 69 6f 6e 2e 20 20 54 68 75 73 20 74 68 65 20 65 6e 74 69 72 65 20 .transmission...Thus.the.entire.
8760 63 6f 6d 70 72 65 73 73 65 64 20 62 75 66 66 65 72 20 6d 75 73 74 20 62 65 20 64 79 6e 61 6d 69 compressed.buffer.must.be.dynami
8780 63 61 6c 6c 79 20 61 6c 6c 6f 63 61 74 65 64 20 2d 20 74 79 70 69 63 61 6c 6c 79 20 66 72 6f 6d cally.allocated.-.typically.from
87a0 20 6e 6f 6e 70 61 67 65 64 20 70 6f 6f 6c 2e 0d 0d 54 68 65 20 43 6f 6d 70 72 65 73 73 65 64 44 .nonpaged.pool...The.CompressedD
87c0 61 74 61 49 6e 66 6f 20 6d 75 73 74 20 62 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 77 69 74 68 ataInfo.must.be.initialized.with
87e0 20 74 68 65 20 70 72 6f 70 65 72 20 76 61 6c 75 65 73 20 6f 6e 20 69 6e 70 75 74 2c 20 66 6f 72 .the.proper.values.on.input,.for
8800 20 61 6c 6c 20 66 69 65 6c 64 73 20 62 75 74 20 4e 75 6d 62 65 72 4f 66 43 68 75 6e 6b 73 20 61 .all.fields.but.NumberOfChunks.a
8820 6e 64 20 43 6f 6d 70 72 65 73 73 65 64 43 68 75 6e 6b 53 69 7a 65 73 2e 0d 0d 57 6f 72 6b 53 70 nd.CompressedChunkSizes...WorkSp
8840 61 63 65 20 6d 75 73 74 20 62 65 20 61 20 62 75 66 66 65 72 20 77 68 6f 73 65 20 73 69 7a 65 20 ace.must.be.a.buffer.whose.size.
8860 69 73 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 73 69 7a 65 20 72 65 74 75 72 6e 65 64 20 69 6e is.equal.to.the.size.returned.in
8880 20 43 6f 6d 70 72 65 73 73 42 75 66 66 65 72 57 6f 72 6b 53 70 61 63 65 53 69 7a 65 20 66 72 6f .CompressBufferWorkSpaceSize.fro
88a0 6d 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 52 74 6c 47 65 74 43 6f 6d 70 72 65 73 73 69 6f 6e 57 m.the.call.to.RtlGetCompressionW
88c0 6f 72 6b 53 70 61 63 65 53 69 7a 65 2e 20 20 49 74 20 6d 61 79 20 62 65 20 70 61 67 65 64 20 6f orkSpaceSize...It.may.be.paged.o
88e0 72 20 6e 6f 6e 70 61 67 65 64 2e 0d 31 33 02 00 99 0a 0d 0d 31 2e 35 20 57 68 65 6e 20 74 6f 20 r.nonpaged..13......1.5.When.to.
8900 55 73 65 20 43 6f 6d 70 72 65 73 73 65 64 20 54 72 61 6e 73 66 65 72 73 0d 0d 44 65 74 65 72 6d Use.Compressed.Transfers..Determ
8920 69 6e 69 6e 67 20 77 68 65 6e 20 61 20 52 64 72 20 73 68 6f 75 6c 64 20 75 73 65 20 63 6f 6d 70 ining.when.a.Rdr.should.use.comp
8940 72 65 73 73 65 64 20 64 61 74 61 20 74 72 61 6e 73 66 65 72 73 20 28 76 65 72 73 75 73 20 6e 6f ressed.data.transfers.(versus.no
8960 72 6d 61 6c 20 64 61 74 61 20 74 72 61 6e 73 66 65 72 73 29 20 69 73 20 6d 69 6e 69 6d 61 6c 6c rmal.data.transfers).is.minimall
8980 79 20 61 20 66 6f 75 72 20 73 74 65 70 20 70 72 6f 63 65 73 73 3a 0d 0d 54 68 65 20 66 69 72 73 y.a.four.step.process:..The.firs
89a0 74 20 73 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 t.st............................
89c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
89e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8a00 df 83 00 00 04 84 00 00 5e 84 00 00 b8 84 00 00 12 85 00 00 40 85 00 00 9a 85 00 00 b7 85 00 00 ........^...........@...........
8a20 c4 85 00 00 d9 85 00 00 13 86 00 00 54 86 00 00 a1 86 00 00 a2 86 00 00 fc 86 00 00 39 87 00 00 ............T...............9...
8a40 41 87 00 00 4d 87 00 00 58 87 00 00 59 87 00 00 5d 87 00 00 64 87 00 00 a3 87 00 00 a4 87 00 00 A...M...X...Y...]...d...........
8a60 de 87 00 00 38 88 00 00 5e 88 00 00 7f 88 00 00 a6 88 00 00 e8 88 00 00 f5 88 00 00 f6 88 00 00 ....8...^.......................
8a80 f7 88 00 00 f8 88 00 00 52 89 00 00 8c 89 00 00 e6 89 00 00 f0 89 00 00 f1 89 00 00 f2 89 00 00 ........R.......................
8aa0 09 8a 00 00 0a 8a 00 00 0b 8a 00 00 3b 8b 00 00 3c 8b 00 00 77 8b 00 00 8b 8b 00 00 e8 8b 00 00 ............;...<...w...........
8ac0 0e 8c 00 00 31 8c 00 00 35 8c 00 00 42 8c 00 00 43 8c 00 00 49 8c 00 00 4a 8c 00 00 67 8c 00 00 ....1...5...B...C...I...J...g...
8ae0 73 8c 00 00 a6 8c 00 00 b5 8c 00 00 dc 8c 00 00 e2 8c 00 00 02 8d 00 00 04 8d 00 00 5e 8d 00 00 s...........................^...
8b00 af 8d 00 00 b0 8d 00 00 b1 8d 00 00 db 8d 00 00 dc 8d 00 00 f3 8d 00 00 fb 8d 00 00 3a 8e 00 00 ............................:...
8b20 63 8e 00 00 6c 8e 00 00 81 8e 00 00 89 8e 00 00 b1 8e 00 00 cc 8e 00 00 cf 8e 00 00 eb 8e 00 00 c...l...........................
8b40 ec 8e 00 00 ee 8e 00 00 f2 8e 00 00 f4 8e 00 00 19 8f 00 00 1a 8f 00 00 2b 8f 00 00 37 8f 00 00 ........................+...7...
8b60 38 8f 00 00 84 8f 00 00 88 8f 00 00 91 8f 00 00 98 8f 00 00 a4 8f 00 00 00 96 00 00 7d 96 00 00 8...........................}...
8b80 99 96 00 00 ab 96 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fe 00 00 00 fe 00 ................................
8ba0 00 00 00 00 00 00 00 fe 00 00 00 00 00 fe fe 00 00 fe fb 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f9 f7 f5 00 00 f5 f5 f5 ................................
8be0 f5 f5 f5 f5 f5 f7 f5 f5 f5 00 03 63 18 00 02 75 01 00 03 50 11 00 05 55 81 5d 04 00 02 55 81 61 ...........c...u...P...U.]...U.a
8c00 aa 81 00 00 d7 81 00 00 de 81 00 00 f8 81 00 00 f9 81 00 00 02 82 00 00 0b 82 00 00 11 82 00 00 ................................
8c20 27 82 00 00 4a 82 00 00 6f 82 00 00 8f 82 00 00 b2 82 00 00 d0 82 00 00 f1 82 00 00 21 83 00 00 '...J...o...................!...
8c40 28 83 00 00 29 83 00 00 a1 86 00 00 a2 86 00 00 59 87 00 00 a4 87 00 00 f7 88 00 00 f8 88 00 00 (...)...........Y...............
8c60 f1 89 00 00 f2 89 00 00 0a 8a 00 00 0b 8a 00 00 14 8a 00 00 1d 8a 00 00 23 8a 00 00 37 8a 00 00 ........................#...7...
8c80 59 8a 00 00 7e 8a 00 00 9f 8a 00 00 c2 8a 00 00 f7 8a 00 00 1e 8b 00 00 35 8b 00 00 3c 8b 00 00 Y...~...................5...<...
8ca0 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 f0 00 fe 00 01 c0 ....!......!......!......!......
8cc0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe !......!......!......!......!...
8ce0 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 ...!......!......!......!......!
8d00 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 f0 00 fe 00 09 c0 21 f0 00 fe 00 ......!......!......!......!....
8d20 01 c0 21 f0 00 db 04 ff c0 21 ea 01 db 00 01 c0 21 fa 00 db 04 ff c0 21 ca 03 fe 00 01 c0 21 f0 ..!......!......!......!......!.
8d40 00 fe 00 03 c0 21 f0 00 fe 00 01 c0 21 f0 00 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 f0 00 fe 00 01 .....!......!......!......!.....
8d60 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 .!......!......!......!......!..
8d80 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 ....!......!......!......!......
8da0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 f0 00 00 00 00 00 00 20 00 00 0d 0b 11 68 01 13 98 !......!......!.............h...
8dc0 fe 0c 34 ff 01 00 08 00 00 01 00 00 00 01 00 68 01 00 00 00 00 00 00 b7 00 00 00 00 00 00 00 00 ..4............h................
8de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 03 00 00 01 00 00 27 ...............................'
8e00 3c 8b 00 00 b0 8d 00 00 b1 8d 00 00 39 8e 00 00 3a 8e 00 00 ec 8e 00 00 f3 8e 00 00 f4 8e 00 00 <...........9...:...............
8e20 19 8f 00 00 1a 8f 00 00 97 8f 00 00 98 8f 00 00 7d 96 00 00 2a 97 00 00 d1 97 00 00 b9 99 00 00 ................}...*...........
8e40 ba 99 00 00 eb 9a 00 00 ec 9a 00 00 ed 9a 00 00 fe 00 07 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 ....................!......!....
8e60 02 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 00 00 00 00 00 fe 00 02 c0 21 1b 01 fe 00 01 c0 21 1b ..!......!.............!......!.
8e80 01 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 f0 00 fe 00 02 c0 21 1b 01 fe 00 01 c0 21 1b 01 db 00 02 .....!......!......!......!.....
8ea0 c0 21 1b 01 db 00 02 c0 21 1b 01 db 00 03 c0 21 1b 01 db 00 06 c0 21 1b 01 fe 00 01 c0 21 1b 01 .!......!......!......!......!..
8ec0 fe 00 02 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ....!......!....................
8ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
8fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 0d 0a 11 68 01 13 98 ............................h...
8fc0 fe 0c 34 00 00 01 08 00 00 ff ff 00 00 01 00 68 01 00 00 00 00 00 00 2e 00 00 00 00 00 00 00 00 ..4............h................
8fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 02 00 00 01 00 00 13 ................................
9000 65 70 20 69 73 20 64 65 74 65 72 6d 69 6e 69 6e 67 20 69 66 20 74 68 65 20 73 65 72 76 65 72 20 ep.is.determining.if.the.server.
9020 73 75 70 70 6f 72 74 73 20 63 6f 6d 70 72 65 73 73 65 64 20 74 72 61 6e 73 66 65 72 73 2e 20 20 supports.compressed.transfers...
9040 54 68 69 73 20 69 73 20 61 20 70 72 6f 74 6f 63 6f 6c 20 6d 61 74 74 65 72 20 62 65 79 6f 6e 64 This.is.a.protocol.matter.beyond
9060 20 74 68 65 20 73 63 6f 70 65 20 6f 66 20 74 68 69 73 20 64 6f 63 75 6d 65 6e 74 2e 0d 53 65 63 .the.scope.of.this.document..Sec
9080 6f 6e 64 6c 79 2c 20 74 68 65 20 52 64 72 20 6d 75 73 74 20 71 75 65 72 79 20 66 69 6c 65 20 69 ondly,.the.Rdr.must.query.file.i
90a0 6e 66 6f 72 6d 61 74 69 6f 6e 20 28 71 75 65 72 79 69 6e 67 20 46 69 6c 65 43 6f 6d 70 72 65 73 nformation.(querying.FileCompres
90c0 73 69 6f 6e 49 6e 66 6f 72 6d 61 74 69 6f 6e 29 20 6f 6e 20 74 68 65 20 64 65 73 74 69 6e 61 74 sionInformation).on.the.destinat
90e0 69 6f 6e 20 66 69 6c 65 20 20 28 70 6f 73 73 69 62 6c 79 20 61 66 74 65 72 20 63 72 65 61 74 69 ion.file..(possibly.after.creati
9100 6e 67 20 69 74 29 20 74 6f 20 73 65 65 20 69 66 20 69 74 20 69 73 20 61 20 63 6f 6d 70 72 65 73 ng.it).to.see.if.it.is.a.compres
9120 73 65 64 20 66 69 6c 65 2e 0d 4e 65 78 74 2c 20 74 68 65 20 52 64 72 20 6d 75 73 74 20 76 65 72 sed.file..Next,.the.Rdr.must.ver
9140 69 66 79 20 69 66 20 74 68 65 20 43 6f 6d 70 72 65 73 73 69 6f 6e 46 6f 72 6d 61 74 41 6e 64 45 ify.if.the.CompressionFormatAndE
9160 6e 67 69 6e 65 20 69 73 20 73 75 70 70 6f 72 74 65 64 20 6f 6e 20 74 68 65 20 63 75 72 72 65 6e ngine.is.supported.on.the.curren
9180 74 20 6d 61 63 68 69 6e 65 2c 20 62 79 20 6d 61 6b 69 6e 67 20 61 20 71 75 69 63 6b 20 63 61 6c t.machine,.by.making.a.quick.cal
91a0 6c 20 74 6f 20 52 74 6c 47 65 74 43 6f 6d 70 72 65 73 73 69 6f 6e 57 6f 72 6b 53 70 61 63 65 53 l.to.RtlGetCompressionWorkSpaceS
91c0 69 7a 65 20 28 73 65 65 20 62 65 6c 6f 77 29 2e 0d 46 69 6e 61 6c 6c 79 2c 20 6f 6e 6c 79 20 69 ize.(see.below)..Finally,.only.i
91e0 66 20 74 68 65 20 61 6e 73 77 65 72 20 74 6f 20 61 6c 6c 20 74 68 72 65 65 20 6f 66 20 74 68 65 f.the.answer.to.all.three.of.the
9200 52 00 6f 00 6f 00 74 00 20 00 45 00 6e 00 74 00 72 00 79 00 00 00 00 00 00 00 00 00 00 00 00 00 R.o.o.t...E.n.t.r.y.............
9220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9240 16 00 05 00 ff ff ff ff ff ff ff ff 03 00 00 00 00 09 02 00 00 00 00 00 c0 00 00 00 00 00 00 46 ...............................F
9260 00 00 00 00 00 00 00 00 00 00 00 00 20 38 c4 bc bf 63 bb 01 4c 00 00 00 40 02 00 00 00 00 00 00 .............8...c..L...@.......
9280 01 00 43 00 6f 00 6d 00 70 00 4f 00 62 00 6a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ..C.o.m.p.O.b.j.................
92a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
92c0 12 00 02 01 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
92e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6e 00 00 00 00 00 00 00 ........................n.......
9300 57 00 6f 00 72 00 64 00 44 00 6f 00 63 00 75 00 6d 00 65 00 6e 00 74 00 00 00 00 00 00 00 00 00 W.o.r.d.D.o.c.u.m.e.n.t.........
9320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9340 1a 00 02 01 ff ff ff ff 04 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c 00 00 00 52 a9 00 00 00 00 00 00 ....................\...R.......
9380 4f 00 62 00 6a 00 65 00 63 00 74 00 50 00 6f 00 6f 00 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 O.b.j.e.c.t.P.o.o.l.............
93a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
93c0 16 00 01 01 01 00 00 00 02 00 00 00 ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
93e0 00 00 00 00 20 10 be 5d 93 63 bb 01 20 10 be 5d 93 63 bb 01 00 00 00 00 00 00 00 00 00 00 00 00 .......].c.....].c..............
9400 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9420 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 0d 00 00 00 0e 00 00 00 0f 00 00 00 10 00 00 00 ................................
9440 11 00 00 00 12 00 00 00 13 00 00 00 14 00 00 00 15 00 00 00 16 00 00 00 17 00 00 00 18 00 00 00 ................................
9460 19 00 00 00 1a 00 00 00 1b 00 00 00 1c 00 00 00 1d 00 00 00 1e 00 00 00 1f 00 00 00 20 00 00 00 ................................
9480 21 00 00 00 22 00 00 00 23 00 00 00 24 00 00 00 25 00 00 00 26 00 00 00 27 00 00 00 28 00 00 00 !..."...#...$...%...&...'...(...
94a0 29 00 00 00 2a 00 00 00 2b 00 00 00 2c 00 00 00 2d 00 00 00 2e 00 00 00 2f 00 00 00 30 00 00 00 )...*...+...,...-......./...0...
94c0 31 00 00 00 32 00 00 00 33 00 00 00 64 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 1...2...3...d...................
94e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9500 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9520 4a 00 00 00 fd ff ff ff fe ff ff ff fe ff ff ff 4d 00 00 00 fe ff ff ff 4f 00 00 00 50 00 00 00 J...............M.......O...P...
9540 51 00 00 00 52 00 00 00 53 00 00 00 54 00 00 00 55 00 00 00 56 00 00 00 57 00 00 00 58 00 00 00 Q...R...S...T...U...V...W...X...
9560 59 00 00 00 5a 00 00 00 5b 00 00 00 fe ff ff ff 5d 00 00 00 5e 00 00 00 5f 00 00 00 60 00 00 00 Y...Z...[.......]...^..._...`...
9580 61 00 00 00 62 00 00 00 63 00 00 00 0c 00 00 00 65 00 00 00 66 00 00 00 67 00 00 00 68 00 00 00 a...b...c.......e...f...g...h...
95a0 69 00 00 00 6a 00 00 00 6b 00 00 00 6c 00 00 00 72 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff i...j...k...l...r...............
95c0 ff ff ff ff ff ff ff ff 73 00 00 00 74 00 00 00 75 00 00 00 76 00 00 00 77 00 00 00 78 00 00 00 ........s...t...u...v...w...x...
95e0 79 00 00 00 7a 00 00 00 7b 00 00 00 7c 00 00 00 7d 00 00 00 7e 00 00 00 7f 00 00 00 4e 00 00 00 y...z...{...|...}...~.......N...
9600 05 00 53 00 75 00 6d 00 6d 00 61 00 72 00 79 00 49 00 6e 00 66 00 6f 00 72 00 6d 00 61 00 74 00 ..S.u.m.m.a.r.y.I.n.f.o.r.m.a.t.
9620 69 00 6f 00 6e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 i.o.n...........................
9640 28 00 02 00 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (...............................
9660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 81 01 00 00 00 00 00 00 ................................
9680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
96a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
96c0 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
96e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9740 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
97a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
97c0 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
97e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9800 01 00 00 00 fe ff ff ff 03 00 00 00 04 00 00 00 05 00 00 00 06 00 00 00 07 00 00 00 08 00 00 00 ................................
9820 fe ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9840 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9860 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9880 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
98a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
98c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
98e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9900 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9920 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9940 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9960 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9980 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
99a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
99c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
99e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
9a00 01 00 fe ff 03 0a 00 00 ff ff ff ff 00 09 02 00 00 00 00 00 c0 00 00 00 00 00 00 46 1c 00 00 00 ...........................F....
9a20 4d 69 63 72 6f 73 6f 66 74 20 57 6f 72 64 20 36 2e 30 20 44 6f 63 75 6d 65 6e 74 00 0a 00 00 00 Microsoft.Word.6.0.Document.....
9a40 4d 53 57 6f 72 64 44 6f 63 00 10 00 00 00 57 6f 72 64 2e 44 6f 63 75 6d 65 6e 74 2e 36 00 f4 39 MSWordDoc.....Word.Document.6..9
9a60 b2 71 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .q..............................
9a80 fe ff 00 00 04 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 85 9f f2 ................................
9aa0 f9 4f 68 10 ab 91 08 00 2b 27 b3 d9 30 00 00 00 51 01 00 00 0b 00 00 00 07 00 00 00 98 00 00 00 .Oh.....+'..0...Q...............
9ac0 02 00 00 00 c1 00 00 00 04 00 00 00 df 00 00 00 08 00 00 00 f2 00 00 00 01 00 00 00 05 01 00 00 ................................
9ae0 0f 00 00 00 0b 01 00 00 10 00 00 00 13 01 00 00 12 00 00 00 1b 01 00 00 0e 00 00 00 36 01 00 00 ............................6...
9b00 09 00 00 00 3e 01 00 00 13 00 00 00 49 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ....>.......I...................
9b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9b40 00 00 00 00 00 00 00 00 1e 00 00 00 21 00 00 00 44 3a 5c 77 6f 72 64 36 30 2e 6e 74 5c 54 45 4d ............!...D:\word60.nt\TEM
9b60 50 4c 41 54 45 5c 4e 6f 72 6d 61 6c 2e 64 6f 74 00 1e 00 00 00 16 00 00 00 57 69 6e 64 6f 77 73 PLATE\Normal.dot.........Windows
9b80 20 4e 54 20 42 61 73 65 20 47 72 6f 75 70 00 1e 00 00 00 0b 00 00 00 54 6f 6d 20 4d 69 6c 6c 65 .NT.Base.Group.........Tom.Mille
9ba0 72 00 1e 00 00 00 0b 00 00 00 54 6f 6d 20 4d 69 6c 6c 65 72 00 02 00 00 00 e4 04 03 00 00 00 79 r.........Tom.Miller...........y
9bc0 0f 00 00 03 00 00 00 b7 50 00 00 1e 00 00 00 13 00 00 00 4d 69 63 72 6f 73 6f 66 74 20 57 6f 72 ........P..........Microsoft.Wor
9be0 64 20 36 2e 30 00 03 00 00 00 0d 00 00 00 1e 00 00 00 03 00 00 00 33 34 00 03 00 00 00 00 00 00 d.6.0.................34........
9c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9e00 20 61 6c 6c 20 66 69 65 6c 64 73 20 62 75 74 20 4e 75 6d 62 65 72 4f 66 43 68 75 6e 6b 73 20 61 .all.fields.but.NumberOfChunks.a
9e20 6e 64 20 43 6f 6d 70 72 65 73 73 65 64 43 68 75 6e 6b 53 69 7a 65 73 2e 0d 0d 57 6f 72 6b 53 70 nd.CompressedChunkSizes...WorkSp
9e40 61 63 65 20 6d 75 73 74 20 62 65 20 61 20 62 75 66 66 65 72 20 77 68 6f 73 65 20 73 69 7a 65 20 ace.must.be.a.buffer.whose.size.
9e60 69 73 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 73 69 7a 65 20 72 65 74 75 72 6e 65 64 20 69 6e is.equal.to.the.size.returned.in
9e80 20 43 6f 6d 70 72 65 73 73 42 75 66 66 65 72 57 6f 72 6b 53 70 61 63 65 53 69 7a 65 20 66 72 6f .CompressBufferWorkSpaceSize.fro
9ea0 6d 20 74 68 65 20 63 61 6c 6c 20 74 6f 20 52 74 6c 47 65 74 43 6f 6d 70 72 65 73 73 69 6f 6e 57 m.the.call.to.RtlGetCompressionW
9ec0 6f 72 6b 53 70 61 63 65 53 69 7a 65 2e 20 20 49 74 20 6d 61 79 20 62 65 20 70 61 67 65 64 20 6f orkSpaceSize...It.may.be.paged.o
9ee0 72 20 6e 6f 6e 70 61 67 65 64 2e 0d 31 33 02 00 99 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 r.nonpaged..13..................
9f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
9fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a000 df 83 00 00 04 84 00 00 5e 84 00 00 b8 84 00 00 12 85 00 00 40 85 00 00 9a 85 00 00 b7 85 00 00 ........^...........@...........
a020 c4 85 00 00 d9 85 00 00 13 86 00 00 54 86 00 00 a1 86 00 00 a2 86 00 00 fc 86 00 00 39 87 00 00 ............T...............9...
a040 41 87 00 00 4d 87 00 00 58 87 00 00 59 87 00 00 5d 87 00 00 64 87 00 00 a3 87 00 00 a4 87 00 00 A...M...X...Y...]...d...........
a060 de 87 00 00 38 88 00 00 5e 88 00 00 7f 88 00 00 a6 88 00 00 e8 88 00 00 f5 88 00 00 f6 88 00 00 ....8...^.......................
a080 f7 88 00 00 f8 88 00 00 52 89 00 00 8c 89 00 00 e6 89 00 00 f0 89 00 00 f1 89 00 00 f2 89 00 00 ........R.......................
a0a0 09 8a 00 00 0a 8a 00 00 0b 8a 00 00 3b 8b 00 00 3c 8b 00 00 77 8b 00 00 8b 8b 00 00 e8 8b 00 00 ............;...<...w...........
a0c0 0e 8c 00 00 31 8c 00 00 35 8c 00 00 42 8c 00 00 43 8c 00 00 49 8c 00 00 4a 8c 00 00 67 8c 00 00 ....1...5...B...C...I...J...g...
a0e0 73 8c 00 00 a6 8c 00 00 b5 8c 00 00 dc 8c 00 00 e2 8c 00 00 02 8d 00 00 04 8d 00 00 5e 8d 00 00 s...........................^...
a100 af 8d 00 00 b0 8d 00 00 b1 8d 00 00 db 8d 00 00 dc 8d 00 00 f3 8d 00 00 fb 8d 00 00 3a 8e 00 00 ............................:...
a120 63 8e 00 00 6c 8e 00 00 81 8e 00 00 89 8e 00 00 b1 8e 00 00 cc 8e 00 00 cf 8e 00 00 eb 8e 00 00 c...l...........................
a140 ec 8e 00 00 ee 8e 00 00 f2 8e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 fe 00 ................................
a160 00 00 fe 00 00 00 00 00 00 00 00 fe 00 00 00 00 00 fe fe 00 00 fe fb 00 00 00 00 00 00 00 00 00 ................................
a180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f9 f7 00 00 ................................
a1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 75 01 00 03 50 11 00 05 55 81 5d 04 00 02 55 81 52 ...............u...P...U.]...U.R
a200 aa 81 00 00 d7 81 00 00 de 81 00 00 f8 81 00 00 f9 81 00 00 02 82 00 00 0b 82 00 00 11 82 00 00 ................................
a220 27 82 00 00 4a 82 00 00 6f 82 00 00 8f 82 00 00 b2 82 00 00 d0 82 00 00 f1 82 00 00 21 83 00 00 '...J...o...................!...
a240 28 83 00 00 29 83 00 00 a1 86 00 00 a2 86 00 00 59 87 00 00 a4 87 00 00 f7 88 00 00 f8 88 00 00 (...)...........Y...............
a260 f1 89 00 00 f2 89 00 00 0a 8a 00 00 0b 8a 00 00 14 8a 00 00 1d 8a 00 00 23 8a 00 00 37 8a 00 00 ........................#...7...
a280 59 8a 00 00 7e 8a 00 00 9f 8a 00 00 c2 8a 00 00 f7 8a 00 00 1e 8b 00 00 35 8b 00 00 3c 8b 00 00 Y...~...................5...<...
a2a0 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 f0 00 fe 00 01 c0 ....!......!......!......!......
a2c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe !......!......!......!......!...
a2e0 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 ...!......!......!......!......!
a300 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 f0 00 fe 00 09 c0 21 f0 00 fe 00 ......!......!......!......!....
a320 01 c0 21 f0 00 db 04 ff c0 21 ea 01 db 00 01 c0 21 fa 00 db 04 ff c0 21 ca 03 fe 00 01 c0 21 f0 ..!......!......!......!......!.
a340 00 fe 00 03 c0 21 f0 00 fe 00 01 c0 21 f0 00 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 f0 00 fe 00 01 .....!......!......!......!.....
a360 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 .!......!......!......!......!..
a380 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 ....!......!......!......!......
a3a0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 f0 00 00 00 00 00 00 20 00 00 0d 0b 11 68 01 13 98 !......!......!.............h...
a3c0 fe 0c 34 ff 01 00 08 00 00 01 00 00 00 01 00 68 01 00 00 00 00 00 00 b7 00 00 00 00 00 00 00 00 ..4............h................
a3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 03 00 00 01 00 00 27 ...............................'
a400 3c 8b 00 00 b0 8d 00 00 b1 8d 00 00 39 8e 00 00 3a 8e 00 00 ec 8e 00 00 fe 00 07 c0 21 f0 00 fe <...........9...:...........!...
a420 00 01 c0 21 f0 00 fe 00 02 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 00 00 00 00 00 00 00 00 00 00 ...!......!......!..............
a440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
a5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 05 ................................
a600 00 00 00 00 b4 00 00 00 9a 69 00 00 06 00 ff ff ff ff 07 00 ff ff ff ff 06 00 ee 8e 00 00 07 00 .........i......................
a620 ff ff ff ff 0d 00 04 21 ff ff 01 00 00 21 ff ff 02 00 04 21 ff ff 03 00 00 21 ff ff 04 00 04 21 .......!.....!.....!.....!.....!
a640 ff ff 05 00 00 21 ff ff 06 00 04 21 ff ff 07 00 00 21 ff ff 08 00 04 21 ff ff 09 00 00 20 ff ff .....!.....!.....!.....!........
a660 0a 00 04 20 ff ff 0b 00 00 20 ff ff 0c 00 06 20 ff ff 0d 00 00 00 00 00 b4 00 00 00 d1 0c 00 00 ................................
a680 6e 17 00 00 c3 21 00 00 62 29 00 00 49 33 00 00 65 3b 00 00 1c 45 00 00 64 4c 00 00 51 52 00 00 n....!..b)..I3..e;...E..dL..QR..
a6a0 32 5b 00 00 e1 64 00 00 9a 69 00 00 00 00 00 00 00 00 01 00 24 00 00 00 02 00 a1 01 00 00 03 00 2[...d...i..........$...........
a6c0 3e 00 00 00 04 00 01 00 00 00 05 00 89 00 00 00 06 00 57 02 00 00 07 00 bd 00 00 00 08 00 1c 01 >.................W.............
a6e0 00 00 09 00 01 00 00 00 0a 00 ed 00 00 00 0b 00 23 00 00 00 0c 00 00 00 00 00 97 00 00 00 b4 00 ................#...............
a700 00 00 d0 0c 00 00 d1 0c 00 00 33 0f 00 00 ba 12 00 00 49 14 00 00 4a 14 00 00 dc 14 00 00 5b 19 ..........3.......I...J.......[.
a720 00 00 9a 19 00 00 dc 1a 00 00 bf 1b 00 00 25 2b 00 00 26 2b 00 00 63 2d 00 00 bd 30 00 00 84 32 ..............%+..&+..c-...0...2
a740 00 00 85 32 00 00 98 32 00 00 d2 33 00 00 d3 33 00 00 ec 33 00 00 21 37 00 00 22 37 00 00 4b 37 ...2...2...3...3...3..!7.."7..K7
a760 00 00 bb 37 00 00 d0 37 00 00 e6 37 00 00 fc 37 00 00 b7 38 00 00 be 38 00 00 bf 38 00 00 b3 3a ...7...7...7...7...8...8...8...:
a780 00 00 b4 3a 00 00 64 3b 00 00 65 3b 00 00 bc 3d 00 00 bd 3d 00 00 ba 3e 00 00 bb 3e 00 00 e5 3e ...:..d;..e;...=...=...>...>...>
a7a0 00 00 e6 3e 00 00 57 3f 00 00 6c 3f 00 00 82 3f 00 00 97 3f 00 00 51 40 00 00 58 40 00 00 59 40 ...>..W?..l?...?...?..Q@..X@..Y@
a7c0 00 00 c2 42 00 00 c3 42 00 00 75 43 00 00 76 43 00 00 d9 45 00 00 da 45 00 00 ad 46 00 00 ae 46 ...B...B..uC..vC...E...E...F...F
a7e0 00 00 de 46 00 00 df 46 00 00 74 47 00 00 7b 47 00 00 7c 47 00 00 99 48 00 00 9a 48 00 00 cb 48 ...F...F..tG..{G..|G...H...H...H
a800 00 00 cc 48 00 00 d4 48 00 00 a7 49 00 00 ae 49 00 00 af 49 00 00 66 4b 00 00 67 4b 00 00 3a 4c ...H...H...I...I...I..fK..gK..:L
a820 00 00 3b 4c 00 00 80 4d 00 00 b3 4d 00 00 14 55 00 00 15 55 00 00 47 5a 00 00 48 5a 00 00 6d 5a ..;L...M...M...U...U..GZ..HZ..mZ
a840 00 00 6e 5a 00 00 77 5a 00 00 80 5a 00 00 86 5a 00 00 a7 5a 00 00 d1 5a 00 00 fd 5a 00 00 2a 5b ..nZ..wZ...Z...Z...Z...Z...Z..*[
a860 00 00 31 5b 00 00 32 5b 00 00 1f 5c 00 00 20 5c 00 00 3a 5c 00 00 3b 5c 00 00 44 5c 00 00 4d 5c ..1[..2[...\...\..:\..;\..D\..M\
a880 00 00 53 5c 00 00 69 5c 00 00 8c 5c 00 00 b1 5c 00 00 d1 5c 00 00 f4 5c 00 00 12 5d 00 00 33 5d ..S\..i\...\...\...\...\...]..3]
a8a0 00 00 63 5d 00 00 6a 5d 00 00 6b 5d 00 00 e3 60 00 00 e4 60 00 00 9b 61 00 00 e6 61 00 00 39 63 ..c]..j]..k]...`...`...a...a..9c
a8c0 00 00 3a 63 00 00 33 64 00 00 34 64 00 00 4c 64 00 00 4d 64 00 00 56 64 00 00 5f 64 00 00 65 64 ..:c..3d..4d..Ld..Md..Vd.._d..ed
a8e0 00 00 79 64 00 00 9b 64 00 00 c0 64 00 00 e1 64 00 00 04 65 00 00 39 65 00 00 60 65 00 00 77 65 ..yd...d...d...d...e..9e..`e..we
a900 00 00 7e 65 00 00 7f 65 00 00 f3 67 00 00 f4 67 00 00 7c 68 00 00 7d 68 00 00 9a 69 00 00 00 01 ..~e...e...g...g..|h..}h...i....
a920 c0 21 1b 01 00 01 c0 21 4b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 05 c0 21 .!.....!K....!.....!.....!.....!
a940 1b 01 00 01 c0 21 f0 00 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 .....!.....!.....!.....!.....!..
a960 00 01 c0 21 1b 01 04 ff c0 21 13 15 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 0a c0 21 1b 01 00 04 ...!.....!.....!.....!.....!....
a980 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 4b 01 00 04 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 .!.....!.....!K....!.....!.....!
a9a0 1b 01 00 08 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
a9c0 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 06 ...!.....!.....!.....!.....!....
a9e0 c0 21 1b 01 00 01 c0 21 1b 01 00 03 c0 21 1b 01 00 01 c0 21 1b 01 00 08 c0 21 1b 01 00 01 c0 21 .!.....!.....!.....!.....!.....!
aa00 1b 01 00 03 c0 21 1b 01 00 01 c0 21 eb 00 00 01 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
aa20 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 ...!.....!.....!.....!.....!....
aa40 c0 21 eb 00 00 07 c0 21 1b 01 00 01 c0 21 f0 00 00 03 c0 21 1b 01 00 01 c0 21 1b 01 00 08 c0 21 .!.....!.....!.....!.....!.....!
aa60 1b 01 00 01 c0 21 1b 01 00 03 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 1b 01 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
aa80 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 04 c0 21 1b 01 00 01 c0 21 eb 00 00 01 ...!.....!.....!.....!.....!....
aaa0 c0 21 1b 01 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 .!.....!.....!.....!.....!.....!
aac0 eb 00 00 06 c0 21 1b 01 00 01 c0 21 eb 00 00 03 c0 21 1b 01 00 01 c0 21 eb 00 00 01 c0 21 1b 01 .....!.....!.....!.....!.....!..
aae0 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 ...!.....!.....!.....!.....!....
ab00 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 .!.....!.....!.....!.....!.....!
ab20 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 f0 00 .....!.....!.....!.....!.....!..
ab40 00 03 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 eb 00 00 01 ...!.....!.....!.....!.....!....
ab60 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 .!.....!.....!.....!.....!.....!
ab80 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
aba0 00 01 c0 21 f0 00 00 09 c0 21 f0 00 00 01 c0 21 f0 00 04 ff c0 21 ea 01 00 01 c0 21 fa 00 04 ff ...!.....!.....!.....!.....!....
abc0 c0 21 ca 03 00 01 c0 21 f0 00 00 03 c0 21 f0 00 00 01 c0 21 f0 00 00 01 c0 21 1b 01 00 01 c0 21 .!.....!.....!.....!.....!.....!
abe0 f0 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
ac00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 ...!.....!.....!.....!.....!....
ac20 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 f0 00 00 07 c0 21 f0 00 00 01 c0 21 f0 00 00 02 c0 21 .!.....!.....!.....!.....!.....!
ac40 f0 00 00 01 c0 21 f0 00 00 00 00 00 00 00 00 00 00 00 3d 00 00 00 69 00 00 00 6c 00 00 00 00 03 .....!............=...i...l.....
ac60 00 00 f4 5f 00 00 df 83 00 00 f2 8e 00 00 33 00 34 00 48 00 00 03 00 00 2f 0b 00 00 7a 25 00 00 ..._..........3.4.H...../...z%..
ac80 44 2b 00 00 d7 3a 00 00 5c 43 00 00 71 4e 00 00 80 55 00 00 f4 5f 00 00 aa 81 00 00 3c 8b 00 00 D+...:..\C..qN...U..._......<...
aca0 ec 8e 00 00 35 00 36 00 37 00 38 00 39 00 3a 00 3b 00 3c 00 3d 00 49 00 4a 00 1e 00 07 55 6e 6b ....5.6.7.8.9.:.;.<.=.I.J....Unk
acc0 6e 6f 77 6e 00 00 0f 4c 6f 6e 6e 79 20 4d 63 4d 69 63 68 61 65 6c 01 00 30 00 00 00 37 00 00 00 nown...Lonny.McMichael..0...7...
ace0 3a 00 00 00 6c 00 00 00 13 21 14 ff 15 80 1e 00 0a 54 6f 6d 20 4d 69 6c 6c 65 72 10 44 3a 5c 54 :...l....!.......Tom.Miller.D:\T
ad00 5c 43 4d 50 57 49 52 45 2e 44 4f 43 ff 40 5c 5c 47 41 52 59 4b 49 5c 68 70 6c 6a 69 69 69 00 4e \CMPWIRE.DOC.@\\GARYKI\hpljiii.N
ad20 65 30 30 3a 00 77 69 6e 73 70 6f 6f 6c 00 48 50 20 4c 61 73 65 72 4a 65 74 20 49 49 49 00 5c 5c e00:.winspool.HP.LaserJet.III.\\
ad40 47 41 52 59 4b 49 5c 68 70 6c 6a 69 69 69 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 04 GARYKI\hpljiii..................
ad60 01 03 9c 00 70 00 03 43 01 00 01 00 01 00 00 00 00 00 00 00 01 00 0f 00 00 00 02 00 01 00 00 00 ....p..C........................
ad80 02 00 00 00 4c 65 74 74 65 72 00 00 01 00 00 00 00 00 00 00 01 00 0f 00 00 00 02 00 01 00 00 00 ....Letter......................
ada0 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
adc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 ff ff ff ff ................................
ade0 21 03 00 00 00 00 00 00 ff ff ff ff ff ff ff ff 01 00 00 00 00 00 00 00 ff ff 03 00 ff ff ff ff !...............................
ae00 01 00 ff ff 00 00 00 00 00 00 ff ff 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
ae20 ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 18 00 00 00 00 00 10 27 10 27 10 27 00 00 .........................'.'.'..
ae40 10 27 00 00 00 00 00 00 00 00 5c 5c 47 41 52 59 4b 49 5c 68 70 6c 6a 69 69 69 00 00 00 00 00 00 .'........\\GARYKI\hpljiii......
ae60 00 00 00 00 00 00 00 00 00 00 01 04 01 03 9c 00 70 00 03 43 01 00 01 00 01 00 00 00 00 00 00 00 ................p..C............
ae80 01 00 0f 00 00 00 02 00 01 00 00 00 02 00 00 00 4c 65 74 74 65 72 00 00 01 00 00 00 00 00 00 00 ................Letter..........
aea0 01 00 0f 00 00 00 02 00 01 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
aee0 00 00 00 00 00 00 20 00 ff ff ff ff 21 03 00 00 00 00 00 00 ff ff ff ff ff ff ff ff 01 00 00 00 ............!...................
af00 00 00 00 00 ff ff 03 00 ff ff ff ff 01 00 ff ff 00 00 00 00 00 00 ff ff 00 00 00 00 ff ff ff ff ................................
af20 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 18 00 ................................
af40 00 00 00 00 10 27 10 27 10 27 00 00 10 27 00 00 00 00 00 00 00 00 03 80 01 00 9f 61 00 00 9f 61 .....'.'.'...'.............a...a
af60 00 00 08 00 01 00 01 00 9f 61 00 00 00 00 00 00 9f 61 00 00 01 04 00 02 00 00 53 02 ec 08 00 00 .........a.......a........S.....
af80 00 00 00 00 57 2f 00 00 58 2f 00 00 bb 30 00 00 33 31 00 00 0a 33 00 00 b2 34 00 00 bb 34 00 00 ....W/..X/...0..31...3...4...4..
afa0 04 35 00 00 24 35 00 00 4d 35 00 00 57 35 00 00 65 35 00 00 77 35 00 00 78 35 00 00 c8 37 00 00 .5..$5..M5..W5..e5..w5..x5...7..
afc0 fb 37 00 00 fc 37 00 00 00 38 00 00 09 38 00 00 13 38 00 00 29 39 00 00 5b 39 00 00 a9 39 00 00 .7...7...8...8...8..)9..[9...9..
afe0 f6 39 00 00 4f 3a 00 00 b2 3a 00 00 b4 3a 00 00 0e 3b 00 00 47 3b 00 00 48 3b 00 00 63 3b 00 00 .9..O:...:...:...;..G;..H;..c;..
b000 65 3b 00 00 6e 3b 00 00 7f 3b 00 00 67 3d 00 00 bb 3d 00 00 bc 3d 00 00 bd 3d 00 00 64 3f 00 00 e;..n;...;..g=...=...=...=..d?..
b020 96 3f 00 00 97 3f 00 00 a4 3f 00 00 ae 3f 00 00 d2 40 00 00 23 41 00 00 3c 41 00 00 4c 41 00 00 .?...?...?...?...@..#A..<A..LA..
b040 5e 41 00 00 7b 41 00 00 a3 41 00 00 ae 41 00 00 c8 41 00 00 ed 41 00 00 f0 41 00 00 f4 41 00 00 ^A..{A...A...A...A...A...A...A..
b060 fa 41 00 00 07 42 00 00 0c 42 00 00 0f 42 00 00 12 42 00 00 c2 42 00 00 c3 42 00 00 1b 43 00 00 .A...B...B...B...B...B...B...C..
b080 21 43 00 00 52 43 00 00 58 43 00 00 59 43 00 00 74 43 00 00 76 43 00 00 7f 43 00 00 85 43 00 00 !C..RC..XC..YC..tC..vC...C...C..
b0a0 91 43 00 00 81 45 00 00 d8 45 00 00 d9 45 00 00 da 45 00 00 ae 46 00 00 b3 46 00 00 df 46 00 00 .C...E...E...E...E...F...F...F..
b0c0 e6 46 00 00 3e 48 00 00 98 48 00 00 9a 48 00 00 9f 48 00 00 b8 48 00 00 cc 48 00 00 3b 4c 00 00 .F..>H...H...H...H...H...H..;L..
b0e0 6d 5a 00 00 6e 5a 00 00 30 5b 00 00 31 5b 00 00 a6 5b 00 00 00 5c 00 00 1e 5c 00 00 20 5c 00 00 mZ..nZ..0[..1[...[...\...\...\..
b100 3a 5c 00 00 3b 5c 00 00 6a 5d 00 00 6b 5d 00 00 c5 5d 00 00 eb 5d 00 00 11 5e 00 00 20 5e 00 00 :\..;\..j]..k]...]...]...^...^..
b120 21 5e 00 00 46 5e 00 00 a0 5e 00 00 fa 5e 00 00 54 5f 00 00 82 5f 00 00 dc 5f 00 00 f9 5f 00 00 !^..F^...^...^..T_..._..._..._..
b140 06 60 00 00 1b 60 00 00 55 60 00 00 96 60 00 00 e3 60 00 00 e4 60 00 00 3e 61 00 00 7b 61 00 00 .`...`..U`...`...`...`..>a..{a..
b160 83 61 00 00 8f 61 00 00 9a 61 00 00 9b 61 00 00 9f 61 00 00 a6 61 00 00 e5 61 00 00 e6 61 00 00 .a...a...a...a...a...a...a...a..
b180 20 62 00 00 7a 62 00 00 a0 62 00 00 c1 62 00 00 e8 62 00 00 2a 63 00 00 37 63 00 00 38 63 00 00 .b..zb...b...b...b..*c..7c..8c..
b1a0 39 63 00 00 3a 63 00 00 94 63 00 00 ce 63 00 00 28 64 00 00 32 64 00 00 33 64 00 00 34 64 00 00 9c..:c...c...c..(d..2d..3d..4d..
b1c0 4b 64 00 00 4c 64 00 00 4d 64 00 00 7d 65 00 00 7e 65 00 00 7f 65 00 00 ba 65 00 00 ce 65 00 00 Kd..Ld..Md..}e..~e...e...e...e..
b1e0 2b 66 00 00 51 66 00 00 74 66 00 00 78 66 00 00 85 66 00 00 86 66 00 00 8c 66 00 00 8d 66 00 00 +f..Qf..tf..xf...f...f...f...f..
b200 aa 66 00 00 b6 66 00 00 e9 66 00 00 f8 66 00 00 1f 67 00 00 25 67 00 00 45 67 00 00 47 67 00 00 .f...f...f...f...g..%g..Eg..Gg..
b220 a1 67 00 00 f2 67 00 00 f3 67 00 00 f4 67 00 00 1e 68 00 00 1f 68 00 00 36 68 00 00 3e 68 00 00 .g...g...g...g...h...h..6h..>h..
b240 7d 68 00 00 a6 68 00 00 af 68 00 00 c4 68 00 00 cc 68 00 00 f4 68 00 00 0f 69 00 00 12 69 00 00 }h...h...h...h...h...h...i...i..
b260 2e 69 00 00 2f 69 00 00 67 69 00 00 69 69 00 00 98 69 00 00 99 69 00 00 9a 69 00 00 60 00 00 03 .i../i..gi..ii...i...i...i..`...
b280 00 00 00 00 61 00 7a 64 00 00 00 00 61 00 58 32 00 00 00 00 60 00 f6 33 00 00 00 00 60 00 81 34 ....a.zd....a.X2....`..3....`..4
b2a0 00 00 00 00 60 00 6a 36 00 00 00 00 61 00 1a 38 00 00 00 00 61 00 2a 38 00 00 00 00 61 00 7b 64 ....`.j6....a..8....a.*8....a.{d
b2c0 00 00 00 00 61 00 9b 64 00 00 00 00 61 00 c4 64 00 00 00 00 61 00 ce 64 00 00 00 00 61 00 dc 64 ....a..d....a..d....a..d....a..d
b2e0 00 00 00 00 61 00 ee 64 00 00 00 00 60 00 73 38 00 00 00 00 60 00 cf 3a 00 00 00 00 60 00 ef 64 ....a..d....`.s8....`..:....`..d
b300 00 00 00 00 61 00 f0 64 00 00 00 00 61 00 f4 64 00 00 00 00 61 00 fd 64 00 00 00 00 60 00 02 3b ....a..d....a..d....a..d....`..;
b320 00 00 00 00 61 00 24 3c 00 00 00 00 61 00 07 65 00 00 00 00 61 00 55 65 00 00 00 00 61 00 56 3c ....a.$<....a..e....a.Ue....a.V<
b340 00 00 00 00 61 00 dd 3c 00 00 00 00 60 00 a2 65 00 00 00 00 61 00 a4 65 00 00 00 00 61 00 4a 7d ....a..<....`..e....a..e....a.J}
b360 00 00 00 00 61 00 83 7d 00 00 00 00 61 00 84 7d 00 00 00 00 60 00 40 3d 00 00 00 00 61 00 87 44 ....a..}....a..}....`.@=....a..D
b380 00 00 00 00 61 00 9f 7d 00 00 00 00 61 00 90 44 00 00 00 00 61 00 b0 7d 00 00 00 00 60 00 04 7e ....a..}....a..D....a..}....`..~
b3a0 00 00 00 00 60 00 05 7e 00 00 00 00 60 00 42 3d 00 00 00 00 60 00 f5 3e 00 00 00 00 60 00 06 7e ....`..~....`.B=....`..>....`..~
b3c0 00 00 00 00 61 00 07 7e 00 00 00 00 61 00 14 7e 00 00 00 00 60 00 27 3f 00 00 00 00 61 00 57 40 ....a..~....a..~....`.'?....a.W@
b3e0 00 00 00 00 61 00 1e 7e 00 00 00 00 61 00 37 7e 00 00 00 00 61 00 47 7e 00 00 00 00 61 00 59 7e ....a..~....a.7~....a.G~....a.Y~
b400 00 00 00 00 61 00 76 7e 00 00 00 00 61 00 9e 7e 00 00 00 00 61 00 a9 7e 00 00 00 00 61 00 c3 7e ....a.v~....a..~....a..~....a..~
b420 00 00 00 00 61 00 e8 7e 00 00 00 00 61 00 a9 40 00 00 00 00 61 00 eb 7e 00 00 00 00 61 00 b2 40 ....a..~....a..@....a..~....a..@
b440 00 00 00 00 61 00 f1 7e 00 00 00 00 61 00 bf 40 00 00 00 00 61 00 f6 7e 00 00 00 00 60 00 ce 40 ....a..~....a..@....a..~....`..@
b460 00 00 00 00 60 00 7e 41 00 00 00 00 61 00 f9 7e 00 00 00 00 61 00 51 7f 00 00 00 00 61 00 57 7f ....`.~A....a..~....a.Q.....a.W.
b480 00 00 00 00 61 00 88 7f 00 00 00 00 61 00 8e 7f 00 00 00 00 61 00 8f 7f 00 00 00 00 60 00 40 3d ....a.......a.......a.......`.@=
b4a0 00 00 00 00 61 00 6c 4b 00 00 00 00 61 00 aa 7f 00 00 00 00 61 00 b0 7f 00 00 00 00 61 00 75 4b ....a.lK....a.......a.......a.uK
b4c0 00 00 00 00 61 00 bc 7f 00 00 00 00 60 00 65 4d 00 00 00 00 60 00 13 80 00 00 00 00 60 00 7f 41 ....a.......`.eM....`.......`..A
b4e0 00 00 00 00 61 00 14 80 00 00 00 00 60 00 77 47 00 00 00 00 61 00 19 80 00 00 00 00 60 00 a7 47 ....a.......`.wG....a.......`..G
b500 00 00 00 00 61 00 20 80 00 00 00 00 60 00 ff 48 00 00 00 00 61 00 7a 80 00 00 00 00 61 00 7f 80 ....a.......`..H....a.z.....a...
b520 00 00 00 00 60 00 8f 47 00 00 00 00 60 00 3c 4e 00 00 00 00 60 00 e7 51 00 00 00 00 60 00 1a 81 ....`..G....`.<N....`..Q....`...
b540 00 00 00 00 60 00 1b 81 00 00 00 00 60 00 dd 81 00 00 00 00 60 00 19 60 00 00 00 00 61 00 9f 80 ....`.......`.......`..`....a...
b560 00 00 00 00 61 00 f9 80 00 00 00 00 60 00 8e 60 00 00 00 00 60 00 de 81 00 00 00 00 60 00 f8 81 ....a.......`..`....`.......`...
b580 00 00 00 00 60 00 f9 81 00 00 00 00 60 00 28 83 00 00 00 00 61 00 29 83 00 00 00 00 61 00 83 83 ....`.......`.(.....a.).....a...
b5a0 00 00 00 00 61 00 a9 83 00 00 00 00 61 00 cf 83 00 00 00 00 61 00 de 83 00 00 00 00 61 00 df 83 ....a.......a.......a.......a...
b5c0 00 00 00 00 61 00 04 84 00 00 00 00 61 00 5e 84 00 00 00 00 61 00 b8 84 00 00 00 00 61 00 12 85 ....a.......a.^.....a.......a...
b5e0 00 00 00 00 61 00 40 85 00 00 00 00 61 00 9a 85 00 00 00 00 61 00 b7 85 00 00 00 00 61 00 c4 85 ....a.@.....a.......a.......a...
b600 00 00 00 00 61 00 d9 85 00 00 00 00 61 00 13 86 00 00 00 00 60 00 54 86 00 00 00 00 60 00 a1 86 ....a.......a.......`.T.....`...
b620 00 00 00 00 61 00 a2 86 00 00 00 00 61 00 fc 86 00 00 00 00 61 00 39 87 00 00 00 00 61 00 41 87 ....a.......a.......a.9.....a.A.
b640 00 00 00 00 61 00 4d 87 00 00 00 00 60 00 58 87 00 00 00 00 61 00 59 87 00 00 00 00 61 00 5d 87 ....a.M.....`.X.....a.Y.....a.].
b660 00 00 00 00 61 00 64 87 00 00 00 00 60 00 a3 87 00 00 00 00 61 00 a4 87 00 00 00 00 61 00 de 87 ....a.d.....`.......a.......a...
b680 00 00 00 00 61 00 38 88 00 00 00 00 61 00 5e 88 00 00 00 00 61 00 7f 88 00 00 00 00 61 00 a6 88 ....a.8.....a.^.....a.......a...
b6a0 00 00 00 00 61 00 e8 88 00 00 00 00 61 00 f5 88 00 00 00 00 60 00 f6 88 00 00 00 00 60 00 f7 88 ....a.......a.......`.......`...
b6c0 00 00 00 00 61 00 f8 88 00 00 00 00 61 00 52 89 00 00 00 00 61 00 8c 89 00 00 00 00 61 00 e6 89 ....a.......a.R.....a.......a...
b6e0 00 00 00 00 60 00 f0 89 00 00 00 00 60 00 f1 89 00 00 00 00 61 00 f2 89 00 00 00 00 60 00 09 8a ....`.......`.......a.......`...
b700 00 00 00 00 60 00 0a 8a 00 00 00 00 60 00 0b 8a 00 00 00 00 60 00 a7 60 00 00 01 00 60 00 3b 8b ....`.......`.......`..`....`.;.
b720 00 00 00 00 61 00 3c 8b 00 00 00 00 61 00 77 8b 00 00 00 00 61 00 8b 8b 00 00 00 00 61 00 e8 8b ....a.<.....a.w.....a.......a...
b740 00 00 00 00 61 00 0e 8c 00 00 00 00 61 00 31 8c 00 00 00 00 61 00 35 8c 00 00 00 00 61 00 42 8c ....a.......a.1.....a.5.....a.B.
b760 00 00 00 00 61 00 43 8c 00 00 00 00 61 00 49 8c 00 00 00 00 61 00 4a 8c 00 00 00 00 61 00 67 8c ....a.C.....a.I.....a.J.....a.g.
b780 00 00 00 00 61 00 73 8c 00 00 00 00 61 00 a6 8c 00 00 00 00 61 00 b5 8c 00 00 00 00 61 00 dc 8c ....a.s.....a.......a.......a...
b7a0 00 00 00 00 61 00 e2 8c 00 00 00 00 61 00 02 8d 00 00 00 00 61 00 04 8d 00 00 00 00 61 00 5e 8d ....a.......a.......a.......a.^.
b7c0 00 00 00 00 60 00 af 8d 00 00 00 00 60 00 b0 8d 00 00 00 00 61 00 b1 8d 00 00 00 00 61 00 db 8d ....`.......`.......a.......a...
b7e0 00 00 00 00 61 00 dc 8d 00 00 00 00 61 00 f3 8d 00 00 00 00 60 00 fb 8d 00 00 00 00 61 00 3a 8e ....a.......a.......`.......a.:.
b800 00 00 00 00 61 00 63 8e 00 00 00 00 61 00 6c 8e 00 00 00 00 61 00 81 8e 00 00 00 00 61 00 89 8e ....a.c.....a.l.....a.......a...
b820 00 00 00 00 61 00 b1 8e 00 00 00 00 61 00 cc 8e 00 00 00 00 61 00 cf 8e 00 00 00 00 60 00 eb 8e ....a.......a.......a.......`...
b840 00 00 00 00 61 00 0c 64 00 00 00 00 61 00 ec 8e 00 00 00 00 60 00 45 64 00 00 00 00 60 00 74 64 ....a..d....a.......`.Ed....`.td
b860 00 00 00 00 60 00 a8 60 00 00 00 00 51 00 15 16 90 01 00 00 54 69 6d 65 73 20 4e 65 77 20 52 6f ....`..`....Q.......Times.New.Ro
b880 6d 61 6e 00 0c 16 90 01 02 00 53 79 6d 62 6f 6c 00 0b 26 90 01 00 00 41 72 69 61 6c 00 0d 31 90 man.......Symbol..&....Arial..1.
b8a0 01 00 00 43 6f 75 72 69 65 72 00 11 35 90 01 00 00 43 6f 75 72 69 65 72 20 4e 65 77 00 22 00 04 ...Courier..5....Courier.New."..
b8c0 00 01 08 88 18 00 00 d0 02 00 00 68 01 00 00 00 00 82 fa f5 65 5d d4 06 66 d5 12 f6 a5 22 00 44 ...........h........e]..f....".D
b8e0 03 00 00 79 0f 00 00 b7 50 00 00 0d 00 dd 00 00 00 04 00 83 10 21 02 00 00 79 0f 00 00 b7 50 00 ...y....P............!...y....P.
b900 00 0d 00 dd 00 00 00 21 02 00 00 00 00 00 00 24 03 00 00 00 00 3d 00 00 00 15 57 69 6e 64 6f 77 .......!.......$.....=....Window
b920 73 20 4e 54 20 42 61 73 65 20 47 72 6f 75 70 00 00 00 0a 54 6f 6d 20 4d 69 6c 6c 65 72 0a 54 6f s.NT.Base.Group....Tom.Miller.To
b940 6d 20 4d 69 6c 6c 65 72 00 00 00 00 00 00 00 00 00 00 68 20 46 69 6c 65 53 69 7a 65 2e 20 20 54 m.Miller..........h.FileSize...T
b960 68 65 20 77 6f 72 6b 73 70 61 63 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 6f 66 20 74 68 69 he.workspace.requirements.of.thi
b980 73 20 72 6f 75 74 69 6e 65 20 61 72 65 20 71 75 69 74 65 20 6c 61 72 67 65 2c 20 62 75 74 20 69 s.routine.are.quite.large,.but.i
b9a0 74 20 69 73 20 74 68 72 6f 75 67 68 20 6f 66 66 6c 6f 61 64 69 6e 67 20 63 6f 6d 70 72 65 73 73 t.is.through.offloading.compress
b9c0 69 6f 6e 20 74 6f 20 74 68 65 20 63 6c 69 65 6e 74 73 20 77 68 65 72 65 20 77 65 20 65 78 70 65 ion.to.the.clients.where.we.expe
b9e0 63 74 20 74 6f 20 72 65 63 65 69 76 65 20 6f 75 72 20 67 72 65 61 74 65 73 74 20 67 61 69 6e 73 ct.to.receive.our.greatest.gains
ba00 dc a5 68 00 45 c0 09 04 00 00 34 00 65 00 00 00 00 00 00 00 00 00 00 00 00 03 00 00 76 64 00 00 ..h.E.....4.e...............vd..
ba20 52 a9 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2f 69 00 00 00 00 00 00 6a 00 00 00 R.................../i......j...
ba40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 7c 00 00 4a 01 00 00 .........................|..J...
ba60 00 7c 00 00 4a 01 00 00 00 96 00 00 00 00 00 00 00 96 00 00 00 00 00 00 00 96 00 00 00 00 00 00 .|..J...........................
ba80 00 96 00 00 00 00 00 00 00 96 00 00 24 00 00 00 4e 9c 00 00 00 00 00 00 fa 96 00 00 54 05 00 00 ............$...N...........T...
baa0 4e 9c 00 00 00 00 00 00 4e 9c 00 00 00 00 00 00 4e 9c 00 00 10 00 00 00 5e 9c 00 00 16 00 00 00 N.......N.......N.......^.......
bac0 74 9c 00 00 46 00 00 00 4e 9c 00 00 00 00 00 00 6c a8 00 00 51 00 00 00 d8 9c 00 00 00 00 00 00 t...F...N.......l...Q...........
bae0 d8 9c 00 00 16 00 00 00 ee 9c 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 ................................
bb00 ee 9c 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 0c 9d 00 00 02 00 00 00 ................................
bb20 0e 9d 00 00 00 00 00 00 0e 9d 00 00 00 00 00 00 0e 9d 00 00 30 00 00 00 3e 9d 00 00 0c 01 00 00 ....................0...>.......
bb40 4a 9e 00 00 0c 01 00 00 56 9f 00 00 1e 00 00 00 bd a8 00 00 58 00 00 00 15 a9 00 00 3d 00 00 00 J.......V...........X.......=...
bb60 74 9f 00 00 f8 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 96 00 00 00 00 00 00 t...............................
bb80 ee 9c 00 00 00 00 00 00 00 00 33 00 35 00 03 00 0b 00 ee 9c 00 00 00 00 00 00 ee 9c 00 00 00 00 ..........3.5...................
bba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 ee 9c 00 00 00 00 ................................
bbc0 00 00 74 9f 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 00 96 00 00 00 00 00 00 00 96 00 00 00 00 ..t.............................
bbe0 00 00 ee 9c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ba 9c 00 00 1e 00 ................................
bc00 00 00 ee 9c 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 ee 9c 00 00 00 00 ................................
bc20 00 00 00 96 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 00 96 00 00 00 00 00 00 ee 9c 00 00 00 00 ................................
bc40 00 00 0c 9d 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 24 96 00 00 50 00 ..........................$...P.
bc60 00 00 74 96 00 00 86 00 00 00 00 96 00 00 00 00 00 00 00 96 00 00 00 00 00 00 00 96 00 00 00 00 ..t.............................
bc80 00 00 00 96 00 00 00 00 00 00 ee 9c 00 00 00 00 00 00 0c 9d 00 00 00 00 00 00 ee 9c 00 00 1e 00 ................................
bca0 00 00 ee 9c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
bd00 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 0d 57 69 6e 64 ............................Wind
bd20 6f 77 73 20 4e 54 20 42 61 73 65 20 47 72 6f 75 70 0d 0d 43 6f 70 79 20 61 6e 64 20 4d 64 6c 20 ows.NT.Base.Group..Copy.and.Mdl.
bd40 53 75 70 70 6f 72 74 20 66 6f 72 20 43 61 63 68 65 64 20 43 6f 6d 70 72 65 73 73 65 64 20 44 61 Support.for.Cached.Compressed.Da
bd60 74 61 0d 0d 41 75 74 68 6f 72 3a 20 54 6f 6d 20 4d 69 6c 6c 65 72 0d 0d 4f 72 69 67 69 6e 61 6c ta..Author:.Tom.Miller..Original
bd80 20 56 65 72 73 69 6f 6e 20 4d 61 79 20 33 31 2c 20 31 39 39 35 0d 0d 56 65 72 73 69 6f 6e 20 31 .Version.May.31,.1995..Version.1
bda0 2e 34 2c 20 4a 75 6e 65 20 32 36 2c 20 31 39 39 36 0d 0d 0c 31 2e 20 4f 56 45 52 56 49 45 57 20 .4,.June.26,.1996...1..OVERVIEW.
bdc0 2d 20 4d 41 59 20 33 31 2c 20 31 39 39 35 0d 0d 49 6e 20 57 69 6e 64 6f 77 73 20 4e 54 20 33 2e -.MAY.31,.1995..In.Windows.NT.3.
bde0 35 31 2c 20 74 68 65 20 66 69 6c 65 20 73 79 73 74 65 6d 20 67 72 6f 75 70 20 73 68 69 70 70 65 51,.the.file.system.group.shippe
be00 64 20 61 20 64 61 74 61 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 63 61 70 61 62 69 6c 69 74 79 20 d.a.data.compression.capability.
be20 62 75 69 6c 74 20 69 6e 74 6f 20 4e 74 66 73 2c 20 74 68 61 74 20 77 61 73 20 6f 70 74 69 6d 69 built.into.Ntfs,.that.was.optimi
be40 7a 65 64 20 66 6f 72 20 77 6f 72 6b 73 74 61 74 69 6f 6e 20 75 73 65 20 28 76 73 2e 20 73 65 72 zed.for.workstation.use.(vs..ser
be60 76 65 72 29 2e 20 20 4f 70 74 69 6d 69 7a 69 6e 67 20 66 6f 72 20 77 6f 72 6b 73 74 61 74 69 6f ver)...Optimizing.for.workstatio
be80 6e 20 75 73 65 20 63 61 6e 20 62 72 69 6e 67 20 74 68 65 20 67 72 65 61 74 65 73 74 20 6e 75 6d n.use.can.bring.the.greatest.num
bea0 65 72 69 63 61 6c 20 62 65 6e 65 66 69 74 2c 20 73 69 6e 63 65 20 69 6e 20 6d 6f 73 74 20 6c 61 erical.benefit,.since.in.most.la
bec0 72 67 65 20 6e 65 74 77 6f 72 6b 73 20 74 68 65 72 65 20 61 72 65 20 6f 6e 65 20 6f 72 20 6d 6f rge.networks.there.are.one.or.mo
bee0 72 65 20 6f 72 64 65 72 73 20 6f 66 20 6d 61 67 6e 69 74 75 64 65 20 6d 6f 72 65 20 73 74 6f 72 re.orders.of.magnitude.more.stor
bf00 61 67 65 20 6f 6e 20 74 68 65 20 73 75 6d 20 6f 66 20 61 6c 6c 20 64 65 73 6b 74 6f 70 73 2c 20 age.on.the.sum.of.all.desktops,.
bf20 76 65 72 73 75 73 20 74 68 65 20 73 75 6d 20 6f 66 20 61 6c 6c 20 73 65 72 76 65 72 73 2e 20 20 versus.the.sum.of.all.servers...
bf40 54 68 75 73 20 74 68 65 20 64 65 73 69 67 6e 20 63 65 6e 74 65 72 20 66 6f 72 20 4e 74 66 73 20 Thus.the.design.center.for.Ntfs.
bf60 63 6f 6d 70 72 65 73 73 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20 69 6e 20 33 2e 35 compression.functionality.in.3.5
bf80 31 20 77 61 73 20 61 20 63 61 70 61 62 69 6c 69 74 79 20 73 69 6d 69 6c 61 72 20 74 6f 20 44 6f 1.was.a.capability.similar.to.Do
bfa0 75 62 6c 65 20 53 70 61 63 65 2c 20 44 72 69 76 65 20 53 70 61 63 65 2c 20 6f 72 20 63 6f 6d 70 uble.Space,.Drive.Space,.or.comp
bfc0 72 65 73 73 69 6f 6e 20 75 6e 64 65 72 20 4f 53 2f 32 2c 20 77 68 69 63 68 20 61 6c 73 6f 20 73 ression.under.OS/2,.which.also.s
bfe0 68 6f 75 6c 64 20 62 65 20 63 6c 61 73 73 69 66 69 65 64 20 61 73 20 77 6f 72 6b 73 74 61 74 69 hould.be.classified.as.workstati
c000 6f 6e 20 73 6f 6c 75 74 69 6f 6e 73 2e 20 20 42 75 74 20 75 6e 6c 69 6b 65 20 74 68 65 73 65 20 on.solutions...But.unlike.these.
c020 73 79 73 74 65 6d 73 2c 20 4e 74 66 73 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6d 61 79 20 62 65 systems,.Ntfs.compression.may.be
c040 20 73 70 65 63 69 66 69 65 64 20 6f 6e 20 61 20 70 65 72 2d 66 69 6c 65 20 6f 72 20 70 65 72 2d .specified.on.a.per-file.or.per-
c060 64 69 72 65 63 74 6f 72 79 20 62 61 73 69 73 2e 20 0d 0d 49 6e 20 6f 70 74 69 6d 69 7a 69 6e 67 directory.basis....In.optimizing
c080 20 66 6f 72 20 77 6f 72 6b 73 74 61 74 69 6f 6e 20 75 73 65 2c 20 61 6c 6c 20 64 61 74 61 20 69 .for.workstation.use,.all.data.i
c0a0 73 20 63 6f 6d 70 72 65 73 73 65 64 20 69 6e 20 72 65 61 6c 20 74 69 6d 65 20 61 73 20 69 74 20 s.compressed.in.real.time.as.it.
c0c0 69 73 20 77 72 69 74 74 65 6e 20 74 6f 20 64 69 73 6b 2c 20 61 6e 64 20 69 74 20 69 73 20 6e 65 is.written.to.disk,.and.it.is.ne
c0e0 76 65 72 20 72 65 71 75 69 72 65 64 20 74 68 61 74 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 ver.required.that.the.uncompress
c100 65 64 20 73 69 7a 65 20 6f 66 20 74 68 65 20 64 61 74 61 20 62 65 20 61 6c 6c 6f 63 61 74 65 64 ed.size.of.the.data.be.allocated
c120 20 6f 6e 20 64 69 73 6b 2e 20 44 61 74 61 20 69 73 20 6f 6e 6c 79 20 63 61 63 68 65 64 20 69 6e .on.disk..Data.is.only.cached.in
c140 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 73 74 61 74 65 2c 20 74 6f 20 61 6c 6c 6f .the.uncompressed.state,.to.allo
c160 77 20 66 61 73 74 20 72 65 61 64 20 61 6e 64 20 77 72 69 74 65 20 61 63 63 65 73 73 20 74 6f 20 w.fast.read.and.write.access.to.
c180 61 70 70 6c 69 63 61 74 69 6f 6e 73 20 77 68 69 63 68 20 74 65 6e 64 20 74 6f 20 72 65 61 64 20 applications.which.tend.to.read.
c1a0 61 6e 64 20 77 72 69 74 65 20 77 69 74 68 20 73 6d 61 6c 6c 20 62 79 74 65 20 63 6f 75 6e 74 73 and.write.with.small.byte.counts
c1c0 2e 20 20 54 68 75 73 20 77 68 65 6e 20 72 65 61 64 69 6e 67 20 74 68 65 20 64 69 73 6b 2c 20 64 ...Thus.when.reading.the.disk,.d
c1e0 61 74 61 20 69 73 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 66 72 6f 6d 20 61 20 64 69 73 6b 20 ata.is.decompressed.from.a.disk.
c200 62 75 66 66 65 72 20 69 6e 74 6f 20 74 68 65 20 63 61 63 68 65 2c 20 61 6e 64 20 77 68 65 6e 20 buffer.into.the.cache,.and.when.
c220 77 72 69 74 69 6e 67 20 74 68 65 20 64 69 73 6b 2c 20 64 61 74 61 20 69 73 20 63 6f 6d 70 72 65 writing.the.disk,.data.is.compre
c240 73 73 65 64 20 66 72 6f 6d 20 74 68 65 20 63 61 63 68 65 20 69 6e 74 6f 20 61 20 64 69 73 6b 20 ssed.from.the.cache.into.a.disk.
c260 62 75 66 66 65 72 2e 20 20 54 68 65 20 63 75 72 72 65 6e 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e buffer...The.current.compression
c280 20 66 6f 72 6d 61 74 20 63 68 6f 73 65 6e 20 66 6f 72 20 4e 74 66 73 2c 20 4c 5a 4e 54 31 2c 20 .format.chosen.for.Ntfs,.LZNT1,.
c2a0 77 61 73 20 70 72 69 6d 61 72 69 6c 79 20 63 68 6f 73 65 6e 20 66 6f 72 20 69 74 73 20 73 70 65 was.primarily.chosen.for.its.spe
c2c0 65 64 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 61 6e 64 20 74 68 65 20 70 72 69 ed.of.decompression,.and.the.pri
c2e0 6d 61 72 79 20 64 65 63 6f 6d 70 72 65 73 73 20 63 68 75 6e 6b 20 72 6f 75 74 69 6e 65 20 66 6f mary.decompress.chunk.routine.fo
c300 72 20 4c 5a 4e 54 31 20 69 73 20 77 72 69 74 74 65 6e 20 69 6e 20 61 73 73 65 6d 62 6c 65 72 20 r.LZNT1.is.written.in.assembler.
c320 6f 6e 20 61 6c 6c 20 66 6f 75 72 20 70 6c 61 74 66 6f 72 6d 73 2e 20 20 49 6e 64 65 65 64 2c 20 on.all.four.platforms...Indeed,.
c340 69 6e 20 74 68 65 20 66 69 72 73 74 20 79 65 61 72 20 6f 66 20 75 73 65 2c 20 74 68 65 20 63 6f in.the.first.year.of.use,.the.co
c360 73 74 20 6f 66 20 64 65 63 6f 6d 70 72 65 73 73 69 6f 6e 20 68 61 73 20 6e 65 76 65 72 20 62 65 st.of.decompression.has.never.be
c380 65 6e 20 6f 62 73 65 72 76 65 64 20 74 6f 20 62 65 20 61 20 73 65 72 69 6f 75 73 20 70 65 72 66 en.observed.to.be.a.serious.perf
c3a0 6f 72 6d 61 6e 63 65 20 70 65 6e 61 6c 74 79 2e 20 20 54 68 65 20 63 6f 73 74 20 6f 66 20 63 6f ormance.penalty...The.cost.of.co
c3c0 6d 70 72 65 73 73 69 6f 6e 2c 20 6f 6e 20 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c 20 77 68 mpression,.on.the.other.hand,.wh
c3e0 69 63 68 20 69 6e 76 6f 6c 76 65 73 20 73 65 61 72 63 68 69 6e 67 20 74 68 65 20 75 6e 63 6f 6d ich.involves.searching.the.uncom
c400 70 72 65 73 73 65 64 20 64 61 74 61 20 66 6f 72 20 6d 61 74 63 68 69 6e 67 20 73 74 72 69 6e 67 pressed.data.for.matching.string
c420 73 2c 20 69 73 20 73 75 62 73 74 61 6e 74 69 61 6c 2e 20 20 46 6f 72 74 75 6e 61 74 65 6c 79 2c s,.is.substantial...Fortunately,
c440 20 6d 6f 73 74 20 63 6f 6d 6d 6f 6e 20 77 6f 72 6b 73 74 61 74 69 6f 6e 20 6f 70 65 72 61 74 69 .most.common.workstation.operati
c460 6f 6e 73 20 61 72 65 20 6d 6f 72 65 20 72 65 61 64 2d 69 6e 74 65 6e 73 69 76 65 2c 20 73 6f 20 ons.are.more.read-intensive,.so.
c480 74 68 65 72 65 20 68 61 76 65 20 62 65 65 6e 20 66 65 77 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 there.have.been.few.performance.
c4a0 63 6f 6d 70 6c 61 69 6e 74 73 20 61 6d 6f 6e 67 20 6f 75 72 20 77 6f 72 6b 73 74 61 74 69 6f 6e complaints.among.our.workstation
c4c0 20 75 73 65 72 73 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 20 20 45 73 70 65 63 69 61 6c .users.of.compression...Especial
c4e0 6c 79 20 73 69 6e 63 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 69 73 20 61 6c 77 61 ly.since.the.compression.is.alwa
c500 79 73 20 64 6f 6e 65 20 62 79 20 74 68 65 20 4c 61 7a 79 20 57 72 69 74 65 72 20 69 6e 20 74 68 ys.done.by.the.Lazy.Writer.in.th
c520 65 20 62 61 63 6b 67 72 6f 75 6e 64 2e 0d 0d 41 73 73 65 73 73 69 6e 67 20 74 68 65 20 63 6f 73 e.background...Assessing.the.cos
c540 74 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 73 69 t.of.compressing.and.decompressi
c560 6e 67 20 64 61 74 61 20 6f 6e 20 61 20 66 69 6c 65 20 73 65 72 76 65 72 20 69 73 20 61 6e 6f 74 ng.data.on.a.file.server.is.anot
c580 68 65 72 20 73 74 6f 72 79 20 65 6e 74 69 72 65 6c 79 2e 20 20 57 68 65 6e 20 61 20 57 69 6e 64 her.story.entirely...When.a.Wind
c5a0 6f 77 73 20 4e 54 20 33 2e 35 31 20 46 69 6c 65 20 53 65 72 76 65 72 20 68 69 74 73 20 6d 61 78 ows.NT.3.51.File.Server.hits.max
c5c0 69 6d 75 6d 20 6c 6f 61 64 2c 20 69 74 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 63 6f 6d 70 75 74 imum.load,.it.is.normally.comput
c5e0 65 2d 62 6f 75 6e 64 2e 20 20 54 68 65 72 65 66 6f 72 65 20 61 64 64 69 6e 67 20 74 68 65 20 63 e-bound...Therefore.adding.the.c
c600 6f 73 74 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 ost.of.compression.and.decompres
c620 73 69 6f 6e 20 74 6f 20 74 68 65 20 64 69 73 6b 20 49 2f 4f 20 70 61 74 68 73 20 69 73 20 61 20 sion.to.the.disk.I/O.paths.is.a.
c640 64 69 72 65 63 74 20 68 69 74 20 6f 6e 20 73 65 72 76 65 72 20 70 65 72 66 6f 72 6d 61 6e 63 65 direct.hit.on.server.performance
c660 2e 20 20 45 61 72 6c 79 20 74 68 69 73 20 79 65 61 72 20 66 6f 72 20 74 68 65 20 66 69 72 73 74 ...Early.this.year.for.the.first
c680 20 74 69 6d 65 20 73 6f 6d 65 20 6f 66 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6e 65 74 77 6f .time.some.of.the.standard.netwo
c6a0 72 6b 20 62 65 6e 63 68 6d 61 72 6b 73 20 77 65 72 65 20 72 75 6e 20 6f 6e 20 4e 74 66 73 20 77 rk.benchmarks.were.run.on.Ntfs.w
c6c0 69 74 68 20 61 6e 64 20 77 69 74 68 6f 75 74 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2c 20 61 6e 64 ith.and.without.compression,.and
c6e0 20 61 73 20 65 78 70 65 63 74 65 64 2c 20 74 68 65 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 68 69 .as.expected,.the.performance.hi
c700 74 20 66 6f 72 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 77 61 73 20 73 75 62 73 74 61 6e 74 69 61 t.for.compression.was.substantia
c720 6c 20 77 69 74 68 20 6d 6f 72 65 20 74 68 61 6e 20 73 69 78 20 74 6f 20 65 69 67 68 74 20 61 63 l.with.more.than.six.to.eight.ac
c740 74 69 76 65 20 63 6c 69 65 6e 74 73 2e 20 20 42 61 70 63 6f 20 70 65 72 66 6f 72 6d 61 6e 63 65 tive.clients...Bapco.performance
c760 20 77 69 74 68 20 34 38 20 63 6c 69 65 6e 74 73 20 73 68 6f 77 65 64 20 61 20 31 35 25 20 2d 20 .with.48.clients.showed.a.15%.-.
c780 32 30 25 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 70 65 6e 61 6c 74 79 2c 20 77 68 69 6c 65 20 70 20%.performance.penalty,.while.p
c7a0 65 72 66 6f 72 6d 61 6e 63 65 20 6f 6e 20 4e 65 74 62 65 6e 63 68 20 33 2e 30 20 28 77 68 69 63 erformance.on.Netbench.3.0.(whic
c7c0 68 20 69 73 20 76 65 72 79 20 72 65 61 64 2f 77 72 69 74 65 20 69 6e 74 65 6e 73 69 76 65 29 20 h.is.very.read/write.intensive).
c7e0 64 72 6f 70 70 65 64 20 74 6f 20 6c 65 73 73 20 74 68 61 6e 20 68 61 6c 66 2e 20 20 28 4f 6e 20 dropped.to.less.than.half...(On.
c800 74 68 65 20 6f 74 68 65 72 20 68 61 6e 64 2c 20 74 68 65 72 65 20 77 65 72 65 20 6e 6f 20 70 65 the.other.hand,.there.were.no.pe
c820 72 66 6f 72 6d 61 6e 63 65 20 63 6f 6d 70 6c 61 69 6e 74 73 20 6c 61 73 74 20 79 65 61 72 20 77 rformance.complaints.last.year.w
c840 68 65 6e 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 77 61 73 20 61 64 64 65 64 20 74 6f 20 74 77 6f hen.compression.was.added.to.two
c860 20 6f 66 20 6f 75 72 20 93 72 65 61 6c 94 20 73 65 72 76 65 72 73 20 2d 20 5c 5c 6b 65 72 6e 65 .of.our..real..servers.-.\\kerne
c880 6c 20 61 6e 64 20 5c 5c 6e 74 78 38 36 34 2e 29 0d 0d 46 6f 72 20 74 68 65 20 73 68 65 6c 6c 20 l.and.\\ntx864.)..For.the.shell.
c8a0 72 65 6c 65 61 73 65 20 77 65 20 70 6c 61 6e 20 74 6f 20 74 72 61 6e 73 66 6f 72 6d 20 4e 74 66 release.we.plan.to.transform.Ntf
c8c0 73 20 63 6f 6d 70 72 65 73 73 69 6f 6e 20 6f 6e 20 74 68 65 20 73 65 72 76 65 72 20 66 72 6f 6d s.compression.on.the.server.from
c8e0 20 61 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 6c 69 61 62 69 6c 69 74 79 20 69 6e 74 6f 20 61 20 .a.performance.liability.into.a.
c900 70 65 72 66 6f 72 6d 61 6e 63 65 20 62 65 6e 65 66 69 74 2e 20 20 57 65 20 70 6c 61 6e 20 74 6f performance.benefit...We.plan.to
c920 20 64 6f 20 74 68 69 73 20 70 72 69 6d 61 72 69 6c 79 20 62 79 20 61 64 64 69 6e 67 20 74 68 65 .do.this.primarily.by.adding.the
c940 20 63 61 70 61 62 69 6c 69 74 79 20 74 6f 20 63 61 63 68 65 20 64 61 74 61 20 69 6e 20 69 74 73 .capability.to.cache.data.in.its
c960 20 63 6f 6d 70 72 65 73 73 65 64 20 73 74 61 74 65 2c 20 61 6e 64 20 6d 6f 76 65 20 74 68 65 20 .compressed.state,.and.move.the.
c980 63 6f 73 74 20 6f 66 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 cost.of.compressing.and.decompre
c9a0 73 73 69 6e 67 20 64 61 74 61 20 6f 75 74 20 74 6f 20 73 6d 61 72 74 20 63 6c 69 65 6e 74 73 2c ssing.data.out.to.smart.clients,
c9c0 20 77 68 65 6e 20 70 6f 73 73 69 62 6c 65 2e 0d 0d 31 2e 31 20 43 6f 6d 70 72 65 73 73 69 6f 6e .when.possible...1.1.Compression
c9e0 20 4f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 47 6f 61 6c 73 0d 0d 54 68 65 20 63 75 72 72 65 6e 74 .Optimization.Goals..The.current
ca00 43 6f 6d 70 72 65 73 73 69 6f 6e 57 6f 72 6b 53 70 61 63 65 53 69 7a 65 0d 0d 54 68 69 73 20 72 CompressionWorkSpaceSize..This.r
ca20 6f 75 74 69 6e 65 20 6d 61 79 20 62 65 20 75 73 65 64 20 74 6f 20 72 65 74 72 69 65 76 65 20 74 outine.may.be.used.to.retrieve.t
ca40 68 65 20 77 6f 72 6b 73 70 61 63 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 66 6f 72 20 63 6f he.workspace.requirements.for.co
ca60 6d 70 72 65 73 73 69 6e 67 20 62 75 66 66 65 72 73 20 61 6e 64 20 64 65 63 6f 6d 70 72 65 73 73 mpressing.buffers.and.decompress
ca80 69 6e 67 20 66 72 61 67 6d 65 6e 74 73 2e 0d 0d 32 2e 33 2e 32 20 52 74 6c 43 6f 6d 70 72 65 73 ing.fragments...2.3.2.RtlCompres
caa0 73 42 75 66 66 65 72 0d 0d 54 68 69 73 20 72 6f 75 74 69 6e 65 20 6d 61 79 20 62 65 20 63 61 6c sBuffer..This.routine.may.be.cal
cac0 6c 65 64 20 74 6f 20 63 6f 6d 70 72 65 73 73 20 61 6e 20 69 6e 74 65 67 72 61 6c 20 6e 75 6d 62 led.to.compress.an.integral.numb
cae0 65 72 20 6f 66 20 63 68 75 6e 6b 73 2e 20 20 54 68 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 20 er.of.chunks...The.uncompressed.
cb00 62 79 74 65 20 63 6f 75 6e 74 20 6d 61 79 20 72 65 66 6c 65 63 74 20 61 20 66 72 61 63 74 69 6f byte.count.may.reflect.a.fractio
cb20 6e 61 6c 20 63 68 75 6e 6b 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 62 75 66 66 nal.chunk.at.the.end.of.the.buff
cb40 65 72 20 66 6f 72 20 64 65 61 6c 69 6e 67 20 77 69 74 68 20 46 69 6c 65 53 69 7a 65 2e 20 20 54 er.for.dealing.with.FileSize...T
cb60 68 65 20 77 6f 72 6b 73 70 61 63 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 20 6f 66 20 74 68 69 he.workspace.requirements.of.thi
cb80 73 20 72 6f 75 74 69 6e 65 20 61 72 65 20 71 75 69 74 65 20 6c 61 72 67 65 2c 20 62 75 74 20 69 s.routine.are.quite.large,.but.i
cba0 74 20 69 73 20 74 68 72 6f 75 67 68 20 6f 66 66 6c 6f 61 64 69 6e 67 20 63 6f 6d 70 72 65 73 73 t.is.through.offloading.compress
cbc0 69 6f 6e 20 74 6f 20 74 68 65 20 63 6c 69 65 6e 74 73 20 77 68 65 72 65 20 77 65 20 65 78 70 65 ion.to.the.clients.where.we.expe
cbe0 63 74 20 74 6f 20 72 65 63 65 69 76 65 20 6f 75 72 20 67 72 65 61 74 65 73 74 20 67 61 69 6e 73 ct.to.receive.our.greatest.gains
cc00 2e 0d 0d 43 75 72 72 65 6e 74 20 4c 5a 4e 54 31 20 77 6f 72 6b 73 70 61 63 65 20 72 65 71 75 69 ...Current.LZNT1.workspace.requi
cc20 72 65 6d 65 6e 74 73 3a 20 33 32 4b 42 20 2b 20 32 30 20 62 79 74 65 73 0d 0d 32 2e 33 2e 33 20 rements:.32KB.+.20.bytes..2.3.3.
cc40 52 74 6c 44 65 63 6f 6d 70 72 65 73 73 42 75 66 66 65 72 0d 0d 54 68 69 73 20 72 6f 75 74 69 6e RtlDecompressBuffer..This.routin
cc60 65 20 6d 61 79 20 62 65 20 63 61 6c 6c 65 64 20 74 6f 20 64 65 63 6f 6d 70 72 65 73 73 20 74 68 e.may.be.called.to.decompress.th
cc80 65 20 65 6e 74 69 72 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 61 20 63 6f 6d 70 72 65 73 73 65 e.entire.contents.of.a.compresse
cca0 64 20 62 75 66 66 65 72 2e 0d 0d 43 75 72 72 65 6e 74 20 4c 5a 4e 54 31 20 77 6f 72 6b 73 70 61 d.buffer...Current.LZNT1.workspa
ccc0 63 65 20 72 65 71 75 69 72 65 6d 65 6e 74 73 3a 20 6e 6f 6e 65 0d 0d 32 2e 33 2e 34 20 52 74 6c ce.requirements:.none..2.3.4.Rtl
cce0 44 65 63 6f 6d 70 72 65 73 73 46 72 61 67 6d 65 6e 74 0d 0d 54 68 69 73 20 69 73 20 61 6e 20 6f DecompressFragment..This.is.an.o
cd00 70 74 69 6f 6e 61 6c 20 72 6f 75 74 69 6e 65 20 77 68 69 63 68 20 6d 61 79 20 62 65 20 75 73 65 ptional.routine.which.may.be.use
cd20 64 20 74 6f 20 64 65 63 6f 6d 70 72 65 73 73 20 6f 6e 6c 79 20 73 6f 6d 65 20 6f 66 20 74 68 65 d.to.decompress.only.some.of.the
cd40 20 64 61 74 61 20 69 6e 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 62 75 66 66 65 72 2e 20 20 49 .data.in.a.compressed.buffer...I
cd60 6e 20 70 61 72 74 69 63 75 6c 61 72 2c 20 69 74 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 69 66 n.particular,.it.must.be.used.if
cd80 20 74 68 65 20 64 65 63 6f 6d 70 72 65 73 73 65 64 20 6f 75 74 70 75 74 20 69 73 20 74 6f 20 73 .the.decompressed.output.is.to.s
cda0 74 61 72 74 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 61 20 63 68 75 6e 6b 2c 20 6f tart.in.the.middle.of.a.chunk,.o
cdc0 72 20 65 6e 64 20 62 65 66 6f 72 65 20 74 68 65 20 65 6e 64 20 6f 66 20 61 20 63 68 75 6e 6b 2e r.end.before.the.end.of.a.chunk.
cde0 0d 0d 43 75 72 72 65 6e 74 20 4c 5a 4e 54 31 20 77 6f 72 6b 73 70 61 63 65 20 72 65 71 75 69 72 ..Current.LZNT1.workspace.requir
ce00 65 6d 65 6e 74 73 3a 20 34 4b 42 0d 43 6f 70 79 20 61 6e 64 20 4d 64 6c 20 53 75 70 70 6f 72 74 ements:.4KB.Copy.and.Mdl.Support
ce20 20 66 6f 72 20 43 61 63 68 65 64 20 43 6f 6d 70 72 65 73 73 65 64 20 44 61 74 61 09 13 20 50 41 .for.Cached.Compressed.Data...PA
ce40 47 45 20 14 35 15 0d 0d 4d 69 63 72 6f 73 6f 66 74 20 43 6f 72 70 6f 72 61 74 69 6f 6e 20 43 6f GE..5...Microsoft.Corporation.Co
ce60 6d 70 61 6e 79 20 43 6f 6e 66 69 64 65 6e 74 69 61 6c 0d 0d 0d 0d 02 00 99 0a 37 28 48 6f 77 65 mpany.Confidential........7(Howe
ce80 76 65 72 20 74 68 65 20 74 77 6f 20 50 72 65 70 61 72 65 20 4d 64 6c 20 72 6f 75 74 69 6e 65 73 ver.the.two.Prepare.Mdl.routines
cea0 20 68 61 76 65 20 62 65 65 6e 20 6f 76 65 72 6c 6f 61 64 65 64 20 6f 6e 20 74 6f 70 20 6f 66 20 .have.been.overloaded.on.top.of.
cec0 74 68 65 20 72 65 73 70 65 63 74 69 76 65 20 63 6f 70 79 20 72 6f 75 74 69 6e 65 73 2c 20 61 73 the.respective.copy.routines,.as
cee0 20 73 68 6f 77 6e 20 62 65 6c 6f 77 2e 29 20 0d 20 20 20 20 4f 55 54 20 50 4d 44 4c 20 2a 4d 64 .shown.below.)......OUT.PMDL.*Md
cf00 6c 43 68 61 69 6e 2c 54 68 65 20 6c 65 6e 67 74 68 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 lChain,The.length.specifies.the.
cf20 64 65 73 69 72 65 64 20 6e 75 6d 62 65 72 20 6f 66 20 62 79 74 65 73 20 69 66 20 74 68 65 20 64 desired.number.of.bytes.if.the.d
cf40 61 74 61 20 77 65 72 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 2c 20 61 6e 64 20 74 68 75 73 20 ata.were.uncompressed,.and.thus.
cf60 66 65 77 65 72 20 62 79 74 65 73 20 77 69 6c 6c 20 61 63 74 75 61 6c 6c 79 20 62 65 20 72 65 63 fewer.bytes.will.actually.be.rec
cf80 69 65 76 65 64 20 69 66 20 74 68 65 20 64 61 74 61 20 69 73 20 63 6f 6d 70 72 65 73 73 65 64 2e ieved.if.the.data.is.compressed.
cfa0 20 20 0d 0d 45 69 74 68 65 72 20 42 75 66 66 65 72 20 6f 72 20 4d 64 6c 43 68 61 69 6e 20 6d 75 ....Either.Buffer.or.MdlChain.mu
cfc0 73 74 20 62 65 20 73 70 65 63 69 66 69 65 64 20 61 73 20 4e 55 4c 4c 20 28 61 6e 64 20 74 68 65 st.be.specified.as.NULL.(and.the
cfe0 20 6f 74 68 65 72 20 6e 6f 74 20 4e 55 4c 4c 29 2e 20 20 46 6f 72 20 43 6f 70 79 20 52 65 00 00 .other.not.NULL)...For.Copy.Re..
d000 00 03 00 00 1c 03 00 00 6c 03 00 00 b3 03 00 00 b4 03 00 00 d0 03 00 00 99 08 00 00 9e 08 00 00 ........l.......................
d020 d1 0f 00 00 f5 0f 00 00 ba 12 00 00 bb 12 00 00 fb 13 00 00 fc 13 00 00 67 14 00 00 68 14 00 00 ........................g...h...
d040 09 15 00 00 0a 15 00 00 b9 15 00 00 ba 15 00 00 48 17 00 00 5b 17 00 00 dd 17 00 00 e2 17 00 00 ................H...[...........
d060 13 18 00 00 18 18 00 00 e1 18 00 00 f1 18 00 00 0f 1c 00 00 20 1c 00 00 5b 1c 00 00 6a 1c 00 00 ........................[...j...
d080 9a 1c 00 00 b6 1c 00 00 c0 24 00 00 b0 2c 00 00 26 2e 00 00 42 2e 00 00 d1 35 00 00 d2 35 00 00 .........$...,..&...B....5...5..
d0a0 d3 35 00 00 e6 35 00 00 31 37 00 00 4c 37 00 00 1d 3a 00 00 47 3a 00 00 ae 3b 00 00 3e 3e 00 00 .5...5..17..L7...:..G:...;..>>..
d0c0 3f 3e 00 00 40 3e 00 00 6b 3e 00 00 d2 3f 00 00 7d 41 00 00 7f 41 00 00 51 42 00 00 7c 42 00 00 ?>..@>..k>...?..}A...A..QB..|B..
d0e0 e4 43 00 00 78 46 00 00 79 46 00 00 7a 46 00 00 70 47 00 00 71 47 00 00 72 47 00 00 a2 47 00 00 .C..xF..yF..zF..pG..qG..rG...G..
d100 3d 48 00 00 ff 48 00 00 00 49 00 00 01 49 00 00 32 49 00 00 a1 4a 00 00 65 4d 00 00 67 4d 00 00 =H...H...I...I..2I...J..eM..gM..
d120 39 4e 00 00 3a 4e 00 00 1f 4f 00 00 d5 50 00 00 d6 50 00 00 d7 50 00 00 a9 51 00 00 aa 51 00 00 9N..:N...O...P...P...P...Q...Q..
d140 ab 51 00 00 e2 51 00 00 e7 51 00 00 10 52 00 00 5e 53 00 00 5f 53 00 00 b1 53 00 00 b3 53 00 00 .Q...Q...Q...R..^S.._S...S...S..
d160 21 54 00 00 fd 57 00 00 73 59 00 00 11 5a 00 00 c1 5a 00 00 df 5a 00 00 d3 5f 00 00 f1 5f 00 00 !T...W..sY...Z...Z...Z..._..._..
d180 f4 5f 00 00 00 fc f9 f7 00 f7 f9 f7 00 f7 00 f7 00 f7 00 f7 00 f7 00 f7 00 f7 f9 f7 f9 f7 f9 f7 ._..............................
d1a0 f9 f7 f9 f7 00 f7 f4 f7 00 f7 00 f7 00 f7 00 f7 00 f4 f7 00 f2 00 f4 f7 00 f7 00 f4 f7 00 f2 f7 ................................
d1c0 00 f2 00 f4 f7 00 f4 00 f4 f7 00 f7 00 f4 f7 00 f4 f7 00 f4 00 f7 00 f7 00 f7 00 f7 f4 f7 f9 f7 ................................
d1e0 00 f7 fc f7 03 5d 03 00 05 55 81 5d 03 00 03 63 18 00 05 56 81 63 18 00 05 55 81 63 18 00 00 60 .....]...U.]...c...V.c...U.c...`
d200 f4 5f 00 00 1a 60 00 00 90 60 00 00 a9 60 00 00 3a 62 00 00 55 62 00 00 d7 62 00 00 f4 62 00 00 ._...`...`...`..:b..Ub...b...b..
d220 0b 64 00 00 0c 64 00 00 3c 64 00 00 3d 64 00 00 43 64 00 00 44 64 00 00 45 64 00 00 46 64 00 00 .d...d..<d..=d..Cd..Dd..Ed..Fd..
d240 48 64 00 00 72 64 00 00 75 64 00 00 76 64 00 00 7a 64 00 00 7b 64 00 00 9b 64 00 00 c4 64 00 00 Hd..rd..ud..vd..zd..{d...d...d..
d260 ce 64 00 00 dc 64 00 00 ee 64 00 00 ef 64 00 00 f0 64 00 00 f4 64 00 00 fd 64 00 00 07 65 00 00 .d...d...d...d...d...d...d...e..
d280 55 65 00 00 a2 65 00 00 a4 65 00 00 fe 65 00 00 4a 7d 00 00 83 7d 00 00 84 7d 00 00 9f 7d 00 00 Ue...e...e...e..J}...}...}...}..
d2a0 b0 7d 00 00 04 7e 00 00 05 7e 00 00 06 7e 00 00 07 7e 00 00 14 7e 00 00 1e 7e 00 00 37 7e 00 00 .}...~...~...~...~...~...~..7~..
d2c0 47 7e 00 00 59 7e 00 00 76 7e 00 00 9e 7e 00 00 a9 7e 00 00 c3 7e 00 00 e8 7e 00 00 eb 7e 00 00 G~..Y~..v~...~...~...~...~...~..
d2e0 f1 7e 00 00 f6 7e 00 00 f9 7e 00 00 51 7f 00 00 57 7f 00 00 88 7f 00 00 8e 7f 00 00 8f 7f 00 00 .~...~...~..Q...W...............
d300 aa 7f 00 00 b0 7f 00 00 bc 7f 00 00 13 80 00 00 14 80 00 00 19 80 00 00 20 80 00 00 7a 80 00 00 ............................z...
d320 7f 80 00 00 98 80 00 00 99 80 00 00 9b 80 00 00 9f 80 00 00 f9 80 00 00 17 81 00 00 18 81 00 00 ................................
d340 1a 81 00 00 1b 81 00 00 dd 81 00 00 de 81 00 00 f8 81 00 00 f9 81 00 00 28 83 00 00 29 83 00 00 ........................(...)...
d360 83 83 00 00 a9 83 00 00 cf 83 00 00 de 83 00 00 df 83 00 00 00 fd 00 fd 00 fd 00 fd 00 fa f4 f2 ................................
d380 f4 f2 f4 00 fa 00 00 f0 fd fd fd fd fd fd fd ed ed ed ed fd fd fd fd f0 fd fd fd fd fd fd fd ed ................................
d3a0 ed ed fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd 00 ed fd 00 00 00 f2 f0 ................................
d3c0 fd fd 00 f2 00 ea 00 00 00 ea e8 00 00 00 00 00 02 55 81 00 05 55 81 5d 04 00 05 55 81 5d 03 00 .................U...U.]...U.]..
d3e0 02 75 01 00 03 50 11 00 0b 75 01 44 04 00 00 00 00 50 11 00 05 55 81 63 18 00 03 63 18 00 00 5c .u...P...u.D.....P...U.c...c...\
d400 00 03 00 00 01 03 00 00 02 03 00 00 03 03 00 00 04 03 00 00 05 03 00 00 06 03 00 00 07 03 00 00 ................................
d420 08 03 00 00 09 03 00 00 0a 03 00 00 0b 03 00 00 0c 03 00 00 0d 03 00 00 0e 03 00 00 0f 03 00 00 ................................
d440 10 03 00 00 11 03 00 00 12 03 00 00 13 03 00 00 14 03 00 00 15 03 00 00 16 03 00 00 17 03 00 00 ................................
d460 18 03 00 00 19 03 00 00 1a 03 00 00 1b 03 00 00 1c 03 00 00 32 03 00 00 33 03 00 00 63 03 00 00 ....................2...3...c...
d480 64 03 00 00 77 03 00 00 78 03 00 00 96 03 00 00 97 03 00 00 b2 03 00 00 b3 03 00 00 b4 03 00 00 d...w...x.......................
d4a0 cf 03 00 00 d0 03 00 00 72 06 00 00 73 06 00 00 2e 0b 00 00 2f 0b 00 00 fe 00 01 c0 21 f0 00 fe ........r...s......./.......!...
d4c0 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 ...!......!......!......!......!
d4e0 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 ......!......!......!......!....
d500 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 ..!......!......!......!......!.
d520 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 .....!......!......!......!.....
d540 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 .!......!......!......!......!..
d560 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 21 f0 00 fe 00 01 c0 ....!......!......!......!......
d580 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 01 c0 21 20 01 fe !......!......!......!......!...
d5a0 00 01 c0 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 00 00 00 00 00 fe 00 00 00 00 ...!......!......!..............
d5c0 00 00 fe 00 00 00 00 00 00 fc 00 01 c0 21 4b 01 fe 00 01 c0 21 f0 00 fe 00 08 c0 21 1b 01 fe 00 .............!K.....!......!....
d5e0 01 c0 21 1b 01 fe 00 0e c0 21 1b 01 fe 00 01 c0 21 1b 01 00 00 00 00 00 01 01 00 00 01 00 00 2d ..!......!......!..............-
d600 2f 0b 00 00 91 0e 00 00 92 0e 00 00 d0 0f 00 00 d1 0f 00 00 f4 0f 00 00 f5 0f 00 00 33 12 00 00 /...........................3...
d620 34 12 00 00 bb 12 00 00 fc 13 00 00 68 14 00 00 0a 15 00 00 ba 15 00 00 49 17 00 00 4a 17 00 00 4...........h...........I...J...
d640 5a 17 00 00 5b 17 00 00 dc 17 00 00 dd 17 00 00 13 18 00 00 e1 18 00 00 0f 1c 00 00 5b 1c 00 00 Z...[.......................[...
d660 9a 1c 00 00 b5 1c 00 00 b6 1c 00 00 dc 1d 00 00 dd 1d 00 00 48 1e 00 00 bf 1e 00 00 83 24 00 00 ....................H........$..
d680 84 24 00 00 bf 24 00 00 c0 24 00 00 c3 24 00 00 01 25 00 00 3d 25 00 00 7a 25 00 00 fe 00 0a c0 .$...$...$...$...%..=%..z%......
d6a0 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 04 c0 21 1b 01 fe 00 01 c0 21 1b 01 fc 00 01 c0 21 1b 01 fe !......!......!......!......!...
d6c0 00 01 c0 21 f0 00 fe 00 07 c0 21 1b 01 fe 00 01 c0 21 1b 01 db 00 02 c0 21 1b 01 db 00 04 c0 21 ...!......!......!......!......!
d6e0 1b 01 db 00 02 c0 21 1b 01 db 00 02 c0 21 1b 01 db 00 03 c0 21 1b 01 db 00 05 c0 21 1b 01 fe 00 ......!......!......!......!....
d700 01 c0 21 f0 00 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 f0 00 fe 00 02 c0 21 1b 01 fe 00 01 c0 21 1b ..!......!......!......!......!.
d720 01 d4 00 01 c0 21 1b 01 d4 00 03 c0 21 1b 01 d4 00 0b c0 21 1b 01 d4 00 01 c0 21 1b 01 d4 00 01 .....!......!......!......!.....
d740 c0 21 1b 01 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 f0 00 fe 00 04 c0 21 1b 01 fe 00 01 c0 21 1b 01 .!......!......!......!......!..
d760 db 04 ff c0 21 45 02 db 04 ff c0 21 45 02 db 04 ff c0 21 13 15 fe 00 01 c0 21 1b 01 fe 00 01 c0 ....!E.....!E.....!......!......
d780 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe !......!......!......!......!...
d7a0 00 01 c0 21 eb 00 00 00 06 00 00 11 d0 02 13 30 fd 16 c8 00 00 00 20 00 00 0d 0b 11 68 01 13 98 ...!...........0............h...
d7c0 fe 0c 34 ff 01 00 08 00 00 01 00 00 00 01 00 68 01 00 00 00 00 00 00 b7 00 00 00 00 00 00 00 00 ..4............h................
d7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 02 00 00 01 00 00 26 ...............................&
d800 7a 25 00 00 b6 25 00 00 c7 25 00 00 ca 25 00 00 cb 25 00 00 f2 25 00 00 f3 25 00 00 fa 25 00 00 z%...%...%...%...%...%...%...%..
d820 32 26 00 00 71 26 00 00 a7 26 00 00 db 26 00 00 e2 26 00 00 e3 26 00 00 0a 27 00 00 0b 27 00 00 2&..q&...&...&...&...&...'...'..
d840 12 27 00 00 50 27 00 00 8c 27 00 00 c8 27 00 00 04 28 00 00 3f 28 00 00 7c 28 00 00 bc 28 00 00 .'..P'...'...'...(..?(..|(...(..
d860 d6 28 00 00 dd 28 00 00 de 28 00 00 fe 28 00 00 14 29 00 00 2c 29 00 00 40 29 00 00 41 29 00 00 .(...(...(...(...)..,)..@)..A)..
d880 48 29 00 00 8a 29 00 00 99 29 00 00 a0 29 00 00 a1 29 00 00 bc 29 00 00 bd 29 00 00 c4 29 00 00 H)...)...)...)...)...)...)...)..
d8a0 01 2a 00 00 41 2a 00 00 83 2a 00 00 c2 2a 00 00 03 2b 00 00 44 2b 00 00 fe 00 01 c0 21 eb 00 fe .*..A*...*...*...+..D+......!...
d8c0 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 ...!......!......!......!......!
d8e0 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 ......!......!......!......!....
d900 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb ..!......!......!......!......!.
d920 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 .....!......!......!......!.....
d940 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 .!......!......!......!......!..
d960 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 ....!......!......!......!......
d980 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe !......!......!......!......!...
d9a0 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 ...!......!......!......!......!
d9c0 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 ......!......!......!......!....
d9e0 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 00 00 00 00 00 00 00 00 00 01 00 00 2d ..!......!......!..............-
da00 44 2b 00 00 83 2b 00 00 c2 2b 00 00 02 2c 00 00 2b 2c 00 00 32 2c 00 00 33 2c 00 00 62 2c 00 00 D+...+...+...,..+,..2,..3,..b,..
da20 63 2c 00 00 7b 2c 00 00 b0 2c 00 00 b1 2c 00 00 72 2d 00 00 73 2d 00 00 25 2e 00 00 26 2e 00 00 c,..{,...,...,..r-..s-..%...&...
da40 41 2e 00 00 42 2e 00 00 62 30 00 00 63 30 00 00 f7 33 00 00 f8 33 00 00 48 35 00 00 49 35 00 00 A...B...b0..c0...3...3..H5..I5..
da60 d2 35 00 00 d3 35 00 00 e5 35 00 00 e6 35 00 00 32 37 00 00 33 37 00 00 4b 37 00 00 4c 37 00 00 .5...5...5...5..27..37..K7..L7..
da80 49 39 00 00 4a 39 00 00 1c 3a 00 00 1d 3a 00 00 46 3a 00 00 47 3a 00 00 4f 3a 00 00 74 3a 00 00 I9..J9...:...:..F:..G:..O:..t:..
daa0 94 3a 00 00 b6 3a 00 00 d7 3a 00 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb .:...:...:......!......!......!.
dac0 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 .....!......!......!......!.....
dae0 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 1b 01 fe 00 03 c0 21 1b 01 .!......!......!......!......!..
db00 fe 00 01 c0 21 1b 01 fe 00 02 c0 21 1b 01 fe 00 01 c0 21 1b 01 fc 00 01 c0 21 1b 01 fe 00 01 c0 ....!......!......!......!......
db20 21 f0 00 fe 00 06 c0 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 0b c0 21 1b 01 fe 00 01 c0 21 1b 01 fe !......!......!......!......!...
db40 00 04 c0 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 02 c0 21 1b 01 fe 00 01 c0 21 1b 01 fa 00 01 c0 21 ...!......!......!......!......!
db60 4b 01 fe 00 01 c0 21 f0 00 fe 00 04 c0 21 1b 01 f3 00 01 c0 21 f0 00 fc 00 01 c0 21 1b 01 fe 00 K.....!......!......!......!....
db80 01 c0 21 f0 00 fe 00 06 c0 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 03 c0 21 1b 01 fe 00 01 c0 21 1b ..!......!......!......!......!.
dba0 01 f1 00 01 c0 21 1b 01 fe 00 01 c0 21 f0 00 ea 00 01 c0 21 eb 00 ea 00 01 c0 21 eb 00 ea 00 01 .....!......!......!......!.....
dbc0 c0 21 eb 00 ea 00 01 c0 21 eb 00 ea 00 01 c0 21 eb 00 00 00 06 00 00 07 01 08 01 11 d0 02 13 30 .!......!......!...............0
dbe0 fd 00 01 03 00 00 06 00 00 11 d0 02 13 30 fd 16 c8 00 00 00 01 01 00 00 01 02 00 00 01 00 00 2a .............0.................*
dc00 73 65 20 71 75 65 73 74 69 6f 6e 73 20 69 73 20 79 65 73 2c 20 74 68 65 20 52 64 72 20 6d 61 79 se.questions.is.yes,.the.Rdr.may
dc20 20 62 65 67 69 6e 20 74 6f 20 69 73 73 75 65 20 63 6f 6d 70 72 65 73 73 65 64 20 74 72 61 6e 73 .begin.to.issue.compressed.trans
dc40 66 65 72 73 2e 20 20 41 74 20 74 68 69 73 20 70 6f 69 6e 74 20 74 68 65 72 65 20 69 73 20 73 74 fers...At.this.point.there.is.st
dc60 69 6c 6c 20 61 20 76 65 72 79 20 73 6d 61 6c 6c 20 70 6f 73 73 69 62 69 6c 69 74 79 20 74 68 61 ill.a.very.small.possibility.tha
dc80 74 20 74 68 65 20 73 65 72 76 65 72 20 77 69 6c 6c 20 66 61 69 6c 20 61 6e 79 20 63 6f 6d 70 72 t.the.server.will.fail.any.compr
dca0 65 73 73 65 64 20 74 72 61 6e 73 66 65 72 2e 20 20 41 74 20 74 68 61 74 20 70 6f 69 6e 74 20 74 essed.transfer...At.that.point.t
dcc0 68 65 20 52 64 72 20 6d 75 73 74 20 72 65 69 73 73 75 65 20 74 68 65 20 74 72 61 6e 73 66 65 72 he.Rdr.must.reissue.the.transfer
dce0 20 61 73 20 61 20 6e 6f 72 6d 61 6c 20 6e 6f 6e 63 6f 6d 70 72 65 73 73 65 64 20 74 72 61 6e 73 .as.a.normal.noncompressed.trans
dd00 66 65 72 2c 20 70 6f 73 73 69 62 6c 79 20 64 65 63 69 64 69 6e 67 20 74 6f 20 64 6f 20 73 6f 20 fer,.possibly.deciding.to.do.so.
dd20 66 72 6f 6d 20 6e 6f 77 20 6f 6e 20 66 6f 72 20 74 68 61 74 20 66 69 6c 65 2e 20 20 49 74 20 69 from.now.on.for.that.file...It.i
dd40 73 20 54 42 53 20 77 68 65 74 68 65 72 20 74 68 65 72 65 20 61 72 65 20 61 6e 79 20 69 6d 70 6f s.TBS.whether.there.are.any.impo
dd60 72 74 61 6e 74 20 63 61 73 65 73 20 77 68 65 72 65 20 63 6f 6d 70 72 65 73 73 65 64 20 74 72 61 rtant.cases.where.compressed.tra
dd80 6e 73 66 65 72 73 20 73 68 6f 75 6c 64 20 72 65 73 75 6d 65 20 61 66 74 65 72 20 73 6f 6d 65 20 nsfers.should.resume.after.some.
dda0 73 6f 72 74 20 6f 66 20 74 72 61 6e 73 69 65 6e 74 20 65 72 72 6f 72 2e 0d 0d 54 68 65 20 52 64 sort.of.transient.error...The.Rd
ddc0 72 20 69 74 73 65 6c 66 20 6d 61 79 20 64 65 74 65 72 6d 69 6e 65 20 6f 74 68 65 72 20 72 65 61 r.itself.may.determine.other.rea
dde0 73 6f 6e 73 20 74 6f 20 64 6f 20 61 20 6e 6f 72 6d 61 6c 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 sons.to.do.a.normal.uncompressed
de00 20 74 72 61 6e 73 66 65 72 2c 20 73 75 63 68 20 61 73 20 77 69 74 68 20 61 20 72 65 61 64 20 77 .transfer,.such.as.with.a.read.w
de20 68 69 63 68 20 69 73 20 6d 75 63 68 20 73 6d 61 6c 6c 65 72 20 74 68 61 6e 20 61 20 63 68 75 6e hich.is.much.smaller.than.a.chun
de40 6b 2c 20 6f 72 20 61 20 77 72 69 74 65 20 77 68 69 63 68 20 69 73 20 6e 6f 74 20 63 68 75 6e 6b k,.or.a.write.which.is.not.chunk
de60 2d 61 6c 69 67 6e 65 64 20 28 70 72 65 73 75 6d 61 62 6c 79 20 6f 6e 6c 79 20 6f 63 63 75 72 73 -aligned.(presumably.only.occurs
de80 20 77 68 65 6e 20 74 68 65 20 66 69 6c 65 20 69 73 20 6e 6f 74 20 63 61 63 68 65 64 29 2c 20 6f .when.the.file.is.not.cached),.o
dea0 72 20 61 6e 20 65 76 65 6e 20 6c 61 72 67 65 72 20 6d 69 6e 69 6d 75 6d 20 74 72 61 6e 73 66 65 r.an.even.larger.minimum.transfe
dec0 72 20 73 69 7a 65 20 62 61 73 65 64 20 6f 6e 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 61 6e 61 6c r.size.based.on.performance.anal
dee0 79 73 69 73 2c 20 65 74 63 2e 0d 0d 0d 37 02 00 99 0a 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 ysis,.etc....7.......!.....!....
df00 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 .!.....!.....!.....!.....!.....!
df20 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 f0 00 .....!.....!.....!.....!.....!..
df40 00 03 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 eb 00 00 01 ...!.....!.....!.....!.....!....
df60 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 .!.....!.....!.....!.....!.....!
df80 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
dfa0 00 01 c0 21 f0 00 00 09 c0 21 f0 00 00 01 c0 21 f0 00 04 ff c0 21 ea 01 00 01 c0 21 fa 00 04 ff ...!.....!.....!.....!.....!....
dfc0 c0 21 ca 03 00 01 c0 21 f0 00 00 03 c0 21 f0 00 00 01 c0 21 f0 00 00 01 c0 21 1b 01 00 01 c0 21 .!.....!.....!.....!.....!.....!
dfe0 f0 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
e000 ab 96 00 00 ac 96 00 00 b4 96 00 00 d1 96 00 00 19 97 00 00 2a 97 00 00 84 97 00 00 d1 97 00 00 ....................*...........
e020 da 97 00 00 df 97 00 00 f0 97 00 00 f2 97 00 00 f3 97 00 00 fa 97 00 00 2a 98 00 00 84 98 00 00 ........................*.......
e040 97 98 00 00 9a 98 00 00 f4 98 00 00 3a 99 00 00 3c 99 00 00 96 99 00 00 b8 99 00 00 b9 99 00 00 ............:...<...............
e060 ba 99 00 00 cd 99 00 00 09 9a 00 00 25 9a 00 00 28 9a 00 00 54 9a 00 00 68 9a 00 00 9d 9a 00 00 ............%...(...T...h.......
e080 e3 9a 00 00 ea 9a 00 00 eb 9a 00 00 ec 9a 00 00 ed 9a 00 00 ee 9a 00 00 f2 9a 00 00 fd fd fd fd ................................
e0a0 fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fa fa fd fd fd fd fd fd fd fd fd fd fd 00 00 00 ................................
e0c0 f8 f6 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e1e0 00 00 00 00 00 00 00 00 00 00 00 00 02 75 01 00 03 50 11 00 05 56 81 63 18 00 03 63 18 00 00 26 .............u...P...V.c...c...&
e200 00 00 00 00 b4 00 00 00 4f 6e 00 00 06 00 ff ff ff ff 03 00 ff ff ff ff 06 00 ee 9a 00 00 03 00 ........On......................
e220 ff ff ff ff 0d 00 04 21 ff ff 01 00 00 21 ff ff 02 00 04 21 ff ff 03 00 00 21 ff ff 04 00 04 21 .......!.....!.....!.....!.....!
e240 ff ff 05 00 00 21 ff ff 06 00 06 20 ff ff 07 00 00 20 ff ff 08 00 04 20 ff ff 09 00 00 20 ff ff .....!..........................
e260 0a 00 04 20 ff ff 0b 00 00 20 ff ff 0c 00 06 20 ff ff 0d 00 00 00 00 00 b4 00 00 00 d1 0c 00 00 ................................
e280 6e 17 00 00 c3 21 00 00 62 29 00 00 29 33 00 00 be 3c 00 00 83 44 00 00 18 4d 00 00 10 55 00 00 n....!..b)..)3...<...D...M...U..
e2a0 6e 5b 00 00 55 63 00 00 4f 6e 00 00 00 00 00 00 00 00 01 00 24 00 00 00 02 00 a1 01 00 00 03 00 n[..Uc..On..........$...........
e2c0 3e 00 00 00 04 00 01 00 00 00 05 00 89 00 00 00 06 00 2a 00 00 00 07 00 9b 00 00 00 08 00 1d 01 >.................*.............
e2e0 00 00 09 00 29 00 00 00 0a 00 01 00 00 00 0b 00 42 02 00 00 0c 00 00 00 00 00 97 00 00 00 b4 00 ....)...........B...............
e300 00 00 d0 0c 00 00 d1 0c 00 00 33 0f 00 00 ba 12 00 00 49 14 00 00 4a 14 00 00 dc 14 00 00 5b 19 ..........3.......I...J.......[.
e320 00 00 9a 19 00 00 dc 1a 00 00 bf 1b 00 00 25 2b 00 00 26 2b 00 00 63 2d 00 00 bd 30 00 00 fa 31 ..............%+..&+..c-...0...1
e340 00 00 fb 31 00 00 84 32 00 00 85 32 00 00 aa 32 00 00 ab 32 00 00 28 33 00 00 29 33 00 00 b2 33 ...1...2...2...2...2..(3..)3...3
e360 00 00 5f 34 00 00 06 35 00 00 ee 36 00 00 ef 36 00 00 20 38 00 00 21 38 00 00 34 38 00 00 6e 39 .._4...5...6...6...8..!8..48..n9
e380 00 00 6f 39 00 00 88 39 00 00 bd 3c 00 00 be 3c 00 00 e7 3c 00 00 57 3d 00 00 6c 3d 00 00 82 3d ..o9...9...<...<...<..W=..l=...=
e3a0 00 00 98 3d 00 00 53 3e 00 00 5a 3e 00 00 5b 3e 00 00 4f 40 00 00 50 40 00 00 00 41 00 00 01 41 ...=..S>..Z>..[>..O@..P@...A...A
e3c0 00 00 58 43 00 00 59 43 00 00 56 44 00 00 57 44 00 00 81 44 00 00 82 44 00 00 f3 44 00 00 08 45 ..XC..YC..VD..WD...D...D...D...E
e3e0 00 00 1e 45 00 00 33 45 00 00 ed 45 00 00 f4 45 00 00 f5 45 00 00 5e 48 00 00 5f 48 00 00 11 49 ...E..3E...E...E...E..^H.._H...I
e400 00 00 12 49 00 00 75 4b 00 00 76 4b 00 00 49 4c 00 00 4a 4c 00 00 7a 4c 00 00 7b 4c 00 00 10 4d ...I..uK..vK..IL..JL..zL..{L...M
e420 00 00 17 4d 00 00 18 4d 00 00 35 4e 00 00 36 4e 00 00 67 4e 00 00 68 4e 00 00 70 4e 00 00 43 4f ...M...M..5N..6N..gN..hN..pN..CO
e440 00 00 4a 4f 00 00 4b 4f 00 00 02 51 00 00 03 51 00 00 d6 51 00 00 d7 51 00 00 1c 53 00 00 4f 53 ..JO..KO...Q...Q...Q...Q...S..OS
e460 00 00 b0 5a 00 00 b1 5a 00 00 fb 5e 00 00 fc 5e 00 00 21 5f 00 00 22 5f 00 00 2b 5f 00 00 34 5f ...Z...Z...^...^..!_.."_..+_..4_
e480 00 00 3a 5f 00 00 5b 5f 00 00 85 5f 00 00 b1 5f 00 00 de 5f 00 00 e5 5f 00 00 e6 5f 00 00 d3 60 ..:_..[_..._..._..._..._..._...`
e4a0 00 00 d4 60 00 00 ee 60 00 00 ef 60 00 00 f8 60 00 00 01 61 00 00 07 61 00 00 1d 61 00 00 40 61 ...`...`...`...`...a...a...a..@a
e4c0 00 00 65 61 00 00 85 61 00 00 a8 61 00 00 c6 61 00 00 e7 61 00 00 17 62 00 00 1e 62 00 00 1f 62 ..ea...a...a...a...a...b...b...b
e4e0 00 00 97 65 00 00 98 65 00 00 4f 66 00 00 9a 66 00 00 ed 67 00 00 ee 67 00 00 e7 68 00 00 e8 68 ...e...e..Of...f...g...g...h...h
e500 00 00 00 69 00 00 01 69 00 00 0a 69 00 00 13 69 00 00 19 69 00 00 2d 69 00 00 4f 69 00 00 74 69 ...i...i...i...i...i..-i..Oi..ti
e520 00 00 95 69 00 00 b8 69 00 00 ed 69 00 00 14 6a 00 00 2b 6a 00 00 32 6a 00 00 33 6a 00 00 a7 6c ...i...i...i...j..+j..2j..3j...l
e540 00 00 a8 6c 00 00 30 6d 00 00 31 6d 00 00 e3 6d 00 00 e4 6d 00 00 4f 6e 00 00 00 01 c0 21 1b 01 ...l..0m..1m...m...m..On.....!..
e560 00 01 c0 21 4b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 05 c0 21 1b 01 00 01 ...!K....!.....!.....!.....!....
e580 c0 21 f0 00 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 .!.....!.....!.....!.....!.....!
e5a0 1b 01 04 ff c0 21 13 15 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 0a c0 21 1b 01 00 04 c0 21 1b 01 .....!.....!.....!.....!.....!..
e5c0 00 01 c0 21 1b 01 00 02 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 f0 00 00 02 ...!.....!.....!.....!.....!....
e5e0 c0 21 1b 01 00 01 c0 21 1b 01 00 02 c0 21 1b 01 00 02 c0 21 1b 01 00 03 c0 21 1b 01 00 06 c0 21 .!.....!.....!.....!.....!.....!
e600 d7 3a 00 00 ed 3a 00 00 03 3b 00 00 26 3b 00 00 58 3b 00 00 7b 3b 00 00 a6 3b 00 00 ad 3b 00 00 .:...:...;..&;..X;..{;...;...;..
e620 ae 3b 00 00 41 3d 00 00 42 3d 00 00 3f 3e 00 00 40 3e 00 00 6a 3e 00 00 6b 3e 00 00 6c 3e 00 00 .;..A=..B=..?>..@>..j>..k>..l>..
e640 74 3e 00 00 9a 3e 00 00 ba 3e 00 00 dc 3e 00 00 fd 3e 00 00 13 3f 00 00 28 3f 00 00 4b 3f 00 00 t>...>...>...>...>...?..(?..K?..
e660 7c 3f 00 00 9f 3f 00 00 ca 3f 00 00 d1 3f 00 00 d2 3f 00 00 7e 41 00 00 7f 41 00 00 52 42 00 00 |?...?...?...?...?..~A...A..RB..
e680 53 42 00 00 7b 42 00 00 7c 42 00 00 84 42 00 00 a8 42 00 00 c8 42 00 00 ea 42 00 00 0b 43 00 00 SB..{B..|B...B...B...B...B...C..
e6a0 21 43 00 00 39 43 00 00 5c 43 00 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb !C..9C..\C......!......!......!.
e6c0 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f3 00 01 .....!......!......!......!.....
e6e0 c0 21 eb 00 f1 00 05 c0 21 1b 01 f1 00 01 c0 21 1b 01 f1 00 03 c0 21 1b 01 ec 00 01 c0 21 eb 00 .!......!......!......!......!..
e700 ea 00 01 c0 21 1b 01 f1 00 01 c0 21 f0 00 f3 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 ....!......!......!......!......
e720 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 !......!......!......!......!...
e740 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 ...!......!......!......!......!
e760 eb 00 f9 00 01 c0 21 eb 00 f3 00 01 c0 21 eb 00 f1 00 05 c0 21 1b 01 f1 00 01 c0 21 f0 00 f1 00 ......!......!......!......!....
e780 03 c0 21 1b 01 f1 00 01 c0 21 f0 00 ea 00 01 c0 21 1b 01 f1 00 01 c0 21 f0 00 f9 00 01 c0 21 eb ..!......!......!......!......!.
e7a0 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 .....!......!......!......!.....
e7c0 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 00 00 01 03 00 00 04 00 00 11 d0 02 13 30 .!......!......!...............0
e7e0 fd 00 01 00 00 00 05 00 00 07 01 11 d0 02 13 30 fd 00 06 00 00 07 01 08 01 11 d0 02 13 30 fd 2a ...............0.............0.*
e800 5c 43 00 00 8e 43 00 00 b1 43 00 00 dc 43 00 00 e3 43 00 00 e4 43 00 00 79 46 00 00 7a 46 00 00 \C...C...C...C...C...C..yF..zF..
e820 71 47 00 00 72 47 00 00 a2 47 00 00 a3 47 00 00 a8 47 00 00 d4 47 00 00 f4 47 00 00 0a 48 00 00 qG..rG...G...G...G...G...G...H..
e840 35 48 00 00 3c 48 00 00 3d 48 00 00 00 49 00 00 01 49 00 00 31 49 00 00 32 49 00 00 3a 49 00 00 5H..<H..=H...I...I..1I..2I..:I..
e860 66 49 00 00 86 49 00 00 a8 49 00 00 c9 49 00 00 df 49 00 00 f7 49 00 00 1a 4a 00 00 4b 4a 00 00 fI...I...I...I...I...I...J..KJ..
e880 6e 4a 00 00 99 4a 00 00 a0 4a 00 00 a1 4a 00 00 66 4d 00 00 67 4d 00 00 3a 4e 00 00 3b 4e 00 00 nJ...J...J...J..fM..gM..:N..;N..
e8a0 3c 4e 00 00 44 4e 00 00 71 4e 00 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb <N..DN..qN......!......!......!.
e8c0 00 f9 00 01 c0 21 eb 00 f3 00 01 c0 21 eb 00 f1 00 08 c0 21 1b 01 ec 00 01 c0 21 eb 00 f1 00 03 .....!......!......!......!.....
e8e0 c0 21 1b 01 ec 00 01 c0 21 eb 00 ea 00 01 c0 21 1b 01 f3 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 .!......!......!......!......!..
e900 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 ....!......!......!......!......
e920 21 eb 00 f3 00 01 c0 21 eb 00 f1 00 03 c0 21 1b 01 f9 00 01 c0 21 eb 00 ea 00 01 c0 21 1b 01 f1 !......!......!......!......!...
e940 00 01 c0 21 f0 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 ...!......!......!......!......!
e960 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 ......!......!......!......!....
e980 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb ..!......!......!......!......!.
e9a0 00 f1 00 09 c0 21 1b 01 f1 00 01 c0 21 f0 00 f1 00 03 c0 21 1b 01 f9 00 01 c0 21 eb 00 f9 00 01 .....!......!......!......!.....
e9c0 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 00 00 01 03 00 00 04 00 00 11 d0 02 13 30 .!......!......!...............0
e9e0 fd 00 01 00 00 00 05 00 00 07 01 11 d0 02 13 30 fd 00 06 00 00 07 01 08 01 11 d0 02 13 30 fd 2a ...............0.............0.*
ea00 71 4e 00 00 91 4e 00 00 b3 4e 00 00 c9 4e 00 00 ec 4e 00 00 17 4f 00 00 1e 4f 00 00 1f 4f 00 00 qN...N...N...N...N...O...O...O..
ea20 d6 50 00 00 d7 50 00 00 aa 51 00 00 ab 51 00 00 e1 51 00 00 e2 51 00 00 e6 51 00 00 e7 51 00 00 .P...P...Q...Q...Q...Q...Q...Q..
ea40 0f 52 00 00 10 52 00 00 2c 53 00 00 2d 53 00 00 5f 53 00 00 b2 53 00 00 b3 53 00 00 20 54 00 00 .R...R..,S..-S.._S...S...S...T..
ea60 21 54 00 00 24 54 00 00 64 54 00 00 a5 54 00 00 e7 54 00 00 1c 55 00 00 1f 55 00 00 20 55 00 00 !T..$T..dT...T...T...U...U...U..
ea80 49 55 00 00 4a 55 00 00 51 55 00 00 79 55 00 00 80 55 00 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 IU..JU..QU..yU...U......!......!
eaa0 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f9 00 01 c0 21 eb 00 f3 00 ......!......!......!......!....
eac0 01 c0 21 eb 00 f1 00 06 c0 21 1b 01 f3 00 01 c0 21 eb 00 f1 00 03 c0 21 1b 01 f3 00 01 c0 21 eb ..!......!......!......!......!.
eae0 00 ef 00 01 c0 21 1b 01 f1 00 01 c0 21 f0 00 f1 00 01 c0 21 1b 01 f1 00 01 c0 21 1b 01 ed 00 01 .....!......!......!......!.....
eb00 c0 21 1b 01 f1 00 01 c0 21 f0 00 f1 00 04 c0 21 1b 01 f1 00 01 c0 21 1b 01 cc 00 01 c0 21 1b 01 .!......!......!......!......!..
eb20 cc 00 01 c0 21 1b 01 f1 00 01 c0 21 f0 00 f1 00 02 c0 21 1b 01 f1 00 01 c0 21 1b 01 f1 00 01 c0 ....!......!......!......!......
eb40 21 eb 00 f1 00 01 c0 21 eb 00 f1 00 01 c0 21 eb 00 f1 00 01 c0 21 eb 00 f1 00 01 c0 21 eb 00 f1 !......!......!......!......!...
eb60 00 01 c0 21 eb 00 f1 00 01 c0 21 eb 00 f1 00 01 c0 21 eb 00 f1 00 01 c0 21 eb 00 f1 00 01 c0 21 ...!......!......!......!......!
eb80 eb 00 f1 00 01 c0 21 eb 00 f1 00 01 c0 21 eb 00 00 00 00 00 00 00 00 00 20 00 00 0d 0b 11 68 01 ......!......!................h.
eba0 13 98 fe 0c 34 ff 01 00 08 00 00 01 00 00 00 01 00 68 01 00 00 00 00 00 00 b7 00 00 00 00 00 00 ....4............h..............
ebc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 02 00 00 01 03 ................................
ebe0 00 00 01 00 00 00 05 00 00 08 01 11 d0 02 13 30 fd 00 06 00 00 07 01 08 01 11 d0 02 13 30 fd 24 ...............0.............0.$
ec00 80 55 00 00 81 55 00 00 93 55 00 00 a5 55 00 00 a6 55 00 00 ad 55 00 00 bb 55 00 00 c2 55 00 00 .U...U...U...U...U...U...U...U..
ec20 c3 55 00 00 d4 55 00 00 d5 55 00 00 de 55 00 00 1f 56 00 00 32 56 00 00 39 56 00 00 3a 56 00 00 .U...U...U...U...V..2V..9V..:V..
ec40 48 56 00 00 49 56 00 00 63 56 00 00 96 56 00 00 97 56 00 00 9a 56 00 00 d5 56 00 00 0c 57 00 00 HV..IV..cV...V...V...V...V...W..
ec60 47 57 00 00 7b 57 00 00 ba 57 00 00 c6 57 00 00 c9 57 00 00 ca 57 00 00 fd 57 00 00 fe 57 00 00 GW..{W...W...W...W...W...W...W..
ec80 12 5a 00 00 13 5a 00 00 c0 5a 00 00 c1 5a 00 00 de 5a 00 00 df 5a 00 00 7e 5b 00 00 7f 5b 00 00 .Z...Z...Z...Z...Z...Z..~[...[..
eca0 98 5d 00 00 99 5d 00 00 0b 5f 00 00 0c 5f 00 00 f3 5f 00 00 f4 5f 00 00 fe 00 01 c0 21 eb 00 fe .]...]..._..._..._..._......!...
ecc0 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 ...!......!......!......!......!
ece0 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 ......!......!......!......!....
ed00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb ..!......!......!......!......!.
ed20 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 .....!......!......!......!.....
ed40 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 .!......!......!......!......!..
ed60 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 ....!......!......!......!......
ed80 21 eb 00 fe 00 01 c0 21 eb 00 fe 00 01 c0 21 1b 01 fe 00 06 c0 21 1b 01 fe 00 01 c0 21 1b 01 fe !......!......!......!......!...
eda0 00 02 c0 21 1b 01 fe 00 01 c0 21 1b 01 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 f0 00 fe 00 02 c0 21 ...!......!......!......!......!
edc0 1b 01 fe 00 01 c0 21 1b 01 fe 00 07 c0 21 1b 01 fe 00 01 c0 21 1b 01 fe 00 05 c0 21 1b 01 fe 00 ......!......!......!......!....
ede0 01 c0 21 1b 01 fe 04 ff c0 21 56 03 fe 00 01 c0 21 1b 01 00 00 00 00 00 01 02 00 00 01 00 00 2d ..!......!V.....!..............-
ee00 f4 5f 00 00 19 60 00 00 1a 60 00 00 8f 60 00 00 90 60 00 00 a8 60 00 00 a9 60 00 00 02 62 00 00 ._...`...`...`...`...`...`...b..
ee20 03 62 00 00 39 62 00 00 3a 62 00 00 54 62 00 00 55 62 00 00 aa 62 00 00 ab 62 00 00 d6 62 00 00 .b..9b..:b..Tb..Ub...b...b...b..
ee40 d7 62 00 00 f3 62 00 00 f4 62 00 00 e1 63 00 00 e2 63 00 00 0c 64 00 00 47 64 00 00 48 64 00 00 .b...b...b...c...c...d..Gd..Hd..
ee60 73 64 00 00 74 64 00 00 75 64 00 00 76 64 00 00 f0 64 00 00 a3 65 00 00 a4 65 00 00 05 7e 00 00 sd..td..ud..vd...d...e...e...~..
ee80 06 7e 00 00 07 7e 00 00 14 80 00 00 99 80 00 00 18 81 00 00 1b 81 00 00 24 81 00 00 2d 81 00 00 .~...~..................$...-...
eea0 33 81 00 00 54 81 00 00 7e 81 00 00 aa 81 00 00 fe 00 01 c0 21 1b 01 fc 00 01 c0 21 f0 00 fc 00 3...T...~...........!......!....
eec0 02 c0 21 1b 01 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 1b 01 fc 00 01 c0 21 f0 00 fc 00 04 c0 21 1b ..!......!......!......!......!.
eee0 01 fc 00 01 c0 21 1b 01 fc 00 01 c0 21 1b 01 fc 00 01 c0 21 1b 01 fe 00 01 c0 21 1b 01 fc 00 01 .....!......!......!......!.....
ef00 c0 21 f0 00 fc 00 01 c0 21 1b 01 fc 00 01 c0 21 1b 01 fc 00 01 c0 21 1b 01 fc 00 01 c0 21 1b 01 .!......!......!......!......!..
ef20 fe 00 01 c0 21 1b 01 fc 00 01 c0 21 f0 00 fc 00 03 c0 21 1b 01 fc 00 01 c0 21 1b 01 fc 00 01 c0 ....!......!......!......!......
ef40 21 1b 01 fa 00 01 c0 21 1b 01 fc 00 00 00 00 00 00 f8 00 01 c0 21 1b 01 fc 00 00 00 00 00 00 fc !......!.............!..........
ef60 00 00 00 00 00 00 fc 00 01 c0 21 1b 01 f1 00 01 c0 21 eb 00 fc 00 06 c0 21 1b 01 fc 00 01 c0 21 ..........!......!......!......!
ef80 1b 01 fc 00 08 c0 21 1b 01 fc 00 01 c0 21 1b 01 f1 00 01 c0 21 eb 00 fc 00 01 c0 21 1b 01 fc 00 ......!......!......!......!....
efa0 00 00 00 00 00 fc 00 00 00 00 00 00 fc 00 01 c0 21 f0 00 fc 00 01 c0 21 eb 00 fc 00 01 c0 21 eb ................!......!......!.
efc0 00 fc 00 01 c0 21 eb 00 fc 00 01 c0 21 eb 00 fc 00 01 c0 21 eb 00 fc 00 01 c0 21 eb 00 00 00 00 .....!......!......!......!.....
efe0 00 00 06 00 00 07 01 08 01 11 d0 02 13 30 fd 00 01 10 00 00 01 0f 00 00 01 00 00 00 01 03 00 2b .............0.................+
f000 0e 00 12 00 08 00 01 00 4b 00 0f 00 00 00 00 00 1a 00 00 40 f1 ff 02 00 1a 00 06 4e 6f 72 6d 61 ........K..........@.......Norma
f020 6c 00 02 00 00 00 03 00 61 09 04 00 2e 00 01 40 01 00 02 00 2e 00 09 48 65 61 64 69 6e 67 20 31 l.......a......@.......Heading.1
f040 00 00 0a 00 01 00 08 01 15 f0 00 16 3c 00 0b 00 55 81 5d 02 00 63 1c 00 6b 1c 00 00 2c 00 02 40 ............<...U.]..c..k...,..@
f060 01 00 02 00 2c 00 09 48 65 61 64 69 6e 67 20 32 00 00 0a 00 02 00 08 01 15 f0 00 16 3c 00 0a 00 ....,..Heading.2............<...
f080 55 81 56 81 5d 02 00 63 18 00 28 00 03 40 01 00 02 00 28 00 09 48 65 61 64 69 6e 67 20 33 00 00 U.V.]..c..(..@....(..Heading.3..
f0a0 0a 00 03 00 08 01 15 f0 00 16 3c 00 05 00 55 81 63 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ..........<...U.c...............
f0c0 22 00 41 40 f2 ff a1 00 22 00 16 44 65 66 61 75 6c 74 20 50 61 72 61 67 72 61 70 68 20 46 6f 6e ".A@...."..Default.Paragraph.Fon
f0e0 74 00 00 00 00 00 00 00 00 00 00 00 20 00 1f 40 01 00 f2 00 20 00 06 48 65 61 64 65 72 00 0c 00 t..............@.......Header...
f100 0f 00 0f 08 00 02 e0 10 c0 21 01 02 00 00 20 00 20 40 01 00 02 01 20 00 06 46 6f 6f 74 65 72 00 .........!.......@.......Footer.
f120 0c 00 10 00 0f 08 00 02 e0 10 c0 21 01 02 00 00 18 00 29 40 a2 00 11 01 18 00 0b 50 61 67 65 20 ...........!......)@.......Page.
f140 4e 75 6d 62 65 72 00 00 00 00 61 64 73 2c 20 42 75 66 66 65 72 20 6d 75 73 74 20 62 65 20 73 75 Number....ads,.Buffer.must.be.su
f160 70 70 6c 69 65 64 2c 20 61 6e 64 20 66 6f 72 20 70 72 65 70 61 72 69 6e 67 20 4d 64 6c 20 52 65 pplied,.and.for.preparing.Mdl.Re
f180 61 64 73 2c 20 4d 64 6c 43 68 61 69 6e 20 6d 75 73 74 20 62 65 20 73 75 70 70 6c 69 65 64 2e 20 ads,.MdlChain.must.be.supplied..
f1a0 66 72 6f 6d 20 61 6e 20 4d 64 6c 20 52 65 61 64 20 20 54 68 69 73 20 4d 64 6c 20 6d 61 79 20 74 from.an.Mdl.Read..This.Mdl.may.t
f1c0 68 65 6e 20 62 65 20 75 73 65 64 20 74 6f 20 61 63 74 75 61 6c 6c 79 20 72 65 63 65 69 76 65 20 hen.be.used.to.actually.receive.
f1e0 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 66 72 6f 6d 20 74 68 65 20 73 65 72 the.compressed.data.from.the.ser
f200 76 65 72 2e 0d 0d 0d 20 20 20 20 4f 55 54 20 50 4d 44 4c 20 2a 4d 64 6c 43 68 61 69 6e 2c 54 68 ver........OUT.PMDL.*MdlChain,Th
f220 65 20 6c 65 6e 67 74 68 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 e.length.specifies.the.number.of
f240 20 62 79 74 65 73 20 62 65 69 6e 67 20 74 72 61 6e 73 66 65 72 72 65 64 20 69 66 20 74 68 65 20 .bytes.being.transferred.if.the.
f260 64 61 74 61 20 77 65 72 65 20 75 6e 63 6f 6d 70 72 65 73 73 65 64 2c 20 61 6e 64 20 74 68 75 73 data.were.uncompressed,.and.thus
f280 20 66 65 77 65 72 20 62 79 74 65 73 20 77 69 6c 6c 20 61 63 74 75 61 6c 6c 79 20 62 65 20 74 72 .fewer.bytes.will.actually.be.tr
f2a0 61 6e 73 66 65 72 72 65 64 20 69 66 20 74 68 65 20 64 61 74 61 20 69 73 20 63 6f 6d 70 72 65 73 ansferred.if.the.data.is.compres
f2c0 73 65 64 20 28 61 73 20 64 65 73 63 72 69 62 65 64 20 69 6e 20 43 6f 6d 70 72 65 73 73 65 64 44 sed.(as.described.in.CompressedD
f2e0 61 74 61 49 6e 66 6f 29 2e 20 20 6f 75 74 70 75 74 6f 6e 6c 79 20 61 73 20 45 69 74 68 65 72 20 ataInfo)...outputonly.as.Either.
f300 42 75 66 66 65 72 20 6f 72 20 4d 64 6c 43 68 61 69 6e 20 6d 75 73 74 20 62 65 20 73 70 65 63 69 Buffer.or.MdlChain.must.be.speci
f320 66 69 65 64 20 61 73 20 4e 55 4c 4c 20 28 61 6e 64 20 74 68 65 20 6f 74 68 65 72 20 6e 6f 74 20 fied.as.NULL.(and.the.other.not.
f340 4e 55 4c 4c 29 2e 20 20 46 6f 72 20 43 6f 70 79 20 57 72 69 74 65 73 2c 20 42 75 66 66 65 72 20 NULL)...For.Copy.Writes,.Buffer.
f360 6d 75 73 74 20 62 65 20 73 75 70 70 6c 69 65 64 2c 20 61 6e 64 20 66 6f 72 20 70 72 65 70 61 72 must.be.supplied,.and.for.prepar
f380 69 6e 67 20 4d 64 6c 20 57 72 69 74 65 73 2c 20 4d 64 6c 43 68 61 69 6e 20 6d 75 73 74 20 62 65 ing.Mdl.Writes,.MdlChain.must.be
f3a0 20 73 75 70 70 6c 69 65 64 2e 20 66 72 6f 6d 20 61 6e 20 4d 64 6c 20 57 72 69 74 65 20 20 54 68 .supplied..from.an.Mdl.Write..Th
f3c0 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 69 73 20 61 63 74 75 61 6c 6c 79 20 69 6e e.compressed.data.is.actually.in
f3e0 20 74 68 65 20 64 65 73 63 72 69 62 65 64 20 62 75 66 66 65 72 73 20 61 6e 64 20 72 65 61 64 79 .the.described.buffers.and.ready
f400 20 74 6f 20 62 65 20 74 72 61 6e 73 6d 69 74 74 65 64 2e 0d 32 2e 31 2e 33 42 4f 4f 4c 45 41 4e .to.be.transmitted..2.1.3BOOLEAN
f420 20 20 49 66 20 46 41 4c 53 45 20 69 73 20 72 65 74 75 72 6e 65 64 2c 20 74 68 65 6e 20 61 6e 20 ..If.FALSE.is.returned,.then.an.
f440 49 72 70 20 6d 75 73 74 20 62 65 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 6c 65 74 65 20 74 68 65 Irp.must.be.used.to.complete.the
f460 20 72 65 61 64 2c 20 61 73 20 64 65 73 63 72 69 62 65 64 20 6c 61 74 65 72 2e 32 2e 31 2e 34 20 .read,.as.described.later.2.1.4.
f480 46 61 73 74 49 6f 44 69 73 70 61 74 63 68 2d 3e 4d 64 6c 57 72 69 74 65 0d 31 32 02 00 99 0a 20 FastIoDispatch->MdlWrite.12.....
f4a0 20 49 74 20 69 73 20 61 20 74 72 69 76 69 61 6c 20 72 6f 75 74 69 6e 65 20 61 6e 64 20 74 68 65 .It.is.a.trivial.routine.and.the
f4c0 72 65 66 6f 72 65 20 61 20 76 65 72 79 20 68 61 6e 64 79 20 72 6f 75 74 69 6e 65 20 66 6f 72 20 refore.a.very.handy.routine.for.
f4e0 66 69 6e 64 69 6e 67 20 6f 75 74 20 69 66 20 61 20 67 69 76 65 6e 20 63 6f 6d 70 72 65 73 73 69 finding.out.if.a.given.compressi
f500 6f 6e 20 66 6f 72 6d 61 74 20 69 73 20 73 75 70 70 6f 72 74 65 64 2e 0d 31 31 0d 4e 54 53 59 53 on.format.is.supported..11.NTSYS
f520 41 50 49 0d 4e 54 53 54 41 54 55 53 0d 4e 54 41 50 49 0d 52 74 6c 47 65 74 43 6f 6d 70 72 65 73 API.NTSTATUS.NTAPI.RtlGetCompres
f540 73 69 6f 6e 57 6f 72 6b 53 70 61 63 65 53 69 7a 65 20 28 0d 20 20 20 20 49 4e 20 55 53 48 4f 52 sionWorkSpaceSize.(.....IN.USHOR
f560 54 20 43 6f 6d 70 72 65 73 73 69 6f 6e 46 6f 72 6d 61 74 41 6e 64 45 6e 67 69 6e 65 2c 0d 20 20 T.CompressionFormatAndEngine,...
f580 20 20 4f 55 54 20 50 55 4c 4f 4e 47 20 43 6f 6d 70 72 65 73 73 42 75 66 66 65 72 57 6f 72 6b 53 ..OUT.PULONG.CompressBufferWorkS
f5a0 70 61 63 65 53 69 7a 65 2c 0d 20 20 20 20 4f 55 54 20 50 55 4c 4f 4e 47 20 43 6f 6d 70 72 65 73 paceSize,.....OUT.PULONG.Compres
f5c0 73 46 72 61 67 6d 65 6e 74 57 6f 72 6b 53 70 61 63 65 53 69 7a 65 0d 20 20 20 20 29 3b 0d 32 2e sFragmentWorkSpaceSize.....);.2.
f5e0 33 2e 32 20 52 74 6c 44 65 63 6f 6d 70 72 65 73 73 43 68 75 6e 6b 73 0d 0d 4e 54 53 59 53 41 50 3.2.RtlDecompressChunks..NTSYSAP
f600 49 0d 4e 54 53 54 41 54 55 53 0d 4e 54 41 50 49 0d 52 74 6c 44 65 63 6f 6d 70 72 65 73 73 43 68 I.NTSTATUS.NTAPI.RtlDecompressCh
f620 75 6e 6b 73 20 28 0d 20 20 20 20 4f 55 54 20 50 55 43 48 41 52 20 55 6e 63 6f 6d 70 72 65 73 73 unks.(.....OUT.PUCHAR.Uncompress
f640 65 64 42 75 66 66 65 72 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 55 6e 63 6f 6d 70 72 65 73 edBuffer,.....IN.ULONG.Uncompres
f660 73 65 64 42 75 66 66 65 72 53 69 7a 65 2c 0d 20 20 20 20 49 4e 20 50 55 43 48 41 52 20 43 6f 6d sedBufferSize,.....IN.PUCHAR.Com
f680 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 43 6f 6d 70 pressedBuffer,.....IN.ULONG.Comp
f6a0 72 65 73 73 65 64 42 75 66 66 65 72 53 69 7a 65 2c 0d 20 20 20 20 49 4e 20 50 55 43 48 41 52 20 ressedBufferSize,.....IN.PUCHAR.
f6c0 43 6f 6d 70 72 65 73 73 65 64 54 61 69 6c 2c 0d 20 20 20 20 49 4e 20 55 4c 4f 4e 47 20 43 6f 6d CompressedTail,.....IN.ULONG.Com
f6e0 70 72 65 73 73 65 64 54 61 69 6c 53 69 7a 65 2c 0d 20 20 20 20 49 4e 20 50 43 4f 4d 50 52 45 53 pressedTailSize,.....IN.PCOMPRES
f700 53 45 44 5f 44 41 54 41 5f 49 4e 46 4f 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f SED_DATA_INFO.CompressedDataInfo
f720 0d 20 20 20 20 29 3b 0d 0d 54 68 69 73 20 72 6f 75 74 69 6e 65 20 6d 61 79 20 62 65 20 75 73 65 .....);..This.routine.may.be.use
f740 64 20 74 6f 20 64 65 63 6f 6d 70 72 65 73 73 20 61 20 73 74 72 65 61 6d 20 6f 66 20 63 68 75 6e d.to.decompress.a.stream.of.chun
f760 6b 73 20 69 6e 74 6f 20 61 6e 6f 74 68 65 72 20 62 75 66 66 65 72 2e 20 20 28 54 79 70 69 63 61 ks.into.another.buffer...(Typica
f780 6c 6c 79 20 74 68 65 20 52 64 72 20 77 6f 75 6c 64 20 75 73 65 20 74 68 69 73 20 74 6f 20 64 65 lly.the.Rdr.would.use.this.to.de
f7a0 63 6f 6d 70 72 65 73 73 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 77 68 69 63 68 20 69 compress.compressed.data.which.i
f7c0 74 20 68 61 73 20 72 65 63 65 69 76 65 64 20 69 6e 74 6f 20 74 68 65 20 43 61 63 68 65 2e 29 20 t.has.received.into.the.Cache.).
f7e0 20 54 6f 20 6d 69 6e 69 6d 69 7a 65 20 62 75 66 66 65 72 69 6e 67 20 72 65 71 75 69 72 65 6d 65 .To.minimize.buffering.requireme
f800 6e 74 73 20 74 68 69 73 20 72 6f 75 74 69 6e 65 20 73 75 70 70 6f 72 74 73 20 61 20 74 72 69 63 nts.this.routine.supports.a.tric
f820 6b 20 77 68 65 72 65 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 64 61 74 61 20 6d 61 79 20 k.where.the.compressed.data.may.
f840 62 65 20 73 75 70 70 6c 69 65 64 20 74 6f 70 2d 61 6c 69 67 6e 65 64 20 69 6e 20 74 77 6f 20 64 be.supplied.top-aligned.in.two.d
f860 69 66 66 65 72 65 6e 74 20 62 75 66 66 65 72 73 2c 20 77 68 65 72 65 20 74 68 65 20 66 69 72 73 ifferent.buffers,.where.the.firs
f880 74 20 62 75 66 66 65 72 20 6d 61 79 20 61 63 74 75 61 6c 6c 79 20 62 65 20 74 68 65 20 73 61 6d t.buffer.may.actually.be.the.sam
f8a0 65 20 61 73 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f 6e 20 55 6e 63 6f 6d 70 72 65 73 73 65 e.as.the.destination.Uncompresse
f8c0 64 42 75 66 66 65 72 21 20 20 53 6f 20 77 68 65 6e 20 64 65 63 6f 6d 70 72 65 73 73 69 6e 67 20 dBuffer!..So.when.decompressing.
f8e0 43 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 20 2b 20 43 6f 6d 70 72 65 73 73 65 64 54 61 69 CompressedBuffer.+.CompressedTai
f900 6c 20 69 6e 74 6f 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 20 43 6f 6d 70 72 l.into.UncompressedBuffer,.Compr
f920 65 73 73 65 64 42 75 66 66 65 72 20 61 6e 64 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 42 75 66 66 essedBuffer.and.UncompressedBuff
f940 65 72 20 6d 61 79 20 6f 76 65 72 6c 61 70 20 61 74 20 74 68 65 20 74 6f 70 2e 20 20 54 68 75 73 er.may.overlap.at.the.top...Thus
f960 20 79 6f 75 20 6f 6e 6c 79 20 68 61 76 65 20 74 6f 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 61 6c .you.only.have.to.dynamically.al
f980 6c 6f 63 61 74 65 20 61 20 34 4b 42 2b 20 43 6f 6d 70 72 65 73 73 65 64 54 61 69 6c 20 62 75 66 locate.a.4KB+.CompressedTail.buf
f9a0 66 65 72 2c 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 74 68 65 20 75 6e 63 6f 6d 70 72 65 73 fer,.regardless.of.the.uncompres
f9c0 73 65 64 20 73 69 7a 65 20 6f 66 20 74 68 65 20 74 72 61 6e 73 66 65 72 2e 20 20 54 79 70 69 63 sed.size.of.the.transfer...Typic
f9e0 61 6c 6c 79 20 74 68 65 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 20 73 74 72 75 ally.the.CompressedDataInfo.stru
fa00 63 74 75 72 65 20 69 73 20 61 70 70 65 6e 64 65 64 20 74 6f 20 74 68 65 20 63 6f 6d 70 72 65 73 cture.is.appended.to.the.compres
fa20 73 65 64 20 64 61 74 61 20 69 74 73 65 6c 66 20 6f 6e 20 74 68 65 20 77 69 72 65 20 61 6e 64 20 sed.data.itself.on.the.wire.and.
fa40 73 65 6e 74 20 61 6c 6c 20 61 74 20 6f 6e 63 65 2c 20 73 6f 20 69 6e 20 74 68 69 73 20 73 69 74 sent.all.at.once,.so.in.this.sit
fa60 75 61 74 69 6f 6e 20 74 68 65 20 72 75 6c 65 73 20 66 6f 72 20 63 61 6c 6c 69 6e 67 20 52 74 6c uation.the.rules.for.calling.Rtl
fa80 44 65 63 6f 6d 70 72 65 73 73 43 68 75 6e 6b 73 20 61 72 65 20 61 73 20 66 6f 6c 6c 6f 77 73 3a DecompressChunks.are.as.follows:
faa0 0d 0d 54 68 65 20 63 6f 6d 70 72 65 73 73 65 64 20 74 61 69 6c 20 6d 75 73 74 20 62 65 20 6c 61 ..The.compressed.tail.must.be.la
fac0 72 67 65 20 65 6e 6f 75 67 68 20 74 6f 20 63 6f 6e 74 61 69 6e 20 6f 6e 65 20 75 6e 63 6f 6d 70 rge.enough.to.contain.one.uncomp
fae0 72 65 73 73 65 64 20 63 68 75 6e 6b 20 28 77 6f 72 73 74 20 63 61 73 65 29 20 70 6c 75 73 20 61 ressed.chunk.(worst.case).plus.a
fb00 6e 79 20 73 74 72 75 63 74 75 72 65 20 61 70 70 65 6e 64 65 64 20 74 6f 20 74 68 65 20 63 6f 6d ny.structure.appended.to.the.com
fb20 70 72 65 73 73 65 64 20 64 61 74 61 20 69 6e 20 74 68 65 20 54 61 69 6c 2e 20 20 49 74 20 6d 61 pressed.data.in.the.Tail...It.ma
fb40 79 2c 20 6f 66 20 63 6f 75 72 73 65 2c 20 62 65 20 6c 61 72 67 65 72 2e 0d 54 68 65 20 65 6e 64 y,.of.course,.be.larger..The.end
fb60 20 6f 66 20 65 6e 74 69 72 65 20 74 72 61 6e 73 66 65 72 20 69 73 20 61 73 73 75 6d 65 64 20 74 .of.entire.transfer.is.assumed.t
fb80 6f 20 62 65 20 74 6f 70 2d 61 6c 69 67 6e 65 64 20 69 6e 20 74 68 65 20 54 61 69 6c 42 75 66 66 o.be.top-aligned.in.the.TailBuff
fba0 65 72 2e 0d 49 66 20 6e 6f 74 20 61 6c 6c 20 6f 66 20 74 68 65 20 63 6f 6d 70 72 65 73 73 65 64 er..If.not.all.of.the.compressed
fbc0 20 64 61 74 61 20 66 69 74 73 20 69 6e 20 74 68 65 20 54 61 69 6c 42 75 66 66 65 72 2c 20 74 68 .data.fits.in.the.TailBuffer,.th
fbe0 65 6e 20 74 68 65 20 54 61 69 6c 42 75 66 66 65 72 20 6d 75 73 74 20 62 65 20 63 6f 6d 70 6c 65 en.the.TailBuffer.must.be.comple
fc00 74 65 6c 79 20 66 69 6c 6c 65 64 2c 20 61 6e 64 20 74 68 65 20 72 65 6d 61 69 6e 69 6e 67 20 62 tely.filled,.and.the.remaining.b
fc20 79 74 65 73 20 61 72 65 20 74 6f 70 2d 61 6c 69 67 6e 65 64 20 69 6e 20 74 68 65 20 55 6e 63 6f ytes.are.top-aligned.in.the.Unco
fc40 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 20 61 6e 64 20 64 65 73 63 72 69 62 65 64 20 6f 6e mpressedBuffer,.and.described.on
fc60 20 69 6e 70 75 74 20 61 73 20 74 68 65 20 43 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2e 20 .input.as.the.CompressedBuffer..
fc80 20 54 72 65 61 74 20 74 68 65 20 64 61 74 61 20 61 73 20 61 20 73 74 72 65 61 6d 20 6f 66 20 62 .Treat.the.data.as.a.stream.of.b
fca0 79 74 65 73 20 77 69 74 68 6f 75 74 20 63 6f 6e 63 65 72 6e 20 66 6f 72 20 77 68 65 74 68 65 72 ytes.without.concern.for.whether
fcc0 20 61 20 63 68 75 6e 6b 20 69 73 20 73 70 6c 69 74 20 61 63 72 6f 73 73 20 74 68 65 20 74 77 6f .a.chunk.is.split.across.the.two
fce0 20 62 75 66 66 65 72 73 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 2e 0d 0d 42 61 73 69 63 61 6c 6c .buffers,.for.example...Basicall
fd00 79 20 74 68 69 73 20 74 72 69 63 6b 20 69 73 20 74 61 6b 69 6e 67 20 61 64 76 61 6e 74 61 67 65 y.this.trick.is.taking.advantage
fd20 20 6f 66 20 74 68 65 20 66 61 63 74 20 74 68 61 74 20 74 68 65 20 64 65 73 74 69 6e 61 74 69 6f .of.the.fact.that.the.destinatio
fd40 6e 20 62 75 66 66 65 72 20 69 73 20 74 79 70 69 63 61 6c 6c 79 20 70 61 67 65 73 20 69 6e 20 74 n.buffer.is.typically.pages.in.t
fd60 68 65 20 43 61 63 68 65 20 77 68 69 63 68 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 6d 61 64 65 20 he.Cache.which.will.not.be.made.
fd80 76 61 6c 69 64 20 75 6e 74 69 6c 20 74 68 65 20 72 65 61 64 20 69 74 73 65 6c 66 20 69 73 20 63 valid.until.the.read.itself.is.c
fda0 6f 6d 70 6c 65 74 65 64 20 2d 20 74 68 65 72 65 66 6f 72 65 20 6e 6f 20 6f 6e 65 20 77 69 6c 6c ompleted.-.therefore.no.one.will
fdc0 20 65 76 65 72 20 73 65 65 20 61 6e 79 20 69 6e 74 65 72 6d 65 64 69 61 74 65 20 73 74 61 74 65 .ever.see.any.intermediate.state
fde0 73 20 6f 66 20 74 68 65 20 62 75 66 66 65 72 2e 0d 0d 32 2e 33 2e 33 20 52 74 6c 43 6f 6d 70 72 s.of.the.buffer...2.3.3.RtlCompr
fe00 65 73 73 43 68 75 6e 6b 73 0d 0d 4e 54 53 59 53 41 50 49 0d 4e 54 53 54 41 54 55 53 0d 4e 54 41 essChunks..NTSYSAPI.NTSTATUS.NTA
fe20 50 49 0d 52 74 6c 43 6f 6d 70 72 65 73 73 43 68 75 6e 6b 73 20 28 0d 20 20 20 20 49 4e 20 50 55 PI.RtlCompressChunks.(.....IN.PU
fe40 43 48 41 52 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 0d 20 20 20 20 49 4e 20 CHAR.UncompressedBuffer,.....IN.
fe60 55 4c 4f 4e 47 20 55 6e 63 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 53 69 7a 65 2c 0d 20 20 ULONG.UncompressedBufferSize,...
fe80 20 20 4f 55 54 20 50 55 43 48 41 52 20 43 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 2c 0d 20 ..OUT.PUCHAR.CompressedBuffer,..
fea0 20 20 20 49 4e 20 55 4c 4f 4e 47 20 43 6f 6d 70 72 65 73 73 65 64 42 75 66 66 65 72 53 69 7a 65 ...IN.ULONG.CompressedBufferSize
fec0 2c 0d 20 20 20 20 49 4e 20 4f 55 54 20 50 43 4f 4d 50 52 45 53 53 45 44 5f 44 41 54 41 5f 49 4e ,.....IN.OUT.PCOMPRESSED_DATA_IN
fee0 46 4f 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 2c 0d 20 20 20 20 49 4e 20 55 4c FO.CompressedDataInfo,.....IN.UL
ff00 4f 4e 47 20 43 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 4c 65 6e 67 74 68 2c 0d 20 20 ONG.CompressedDataInfoLength,...
ff20 20 20 49 4e 20 50 56 4f 49 44 20 57 6f 72 6b 53 70 61 63 65 0d 20 20 20 20 29 3b 0d 54 68 69 73 ..IN.PVOID.WorkSpace.....);.This
ff40 20 72 6f 75 74 69 6e 65 20 6d 61 79 20 62 65 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 72 65 73 73 .routine.may.be.used.to.compress
ff60 20 61 20 73 74 72 65 61 6d 20 6f 66 20 62 79 74 65 73 20 69 6e 74 6f 20 61 6e 20 6f 75 74 70 75 .a.stream.of.bytes.into.an.outpu
ff80 74 20 62 75 66 66 65 72 2e 20 20 28 54 79 70 69 63 61 6c 6c 79 20 74 68 65 20 52 64 72 20 77 6f t.buffer...(Typically.the.Rdr.wo
ffa0 75 6c 64 20 75 73 65 20 74 68 69 73 20 74 6f 20 63 6f 6d 70 72 65 73 73 20 61 6e 20 69 6e 74 65 uld.use.this.to.compress.an.inte
ffc0 67 72 61 6c 20 6e 75 6d 62 65 72 20 6f 66 20 63 68 75 6e 6b 73 20 66 72 6f 6d 20 74 68 65 20 63 gral.number.of.chunks.from.the.c
ffe0 61 63 68 65 20 69 6e 74 6f 20 61 20 63 6f 6d 70 72 65 73 73 65 64 20 62 75 66 66 65 72 20 66 6f ache.into.a.compressed.buffer.fo
10000 72 20 74 72 61 6e 73 6d 69 73 73 69 6f 6e 2c 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 65 20 43 r.transmission,.along.with.the.C
10020 6f 6d 70 72 65 73 73 65 64 44 61 74 61 49 6e 66 6f 2e 29 20 20 54 68 65 72 65 20 61 72 65 20 6e ompressedDataInfo.)..There.are.n
10040 6f 20 93 74 72 69 63 6b 73 94 20 70 72 6f 76 69 64 65 64 20 74 6f 20 73 75 70 70 6f 72 74 20 69 o..tricks..provided.to.support.i
10060 6e 2d 70 6c 61 63 65 20 63 6f 6d 70 72 65 73 73 69 6f 6e 2e 20 20 54 79 70 69 63 61 6c 6c 79 20 n-place.compression...Typically.
10080 74 68 65 20 63 61 6c 6c 65 72 20 69 73 20 63 6f 6d 70 72 65 73 73 69 6e 67 20 66 72 6f 6d 20 65 the.caller.is.compressing.from.e
100a0 69 74 68 65 72 20 76 61 6c 69 64 20 70 61 67 65 73 20 69 6e 20 74 68 65 20 43 61 63 68 65 20 6f ither.valid.pages.in.the.Cache.o
100c0 72 20 70 6f 73 73 69 62 6c 79 20 61 20 6e 6f 6e 6b 65 72 6e 65 6c 20 6d 6f 64 65 20 62 75 66 66 r.possibly.a.nonkernel.mode.buff
100e0 65 72 20 69 6e 74 6f 20 61 20 62 75 66 66 65 72 20 66 6f 72 20 74 72 61 6e 73 6d 69 73 73 69 6f er.into.a.buffer.for.transmissio
10100 6e 2e 20 20 49 6e 20 6e 65 69 74 68 65 72 20 63 61 73 65 20 69 73 20 69 74 20 76 61 6c 69 64 20 n...In.neither.case.is.it.valid.
10120 74 6f 20 6d 75 6e 67 65 20 74 68 65 20 62 75 66 66 65 72 20 69 6e 2d 70 6c 61 63 65 20 66 6f 72 to.munge.the.buffer.in-place.for
10140 20 74 72 61 6e 73 6d 69 73 73 69 6f 6e 2e 20 20 54 68 75 73 20 74 68 65 20 65 6e 74 69 72 65 20 .transmission...Thus.the.entire.
10160 63 6f 6d 70 72 65 73 73 65 64 20 62 75 66 66 65 72 20 6d 75 73 74 20 62 65 20 64 79 6e 61 6d 69 compressed.buffer.must.be.dynami
10180 63 61 6c 6c 79 20 61 6c 6c 6f 63 61 74 65 64 20 2d 20 74 79 70 69 63 61 6c 6c 79 20 66 72 6f 6d cally.allocated.-.typically.from
101a0 20 6e 6f 6e 70 61 67 65 64 20 70 6f 6f 6c 2e 0d 0d 54 68 65 20 43 6f 6d 70 72 65 73 73 65 64 44 .nonpaged.pool...The.CompressedD
101c0 61 74 61 49 6e 66 6f 20 6d 75 73 74 20 62 65 20 69 6e 69 74 69 61 6c 69 7a 65 64 20 77 69 74 68 ataInfo.must.be.initialized.with
101e0 20 74 68 65 20 70 72 6f 70 65 72 20 76 61 6c 75 65 73 20 6f 6e 20 69 6e 70 75 74 2c 20 66 6f 72 .the.proper.values.on.input,.for
10200 fd ff ff ff 82 00 00 00 83 00 00 00 84 00 00 00 06 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ................................
10220 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
10240 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
10260 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
10280 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
102a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
102c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
102e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
10300 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
10320 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
10340 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
10360 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
10380 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
103a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
103c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
103e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
10400 1b 01 00 01 c0 21 1b 01 00 00 00 00 00 00 00 01 c0 21 1b 01 00 01 c0 21 4b 01 00 04 c0 21 1b 01 .....!...........!.....!K....!..
10420 00 01 c0 21 f0 00 00 01 c0 21 1b 01 00 08 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 ...!.....!.....!.....!.....!....
10440 c0 21 f0 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 .!.....!.....!.....!.....!.....!
10460 eb 00 00 01 c0 21 eb 00 00 06 c0 21 1b 01 00 01 c0 21 1b 01 00 03 c0 21 1b 01 00 01 c0 21 1b 01 .....!.....!.....!.....!.....!..
10480 00 08 c0 21 1b 01 00 01 c0 21 1b 01 00 03 c0 21 1b 01 00 01 c0 21 eb 00 00 01 c0 21 1b 01 00 01 ...!.....!.....!.....!.....!....
104a0 c0 21 f0 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 .!.....!.....!.....!.....!.....!
104c0 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 07 c0 21 1b 01 00 01 c0 21 f0 00 00 03 c0 21 1b 01 .....!.....!.....!.....!.....!..
104e0 00 01 c0 21 1b 01 00 08 c0 21 1b 01 00 01 c0 21 1b 01 00 03 c0 21 1b 01 00 01 c0 21 f0 00 00 01 ...!.....!.....!.....!.....!....
10500 c0 21 1b 01 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 04 c0 21 .!.....!.....!.....!.....!.....!
10520 1b 01 00 01 c0 21 eb 00 00 01 c0 21 1b 01 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
10540 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 06 c0 21 1b 01 00 01 c0 21 eb 00 00 03 c0 21 1b 01 00 01 ...!.....!.....!.....!.....!....
10560 c0 21 eb 00 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 .!.....!.....!.....!.....!.....!
10580 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
105a0 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 ...!.....!.....!.....!.....!....
105c0 c0 21 eb 00 00 01 c0 21 f0 00 00 03 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 1b 01 00 01 c0 21 .!.....!.....!.....!.....!.....!
105e0 f0 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 .....!.....!.....!.....!.....!..
10600 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 ...!.....!.....!.....!.....!....
10620 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 f0 00 00 09 c0 21 f0 00 00 01 c0 21 f0 00 04 ff c0 21 .!.....!.....!.....!.....!.....!
10640 ea 01 00 01 c0 21 fa 00 04 ff c0 21 ca 03 00 01 c0 21 f0 00 00 03 c0 21 f0 00 00 01 c0 21 f0 00 .....!.....!.....!.....!.....!..
10660 00 01 c0 21 1b 01 00 01 c0 21 f0 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 ...!.....!.....!.....!.....!....
10680 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 .!.....!.....!.....!.....!.....!
106a0 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 eb 00 00 01 c0 21 f0 00 00 07 c0 21 f0 00 .....!.....!.....!.....!.....!..
106c0 00 01 c0 21 f0 00 00 02 c0 21 f0 00 00 01 c0 21 f0 00 00 02 c0 21 f0 00 00 01 c0 21 f0 00 00 00 ...!.....!.....!.....!.....!....
106e0 00 00 00 00 00 00 00 00 3c 00 00 00 68 00 00 00 6b 00 00 00 00 03 00 00 f4 5f 00 00 df 83 00 00 ........<...h...k........_......
10700 ab 96 00 00 f2 9a 00 00 33 00 34 00 48 00 4e 00 00 03 00 00 2f 0b 00 00 7a 25 00 00 44 2b 00 00 ........3.4.H.N...../...z%..D+..
10720 d7 3a 00 00 5c 43 00 00 71 4e 00 00 80 55 00 00 f4 5f 00 00 aa 81 00 00 3c 8b 00 00 ed 9a 00 00 .:..\C..qN...U..._......<.......
10740 35 00 36 00 37 00 38 00 39 00 3a 00 3b 00 3c 00 3d 00 49 00 4a 00 1e 00 07 55 6e 6b 6e 6f 77 6e 5.6.7.8.9.:.;.<.=.I.J....Unknown
10760 00 00 0f 4c 6f 6e 6e 79 20 4d 63 4d 69 63 68 61 65 6c 01 00 30 00 00 00 37 00 00 00 39 00 00 00 ...Lonny.McMichael..0...7...9...
10780 6b 00 00 00 13 21 14 ff 15 80 1e 00 0a 54 6f 6d 20 4d 69 6c 6c 65 72 10 44 3a 5c 54 5c 43 4d 50 k....!.......Tom.Miller.D:\T\CMP
107a0 57 49 52 45 2e 44 4f 43 ff 40 5c 5c 47 41 52 59 4b 49 5c 68 70 6c 6a 69 69 69 00 4e 65 30 30 3a WIRE.DOC.@\\GARYKI\hpljiii.Ne00:
107c0 00 77 69 6e 73 70 6f 6f 6c 00 48 50 20 4c 61 73 65 72 4a 65 74 20 49 49 49 00 5c 5c 47 41 52 59 .winspool.HP.LaserJet.III.\\GARY
107e0 4b 49 5c 68 70 6c 6a 69 69 69 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 04 01 03 9c 00 KI\hpljiii......................
10800 70 00 03 43 01 00 01 00 01 00 00 00 00 00 00 00 01 00 0f 00 00 00 02 00 01 00 00 00 02 00 00 00 p..C............................
10820 4c 65 74 74 65 72 00 00 01 00 00 00 00 00 00 00 01 00 0f 00 00 00 02 00 01 00 00 00 02 00 00 00 Letter..........................
10840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 ff ff ff ff 21 03 00 00 ............................!...
10880 00 00 00 00 ff ff ff ff ff ff ff ff 01 00 00 00 00 00 00 00 ff ff 03 00 ff ff ff ff 01 00 ff ff ................................
108a0 00 00 00 00 00 00 ff ff 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................................
108c0 ff ff ff ff ff ff ff ff ff ff 00 00 00 00 18 00 00 00 00 00 10 27 10 27 10 27 00 00 10 27 00 00 .....................'.'.'...'..
108e0 00 00 00 00 00 00 5c 5c 47 41 52 59 4b 49 5c 68 70 6c 6a 69 69 69 00 00 00 00 00 00 00 00 00 00 ......\\GARYKI\hpljiii..........
10900 00 00 00 00 00 00 01 04 01 03 9c 00 70 00 03 43 01 00 01 00 01 00 00 00 00 00 00 00 01 00 0f 00 ............p..C................
10920 00 00 02 00 01 00 00 00 02 00 00 00 4c 65 74 74 65 72 00 00 01 00 00 00 00 00 00 00 01 00 0f 00 ............Letter..............
10940 00 00 02 00 01 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10980 00 00 20 00 ff ff ff ff 21 03 00 00 00 00 00 00 ff ff ff ff ff ff ff ff 01 00 00 00 00 00 00 00 ........!.......................
109a0 ff ff 03 00 ff ff ff ff 01 00 ff ff 00 00 00 00 00 00 ff ff 00 00 00 00 ff ff ff ff ff ff ff ff ................................
109c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 00 00 00 18 00 00 00 00 00 ................................
109e0 10 27 10 27 10 27 00 00 10 27 00 00 00 00 00 00 00 00 01 80 01 00 d2 37 00 00 d2 37 00 00 08 00 .'.'.'...'.............7...7....
10a00 01 00 01 00 d2 37 00 00 00 00 00 00 9d 37 00 00 01 45 00 02 00 00 0c 34 00 00 00 00 00 00 05 00 .....7.......7...E.....4........
10a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a40 00 00 00 00 00 00 00 00 00 00 00 00 0d 00 11 00 00 13 00 00 53 63 18 00 01 04 00 02 00 00 53 02 ....................Sc........S.
10a60 5c 0b 00 00 00 00 00 00 57 2f 00 00 58 2f 00 00 bb 30 00 00 33 31 00 00 83 32 00 00 85 32 00 00 \.......W/..X/...0..31...2...2..
10a80 aa 32 00 00 ab 32 00 00 bc 32 00 00 c8 32 00 00 c9 32 00 00 15 33 00 00 19 33 00 00 22 33 00 00 .2...2...2...2...2...3...3.."3..
10aa0 29 33 00 00 35 33 00 00 b2 33 00 00 ce 33 00 00 e0 33 00 00 e1 33 00 00 e9 33 00 00 06 34 00 00 )3..53...3...3...3...3...3...4..
10ac0 4e 34 00 00 5f 34 00 00 b9 34 00 00 06 35 00 00 0f 35 00 00 14 35 00 00 25 35 00 00 27 35 00 00 N4.._4...4...5...5...5..%5..'5..
10ae0 28 35 00 00 2f 35 00 00 5f 35 00 00 b9 35 00 00 cc 35 00 00 cf 35 00 00 29 36 00 00 6f 36 00 00 (5../5.._5...5...5...5..)6..o6..
10b00 71 36 00 00 cb 36 00 00 ed 36 00 00 ee 36 00 00 ef 36 00 00 02 37 00 00 3e 37 00 00 5a 37 00 00 q6...6...6...6...6...7..>7..Z7..
10b20 5d 37 00 00 89 37 00 00 9d 37 00 00 d2 37 00 00 18 38 00 00 1f 38 00 00 20 38 00 00 a6 38 00 00 ]7...7...7...7...8...8...8...8..
10b40 4e 3a 00 00 57 3a 00 00 a0 3a 00 00 c0 3a 00 00 e9 3a 00 00 f3 3a 00 00 01 3b 00 00 13 3b 00 00 N:..W:...:...:...:...:...;...;..
10b60 14 3b 00 00 64 3d 00 00 97 3d 00 00 98 3d 00 00 9c 3d 00 00 a5 3d 00 00 af 3d 00 00 c5 3e 00 00 .;..d=...=...=...=...=...=...>..
10b80 f7 3e 00 00 45 3f 00 00 92 3f 00 00 eb 3f 00 00 4e 40 00 00 50 40 00 00 aa 40 00 00 e3 40 00 00 .>..E?...?...?..N@..P@...@...@..
10ba0 e4 40 00 00 ff 40 00 00 01 41 00 00 0a 41 00 00 1b 41 00 00 03 43 00 00 57 43 00 00 58 43 00 00 .@...@...A...A...A...C..WC..XC..
10bc0 59 43 00 00 00 45 00 00 32 45 00 00 33 45 00 00 40 45 00 00 4a 45 00 00 6e 46 00 00 bf 46 00 00 YC...E..2E..3E..@E..JE..nF...F..
10be0 d8 46 00 00 e8 46 00 00 fa 46 00 00 17 47 00 00 3f 47 00 00 4a 47 00 00 64 47 00 00 89 47 00 00 .F...F...F...G..?G..JG..dG...G..