Skip to content
Back to skills

215 Name Skill 42d288e8

ASecurity

Find and identify the CCSGameRules_GoToIntermission function in CS2 binary using IDA Pro MCP. Use this skill when reverse engineering CS2 server.dll or server.so to locate the GoToIntermission function by searching for the "Going to intermission..." string reference.

  • 9 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 11, 2026
datago

Works with

  • mcp

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 11, 2026

npx -y skills add tools-only/X-Skills --skill 215-name-skill_42d288e8 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 215 Name Skill 42d288e8?

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

Security grade badge for 215 Name Skill 42d288e8
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tools-only-215-name-skill-42d288e8/badge)](https://www.skillsdirectory.com/skills/tools-only-215-name-skill-42d288e8)

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

Download with Pro
SKILL.md
---
name: find-CCSGameRules_GoToIntermission
description: Find and identify the CCSGameRules_GoToIntermission function in CS2 binary using IDA Pro MCP. Use this skill when reverse engineering CS2 server.dll or server.so to locate the GoToIntermission function by searching for the "Going to intermission..." string reference.
---

# Find CCSGameRules_GoToIntermission

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

## Method

### 1. Search for Reference String

Search for the string `"Going to intermission..."`:

```
mcp__ida-pro-mcp__find_regex pattern="Going to intermission"
```

Note the string address.

### 2. Find Cross-Reference and Containing Function

Get xrefs to the string address:

```
mcp__ida-pro-mcp__xrefs_to addrs="<string_address>"
```

This will lead to `CCSGameRules_GoToIntermission`. Rename it:

```
mcp__ida-pro-mcp__rename batch={"func": [{"addr": "<function_addr>", "name": "CCSGameRules_GoToIntermission"}]}
```

### 3. Get VTable Index

**ALWAYS** Use SKILL `/get-vtable-index` to get vtable offset and index for the function `CCSGameRules_GoToIntermission`.

VTable class name: `CCSGameRules`

### 4. Generate Signature

**ALWAYS** Use SKILL `/generate-signature-for-function` to generate a robust and unique signature for `CCSGameRules_GoToIntermission`.

### 5. Write Analysis Results as YAML

**ALWAYS** Use SKILL `/write-vfunc-as-yaml` to write the analysis results for `CCSGameRules_GoToIntermission`.

Required parameters:
- `func_name`: `CCSGameRules_GoToIntermission`
- `func_addr`: The function address from step 2
- `func_sig`: The signature from step 4

VTable parameters:
- `vtable_name`: `CCSGameRules`
- `vfunc_index`: The vtable index from step 3
- `vfunc_offset`: The vtable offset from step 3

## VTable Information

- **VTable Name**: `CCSGameRules::`vftable'`
- **VTable Mangled Name (Windows)**: `??_7CCSGameRules@@6B@`
- **VTable Mangled Name (Linux)**: `_ZTV12CCSGameRules`
- **VTable Index**: 128 - This can change when game updates.
- **VTable Offset**: 0x400 (128 * 8 = 1024) - This can change when game updates.

* Note that for `server.so`, the first 16 bytes of "vftable" are for RTTI. The real vftable = `_ZTV12CCSGameRules` + `0x10`.

## Output YAML Format

The output YAML filename depends on the platform:
- `server.dll` → `CCSGameRules_GoToIntermission.windows.yaml`
- `server.so` → `CCSGameRules_GoToIntermission.linux.yaml`

```yaml
func_name: CCSGameRules_GoToIntermission
func_va: 0x18087eba0
func_rva: 0x87eba0
func_size: 0xe61
func_sig: 48 89 5C 24 ?? 55 56 57 41 54 41 55 41 56 41 57 48 8D AC 24 ?? ?? ?? ?? 48 81 EC ?? ?? ?? ?? 4C 8B E1
vtable_name: CCSGameRules
vfunc_offset: 0x400
vfunc_index: 128
```

## Notes

- This function is called when a match ends and the game transitions to intermission.
- It sends `CCSUsrMsg_EndOfMatchAllPlayersData` and `CCSUsrMsg_ServerRankRevealAll` user messages.
- It fires the `cs_intermission` game event.
- It is a large function (~0xE61 bytes).

Files in this skill

  • README.md910 B
  • skill.md2.9 KB

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.