Skip to content
Back to skills

2495 Func Sig 32dee3dc

ASecurity

`func_sig` is the primary function relocation signature used in `{symbol}.{platform}.yaml`.

  • 9 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 11, 2026
dataswift

Works with

  • mcp

Security analysis

A100/100

Scanned October 11, 2026

npx -y skills add tools-only/X-Skills --skill 2495-func_sig_32dee3dc --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 2495 Func Sig 32dee3dc?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for 2495 Func Sig 32dee3dc
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tools-only-2495-func-sig-32dee3dc/badge)](https://www.skillsdirectory.com/skills/tools-only-2495-func-sig-32dee3dc)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.md
# func_sig

## Overview
`func_sig` is the primary function relocation signature used in `{symbol}.{platform}.yaml`.

## Field Context
- Related YAML fields: `func_name`, `func_va`, `func_rva`, `func_size`, `func_sig`.
- Typical role: relocate the target function in a new binary version via unique byte-pattern match.

## Generation Principle
- Canonical auto-generation is implemented by `preprocess_gen_func_sig_via_mcp` in `ida_analyze_util.py`.
- Input is a known function start address (`func_va`).
- Bytes are collected from the function head instruction-by-instruction.
- Volatile bytes are wildcarded (`??`), including immediates/displacements and relative branch/call offsets.
- Candidate signatures grow only at instruction boundaries.
- Every candidate is checked by `find_bytes(limit=2)` for uniqueness.
- A candidate is accepted only if it uniquely matches and the match address equals the target function head.
- The shortest accepted candidate is emitted as `func_sig`.

## Usage Method
- In version-to-version preprocessing (`preprocess_func_sig_via_mcp`), `func_sig` is the primary relocation anchor.
- Flow:
  1. Run `find_bytes` with old `func_sig`.
  2. Require exactly one match.
  3. Query IDA function info at match address (`func_va`, `func_size`).
  4. Recompute `func_rva` and write new YAML.
- Important behavior: if old YAML already has `func_sig`, preprocessing chooses this path first and does not auto-fallback to `vfunc_sig` on failure.

## Downstream Use
- Dist gamedata modules mainly consume `func_sig` (converted to target pattern formats like CSS/VDF/Swiftly variants).

## Practical Notes
- Keep uniqueness strict (`==1` match); multi-hit signatures are invalid.
- Ensure signature anchors function head, not an interior address.
- Overly short signatures may pass today but become unstable in future updates.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.