Результаты поиска по запросу «

история двух студентов

»

Запрос:
Создатель поста:
Теги (через запятую):



Hanako Ikezawa Katawa Shoujo Foreign VN Lilly Satou Hisao Nakai и другие действующие лица Yuri(Ero VN) Ero VN фанфик(vn) ...Визуальные новеллы фэндомы 

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

2.
Ханако входит внутрь небольшой квартирки.
- Рико, ты дома?
Тишина. Облегчённо вздыхает, разувается, заносит пакет с покупками на кухню. И не переодеваясь, только помыв руки, начинает суетиться с едой. Аккуратно достаёт упаковку с суши и ставит её в холодильник. Моет фрукты (пара яблок, большая груша, авокадо, киви, апельсин), раскладывает их на полотенце, чтобы они немного обсохли. И затем, что надо почистив от кожуры, нарезает в салатник. Немного подумав, достаёт банку консервированных кусочков ананасов и добавляет их. Ставит на маленький стол поднос, а на него пару тарелок, хаси, чашечку с соевым соусом. И слышит, как щёлкнул замок в двери. На ходу вытирая руки полотенцем, спешит в прихожую.
- Ханако!
В квартиру входит девушка, бросает дорожную сумку на пол и, переступив через неё, не разуваясь, бросается к Ханако, обнимает.
- Здравствуй, Рико.
- Как я соскучилась по своей малышке, - целует Ханако в губы, руки скользят по спине вниз, - последнюю неделю уже часы считать стала.
- Я тоже соскучилась.
Рико вновь принимается целовать Ханако, торопливо, жадно, страстно. Покусывает губы, запускает разведчиком язычок, проводя им по зубам, заставляет их разжать, маленькой любопытной змейкой проникает дальше. А руки тем временем исследуют тело Ханако, Рико заводит ладони под её пиджак, расстёгивает пару пуговиц на блузке. Дальше. Дальше. Дыхание Ханако становится тяжёлым, она обмякает.
- Салат фруктовый делала? - Рико прерывается, убирает ладони с груди Ханако и, обняв за талию, прижимает к себе.
- Да, - прерывисто отвечает Ханако, - а как ты угадала?
- У тебя на губах вкус ананаса, - смеётся Рико и проводит язычком по губам Ханако, как будто показывая где именно.
- А больше ты их никуда не добавляешь, положила ложкой, а потом её облизала, так ведь, поварёнок?
- Да, - Ханако обнимает Рико, прижимается головой к её груди, - а ещё, я суши купила, твои любимые.
- Кацуо?
- Да, - тихий шёпот в ответ.
- Умница, - Рико целует макушку Ханако, - а теперь в душ, надеюсь, ты мне составишь компанию?
- Как хочешь.
- Очень, всю дорогу об этом мечтала, - шепчет, прижимаясь ртом к уху Ханако.

- Как же хорошо дома, - мечтательно говорит Рико, откидываясь на спинку низкого дивана.
- Ты бы видела то общежитие, куда нас поселили. Ужас. Душ общий, туалет тоже. Душно. А что-нибудь лёгкое не надеть, - показывает на свои микро-шортики, - видите ли, правила проживания у нас такие. Еда в столовой гадкая. Скукотища.
Зевает, сыто потягивается и, как кошка на охоте, всё не сводит глаз с суетящейся Ханако, которая убирает посуду со стола. Дожидается пока она не подойдёт поближе и хватает её за талию, тянет к себе. Ханако испуганно вскрикивает, а Рико довольно смеётся.
- Брось ты эту посуду, потом уберём. Завтра.
Заставляет сесть рядом с собой, обнимает левой рукой, - очень тебя не хватало этот месяц, даже пару раз глупостями пришлось заняться, тебя вспомнив, - а правой ловит её ладонь, притягивает к себе и целует.
- Ты же теперь у меня одна осталась.
- Поч-чему одна? – испуганно спрашивает Ханако.
- Отец сказал, чтобы я даже на пороге не показывалась.
- И что ты будешь делать? – в глазах Ханако слёзы.
- Жить, - Рико поворачивается, перекидывает ноги и садится лицом к лицу с Ханако, тянет вверх за подол и снимает её маечку.
- Любить, - ладонями, как чашечками, нежно накрывает груди, поцелуями убирает слёзы с её щёк.

