1K字节的半透明窗体
debug吧
全部回复
仅看楼主
level 6
blueglass2 楼主
GOTO ALPHA
E000  4D 5A 90 00 03 00 00 00 04 00 00 00 FF FF 00 00
E010  B8 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00
E030  00 00 00 00 00 00 00 00 00 00 00 00 C8 00 00 00
F040 0C0 00
E0C0  00 00 00 00 00 00 00 00 50 45 00 00 4C 01 01 00
E0D0  5C 9D 10 4A 00 00 00 00 00 00 00 00 E0 00 0F 01
E0E0  0B 01 06 00 00 00 00 00 00 04 00 00 00 00 00 00
E0F0  68 10 00 00 00 10 00 00 00 10 00 00 00 00 40 00
E100  00 10 00 00 00 02 00 00 04 00 00 00 00 00 00 00
E110  04 00 00 00 00 00 00 00 00 20 00 00 00 02 00 00
E120  00 00 00 00 02 00 00 00 00 00 10 00 00 10 00 00
E130  00 00 10 00 00 10 00 00 00 00 00 00 10 00 00 00
E140  00 00 00 00 00 00 00 00 28 11 00 00 3C 00 00 00
F150 1A0 00
E1A0  00 10 00 00 28 00 00 00 00 00 00 00 00 00 00 00
F1B0 1C0 00
E1C0  42 6C 75 65 53 65 63 00 32 02 00 00 00 10 00 00
E1D0  00 04 00 00 00 02 00 00 00 00 00 00 00 00 00 00
E1E0  00 00 00 00 40 00 00 C0 00 00 00 00 00 00 00 00
F1F0 200 00
E200  9E 11 00 00 8C 11 00 00 00 00 00 00 C0 11 00 00
E210  D0 11 00 00 DE 11 00 00 F2 11 00 00 06 12 00 00
E220  14 12 00 00 00 00 00 00 55 73 65 72 33 32 00 00
E230  53 65 74 4C 61 79 65 72 65 64 57 69 6E 64 6F 77
E240  41 74 74 72 69 62 75 74 65 73 00 00 23 33 32 37

2009年05月31日 06点05分 1
level 6
blueglass2 楼主
以上代码保存为任意名.BAT,点击运行后会编译成一个半透明窗体,
这是我用C++写的,Release模式编译为1.5K,貌似1k是win32pe文件
的极限了,因为pe文件最小也不能小于一页. 源程序如下:
#include <windows.h>
#pragma comment(linker, "/ENTRY:main")
#pragma comment(linker, "/OPT:NOWIN98") 
#pragma comment(linker, "/SECTION:BlueSec,")
#pragma comment(linker, "/MERGE:.data=BlueSec")
#pragma comment(linker, "/MERGE:.text=BlueSec") 
#pragma comment(linker, "/MERGE:.rdata=BlueSec")
#pragma comment(linker, "/MERGE:.rsrc=BlueSec")
#pragma comment(linker, "/MERGE:.reloc=BlueSec")
int main(void){
HWND hwnd=CreateWindowEx(0x80000,"#32770","透明窗体blueglass2",
0xcf0000,120,80,420,320,0,0,(HINSTANCE)0x400000,0);
if(hwnd){
GetProcAddress(GetModuleHandle("User32"),"SetLayeredWindowAttributes");
__asm {
push 2
push 200
push 0
push hwnd
call eax
}
ShowWindow(hwnd,5);
MSG msg;
do{
DispatchMessage(&msg);
TranslateMessage(&msg);
if(msg.wParam==VK_ESCAPE)break;
}while(GetMessage(&msg,0,0,0));
DestroyWindow(hwnd);
}return 0;
}
2009年05月31日 06点05分 3
楼主怎么C++转debug的?
2014年07月08日 00点07分
level 4
o(∩_∩)o...
2009年05月31日 09点05分 4
level 0
怎么关啊?
2009年11月17日 11点11分 5
level 1
高人...不妨解释一下哈... 我们菜鸟看不懂...
#pragma comment(linker, "/ENTRY:main") 
#pragma comment(linker, "/OPT:NOWIN98")  
#pragma comment(linker, "/SECTION:BlueSec,") 
#pragma comment(linker, "/MERGE:.data=BlueSec") 
#pragma comment(linker, "/MERGE:.text=BlueSec")  
#pragma comment(linker, "/MERGE:.rdata=BlueSec") 
#pragma comment(linker, "/MERGE:.rsrc=BlueSec") 
#pragma comment(linker, "/MERGE:.reloc=BlueSec") 
--------
这是什么啊?
2009年12月10日 11点12分 6
level 1
PE程序最小可以到512字节,最小1K是在9X下的极限
在NT下完全可以到达512,楼上的程序还可以缩水,代码段可以压缩,用一个小的stub解压缩
2010年01月06日 00点01分 7
level 1
#pragma comment(linker, "/ENTRY:main")   //修改程序入口点是main而不是系统的WinMainCRTStartup
#pragma comment(linker, "/OPT:NOWIN98")   // 文件对齐0x200而不是兼容98的4K
#pragma comment(linker, "/SECTION:BlueSec,")   // 建立一个节,节名叫BlueSec
#pragma comment(linker, "/MERGE:.data=BlueSec")  
#pragma comment(linker, "/MERGE:.text=BlueSec")   
#pragma comment(linker, "/MERGE:.rdata=BlueSec")  
#pragma comment(linker, "/MERGE:.rsrc=BlueSec")  
#pragma comment(linker, "/MERGE:.reloc=BlueSec")
// 把.data,.text,.radata等节合并到BlueSec节中
.rsrc,.reloc,资源节和重定位节在这个程序中并不会生成
2010年01月06日 00点01分 8
level 1
本群:91797653
刚建不久,希望喜欢汇编的朋友们的加入。
2010年01月10日 09点01分 9
level 0
发现debug+记事本=一个简单的16进制编辑器。只要对pe文件格式和指令机器码足够熟悉,再加上足够的耐心,就可以用一个裸的操作系统写各种.exe和.dll了,也不用去装那些上百兆上吉的IDE了,好牛啊!当然仅仅理论上是这样~~
2010年02月12日 12点02分 10
level 0
看过了- -
顶贴了- -
2010年03月29日 15点03分 11
level 1
编程大牛啊
2010年06月12日 03点06分 12
level 0
LZ貌似把重要的东西删掉了啊?窗口不能关闭,只能kill。
2010年06月15日 12点06分 13
level 4
回复:13楼
按ESC键
2010年07月23日 08点07分 14
level 6
blueglass2 楼主
[呵呵]
2010年07月23日 11点07分 15
level 1
挺神奇的~
看完此贴,屁股好痛……
2010年08月07日 17点08分 16
level 1
楼主原来是真正的绝世高手啊[顶]
2010年08月22日 14点08分 17
level 1
为什么运行时360说是木马
2011年03月23日 08点03分 19
level 1
作者牛逼啊
2011年03月27日 16点03分 20
level 1
小心,内藏木马!
2011年05月19日 03点05分 21
level 1
关于360报毒,是怎么回事?
----------------------------------------
威胁名称:
恶意程序(HEUR/Malware.QVM19.Gen)
----------------------------------------
2011年05月21日 04点05分 22
1 2 3 4 尾页