hzqst

find-CBasePlayerController_vtable

5
0
# Install this skill:
npx skills add hzqst/CS2_VibeSignatures --skill "find-CBasePlayerController_vtable"

Install specific skill from multi-skill repository

# Description

Find and identify the CBasePlayerController vtable in CS2 binary using IDA Pro MCP. Use this skill when reverse engineering CS2 server.dll or server.so to locate the CBasePlayerController virtual function table by searching for the mangled vtable symbol name.

# SKILL.md


name: find-CBasePlayerController_vtable
description: Find and identify the CBasePlayerController vtable in CS2 binary using IDA Pro MCP. Use this skill when reverse engineering CS2 server.dll or server.so to locate the CBasePlayerController virtual function table by searching for the mangled vtable symbol name.


Find CBasePlayerController_vtable

Locate CBasePlayerController_vtable in CS2 server.dll or server.so using IDA Pro MCP tools.

Method

1. Get VTable Address and Size

Use /get-vtable-address skill with CBasePlayerController:

/get-vtable-address CBasePlayerController

This will return:
- vtableAddress: The address of the vtable
- sizeInBytes: Total size of the vtable in bytes
- numberOfVirtualFunctions: Count of virtual function entries

2. Write VTable Info as YAML

Use /write-vtable-as-yaml skill with:
- vtable_class: CBasePlayerController
- vtable_va: The vtable address from step 1

VTable Symbol Patterns

Windows (server.dll)

The vtable uses MSVC name mangling:
- ??_7CBasePlayerController@@6B@ - CBasePlayerController vtable

Linux (server.so)

The vtable uses Itanium C++ ABI name mangling:
- _ZTV21CBasePlayerController - CBasePlayerController vtable

Output YAML Format

The output YAML filename depends on the platform:
- server.dll β†’ CBasePlayerController_vtable.windows.yaml
- server.so / libserver.so β†’ CBasePlayerController_vtable.linux.yaml

vtable_class: CBasePlayerController
vtable_va: 0x2227958      # Virtual address - changes with game updates
vtable_rva: 0x2227958     # Relative virtual address - changes with game updates
vtable_size: 0x888        # VTable size in bytes - changes with game updates
vtable_numvfunc: 273      # Number of virtual functions - changes with game updates

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.