• Bem vindo à nossa comunidade - Quer se juntar ao resto dos nossos membros? Registre-se*Registros aprovados pela adminitração

[Tutorial] Offsets de Main

lucasxdd

Lord XPZ
offset de texturas ####

Open OllyDBG

Press ¨Ctrl+G¨ Paste The offset in Red and select ¨Ok¨

Presiona ¨Crtl+G¨copia y pega las offsets que estan en ojo y le das ¨Ok¨

Y luego cambias el valor decimal, ejemplo:

005E18E5 |> 837D F8 11 CMP DWORD PTR SS:[EBP-8],11 <<<<<Antes (Before)

005E18E5 |> 837D F8 11 CMP DWORD PTR SS:[EBP-8],50 <<<<<Despues (After)

Main 1,06A+

(.BMD´s Limits)

005E18E5 |> 837D F8 11 CMP DWORD PTR SS:[EBP-8],11 <<<<<Sword

005E19B8 |> 837D F8 09 CMP DWORD PTR SS:[EBP-8],9 <<<<<Axe

005E19F5 |> 837D F8 07 CMP DWORD PTR SS:[EBP-8],7 <<<<<Mace

005E1A4B |> 837D F8 05 CMP DWORD PTR SS:[EBP-8],5 <<<<<Mace(other)

005E1AA1 |> 837D F8 0A CMP DWORD PTR SS:[EBP-8],0A <<<<<Spear

005E1AF7 |> 837D F8 0F CMP DWORD PTR SS:[EBP-8],0F <<<<<Shield

005E1B66 |> 837D F8 09 CMP DWORD PTR SS:[EBP-8],9 <<<<<Staff

005E1BEE |> 837D F8 14 CMP DWORD PTR SS:[EBP-8],14 <<<<<Staff(other)

005E1C2B |> 837D F8 07 CMP DWORD PTR SS:[EBP-8],7 <<<<<Bow

005E1C68 |> 837D F8 07 CMP DWORD PTR SS:[EBP-8],7 <<<<<CrossBow

005E2A18 |> 837D F8 03 CMP DWORD PTR SS:[EBP-8],3 <<<<<Wing

005E2A54 |> 837D F8 04 CMP DWORD PTR SS:[EBP-8],4 <<<<<Wing

005E2A90 |> 837D F8 04 CMP DWORD PTR SS:[EBP-8],4 <<<<<Wing

005E2AE5 |> 837D F8 2B CMP DWORD PTR SS:[EBP-8],2B <<<<<Wing

(Textures Limits) Offsets de Limite de texturas:

005E397D |> 837D F8 11 CMP DWORD PTR SS:[EBP-8],11 <<<<<Sword

005E3B1B |> 837D F8 14 CMP DWORD PTR SS:[EBP-8],14 <<<<<Axe

005E3B58 |> 837D F8 1C CMP DWORD PTR SS:[EBP-8],1C <<<<<Mace

005E3B95 |> 837D F8 05 CMP DWORD PTR SS:[EBP-8],5 <<<<<Mace(other)

005E3BD1 |> 837D F8 02 CMP DWORD PTR SS:[EBP-8],2 <<<<<Spear

005E3C2C |> 837D F8 15 CMP DWORD PTR SS:[EBP-8],15 <<<<<Shield

005E3C69 |> 837D F8 04 CMP DWORD PTR SS:[EBP-8],4 <<<<<Staff

005E3D95 |> 837D F8 13 CMP DWORD PTR SS:[EBP-8],13 <<<<<Staff(other)

005E3EFE |> 837D F8 03 CMP DWORD PTR SS:[EBP-8],3 <<<<<Bow

005E3F3B |> 837D F8 02 CMP DWORD PTR SS:[EBP-8],2 <<<<<CrosssBow

005E3F77 |> 837D F8 06 CMP DWORD PTR SS:[EBP-8],6 <<<<<Wings(not tested)

005E3FB4 |> 837D F8 02 CMP DWORD PTR SS:[EBP-8],2 <<<<<Unknowed(desconocido)

Main 1,05T+

(Textures Limits) Offsets de Limite de texturas:

005CDEC4 |> 837D FC 11 CMP DWORD PTR SS:[EBP-4],11 <<<<<Sword

005CE062 |> 837D FC 14 CMP DWORD PTR SS:[EBP-4],14 <<<<<Axe

005CE09F |> 837D FC 1C CMP DWORD PTR SS:[EBP-4],1C <<<<<Mace

