final UINT16 length = parseUINT16(parser, 0x00006, fieldName + "::Length");
final AsciiString functionName = parseString(parser, 0x00006, "::FunctionName");
final UINT16 numParams = parseUINT16(parser, 0x00006, fieldName + "::NumParams");
final UINT8 registerCount = parseUINT8(parser, 0x00006, fieldName + "::RegisterCount");
final Flag preloadParentFlag = parseFlag(parser, 0x00006, fieldName + "::PreloadParentFlag");
final Flag preloadRootFlag = parseFlag(parser, 0x00006, fieldName + "::PreloadRootFlag");
final Flag suppressSuperFlag = parseFlag(parser, 0x00006, fieldName + "::SuppressSuperFlag");
final Flag preloadSuperFlag = parseFlag(parser, 0x00006, fieldName + "::PreloadSuperFlag");
final Flag suppressArgumentsFlag = parseFlag(parser, 0x00006, fieldName + "::SuppressArgumentsFlag");
final Flag preloadArgumentsFlag = parseFlag(parser, 0x00006, fieldName + "::PreloadArgumentsFlag");
final Flag suppressThisFlag = parseFlag(parser, 0x00006, fieldName + "::SuppressThisFlag");
final Flag preloadThisFlag = parseFlag(parser, 0x00006, fieldName + "::PreloadThisFlag");
final UBits reserved = parseUBits(parser, 7, 0x00006, fieldName + "::Reserved");
final Flag preloadGlobalFlag = parseFlag(parser, 0x00006, fieldName + "::PreloadGlobalFlag");
final List<RegisterParam> registerParams = new ArrayList<RegisterParam>();
for (int i=0;i<numParams.value();i++) {
registerParams.add(RegisterParamParser.parse(parser, fieldName + String.format("::RegisterParams[%d]", i)));