3.
- Лилли? Здравствуй, Лилли.
- Здравствуй, Ханако. Рада тебя слышать. Как ты поживаешь?
- Я... Ох, Лилли...
- Ханако, что с тобой, ты плачешь?
- Я так запуталась...
- Что случилось? Не молчи, Ханако.
- Прости меня, Лилли.
- Да за что? Говори же.
- Лилли, м-можно я к вам в субботу приеду?
- Конечно, приезжай. Тебя встретить?
- Нет. Я помню дорогу.
Обеспокоенная Лилли убирает телефон в карман, ладонью ищет руку Хисао, находит и берёт его под локоть.
- Ты слышал?
- Да. Думаешь, что-то серьёзное?
- Наверняка. Помнишь, она же говорила когда уезжала, что будет со всеми проблемами стараться разобраться сама. Лучше будет встретить её, скорее всего 10-часовым экспрессом приедет.

- Лилли, это мы! – Хисао открывает и неуклюже проходит в дверь. Ещё бы, в левой руке сумка, в правую вцепилась Ханако и отпускает его, только увидев выходящую к ним Лилли. Бросается к ней на встречу, обнимает и, уткнувшись в плечо, разрыдалась.
- И вот так всю дорогу, - говорит Хисао, аккуратно придерживая, подводит к широкому креслу девушек. Помогает им сесть и уходит на кухню, откуда вскоре доносится мелодичное звяканье стекла, шум наливаемой воды.
- Лилли, я принёс воду и салфетки, поставлю на столик. И мне, наверно, лучше погулять час-полтора?
- Спасибо, - благодарно кивает, - да, пожалуйста, нам лучше будет поговорить наедине. Так ведь, Ханако?
- Д-да, прости, Хисао.
- Ничего, - улыбается он и выходит.
И возвращается домой только поздним вечером после звонка Лилли. Тихо проходит в комнату и застаёт её дремлющей в кресле. Аккуратно трогает за плечо, негромко окликает.
- Лилли.
- Хисао, это ты? – спросонья не сразу понимает, кто её разбудил.
- Да, я. А где Ханако?
- Я ей дала успокоительного, она сейчас спит в нашей спальне.
Лилли встаёт, нащупывает плечо Хисао, и они вместе идут к дивану, садятся. Хисао обнимает её.
- Так что с ней произошло? Я такой её со времени «Ямаку» не видел.
Лилли вздыхает.
- С одной стороны вроде и вполне житейская ситуация, но ведь это Ханако. Ты же знаешь, как она всё воспринимает, переживает из-за любой мелочи. А тут любовь.
- Наша Ханако влюбилась? – удивляется Хисао.
- Сейчас расскажу, только не перебивай, пожалуйста, вопросами. Это всё, что удалось у неё выпытать. Она уже почти год живёт с Рико.
- Соседка по общежитию?
- Я же просила. Хотя задала ей ровно такой же вопрос. И знаешь, что она мне ответила? «Живём, как вы с Хисао».
- То есть... – удивлённо начинает было говорить Хисао.
- Да. Они учатся на одном факультете, только Рико старше её на курс. Жили в соседних комнатах, однажды Ханако сильно простыла, Рико стала ей помогать. И вот, в результате, они уже полгода вместе снимают маленькую квартирку.
- Подожди, в голове не укладывается. Ханако и вдруг... А что за человек, эта Рико?
- Единственный ребёнок в семье. Отец очень консервативный человек, узнав про её предпочтения, выгнал из дома и...
- Меня характер интересует.
- Она добрая, заботливая и красивая. Вот в такой последовательности.
- А переживает-то из-за чего? – недоумевает Хисао.
- А переживает теперь из-за возникших чувств к Тэцуо.
- Кто это?
- Студент-медик, Ханако познакомилась с ним в больнице, где работает волонтёром.
- Волонтёром в больнице?
- Да. Ханако умеет удивить. Занимается там с детьми в ожоговом.
- В общем, познакомилась, несколько раз сходили в кафе. Поняла, что любит и написала ему письмо с признанием.
- О чём-то похожем я уже слышал. И каков результат? – скривился Хисао.
- Хисао... – возмущается Лилли, потом молчит несколько секунд, вздыхает, - а в результате сегодня Ханако мне ещё кое-как удалось успокоить, а что потом будет, не знаю. Тэцуо нашёл её в университете и сказал, что она ему тоже нравится. И теперь Ханако не знает что делать, потому что уверена, что выбрав кого-то одного, предаёт другого.
- А чувства, что к одной, что ко второму?..
- Говорит, что одинаковые.
- И что ты ей посоветовала?
- Ничего. Ничего не смогла. Попыталась банально объяснить, что человек всю жизнь постоянно выбирает между чем-то или кем-то, но, похоже, безрезультатно, - вздох разочарования.

