06-15-2012, 11:29 PM
Так как у меня 17 числа ДР и я оч добрый - держите исходники билдера геодаты под ГоД (точнее его основную часть)
Всё что надо - откомпилить код и кинуть получивший файл в папку с л2.
ВНИМАНИЕ! клиент должен быть 415 протокола
И еще !! это только часть билдера! Но рабочая) И решает все заморочки с 6-7 NOPами
Всё что надо - откомпилить код и кинуть получивший файл в папку с л2.
ВНИМАНИЕ! клиент должен быть 415 протокола
И еще !! это только часть билдера! Но рабочая) И решает все заморочки с 6-7 NOPами
Код:
;-------------------------------------------------------------------------------------
; ALF Software (C) 2012. Goddess of Destrucion 415p BuildZone fixer
; icq: 3102984
;___:201D7398 mov eax, [ebp+64h+arg_0]
;___:201D739B mov [ebx+8], eax
;___:201D739E mov ecx, [ebp+64h+arg_8]
;___:201D73A1 mov [ebx+4], ecx TO ESI
;-------------------------------------------------------------------------------------
format PE GUI 4.0 DLL
entry DllEntryPoint
include 'win32a.inc'
include 'MACRO/IF.INC'
;-------------------------------------------------------------------------------------
section '.data' data readable writeable
n_engine db "engine.dll",0
n_BuildWorldStructure db '?buildWorldStructure@FWorldBuilder@@QAEHPAVULevel@@PA_WPAVUViewport@@HH@Z',0
p_engine dd ?
p_BuildWorldStructure dd ?
;-------------------------------------------------------------------------------------
section '.text' code readable executable
proc DllEntryPoint hinstDLL,fdwReason,lpvReserved
mov eax, [fdwReason]
.if eax = DLL_PROCESS_ATTACH
call LoadBaseHook
invoke DisableThreadLibraryCalls, [hinstDLL]
.endif
mov eax,TRUE
ret
endp
;-------------------------------------------------------------------------------------
proc LoadBaseHook
pushad
invoke GetModuleHandleA, n_engine
mov [p_engine], eax
invoke GetProcAddress, [p_engine], n_BuildWorldStructure
mov [p_BuildWorldStructure], eax
add eax, 72h ; Смещение относительно n_BuildWorldStructure
mov byte [eax], 73h ; Было mov ****, ecx. СТало mov ***, esi. 0x73 - ESI.
popad
ret
endp
;-------------------------------------------------------------------------------------
proc DirectXDeviceDriverSetupA
xor eax, eax
ret
endp
proc DirectXDeviceDriverSetupW
xor eax, eax
ret
endp
proc DirectXRegisterApplicationA
xor eax, eax
ret
endp
proc DirectXRegisterApplicationW
xor eax, eax
ret
endp
proc DirectXSetupA
xor eax, eax
ret
endp
proc DirectXSetupIsJapan
xor eax, eax
ret
endp
proc DirectXSetupIsJapanNec
xor eax, eax
ret
endp
proc DirectXSetupW
xor eax, eax
ret
endp
proc DirectXUnRegisterApplication
xor eax, eax
ret
endp
proc DirectXSetupSetCallback
xor eax, eax
ret
endp
proc DirectXSetupGetVersion
xor eax, eax
ret
endp
proc DirectXSetupCallback
xor eax, eax
ret
endp
proc DirectXSetupGetFileVersion
xor eax, eax
ret
endp
proc DirectXLoadString
xor eax, eax
ret
endp
proc DirectXSetupIsEng
xor eax, eax
ret
endp
proc DirectXSetupShowEULA
xor eax, eax
ret
endp
proc DirectXSetupGetEULAA
xor eax, eax
ret
endp
proc DirectXSetupGetEULAW
xor eax, eax
ret
endp
;-------------------------------------------------------------------------------------
section '.idata' import data readable writeable
library kernel,'KERNEL32.DLL'
import kernel,\
DisableThreadLibraryCalls, 'DisableThreadLibraryCalls',\
GetModuleHandleA, 'GetModuleHandleA',\
GetProcAddress, 'GetProcAddress'
;-------------------------------------------------------------------------------------
section '.edata' export data readable
export 'DSETUP.DLL',\
DllEntryPoint, 'DllEntryPoint',\
DirectXDeviceDriverSetupA,'DirectXDeviceDriverSetupA',\
DirectXDeviceDriverSetupW,'DirectXDeviceDriverSetupW',\
DirectXRegisterApplicationA,'DirectXRegisterApplicationA',\
DirectXRegisterApplicationW,'DirectXRegisterApplicationW',\
DirectXSetupA,'DirectXSetupA',\
DirectXSetupIsJapan,'DirectXSetupIsJapan',\
DirectXSetupIsJapanNec,'DirectXSetupIsJapanNec',\
DirectXSetupW,'DirectXSetupW',\
DirectXUnRegisterApplication,'DirectXUnRegisterApplication',\
DirectXSetupSetCallback,'DirectXSetupSetCallback',\
DirectXSetupGetVersion,'DirectXSetupGetVersion',\
DirectXSetupCallback,'DirectXSetupCallback',\
DirectXSetupGetFileVersion,'DirectXSetupGetFileVersion',\
DirectXLoadString,'DirectXLoadString',\
DirectXSetupIsEng,'DirectXSetupIsEng',\
DirectXSetupShowEULA,'DirectXSetupShowEULA',\
DirectXSetupGetEULAA,'DirectXSetupGetEULAA',\
DirectXSetupGetEULAW,'DirectXSetupGetEULAW'
;-------------------------------------------------------------------------------------
section '.reloc' fixups data discardable