# Concepts

Nouns map atomically to file sets (EXTRACTED); verbs aggregate structural edges (INFERRED).

- `bof` | files=28 | mentions=93 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof.c`, `bof/cat/bof.c`, `bof/cat/cat.c`, `bof/include/beacon_api.h`, `bof/include/syscalls.h`
- `beacon` | files=26 | mentions=169 | `beacon.h`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/beacon.c`, `beacons/v1/gopher_beacon.c`, `beacons/v2/beacon.c`, `beacons/v3/beacon.c`, `bof/cat/cat.c`
- `output` | files=22 | mentions=154 | `beacon.h`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof/cat/cat.c`, `bof/include/beacon_api.h`, `bof/is_sudo/is_sudo.c`, `bof/suid_enum/bof.c`
- `aes` | files=18 | mentions=91 | `aes.c`, `aes.h`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `c2/server.py`, `gopher_beacon.c`, `include/aes.c`
- `decrypt` | files=18 | mentions=29 | `aes.c`, `aes.h`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `c2/server.py`, `gopher_beacon.c`, `gopher_c2.py`
- `include` | files=18 | mentions=29 | `bof/include/beacon_api.h`, `bof/include/syscalls.h`, `bof/suid_enum/bof.c`, `include/aes.c`, `include/aes.h`, `include/aes_cfb.c`, `include/aes_cfb.h`, `include/beacon.h`, `include/beacon_common.c`, `include/beacon_common.h`
- `size` | files=17 | mentions=81 | `aes.h`, `beacon5.c`, `beacons/v2/beacon.c`, `bof/cat/cat.c`, `bof/include/syscalls.h`, `bof/is_sudo/is_sudo.c`, `bof/suid_enum/bof.c`, `bof/userenum/userenum.c`, `bof/whoami/whoami.c`, `cJSON.c`
- `get` | files=17 | mentions=64 | `aes.c`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof/is_sudo/is_sudo.c`, `c2/server.py`, `cJSON.c`, `gopher_beacon.c`
- `encrypt` | files=17 | mentions=23 | `aes.c`, `aes.h`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `c2/server.py`, `gopher_beacon.c`, `gopher_c2.py`
- `printf` | files=16 | mentions=23 | `beacon.h`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof/cat/cat.c`, `bof/is_sudo/is_sudo.c`, `bof/userenum/userenum.c`, `bof/whoami/whoami.c`
- `callback` | files=15 | mentions=28 | `beacon.h`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof/cat/cat.c`, `bof/include/beacon_api.h`, `bof/is_sudo/is_sudo.c`, `bof/userenum/userenum.c`
- `run` | files=14 | mentions=31 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`, `install.sh`, `tests/test_beacon_build.py`
- `api` | files=14 | mentions=24 | `beacon.h`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof/include/beacon_api.h`, `bof/suid_enum/bof.c`, `gopher_beacon.c`, `include/beacon.h`
- `null` | files=13 | mentions=66 | `bof/cat/cat.c`, `bof/is_sudo/is_sudo.c`, `bof/userenum/userenum.c`, `bof/whoami/whoami.c`, `cJSON.c`, `cJSON.h`, `include/beacon_common.c`, `include/beacon_common.h`, `include/cJSON.c`, `include/cJSON.h`
- `read` | files=13 | mentions=26 | `bof/cat/cat.c`, `bof/include/beacon_api.h`, `bof/include/syscalls.h`, `bof/is_sudo/is_sudo.c`, `bof/userenum/userenum.c`, `bof/whoami/whoami.c`, `c2/server.py`, `cJSON.c`, `include/beacon_common.c`, `include/cJSON.c`
- `source` | files=13 | mentions=14 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/beacon.c`, `beacons/v1/gopher_beacon.c`, `beacons/v2/beacon.c`, `beacons/v3/beacon.c`, `gopher_beacon.c`, `include/beacon_common.c`
- `int` | files=12 | mentions=43 | `beacon.h`, `beacon6.c`, `beacon_p2p.c`, `bof/include/beacon_api.h`, `bof/include/syscalls.h`, `cJSON.h`, `include/beacon.h`, `include/beacon_common.c`, `include/beacon_common.h`, `include/cJSON.h`
- `cfb` | files=12 | mentions=35 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `c2/server.py`, `gopher_beacon.c`, `include/aes_cfb.c`, `include/aes_cfb.h`, `include/beacon_common.c`
- `not` | files=12 | mentions=22 | `aes.c`, `bof/include/syscalls.h`, `c2/server.py`, `cJSON.c`, `include/aes.c`, `include/cJSON.c`, `tests/test_beacon_build.py`, `tests/test_bof_compile.py`, `tests/test_c2_http_e2e.py`, `tests/test_c2_server.py`
- `client` | files=12 | mentions=17 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `c2/server.py`, `gopher_beacon.c`, `gopher_c2.py`, `include/beacon_common.c`, `include/beacon_common.h`
- `write` | files=12 | mentions=17 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof/include/syscalls.h`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`, `include/config.c`
- `return` | files=11 | mentions=119 | `beacon6.c`, `bof/include/syscalls.h`, `c2/server.py`, `cJSON.c`, `include/beacon_common.c`, `include/cJSON.c`, `include/config.c`, `tests/test_beacon_build.py`, `tests/test_c2_http_e2e.py`, `tests/test_config.py`
- `request` | files=11 | mentions=41 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `c2/server.py`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`, `tests/test_c2_http_e2e.py`
- `struct` | files=11 | mentions=25 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof/suid_enum/bof.c`, `cJSON.c`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`
- `aes256` | files=11 | mentions=20 | `aes.h`, `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `gopher_beacon.c`, `include/aes.h`, `include/aes_cfb.c`, `include/aes_cfb.h`
- `next` | files=11 | mentions=16 | `aes.c`, `cJSON.c`, `cJSON.h`, `include/aes.c`, `include/beacon_common.c`, `include/beacon_common.h`, `include/cJSON.c`, `include/cJSON.h`, `include/config.c`, `tests/test_config.py`
- `gnu` | files=11 | mentions=11 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/beacon.c`, `beacons/v1/gopher_beacon.c`, `beacons/v2/beacon.c`, `beacons/v3/beacon.c`, `gopher_beacon.c`, `include/beacon_common.c`
- `buffer` | files=10 | mentions=207 | `aes.c`, `aes.h`, `bof/include/beacon_api.h`, `cJSON.c`, `include/aes.c`, `include/aes.h`, `include/beacon_common.c`, `include/beacon_common.h`, `include/cJSON.c`, `include/config.c`
- `bsb` | files=10 | mentions=77 | `bof/include/beacon_api.h`, `bof/include/syscalls.h`, `c2/server.py`, `include/aes_cfb.h`, `include/beacon_common.c`, `include/beacon_common.h`, `include/config.c`, `include/config.h`, `include/config_py.py`, `tests/test_config.py`
- `config` | files=10 | mentions=67 | `c2/server.py`, `include/beacon_common.c`, `include/beacon_common.h`, `include/config.c`, `include/config.h`, `include/config_py.py`, `tests/config_harness.c`, `tests/test_beacon_build.py`, `tests/test_config.py`, `tests/test_install_deploy.py`
- `base64` | files=10 | mentions=34 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `c2/server.py`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`, `tests/test_c2_http_e2e.py`
- `value` | files=10 | mentions=29 | `aes.c`, `bof/suid_enum/bof.c`, `cJSON.c`, `cJSON.h`, `include/aes.c`, `include/cJSON.c`, `include/cJSON.h`, `include/config.c`, `include/config_py.py`, `tests/test_config.py`
- `error` | files=10 | mentions=26 | `beacon.h`, `bof/include/beacon_api.h`, `cJSON.c`, `include/beacon.h`, `include/beacon_common.h`, `include/cJSON.c`, `include/config.c`, `include/config.h`, `include/config_py.py`, `tests/test_c2_http_e2e.py`
- `create` | files=10 | mentions=18 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `cJSON.c`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`, `include/cJSON.c`
- `user` | files=10 | mentions=14 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof/is_sudo/bof.c`, `bof/userenum/bof.c`, `gopher_beacon.c`, `include/beacon_common.h`, `include/config.h`
- `elf` | files=10 | mentions=13 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`, `tests/test_beacon_build.py`, `tests/test_bof_compile.py`
- `json` | files=9 | mentions=179 | `c2/server.py`, `cJSON.c`, `cJSON.h`, `include/cJSON.c`, `include/cJSON.h`, `include/config.c`, `include/config_py.py`, `tests/test_config.py`, `tests/test_install_deploy.py`
- `const` | files=9 | mentions=112 | `bof/include/syscalls.h`, `cJSON.c`, `cJSON.h`, `include/beacon_common.c`, `include/beacon_common.h`, `include/cJSON.c`, `include/cJSON.h`, `include/config.c`, `include/config.h`
- `parse` | files=9 | mentions=53 | `beacon.h`, `beacon_p2p.c`, `bof/include/beacon_api.h`, `cJSON.c`, `include/beacon.h`, `include/cJSON.c`, `include/config.c`, `tests/test_c2_http_e2e.py`, `tests/test_config.py`
- `key` | files=9 | mentions=24 | `aes.c`, `aes.h`, `include/aes.c`, `include/aes.h`, `include/config.c`, `include/config.h`, `tests/test_c2_http_e2e.py`, `tests/test_config.py`, `tests/test_crypto.py`
- `memory` | files=9 | mentions=20 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof/include/syscalls.h`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`
- `encode` | files=9 | mentions=18 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`, `tests/test_c2_http_e2e.py`
- `attribute` | files=9 | mentions=15 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `bof.c`, `gopher_beacon.c`, `include/aes.c`, `include/beacon_common.c`
- `decode` | files=9 | mentions=15 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`, `include/config.c`
- `command` | files=9 | mentions=14 | `beacon_p2p.c`, `beacons/v1/beacon.c`, `beacons/v2/beacon.c`, `beacons/v3/beacon.c`, `c2/server.py`, `gopher_c2.py`, `include/beacon_common.c`, `tests/test_c2_http_e2e.py`, `tests/test_c2_server.py`
- `must` | files=9 | mentions=13 | `c2/server.py`, `include/beacon_common.h`, `include/config.c`, `tests/test_bof_compile.py`, `tests/test_c2_http_e2e.py`, `tests/test_c2_server.py`, `tests/test_config.py`, `tests/test_crypto.py`, `tests/test_install_deploy.py`
- `char` | files=8 | mentions=82 | `bof/include/syscalls.h`, `bof/suid_enum/bof.c`, `cJSON.c`, `include/beacon_common.c`, `include/beacon_common.h`, `include/cJSON.c`, `include/config.c`, `include/config.h`
- `trampoline` | files=8 | mentions=55 | `beacon3.c`, `beacon5.c`, `beacon6.c`, `beacon_p2p.c`, `beacons/v1/gopher_beacon.c`, `gopher_beacon.c`, `include/beacon_common.c`, `include/beacon_common.h`
- `data` | files=8 | mentions=49 | `beacon.h`, `beacon_p2p.c`, `bof/include/beacon_api.h`, `c2/server.py`, `gopher_c2.py`, `include/beacon.h`, `include/beacon_common.c`, `include/beacon_common.h`
- `ptr` | files=8 | mentions=45 | `beacon.h`, `beacon_p2p.c`, `bof/include/beacon_api.h`, `cJSON.c`, `include/beacon.h`, `include/beacon_common.c`, `include/beacon_common.h`, `include/cJSON.c`