Посреди толчеи на перроне вокзала стоит Лилли, обнимая Ханако, рядом придерживает сумку Хисао.
- Ханако, может, ещё у нас останешься?
- Нет. Завтра занятия в университете. В больницу уже несколько дней не ходила. Рико нужно помочь.
- Так что же ты будешь делать?
- Жить. Предавать.
Развернуть

Вечерний костёр(БЛ) Бесконечное лето Ru VN ...Визуальные новеллы фэндомы 

Вечерний костёр(БЛ),Бесконечное лето,Ru VN,Русскоязычные визуальные новеллы,Отечественные визуальные новеллы,Визуальные новеллы,фэндомы
Развернуть

Вечерний костёр(БЛ) Бесконечное лето Ru VN ...Визуальные новеллы фэндомы 

Вечерний костёр(БЛ),Бесконечное лето,Ru VN,Русскоязычные визуальные новеллы,Отечественные визуальные новеллы,Визуальные новеллы,фэндомы
Развернуть

Вечерний костёр(БЛ) Бесконечное лето Ru VN ...Визуальные новеллы фэндомы 

Трофейная дедушкина зажигалка.

Вечерний костёр(БЛ),Бесконечное лето,Ru VN,Русскоязычные визуальные новеллы,Отечественные визуальные новеллы,Визуальные новеллы,фэндомы
Развернуть

Вечерний костёр(БЛ) Бесконечное лето Ru VN ...Визуальные новеллы фэндомы 

сегодня нужно ядиться в то, меня пугает.,Вечерний костёр(БЛ),Бесконечное лето,Ru VN,Русскоязычные визуальные новеллы,Отечественные визуальные новеллы,Визуальные новеллы,фэндомы
Развернуть

Ульяна(БЛ) Бесконечное лето Ru VN Art VN 13 попыток нарисовать прямую artist кроссовер Don't Starve Игры ...Визуальные новеллы фэндомы 

Ульяна(БЛ),Самая весёлая и непоседливая девочка лета!,Бесконечное лето,Ru VN,Русскоязычные визуальные новеллы,Отечественные визуальные новеллы,Визуальные новеллы,фэндомы,Art VN,vn art,13 попыток нарисовать прямую,artist,кроссовер,Don't Starve,Игры
Развернуть

Вечерний костёр(БЛ) Бесконечное лето Ru VN ...Визуальные новеллы фэндомы 

Вечерний костёр(БЛ),Бесконечное лето,Ru VN,Русскоязычные визуальные новеллы,Отечественные визуальные новеллы,Визуальные новеллы,фэндомы
Развернуть

