Сейчас на форуме: Magister Yoda, vasilevradislav (+5 невидимых)

 eXeL@B —› Крэки, обсуждения —› выпилить Steam из игры Dota 2
. 1 . 2 . >>
Посл.ответ Сообщение

Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 19 января 2014 15:31
· Личное сообщение · #1

Вот решил посмотреть, что такое Steam внутри. Поиграл в эту доту2 - быстро надоело, решил немного надругаться над игрой по аналогии с DUNE 2009 Patch
Техническая суть вопроса: насколько понял, нужно просто правильно эмульнуть ответы по обращению движка engine.dll(и иже с ним) к steam_api.dll (Вроде существует ломанный клиент, но меня тянет на велосипед). Кто нибудь отвязывал стим? Есть ли грабли и с чем их едят?



Ранг: 60.6 (постоянный), 87thx
Активность: 0.060
Статус: Участник

Создано: 19 января 2014 16:14
· Личное сообщение · #2

Без авторизации в Steam скорее всего будут недоступны сервера Valve. Смысл выпиливания?



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 19 января 2014 16:26 · Поправил: ELF_7719116
· Личное сообщение · #3

Есть функция LAN игры (локальное лобби), которое, вроде как, доступно только, если есть коннект к steam. К тому же, если я буду битхачить игру, клиент наверняка может накапать в валве(?!). Ну и наконец, просто желание выпилить к ебени матери.

Code:
  1. ЧИСТО КРАКЛАБОВСКИЙ ГАЙД ПО ИГРЕ

