Thursday, October 14, 2010

Recognition of the macro



The concept of macros is not new to me, but I never use macros, and always use the process (subroutine), because I think the macro will process longer, although it will be executed faster than subroutine calls. Therefore, the macro has been very cold, until looking at the old Law of the program found a useful macro, it makes the preparation process more Conciseness, intuitive, and more than I imagined concept, so I think it is necessary to carry out macro Re.
The following is a small program, function is very simple, but contains a macro:

-------------------------------------------------- ----------------------
File Name :20-1. ASM

include windows.inc
include kernel32.inc
include user32.inc

includelib kernel32.lib
includelib user32.lib

CTEXT MACRO y: VARARG
LOCAL sym
CONST segment
ifidni, <>
sym db 0
else
sym db y, 0
endif
CONST ends
exitm
ENDM

. Code
Start:
invoke MessageBoxA, NULL, CTEXT ("Hello, world!"), CTEXT ("Hi!"), MB_ICONINFORMATION
invoke ExitProcess, NULL
end Start
-------------------------------------------------- -------------------------
Add a compile-time switch entry / EP, the role of Output preprocessed listing to stdout, we be offered to the output to L.txt

D: MASM7> ml / c / coff / I include / EP 20-1.asm> L.txt
Microsoft (R) Macro Assembler Version 6.14.8444
Copyright (C) Microsoft Corp 1981-1997. All rights reserved.

D: MASM7> _
-------------------------------------------------- -------------------------
View L.txt document, the contents of this pretreatment, pay attention to the unfolding situation in the macro:

.386
. Model flat, stdcall
option casemap: none

.; Piece of content a lot, all. Inc files in the definition, announcements, here slightly
.
.

includelib kernel32.lib
includelib user32.lib

. Code
Start:
CONST segment
?? 0019 db "Hello, world!", 0
CONST ends
CONST segment
?? 001A db "Hi!", 0
CONST ends
invoke MessageBoxA, NULL, offset?? 0019, offset?? 001A, MB_ICONINFORMATION
invoke ExitProcess, NULL
end Start
After reading, clarity of mind some content?, And then to the past to generate 20-1.exe
-------------------------------------------------- -------------------------
Let's look at this file, the file name 20-2.asm

.386
. Model flat, stdcall
option casemap: none

include windows.inc
include kernel32.inc
include user32.inc

includelib kernel32.lib
includelib user32.lib

. Const
xx db "Hello, world!", 0
yy db "Hi!", 0

. Code
Start:
invoke MessageBoxA, NULL, addr xx, addr yy, MB_ICONINFORMATION
invoke ExitProcess, NULL
end Start
-------------------------------------------------- -------------------------
The above documents will generate an executable file 20-2.exe, we make a comparison:

D: MASM7> fc 20-1.exe 20-2.exe / b
Comparing files 20-1.exe and 20-2.exe
000000B8: BD BF
000000B9: 00 03
Document no different. Oh, the above difference is that the file TimeDateStamp, that generated documents of the time, does not affect anything!
-------------------------------------------------- -------------------------
Look at the following program, the file name :20-3. Asm, which will produce 20-3.exe file, run the same results, but the program structure is different (see later)

.386
. Model flat, stdcall
option casemap: none

include windows.inc
include kernel32.inc
include user32.inc

includelib kernel32.lib
includelib user32.lib

. Code
Start:

cc segment
xx db "Hello, world!", 0
cc ends

cc segment
yy db "Hi!", 0
cc ends

invoke MessageBoxA, NULL, addr xx, addr yy, MB_ICONINFORMATION
invoke ExitProcess, NULL
end Start

-------------------------------------------------- -------------------------
Exe files to see if it generated, which is 20-1.exe or 20-2.exe content, note that only two section, the program uses the information in the string. Rdata Section in.

