{"adoption": {"forks": 181, "observed_at": "2026-08-28T04:05:06.847588+00:00", "stars": 1581}, "canonical_url": "https://ross.abutalabs.com/products/vtil-core", "card": {"archived": false, "artifact_type": "library", "description": "Virtual-machine Translation Intermediate Language", "domain": ["compilers", "reverse-engineering", "security", "developer-tools"], "enriched": true, "function": ["compiler", "interpreter", "parser", "developer-tools"], "health_score": 77, "homepage": null, "language": "C++", "license": "BSD-3-Clause", "license_family": "permissive", "maturity": "experimental", "member_repos": ["vtil-project/VTIL-Core"], "name": "vtil-project/VTIL-Core", "platform": ["cpp", "windows", "cross-platform"], "pushed_at": "2026-07-27T04:06:06+00:00", "repo": "vtil-project/VTIL-Core", "stars": 1581, "tags": ["intermediate-language", "devirtualization", "deobfuscation", "binary-analysis", "optimizing-compiler", "virtual-machine-translation", "linux", "macos"], "topics": ["virtual-machine-translation", "optimizing-compilers", "compiler", "intermediate-language", "optimizer", "devirtualizer", "deobfuscation"], "urls": [], "use_cases": ["devirtualize obfuscated virtual machine protected binaries", "deobfuscate compiled binaries", "lift native assembly into an intermediate representation", "optimize lifted code with an optimizing compiler", "emit optimized code back to native instructions", "build binary analysis and translation tooling"], "what_it_is": "VTIL-Core is the core library of the Virtual-machine Translation Intermediate Language project, an optimizing compiler infrastructure built for binary de-obfuscation and de-virtualization. Its versatile IL makes it easy to lift code from any architecture (including stack machines) and emit code back to native format at arbitrary virtual addresses.", "when_to_avoid": ["you need a general-purpose compiler backend like LLVM for normal compilation", "you need a mature, fully documented toolchain - the project is still incomplete", "you need a ready-to-use deobfuscation tool rather than a library to build on"], "when_to_choose": ["you need to devirtualize or deobfuscate VM-protected binaries", "you want an IL that preserves native ISA concepts like stack and physical registers", "you need to lift from arbitrary architectures including stack machines", "you want to emit code back to native format at any virtual address"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/vtil-core", "repo": "vtil-project/VTIL-Core", "role": "main", "score": 75}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:06.847588+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:56:35.060380+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7e7d977d870839a6bad4292d531c7c8ace75101858081ddd0096ffdbddf47745", "fetched_at": "2026-08-28T04:05:06.847588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vtil-project/VTIL-Core"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 94, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2346, "days_push": 37, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 75, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}