Для небольшого вброса - для задротеров(кто читает эту тему, но не понимает, в принципе, 99% здесь написанного. но не просто так Вам уходить же отсюда) такой же небольшой гайд по герою npc_dota_hero_mirana (короче Mirana с ее пизд... стрелой). Плюньте на стандартный начальный закуп™ и остальные гайды: берем сапог (Boots of Speed), ветку(Iron Branch) и листик(Tango). Ваша задача первоочередная - реализовать себя в ранней игре, юзая стрелу(Arrow) и прыжок(Leap), иначе на какой хрен Вы вообще его пикали?! Лично у меня более всего получалось попадать на дальних и сверхдальних дистанциях "вдогонку" (конечно можно написать dll'ку, которая будет рассчитывать и выводить на экран точку, в которой пересекутся траектория стрелы и врага, но в любом случае, успех будет зависит от удачи). По ходу дела, из простого деревенского сапога (Boots of Speed) делаем CreateThread сапоги от армани (Power Treads), вызываем WinAPI SetSaporgMode (ID_Интеллект), если просто фарм, или WinAPI SetSaporgMode (ID_Ловкость), если атакуем (приоритет - ID_Ловкость). затем ... покупаем варежку (Gloves of Haste) - начинаем собирать молоток, подключенный от розетки 220V Maelstrom. Для тех кто не доехал - вкачиваем на всю параметр скорость атаки, ибо разряд живительного тока по крипам + способность Starstorm это бабло, сначала текущее тонким ручейком, которое позже превращающемся в реку. Соответственно следующая безделушка для покупки - Hyperstone, которая и расширяет приход на кассу. В итоге, это все выливается в Mjollnir, где напряжение 380 V, причем трехфазное. После этого можно собрать практически что угодно, в не зависимости в какой (извините за выражение) заднице не была бы Ваша команда. Небольшая вставка (предметы из разряда "мелочь, НО приятно"): если после покупки Gloves of Haste у Вас осталось > 275 монеток, то купите Orb of Venom - иногда помогает в самый последний момент(в начале, когда нужно догнать и добить); сюда же относится Черный плащ Cloak - ощутимо повышает выживаемость, за счет увеличенного протекта +15% (базовый 25%+15%) от уличной магии, и стоит при этом 550 монеток, в не зависимости от курса $ и €.
* Не забывайте также, что Maelstrom/Mjollnir - это модификатор атаки. Т.е. стрела, которая попадет в цель может дополнительно шарахнуть током(если Mirana успела поменять в ней Duracell), что делает ее еще более убойной вещью. Аналогично и с Orb of Venom.
* Mask of Madness - вещь, которой можно затариться взамен камешка Hyperstone. Попадание стрелой+прыжок+звездопад(если осталась мана)+врубание сей хрени дает 100% шанс убить героев с небольшим запасом здоровья и серьезно испортить настроение уже отожравшимся. Не забывайте, что это еще и шанс включить у зверька форсаж и вовремя смыться!
* Катана Yasha и иже с ним - манта(с X-COM штоле) стул Manta Style. Если честно, не рекомендую отдавать им приоритет, хотя ... вдруг драки(ганки) идут как род тока - постоянно, то после Maelstrom замутить желательно. Просто после Maelstrom/Mjollnir уже имеет смысл(а с Mask of Madness тем более) собрать бабочку Butterfly, в обход манты, и сразу брать криты Crystalys(вообще критический удар - Ваша конечная цель, и посему когда герой стреляет из лука, как из пулемета, то и соответственно будут сыпаться криты + тесла катушка), чтобы выносить вперед ногами кого угодно. Другое дело - когда ганка толком нет и все разбежались по углам фармить ИЛИ Вы в глухой обороне. В указанном раскладе однозначно(!) покупаем Sange and Yasha, прежде всего из-за статического прироста скорости бега, возможностью замедлить скорость передвижения и дополнительных хп. Кстати следующий пункт:
* Эта самая плохая ситуация... когда у Mirana критические дни идет кулдаун на прыжок Leap, да еще постоянно взводят флаг Disable на Ваших магических способностях, да еще и на ульт полагаться особо не приходится. ИЧХ, такое очень часто происходит - львиная доля смертей, когда отпрыгнуть Вы не успели. До Refresher Orb - далеко и дороговато, поэтому есть очень большой смысл призадуматься, чем страховать себя в этот критический момент. Исходя из вышеизложенного... Короче епичное 6.8 какое-то там обновление частично решило эту проблему: в батерфляй запхнули закись азота N2O, теперь данный артефакт стал в разряд must have.
* Конечно глупо все всегда качать в атаку, когда еще целые DWORD'ы значений всяких других параметров героя. Поэтому нелишним ляпнуть пару слов о punpcklqdq xmm1, xmm3 , о не боевых артефактах, ведь с регеном маны у Mirana проблемы. В первую очередь достойны упоминания поршневые кольца Ring of Basilius , которое нужно проапгрейдить® в Ring of Aquila (все эт начинаем собирать с Sage's Mask). После уже стоит задуматься о кольце сарумяна или саурона, короче кто какой перевод смотрел (Perseverance). А вот дальнейший апргрейд Perseverance - тут два пути: (1)-слишком уж все для Вас сферически идеально должно быть, чтобы купить Refresher Orb, т.е. для того, чтобы сделать к-к-к-комбо: ульт-> стрела -> прыжок -> звездопад -> REFRESH -> звездопад -> прыжок-> стрела -> ульт, врагами и Вашей зондер-командой специально для Вас должна быть постелена красная ковровая дорожка. Ну или хотя бы дважы звездопад и/или дважды стрела, и ADD ESP, ульт npc_dota_hero_luna... (2)-сфера Linken's Sphere. Особенно против героев с точечными скилами - npc_dota_hero_lion эталонный тому пример. Ну и оверклокинг генератора маны. ... конечно на все эт нужно бабло, и придется отправлять Mirana на Тверскую или Ленинградское шоссе брать кредит в сбербанке (благо есть зевс). Но если без ха-ха, то в удачном для Вас раскладе лучшим будет - быстрее всего собрать Maelstrom, спустив на ранней стадии весь счет на Mithril Hammer -> с этим девайсом можно быстро собрать все колечки. В худшем - спускать все сразу на Ring of Basilius->Ring of Aquila, затем электро-молоток и кольцо сарумяна. Если мочилово затянулось(лейт), то впору задуматься о навешивании на себя брони-Assault Cuirass(+ динамическая защита Контакт-5 Linken's Sphere), несмотря на то, что красная коса (Desolator) ,в плане декремента брони у противников - вещь более привлекательная, однако запомните простое правило: дохнуть Вашему лунному герою ВООБЩЕ не с руки и нельзя ни при каких обстоятельствах, в критических моментах лучше отступить и сохранить жизнь Вашей Mirana. INT3 Но по факту, порядок покупки шмотья на Ваше усмотрение, по Вашим способностям, по текущей ситуации.
Все вышесказанное по гайду в двух словах и другим языком: с помощью Maelstrom/Mjollnir подводите Mirana к ее золотой середине-ведению стиля игры между Luna style и Drow Ranger Style.

