mrcrowbar.lib.os.win16 module¶
- class mrcrowbar.lib.os.win16.EXE(*args, **kwargs)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- dos_header = <Bytes: offset=0x2, length=58>¶
- dos_magic = <Bytes: offset=0x0, length=2>¶
- dos_stub = <Bytes: offset=0x3e, length=<Ref: dos_stub_length (rw)>>¶
- property dos_stub_length¶
- ne_header = <BlockField: 0x00007f0c833f0590>¶
- ne_offset = <UInt16_LE: offset=0x3c>¶
- property sector_align¶
- segdata = <Bytes: offset=<EndOffset: ne_header (rw)>>¶
- class mrcrowbar.lib.os.win16.EmptySegmentIndicator(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- class mrcrowbar.lib.os.win16.EntryBundle(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- INDICATOR_MAP = {0: <class 'mrcrowbar.lib.os.win16.EmptySegmentIndicator'>, 1: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 2: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 3: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 4: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 5: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 6: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 7: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 8: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 9: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 10: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 11: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 12: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 13: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 14: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 15: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 16: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 17: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 18: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 19: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 20: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 21: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 22: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 23: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 24: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 25: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 26: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 27: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 28: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 29: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 30: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 31: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 32: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 33: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 34: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 35: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 36: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 37: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 38: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 39: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 40: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 41: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 42: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 43: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 44: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 45: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 46: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 47: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 48: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 49: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 50: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 51: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 52: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 53: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 54: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 55: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 56: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 57: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 58: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 59: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 60: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 61: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 62: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 63: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 64: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 65: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 66: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 67: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 68: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 69: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 70: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 71: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 72: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 73: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 74: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 75: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 76: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 77: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 78: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 79: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 80: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 81: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 82: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 83: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 84: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 85: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 86: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 87: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 88: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 89: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 90: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 91: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 92: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 93: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 94: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 95: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 96: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 97: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 98: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 99: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 100: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 101: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 102: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 103: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 104: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 105: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 106: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 107: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 108: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 109: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 110: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 111: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 112: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 113: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 114: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 115: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 116: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 117: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 118: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 119: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 120: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 121: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 122: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 123: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 124: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 125: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 126: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 127: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 128: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 129: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 130: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 131: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 132: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 133: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 134: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 135: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 136: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 137: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 138: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 139: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 140: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 141: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 142: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 143: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 144: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 145: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 146: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 147: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 148: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 149: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 150: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 151: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 152: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 153: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 154: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 155: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 156: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 157: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 158: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 159: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 160: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 161: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 162: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 163: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 164: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 165: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 166: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 167: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 168: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 169: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 170: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 171: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 172: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 173: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 174: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 175: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 176: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 177: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 178: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 179: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 180: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 181: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 182: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 183: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 184: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 185: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 186: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 187: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 188: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 189: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 190: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 191: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 192: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 193: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 194: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 195: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 196: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 197: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 198: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 199: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 200: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 201: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 202: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 203: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 204: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 205: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 206: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 207: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 208: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 209: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 210: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 211: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 212: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 213: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 214: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 215: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 216: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 217: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 218: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 219: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 220: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 221: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 222: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 223: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 224: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 225: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 226: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 227: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 228: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 229: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 230: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 231: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 232: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 233: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 234: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 235: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 236: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 237: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 238: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 239: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 240: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 241: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 242: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 243: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 244: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 245: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 246: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 247: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 248: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 249: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 250: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 251: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 252: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 253: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 254: <class 'mrcrowbar.lib.os.win16.FixedSegmentIndicator'>, 255: <class 'mrcrowbar.lib.os.win16.MovableSegmentIndicator'>}¶
- count = <UInt8: offset=0x0>¶
- indicator = <UInt8: offset=0x1>¶
- indicators = <BlockField: 0x00007f0c8351fa10>¶
- property repr¶
Plaintext summary of the Block.
- class mrcrowbar.lib.os.win16.FixedSegmentIndicator(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- exported = <Bits: offset=0x0, bits=0b1>¶
- offset = <UInt16_LE: offset=0x1>¶
- property repr¶
Plaintext summary of the Block.
- class mrcrowbar.lib.os.win16.ImportedName(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- name = <Bytes: offset=0x1, length=<Ref: size (rw)>>¶
- property repr¶
Plaintext summary of the Block.
- size = <UInt8: offset=0x0>¶
- class mrcrowbar.lib.os.win16.ImportedNameTable(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- impnames = <BlockField: 0x00007f0c8351f310>¶
- unk = <UInt8: offset=0x0>¶
- class mrcrowbar.lib.os.win16.ModuleReference(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- name = <StoreRef: 0x00007f0c833e8f50>¶
- name_offset = <UInt16_LE: offset=0x0>¶
- property repr¶
Plaintext summary of the Block.
- class mrcrowbar.lib.os.win16.ModuleSegmentHeader(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
SegmentHeader
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- alloc_size = <UInt16_LE: offset=0x6>¶
- conforming = <Bits: offset=0x5, bits=0b10>¶
- data_seg = <Bits: offset=0x4, bits=0b1>¶
- discardable = <Bits: offset=0x5, bits=0b10000>¶
- exec_ro = <Bits: offset=0x4, bits=0b10000000>¶
- granularity = <Bits: offset=0x5, bits=0b1000000>¶
- iterated = <Bits: offset=0x4, bits=0b1000>¶
- movable = <Bits: offset=0x4, bits=0b10000>¶
- offset_sect = <UInt16_LE: offset=0x0>¶
- op_size_32 = <Bits: offset=0x5, bits=0b100000>¶
- preload = <Bits: offset=0x4, bits=0b1000000>¶
- privilege_level = <Bits: offset=0x5, bits=0b1100>¶
- relocations = <Bits: offset=0x5, bits=0b1>¶
- property repr¶
Plaintext summary of the Block.
- segment = <StoreRef: 0x00007f0c83525d00>¶
- selector = <UInt16_LE: offset=0x8>¶
- size = <UInt16_LE: offset=0x2>¶
- unk1 = <Bits: offset=0x4, bits=0b10>¶
- unk2 = <Bits: offset=0x4, bits=0b100>¶
- unk3 = <Bits: offset=0x5, bits=0b10000000>¶
- class mrcrowbar.lib.os.win16.ModuleTable(*args, **kwargs)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- ne_header = <BlockField: 0x00007f0c833f04b0>¶
- property sector_align¶
- segdata = <Bytes: offset=<EndOffset: ne_header (rw)>>¶
- class mrcrowbar.lib.os.win16.MovableSegmentIndicator(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- exported = <Bits: offset=0x0, bits=0b1>¶
- offset = <UInt16_LE: offset=0x2>¶
- property repr¶
Plaintext summary of the Block.
- seg_id = <UInt8: offset=0x1>¶
- unk = <Bytes: offset=0x4, length=2>¶
- class mrcrowbar.lib.os.win16.NEBase(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- cs_id = <UInt16_LE: offset=0x16>¶
- entry_offset = <UInt16_LE: offset=0x4>¶
- exe_type = <UInt8: offset=0x36>¶
- flags = <UInt16_LE: offset=0xc>¶
- heap_size = <UInt16_LE: offset=0x10>¶
- impnames_offset = <UInt16_LE: offset=0x2a>¶
- property impnames_size¶
- ip_offset = <UInt16_LE: offset=0x14>¶
- modref_count = <UInt16_LE: offset=0x1e>¶
- modref_offset = <UInt16_LE: offset=0x28>¶
- movable_count = <UInt16_LE: offset=0x30>¶
- ne_magic = <Bytes: offset=0x0, length=2>¶
- nonresnames_rel_offset = <UInt32_LE: offset=0x2c>¶
- nonresnames_size = <UInt16_LE: offset=0x20>¶
- resnames_offset = <UInt16_LE: offset=0x26>¶
- restable_offset = <UInt16_LE: offset=0x24>¶
- sector_shift = <UInt16_LE: offset=0x32>¶
- segtable_count = <UInt16_LE: offset=0x1c>¶
- segtable_offset = <UInt16_LE: offset=0x22>¶
- sp_offset = <UInt16_LE: offset=0x18>¶
- ss_id = <UInt16_LE: offset=0x1a>¶
- stack_size = <UInt16_LE: offset=0x12>¶
- unk1 = <Bytes: offset=0x37, length=9>¶
- class mrcrowbar.lib.os.win16.NEHeader(*args, **kwargs)[source]¶
Bases:
NEBase
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- crc = <UInt32_LE: offset=0x8>¶
- cs_id = <UInt16_LE: offset=0x16>¶
- ds_id = <UInt16_LE: offset=0xe>¶
- entry_offset = <UInt16_LE: offset=0x4>¶
- entry_size = <UInt16_LE: offset=0x6>¶
- entrydata = <Bytes: offset=<Ref: entry_offset (rw)>, length=<Ref: entry_size (rw)>>¶
- exe_type = <UInt8: offset=0x36>¶
- flags = <UInt16_LE: offset=0xc>¶
- heap_size = <UInt16_LE: offset=0x10>¶
- impnamedata = <Bytes: offset=<Ref: impnames_offset (rw)>, length=<Ref: impnames_size (rw)>>¶
- impnames_offset = <UInt16_LE: offset=0x2a>¶
- ip_offset = <UInt16_LE: offset=0x14>¶
- linker_rev = <UInt8: offset=0x3>¶
- linker_ver = <UInt8: offset=0x2>¶
- modref_count = <UInt16_LE: offset=0x1e>¶
- modref_offset = <UInt16_LE: offset=0x28>¶
- modreftable = <BlockField: 0x00007f0c833f02f0>¶
- movable_count = <UInt16_LE: offset=0x30>¶
- ne_magic = <Bytes: offset=0x0, length=2>¶
- property nonresnames_offset¶
- nonresnames_rel_offset = <UInt32_LE: offset=0x2c>¶
- nonresnames_size = <UInt16_LE: offset=0x20>¶
- nonresnametable = <BlockField: 0x00007f0c833f03d0>¶
- resnames_offset = <UInt16_LE: offset=0x26>¶
- resnametable = <BlockField: 0x00007f0c833f0210>¶
- resource_count = <UInt16_LE: offset=0x34>¶
- restable = <BlockField: 0x00007f0c833f0130>¶
- restable_offset = <UInt16_LE: offset=0x24>¶
- sector_shift = <UInt16_LE: offset=0x32>¶
- segtable = <BlockField: 0x00007f0c833f0050>¶
- segtable_count = <UInt16_LE: offset=0x1c>¶
- segtable_offset = <UInt16_LE: offset=0x22>¶
- sp_offset = <UInt16_LE: offset=0x18>¶
- ss_id = <UInt16_LE: offset=0x1a>¶
- stack_size = <UInt16_LE: offset=0x12>¶
- unk1 = <Bytes: offset=0x37, length=9>¶
- class mrcrowbar.lib.os.win16.NEModule(*args, **kwargs)[source]¶
Bases:
NEBase
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- cs_id = <UInt16_LE: offset=0x16>¶
- dgroup_offset = <UInt16_LE: offset=0x8>¶
- dgroup_segid = <UInt16_LE: offset=0xe>¶
- entry_offset = <UInt16_LE: offset=0x4>¶
- exe_type = <UInt8: offset=0x36>¶
- fileinfo_offset = <UInt16_LE: offset=0xa>¶
- flags = <UInt16_LE: offset=0xc>¶
- heap_size = <UInt16_LE: offset=0x10>¶
- impnamedata = <Bytes: offset=<Ref: impnames_offset (rw)>, length=<Ref: impnames_size (rw)>>¶
- impnames_offset = <UInt16_LE: offset=0x2a>¶
- ip_offset = <UInt16_LE: offset=0x14>¶
- modref_count = <UInt16_LE: offset=0x1e>¶
- modref_offset = <UInt16_LE: offset=0x28>¶
- modreftable = <BlockField: 0x00007f0c8351fe70>¶
- movable_count = <UInt16_LE: offset=0x30>¶
- ne_magic = <Bytes: offset=0x0, length=2>¶
- next_table = <UInt16_LE: offset=0x6>¶
- nonresnames_rel_offset = <UInt32_LE: offset=0x2c>¶
- nonresnames_size = <UInt16_LE: offset=0x20>¶
- resnames_offset = <UInt16_LE: offset=0x26>¶
- resnametable = <BlockField: 0x00007f0c8351fd90>¶
- restable = <BlockField: 0x00007f0c8351fcb0>¶
- restable_offset = <UInt16_LE: offset=0x24>¶
- sector_shift = <UInt16_LE: offset=0x32>¶
- segtable = <BlockField: 0x00007f0c8351fbd0>¶
- segtable_count = <UInt16_LE: offset=0x1c>¶
- segtable_offset = <UInt16_LE: offset=0x22>¶
- sp_offset = <UInt16_LE: offset=0x18>¶
- ss_id = <UInt16_LE: offset=0x1a>¶
- stack_size = <UInt16_LE: offset=0x12>¶
- unk1 = <Bytes: offset=0x37, length=9>¶
- usage_count = <UInt16_LE: offset=0x2>¶
- class mrcrowbar.lib.os.win16.NullRelocationTable(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- class mrcrowbar.lib.os.win16.Relocation(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- DETAIL_TYPES = {RelocationDetail.INTERNAL_REF: <class 'mrcrowbar.lib.os.win16.RelocationInternalRef'>, RelocationDetail.IMPORT_ORDINAL: <class 'mrcrowbar.lib.os.win16.RelocationImportOrdinal'>, RelocationDetail.IMPORT_NAME: <class 'mrcrowbar.lib.os.win16.RelocationImportName'>, RelocationDetail.OS_FIXUP: <class 'mrcrowbar.lib.os.win16.RelocationOSFixup'>}¶
- additive = <Bits: offset=0x1, bits=0b100>¶
- address_type = <UInt8: offset=0x0>¶
- detail = <BlockField: 0x00007f0c8351f5b0>¶
- detail_type = <Bits: offset=0x1, bits=0b11>¶
- offset = <UInt16_LE: offset=0x2>¶
- property repr¶
Plaintext summary of the Block.
- class mrcrowbar.lib.os.win16.RelocationAddressType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
IntEnum
- LOW_BYTE = 0¶
- OFFSET_16 = 5¶
- OFFSET_32 = 13¶
- POINTER_32 = 3¶
- POINTER_48 = 11¶
- SELECTOR_16 = 2¶
- class mrcrowbar.lib.os.win16.RelocationDetail(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
IntEnum
- IMPORT_NAME = 2¶
- IMPORT_ORDINAL = 1¶
- INTERNAL_REF = 0¶
- OS_FIXUP = 3¶
- class mrcrowbar.lib.os.win16.RelocationImportName(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- index = <UInt16_LE: offset=0x0>¶
- name = <StoreRef: 0x00007f0c83525ae0>¶
- name_offset = <UInt16_LE: offset=0x2>¶
- property repr¶
Plaintext summary of the Block.
- class mrcrowbar.lib.os.win16.RelocationImportOrdinal(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- index = <UInt16_LE: offset=0x0>¶
- ordinal = <UInt16_LE: offset=0x2>¶
- property repr¶
Plaintext summary of the Block.
- class mrcrowbar.lib.os.win16.RelocationInternalRef(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- check = <UInt8: offset=0x1>¶
- index = <UInt8: offset=0x0>¶
- offset = <UInt16_LE: offset=0x2>¶
- property repr¶
Plaintext summary of the Block.
- class mrcrowbar.lib.os.win16.RelocationOSFixup(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- check = <UInt16_LE: offset=0x2>¶
- fixup = <UInt16_LE: offset=0x0>¶
- property repr¶
Plaintext summary of the Block.
- class mrcrowbar.lib.os.win16.RelocationOSFixupType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]¶
Bases:
IntEnum
- FIARQQ_FJARQQ = 1¶
- FICRQQ_FJCRQQ = 3¶
- FIDRQQ = 5¶
- FIERQQ = 4¶
- FISRQQ_FJSRQQ = 2¶
- FIWRQQ = 6¶
- class mrcrowbar.lib.os.win16.RelocationTable(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- count = <UInt16_LE: offset=0x0>¶
- reltable = <BlockField: 0x00007f0c8351f150>¶
- class mrcrowbar.lib.os.win16.ResidentName(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- index = <UInt16_LE: offset=<EndOffset: name (rw)>>¶
- name = <Bytes: offset=0x1, length=<Ref: size (rw)>>¶
- property repr¶
Plaintext summary of the Block.
- size = <UInt8: offset=0x0>¶
- class mrcrowbar.lib.os.win16.ResidentNameTable(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- module_name = <Bytes: offset=0x1, length=<Ref: module_name_size (rw)>>¶
- module_name_size = <UInt8: offset=0x0>¶
- padding = <UInt16_LE: offset=<EndOffset: module_name (rw)>>¶
- resnames = <BlockField: 0x00007f0c8351ec10>¶
- class mrcrowbar.lib.os.win16.Resource(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- discardable = <Bits: offset=0x5, bits=0b10000>¶
- in_memory = <Bits: offset=0x4, bits=0b100>¶
- int_id = <Bits16: offset=0x6, bits=0b1000000000000000>¶
- movable = <Bits: offset=0x4, bits=0b10000>¶
- offset = <UInt16_LE: offset=0x0>¶
- preload = <Bits: offset=0x4, bits=0b1000000>¶
- property repr¶
Plaintext summary of the Block.
- reserved = <Bytes: offset=0x8, length=4>¶
- resource_id = <Bits16: offset=0x6, bits=0b111111111111111>¶
- sharable = <Bits: offset=0x4, bits=0b100000>¶
- size = <UInt16_LE: offset=0x2>¶
- unk2 = <Bits: offset=0x4, bits=0b11>¶
- unk3 = <Bits: offset=0x5, bits=0b11100000>¶
- unk4 = <Bits: offset=0x5, bits=0b1111>¶
- class mrcrowbar.lib.os.win16.ResourceInfo(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- count = <UInt16_LE: offset=0x2>¶
- int_id = <Bits16: offset=0x0, bits=0b1000000000000000>¶
- property repr¶
Plaintext summary of the Block.
- reserved = <Bytes: offset=0x4, length=4>¶
- resources = <BlockField: 0x00007f0c8351f850>¶
- type_id = <Bits16: offset=0x0, bits=0b111111111111111>¶
- class mrcrowbar.lib.os.win16.ResourceTable(*args, **kwargs)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- align_shift = <UInt16_LE: offset=0x0>¶
- resourceinfo = <BlockField: 0x00007f0c8351f930>¶
- class mrcrowbar.lib.os.win16.Segment(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- RELOCATION_TYPES = {0: <class 'mrcrowbar.lib.os.win16.NullRelocationTable'>, 1: <class 'mrcrowbar.lib.os.win16.RelocationTable'>}¶
- data = <Bytes: offset=0x0, length=<Ref: _parent.size (rw)>>¶
- relocations = <BlockField: 0x00007f0c8351f770>¶
- class mrcrowbar.lib.os.win16.SegmentHeader(source_data=None, parent=None, preload_attrs=None, endian=None, cache_bytes=False, path_hint=None)[source]¶
Bases:
Block
Base class for Blocks.
- source_data
Source data to construct Block with. Can be a byte string, dictionary of attribute: value pairs, or another Block object.
- parent
Parent Block object where this Block is defined. Used for e.g. evaluating Refs.
- preload_attrs
Attributes on the Block to set before importing the data. Used for linking in dependencies before loading.
- endian
Platform endianness to use when interpreting the Block data. Useful for Blocks which have the same data layout but different endianness for stored numbers. Has no effect on fields with an predefined endianness.
- cache_bytes
Cache the bytes equivalent of the Block. Useful for debugging the loading procedure. Defaults to False.
- path_hint
Cache a string containing the path of the current Block, relative to the root.
- alloc_size = <UInt16_LE: offset=0x6>¶
- conforming = <Bits: offset=0x5, bits=0b10>¶
- data_seg = <Bits: offset=0x4, bits=0b1>¶
- discardable = <Bits: offset=0x5, bits=0b10000>¶
- exec_ro = <Bits: offset=0x4, bits=0b10000000>¶
- granularity = <Bits: offset=0x5, bits=0b1000000>¶
- iterated = <Bits: offset=0x4, bits=0b1000>¶
- movable = <Bits: offset=0x4, bits=0b10000>¶
- property offset¶
- offset_sect = <UInt16_LE: offset=0x0>¶
- op_size_32 = <Bits: offset=0x5, bits=0b100000>¶
- preload = <Bits: offset=0x4, bits=0b1000000>¶
- privilege_level = <Bits: offset=0x5, bits=0b1100>¶
- relocations = <Bits: offset=0x5, bits=0b1>¶
- property repr¶
Plaintext summary of the Block.
- segment = <StoreRef: 0x00007f0c83525d00>¶
- size = <UInt16_LE: offset=0x2>¶
- unk1 = <Bits: offset=0x4, bits=0b10>¶
- unk2 = <Bits: offset=0x4, bits=0b100>¶
- unk3 = <Bits: offset=0x5, bits=0b10000000>¶