vfunc_sig is primarily used by analysis/preprocess relocation pipelines.
Practical Notes
Use when function-head signatures are weak but vtable slot identity is stable.
Keep vfunc_index / vfunc_offset internally consistent (offset = index * 8 in current 64-bit assumptions).
Reject non-unique signatures.
1---2name: 417-vfunc-sig-9dfecfa23description: vfunc_sig4---5# vfunc_sig67## Overview8`vfunc_sig` is an alternate virtual-function relocation signature used when `func_sig` is unavailable or unstable.910## Field Context11- Related YAML fields: `vfunc_sig`, `vtable_name`, `vfunc_index`, `vfunc_offset` (and occasionally `vfunc_inst_offset`).12- Typical role: anchor to a virtual-call pattern tied to a vtable slot.1314## Generation Principle15- In this repository, `vfunc_sig` is typically produced by the skill `/generate-signature-for-vfuncoffset`.16- The anchor is a virtual-call instruction encoding vtable slot displacement (e.g., indirect call/jump via `[reg+imm]`).17- Signature growth is forward from the target instruction; default workflow documents `vfunc_sig_disp = 0`.18- Candidates are validated by uniqueness (`find_bytes`) and robustness.19- The shortest valid unique pattern is selected.20- Slot-related displacement bytes are intentionally preserved/represented so the signature remains slot-specific.2122## Usage Method23- In `preprocess_func_sig_via_mcp`, `vfunc_sig` is a fallback path used when old YAML has no `func_sig`.24- Required metadata:25 - `vfunc_sig`26 - `vtable_name`27 - and `vfunc_index` or `vfunc_offset`28- Flow:29 1. Unique-match `vfunc_sig` in new binary.30 2. Load/generate target vtable YAML.31 3. Resolve function VA via `vtable_entries[vfunc_index]`.32 4. Query function info and emit function YAML with vfunc metadata.3334## Downstream Use35- Dist gamedata modules mainly consume `vfunc_index` (offset metadata), not `vfunc_sig` directly.36- `vfunc_sig` is primarily used by analysis/preprocess relocation pipelines.3738## Practical Notes39- Use when function-head signatures are weak but vtable slot identity is stable.40- Keep `vfunc_index` / `vfunc_offset` internally consistent (`offset = index * 8` in current 64-bit assumptions).41- Reject non-unique signatures.
Run npx skillmds@latest add tools-only/417-vfunc-sig-9dfecfa2 in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
vfunc_sig It is listed under Productivity on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
tools-only (@tools-only) published this skill. Their other Agent Skills are listed on their SkillMD profile.