[Video]Metin2 Chat Funktion finden & nutzen

02/15/2010 16:56 schlurmann#46
Sorry habe im Moment viel um die Ohren und bin auch nicht am Coden/Reversen im Moment.

Quote:
Originally Posted by musicinstructor View Post
kanst du das projekt auch auf z.B. uploaded.to oder so haochladen? weil rapidshare ist in letzter zeit so oft down für nicht-premium user. und du hast das glaub ich mit der kostenpflichtigen version von VC++ erstellt, oder? geht das auch mit der kostenlosen?
Funktioniert auch mit der Express Version. [Only registered and activated users can see links. Click Here To Register...]

Quote:
Originally Posted by invi10 View Post
Woran kann es liegen, dass ich in OllyDbg die send-Funktion nicht finde?
Da steht dann immer in rot was von "Unrecognized identifier".
Das kann ich dir von hier leider schwer sagen. Adde mich 'mal in ICQ und ich schaue im Teamviewer nach.
02/19/2010 22:31 musicinstructor#47
@schlurmann:
das archiv ist irgenwie fehlerhaft, oder liegt es daran, dass ich winrar benutze?
02/20/2010 16:40 schlurmann#48
Quote:
Originally Posted by musicinstructor View Post
@schlurmann:
das archiv ist irgenwie fehlerhaft, oder liegt es daran, dass ich winrar benutze?
Ich nutze 7Zip zum (ent)packen. Gerad ausprobiert, funktioniert wunderbar. Liegt wohl an WinRar.
03/18/2010 22:00 LordKill#49
nice ;) habs mir angeguckt fande ich schon interessant :P
03/26/2010 16:59 musicinstructor#50
ich habe mich in letzter zeit mal mit c++ befasst und es nun auch geschafft, das projekt mit der express-version zu erstellen (als ich es schon mal versucht habe, hatte ich noch nichts mit c++ zu tun gehabt). wenn ich die dll jetzt mit winject injezieren will, klappt es nicht: beide methoden schlugen fehl. es wird vermutet, dass der prozess geschützt ist. uch habe auch schon versucht, winject als admin auszuführen oder die dll einfach mal in einen anderen prozess zu injezieren - der fehler bleibt. ich vermute, es liegt daran, dass ich windows 7 64 bit habe.
weiß jemand ne lösung?
oder muss ich etwa metin als admin starten?

€: es lag daran, dass die adresse anders war; danke an schlurmann.
04/06/2010 22:00 Shannou06#51
Hello Schulrmann!,

I am playing on Metin2.fr and when I injected you code, the game crashed straigh away and the messge was not sent..

Why?



-------------------------------------------------------------------------------------

Google:

Hallo Schulrmann!,

Ich bin auf Metin2.fr spielen und wenn ich euch eingeschleusten Code, stürzte das Spiel weg und die straigh messge wurde nicht gesendet ..

Warum?
04/09/2010 14:12 schlurmann#52
Quote:
Originally Posted by Shannou06 View Post
Hello Schulrmann!,

I am playing on Metin2.fr and when I injected you code, the game crashed straigh away and the messge was not sent..

Why?
I did this Tutorial several months ago. It's very likely the Metin2 Client has changed, so the addresses used in my example are not up to date.
05/22/2010 00:22 mydoom#53
Hi, danke für das Tutorial. Ich hab es auch mal versucht und konnte die Chatfunktion finden:

Code:
0041A8A1    57              PUSH EDI      ; Adresse zur Nachricht
0041A8A2    56              PUSH ESI      ; Größe der Nachricht
0041A8A3    8BCB            MOV ECX,EBX ; Klasseninstanz?
0041A8A5    E8 868B0D00     CALL metin2cl.004F3430   ;Funktion
und mir passend dazu mit masm eine dll geschrieben:

Code:
.386
.model flat,stdcall
option casemap:none

include windows.inc
include kernel32.inc
includelib kernel32.lib

msgbox proto :DWORD

.data
basefunc dd 004F3430h ; chatfunktion in metin2
baseptr	dd 0061BFC8h ; an dieser adresse gibts die adresse zur instanz der klasse(?)
msgtext db 'squadula',0
.data?
basepointer dd ?
.code

DllMain proc hInstance:DWORD, reason:DWORD, lpReserved:DWORD
	.if reason == DLL_PROCESS_ATTACH
		invoke msgbox, addr msgtext
	.endif
	mov eax, 1
	ret
DllMain endp

msgbox proc msg:DWORD
	mov ecx, baseptr
	mov eax, dword ptr ds:[ecx]
	mov basepointer, eax
	
	mov ecx, basepointer ; Base
	push 0 ; Nachricht
	push msg
	call basefunc
	Ret
msgbox EndP

End DllMain
So weit ich debuggen konnte werden alle Parameter korrekt übergeben, aber sobald ich diese DLL injecte werde ich disconnected :rolleyes: Weißt du eventuell woran das liegen könnte?

mfg
mydoom

________________

EDIT: Ok, sorry fürs pushen ... Ich hab den Fehler gefunden :D Ich muss die Funktion einen Level höher callen:

Code:
004144D5    52              PUSH EDX ; Chattyp
004144D6    50              PUSH EAX ; Nachricht
004144D7    E8 F4620000     CALL metin2cl.0041A7D0 ; <-- Die Funktion :D
Den Code hab ich oben mal angepasst. Vielleicht kann das ja noch jemand gebrauchen :P
mfg mydoom
05/28/2010 21:30 HardCore.1337#54
Da der Thread wieder aktiv zu sein scheint, äußere ich mich gleich auch mal dazu.

Erstmal Klasse Tutorial. :D
Sehr gut erklärt und hat bei mir auch alles wunderbar geklappt.
Nur eine (Verständnis-) Frage.
Am Anfang öffnest du mit Strg+G ein Fenster, wo du "Send" eingibst.

Was passiert da genau? Nach einem String wird ja nicht gesucht und ein Befehl (Call..) habe ich auch mit keinem Namen "Send" finden können. Ich verstehe nicht nach was da gesucht werden soll :( Meiner Meinung heißt ja expression Ausdruck oder?

Aber sonst große Klasse :)!!
06/12/2010 22:22 schlurmann#55
Quote:
Originally Posted by HardCore.1337 View Post
Da der Thread wieder aktiv zu sein scheint, äußere ich mich gleich auch mal dazu.

Erstmal Klasse Tutorial. :D
Sehr gut erklärt und hat bei mir auch alles wunderbar geklappt.
Nur eine (Verständnis-) Frage.
Am Anfang öffnest du mit Strg+G ein Fenster, wo du "Send" eingibst.

Was passiert da genau?
Damit springst du zur ersten Zeile der send-Funktion in Ws2_32.dll.
07/14/2010 12:10 ●ROBBY●#56
Supi der hat das Tutorial rausgenommen wenn man die Seite aufruft kommt:
Quote:
SURRENDER SURRENDER
Leck mich, du rotes Arschloch.
#closerequest
07/16/2010 11:49 Adroxxx#57
#closed
08/27/2011 15:51 Akorn#58
Hab jetzt auch dieses Tutorial neu hochgeladen hier der Link [Only registered and activated users can see links. Click Here To Register...]
Passwort war [Only registered and activated users can see links. Click Here To Register...]
08/28/2011 11:40 ●ROBBY●#59
Danke Akorn.
Vlt. sollte man den Anfangs-Post editieren, damit es auch jeder findet.
08/28/2011 11:41 ௵௸↬#60
Schonmal auf´s Datum geschaut?