## Verb Edges

- `bof` --depends_on--> `int` (strength 1.00)
- `beacon` --depends_on--> `int` (strength 0.72)
- `output` --depends_on--> `int` (strength 0.68)
- `source` --depends_on--> `int` (strength 0.68)
- `struct` --depends_on--> `int` (strength 0.68)
- `beacon` --consumes--> `int` (strength 0.64)
- `bof` --depends_on--> `include` (strength 0.64)
- `gnu` --consumes--> `int` (strength 0.64)
- `gnu` --depends_on--> `int` (strength 0.64)
- `source` --consumes--> `int` (strength 0.64)
- `api` --depends_on--> `int` (strength 0.60)
- `bof` --depends_on--> `bsb` (strength 0.60)
- `bof` --depends_on--> `error` (strength 0.60)
- `create` --consumes--> `int` (strength 0.60)
- `create` --depends_on--> `int` (strength 0.60)
- `get` --consumes--> `int` (strength 0.60)
- `get` --depends_on--> `int` (strength 0.60)
- `output` --consumes--> `int` (strength 0.60)
- `struct` --consumes--> `int` (strength 0.60)
- `user` --depends_on--> `int` (strength 0.60)
- `attribute` --consumes--> `int` (strength 0.56)
- `bof` --depends_on--> `beacon` (strength 0.56)
- `bof` --depends_on--> `const` (strength 0.56)
- `bof` --consumes--> `int` (strength 0.56)
- `bof` --depends_on--> `size` (strength 0.56)
- `decode` --depends_on--> `int` (strength 0.56)
- `write` --depends_on--> `int` (strength 0.56)
- `aes` --consumes--> `int` (strength 0.52)
- `aes` --depends_on--> `int` (strength 0.52)
- `api` --consumes--> `int` (strength 0.52)
- `attribute` --depends_on--> `int` (strength 0.52)
- `base64` --consumes--> `int` (strength 0.52)
- `base64` --depends_on--> `int` (strength 0.52)
- `bof` --depends_on--> `data` (strength 0.52)
- `callback` --consumes--> `int` (strength 0.52)
- `cfb` --consumes--> `int` (strength 0.52)
- `cfb` --depends_on--> `int` (strength 0.52)
- `client` --consumes--> `int` (strength 0.52)
- `client` --depends_on--> `int` (strength 0.52)
- `decode` --consumes--> `int` (strength 0.52)
- `elf` --consumes--> `int` (strength 0.52)
- `elf` --depends_on--> `int` (strength 0.52)
- `encode` --consumes--> `int` (strength 0.52)
- `encode` --depends_on--> `int` (strength 0.52)
- `memory` --consumes--> `int` (strength 0.52)
- `memory` --depends_on--> `int` (strength 0.52)
- `printf` --consumes--> `int` (strength 0.52)
- `printf` --depends_on--> `int` (strength 0.52)
- `request` --consumes--> `int` (strength 0.52)
- `request` --depends_on--> `int` (strength 0.52)

