+ return 2;
+ }
+
+ look = ventoy_find_look_entry(head, lookup, &wim_dirent->hash);
+ if (!look)
+ {
+ return 3;
+ }
+
+ reglen = (grub_uint32_t)look->resource.raw_size;
+ debug("find system lookup entry_id:%ld raw_size:%u\n",
+ ((long)look - (long)lookup) / sizeof(wim_lookup_entry), reglen);
+
+ if (0 != ventoy_read_resource(file, head, &(look->resource), (void **)&(decompress_data)))
+ {
+ return 4;
+ }
+
+ if (grub_strncmp(decompress_data + 0x1000, "hbin", 4))
+ {
+ return 5;
+ }
+
+ for (i = 0x1000; i + sizeof(reg_vk) < reglen; i += 8)
+ {
+ regvk = (reg_vk *)(decompress_data + i);
+ if (regvk->sig == 0x6B76 && regvk->namesize == 7 &&
+ regvk->datatype == 1 && regvk->flag == 1)