Garik66 Опубликовано 13 мая, 2016 Поделиться Опубликовано 13 мая, 2016 (изменено) Уроки, связанные с этой таблицей Cheat Engine: 1. Dark Souls взлом Chance Drop 2. Dark Souls ADD ITEM 3. Делаем таблицу Cheat Engine мультиязычной Скрипт (jокончательный вариант скрипта выложил далее): Видео: Таблица СЕ: // Выложил далее. Изменено 14 мая, 2016 пользователем Garik66 2 Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 14 мая, 2016 Автор Поделиться Опубликовано 14 мая, 2016 (изменено) Dark Souls Sale Items (часть 2 - part 2) Исправляем ошибку и добавляем автоматизацию в скрипт. Скрипт (jокончательный вариант скрипта выложил далее) : Видео: Таблица CE: // Выложил далее. Изменено 14 мая, 2016 пользователем Garik66 2 Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 14 мая, 2016 Автор Поделиться Опубликовано 14 мая, 2016 (изменено) Dark Souls Sale Items часть 3 part 3 Доисправление скрипта. Скрипт (окончательный вариант скрипта выложил далее) : Видео: Таблица CE: // Выложил далее. Изменено 15 мая, 2016 пользователем Garik66 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 15 мая, 2016 Автор Поделиться Опубликовано 15 мая, 2016 (изменено) Dark Souls Sale Items часть 4 part 4 Правка скрипта. Скрипт: Скрытый текст { Game : DARKSOULS.exe Version: Date : 2016-05-13 Author : Garik66 This script does blah blah blah } [ENABLE] {$LUA} timer = createTimer(true) timer:setInterval(5) timer.OnTimer = function() if getAddressList().getMemoryRecordByID("28").Value == "1" then sleep "500" getAddressList().getMemoryRecordByID("27").Value = "1" getAddressList().getMemoryRecordByID("28").Value = "0" end end {$ASM} aobscanmodule(Items,DARKSOULS.exe,CA 8B 74 24 24 39 31) // should be unique aobscanmodule(Soul,DARKSOULS.exe,89 86 8C 00 00 00 2B) aobscanmodule(Slot,DARKSOULS.exe,89 90 E4 01 00 00 E8) aobscanmodule(Quantity,DARKSOULS.exe,8B 48 08 89 4C 24 10) alloc(newmem,$1000) label(newmem1) label(newmem2) label(newmem3) label(code) label(code1) label(code2) label(code3) label(return) label(return1) label(return2) label(return3) label(IDSlot) label(IDItem) registersymbol(IDItem) label(IDItem2) label(SumItems) registersymbol(SumItems) label(SumItems1) registersymbol(SumItems1) label(SumItems2) registersymbol(SumItems2) label(SumSouls) label(SumSouls1) registersymbol(SumSouls1) label(GetIDItem) registersymbol(GetIDItem) label(AddSoul) registersymbol(AddSoul) registersymbol(Slot) registersymbol(Quantity) registersymbol(Items) registersymbol(Soul) newmem: mov esi,[esp+24] cmp [ecx],esi cmp [GetIDItem],1 jne @f push [IDItem] pop [IDItem2] //mov [GetIDItem],0 @@: push ebx mov ebx,[IDItem2] cmp [ecx+04],ebx pop ebx jne return cmp [ecx],10000000 jne @f inc [SumItems] inc [SumItems1] add [SumSouls],#100 add [SumSouls1],#100 jmp code @@: inc [SumItems] inc [SumItems2] add [SumSouls],#50 add [SumSouls1],#50 cmp [ecx+08],1 je code dec [ecx+08] jmp return code: mov [ecx],FFFFFFFF mov [ecx+04],FFFFFFFF mov [ecx+08],0 mov [ecx+10],0 mov [ecx+14],0 jmp return newmem1: cmp [AddSoul],1 jne code1 add eax,[SumSouls] mov [SumSouls],0 mov [AddSoul],0 code1: mov [esi+0000008C],eax jmp return1 newmem2: mov [IDSlot],edx code2: mov [eax+000001E4],edx jmp return2 newmem3: cmp esi,[IDSlot] jne code3 push [eax+04] pop [IDItem] code3: mov ecx,[eax+08] mov [esp+10],ecx jmp return3 IDSlot: dd 0 IDItem: dd 0 SumItems: dd 0 SumItems1: dd 0 SumItems2: dd 0 SumSouls: dd 0 SumSouls1: dd 0 IDItem2: dd 0 GetIDItem: dd 0 AddSoul: dd 0 Items+01: jmp newmem db 90 return: Soul: jmp newmem1 db 90 return1: Slot: jmp newmem2 db 90 return2: Quantity: jmp newmem3 db 90 90 return3: [DISABLE] {$LUA} timer:setEnabled(false) {$ASM} Slot: db 89 90 E4 01 00 00 Quantity: db 8B 48 08 89 4C 24 10 Items+01: db 8B 74 24 24 39 31 Soul: db 89 86 8C 00 00 00 unregistersymbol(IDItem) unregistersymbol(SumItems) unregistersymbol(SumItems1) unregistersymbol(SumItems2) unregistersymbol(SumSouls1) unregistersymbol(AddSoul) unregistersymbol(GetIDItem) unregistersymbol(Soul) unregistersymbol(Items) unregistersymbol(Quantity) unregistersymbol(Slot) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: "DARKSOULS.exe"+809DD8 "DARKSOULS.exe"+809DB4: 85 C0 - test eax,eax "DARKSOULS.exe"+809DB6: 7C 20 - jl DARKSOULS.exe+809DD8 "DARKSOULS.exe"+809DB8: 3B 85 10 01 00 00 - cmp eax,[ebp+00000110] "DARKSOULS.exe"+809DBE: 7D 18 - jnl DARKSOULS.exe+809DD8 "DARKSOULS.exe"+809DC0: 3B 85 18 01 00 00 - cmp eax,[ebp+00000118] "DARKSOULS.exe"+809DC6: 7D 08 - jnl DARKSOULS.exe+809DD0 "DARKSOULS.exe"+809DC8: 8B 8D 20 01 00 00 - mov ecx,[ebp+00000120] "DARKSOULS.exe"+809DCE: EB 06 - jmp DARKSOULS.exe+809DD6 "DARKSOULS.exe"+809DD0: 8B 8D 24 01 00 00 - mov ecx,[ebp+00000124] "DARKSOULS.exe"+809DD6: 03 CA - add ecx,edx // ---------- INJECTING HERE ---------- "DARKSOULS.exe"+809DD8: 8B 74 24 24 - mov esi,[esp+24] "DARKSOULS.exe"+809DDC: 39 31 - cmp [ecx],esi // ---------- DONE INJECTING ---------- "DARKSOULS.exe"+809DDE: 75 05 - jne DARKSOULS.exe+809DE5 "DARKSOULS.exe"+809DE0: 39 79 04 - cmp [ecx+04],edi "DARKSOULS.exe"+809DE3: 74 0B - je DARKSOULS.exe+809DF0 "DARKSOULS.exe"+809DE5: 40 - inc eax "DARKSOULS.exe"+809DE6: 83 C2 1C - add edx,1C "DARKSOULS.exe"+809DE9: 3B C3 - cmp eax,ebx "DARKSOULS.exe"+809DEB: 7C C5 - jl DARKSOULS.exe+809DB2 "DARKSOULS.exe"+809DED: 83 C8 FF - or eax,-01 "DARKSOULS.exe"+809DF0: 5F - pop edi "DARKSOULS.exe"+809DF1: 5E - pop esi } { // ORIGINAL CODE - INJECTION POINT: "DARKSOULS.exe"+7FB5B2 "DARKSOULS.exe"+7FB58C: 89 44 24 08 - mov [esp+08],eax "DARKSOULS.exe"+7FB590: C7 44 24 04 00 00 00 00 - mov [esp+04],00000000 "DARKSOULS.exe"+7FB598: 79 06 - jns DARKSOULS.exe+7FB5A0 "DARKSOULS.exe"+7FB59A: 8D 44 24 04 - lea eax,[esp+04] "DARKSOULS.exe"+7FB59E: EB 10 - jmp DARKSOULS.exe+7FB5B0 "DARKSOULS.exe"+7FB5A0: 3D FF C9 9A 3B - cmp eax,3B9AC9FF "DARKSOULS.exe"+7FB5A5: B8 DC C7 15 01 - mov eax,DARKSOULS.exe+D5C7DC "DARKSOULS.exe"+7FB5AA: 7F 04 - jg DARKSOULS.exe+7FB5B0 "DARKSOULS.exe"+7FB5AC: 8D 44 24 08 - lea eax,[esp+08] "DARKSOULS.exe"+7FB5B0: 8B 00 - mov eax,[eax] // ---------- INJECTING HERE ---------- "DARKSOULS.exe"+7FB5B2: 89 86 8C 00 00 00 - mov [esi+0000008C],eax // ---------- DONE INJECTING ---------- "DARKSOULS.exe"+7FB5B8: 2B C7 - sub eax,edi "DARKSOULS.exe"+7FB5BA: 85 C0 - test eax,eax "DARKSOULS.exe"+7FB5BC: 7E 10 - jle DARKSOULS.exe+7FB5CE "DARKSOULS.exe"+7FB5BE: 8B 8E 90 00 00 00 - mov ecx,[esi+00000090] "DARKSOULS.exe"+7FB5C4: 03 C8 - add ecx,eax "DARKSOULS.exe"+7FB5C6: 51 - push ecx "DARKSOULS.exe"+7FB5C7: 8B CE - mov ecx,esi "DARKSOULS.exe"+7FB5C9: E8 32 01 8B FF - call DARKSOULS.exe+AB700 "DARKSOULS.exe"+7FB5CE: 8B 86 8C 00 00 00 - mov eax,[esi+0000008C] "DARKSOULS.exe"+7FB5D4: 2B C7 - sub eax,edi } { // ORIGINAL CODE - INJECTION POINT: "DARKSOULS.exe"+86AFD9 "DARKSOULS.exe"+86AFB6: 8B 8E 00 01 00 00 - mov ecx,[esi+00000100] "DARKSOULS.exe"+86AFBC: 3B CB - cmp ecx,ebx "DARKSOULS.exe"+86AFBE: 7C 14 - jl DARKSOULS.exe+86AFD4 "DARKSOULS.exe"+86AFC0: 8B 96 38 01 00 00 - mov edx,[esi+00000138] "DARKSOULS.exe"+86AFC6: 8B 52 04 - mov edx,[edx+04] "DARKSOULS.exe"+86AFC9: 03 CF - add ecx,edi "DARKSOULS.exe"+86AFCB: 8B 0C 8A - mov ecx,[edx+ecx*4] "DARKSOULS.exe"+86AFCE: 8B 50 04 - mov edx,[eax+04] "DARKSOULS.exe"+86AFD1: 8B 14 8A - mov edx,[edx+ecx*4] "DARKSOULS.exe"+86AFD4: A1 D0 56 37 01 - mov eax,[DARKSOULS.exe+F756D0] // ---------- INJECTING HERE ---------- "DARKSOULS.exe"+86AFD9: 89 90 E4 01 00 00 - mov [eax+000001E4],edx // ---------- DONE INJECTING ---------- "DARKSOULS.exe"+86AFDF: E8 2C DB FF FF - call DARKSOULS.exe+868B10 "DARKSOULS.exe"+86AFE4: 68 F0 1A 1C 01 - push DARKSOULS.exe+DC1AF0 "DARKSOULS.exe"+86AFE9: 8B CE - mov ecx,esi "DARKSOULS.exe"+86AFEB: E8 D0 93 B1 FF - call DARKSOULS.exe+3843C0 "DARKSOULS.exe"+86AFF0: 3B C3 - cmp eax,ebx "DARKSOULS.exe"+86AFF2: 74 24 - je DARKSOULS.exe+86B018 "DARKSOULS.exe"+86AFF4: 83 EC 08 - sub esp,08 "DARKSOULS.exe"+86AFF7: 8B CC - mov ecx,esp "DARKSOULS.exe"+86AFF9: C7 41 04 02 00 00 00 - mov [ecx+04],00000002 "DARKSOULS.exe"+86B000: C7 01 E1 2E 00 00 - mov [ecx],00002EE1 } { // ORIGINAL CODE - INJECTION POINT: "DARKSOULS.exe"+80B910 "DARKSOULS.exe"+80B8EE: 3B B7 18 01 00 00 - cmp esi,[edi+00000118] "DARKSOULS.exe"+80B8F4: 7D 08 - jnl DARKSOULS.exe+80B8FE "DARKSOULS.exe"+80B8F6: 8B 87 20 01 00 00 - mov eax,[edi+00000120] "DARKSOULS.exe"+80B8FC: EB 06 - jmp DARKSOULS.exe+80B904 "DARKSOULS.exe"+80B8FE: 8B 87 24 01 00 00 - mov eax,[edi+00000124] "DARKSOULS.exe"+80B904: 03 C3 - add eax,ebx "DARKSOULS.exe"+80B906: 85 C0 - test eax,eax "DARKSOULS.exe"+80B908: 74 4E - je DARKSOULS.exe+80B958 "DARKSOULS.exe"+80B90A: 80 78 10 00 - cmp byte ptr [eax+10],00 "DARKSOULS.exe"+80B90E: 74 48 - je DARKSOULS.exe+80B958 // ---------- INJECTING HERE ---------- "DARKSOULS.exe"+80B910: 8B 48 08 - mov ecx,[eax+08] "DARKSOULS.exe"+80B913: 89 4C 24 10 - mov [esp+10],ecx // ---------- DONE INJECTING ---------- "DARKSOULS.exe"+80B917: 8B 48 04 - mov ecx,[eax+04] "DARKSOULS.exe"+80B91A: 8B 00 - mov eax,[eax] "DARKSOULS.exe"+80B91C: E8 EF F2 FF FF - call DARKSOULS.exe+80AC10 "DARKSOULS.exe"+80B921: F3 0F 2A 4C 24 10 - cvtsi2ss xmm1,[esp+10] "DARKSOULS.exe"+80B927: F3 0F 5A C0 - cvtss2sd xmm0,xmm0 "DARKSOULS.exe"+80B92B: F3 0F 5A C9 - cvtss2sd xmm1,xmm1 "DARKSOULS.exe"+80B92F: F2 0F 59 C1 - mulsd xmm0,xmm1 "DARKSOULS.exe"+80B933: F2 0F 5A C0 - cvtsd2ss xmm0,xmm0 "DARKSOULS.exe"+80B937: 0F 2F 05 B0 73 15 01 - comiss xmm0,[DARKSOULS.exe+D573B0] "DARKSOULS.exe"+80B93E: 76 18 - jna DARKSOULS.exe+80B958 } Видео: Таблица CE: DARKSOULS.CT Изменено 15 мая, 2016 пользователем Garik66 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения