internal Object(Script script, ScriptBlock block, AssetLoader loader)
: base(script, block)
{
var reader = loader.Reader;
loader.Expect((ushort)0x1234);
LocalVariableOffset = reader.ReadUInt16();
int functionSelectorListOffset = reader.ReadUInt16();
int variableSelectorCount = reader.ReadUInt16();
Codex<VariableSelector> variableSelectors = new Codex<VariableSelector>(variableSelectorCount);
Variables = variableSelectors;
for (int index = 0; index < variableSelectorCount; index++)
variableSelectors.Add(new VariableSelector(this, loader));
int functionSelectorCount = reader.ReadUInt16();
Codex<FunctionSelector> functionSelectors = new Codex<FunctionSelector>(functionSelectorCount);
Functions = functionSelectors;
for (int index = 0; index < functionSelectorCount; index++)
functionSelectors.Add(new FunctionSelector(this, loader));
loader.Expect((ushort)0);
for (int index = 0; index < functionSelectorCount; index++)
functionSelectors[index].ReadCodeOffset(loader);
loader.ExpectPosition(block.EndOffset);
}