finish CKStateChunk analyze

This commit is contained in:
yyc12345 2023-02-16 16:12:53 +08:00
parent b74d8a4e58
commit 0fa7070742
2 changed files with 215 additions and 106 deletions

View File

@ -1,20 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<office:document xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:config="urn:oasis:names:tc:opendocument:xmlns:config:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:rpt="http://openoffice.org/2005/report" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:tableooo="http://openoffice.org/2009/table" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:drawooo="http://openoffice.org/2010/draw" xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:grddl="http://www.w3.org/2003/g/data-view#" xmlns:css3t="http://www.w3.org/TR/css3-text/" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.spreadsheet">
<office:meta><meta:initial-creator>Tad William</meta:initial-creator><meta:creation-date>2015-06-05T18:17:20</meta:creation-date><dc:date>2023-02-04T22:19:06.714000000</dc:date><meta:editing-duration>PT45S</meta:editing-duration><meta:generator>LibreOffice/7.3.7.2$Windows_X86_64 LibreOffice_project/e114eadc50a9ff8d8c8a0567d6da8f454beeb84f</meta:generator><meta:editing-cycles>1</meta:editing-cycles><meta:document-statistic meta:table-count="3" meta:cell-count="137" meta:object-count="0"/><meta:user-defined meta:name="AppVersion">16.0300</meta:user-defined></office:meta>
<office:meta><meta:initial-creator>Tad William</meta:initial-creator><meta:creation-date>2015-06-05T18:17:20</meta:creation-date><dc:date>2023-02-16T14:33:05.107000000</dc:date><meta:editing-duration>PT2H10M40S</meta:editing-duration><meta:generator>LibreOffice/7.3.7.2$Windows_X86_64 LibreOffice_project/e114eadc50a9ff8d8c8a0567d6da8f454beeb84f</meta:generator><meta:editing-cycles>13</meta:editing-cycles><meta:document-statistic meta:table-count="3" meta:cell-count="153" meta:object-count="0"/><meta:user-defined meta:name="AppVersion">16.0300</meta:user-defined></office:meta>
<office:settings>
<config:config-item-set config:name="ooo:view-settings">
<config:config-item config:name="VisibleAreaTop" config:type="int">0</config:config-item>
<config:config-item config:name="VisibleAreaLeft" config:type="int">0</config:config-item>
<config:config-item config:name="VisibleAreaWidth" config:type="int">13026</config:config-item>
<config:config-item config:name="VisibleAreaHeight" config:type="int">2434</config:config-item>
<config:config-item config:name="VisibleAreaWidth" config:type="int">18463</config:config-item>
<config:config-item config:name="VisibleAreaHeight" config:type="int">12171</config:config-item>
<config:config-item-map-indexed config:name="Views">
<config:config-item-map-entry>
<config:config-item config:name="ViewId" config:type="string">view1</config:config-item>
<config:config-item-map-named config:name="Tables">
<config:config-item-map-entry config:name="CKBufferParser">
<config:config-item config:name="CursorPositionX" config:type="int">4</config:config-item>
<config:config-item config:name="CursorPositionY" config:type="int">15</config:config-item>
<config:config-item config:name="CursorPositionX" config:type="int">2</config:config-item>
<config:config-item config:name="CursorPositionY" config:type="int">3</config:config-item>
<config:config-item config:name="ActiveSplitRange" config:type="short">2</config:config-item>
<config:config-item config:name="PositionLeft" config:type="int">0</config:config-item>
<config:config-item config:name="PositionRight" config:type="int">0</config:config-item>
@ -42,7 +42,7 @@
</config:config-item-map-entry>
<config:config-item-map-entry config:name="CKStateChunk">
<config:config-item config:name="CursorPositionX" config:type="int">2</config:config-item>
<config:config-item config:name="CursorPositionY" config:type="int">19</config:config-item>
<config:config-item config:name="CursorPositionY" config:type="int">17</config:config-item>
<config:config-item config:name="ActiveSplitRange" config:type="short">2</config:config-item>
<config:config-item config:name="PositionLeft" config:type="int">0</config:config-item>
<config:config-item config:name="PositionRight" config:type="int">0</config:config-item>
@ -55,7 +55,7 @@
<config:config-item config:name="AnchoredTextOverflowLegacy" config:type="boolean">false</config:config-item>
</config:config-item-map-entry>
</config:config-item-map-named>
<config:config-item config:name="ActiveTable" config:type="string">CKBufferParser</config:config-item>
<config:config-item config:name="ActiveTable" config:type="string">CKStateChunk</config:config-item>
<config:config-item config:name="HorizontalScrollbarWidth" config:type="int">1855</config:config-item>
<config:config-item config:name="ZoomType" config:type="short">0</config:config-item>
<config:config-item config:name="ZoomValue" config:type="int">100</config:config-item>
@ -132,7 +132,9 @@
</office:settings>
<office:scripts>
<office:script script:language="ooo:Basic">
<ooo:libraries xmlns:ooo="http://openoffice.org/2004/office" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<ooo:libraries xmlns:ooo="http://openoffice.org/2004/office" xmlns:xlink="http://www.w3.org/1999/xlink">
<ooo:library-embedded ooo:name="Standard"/>
</ooo:libraries>
</office:script>
</office:scripts>
<office:font-face-decls>
@ -559,11 +561,23 @@
</style:style>
</office:styles>
<office:automatic-styles>
<style:style style:name="co1" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="1.716cm"/>
</style:style>
<style:style style:name="co2" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="1.773cm"/>
</style:style>
<style:style style:name="co3" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="10.71cm"/>
</style:style>
<style:style style:name="co4" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="9.481cm"/>
</style:style>
<style:style style:name="co5" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="2.023cm"/>
</style:style>
<style:style style:name="co6" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="3.51cm"/>
<style:table-column-properties fo:break-before="auto" style:column-width="4.191cm"/>
</style:style>
<style:style style:name="co7" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="12.248cm"/>
@ -571,62 +585,21 @@
<style:style style:name="co8" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="1.845cm"/>
</style:style>
<style:style style:name="co9" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="1.716cm"/>
</style:style>
<style:style style:name="co10" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="1.773cm"/>
</style:style>
<style:style style:name="co11" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="10.71cm"/>
</style:style>
<style:style style:name="co12" style:family="table-column">
<style:table-column-properties fo:break-before="auto" style:column-width="9.481cm"/>
</style:style>
<style:style style:name="ro1" style:family="table-row">
<style:table-row-properties style:row-height="0.487cm" fo:break-before="auto" style:use-optimal-row-height="true"/>
</style:style>
<style:style style:name="ta1" style:family="table" style:master-page-name="PageStyle_5f_CKFile">
<style:table-properties table:display="true" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="ta2" style:family="table" style:master-page-name="PageStyle_5f_CKBufferParser">
<style:table-properties table:display="true" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="ta3" style:family="table" style:master-page-name="PageStyle_5f_CKStateChunk">
<style:table-properties table:display="true" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="ta2" style:family="table" style:master-page-name="PageStyle_5f_CKFile">
<style:table-properties table:display="true" style:writing-mode="lr-tb"/>
</style:style>
<style:style style:name="ta4" style:family="table" style:master-page-name="PageStyle_5f_CKBufferParser">
<style:table-properties table:display="true" style:writing-mode="lr-tb"/>
</style:style>
<number:text-style style:name="N100">
<number:text-content/>
</number:text-style>
<style:style style:name="ce10" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:rotation-align="none"/>
<style:text-properties fo:color="#ff0000" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="等线1" fo:font-size="11pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal" style:font-name-asian="等线1" style:font-size-asian="11pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="11pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="ce11" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:text-align-source="fix" style:repeat-content="false" fo:wrap-option="no-wrap" fo:border="none" style:direction="ltr" style:rotation-angle="0" style:rotation-align="none" style:shrink-to-fit="false" style:vertical-align="bottom" loext:vertical-justify="auto"/>
<style:paragraph-properties fo:text-align="center" css3t:text-justify="auto" fo:margin-left="0cm" style:writing-mode="page"/>
<style:text-properties fo:color="#000000" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="等线" fo:font-size="11pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="bold" style:font-name-asian="等线" style:font-size-asian="11pt" style:font-style-asian="normal" style:font-weight-asian="bold" style:font-size-complex="11pt" style:font-style-complex="normal" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="ce12" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:text-align-source="fix" style:repeat-content="false" fo:wrap-option="no-wrap" style:direction="ltr" style:rotation-angle="0" style:rotation-align="none" style:shrink-to-fit="false" style:vertical-align="bottom" loext:vertical-justify="auto"/>
<style:paragraph-properties fo:text-align="center" css3t:text-justify="auto" fo:margin-left="0cm" style:writing-mode="page"/>
<style:text-properties fo:color="#000000" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="等线" fo:font-size="11pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="bold" style:font-name-asian="等线" style:font-size-asian="11pt" style:font-style-asian="normal" style:font-weight-asian="bold" style:font-size-complex="11pt" style:font-style-complex="normal" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="ce6" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:rotation-align="none"/>
<style:text-properties fo:color="#000000" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="等线" fo:font-size="11pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="bold" style:font-name-asian="等线" style:font-size-asian="11pt" style:font-style-asian="normal" style:font-weight-asian="bold" style:font-size-complex="11pt" style:font-style-complex="normal" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="ce7" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:rotation-align="none"/>
</style:style>
<style:style style:name="ce8" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:rotation-align="none"/>
<style:text-properties style:use-window-font-color="true" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="等线" fo:font-size="11pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal" style:font-name-asian="等线" style:font-size-asian="11pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="11pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="ce9" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:rotation-align="none"/>
<style:text-properties fo:color="#ff0000" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="等线" fo:font-size="11pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal" style:font-name-asian="等线" style:font-size-asian="11pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="11pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="ce20" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:rotation-align="none"/>
<style:text-properties fo:color="#000000" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="等线" fo:font-size="11pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="bold" style:font-name-asian="等线" style:font-size-asian="11pt" style:font-style-asian="normal" style:font-weight-asian="bold" style:font-size-complex="11pt" style:font-style-complex="normal" style:font-weight-complex="bold"/>
@ -651,11 +624,24 @@
<style:style style:name="ce26" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:rotation-align="none"/>
</style:style>
<style:style style:name="ce8" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:rotation-align="none"/>
<style:text-properties fo:color="#5983b0" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="等线" fo:font-size="11pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="normal" style:font-name-asian="等线" style:font-size-asian="11pt" style:font-style-asian="normal" style:font-weight-asian="normal" style:font-size-complex="11pt" style:font-style-complex="normal" style:font-weight-complex="normal"/>
</style:style>
<style:style style:name="ce27" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:text-align-source="fix" style:repeat-content="false" fo:wrap-option="no-wrap" fo:border="none" style:direction="ltr" style:rotation-angle="0" style:rotation-align="none" style:shrink-to-fit="false" style:vertical-align="bottom" loext:vertical-justify="auto"/>
<style:paragraph-properties fo:text-align="center" css3t:text-justify="auto" fo:margin-left="0cm" style:writing-mode="page"/>
<style:text-properties fo:color="#000000" style:text-outline="false" style:text-line-through-style="none" style:text-line-through-type="none" style:font-name="等线" fo:font-size="11pt" fo:font-style="normal" fo:text-shadow="none" style:text-underline-style="none" fo:font-weight="bold" style:font-name-asian="等线" style:font-size-asian="11pt" style:font-style-asian="normal" style:font-weight-asian="bold" style:font-size-complex="11pt" style:font-style-complex="normal" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="ce10" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:text-align-source="fix" style:repeat-content="false" style:rotation-align="none"/>
<style:paragraph-properties fo:text-align="center" fo:margin-left="0cm"/>
<style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold"/>
</style:style>
<style:style style:name="ce14" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:rotation-align="none"/>
<style:text-properties fo:color="#5983b0"/>
</style:style>
<style:style style:name="ce28" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N100">
<style:table-cell-properties style:text-align-source="fix" style:repeat-content="false" fo:wrap-option="no-wrap" style:direction="ltr" style:rotation-angle="0" style:rotation-align="none" style:shrink-to-fit="false" style:vertical-align="bottom" loext:vertical-justify="auto"/>
<style:paragraph-properties fo:text-align="center" css3t:text-justify="auto" fo:margin-left="0cm" style:writing-mode="page"/>
@ -711,12 +697,12 @@
<table:calculation-settings table:case-sensitive="false" table:automatic-find-labels="false" table:use-regular-expressions="false" table:use-wildcards="true">
<table:iteration table:maximum-difference="0.0001"/>
</table:calculation-settings>
<table:table table:name="CKFile" table:style-name="ta2">
<table:table table:name="CKFile" table:style-name="ta1">
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
<table:table-column table:style-name="co9" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co10" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co11" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co10" table:number-columns-repeated="1021" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co1" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co2" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co3" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co2" table:number-columns-repeated="1021" table:default-cell-style-name="ce21"/>
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce20" office:value-type="string" calcext:value-type="string">
<text:p>offset</text:p>
@ -1048,11 +1034,10 @@
<table:table-cell table:number-columns-repeated="1024"/>
</table:table-row>
</table:table>
<table:table table:name="CKBufferParser" table:style-name="ta4">
<office:forms form:automatic-focus="false" form:apply-design-mode="false"/>
<table:table-column table:style-name="co10" table:number-columns-repeated="2" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co12" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co10" table:number-columns-repeated="1021" table:default-cell-style-name="ce21"/>
<table:table table:name="CKBufferParser" table:style-name="ta2">
<table:table-column table:style-name="co2" table:number-columns-repeated="2" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co4" table:default-cell-style-name="ce21"/>
<table:table-column table:style-name="co2" table:number-columns-repeated="1021" table:default-cell-style-name="ce21"/>
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce20" office:value-type="string" calcext:value-type="string">
<text:p>offset</text:p>
@ -1090,13 +1075,13 @@
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce24" office:value-type="float" office:value="2" calcext:value-type="float">
<table:table-cell table:style-name="ce25" office:value-type="float" office:value="2" calcext:value-type="float">
<text:p>2</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce24" office:value-type="string" calcext:value-type="string">
<table:table-cell table:style-name="ce25" office:value-type="string" calcext:value-type="string">
<text:p>DWORD</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce24" office:value-type="string" calcext:value-type="string">
<table:table-cell table:style-name="ce25" office:value-type="string" calcext:value-type="string">
<text:p>need_free_manuall</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
@ -1151,26 +1136,26 @@
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce25" office:value-type="float" office:value="1" calcext:value-type="float">
<table:table-cell table:style-name="ce8" office:value-type="float" office:value="1" calcext:value-type="float">
<text:p>1</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce25" office:value-type="string" calcext:value-type="string">
<table:table-cell table:style-name="ce8" office:value-type="string" calcext:value-type="string">
<text:p>int</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce25" office:value-type="string" calcext:value-type="string">
<table:table-cell table:style-name="ce8" office:value-type="string" calcext:value-type="string">
<text:p>data size in DWORD (*4 for byte)</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce25" office:value-type="float" office:value="2" calcext:value-type="float">
<table:table-cell table:style-name="ce8" office:value-type="float" office:value="2" calcext:value-type="float">
<text:p>2</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce25" office:value-type="string" calcext:value-type="string">
<text:p>DWORD**</text:p>
<table:table-cell table:style-name="ce8" office:value-type="string" calcext:value-type="string">
<text:p>DWORD*</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce25" office:value-type="string" calcext:value-type="string">
<text:p>pointer to pointer of data</text:p>
<table:table-cell table:style-name="ce8" office:value-type="string" calcext:value-type="string">
<text:p>pointer of data</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
@ -1182,7 +1167,7 @@
<text:p>WORD</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce25" office:value-type="string" calcext:value-type="string">
<text:p>data version, LowWord</text:p>
<text:p>data version, LowWord. HIGH BYTE served for CK_CLASSID.</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
@ -1194,19 +1179,19 @@
<text:p>WORD</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce25" office:value-type="string" calcext:value-type="string">
<text:p>chunk bersion, HighWord</text:p>
<text:p>chunk bersion, HighWord. HIGH BYTE served for PropFlags</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce24" office:value-type="float" office:value="4" calcext:value-type="float">
<table:table-cell table:style-name="ce8" office:value-type="float" office:value="4" calcext:value-type="float">
<text:p>4</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce24" office:value-type="string" calcext:value-type="string">
<text:p>DWORD*</text:p>
<table:table-cell table:style-name="ce8" office:value-type="string" calcext:value-type="string">
<text:p>CKStateChunkParser*</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce24" office:value-type="string" calcext:value-type="string">
<text:p>pointer to current pos(in DWROD) may have complex struct (0xCh)</text:p>
<table:table-cell table:style-name="ce8" office:value-type="string" calcext:value-type="string">
<text:p>pointer to parser (0xCh)</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
@ -1217,7 +1202,9 @@
<table:table-cell table:style-name="ce23" office:value-type="string" calcext:value-type="string">
<text:p>XArray* like</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce24"/>
<table:table-cell table:style-name="ce24" office:value-type="string" calcext:value-type="string">
<text:p>WriteObjectID use this</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
@ -1227,7 +1214,9 @@
<table:table-cell table:style-name="ce23" office:value-type="string" calcext:value-type="string">
<text:p>XArray* like</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce24"/>
<table:table-cell table:style-name="ce24" office:value-type="string" calcext:value-type="string">
<text:p>WriteSubChunk use this</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
@ -1237,7 +1226,9 @@
<table:table-cell table:style-name="ce23" office:value-type="string" calcext:value-type="string">
<text:p>XArray* like</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce24"/>
<table:table-cell table:style-name="ce24" office:value-type="string" calcext:value-type="string">
<text:p>WriteManagerInt use this</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
@ -1264,7 +1255,7 @@
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce27" office:value-type="string" calcext:value-type="string" table:number-columns-spanned="3" table:number-rows-spanned="1">
<text:p>some unknow struct</text:p>
<text:p>CKStateChunkArray</text:p>
</table:table-cell>
<table:covered-table-cell table:number-columns-repeated="2" table:style-name="ce28"/>
<table:table-cell table:number-columns-repeated="1021"/>
@ -1282,33 +1273,88 @@
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell office:value-type="float" office:value="0" calcext:value-type="float">
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>0</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>CK_CLASSID</text:p>
<text:p>DWORD</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>the class identifier</text:p>
<text:p>the size of this array</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>1</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>DWORD</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>allocated size</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>2</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>DWORD*</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>data buffer</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1" table:number-rows-repeated="3">
<table:table-cell table:number-columns-repeated="1024"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce10" office:value-type="string" calcext:value-type="string" table:number-columns-spanned="3" table:number-rows-spanned="1">
<text:p>CKStateChunkParser</text:p>
</table:table-cell>
<table:covered-table-cell table:number-columns-repeated="2"/>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>4</text:p>
<text:p>0</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>int</text:p>
<text:p>DWORD</text:p>
</table:table-cell>
<table:table-cell office:value-type="string" calcext:value-type="string">
<text:p>max size</text:p>
<text:p>the current position of this buffer.</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1" table:number-rows-repeated="1048555">
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce14" office:value-type="string" calcext:value-type="string">
<text:p>1</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce14" office:value-type="string" calcext:value-type="string">
<text:p>DWORD</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce14" office:value-type="string" calcext:value-type="string">
<text:p>the size of this buffer</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1">
<table:table-cell table:style-name="ce14" office:value-type="string" calcext:value-type="string">
<text:p>2</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce14" office:value-type="string" calcext:value-type="string">
<text:p>DWORD</text:p>
</table:table-cell>
<table:table-cell table:style-name="ce14" office:value-type="string" calcext:value-type="string">
<text:p>previous identifier position</text:p>
</table:table-cell>
<table:table-cell table:number-columns-repeated="1021"/>
</table:table-row>
<table:table-row table:style-name="ro1" table:number-rows-repeated="1048550">
<table:table-cell table:number-columns-repeated="1024"/>
</table:table-row>
<table:table-row table:style-name="ro1">