005CE0DC |> 837D FC 05 CMP DWORD PTR SS:[EBP-4],5 <<<<<Mace(other)

005CE118 |> 837D FC 02 CMP DWORD PTR SS:[EBP-4],2 <<<<<Spear

005CE173 |> 837D FC 15 CMP DWORD PTR SS:[EBP-4],15 <<<<<Shield

005CE1B0 |> 837D FC 04 CMP DWORD PTR SS:[EBP-4],4 <<<<<Staff

005CE2DC |> 837D FC 13 CMP DWORD PTR SS:[EBP-4],13 <<<<<Staff(other)

005CE445 |> 837D FC 03 CMP DWORD PTR SS:[EBP-4],3 <<<<<Bow

005CE482 |> 837D FC 02 CMP DWORD PTR SS:[EBP-4],2 <<<<<CrosssBow

005CE4BE |> 837D FC 06 CMP DWORD PTR SS:[EBP-4],6 <<<<<Wings(not tested)

005CE4FB |> 837D FC 02 CMP DWORD PTR SS:[EBP-4],2 <<<<<Unknowed(desconocido)

Main 1,05x+

(Textures Limits) Offsets de Limite de texturas:

005CDD64 |> 837D FC 11 CMP DWORD PTR SS:[EBP-4],11 <<<<<Sword

005CDF02 |> 837D FC 14 CMP DWORD PTR SS:[EBP-4],14 <<<<<Axe

005CDF3F |> 837D FC 1C CMP DWORD PTR SS:[EBP-4],1C <<<<<Mace

005CDF7C |> 837D FC 05 CMP DWORD PTR SS:[EBP-4],5 <<<<<Mace(other)

005CDFB8 |> 837D FC 02 CMP DWORD PTR SS:[EBP-4],2 <<<<<Spear

005CE013 |> 837D FC 15 CMP DWORD PTR SS:[EBP-4],15 <<<<<Shield

005CE050 |> 837D FC 04 CMP DWORD PTR SS:[EBP-4],4 <<<<<Staff

005CE17C |> 837D FC 13 CMP DWORD PTR SS:[EBP-4],13 <<<<<Staff(other)

005CE2E5 |> 837D FC 03 CMP DWORD PTR SS:[EBP-4],3 <<<<<Bow

005CE322 |> 837D FC 02 CMP DWORD PTR SS:[EBP-4],2 <<<<<CrosssBow

005CE35E |> 837D FC 06 CMP DWORD PTR SS:[EBP-4],6 <<<<<Wings(not tested)

005CE39B |> 837D FC 02 CMP DWORD PTR SS:[EBP-4],2 <<<<<Unknowed(desconocido)

Main 1,05k+

Offset Para 1,05k+.txt

cam 3d

if(mgfunc.mainver.Find("107N")==0)

{

//ver.1.07N Main.exe Offsets

Camera_Zoom = (float*) 0x4A7839; //

Camera_GlClip = (float*) 0x4A7A24; //

Camera_RotY = (float*) 0x8E198C; //

Camera_RotZ = (float*) 0x818BB88; //

Camera_PosZ = (float*) 0x8E1364; //

Camera_ClipX = (float*) 0x8E227C; //

Camera_ClipY = (float*) 0x5DBFD9; //

}

else if(mgfunc.mainver.Find("107x")==0)

{

//ver.1.07x Main.exe Offsets

Camera_Zoom = (float*) 0x623159;

Camera_GlClip = (float*) 0x623344;

Camera_RotY = (float*) 0x8E02EC;

Camera_RotZ = (float*) 0x8187FA8;

Camera_PosZ = (float*) 0x8DF35C;

Camera_ClipX = (float*) 0x8E01B4;

Camera_ClipY = (float*) 0x5CC759;

}

else if(mgfunc.mainver.Find("107h")==0)

{

//ver.1.07h Main.exe Offsets

Camera_Zoom = (float*) 0x61E7F9;

Camera_GlClip = (float*) 0x61E9E4;

Camera_RotY = (float*) 0x8D22CC;

Camera_RotZ = (float*) 0x81772B8;

Camera_PosZ = (float*) 0x8D1350;

Camera_ClipX = (float*) 0x8D2194;

Camera_ClipY = (float*) 0x5C8829;

}

else if(mgfunc.mainver.Find("104j")==0)

