hitoshura25/cvefixes huggingface dataset:
CVE-2019-16236 (Other, published 2019-09-11T19:15Z)
Description: value: Dino before 2019-09-10 does not check roster push authorization in module/roster/module.vala.
Severity: MEDIUM (CVSS v3 base score: 7.5)
Weakness: CWE-862 \u2014 Missing Authorization
The product does not perform an authorization check when an actor attempts to access a resource or perform an action.
Repository: https://github.com/dino/dino
Files changed:
xmpp-vala/src/module/roster/module.vala
Commit message: Check roster push authorization


Vulnerable code:

Fixed code:
        if (!iq.from.equals(stream.get_flag(Bind.Flag.IDENTITY).my_jid.bare_jid)) {
            warning("Received alledged roster push from %s, ignoring", iq.from.to_string());
            return;
        }
CVE-2019-16237 (Other, published 2019-09-11T19:15Z)
Description: value: Dino before 2019-09-10 does not properly check the source of an MAM message in module/xep/0313_message_archive_management.vala.
Severity: MEDIUM (CVSS v3 base score: 7.5)
Weakness: CWE-346 \u2014 Origin Validation Error
The product does not properly verify that the source of data or communication is valid.
Repository: https://github.com/dino/dino
Files changed:
xmpp-vala/src/module/xep/0313_message_archive_management.vala
Commit message: Fix check of source of MAM message


Vulnerable code:
        //        if (message.from != stream.remote_name) return;

Fixed code:
            // MAM messages must come from our server // TODO or a MUC server
            if (!message.from.equals(stream.get_flag(Bind.Flag.IDENTITY).my_jid.bare_jid)) {
                warning("Received alledged MAM message from %s, ignoring", message.from.to_string());
                return true;
            }
CVE-2023-37905 (JavaScript, published 2023-07-21T20:15Z)
Description: value: ckeditor-wordcount-plugin is an open source WordCount Plugin for CKEditor. It has been discovered that the `ckeditor-wordcount-plugin` plugin for CKEditor4 is susceptible to cross-site scripting when switching to the source code mode. This issue has been addressed in version 1.17.12 of the `ckeditor-wordcount-plugin` plugin and users are advised to upgrade. There are no known workarounds for this vulnerability.


Severity: nan (CVSS v3 base score: 6.1)
Weakness: CWE-79 \u2014 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Repository: https://github.com/w8tcha/CKEditor-WordCount-Plugin
Files changed:
wordcount/plugin.js
Commit message: [FIXED] xss issue


