24d: round stop — two-instance hypothesis untested (scan2.py debugger mismatch vs rendersnap documented); consumer hunt state fully recorded: static xrefs exhausted, dynamic traps blocked under wine, conv engine object identified, glue method pending decode

This commit is contained in:
2026-08-24 09:43:58 +03:00
parent 77e294d445
commit 135f0e9f21
+21
View File
@@ -2563,3 +2563,24 @@ multictx сканировал только rw-регионы с маркером
всех экземпляров по сигнатуре sens>100 БЕЗ привязки к vtable (float 48000 + всех экземпляров по сигнатуре sens>100 БЕЗ привязки к vtable (float 48000 +
sens + 0x540870-паттерн уже покрывал; расширить на поиск по содержимому sens + 0x540870-паттерн уже покрывал; расширить на поиск по содержимому
R-кривой в куче). R-кривой в куче).
### 24d (стоп раунда): двухэкземплярная гипотеза не подтверждена/не опровергнута
Сканер всех кандидатов (scan2.py в /tmp/opencode, не закоммичен из-за бага:
после починки finder'а — исключён reaper по cmdline — 25 STOP-сканов подряд
на правильном wine-хосте не находят ДАЖЕ известный ctx 0x2370040 с vtable-
маркером, хотя идентичный код rendersnap.py находит стабильно). Расхождение
не отлажено (контекст исчерпан). Состояние задачи «потребитель кернела»:
- живая обработка доказана (24c);
- HW-ловушки в wine невозможны (wine держит слоты, 24a);
- INT3 не проверялся при ГАРАНТИРОВАННО свежем рендере;
- статически: все disp32-ссылки учтены, conv-движок = объект ctx+0x540530
(методы dc30/fe00/dd30 прямые), его process-метод среди caller'ов в
52d650..532xxx — НЕ НАЙДЕН декомпом (grep 0x540530 даёт только init/dtor).
### Рекомендация следующему раунду
1. Отладить scan2.py (почему пусто: сравнить с rendersnap пошагово на одном
запуске — вероятно, порядок STOP→scan ломается на первом STOP до маппинга
DLL, а CONT после каждого скана пропускает окно создания экземпляра).
2. Либо полный декод аудио-клея: найти функцию, вызывающую vtbl слот +6
(529fe0) у СОСЕДНЕГО экземпляра, или decode 52e9b0-вызовителя (14191 в
decomp_funs2 — это 52ba20 setter); glue где-то в 52exx52fxx.
3. После опознания потребителя — ×1.805 и RT_FIRCONV.