GG修改器破解版下载地址:https://ghb2023zs.bj.bcebos.com/gg/xgq/ggxgq?GGXGQ
大家好,今天小编为大家分享关于gg修改器修改游戏基址_gg修改器 基址的内容,赶快来一起来看看吧。
在Windows下所谓PE文件即Portable Executable,意为可移植的可执行的文件。常见的.EXE、.DLL、.OCX、.SYS、.COM都是PE文件。PE文件有一个共同特点:前两个字节为4D 5A(MZ)。如果一个文件前两个字节不是4D 5A则其肯定不是可执行文件。比如用16进制文本编辑器打开一个”.xls”文件其前两个字节为:0XD0 0XCF;打开一个”.pdf”其前两个字节为:0X25 0X50。
PE文件结构:DOS头+PE头+节表+.data/.rdata/.text。而今天我们就来具体了解一下PE文件的DOS头和PE头的结构成员与部分成员的作用。注意:一个exe文件本身是一个PE文件,但是由于包含dll库,所以一个exe文件也是许多PE文件组成的(包含多个dll)一个PE文件
1、DOS头:共40H(64字节)
DOS头中声明用的寄存器(我们可以看到e_ss、e_sp、e_ip、e_cs还是16位的寄存器),所以在32位/64为系统中用到的只有两个成员了(第一个和最后一个):
①e_magic:判断一个文件是不是PE文件;
②e_lfanew:相对于文件首的偏移量,用于找到PE头;
2、PE头
PE头分为标准PE头和可选PE头,其同为NT结构的成员:
//NT头
//pNTHeader = dosHeader + dosHeader->e_lfanew;
struct _IMAGE_NT_HEADERS{
0x00 DWORD Signature; //PE文件标识:ASCII的”PE ”
0x04 _IMAGE_FILE_HEADER FileHeader;
0x18 _IMAGE_OPTIONAL_HEADER OptionalHeader;
};
根据DOS头的e_lfanew成员我们就可以找到NT头,NT头的第一个成员是”PE ”(0X50 0X45 0X00 0X00四字节的签名,可以在上图00000100H地址处观察),后两个成员则分别是标准PE头(_IMAGE_FILE_HEADER)和可选PE头(_IMAGE_OPTIONAL_HEADER)。
3、几个重点的数据成员
(1)、文件对齐(FileAlignment)和内存对齐(SectionAlignment):
一个PE文件加载进内存中可能大于在硬盘上的大小,并且无论是在内存中还是硬盘上,都是是分块管理(分节),一块和一块存储空间之间是空隙。在硬盘上空隙有可能小于内存中空隙;在内存中空隙较大(相较于硬盘)。而存在间隙的原因则是分块管理。
分块的一个原因是节省硬盘:比如notepad.exe,由于是早期的程序,当时硬盘容量比较小,编译器在生成可执行文件时,不仅要考虑效率问题使得内存对齐/文件对齐,还需要设计成节省硬盘空间的结构。所以这种结构遵循的对齐原则:内存对齐(1000H)和硬盘对齐(200H),对齐的补充数据(0X0000)便是间隙。硬盘的对齐值较小,补充间隙自然小,因此同一个可执行程序在内存中可能比在硬盘上大。但是现如今的硬盘空间更大,所以编译器生成的可执行程序在硬盘上与内存中对齐方式都是1000H。统一对齐为1000H的目的依旧是提高效率。
而分块的另一个目的是节省内存空间,比如同时在电脑上运行登录多个QQ账号,就需要运行多次QQ可执行程序。而代码段为只读数据需要一份即可,数据段则需要为每个账号均开辟一份,,多个QQ程序共享代码块,单独使用数据块,这样就节省了多份代码块的内存。(这些块是使用结构体来维护的,分块即创建结构体)。
(2)、镜像地址/基址ImageBase的作用:
FileBuffer是磁盘上.exe文件在内存中的一份拷贝,但是FileBuffer无法直接在内存中运行,必须经过PE loader(装载器)装载以后成为ImageBuffer。ImageBuffer是FileBuffer的”拉伸”。即”.exe–>FileBuffer–>ImageBuffer”
①.exe首地址(基址)为0
②FileBuffer首地址也为0
③ImageBuffer首地址为ImageBase
④而真正的程序入口地址是:ImageBase + AddressOfEntryPoint(OEP)
一个exe文件默认镜像地址为400000H(有可能不是,总之有一个默认值),如果一个exe文件中用到了多个dll,而dll文件作为一个PE文件,其默认镜像地址也均是400000H,操作系统不会修改exe的镜像基址。因为.exe先被加载,在.exe中才加载的dll库,由于400000已经被.exe占用,所以装载器会修改dll的镜像基址。而采用ImageBase + OEP的目的也就是:采用偏移地址的方式可以更方便地修改基址,使得任何一个dll文件基址修改后程序依旧不会出错。比如:dll和exe基址有冲突,本只需要将冲突的.dll的文件基址修改为600000H(假设是编译器为其分配的是600000H);如果不采用”基址+偏移地址”的方式,而采用绝对地址,那么要修改的就不是一个基址为600000H了,而是dll中所有的地址统一加上200000H(因为原来默认为400000H)。
1、 寄存器
顾名思义,寄存器就是暂时存储数据的地方,寄存器被设计在CPU内部,对于一个汇编程序员来说,CPU中最主要的部分就是寄存器了。寄存器是程序员能通过指令读写的部件,程序员通过改变寄存器的值间接的控制CPU
eax:拓展累加寄存器;ecx:循环计数器;edx:数据寄存器;ebx:基址寄存器;
2、堆栈
堆栈是连续的内存单元,存取方式遵循”先进后出”原则,栈是一种特殊的存储方式,特殊在最先进入这个空间的数据却是最后出去的。但是堆和栈不是同一个概念,栈一般由编译器自动分配释放,存储函数的参数值、局部变量值等;而堆,一般由程序员分配释放,程序结束时可能由OS(系统)回收。
esp:栈顶;ebp:栈底;esi:拓展目地指针;edi:拓展目地指针;eip:指令指针。
3、汇编指令
汇编指令有5类:1.数据传输指令:mov2.逻辑计算指令:add3.串操作指令:movs4.控制转移指令:jmp5.处理器控制指令:nop
其中1,2,4类指令对免杀有用。
4、常用免杀汇编指令mov ebp,9:传送指令push ebp :进栈指令pop ebp :出栈指令add esp,8 :加法指令sub esp,8 :减法指令inc ecx :增量指令dec ecx :减量指令jmp 00000001 :无条件跳转指令call 00000001 :调用指令
xchg 交换指令
pushad 压栈8个寄存器
popad 弹出8个寄存器(先进后出)
A开头:
add 改adc
ADD 改ADC
ADD 1 改 sub -1
add dword ptr ss:[ebp-130],edx ———adc dword ptr ss:[ebp-130],edx
ADD [EAX],CH—————————-ADD [EAX],DH
ADD [EAX],BH 0038 ———————-ADD [EAX+40],AL 0040 40
ADD [EAX+EAX*2+46],AL ——————ADD [EAX+EAX*2+46],CL
ADD [EAX+40],DL 0050 40 —————-0058 40 ADD [EAX+40],DL
ADD AH,CH 00EC ————————-00F4 ADD AH,DH
add dword ptr ss:[ebp-130],edx ——– adc dword ptr ss:[ebp-130],edx
C开头:
CMP 改SUB
call 复件_(4).004CF607 —————– push 复件_(4).004CF607
CMP DWORD PTR DS:[100170A4],0 ————-sub DWORD PTR DS:[100170A4],0
CALL ———看到了CALL跟随进去看NOP就可以把CALL的地址该成NOP
方法2–看下附近有没有MOV修该成NOP看下可以免杀不。可以的话该XOR
方法3–看附近jnz跳转该下跳转的地址/可免杀不/
CALL EAX |CALL EBX
比效指令 CMP:看下是个比效指令 在看下JNZ条件转移指令
就是说CMP比效正确就跳那我们可以把CMP用NOP掉在把JNZ该成JMP
不进行CMP比效
CMP ESI,1
call 改 jmp
D开头:
DAA 组合的十进制加法调整指令 ——–DAS 减法的十进制调整.
J开头:
JE 改 JNB
JNZ 改 JNL
jnz 改 JB
JE 改 JNA
je 改 jb
jnz 改 jg
js 改 jp
je 改 jle
jnz 改 jle
je 改 jge
JE 改 jnz
JE 改 JB
JNS 改 POP ECX
JNS 改 jnc-jnb
JNB 改 JGE
jnb short fsg2_0.0040015D—————-ja short fsg2_0.0040015D
JMP NEAR [1071c]———————JMP NEAR [1071B]
jnz–je-jmp修改中要看下跳的地址是不是很重要说明[1]
JNZ 00874E85–MOV EAX,88B6D0 可以是该成JE 00874E85–MOV EAX,88B6D0
L开头:
LEA EBP,[ESP+10] 改 LEA EBP,[ESP+10]
M开头:
MOVSX 改 MOVZX
MOV EBP,ESP 改 AND AH,CH
MOV [EBP-18],ESP 改 MOV [EBP-18],AH
MOV EAX,[ESP+10] 改 MOV EAX,[ESP+10]
MOV [ESP+10],EBP 改 MOV [ESP+10],EBP
mov [ebp-256], eax 改 adc [ebp-226], eax
MOV EDI,[EBP+10] 改 MOV EDI,[EBP+11]
MOV EBX,DWORD PTR DS:[ESI] 改 XOR EBX,DWORD PTR DS:[ESI]
MOV EBP,ESP——–AND AH,CH
MOV EBX,DWORD PTR DS:[ESI]———XOR EBX,DWORD PTR DS:[ESI]
P开头:
push 改call
PUSH EBX PUSH EDI
PUSH ESI PUSH EAX
PUSH EDI PUSH ESI
PUSH EAX PUSH EBX
pop 改 nop
S开头:
sbb 改adc
sub 改mov
SHL 改 SAL
SAR 改 SHR
sub ebp,7———- add ebp,-7
sub ebx,eax———-sbb esi,ecx
SBB ECX,DWORD PTR DS:[ESI+2]———-ADC ECX,DWORD PTR DS:[ESI+2]
sub ebx,eax———-sbb esi,ecx
X开头:
xor 改sub
XOR [EAX],AL——-改——–MOV [EAX],AL
XOR EAX,EAX—–改——-OR EAX,EAX
以上就是关于gg修改器修改游戏基址_gg修改器 基址的全部内容,希望对大家有帮助。
2022gg修改器中文版_2021GG修改器 大小:5.53MB4,978人安装 大家好,今天小编为大家分享关于2022gg修改器中文版_2021GG修改器的内容,赶快来一……
下载gg修改器在哪下最新版,gg修改器在哪下最新版? 大小:5.39MB3,587人安装 gg修改器是一款游戏辅助工具,可用于游戏中的修改、作弊等操作。对于游戏爱好者来说……
下载王者荣耀gg修改器中文下载_王者荣耀GG修改器怎么下载 大小:6.66MB4,976人安装 大家好,今天小编为大家分享关于王者荣耀gg修改器中文下载_王者荣耀GG修改器怎么下……
下载gg修改器免root版的软件_可以让gg修改器免root的软件 大小:19.72MB5,018人安装 大家好,今天小编为大家分享关于gg修改器免root版的软件_可以让gg修改器免root的软……
下载框架里gg修改器显示无root,框架里gg修改器显示无root:改变游戏体验的必备工具 大小:17.80MB3,966人安装 现如今,各种游戏App层出不穷,想要在众多的游戏玩家中脱颖而出并不容易,但是如果……
下载gg修改器安卓下载中文_gg修改器下载安装手机版 大小:7.96MB5,059人安装 大家好,今天小编为大家分享关于gg修改器安卓下载中文_gg修改器下载安装手机版的内……
下载前锋突袭辅助脚本2020(gg修改器)下载6.1.2175最新版,前锋突袭脚本在哪里下载 大小:5.90MB4,902人安装 别人都问我飞的高不高,仅有你问我飞的累不累。 大家好,今天小编为大家分享关于前……
下载哪个gg修改器自带免root_gg修改器免root使用教程 大小:13.86MB4,988人安装 大家好,今天小编为大家分享关于哪个gg修改器自带免root_gg修改器免root使用教程的……
下载gg修改器免root怎_gg修改器免root怎么用教学视频 大小:15.81MB5,058人安装 大家好,今天小编为大家分享关于gg修改器免root怎_gg修改器免root怎么用教学视频的……
下载gg修改器的root要怎么整_gg修改器怎么root步骤 大小:6.88MB4,979人安装 大家好,今天小编为大家分享关于gg修改器的root要怎么整_gg修改器怎么root步骤的内……
下载