0000 4D 5A 90 00 03 00 00 00-04 00 00 00 FF FF 00 00 MZ ..............
0010 B8 00 00 00 00 00 00 00-40 00 00 00 00 00 00 00 ........@.......
0020 00 trillion 00-0000000000 00 00 00 ................
0030 00 00 00 00 00 00 00 00-00 00 00 00 B0 00 00 00 ................
0040 0E 1F BA 0E 00 B4 09 CD-21 B8 01 4C CD 21 54 68 ........!.. L.! Th
0050 69 73 20 70 72 6F 67 72-61 6D 20 63 61 6E 6E 6F is program canno
0060 74 20 62 65 20 72 75 6E-20 69 6E 20 44 4F 53 20 t be run in DOS
0070 6D 6F 64 65 2E 0D 0D 0A-24 00 00 00 00 00 00 00 mode ....$.......
0080 5D 17 1D DB 19 76 73 88-19 76 73 88 19 76 73 88 ].... vs .. vs .. vs.
0090 19 76 73 88 1E 76 73 88-E5 56 61 88 18 76 73 88. Vs .. vs .. Va .. vs.
00A0 52 69 63 68 19 76 73 88-00 00 00 00 00 00 00 00 Rich.vs. ........
00B0 50 45 00 00 4C 01 02 00-BD 00 62 3E 00 00 00 00 PE .. L. .... b >....
00C0 00 00 00 00 E0 00 0F 01-0B 01 05 0C 00 02 00 00 ................
00D0 00 02 00 00 00 00 00 00-00 10 00 00 00 10 00 00 ................
00E0 00 20 00 00 00 00 40 00-00 10 00 00 00 02 00 00. .............
00F0 04 00 00 00 00 00 00 00-04 00 00 00 00 00 00 00 ................
0100 00300000000200 00-0000000002 00 00 00.0 ..............
0110 00001000001000 00-0000100000 10 00 00 ................
0120 00000000100000 00-0000000000 00 00 00 ................
0130 24 20 00 00 3C 00 00 00-00 00 00 00 00 00 00 00 $ ..<...........
0140 00 trillion 00-0000000000 00 00 00 ................
0150 00 trillion 00-0000000000 00 00 00 ................
0160 00 trillion 00-0000000000 00 00 00 ................
0170 00 trillion 00-0000000000 00 00 00 ................
0180 00 trillion 00-0020000010 00 00 00 ......... ......
0190 00 trillion 00-0000000000 00 00 00 ................
01A0 00 00 00 00 00 00 00 00-2E 74 65 78 74 00 00 00 ......... text ...
01B0 26 00 00 00 00 10 00 00-00 02 00 00 00 02 00 00 &...............
01C0 00 00 00 00 00 00 00 00-00 00 00 00 20 00 00 60 ............ .. `
01D0 2E 72 64 61 74 61 00 00-A6 00 00 00 00 20 00 00. Rdata ....... ..
01E0 00 02 00 00 00 04 00 00-00 00 00 00 00 00 00 00 ................
01F0 00 00 00 00 40 00 00 40-00 00 00 00 00 00 00 00 ....@..@........
0200 6A 40 68 1F 20 40 00 68-10 20 40 00 6A 00 E8 0D j @ h. @. H. @. J. .. Here is the code
0210 00 00 00 6A 00 E8 00 00-00 00 FF 25 00 20 40 00 ... j. ......%. @.
0220 FF 25 08 20 40 00 00 00-00 00 00 00 00 00 00 00.%............
0230 00 trillion 00-0000000000 00 00 00 ................
0240 00 trillion 00-0000000000 00 00 00 ................
0250 00 trillion 00-0000000000 00 00 00 ................
0260 00 trillion 00-0000000000 00 00 00 ................
0270 00 trillion 00-0000000000 00 00 00 ................
0280 00 trillion 00-0000000000 00 00 00 ................
0290 00 trillion 00-0000000000 00 00 00 ................
02A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ...............

02E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0300 00 trillion 00-0000000000 00 00 00 ................
0310 00 trillion 00-0000000000 00 00 00 ................
0320 00 trillion 00-0000000000 00 00 00 ................
0330 00 trillion 00-0000000000 00 00 00 ................
0340 00 trillion 00-0000000000 00 00 00 ................
0350 00 trillion 00-0000000000 00 00 00 ................
0360 00 trillion 00-0000000000 00 00 00 ................
0370 00 trillion 00-0000000000 00 00 00 ................
0380 00 trillion 00-0000000000 00 00 00 ................
0390 00 trillion 00-0000000000 00 00 00 ................
03A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0400 70 20 00 00 00 00 00 00-8C 20 00 00 00 00 00 00 p ....... ...... this is. Rdata section
0410 48 65 6C 6C 6F 2C 20 77-6F 72 6C 64 20 21 00 48 Hello, world!. H data string in which the
0420 69 21 00 00 60 20 00 00-00 00 00 00 00 00 00 00 i! .. `..........
0430 7E 20 00 00 00 20 00 00-68 20 00 00 00 00 00 00 ~ ... .. h ......
0440 00 00 00 00 9A 20 00 00-08 20 00 00 00 00 00 00 ..... ... ......
0450 00 trillion 00-0000000000 00 00 00 ................
0460 70 20 00 00 00 00 00 00-8C 20 00 00 00 00 00 00 p ....... ......
0470 75 00 45 78 69 74 50 72-6F 63 65 73 73 00 4B 45 u.ExitProcess.KE
0480 52 4E 45 4C 33 32 2E 64-6C 6C 00 00 BB 01 4D 65 RNEL32.dll .... Me
0490 73 73 61 67 65 42 6F 78-41 00 55 53 45 52 33 32 ssageBoxA.USER32
04A0 2E 64 6C 6C 00 00 00 00-00 00 00 00 00 00 00 00. Dll ............
04B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0500 00 trillion 00-0000000000 00 00 00 ................
0510 00 trillion 00-0000000000 00 00 00 ................
0520 00 trillion 00-0000000000 00 00 00 ................
0530 00 trillion 00-0000000000 00 00 00 ................
0540 00 trillion 00-0000000000 00 00 00 ................
0550 00 trillion 00-0000000000 00 00 00 ................
0560 00 trillion 00-0000000000 00 00 00 ................
0570 00 trillion 00-0000000000 00 00 00 ................
0580 00 trillion 00-0000000000 00 00 00 ................
0590 00 trillion 00-0000000000 00 00 00 ................
05A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-------------------------------------------------- -----------------------
This is a 20-3.exe file, there are 3 section, string. Data section, the paper great!