{

//ver.1.04j Main.exe Offsets

Camera_GlClip = (float*) 0x6364ad; ///

Camera_Zoom = (float*) 0x660390; ///

Camera_RotY = (float*) 0x758A30; ///

Camera_RotZ = (float*) 0x7AFE994; ///

Camera_PosZ = (float*) 0x757994; ///

Camera_ClipX = (float*) 0x7588B4; ///

Camera_ClipY = (float*) 0x608347; ///

}

else if(mgfunc.mainver.Find("103kJ")==0)

{

//ver.1.03k japan Main.exe Offsets

Camera_GlClip = (float*) 0x6003d4; ///

Camera_Zoom = (float*) 0x6001E9; ///

Camera_RotY = (float*) 0x88BC78; ///

Camera_RotZ = (float*) 0x809F150; ///

Camera_PosZ = (float*) 0x88ACFC; ///

Camera_ClipX = (float*) 0x88BB18; ///

Camera_ClipY = (float*) 0x5AB4CD; ///

}

else if(mgfunc.mainver.Find("105D")==0)

{

//ver.1.05D+ Main.exe Offsets

Camera_Zoom = (float*) 0x5EB2E9; //

Camera_GlClip = (float*) 0x5EB4D4; //

Camera_RotY = (float*) 0x814BE8; //

Camera_RotZ = (float*) 0x7FE025C; //

Camera_PosZ = (float*) 0x813CBC; //

Camera_ClipX = (float*) 0x814AA0; //

Camera_ClipY = (float*) 0x59DAA4; //

}

else if(mgfunc.mainver.Find("106D")==0)

{

Camera_Zoom = (float*) 0x606879; //

Camera_GlClip = (float*) 0x606A64; //

Camera_RotY = (float*) 0x87DEB4; //

Camera_RotZ = (float*) 0x8117438; //

Camera_PosZ = (float*) 0x87CF5C; //

Camera_ClipX = (float*) 0x87DD84; //

Camera_ClipY = (float*) 0x5B53D9; //

}

else if(mgfunc.mainver.Find("106B")==0)

{

//ver.1.06B+ Main.exe Offsets

Camera_Zoom = (float*) 0x606849;

Camera_GlClip = (float*) 0x606A34;

Camera_RotY = (float*) 0x87DEA4;

Camera_RotZ = (float*) 0x8117398;

Camera_PosZ = (float*) 0x87CF4C;

Camera_ClipX = (float*) 0x87DD74;

Camera_ClipY = (float*) 0x5B53D9;

}

else if(mgfunc.mainver.Find("105S")==0)

{

// ver.1.05S Main.exe Offsets

Camera_Zoom = (float*) 0x5EFFF9;

Camera_GlClip = (float*) 0x5F01E4;

Camera_RotY = (float*) 0x824C28;

Camera_RotZ = (float*) 0x7FF263C;

Camera_PosZ = (float*) 0x823CBC;

Camera_ClipX = (float*) 0x824AD8;

Camera_ClipY = (float*) 0x5A0E1D;

}

else if(mgfunc.mainver.Find("105T")==0)

{

// ver.1.05T Main.exe Offsets

Camera_Zoom = (float*) 0x5EFDE9; //

Camera_GlClip = (float*) 0x5EFFD4; //

Camera_RotY = (float*) 0x824C28; //

Camera_RotZ = (float*) 0x7FF262C; //

Camera_PosZ = (float*) 0x823CBC; //

Camera_ClipX = (float*) 0x824AD8; //

Camera_ClipY = (float*) 0x5A0BDD; //

}

else if(mgfunc.mainver.Find("105H")==0)

{

//ver.1.05H Main.exe Offsets

Camera_Zoom = (float*) 0x5EB179; //

Camera_GlClip = (float*) 0x5EB364; //

Camera_RotY = (float*) 0x814BE8; //

Camera_RotZ = (float*) 0x7FE0254; //

Camera_PosZ = (float*) 0x813CBC; //

Camera_ClipX = (float*) 0x814AA0; //

Camera_ClipY = (float*) 0x59D934; //

}

else if(mgfunc.mainver.Find("105X")==0)

{

// ver.1.05X+ Main.exe Offsets

Camera_Zoom = (float*) 0x5EFEC9; //

Camera_GlClip = (float*) 0x5F00B4; //

Camera_RotY = (float*) 0x825C28;//

Camera_RotZ = (float*) 0x7FF35FC; //

Camera_PosZ = (float*) 0x824CBC; //

Camera_ClipX = (float*) 0x825AD8;//

Camera_ClipY = (float*) 0x5A0C7D;//

}