░ ... если Вы считаете себя «крутой»(pro, задрот) мираной™ и пускаете стрелы чуть ли не с закрытыми глазами и при этом попадаете точно-то у меня для Вас печальные новости: привилегией при устройстве на работу это не будет! Впрочем, если делать Вы больше ничего не умеете, то потенциал для прокачки skill есть... ДА ЕЩЕ КАКОЙ - в быдл...Battlefield 4 (Origin с AES...мать его, ключом!): «кемперить на зенитке, разблокировав ракеты с активным наведением и херача авиацию противника на другом конце многокилометровой карты, и оное по высоте еще...прям как С-125 в Югославии». Mirana в сравнении с какой нибудь 2К22М1 «Тунгуска-М1» тут нервно курит на панели.

На этом все. За неточности, инженерно-технический оттенок написанного и убогость мыслей прошу извинить - я увлекаюсь потрошением всяких SecuROM и ему подобных старфорсов (ну вы поняли), а в игры играюсь лишь изредка, и то в подавляющем большинстве случаев это X-COM: TFTD



Ранг: 49.7 (посетитель), 19thx
Активность: 0.050
Статус: Участник

Создано: 19 января 2014 17:23 · Поправил: sivorog
· Личное сообщение · #4

например, есть игра Worms Revolution
крэк (No-Steam) от Reloaded
там изменен файл steam_api.dll
НО: нормально можно играть только 1 игроку, + недоступны покупаемые/приобретаемые за какие-то внутриигровые достижения вкусняшки (оружие там особое, и проч.).
т.е. играть можно, но без плюшек.

ради интереса поскачивал несколько No_Steam'ов к разным играм, везде хачится эта DLL
правда, часто её после этого накрывают вмпротом, так что особо не поисследуешь

в аттаче - имена типичных API Steam, сами за себя говорят.

1386_19.01.2014_EXELAB.rU.tgz - STEAM_API usage.png

| Сообщение посчитали полезным: ELF_7719116

Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 19 января 2014 17:56
· Личное сообщение · #5

в доте2 библиотеки не накрыты
Есть еще steamclient.dll, там тоже "самизасебяговорящие" функции, с ними client.dll связан.



Ранг: 49.7 (посетитель), 19thx
Активность: 0.050
Статус: Участник

Создано: 19 января 2014 18:08
· Личное сообщение · #6

я имею в виду, что Reloaded накрывает хакнутые либы вмпротом.
а исходно да, они не накрыты.




Ранг: 275.9 (наставник), 340thx
Активность: 0.22=0.22
Статус: Участник
RBC

Создано: 19 января 2014 18:57 · Поправил: Kindly
· Личное сообщение · #7

sivorog пишет:
я имею в виду, что Reloaded накрывает хакнутые либы вмпротом.

да не хакнутые они, это ихний эмулятор, написанный с нуля (в основном они универсальные для многих игр, поправляются только с учетом изменений в клиенте). мне вот больше интересно можно ли из exe выпилить из импорта steam_api.dll и заставить игру запускаться без ее участия. хотя надо попробовать что-то поковырять со своего клиента, но после того как подробно пообщался о различных ньюансах steam, забил

хе, ну только что сломал у себя Braid, тупо занопил вызовы на steam_api.dll и выпилил из импорта - но думаю, что эта игра серъезно не защищена.

ELF_7719116, про CEG еще --> Тут <-- есть немного

-----
Array[Login..Logout] of Life




Ранг: 80.6 (постоянный), 194thx
Активность: 0.10.04
Статус: Участник

Создано: 20 января 2014 23:16 · Поправил: v00doo
· Личное сообщение · #8

