– Достаточно, – согласился Джон. – Посмотри-ка еще раз, убедись.
Над ними развернулся рулон голограммы, разбитый на три поля – фрагмент таблицы разделов с подсвеченным адресом процедуры, ее мнемоническое название и полный текст кода. Весь он, конечно, не вместился, а потому примерно 99 % его объема превратились в пиктограмму (архаичного вида свиток с оплывшей «сургучной» печатью).
Все было правильно.
– Это он, – сказал Тима.
– Начинаем внедрение.
Где-то в реальности сетевик на некоторое время отключился, чтобы активизировать считывание данных с минидиска, которым размахивал Мартин. Это следовало сделать в промежутке между таблицей разделов и областью данных, чтобы не прерывать операцию тестирования.
И в тот момент у Тимы неожиданно вновь разболелась та же самая точка за ухом: ее пробила нервная пульсация, и показалось, что кожа в этом месте буквально вспучилась. Будь у «мухи» лапки, он точно не утерпел бы и попытался закинуть их за фасетчатый глазок, чтобы почесать фантомный нарыв, а так Тима лишь крутнулся в воздухе и сбил прицел лазера. Голограмма с кодом мигнула и пошла сетью продольных помех.
– Что случилось? – нервно каркнул Джон, прыщом возникая на спине «мухи».
– Ухо зачесалось, – проговорил Тима. А что еще он мог ответить?
Стабилизатор, правда, тут же вернул его на место и восстановил текущее состояние сканирования. Но внешнему оператору, сообщнику Уве, пришлось подправить лог-файл, чтобы не начинать профилактику с самого начала. Как догадался изобретатель, времени у них было немного.
– Область данных, – скомандовал Джон.
Тонкий луч повел муху сквозь вертикаль элементов носителя, ловко проталкивая «насекомое» через узкие служебные щели. Чтобы выдать по окончании профилактики приемлемый лог-файл, Тиме приходилось метаться от центра к самому краю, однако хитроумный Джон задал условие проверки – «каждый четный сектор», и время на считывание данных сократилось вдвое. Стереть запись об использовании нестандартного параметра, видимо, для него было делом пары секунд.
Чтобы не перегружать «мушиные» (а точнее, свои собственные) информационные каналы, Тима только в первую минуту следил за быстро сменяющимися картинками с микроэлементами корпоративных интерьеров. Порой они складывались в цельные образы зданий и отдельных помещений. Но вскоре ему это надоело, и он перестал обращать внимание на все участки голограммы (она металась за ним, как приклеенная), кроме одного – того, который отображал текущий физический адрес сканирования. Перемещение к нему заняло не меньше пяти минут.
– Куда вклеивать вирус? – сварливо спросил изобретатель.
– Двигай к оператору вызова клипа, – отозвался «напарник», и Тима пролистал свой код, добравшись до нужного «call».
– Ищи дальше, переходи к самой видеопоследовательности, – указал Джон.
– Она хранится отдельно! – удивился Тима.
– Что? Тоже мне конспираторы! – насмешливо высказался сетевик. – А не боитесь, что украдут?
– В нашем клипе нет ничего секретного. Весь смысл его применения только в том, чтобы при этом выполнялась процедура инсталляции. Смотрите, пожалуйста, удовольствия немного. У вас, кстати, есть наша консоль последней модели?
– Еще чего! Что я, крыса, на педальку давить? Ладно, потом пообщаемся, сейчас надо поспешить.
Джон вызвал физическое представление команды на носителе и вычленил из него адрес, по которому обращается оператор «call»: к счастью, он оказался недалеко. Отсчитав от начала клипа сотню кадров, он сказал:
– Втыкай ссылку на вирус.
На секунду тельце «мухи» ожгла программа идентификации. Она проверила права доступа. С ними у Тимы было все в порядке – все-таки он сам монтировал клип. Он раздвинул два соседних кадра, срезав у них по одной полосе развертки. На восприятии последовательности это никак не скажется, но появится кусочек свободного пространства, куда можно втиснуть команду безусловного перехода по другому адресу носителя. Тима воткнул оператор и ожидающе замер, передавая управление «мухой» Джону. Тот вписал на оставшееся место цепочку байтов, судя по начальным числам – откуда-то из зарезервированной области носителя.
Ведущий луч лазера подхватил «муху» – сетевик представил задержку как восстановление подозрительного участка диска – и повлек ее дальше, вниз по пирамиде. Вправо-влево, вправо-влево… Вниз, вниз…
Серым осветилась свободная зона носителя, куда еще не были записаны данные. Наступил последний этап операции по внедрению вируса, самый простой. Он даже не требовал присутствия Тимы: Джон принял управление «мухой» и посадил ее на скользкую поверхность диска. Она рванулась под лапками, увлекая оператора в бешеное вращение, но присоски держали крепко, и лишь центробежная сила упорно рвала тонкий каркас «насекомого». Из его брюшка, сквозь хоботок в задней части, на диск закапала мутноватая липкая жидкость, с шипением расползаясь в стороны и просачиваясь через монослой прозрачного пластика. Спустя минуту о диверсии говорило лишь малозаметное пятнышко бледно-желтого цвета. «Муха» наклонила к нему головку и смачным «поцелуем» пометила первичный адрес вируса (место, куда упала первая капля кода).
– Дефрагментация, – озвучил Джон завершающую команду. След, оставленный диверсантами, стал расплываться, превращаясь в тонкую, неразличимую глазом окружность: биты выстраивались в ряд для ускорения отработки.
«Муха» оторвалась от диска и нырнула в последнюю щель, направляясь на свое постоянное место обитания в зоне парковки служебных утилит. Со всех сторон в зазоры между отдельными дисками вдвинулись сонмы рабочих лазеров, восстанавливая связь носителя с Сетью. Рабочий режим деятельности корпорации не сбился ни на секунду.
11
Тима размял мышцы рук и ног, восстанавливая контроль над ними, и расслабленно откинулся на стуле. Генераторы все так же мерно гудели где-то под полом.
– Ну, дело сделано, – удовлетворенно проговорил сетевик и поднялся. – Пора домой, дружок.
– Ох, – простонал Тима. Его организм, ослабленный долгими блужданиями по подземельям, вяло сопротивлялся и не желал приходить в движение. – У вас стимуляторов нет?
– Найдутся, – усмехнулся Джон. – Расклеился?
Он достал из кармана халата початую упаковку с мелкими таблетками. Уже заглотав одну из них, изобретатель сообразил, что сейчас самое время избавиться от свидетеля (то есть него), подсунув ему яд. Он закашлялся, словно надеясь выплюнуть снадобье, но было уже поздно.
– Давай без натужного драматизма, – поморщился Джон. Неужели испуг так властно овладел Тиминой мимикой, что его опасение беспрепятственно выплеснулось на лицо? – Никто не собирается тебя травить. Мы располагаем безопасными средствами заменить тебе нужный участок памяти.
– Неужели вы это сделаете? – вяло ужаснулся Тима.
Он пошел вслед за сетевиком, все так же сопровождаемый давешними молчаливыми бионами.
– А как же! – с гадкой ухмылкой ответил Джон.
Однако Тиме было уже почти все равно: так даже проще, не придется выдумывать оправданий «своему» тупому поступку – проникновению на строящийся узел. Несмотря на прием стимулятора, сил у него прибавилось ровно столько, чтобы можно было лишь бездумно передвигать ноги. Да и куда бы он убежал, не имея карты катакомб? Сражаться же с аномально бездушными бионами вообще бессмысленно (впрочем, можно добиться того, что они потащат его на себе). Тимины вялые размышления прервал недоуменный возглас проводника.
– Бит побери! – вскричал Джон. Луч фонаря заметался по стенам и потолку, будто он заново пытался сориентироваться. – Я же проходил здесь! – Он свирепо пнул запертую дверь и бросил бионам: – Ну-ка, ребята, напрягитесь.
Те слаженно ударили в пластик плечами, заполучив при этом по толике древней пыли, ссыпавшейся им за воротники с притолоки.
– Что, ключи потерял? – оживился изобретатель.
Сетевик только с досадой отмахнулся.
– Ладно, дальше есть еще один коридор, – сказал он и вполголоса добавил: – Как я мог ошибиться?…
Через несколько десятков метров, преодолев один подъем и один поворот, группа вышла к аналогичной двери. Джон с какой-то опаской потянулся к датчику на косяке. На секунду его палец замер на полдороге, затем резко вжался в сенсор.
– Говорит дежурный капитан Департамента контроля Питер Руги, – произнес незнакомый голос. Он звучал сразу с обеих сторон коридора. – Следуйте вперед, мы вас встретим. Бионам Вакуле-5 и Антону-11 обеспечить конвоирование подозреваемого.
– Я не виноват! – затравленно крикнул Тима.
Как будто все мышцы разом отказались ему служить, и он чуть не упал от внезапной слабости.