Ульяна(БЛ) Бесконечное лето Ru VN Art VN Скетч VN sonataofselitra ...Визуальные новеллы фэндомы 

Ульяна(БЛ),Самая весёлая и непоседливая девочка лета!,Бесконечное лето,Ru VN,Русскоязычные визуальные новеллы,Отечественные визуальные новеллы,Визуальные новеллы,фэндомы,Art VN,vn art,Скетч VN,13 попыток нарисовать прямую,Полина Белка,sonataofselitra
Развернуть

Вечерний костёр(БЛ) Бесконечное лето Ru VN ...Визуальные новеллы фэндомы 

Вечерний костёр(БЛ),Бесконечное лето,Ru VN,Русскоязычные визуальные новеллы,Отечественные визуальные новеллы,Визуальные новеллы,фэндомы
Развернуть

Cheat engine hook hcode ...Визуальные новеллы фэндомы 

Делаем собственный hcode к новелле.

Собственно почему бы и нет. В русскоязычном сегменте гайдов никаких нет, в англоязычном все довольно-таки старенькие. Поэтому запилю свой гайд как делать хук код к новелле которую вы собирались почитать, а текст нихуя не вытаскивается.

Во первых нам нужен инструментарий.

1. Cheat Engine как дебагер, удобный, мало весит, имеет вполне себе юзерфрендли интерфейс. Скачать можно всегда с офф сайта https://www.cheatengine.org/

2. Textractor — собственно достойная замена ITH и ITHVNR, хотя если точнее продолжение. Скачать можно на странице релизов с гитхаба https://github.com/Artikash/Textractor/releases

3. Наша подопытная новелла. Я взял тупа первую новеллу к которой просили хук на хонге. Скачать эту новеллу можно отсюда https://sukebei.nyaa.si/view/2640189

A pluet Junior Member Join Date: May 2006 Posts: 28 01-24-2019, 12:32 PM Requesting H-Code'sfor: №£&} >H * A,£ J'Afk-b « A,~3 L â [H-Game] http://www.getchu.com/soft.phtml?id=1029425 O Last edited by pluet; 01 -24-2019, 12:43 PM. #8232,Визуальные новеллы,фэндомы,Cheat engine,hook,hcode


Собственно поехали.

Я скачал данную новеллу и открыл текстрактор. Жмакаем аттач то гейм и выбираем процесс с нашей игрой. Автоматом подхватились нужные треды с обрывками текста.

TP- Textractor □ X ¡brc r Mi ite: ost: [Sffi] ш? ▼ 101Ç,Визуальные новеллы,фэндомы,Cheat engine,hook,hcode


В данном случае это GetGlyphOutlineA, как видно текст дают нам не полностью а только его часть. Данный косяк мы и будем исправлять.

Прежде всего следует поискать существует ли в памяти нужная строка в неизменном виде.

Жмакаем кнопку add hook и в открывшимся окне вводим S[впечатываем сюда нужную строку]