## Dialectic

- Thesis: `aes` centralizes 18 files; Antithesis: `aes256` pulls 11 files with 11 shared (Jaccard 0.61); Synthesis: should they merge, split by layer, or keep `consumes` explicit?
- Thesis: `aes` centralizes 18 files; Antithesis: `api` pulls 14 files with 8 shared (Jaccard 0.33); Synthesis: should they merge, split by layer, or keep `bridges` explicit?
- Thesis: `aes` centralizes 18 files; Antithesis: `attribute` pulls 9 files with 8 shared (Jaccard 0.42); Synthesis: should they merge, split by layer, or keep `bridges` explicit?
- Thesis: `aes` centralizes 18 files; Antithesis: `base64` pulls 10 files with 10 shared (Jaccard 0.56); Synthesis: should they merge, split by layer, or keep `bridges` explicit?
- Thesis: `aes` centralizes 18 files; Antithesis: `cfb` pulls 12 files with 12 shared (Jaccard 0.67); Synthesis: should they merge, split by layer, or keep `bridges` explicit?
- Thesis: `aes` centralizes 18 files; Antithesis: `client` pulls 12 files with 11 shared (Jaccard 0.58); Synthesis: should they merge, split by layer, or keep `bridges` explicit?
- Thesis: `aes` centralizes 18 files; Antithesis: `create` pulls 10 files with 8 shared (Jaccard 0.40); Synthesis: should they merge, split by layer, or keep `bridges` explicit?
- Thesis: `aes` centralizes 18 files; Antithesis: `decode` pulls 9 files with 8 shared (Jaccard 0.42); Synthesis: should they merge, split by layer, or keep `bridges` explicit?
- Thesis: `aes` centralizes 18 files; Antithesis: `decrypt` pulls 18 files with 16 shared (Jaccard 0.80); Synthesis: should they merge, split by layer, or keep `consumes` explicit?
- Thesis: `aes` centralizes 18 files; Antithesis: `elf` pulls 10 files with 8 shared (Jaccard 0.40); Synthesis: should they merge, split by layer, or keep `bridges` explicit?