0000 4D 5A 90 00 03 00 00 00-04 00 00 00 FF FF 00 00 MZ ..............
0010 B8 00 00 00 00 00 00 00-40 00 00 00 00 00 00 00 ........@.......
0020 00 trillion 00-0000000000 00 00 00 ................
0030 00 00 00 00 00 00 00 00-00 00 00 00 B0 00 00 00 ................
0040 0E 1F BA 0E 00 B4 09 CD-21 B8 01 4C CD 21 54 68 ........!.. L.! Th
0050 69 73 20 70 72 6F 67 72-61 6D 20 63 61 6E 6E 6F is program canno
0060 74 20 62 65 20 72 75 6E-20 69 6E 20 44 4F 53 20 t be run in DOS
0070 6D 6F 64 65 2E 0D 0D 0A-24 00 00 00 00 00 00 00 mode ....$.......
0080 5D 17 1D DB 19 76 73 88-19 76 73 88 19 76 73 88 ].... vs .. vs .. vs.
0090 19 76 73 88 1E 76 73 88-E5 56 61 88 18 76 73 88. Vs .. vs .. Va .. vs.
00A0 52 69 63 68 19 76 73 88-00 00 00 00 00 00 00 00 Rich.vs. ........
00B0 50 45 00 00 4C 01 03 00-75 04 62 3E 00 00 00 00 PE .. L. .. u.b >....
00C0 00 00 00 00 E0 00 0F 01-0B 01 05 0C 00 02 00 00 ................
00D0 00 04 00 00 00 00 00 00-00 10 00 00 00 10 00 00 ................
00E0 00 20 00 00 00 00 40 00-00 10 00 00 00 02 00 00. .............
00F0 04 00 00 00 00 00 00 00-04 00 00 00 00 00 00 00 ................
0100 00400000000400 00-00 00000002000000 .@..............
0110 00001000001000 00-0000100000 10 00 00 ................
0120 00000000100000 00-0000000000 00 00 00 ................
0130 10 20 00 00 3C 00 00 00-00 00 00 00 00 00 00 00. .. <...........
0140 00 trillion 00-0000000000 00 00 00 ................
0150 00 trillion 00-0000000000 00 00 00 ................
0160 00 trillion 00-0000000000 00 00 00 ................
0170 00 trillion 00-0000000000 00 00 00 ................
0180 00 trillion 00-0020000010 00 00 00 ......... ......
0190 00 trillion 00-0000000000 00 00 00 ................
01A0 00 00 00 00 00 00 00 00-2E 74 65 78 74 00 00 00 ......... text ...
01B0 26 00 00 00 00 10 00 00-00 02 00 00 00 04 00 00 &...............
01C0 00 00 00 00 00 00 00 00-00 00 00 00 20 00 00 60 ............ .. `
01D0 2E 72 64 61 74 61 00 00-92 00 00 00 00 20 00 00. Rdata ....... ..
01E0 00 02 00 00 00 06 00 00-00 00 00 00 00 00 00 00 ................
01F0 00 00 00 00 40 00 00 40-63 63 00 00 00 00 00 00 ....@..cc ......
0200 13,000,000,003,000 00-00 02000000080000 ..... 0 ..........
0210 00 00 00 00 00 00 00 00-00 00 00 00 40 00 00 C0 ............@...
0220 00 trillion 00-0000000000 00 00 00 ................
0230 00 trillion 00-0000000000 00 00 00 ................
0240 00 trillion 00-0000000000 00 00 00 ................
0250 00 trillion 00-0000000000 00 00 00 ................
0260 00 trillion 00-0000000000 00 00 00 ................
0270 00 trillion 00-0000000000 00 00 00 ................
0280 00 trillion 00-0000000000 00 00 00 ................
0290 00 trillion 00-0000000000 00 00 00 ................
02A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
02F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0300 00 trillion 00-0000000000 00 00 00 ................
0310 00 trillion 00-0000000000 00 00 00 ................
0320 00 trillion 00-0000000000 00 00 00 ................
0330 00000000000000 00-00 00 trillion ...............
0340 00 trillion 00-0000000000 00 00 00 ................
0350 00 trillion 00-0000000000 00 00 00 ................
0360 00 trillion 00-0000000000 00 00 00 ................
0370 00 trillion 00-0000000000 00 00 00 ................
0380 00 trillion 00-0000000000 00 00 00 ................
0390 00 trillion 00-0000000000 00 00 00 ................
03A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
03F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0400 6A 40 68 0F 30 40 00 68-00 30 40 00 6A 00 E8 0D j@h.0 @. H.0 @. J. .. code
0410 00 00 00 6A 00 E8 00 00-00 00 FF 25 00 20 40 00 ... j. ......%. @.
0420 FF 25 08 20 40 00 00 00-00 00 00 00 00 00 00 00.%............
0430 00 trillion 00-0000000000 00 00 00 ................
0440 00 trillion 00-0000000000 00 00 00 ................
0450 00 trillion 00-0000000000 00 00 00 ................
0460 00 trillion 00-0000000000 00 00 00 ................
0470 00 trillion 00-0000000000 00 00 00 ................
0480 00 trillion 00-0000000000 00 00 00 ................
0490 00 trillion 00-0000000000 00 00 00 ................
04A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
04F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0500 00 trillion 00-0000000000 00 00 00 ................
0510 00 trillion 00-0000000000 00 00 00 ................
0520 00 trillion 00-0000000000 00 00 00 ................
0530 00 trillion 00-0000000000 00 00 00 ................
0540 00 trillion 00-0000000000 00 00 00 ................
0550 00 trillion 00-0000000000 00 00 00 ................
0560 00 trillion 00-0000000000 00 00 00 ................
0570 00 trillion 00-0000000000 00 00 00 ................
0580 00 trillion 00-0000000000 00 00 00 ................
0590 00 trillion 00-0000000000 00 00 00 ................
05A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
05F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0600 5C 20 00 00 00 00 00 00-78 20 00 00 00 00 00 00 ...... x ....... Rdata section
0610 4C 20 00 00 00 00 00 00-00 00 00 00 6A 20 00 00 L .......... j ..
0620 00 20 00 00 54 20 00 00-00 00 00 00 00 00 00 00. .. T ..........
0630 86200000082000 00-0000000000 00 00 00. ... ..........
0640 00 00 00 00 00 00 00 00-00 00 00 00 5C 20 00 00 ............ ..
0650 00 00 00 00 78 20 00 00-00 00 00 00 75 00 45 78 .... x ...... u.Ex
0660 69 74 50 72 6F 63 65 73-73 00 4B 45 52 4E 45 4C itProcess.KERNEL
0670 33 32 2E 64 6C 6C 00 00-BB 01 4D 65 73 73 61 67 32.dll .... Messag
0680 65 42 6F 78 41 00 55 53-45 52 33 32 2E 64 6C 6C eBoxA.USER32.dll
0690 00 trillion 00-0000000000 00 00 00 ................
06A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
06F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0700 00 trillion 00-0000000000 00 00 00 ................
0710 00 trillion 00-0000000000 00 00 00 ................
0720 00 trillion 00-0000000000 00 00 00 ................
0730 00 trillion 00-0000000000 00 00 00 ................
0740 00 trillion 00-0000000000 00 00 00 ................
0750 00 trillion 00-0000000000 00 00 00 ................
0760 00 trillion 00-0000000000 00 00 00 ................
0770 00 trillion 00-0000000000 00 00 00 ................
0780 00 trillion 00-0000000000 00 00 00 ................
0790 00 trillion 00-0000000000 00 00 00 ................
07A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
07F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0800 48 65 6C 6C 6F 2C 20 77-6F 72 6C 64 20 21 00 48 Hello, world!. H string information used
0810 69 21 00 00 00 00 00 00-00 00 00 00 00 00 00 00 i !..............
0820 00 trillion 00-0000000000 00 00 00 ................
0830 00 trillion 00-0000000000 00 00 00 ................
0840 00 trillion 00-0000000000 00 00 00 ................
0850 00 trillion 00-0000000000 00 00 00 ................
0860 00 trillion 00-0000000000 00 00 00 ................
0870 00 trillion 00-0000000000 00 00 00 ................
0880 00 trillion 00-0000000000 00 00 00 ................
0890 00 trillion 00-0000000000 00 00 00 ................
08A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
08F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
0900 00 trillion 00-0000000000 00 00 00 ................
0910 00 trillion 00-0000000000 00 00 00 ................
0920 00 trillion 00-0000000000 00 00 00 ................
0930 00 trillion 00-0000000000 00 00 00 ................
0940 00 trillion 00-0000000000 00 00 00 ................
0950 00 trillion 00-0000000000 00 00 00 ................
0960 00 trillion 00-0000000000 00 00 00 ................
0970 00 trillion 00-0000000000 00 00 00 ................
0980 00 trillion 00-0000000000 00 00 00 ................
0990 00000000000000 00-00 00 trillion ...............
09A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09D0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
09F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................







Recommended links:



AVI To MPEG4



ASF to MPG



Find the best registry cleaner software for your



View Open ports: Let Trojan True Features



TV Shopping busy to make a fuss in the credibility of the



Lists Graphic



Maxthon in those humble little "trick"



Recommend Telnet Servers



Sober.P Worm Rampant Total 5.4 Percent Of Total E-mail



FLV to M4V



BI 2.0, completely changed the way the work of five revolutions



Evaluate Cartoons - Screen Savers



Emacs is a belief! Introduced the WORLD'S most powerful editor



[Other] Project2000 Thematic knowledge (3)



Single-core Conroe two series were named Pentium, CELERON



Fang Hao made a small amount of 3G next month or early next year provisional license issued



No comments:

Post a Comment