View File

@ -41,12 +41,17 @@ struct XArray {
DWORD* m_End;
// reserved end {secret}
DWORD* m_AllocatedEnd;
}
};
struct XIntArray {
int* m_Begin;
int* m_End;
int* m_AllocatedEnd;
};
struct XClassArray {
DWORD* m_Begin;
DWORD* m_End;
DWORD* m_AllocatedEnd;
}
};
struct XSArray {
DWORD* m_Begin;
DWORD* m_End;
@ -126,21 +131,79 @@ struct VxMemoryMappedFile {
DWORD m_errCode;
};
struct CKStateChunkParser {
DWORD m_CurrentPos;
DWORD m_DataSize;
DWORD m_PrevIdentifierPos;
};
struct IntListStruct {
DWORD m_Count;
DWORD m_Allocated;
DWORD* m_pData;
};
struct CKStateChunkProp {
WORD m_DataVersion;
WORD m_ChunkVersion;
};
struct CKStateChunk {
CK_CLASSID m_ClassId;
DWORD m_DataDwordSize;
DWORD* m_pData;
CKStateChunkProp m_ChunkProps;
CKStateChunkParser* m_Parser;
IntListStruct* m_ObjectIdList;
IntListStruct* m_SubChunkList;
IntListStruct* m_ManagerIntList;
CKFile* m_BindFile;
DWORD m_unknow;
};
struct CKBufferParser {
char* m_ReaderBegin;
DWORD m_ReaderPos;
char* m_MemBegin;
DWORD m_MemPos;
CKBOOL m_NeedManualFree;
DWORD m_ReaderSize;
DWORD m_MemSize;
};
struct XArray_CKFileObject_ {
CKFileObject* m_Begin;
CKFileObject* m_End;
CKFileObject* m_AllocatedEnd;
};
struct XArray_CKFileManagerData_ {
CKFileManagerData* m_Begin;
CKFileManagerData* m_End;
CKFileManagerData* m_AllocatedEnd;
};
struct XClassArray_CKFilePluginDependencies_ {
CKFilePluginDependencies* m_Begin;
CKFilePluginDependencies* m_End;
CKFilePluginDependencies* m_AllocatedEnd;
};
struct XClassArray_XIntArray_ {
XIntArray* m_Begin;
XIntArray* m_End;
XIntArray* m_AllocatedEnd;
};
struct XClassArray_XString_ {
XString* m_Begin;
XString* m_End;
XString* m_AllocatedEnd;
};
struct CKFile {
// 0
int m_SaveIDMax; // Maximum CK_ID found when saving or loading objects {secret}
XArray/*<CKFileObject>*/ m_FileObjects; // List of objects being saved / loaded {secret}
XArray/*<CKFileManagerData>*/ m_ManagersData; // Manager Data loaded {secret}
XClassArray/*<CKFilePluginDependencies>*/ m_PluginsDep; // Plugins dependencies for this file {secret}
XClassArray/*<XIntArray>*/ m_IndexByClassId; // List of index in the m_FileObjects table sorted by ClassID {secret}
XClassArray/*<XString>*/ m_IncludedFiles; // List of files that should be inserted in the CMO file. {secret}
XArray_CKFileObject_ m_FileObjects; // List of objects being saved / loaded {secret}
XArray_CKFileManagerData_ m_ManagersData; // Manager Data loaded {secret}
XClassArray_CKFilePluginDependencies_ m_PluginsDep; // Plugins dependencies for this file {secret}
XClassArray_XIntArray_ m_IndexByClassId; // List of index in the m_FileObjects table sorted by ClassID {secret}
XClassArray_XString_ m_IncludedFiles; // List of files that should be inserted in the CMO file. {secret}
// 16
CKFileInfo m_FileInfo; // Headers summary {secret}
// 16 + 14 = 30
@ -148,7 +211,7 @@ struct CKFile {
DWORD unknow_fields;
XBitArray m_AlreadySavedMask; // BitArray of IDs already saved {secret}
// 30 + 3 = 33
CKDWORD m_Flags; // Flags used to save file {secret}
CKDWORD m_Flags; // Flags used to save file {secret} CK_LOAD_FLAGS
CKSTRING m_FileName; // Current file name {secret}
CKContext* m_Context; // CKContext on which file is loaded/Saved {secret}
CKBufferParser* m_Parser;