Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 06:22

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Find Pattern ASM [C++]

Discussion on Find Pattern ASM [C++] within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jul 2014
Posts: 1
Received Thanks: 0
Question Find Pattern ASM [C++]

Hallo, ich versuche momentan einen ASM Code mit Find Pattern auszulesen.
Bisher konnte ich nur die Adresse zum z.B. call oder mov auslesen, was aber nicht mein Ziel ist.
Ich will entweder den kompletten ASM Code mit Find Pattern auslesen oder mit einer anderen Methode mir den ASM Code der mit Find Pattern ausgelesenen Adresse ausgeben lassen.

Hier nochmal der C++ Source Code wie ich das ganze momentan für die Adresse, die zum asm code führt regle:
PHP Code:
#include <iostream>
#include <Windows.h>
#include <TlHelp32.h>
#include <Psapi.h>

bool Compare(const BYTEpData, const BYTEbMask, const charszMask)
{
 for (; *
szMask; ++szMask, ++pData, ++bMask)
 if (*
szMask == 'x' && *pData != *bMask)   return 0;
 return (*
szMask) == NULL;
}

DWORD Pattern(DWORD dwAddressDWORD dwLenBYTE *bMaskchar szMask)
{
 for (
DWORD i 0i<dwLeni++)
 if (
Compare((BYTE*)(dwAddress i), bMaskszMask))  return (DWORD)(dwAddress i);
 return 
0;
}

DWORD AddressOne;

DWORD ClassAddy = *(DWORD*)0x61C028;
DWORD PickCall = *(DWORD*)0x61C029;

void GetAddresses(void)
{
 
AddressOne Pattern((DWORD)GetModuleHandleA("metin2client.exe"), 0x22d000, (PBYTE)"\x8B\x0D\x08\x0A\x6C\x00\x00""xxxxx??");
}

BOOL WINAPI DllMain(
 
HINSTANCE hinstDLL,
 
DWORD fdwReason,
 
LPVOID lpReserved)
{
 switch (
fdwReason)
 {
 case 
DLL_PROCESS_ATTACH:
  
GetAddresses();
  break;

 }

P.S: Falls im Code irgendetwas falsch ist, ihr braucht es nicht korrigieren.
Habe das mal, da ich nicht auf meinen Windows PC bin ungetestet geschrieben.
Es wäre sehr nett, falls mir jemand helfen kann.

Danke und Freundliche Grüße.
bycal0x is offline  
Old 07/30/2014, 00:15   #2
 
​Tension's Avatar
 
elite*gold: 110
Join Date: Jun 2013
Posts: 599
Received Thanks: 510
Find Pattern liest dir nichts aus es sucht lediglich nach den angegebenen Bytes im Speicher und gibt dir die Adresse wieder.

Was meinst du mit "kompletten ASM Code"? Du kannst einen Buffer erstellen und dort die Bytes speichern ( sind dann natürlich nicht in ASM übersetzt ).
​Tension is offline  
Old 07/30/2014, 02:16   #3
 
Crossside's Avatar
 
elite*gold: 0
Join Date: Dec 2013
Posts: 2,095
Received Thanks: 506
"Code auslesen"?!
Find-Pattern nutzt man um zb bestimmte Funktionen zu finden ohne spezielle Offsets usw, um zb bei Updates nicht ständig die offsets usw rauszusuchen..
Das ist nicht dafür gedacht irgendwas auszulesen an Daten im Speicher.. das ist lediglich zum lokalisieren von bestimmten Stellen im Speicher (vergleichen anhand pattern, richtige stelle gefunden = ort zurückgeben wo gefunden im speicher).

Quote:
P.S: Falls im Code irgendetwas falsch ist, ihr braucht es nicht korrigieren.
Habe das mal, da ich nicht auf meinen Windows PC bin ungetestet geschrieben.
Es wäre sehr nett, falls mir jemand helfen kann.
hört sich für mich eher nach

Quote:
Ich bin ein totaler C++ Anfänger und habe mir Code zusammen Copy Pasted, und ich weiß nicht warum es nicht funktioniert wie ich es mir vorstelle.
an.
Ich bezweifle das du eben mal so aus dem Kopf den oben genannten Code exakt rausschreiben kannst ausm Gedächnis.. allein die Patternsearch Funktion ist schon etwas aufwändig, vorallem wenn man sie auswendig rausschreiben würde..
Glaube ich dir nicht, sorry.

..nur schei*e das ichs zu spät gesehen hab das du banned wurdest.. hätte mir den text sparen können.
Crossside is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
[C++] Find Pattern Tutorial
04/07/2015 - Coding Tutorials - 17 Replies
Find Pattern Tutorial Find Pattern wird dafür genutzt, bestimmte Funktionsadressen aus einem Prozess auszulesen. Dazu wird der Byte-OpCode einer EXE, DLL, BIN oder dergleichen durchlaufen und nach einem vordefiniertem Byte-Muster durchsucht. Am Anfang etwas Theorie: Da die Find Pattern Funktion einen bestimmten Suchbereich erwartet muss dieser zuvor ausgelesen werden. Normalerweise wird immer von der Modulbase bis zum Code-Ende alles durchsucht. Dazu braucht man den Anfangswert (Base)...
Find Pattern
10/10/2013 - C/C++ - 6 Replies
Hey, komm nach Tagen langen herum googlen immer noch nicht mit Find Pattern zurecht. 1. Frage Was auf dem Screen ist alles wichtig dafür, bzw. fehlt da noch etwas relevantes? http://i.epvpimg.com/RJFTb.jpg 2. Frage Mein Code sieht bisher so aus, was fehlt dort damit ich den Wert meiner HP auslesen kann, bzw. kann ich überhaupt den Code mit den Infos ausn Screen vollenden? #include "stdafx.h"
Addylogger Pattern... How i can find it?
08/11/2012 - WarRock - 0 Replies
Hey dudes, How i can find Patterns in OllyDBG? can someone explain that to me, please? I already have a basic knowledge in OllyDBG. Thank u :) €: Or someone can give me a tut about that? I can´t find any tuts...
find pattern funktion.. hilfe
03/15/2009 - General Coding - 4 Replies
ich brauch mal etwas hilfe. ich hab irgendwo ein denkfehler oder der code is total fürn arsch. vlt hab ihr ja bessere funktionen, würd mich freuen wenn ihr eine hier posten könntet. DWORD dwFindPattern(DWORD dwStartAddress, DWORD dwEndAddress, BYTE *bMask, BYTE *bMask_O){ BYTE ScanCode_A = {}; /* while(dwStartAddress < dwEndAddress){ ReadProcessMemory(hGW, (LPCVOID)dwStartAddress, &ScanCode_A, 1, 0); if(ScanCode_A == bMask){ ReadProcessMemory(hGW, (LPCVOID)(dwStartAddress +...



All times are GMT +1. The time now is 06:23.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.