T- Add hook X Search for text S[codepage#]text OR Enter read code R{S | Q | V>[codepage#][*deref_offset]@addr OR Enter hook code H{A | B | W | S | Q | V}[N][codepage~ ]data_offset[*deref_offsetl][: split_offset[*deref_offset2]]@addr[: module[ :func]] All numbers except codepage in


Жмем ок и чуточку ждем. В консоли должны появится записи, что добавились новые юзерхуки, проверяем их.

Жмакаем на окно нашей новеллы и прогоняем несколько строк, смотрим добавились ли они в окно с нашим юзерхуком. В данном случае вторая строка добавилась, но на третьей споткнулась, похоже, что меняется адрес куда записывается новая строка и этот вариант нам не подходит.

TP- Textractor □ X,Визуальные новеллы,фэндомы,Cheat engine,hook,hcode


Переходим к самому интересному и веселому открываем cheat engine.

Подрубаемся деббагером к нашей новелле. Выбираем процесс и жмакаем Attach debugger to process.

^ Process List X File Applications Processes Windows 00003590-Microsoft Store л 00003590-Входящие — Yandex ?- Почта 0000239С-Параметры 00002288-Почта ф 00002D90-qBittorrent v4.1.5 ^ 00002214-[M-KV2501] Wakfu 1x02 [BDRip] [108 gj 00002594-XP-PenWin(20190304J.zip (пробная » ООООЗВАС-Кино и ТВ


После того как подключились к процессу необходимо перейти на нужный адресс в окне memory view. 

В красной рамке собственно располагается окно с ассемблерными инструкциями. Жмем по нему правой кнопкой мышки и нажимаем Go to address.

Cheat Engine 6.8.3 File Edit Table D3D Help 000042D8- ??????????????- ???????' Found: 0 :46F2 i. îme to ight-hu a. m it I feel Address Value Previous Memory View Advanced Options 0 H Memory Viewer e Search View Debug Tools Kernel tools ???| Idress B^s E9 78FEFFFF CC

Нужный нам адресс можно получить в окне textractora треда который не полностью захватывает текст.

Красным подчеркиванием выделил где находится данный адрес. Вводим его в окошко Goto Adress, первые две цифры не трогаем, мы должны поменять только последние 6.

8:42D8:755EE24 GetGlyphOutlineA (HA8@E240:GDI32.dll),Визуальные новеллы,фэндомы,Cheat engine,hook,hcode

Goto Address Fill in the address you want to go to X 1 0046F298I OK 1 Cancel ! : 755ЕЕ240 :¿6F298:0 : GetGlyphOutlineA (HA8@E2,Визуальные новеллы,фэндомы,Cheat engine,hook,hcode

Собственно в окне memory view должна выделится нужная позиция.

Конкретно здесь выделение должно быть в инструкции адрес который я подчеркнул красным. Кстати в окне memory view адрес пишется с учетом оффсета от реального адреса, а не того который выделили в памяти. Поэтому реальный адрес инструкции 6F298 относительно начала файла экзешника нашей новеллы, в то время как в памяти нашего пк адрес 0046F298. Ну это так чисто техническая инфа, я хуй знает зачем это пишу.

w ????.exe+6F28E ????.exe+6F290 ????.exe+6F291 JC. 6A 06 56 51 pusn push push push eux 06 esi ecx ????.exe+6F292 FF 15 A8A04D00 call dword ptr [ ????.exe+6F298 8B 43 OC mov eax,[ebx+0C] ????.exe+6F29B 8B 10 mov edx,[eax] ????.exe+6F29D 8B 40 04 mov eax,[eax+04] ????.exe+6F2A0 83 C2 03 add

Далее мы должны поставить breakpoint, выделяем нужный адрес и правой кнопкой мыши установить breakpoint либо же просто жмем ф5.

Итак мы выделили нужный адрес и поставили брикпоинт, когда он ставится, до инструкция выделяется зеленым цветом.

Ткнем в диалог новеллы и она должна зависнуть, а интерфейс memory viewera слегка изменится. Давайте пройдемся по нему поподробнее.

^ Memory Viewer - Currently debugging thread 2AS4 File Search View Debug Tools Kernel tools ????.exe+6F280 Address Bytes Opcode ????.exe+6F280 50 push eax ????.exe+6F281 8B 44 24 14 mov eax,[esp+14] ????.exe+6F285 51 push ecx ????.exe+6F286 8B 88 FC090000 mov ecx,[eax+000009FC]

Собственно 1 это окно просмотра адреса памяти в хекс режиме. Полезно посмотреть что скрывается в различных адресах. Нихуя не буду углубляться в что такое поинтеры и с чем их едят. Я вообще когда начинал ебашил все методом научного тыка и нихуя не знал.

2. Окно с нашим стеком, что такое стек я тоже нихуя не буду писать, во всяком случае сейчас. Окно это дюже полезное и позже объясню почему.

3. Регистры, собственно в 32битных программах есть регистры EAX, EBX, ECX, EDX, ESI, EDI, EBP и ESP подробнее про них вы можете прочитать не у меня, так-как по большему счету я тоже мало знаю об этом, короче считайте регистры что-то вроде переменных. Про флаги и сегменты регистров я тем более нихуя не знаю, так-как их не использую в принципе.

4. Окно с ассемблерными инструкциями.

Окей. С этим мы разобрались, хотя я почти на сто процентов уверен, что никто нихуя не понял. Неудивительно из меня хуевый учитель, но поехали дальше.

Собственно наше окно с регистрами горит красным и если мы пощелкаем ф9, то сможем увидеть как некоторые показатели в регистрах меняются. Мы знаем, что по адресу 6F292 вызывается инструкция GDI32.GetGlyphOutlineA собственно туда отправляются наши японские символы в количестве одной штуки. Я кстати не читал документацию но чисто на эмпирическом уровне думаю, что данное апи выводит на экран текст, хотя если бы было так, оно выводило не весь текст, хуй с ним, может люди умнее меня скажут нахуй она нужна. Опять я что-то отвлекся.

Конкретно в данном случае можно сразу запалить 2 байта 

Registers: Flags EAX 005354A3 OF 0 EBX 045E2223 DF 0 ECX AC011A62 SF 0 EDX 0277D050 ZF 0 EDI 000001E0 PF 0 E3F ESP EIP 00000000 0015F110 0046F252 CF 0 Segment Registers CS 0023 SS 002B DS 002B ES 002B FS 0053 GS 002B,Визуальные новеллы,фэндомы,Cheat engine,hook,hcode

В регистре ESI 82B1 я уже столько раз делал хук коды, что точно знаю, что все японские символы в SJIS кодировке состоят из двух байтов и первый байт у них начинается с 80. Есть очень полезный сайт который позволит хекс коды перевести в читабельный текст http://freaka.freehostia.com/charset.php

Благодаря этому сайту мы понимаем, что 82В1 = こ. Да так и есть, каждый раз при вызове ф9 мы продолжаем выполнение программы и каждый раз когда срабатывает брикпойнт регистр ESI меняется показывая нам новую букву. Хорошо с этим мы разобрались. Но как же выловить весь текст полностью? Ну в данном случае придется окунуться в наш стек, что бы найти истину.

Memory Viewer - Currently debugging thread 3A78 File Search View Debug Tools Kernel tools □ X ????.exe+6F28C Address Bytes Opcode Comment A ????.exe+6F28C 57 push edi ????.exe+6F28D 52 push edx ????.exe+6F28E 6A 06 push 06 6 ????.exe+6F290 56 push esi ????.exe+6F291 51 push ecx

В окошке со стеком, жмем правой кнопкой мышки и выбираем Not system modules only. Теперь мы увидим в окне адреса модулей. Наша задача выйти из этой подпрограммы в которой вызывается функция GDI32. Тут наверное стоит сделать лирическое отступление. Я сам нихуя не понимаю до конца как это работает, буду говорить с той позиции какой вижу это я. 

Всякие инструкции Всякие инструкции Всякие инструкции Всякие инструкции Всякие инструкции call - вызов подпрограммы Всякие инструкции Всякие инструкции Всякие инструкции Всякие инструкции начало функции Всякие инструкции Всякие инструкции Всякие инструкции Всякие инструкции Всяки^инструкци^^^^^

Зеленой рамочкой обведен наш брикпоинт, наша задача выйти из данной функции в место откуда её собирались вызывать жирная черная стрелочка. В начале каждой новой функции на вершину стека кладется адрес возврата выполнения программы. По мере заполнения стека он будет опускаться все дальше вниз в окне стеков. Поэтому мы ищем в окне стека именно этот адрес возврата. На рисунке выше он 00473CF0. На нашей схеме я его обвел красной рамочкой.

Итак в окне стеков первые три модуля отправляют нас в область защищенной памяти, это не ассемблерные инструкции поэтому они нам не интересны. 4 же возвращает адрес куда должно передаться управление программой после завершения этой функции то есть до оператора ret что в простонородье означает return ака возвращение.

Нам нужно поставить брикпоинт прямо перед выполнением функции в которой происходит вызов в GDI32.

Memory Viewer - Currently debugging thread 2A84 File Search View Debug Tools Kernel tools □ X ????.exe+72CE9 Address Bytes Opcode Comment >>????.exe+72CE9 8B CE mov ????.exe+72CEB E8 E0C4FFFF call ????.exe+6F1D0 ????.exe+72CF0 8B 13 mov edx,[ebx] ????.exe+72CF2 8B44 24 1C mov

В нашем случае это адрес 72CE9 чуть ниже мы можем увидеть функцию call и еще на один ниже наш адрес возврата из той функции 72CF0. Поставим брикпойнт и немного погоняем ф9, смотрим есть ли где-нибудь наш текст. Ах да, поставим full stack в окне стека. Если мы дважды щелкнем кнопкой мыши на первую позицию в стеке после того как нажмем ф9, то в окне хекс отображения сможем увидить два байта нашей буквы в sjis кодировке. Значит мы сделали все правильно и буква появляется еще выше по выполнению данной функции, если бы мы нигде не смогли отыскать нашу букву, то алгоритм работы слегка изменился и нам пришлось искать место где она появляется в функции где вызывается GDI32, но этого не произошло и продолжаем искать дальше.

В данный момент у нас должно быть активно два брикпоинта при нажатии Ctrl+b мы увидим их адреса, либо же можно нажать мышкой сверху view -> breakpointlist. Наша задача понять они выполняются каждый одинаково, то есть сначала первый потом второй и если да, то это место для хука не подходит, так-как мы знаем что у нас проебаны буквы.

Breakpoint list — □ X Address Size Trigger Type On Hit 0046F292 1 On Execute Hardware Breakpoint (0) Break 00472CE9 1 On Execute Hardware Breakpoint (1) Break,Визуальные новеллы,фэндомы,Cheat engine,hook,hcode

Жмакаем ф9 и видим, что они выполняются последовательно, значит ищем дальше. Мне чуйка сразу подсказала, что текст формируется именно в этой функции и я решил пройтись по ней с самого начала. Брекпоинт по адресу 0046F292 можно нахрен удалять. Что бы попасть в начало функции жмакаем правой кнопкой мыши на окне с инструкциями выбираем select current function, наш отшвырнет на адрес 72A2D, поставим здесь брикпойнт и пощелкаем ф9.

^ Memory Viewer - Currently debugging thread 2A84 □ X File Search View Debug Tools Kernel tools ????.exe+72A2D Registers: Flags Address Bytes Opcode Comment >>????.exe+72A2D 55 push ????.exe+72A2E 56 push esi ????.exe+72A2F 57 push edi ????.exe+72A30 A1 E0B252O0 mov

Заодно не забываем проверять наш стек и регистры на наличие чего нибудь напоминающие буквы в хекс виде. Из проделанной работы мы узнаем, что начало функции вызывается куда чаще чем адрес 72CE9, а значит вот оно, больше никуда лезть не нужно, нам осталось отыскать место где появятся наши заветные два байта. Жмем ф8 и потихонечку спускаемся вниз все это время следя за регистрами и стеком.

Memory Viewer ■ File Search View Currently debugging thread 2A84 Debug Tools Kernel tools □ X ????.exe+72A5A Address Bytes Opcode Comment ????.exe+72A5A 8B 96 C8010000 mov edx,[esi+000001C8] ????.exe+72A60 8B BC 24 90000000 mov edi,[esp+00000090] ????.exe+72A67 89 8E DC040000 mov

Ага, вот тут после выполнение команды в адресе 72A88 в регистре EAX появилось кое-что интересное. А именно появляется первый байт нашей буквы, мы ведь помним, что первый байт всех японских символов начинаются с 80. Отлично идем дальше.

Memory Viewer ■ File Search View Currently debugging thread 2A84 Debug Tools Kernel tools □ X ????.exe+72A6D Address Bytes Opcode Comment A ????.exe+72A6D OFBE 8E 550DOOOO movsx ecx,byte ptr [esi+OOOOOD55] ????.exe+72A74 89 44 24 38 mov [esp+38],eax ????.exe+72A78 89 96 E0040000 mov

А вот наклюнулся и второй байт в регистре ECX, он появился после выполнения команды в адресе 72A92. За ним идут две операции and, где по сути избавляются от минуса, и мы применяем побайтовый сдвиг влево на 8 у регистра EAX. Вот оно, уже рядом.

Memory Viewer - Currently debugging thread 2A84 File Search View Debug Tools Kernel tools □ X ????.exe+72A8A Address Bytes Opcode Comment ????.exe+72A8A 8D 4C 11 01 lea ecx,[ecx+edx+01] ????.exe+72A8E OFBE 55 01 movsx edx,byte ptr [ebp+01] ????.exe+72A92 33 CA xor ecx,edx

Собственно вот и оно. После инструкции в адресе 72AA2 наши два байта объединились и стали единым целым. В адресе 72AA4 можно поставить брикпойнт и пожамкать ф9, что бы убедится, что все буквы появляются именно здесь. Как только мы в этом убедились. Жмем Ctrl+B и удаляем все брекпойнты, они нам больше не понадобятся. Самое время запилить наш хук.

Цепляться будем ка адресу 72AA4 который идет сразу после того как наши два байта объединяются.

Откроем textractor подрубимся к экзешнику с нашей игрой, если вы вдруг его закрыли, если не закрывали, то он должен быть уже заатачен к процессу игры. жмем добавить хук код add hook

Memory Viewer - Running □ File Search View Debug Tools Kernel tools ????.exe+72AA4 Address Bytes Opcode Comment >>????.exe+72AA4 8D 90 617DFFFF lea ,[ -0000829F] ????.exe+72AAA 89 7C 24 18 mov [esp+18],edi ????.exe+72AAE B9 02000000 mov ecx,00000002 2 ????.exe+72AB3 83 FA 52 cmp edx,52

Ну и собственно вбиваем наш хук. Если у вас экзешник из иероглифов, имя желательно полностью скопировать. Как составлять хуки тут есть целая памятка. /H собственно с этого начинается любой хук код. A - берет два байта в кодировке SJIS little endian, B следует использовать когда байты повернуты наоборот. То есть в данном примере у нас 8179 - это А, а если бы было 7981, то нужно было бы в писать в хук B. Префикс N, блядь, я знаю, что это значит но по умному хуй знает как описать. Короче, суть. Если не писать N, то будет дополнительно учитываться регистер ESI вроде бы, точно не помню и если он постоянный то все будет ок, но если вдруг каждый вызов он будет меняться, то вы получите кучу всяких потоков, поэтому использовать его нужно с умом. Собственно собака, потом адрес куда мы будем хукаться, напомню этот адрес идет сразу после того как мы получили наши цельные два байта. Двоеточие и имя экзешника полностью. Жмем окей и вуаля. Хук работает, а мы великолепны.

*3 (F) ¡S$(S) T- Textractor 42D8: m^M.exe 1D:42D8:472AA4:0:0: UserHook (HAN-4@72AA4:MI#il.exe) X JiP&D^fv.....o Summer Princess-chan... -t?t>&c I don't want you to be my girlfriend. Saffle's from good. mX] r?% ?/u6©9^e«J:......J Shota: "That's no good..." m§* ^^oD?oo°j v,Визуальные



Ну и два видосика с примерами в конце. 
 
 
Развернуть
Смотрите ещё
В этом разделе мы собираем самые смешные приколы (комиксы и картинки) по теме история двух студентов (+1000 картинок)