else if(mgfunc.mainver.Find("102h")==0)

{

// ver.1.02h Vietnam

Camera_Zoom = (float*) 0x6A1910; //

Camera_GlClip = (float*) 0x67FE73; //

Camera_RotY = (float*) 0x7198A8; //

Camera_RotZ = (float*) 0x8058CE0;

Camera_PosZ = (float*) 0x717718; //

Camera_ClipX = (float*) 0x7197C4; //

Camera_ClipY = (float*) 0x653D77; //

}

else if(mgfunc.mainver.Find("102c")==0)

{

// ver.1.02c GMO

Camera_GlClip = (float*) 0x6b2373;

Camera_Zoom = (float*) 0x6b20d0;

Camera_RotY = (float*) 0x7858b8;

Camera_RotZ = (float*) 0x7E80758;

Camera_PosZ = (float*) 0x783720;

Camera_ClipX = (float*) 0x7857d4;

Camera_ClipY = (float*) 0x65f837;

}

fix exdb

Veja abaixo como ira ficar.

0046FB38 55 50 44 41|54 45 20 47|75 69 6C 64|20 53 45 54| UPDATE Guild SET

0046FB48 20 47 5F 4E|6F 74 69 63|65 3D 27 25|73 27 20 57| G_Notice='%s' W

0046FB58 48 45 52 45|20 47 5F 4E|61 6D 65 3D|27 25 73 27| HERE G_Name='%s'

Para

0046FB38 55 50 44 41|54 45 20 47|75 69 6C 64|20 53 45 54| UPDATE Guild SET

0046FB48 20 47 5F 4E|6F 74 69 63|65 3D 27 25|73 27 20 57| G_Notice='%d' W

0046FB58 48 45 52 45|20 47 5F 4E|61 6D 65 3D|27 25 73 27| HERE G_Name='%s'

HOOK DE DLLS COM FUNÇÃO :

Código:

PUSH Offset com o nome da .dll<antihack.dll>

CALL [LoadlibraryA]

OR EAX,EAX

JE 0 Ou qualquer offset vazio bem longe

PUSH Offset com o nome da Função<Main>

PUSH EAX

CALL [GetProcAddress]

CALL EAX

JMP ENTRY POINT

HOOK DE DLLS SEM FUNÇÃO :

Código:

PUSH <Offset Com o Nome da DLL>

CALL [ LoadLibraryA ]

JMP ENTRYPOINT

dll gamedefender

Hookeo de GD.dll gente con conocimiento

bueno, yo uso este metodo de hockeo, en mi caso yo lo puse de la siguiente manera q me funcionara.

Para empezar recordemos buscar offsets libres (DB 00)

*Un OFFSET para el ASCII de GameDefender.dll

*Un OFFSET para el ASCII de Error

*Un OFFSET para el ASCII de Dll no encontrada!

INT3

INT3

PUSH 0 *ESTO ES EN CASO DE QUE QUIERAN BORRAR LA DLL, EL MAIN TIRARA ERROR/ ESTE ES EL OFFSET 00888FB4 EN MI CASO

PUSH *OFFSET DEL ASCII "ERROR"

PUSH *OFFSET DEL ASCII "DLL NO ENCONTRADA!"

PUSH 0

CALL DWORD PTR DS:[8894E0] *MessageBoxA

PUSH 0

CALL DWORD PTR DS:[889220] *ExitProcess

INT3

INT3

PUSH *OFFSET DEL ASCII "GameDefender.dll" /Despues de todo el hookeo, este sera el nuevo entrypoint

CALL DWORD PTR DS:[889218] *LOAD LIBRARY A

OR EAX,EAX

JE SHORT 00888FB4 *OFFSET DONDE ASOMARA EL MENSAJE EN CASO DE NO ENCONTRAR LA DLL

JMP ENTRYPOINT ORIGINAL - cuando abres con ollydbg el main, la primera linea que se inicia ya seleccionada por el ollydbg es el entrypoint, esto es en caso que no hayas hecho ningun otro hook y no hayas cambiado el entrypoint original.

Luego con LordPE u otro programa similar cambiar el Entrypoint Original al de -->PUSH *OFFSET DEL ASCII "GameDefender.dll"

OBS: sao so textos que eu guardo.

mais podem ser importante para alguem.

creditos sao diversos.

meu apenas de ter postado.

agradecer nao doi o dedo.
 
Topo Bottom