ELF_7719116 пишет:
Вроде существует ломанный клиент

Слиты были сырцы эмулей как раз, не финальные, но вроде работали.

upd У себя не нашел, а ссылки все подохли(




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 21 января 2014 01:37
· Личное сообщение · #9

ELF_7719116
--> Link <--

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 21 января 2014 17:52 · Поправил: ELF_7719116
· Личное сообщение · #10

Киньте сырки эмуля, что в http://exelab.ru/F/action=vthread&forum=13&topic=21313 (хотя хочу немного по другому пойти...). Если кому-то нужен стимворк_сдк(регатся и качать - лень) скину (полсотни весит)...впрочем есть альтернативный вариант: https://partner.steamgames.com/downloads/steamworks_sdk_127.zip

9b8e_21.01.2014_EXELAB.rU.tgz - steam_api.h



Ранг: 53.9 (постоянный), 19thx
Активность: 0.040
Статус: Участник

Создано: 22 января 2014 04:45
· Личное сообщение · #11

Там сырков не было
http://rghost.ru/51833590




Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 22 января 2014 12:52
· Личное сообщение · #12

Были там сырки. Сейчас уже сложно найти, но может дома где-то валяются.



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 28 января 2014 19:22
· Личное сообщение · #13

Понеслась!
Вообщем полазил я немного(ну вы поняли) в самой dota2.exe и что там прилагается в виде dll
Наибольшую ценность представляет server.dll, в ...\dota\bin(что в принципе неудивительно) - К.О. сообщает, что именно там происходит хранение бабла, маны, здоровья и всякой другой ненужной херни. Все это разбито на структуры/массивы, каждая из которых имеет 10 значений(по количеству игроков), ну и соответственно функция, которая обрабатывает данный массив, в качестве аргумента запрашивает локальное id игрока(в осн. игре сверху картинки 0,1,2...9 соот-но). Собственно по локальному ID игрока мы ездим по массиву(типа MOV EDI,DWORD PTR DS:[ESI*4+ECX+3C0]). Тут уместно заметить, что при невнимательности разрабов(нету проверки, что в коде ниже)ведь локальное ид поступает от клиента и может быть =100500, т.е. можно вызвать отказ в обслуживании сервера, заслав указатель в космос. Насчет шеллкода не могу ничего сказать-надо копать глубже.
Code:
  1. |.  83FE 09       CMP ESI,9 //указывает на работу с массивом данных
  2. |.- 76 0B         JBE SHORT 21C4C951

К слову, кроме бесконечных бабла, здоровья, ман, респаунов и тд, можно получить хоть 500 героев в игре(более разумные пределы-штук 30), надо, очень много раз, править указанный код + частично переписать двигло(engine.dll+client.dll)... муторно, хотя с DUNE 2009 получилось.
Если в массиве, если встречается числа -1(Суть всегда означает DISABLED/FALSE и тд) и 0 до 100(скоко там их - я не в курсе), то это ID героев(HeroID).
Ну и кроме всего прочего, конечно можно издевательски забить на потайные лавки, курьеров, невозможность выбора героя, если им уже играет другой(буквально команда из одного и того же героя), играть другим игроком. Не знаю, можно ли все это безобразие(сразу) провернуть через читы/консоль-я делал это все натуральным ломанием игрушки:

еще скрины:
http://bayimg.com/iAhkEaaFp
http://bayimg.com/IaHkfAAfP

К сведению: если будете аттачится к дота2.ехе - выключите игнорировать исключения(вкладка Exceptions в ольке), там некое подобие антиатача(наверно?), пропускайте (F7/F8) исключения PAGE_GUARD(некоторые участки в кернеле32/нтдлл). Впрочем, по существу, оно ничем не страшно.
AND: стим цег займусь попозже.
А еще: прикрепил текстовый файл с наиболее полным собранием команд в консоли/читов (щас сцукины дети дотеры побегут регаться, sorry арчи)
На сем, пока, откланяюсь!

ec90_28.01.2014_EXELAB.rU.tgz - dota2_console_commands.zip

| Сообщение посчитали полезным: v00doo, Kaimi, OnLyOnE, Gideon Vi, antoshka_kartoshka


Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 28 января 2014 20:01
· Личное сообщение · #14

Посмотри это, вдруг поможет
http://www.sendspace.com/file/tiync7

| Сообщение посчитали полезным: Gideon Vi

Ранг: 80.6 (постоянный), 194thx
Активность: 0.10.04
Статус: Участник

Создано: 28 января 2014 22:06 · Поправил: v00doo
· Личное сообщение · #15

ELF_7719116, как узнают, думаю сразу зафиксят, ну как минимум когда им сервер положат то точно.
С учетом что сейчас Valve на ней выезжает и аудиторию собирает, а халявщиков достаточно.
Ps это я про:
ELF_7719116 пишет:
локальное ид поступает от клиента и может быть =100500, т.е. можно вызвать отказ в обслуживании сервера





Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 28 января 2014 23:19
· Личное сообщение · #16

У меня тупой ламерский вопрос - можно в неё играть бесплатно без стим акка? А то я как-то не играл ни разу, а платить - ну, вы понимаете.

-----
Stuck to the plan, always think that we would stand up, never ran.




Ранг: 80.6 (постоянный), 194thx
Активность: 0.10.04
Статус: Участник

Создано: 28 января 2014 23:29 · Поправил: v00doo
· Личное сообщение · #17

ARCHANGEL пишет:
можно в неё играть бесплатно без стим акка

Можно бесплатно, но нужен акк, на акке уровень держит (по нему подбирает соперников в публичной игре), статистику, шмотки и всякое разное держит, без коннекта к инету не поиграть даже локально с ботами.
За таньгу можно накупить шмоточек и других предмтиков, профита они не дают, только модельки да текстурки меняют визуально, но за некоторые многие %users% готовы отвалить не малую сумму.
Вроде все аспекты.

| Сообщение посчитали полезным: ARCHANGEL


Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 28 января 2014 23:38
· Личное сообщение · #18

v00doo
А, ну ладно. Обойдусь тогда.

-----
Stuck to the plan, always think that we would stand up, never ran.




Ранг: 134.1 (ветеран), 246thx
Активность: 0.220.1
Статус: Участник
realist

Создано: 29 января 2014 00:23 · Поправил: Jaa
· Личное сообщение · #19

v00doo пишет:
без коннекта к инету не поиграть даже локально с ботами.

вы не правы
--> например вот отвязаная дота2 от стима, с ботами локально<--

ARCHANGEL
неплохая игруля кстати



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 29 января 2014 07:45
· Личное сообщение · #20

Вообще моя задумка изначально и представляла-выпилить стеам и эмульнуть для создания локального лобби по LAN. А там, глядишь, можно и на краклабе сервер поднять. Пусть Vavle лососнет тунца.
зы: если что, карты BSP(через Valve Hammer Editor) и в 3ds MAX модельки рисовать умею.




Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 29 января 2014 08:10
· Личное сообщение · #21

ARCHANGEL пишет:
А, ну ладно. Обойдусь тогда.

--> Игра бесплатная в стеам <--

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.




Ранг: 85.4 (постоянный), 51thx
Активность: 0.090
Статус: Участник

Создано: 29 января 2014 10:15
· Личное сообщение · #22

https://github.com/SteamRE/open-steamworks

| Сообщение посчитали полезным: v00doo

Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 29 января 2014 18:19 · Поправил: ELF_7719116
· Личное сообщение · #23

дота2 блог - не, не слышал! Я читаю новости с краклаба


| Сообщение посчитали полезным: Zedan

Ранг: 116.5 (ветеран), 3thx
Активность: 0.070
Статус: Участник

Создано: 29 января 2014 18:48
· Личное сообщение · #24

Т.е. во всех онлайн-играх все характеристики (бабло, дамаг, здоровье и др.) персонажей хранятся у них на серве? Если так, то возможно ли каким-либо образом их вообще изменять?



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 29 января 2014 19:11
· Личное сообщение · #25

Valemox
В 99% случаях - да! Сервер рассылает и обрабатывает данные по/от клиентам. И чтобы вы не правили у себя в клиенте-толку 0.
Взломать? Найти уязвимость в оси сервера или клиенте игры(возможность отсылать данные, при обработке которых будет получено управление или управлять данными в памяти сервера, через указатели).



Ранг: 116.5 (ветеран), 3thx
Активность: 0.070
Статус: Участник

Создано: 29 января 2014 20:17 · Поправил: Valemox
· Личное сообщение · #26

ELF_7719116
А можно какой-нибудь пример из игрухи, в виде кода, где получаем управление к данным в памяти серва (желательно хотя бы с короткими коментами). Так для наглядности!
Add:
Случаем никто не ковырял батленет библу?



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 30 января 2014 07:44
· Личное сообщение · #27

Valemox
Чес говоря, не знаю. Теоретически это возможно(может даже и в этой доте2), но код должен быть специфическим, типа:
Code:
  1. MOV DWORD PTR DS:[ESI*4+ECX+3C0], EAX //где оперируем указателями и данными

или
возможно переполнение буфера/кучи(например, выше массива с деньгами, располагается буфер, где текстовые строки из чата и их длина не проверяется)

| Сообщение посчитали полезным: Valemox


Ранг: 241.9 (наставник), 107thx
Активность: 0.140.01
Статус: Участник

Создано: 31 января 2014 08:12
· Личное сообщение · #28

ELF_7719116, то что ты пишешь про изменение памяти сервера, давно уже нереал практически нигде. Такое можно было проворачивать лет 10 назад. Сейчас все данные от клиента проверяют, даже если они пошифрованны. Раньше умудрялись даже писать sql инжекты через чат(любая хранимая строка на сервере - потенциальный инжект). Сейчас многие компании уже пострадали от таких вещей и все такие места проверяют по 10 раз. Так что найти переполнение можно с тем же шансом, как искать его в винде. Намного более часто можно получить или показать данные, которые тебе изначально неизвестны. Например в доте рисовать вражеского игрока на карте или его хп, ману, деньги. Изначально клиент не рисует это, но часто заранее имеет эти данные или их можно получить по запросу. Например отослать пакет выделения вражеского игрока и получить ответ сервера. И фигня, что он находится за пределами видимости. Сервер может вернуть все данные о вражеском игроке. На таких ошибках и пишут читы.

| Сообщение посчитали полезным: ELF_7719116

Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 02 февраля 2014 16:02
· Личное сообщение · #29

Луна, луна, цветы, цветы.
Нам часто в жизни не хватает друзей и доброты.
Луна, луна, цветы, цветы.
Все, кто влюблен, им доверяют надежды и мечты...


Единственное, что: бабки(золото) у двух команд хранится в разных массивах(до обновления вроде было в одном)
Code:
  1. 21AFE04B  |.  83BCB3 900400 CMP DWORD PTR DS:[ESI*4+EBX+490],2 //command selector
  2. 21AFE053  |.  75 09         JNE SHORT 21AFE05E
  3. 21AFE055  |.  8B8CB2 E80300 MOV ECX,DWORD PTR DS:[ESI*4+EDX+3E8]              ; get gold massiv here &&&
  4. 21AFE05C  |.  EB 07         JMP SHORT 21AFE065
  5. 21AFE05E  |>  8B8CB1 E80300 MOV ECX,DWORD PTR DS:[ESI*4+ECX+3E8]             ; and here


И вопрос: идет такой код
Code:
  1. MOV EAX,DWORD PTR DS:[ECX]
  2. CALL DWORD PTR DS:[EAX+14] //очевидно, вызов виртуальной функции?!

где
Code:
  1. MOV EAX,ECX                                       ; server.216C6210(guessed void)
  2. RETN

Из-за одной инструкции, делать отдельную процедуру-WTF?



Ранг: 116.5 (ветеран), 3thx
Активность: 0.070
Статус: Участник

Создано: 04 февраля 2014 01:31
· Личное сообщение · #30

М.б. это некое подобие свитча, тогда можно обрабатывать разные события в игре путем изменения смещения относительно EAX.


. 1 . 2 . >>
 eXeL@B —› Крэки, обсуждения —› выпилить Steam из игры Dota 2
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати