Показать сообщение отдельно
Непрочитано 15.06.2012, 23:29   #1
Аватар для ALF.
Герой

Автор темы (Топик Стартер) [geo] Шара от меня

Так как у меня 17 числа ДР и я оч добрый - держите исходники билдера геодаты под ГоД (точнее его основную часть)

Всё что надо - откомпилить код и кинуть получивший файл в папку с л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
ALF. вне форума Отправить сообщение для ALF. с помощью ICQ Отправить сообщение для ALF. с помощью Skype™ Ответить с цитированием
Сказали спасибо: