Алан не мог поверить, что простое зацикливание привело к возникновению той самой амплитуды, тем не менее, результат он видел собственными глазами. На найденной зацикленной частоте, громкостью 5 Децибел живые организмы умирали в течение считанных секунд. Она словно была командой для мозга прекратить всякую жизненную деятельность.
Для окончания проекта оставалось провести исследования влияния звука на человека. Алан собирался попросить руководителя лаборатории Ричарда Кромвеля обеспечить его парой тюремных смертников, согласившихся на эксперименты над собой. Но сделать это нужно было только для галочки — профессор знал, что с людьми ситуация будет аналогичной.
На минуту его внимания сфокусировалось на экране телевизора. Дискавери показывал детей, играющих с детенышами животных на фоне красочного пейзажа. Глядя на эту идиллию, Бэнчара охватила тревога. Он так долго работал над своим проектом, но никогда не задумывался, как его открытия могут повлиять на мир. Ведь в плохих руках «Тихая смерть» может стать одним из самых опасных оружий за всю историю человечества. Мысли об этом не покидали Алана всю ночь, и до самого утра он проворочался, безуспешно пытаясь заснуть.
* * *
— Нихрена себе! Иди сюда — услышал Витя из-за соседнего стола.
Андрей не отрывал глаза от монитора и, когда брат подошел, ткнул пальцем в экран.
— Только что скачал это с компа одного вояки.
— Что это?
— Документы по поводу каких-то совершенно секретных разработок в области звука.
— Каких разработок?
— Ну, я еще толком не вникал, но, похоже, чуваки планируют создать новое звуковое оружие. Я выудил это из его почтового ящика, письмо было зашифровано несложным шифром. Самое интересное идет в атаче, там по твоей части.
Андрей открыл архив и запустил файл с расширением.c. Перед братьями появился исходный код на языке C. Едва глянув на него, Витя утвердительно кивнул: «Да, явно по части саунда».
Вся программа занимала от силы 80 строк, но в ней имелась куча сложных математических функций.
— Она не закончена, — вынес резюме Витя. — Нет одного фрагмента.
— Т. е. мы ее не запустим?
— Неа.
— Можешь определить, что она делает?
— Просто отдает команды звуковой плате генерировать определенные шумы. Каким-то особо извращенным способом.
— Что за шумы?
— Я почем знаю?
— Витек, это что-то важное. Иначе бы оно не шифровалось и не шло по сабжем: «Совершенно секретно».
Витя ткнул пальцем в одно место в исходнике, где была последовательность цифр и букв.
— Похоже это название программы. Только в шестнадцатиричной системе счисления.
— Можешь прочитать?
— Уже. Там написано «Тихая смерть».
Андрей присвистнул.
— Слушай, может нам удалить все это от греха подальше? Кто знает, чего там вояки изобрели.
— Да не, стой. Я хочу воспроизвести оригинал.
— В смысле?
— Можно попытаться на основе этих фрагментов воссоздать всю программу целиком.
— Как? — Андрей рассмеялся.
— Да говорю тебе, вполне. Ты же можешь расшифровать сообщение, в котором отсутствует большая часть букв?
— Ну, зависит от количества отсутствующих букв и того, какие буквы отсутствуют.
— Так и здесь. В основном фрагменте были инструкции командам, которые есть в нашем куске. Мы видим, какие команды они выполняют, и можем написать соответствующие инструкции. Все элементарно.
— Может быть, там были не только команды?
— Что там было, подскажет наш кусок. Дай-ка.
Витя отодвинул брата и устроился за его рабочим местом. Пальцы привычно забегали по кливиатуре, набивая код. Через 5 минут Витя остановился.
— Все.
— Все?
— Все.
— Ну, запускай тогда.
— Уверен?
— Давай, не томи.
Витя откомпилировал код и запустил экзешник. Из колонок послышался еле слышный шум.
— Прибавь громкости.
Витя добавил звуку, но шум все равно был тихим. Эдакий протяжный, заунывный свист, который мог хорошо подходить для озвучивания мрачного подземелья.
— Действительно похоже на смерть.
Андрею стало немного не по себе.
— Вырубай эту какофонию.
Звук затих, но ребята невольно почувствовали дискомфорт.
Андрей поежился.
— Я всегда говорил, что эти военные чокнутые.
Витя задумчиво сидел. Потом снова открыл исходник и стал внимательно его изучать.
— Что там? — поинтересовался брат.
— Знаешь, у меня такое ощущение, что я что-то упустил.
— Что именно?
— Пока не знаю. Просто чувствую. Ладно, пойду червяка своего дописывать. Завтра будем запускать.
— Окей. Я пока фильмец гляну.
* * *
From: Dean Stanley [email protected]
To: Richard Cromwell [email protected]
Мы удовлетворены предварительными результатами. Держите нас в курсе всех подробностей проекта «Тихая смерть».
Дин Стэнли /DARPA. * * *
Пока брат еще спал в обнимку в плюшевым BSD-демоном, Андрей с утра сделал пробежку, сгонял в универсам за продуктами и приготовил им обоим завтрак. Обычно они питались полуфабрикатами, предпочитая не тратить время на приготовление пищи, но в это утро на улице было так свежо и приятно, что Андрею захотелось сделать что-то особенное. Этим особенным была жареная картошка с окорочками, зеленым горошком и салат, собственноручно сварганенный из огурцов, капусты и помидоров.
— Ты не забыл, сегодня идем на сходку? — поинтересовался Андрей за завтраком.
Витя поморщился. Под сходкой подразумевалась встреча юниксоидов с одного опенсорсного портала, которая проходила каждые две недели. Первое время они вдохновляли Витю и он ходил на них с удовольствием, но перезнакомившись со всеми постоянными участниками, понял, что делать ему там особо нечего. Ему хотелось общаться с кем-то, у кого можно чему-то научиться, но на сходках он обычно учил остальных сам. Брат в этом плане был отзывчивей и с удовольствием объяснял технические премудрости новичкам. Встречи проходили практически всегда в одном месте — баре «Веселый Роджер», были шумными и веселыми, а все темы разговоров вращались вокруг компьютеров и UNIX. Братья всегда были желанными гостями на любой юниксовке.
— Никаких отмазок. Хоть проветришься.
— Андрюх, реально не охота. К тому же я хочу дописать сегодня червяка.
— Ну ничего страшного, оторвешься на пару часиков.
— Знаю я ваши «пару часиков». 3 часа бесполезного трепа, а потом 2 часа еще более бесполезной пьянки. Иди один, окей?
— Окей, — вздохнул Анрей.
* * *
Андрей вернулся в отличном настроении.
— Ну, как прошло? — не отрываясь от компа, спросил Витя.
— Класс. Жаль, тебя не было. Там новая девченка стала ходить, вообще супер. Мы с ней мило так пообщались.
Витя хмыкнул.
— Стрельнул у нее телефончик, надо будет позвонить.
— Валяй.
— Как твой червь?
— Готов. Иди зацени.
Андрей повесил куртку на вешалку и вошел в комнату. На экране без какой либо упорядоченности был набросан код, в котором даже хорошему программисту было сложно разобраться.
— В общем, пока ты там телефончики стрелял, я тут добавил пару функций. Теперь он, во-первых, кросс-платформенный и может заражать тачки с несколькими писишными осями — виндой, фряхой, линухом, соляркой, макос и другими. Во-вторых, теперь он распространяется не только в инете, но и через мобильные системы.
— Как?
— Способов несколько. Через SMS/MMS шлюзы и блютус. Также на зараженном компе постоянно сидит жучок, который отслеживает подключение к определенному порту и, если юзер надумает поменять прошивку или закачать на свой смартфон новых игрушек, вуаля. Еще через недавно найденный баг в Symbian OS. В общем, круче могут быть только горы.
Витя с гордостью посмотрел на неразборчивый исходник.
— Ты же говорил, что дальше четвертого кластера он не уйдет?
— А он и не уйдет. Это пока экспериментальная версия.
— Про безопасность не забыл?
— За идиота держишь? Все следы ведут на тайваньский вирьмейкерский сайт. Будет кому-то слава…
— И что твой червячок делает?
— Да ничего, в общем то.
— Вообще ничего?
— Ну, я пока писал алгоритмы размножения, думал все остальное на потом оставить.
— Давай что-то безобидное вставим, чтоб не получилось, как в прошлый раз. У меня где-то был гиф анимированный с Роджером. Он там клево хлебалом щелкает.
— Отлично. И в качестве фона что-то нужно… зловещее.
Они многозначительно переглянулись.
— Ее?
— Ну а что. Вполне зловеще.
Братья взялись за дело. Пока Андрей искал на компе тот самый гиф, Витя вставлял в код червя фоновый шум из военного архива. Все время, пока он возился с ним, его не оставляло ощущение, что он что-то забыл. Он знал, что код верный, просто где-то отсутствует маленькая, но важная составляющая. Витя стал просматривать код шума снова, но как он не пытался определить, в чем дело, решения не находил.