Reverse-engineer Windows PE executables to understand business logic, membership/pricing systems, API endpoints, and service architecture. Covers Flutter/Dart AOT apps, .NET apps, and native PE binari
Scanned 10/6/2026
npx -y skills add Kairos-ai-agent/kairos-code --skill windows-binary-analysis --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Windows Binary Analysis?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/kairos-ai-agent-windows-binary-analysis)More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.
---
name: "windows-binary-analysis"
description: "Reverse-engineer Windows PE executables to understand business logic, membership/pricing systems, API endpoints, and service architecture. Covers Flutter/Dart AOT apps, .NET apps, and native PE binari"
priority: 0.5
imported-from: "hermes"
source-path: "hermes/skills/.archive/windows-binary-analysis/SKILL.md"
---
# Windows Binary Analysis
Use when analyzing a compiled Windows executable (.exe) without source code — understanding pricing models, API endpoints, membership validation, encryption, or service architecture.
## Step 1: Identify the Executable
```bash
file "/path/to/target.exe"
```
Look for:
- **PE32/PE32+**: Standard Windows executable
- **Flutter/Dart**: Look for `flutter_windows.dll` in the same directory → logic is in `data/app.so` (Dart AOT)
- **.NET**: Presence of mscoree.dll references or .NET assemblies
- **Native C++**: Standard PE with no managed runtime dependencies
## Step 2: Survey the Directory
```bash
ls -la "/path/to/install/dir/"
```
Key files to spot:
- `*.xml`, `*.json`, `*.config` — config files (read first)
- `flutter_windows.dll` — confirms Flutter/Dart app
- `data/app.so` — Dart AOT compiled binary (8-15MB)
- `*.dll` list — helps identify framework (Newtonsoft.Json = .NET, etc.)
Check `data/flutter_assets/` for asset files:
- `assets/initial_config.json` — often contains API domain lists
- `AssetManifest.json` — asset listing
## Step 3: Extract Strings from Binary
For Flutter/Dart apps, the business logic is in `data/app.so`:
```python
with open('app.so', 'rb') as f:
data = f.read()
strings = []
current = []
for b in data:
if 32 <= b < 127:
current.append(chr(b))
else:
if len(current) >= 4:
strings.append(''.join(current))
current = []
if len(current) >= 4:
strings.append(''.join(current))
```
For native PE, use `strings` command.
## Step 4: Keyword-Filtered Analysis
Search for API endpoints, pricing, membership, limits:
```python
keywords = ['premium', 'license', 'vip', 'free', 'trial', 'subscription',
'price', 'plan', 'limit', 'bandwidth', 'api/', 'https://', 'http://',
'coupon', 'redeem', 'checkout', 'payment', 'stripe',
'month', 'year', 'expire', 'login', 'token', 'auth']
```
Also search for Dart package paths to reveal app structure.
## Step 5: API Endpoint Discovery
From extracted strings, build API map:
- Auth endpoints (`/login`, `/auth`, `/register`)
- Coupon/payment endpoints (`/coupon/check`, `/coupon/redeem`, `/checkout`)
- Config endpoints (`/api2/px/wu/...`)
- CDN mirrors for config distribution
- Server architecture (uibase, mainbase, tierbase separation)
## Step 6: Membership/Pricing Model
Look for these signals to reconstruct the tier system:
| Signal | Meaning |
|--------|---------|
| `Free Servers` / `Premium Servers` | Tier separation |
| `YOU HAVE REACHED YOUR DAILY TRAFFIC LIMIT` | Free tier cap |
| `user_premium` flag | Boolean premium status |
| `expires`, `expiration`, `expireat` | Expiry tracking |
| `Coupon Redeemed Successfully` | Coupon system |
| `days of premium access` | Duration-based pricing |
| `ProductModel` with fields | Product/pricing model |
## Step 7: Server-Side Validation Check
Determine if premium is client-side or server-side:
- Look for `isAuthenticated`, `refresh_token_required`, `token`
- Check if VPN tunnel auth requires server validation
- Look for encryption libraries (`pointycastle` = AES in Dart)
- Probe API endpoints (be aware of Cloudflare Anti-Bot)
## Pitfalls
- **Cloudflare Anti-Bot**: Many VPN apps protect APIs with fingerprint.js
- **No hardcoded prices**: Pricing fetched from server at runtime
- **Flutter AOT is compiled**: String extraction is the main technique
- **Rate limiting**: Look for `bs_consequtive_fails` counters
- **CAPTCHA**: Coupon flows usually have captcha protection
- **GFW**: Many foreign domains blocked from China — use alternate domains from config
## Verification Checklist
- [ ] Executable type identified (native/.NET/Flutter)
- [ ] Config files read
- [ ] Strings extracted and keyword-filtered
- [ ] API endpoints mapped
- [ ] Membership tier structure understood
- [ ] Server-side vs client-side validation determined
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!