I actually encountered a binary value with 1033680 bytes.
---
lib/hivex-internal.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/hivex-internal.h b/lib/hivex-internal.h
index 7f4cc3c..bfd24c8 100644
--- a/lib/hivex-internal.h
+++ b/lib/hivex-internal.h
@@ -321,7 +321,7 @@ extern int _hivex_get_values (hive_h *h, hive_node_h node,
hive_value_h **values
/* These limits are in place to stop really stupid stuff and/or exploits. */
#define HIVEX_MAX_SUBKEYS 15000
#define HIVEX_MAX_VALUES 10000
-#define HIVEX_MAX_VALUE_LEN 1000000
+#define HIVEX_MAX_VALUE_LEN 2000000
#define HIVEX_MAX_ALLOCATION 1000000
#endif /* HIVEX_INTERNAL_H_ */
--
1.9.rc1