Vulnerable code:
        version: "1.17.10",
                if (tmp.textContent == "" && typeof tmp.innerText == "undefined") {
                return tmp.textContent || tmp.innerText;

Fixed code:
        version: "1.17.11",
                // Parse filtered HTML, without applying it to any element in DOM
                var tmp = new DOMParser().parseFromString(html, 'text/html');
                if (!tmp.body || !tmp.body.textContent) {
                return tmp.body.textContent || tmp.body.innerText;
CVE-2023-37905 (JSON, published 2023-07-21T20:15Z)
Description: value: ckeditor-wordcount-plugin is an open source WordCount Plugin for CKEditor. It has been discovered that the `ckeditor-wordcount-plugin` plugin for CKEditor4 is susceptible to cross-site scripting when switching to the source code mode. This issue has been addressed in version 1.17.12 of the `ckeditor-wordcount-plugin` plugin and users are advised to upgrade. There are no known workarounds for this vulnerability.


Severity: nan (CVSS v3 base score: 6.1)
Weakness: CWE-79 \u2014 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Repository: https://github.com/w8tcha/CKEditor-WordCount-Plugin
Files changed:
package.json
wordcount/plugin.js
Commit message: [FIXED] xss issue


Vulnerable code:
  "version": "1.17.11",
        version: "1.17.11",
                var tmp = document.createElement("div");

                tmp.innerHTML = html;


Fixed code:
  "version": "1.17.12",
        version: "1.17.12",
CVE-2017-10929 (C, published 2017-07-05T12:29Z)
Description: value: The grub_memmove function in shlr/grub/kern/misc.c in radare2 1.5.0 allows remote attackers to cause a denial of service (heap-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted binary file, possibly related to a read overflow in the grub_disk_read_small_real function in kern/disk.c in GNU GRUB 2.02.
Severity: MEDIUM (CVSS v3 base score: 7.8)
Weakness: CWE-119 \u2014 Improper Restriction of Operations within the Bounds of a Memory Buffer
The product performs operations on a memory buffer, but it reads from or writes to a memory location outside the buffer's intended boundary. This may result in read or write operations on unexpected memory locations that could be linked to other variables, data structures, or internal program data.
Repository: https://github.com/radare/radare2
Files changed:
shlr/grub/kern/disk.c
Commit message: Fix r2_hbo_grub_memmove ext2 crash


Vulnerable code:
	  if (buf)

Fixed code:
	  if (buf) {
	    if (pos + real_offset + len >= size) {
              // prevent read overflow
              grub_errno = GRUB_ERR_BAD_FS;
              return grub_errno;
	    }
          }
CVE-2017-15368 (C, published 2017-10-16T01:29Z)
Description: value: The wasm_dis function in libr/asm/arch/wasm/wasm.c in radare2 2.0.0 allows remote attackers to cause a denial of service (stack-based buffer over-read and application crash) or possibly have unspecified other impact via a crafted WASM file that triggers an incorrect r_hex_bin2str call.
Severity: MEDIUM (CVSS v3 base score: 7.8)
Weakness: CWE-125 \u2014 Out-of-bounds Read
The product reads data past the end, or before the beginning, of the intended buffer.
Repository: https://github.com/radare/radare2
Files changed:
libr/asm/arch/wasm/wasm.c
libr/flag/flag.c
Commit message: Fix crash in wasm disassembler


Vulnerable code:
	if (op->op > 0xbf) return 1;
			if (!(n > 0 && n < buf_len)) goto err;
			if (!(table = calloc (count, sizeof (ut32)))) goto err;
				if (!(op->len + n <= buf_len)) goto beach;
			if (!(n > 0 && n + op->len < buf_len)) goto beach;
			for (i = 0; i < count && strlen (op->txt) < R_ASM_BUFSIZE; i++) {
				snprintf (op->txt + strlen (op->txt), R_ASM_BUFSIZE, "%d ", table[i]);
				free (table);
				goto err;

static  RFlagsAtOffset* r_flag_get_nearest_list(RFlag *f, ut64 off, int dir) {

Fixed code:
	if (op->op > 0xbf) {
		return 1;
	}
			if (!(n > 0 && n < buf_len)) {
				goto err;
			}
			if (!(table = calloc (count, sizeof (ut32)))) {
				goto err;
			}
				if (!(op->len + n <= buf_len)) {
					goto beach;
				}
			if (!(n > 0 && n + op->len < buf_len)) {
				goto beach;
			}
			for (i = 0; i < count && strlen (op->txt) + 10 < R_ASM_BUFSIZE; i++) {
				int optxtlen = strlen (op->txt);
				snprintf (op->txt + optxtlen, R_ASM_BUFSIZE - optxtlen, "%d ", table[i]);
			free (table);
			goto err;
static RFlagsAtOffset* r_flag_get_nearest_list(RFlag *f, ut64 off, int dir) {
CVE-2017-15385 (C, published 2017-10-16T22:29Z)
Description: value: The store_versioninfo_gnu_verdef function in libr/bin/format/elf/elf.c in radare2 2.0.0 allows remote attackers to cause a denial of service (r_read_le16 invalid write and application crash) or possibly have unspecified other impact via a crafted ELF file.
Severity: MEDIUM (CVSS v3 base score: 7.8)
Weakness: CWE-119 \u2014 Improper Restriction of Operations within the Bounds of a Memory Buffer
The product performs operations on a memory buffer, but it reads from or writes to a memory location outside the buffer's intended boundary. This may result in read or write operations on unexpected memory locations that could be linked to other variables, data structures, or internal program data.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/format/elf/elf.c
Commit message: Fix #8685 - Crash in ELF version parsing


Vulnerable code:
	for (cnt = 0, i = 0; cnt < shdr->sh_info && ((char *)defs + i < end); ++cnt) {

Fixed code:
	for (cnt = 0, i = 0; i >= 0 && cnt < shdr->sh_info && ((char *)defs + i < end); ++cnt) {
		if ((st32)verdef->vd_next < 1) {
			eprintf ("Warning: Invalid vd_next in the ELF version\n");
			break;
		}
CVE-2017-15931 (C, published 2017-10-27T18:29Z)
Description: value: In radare2 2.0.1, an integer exception (negative number leading to an invalid memory access) exists in store_versioninfo_gnu_verneed() in libr/bin/format/elf/elf.c via crafted ELF files on 32bit systems.
Severity: MEDIUM (CVSS v3 base score: 7.8)
Weakness: CWE-125 \u2014 Out-of-bounds Read
The product reads data past the end, or before the beginning, of the intended buffer.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/format/elf/elf.c
Commit message: Fix #8731 - Crash in ELF parser with negative 32bit number


Vulnerable code:
		vstart += entry->vn_aux;

Fixed code:
		st32 vnaux = entry->vn_aux;
		if (vnaux < 1) {
			goto beach;
		}
		vstart += vnaux;
CVE-2017-15932 (C, published 2017-10-27T18:29Z)
Description: value: In radare2 2.0.1, an integer exception (negative number leading to an invalid memory access) exists in store_versioninfo_gnu_verdef() in libr/bin/format/elf/elf.c via crafted ELF files when parsing the ELF version on 32bit systems.
Severity: MEDIUM (CVSS v3 base score: 7.8)
Weakness: CWE-125 \u2014 Out-of-bounds Read
The product reads data past the end, or before the beginning, of the intended buffer.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/format/elf/elf.c
Commit message: Fix #8743 - Crash in ELF version parser on 32bit systems


Vulnerable code:
		vstart += verdef->vd_aux;

Fixed code:
		int vdaux = verdef->vd_aux;
		if (vdaux < 1) {
			sdb_free (sdb_verdef);
			goto out_error;
		}
		vstart += vdaux;
CVE-2017-16357 (C, published 2017-11-01T17:29Z)
Description: value: In radare 2.0.1, a memory corruption vulnerability exists in store_versioninfo_gnu_verdef() and store_versioninfo_gnu_verneed() in libr/bin/format/elf/elf.c, as demonstrated by an invalid free. This error is due to improper sh_size validation when allocating memory.
Severity: MEDIUM (CVSS v3 base score: 7.8)
Weakness: CWE-119 \u2014 Improper Restriction of Operations within the Bounds of a Memory Buffer
The product performs operations on a memory buffer, but it reads from or writes to a memory location outside the buffer's intended boundary. This may result in read or write operations on unexpected memory locations that could be linked to other variables, data structures, or internal program data.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/format/elf/elf.c
Commit message: Fixed crash in elf.c with 32bit r2 when shdr->sh_size > max size_t


Vulnerable code:
	if (shdr->sh_size < 1) {
	if (shdr->sh_size < 1) {

Fixed code:
	if (shdr->sh_size < 1 || shdr->sh_size > SIZE_MAX) {
	if (shdr->sh_size < 1 || shdr->sh_size > SIZE_MAX) {
CVE-2017-16358 (C, published 2017-11-01T17:29Z)
Description: value: In radare 2.0.1, an out-of-bounds read vulnerability exists in string_scan_range() in libr/bin/bin.c when doing a string search.
Severity: MEDIUM (CVSS v3 base score: 7.8)
Weakness: CWE-125 \u2014 Out-of-bounds Read
The product reads data past the end, or before the beginning, of the intended buffer.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/bin.c
Commit message: Fix #8748 - Fix oobread on string search


Vulnerable code:
					{
						const ut8 *p = buf  + str_start - 2;
					{
						const ut8 *p = buf  + str_start - 4;

Fixed code:
					if (str_start > 1) {
						const ut8 *p = buf + str_start - 2;
					if (str_start > 3) {
						const ut8 *p = buf + str_start - 4;
CVE-2017-16359 (C, published 2017-11-01T17:29Z)
Description: value: In radare 2.0.1, a pointer wraparound vulnerability exists in store_versioninfo_gnu_verdef() in libr/bin/format/elf/elf.c.
Severity: MEDIUM (CVSS v3 base score: 5.5)
Weakness: CWE-476 \u2014 NULL Pointer Dereference
The product dereferences a pointer that it expects to be valid but is NULL.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/format/elf/elf.c
Commit message: Fix #8764 a 3rd time since 2nd time is UB and can be optimized away


Vulnerable code:
		if (vdaux < 1 || vstart + vdaux < vstart) {

Fixed code:
		size_t vstart_off = i;
		if (vdaux < 1 || shdr->sh_size - vstart_off < vdaux) {
		vstart_off += vdaux;
			vstart_off += aux.vda_next;
CVE-2017-16359 (C, published 2017-11-01T17:29Z)
Description: value: In radare 2.0.1, a pointer wraparound vulnerability exists in store_versioninfo_gnu_verdef() in libr/bin/format/elf/elf.c.
Severity: MEDIUM (CVSS v3 base score: 5.5)
Weakness: CWE-476 \u2014 NULL Pointer Dereference
The product dereferences a pointer that it expects to be valid but is NULL.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/format/elf/elf.c
Commit message: Fix #8764 differently since ptr diff might not fit in ptrdiff_t


Vulnerable code:
		if (vdaux < 1 || (char *)UINTPTR_MAX - vstart < vdaux) {

Fixed code:
		if (vdaux < 1 || vstart + vdaux < vstart) {
CVE-2017-16359 (C, published 2017-11-01T17:29Z)
Description: value: In radare 2.0.1, a pointer wraparound vulnerability exists in store_versioninfo_gnu_verdef() in libr/bin/format/elf/elf.c.
Severity: MEDIUM (CVSS v3 base score: 5.5)
Weakness: CWE-476 \u2014 NULL Pointer Dereference
The product dereferences a pointer that it expects to be valid but is NULL.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/format/elf/elf.c
Commit message: Fix #8764 - huge vd_aux caused pointer wraparound


Vulnerable code:
	for (cnt = 0, i = 0; i >= 0 && cnt < shdr->sh_info && ((char *)defs + i < end); ++cnt) {
		if (vdaux < 1) {
		if (vstart > end || vstart + sizeof (Elf_(Verdaux)) > end) {
			if (vstart > end || vstart + sizeof(Elf_(Verdaux)) > end) {

Fixed code:
	for (cnt = 0, i = 0; i >= 0 && cnt < shdr->sh_info && (end - (char *)defs > i); ++cnt) {
		if (vdaux < 1 || (char *)UINTPTR_MAX - vstart < vdaux) {
		if (vstart > end || end - vstart < sizeof (Elf_(Verdaux))) {
			if (vstart > end || end - vstart < sizeof (Elf_(Verdaux))) {
CVE-2017-16805 (C, published 2017-11-13T21:29Z)
Description: value: In radare2 2.0.1, libr/bin/dwarf.c allows remote attackers to cause a denial of service (invalid read and application crash) via a crafted ELF file, related to r_bin_dwarf_parse_comp_unit in dwarf.c and sdb_set_internal in shlr/sdb/src/sdb.c.
Severity: MEDIUM (CVSS v3 base score: 5.5)
Weakness: CWE-125 \u2014 Out-of-bounds Read
The product reads data past the end, or before the beginning, of the intended buffer.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/dwarf.c
libr/include/r_bin_dwarf.h
Commit message: Fix #8813 - segfault in dwarf parser


Vulnerable code:
/* radare - LGPL - Copyright 2012-2016 - pancake, Fedor Sakharov */
				if (!values[k].name)
	if (!spec || !value || !hdr || !obuf || obuf_len < 0) {
			eprintf("DWARF: Unexpected pointer size: %u\n", (unsigned)hdr->pointer_size);
		value->encoding.block.data = calloc (sizeof(ut8), value->encoding.block.length);
		for (j = 0; j < value->encoding.block.length; j++) {
			value->encoding.block.data[j] = READ (buf, ut8);
		for (j = 0; j < value->encoding.block.length; j++) {
			value->encoding.block.data[j] = READ (buf, ut8);
			memset (&cu->dies[cu->length].attr_values[i], 0, sizeof
					(cu->dies[cu->length].attr_values[i]));
	struct str_structt {

Fixed code:
/* radare - LGPL - Copyright 2012-2017 - pancake, Fedor Sakharov */
				if (!values[k].name) {
				}
	if (!spec || !value || !hdr || !obuf || obuf_len < 1) {
			eprintf ("DWARF: Unexpected pointer size: %u\n", (unsigned)hdr->pointer_size);
#if 0
// This causes segfaults to happen
#endif
		value->encoding.block.data = calloc (sizeof (ut8), value->encoding.block.length);
		if (value->encoding.block.data) {
			for (j = 0; j < value->encoding.block.length; j++) {
				value->encoding.block.data[j] = READ (buf, ut8);
			}
		if (value->encoding.block.data) {
			for (j = 0; j < value->encoding.block.length; j++) {
				value->encoding.block.data[j] = READ (buf, ut8);
			}
			memset (&cu->dies[cu->length].attr_values[i], 0, sizeof (cu->dies[cu->length].attr_values[i]));
	struct {
CVE-2017-6194 (C, published 2017-04-03T05:59Z)
Description: value: The relocs function in libr/bin/p/bin_bflt.c in radare2 1.2.1 allows remote attackers to cause a denial of service (heap-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted binary file.
Severity: MEDIUM (CVSS v3 base score: 7.8)
Weakness: CWE-119 \u2014 Improper Restriction of Operations within the Bounds of a Memory Buffer
The product performs operations on a memory buffer, but it reads from or writes to a memory location outside the buffer's intended boundary. This may result in read or write operations on unexpected memory locations that could be linked to other variables, data structures, or internal program data.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/p/bin_bflt.c
Commit message: Fix #6829 oob write because of using wrong struct


Vulnerable code:
static int search_old_relocation(struct reloc_struct_t *reloc_table, ut32 addr_to_patch, int n_reloc) {
			struct reloc_struct_t *got_table = calloc (1, n_got * sizeof (ut32));

Fixed code:
	if (!tbuf) {
		return NULL;
	}
static int search_old_relocation (struct reloc_struct_t *reloc_table,
				  ut32 addr_to_patch, int n_reloc) {
			struct reloc_struct_t *got_table = calloc (
				1, n_got * sizeof (struct reloc_struct_t));
CVE-2017-6197 (C, published 2017-02-24T04:59Z)
Description: value: The r_read_* functions in libr/include/r_endian.h in radare2 1.2.1 allow remote attackers to cause a denial of service (NULL pointer dereference and application crash) via a crafted binary file, as demonstrated by the r_read_le32 function.
Severity: MEDIUM (CVSS v3 base score: 5.5)
Weakness: CWE-476 \u2014 NULL Pointer Dereference
The product dereferences a pointer that it expects to be valid but is NULL.
Repository: https://github.com/radare/radare2
Files changed:
doc/uncrustify.cfg
libr/bin/p/bin_dex.c
libr/include/r_endian.h
Commit message: Fix #6816 - null deref in r_read_*


Vulnerable code:
nl_after_label_colon            = force
		int types_list_size = r_read_le32(p);

Fixed code:
nl_after_label_colon            = true
		int types_list_size = r_read_le32 (p);
	if (!src) {
		return UT8_MAX;
	}
	if (!src) {
		return UT8_MAX;
	}
	if (!src) {
		return UT16_MAX;
	}
	if (!src) {
		return UT16_MAX;
	}
	if (!src) {
		return UT32_MAX;
	}
	if (!src) {
		return UT32_MAX;
	}
CVE-2017-6319 (C, published 2017-03-02T01:59Z)
Description: value: The dex_parse_debug_item function in libr/bin/p/bin_dex.c in radare2 1.2.1 allows remote attackers to cause a denial of service (buffer overflow and application crash) or possibly have unspecified other impact via a crafted DEX file.
Severity: MEDIUM (CVSS v3 base score: 7.8)
Weakness: CWE-119 \u2014 Improper Restriction of Operations within the Bounds of a Memory Buffer
The product performs operations on a memory buffer, but it reads from or writes to a memory location outside the buffer's intended boundary. This may result in read or write operations on unexpected memory locations that could be linked to other variables, data structures, or internal program data.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/p/bin_dex.c
Commit message: Fix #6836 - oob write in dex


Vulnerable code:
	if (argReg >= regsz) {
		//return; // this return breaks tests

Fixed code:
	if (argReg > regsz) {
		return; // this return breaks tests
CVE-2017-6387 (C, published 2017-03-02T01:59Z)
Description: value: The dex_loadcode function in libr/bin/p/bin_dex.c in radare2 1.2.1 allows remote attackers to cause a denial of service (out-of-bounds read and application crash) via a crafted DEX file.
Severity: MEDIUM (CVSS v3 base score: 5.5)
Weakness: CWE-125 \u2014 Out-of-bounds Read
The product reads data past the end, or before the beginning, of the intended buffer.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/p/bin_dex.c
sys/asan.sh
Commit message: fix #6857


Vulnerable code:
			if (bin->methods[i].class_id > bin->header.types_size - 1) {
export LDFLAGS="-lasan"
export CFLAGS="${CFLAGS} -lasan"

Fixed code:
			if (bin->methods[i].class_id > bin->header.types_size) {
#export LDFLAGS="-lasan"
#export CFLAGS="${CFLAGS} -lasan"
CVE-2017-7274 (C, published 2017-03-27T17:59Z)
Description: value: The r_pkcs7_parse_cms function in libr/util/r_pkcs7.c in radare2 1.3.0 allows remote attackers to cause a denial of service (NULL pointer dereference and application crash) via a crafted PE file.
Severity: MEDIUM (CVSS v3 base score: 5.5)
Weakness: CWE-476 \u2014 NULL Pointer Dereference
The product dereferences a pointer that it expects to be valid but is NULL.
Repository: https://github.com/radare/radare2
Files changed:
libr/util/r_pkcs7.c
Commit message: Fix #7152 - Null deref in cms



Vulnerable code:
	if (!object || object->list.length != 2 || !object->list.objects[0] || object->list.objects[1]->list.length != 1) {

Fixed code:
	if (!object || object->list.length != 2 || !object->list.objects ||
		!object->list.objects[0] || !object->list.objects[1] ||
		object->list.objects[1]->list.length != 1) {
CVE-2017-7854 (C, published 2017-04-13T16:59Z)
Description: value: The consume_init_expr function in wasm.c in radare2 1.3.0 allows remote attackers to cause a denial of service (heap-based buffer over-read and application crash) via a crafted Web Assembly file.
Severity: MEDIUM (CVSS v3 base score: 5.5)
Weakness: CWE-125 \u2014 Out-of-bounds Read
The product reads data past the end, or before the beginning, of the intended buffer.
Repository: https://github.com/radare/radare2
Files changed:
libr/bin/format/wasm/wasm.c
Commit message: Fix crash in fuzzed wasm r2_hoobr_consume_init_expr


Vulnerable code:
		i += 1;

	ut32 len =  sec->payload_len;
	while (i < len && r < count) {


			free (ptr);
			return ret;

			free (ptr);
			return ret;


			free (ptr);
			return ret;


	int buflen = bin->buf->length;
	if (sec->payload_data + 32 > buflen) {
		return NULL;
	}

	while (i < len && r < count) {


			free (ptr);
			return ret;

			free (ptr);
			return ret;

			free (ptr);
			return ret;

		while (i < len && j < ptr->num_elem	) {




Fixed code:

		i++;
	ut32 len =  sec->payload_len;
	int buflen = bin->buf->length - (ut32)sec->payload_data;
	while (i < len && len < buflen && r < count) {
			goto beach;
		}
		if (i + 4 >= buflen) {
			goto beach;
			goto beach;
			goto beach;
		}
		if (i + 4 >= buflen) {
			goto beach;
	return ret;
beach:
	free (ptr);
	int buflen = bin->buf->length - (ut32)sec->payload_data;
	int buflen = bin->buf->length - (ut32)sec->payload_data;
	while (i < len && len < buflen && r < count) {
			goto beach;
			goto beach;
			goto beach;
		while (i < len && j < ptr->num_elem) {
	return ret;
beach:
	free (ptr);