emu8086 不能直接使用 insb insw outsb outsw,需要 db (define byte)复制代码
- *: and sub xor cmp j* daa das aaa inc dec push pop pusha popa imul insb insw outsb outsw
事实上,有些特殊内容是可以硬凑出来的,比如中括号内的内容【@ECHO OFF&REM 】其实也可以直接写入到 com 中执行,只是这基本实现不了什么功能,只能作为另一种嵌入文本的思路罢了。复制代码
- *: 表示所有数据段前缀,例如 ES: 和 DS:
- j* 表示短距离的条件跳转,例如 jz 和 jnz
- and 和 cmp 只支持对寄存器和地址的运算比较,不支持寄存器之间的直接运算
- sub 和 xor 支持对 ax、al 的所有操作,对 dx 等其他寄存器操作时有时需要使用不可见字符
- dec 和 inc 可用于整个操作任何寄存器,若只操作高位或低位则需不可见字符
- push 和 pop 对大部分寄存器操作的指令都为可见字符,对段寄存器和标志位操作时除外
指令 | 达到类似效果的 ascode |
mov ax,bx | push bx pop ax |
mov al,15 | 若 ax=0,可以: xor al,35 xor al,20 若 ax=60,则可以: sub al,4e |
add al,32 | sub al,60 sub al,6e |
mov ah,15 | 参考前文 假设 ah 为 0,则可: xor ax,3520 xor ax,2020 |
mov ax,0 | 假设 bx=0(其他为 0 的寄存器也可),那是最方便的了: push bx pop ax 假设 di+bp=c0 且 cs=ds,则可以从内存中获取: and ax,[di+bp+3f] |
int 21 (这个内容比较重要, 如 jmp、loop 等以及 其他无法直接实现的指令 都可以用这种办法解决) | 假设 ax=0(默认),且 xor al,60 位置位于 ds:100,则可: xor al,60 ;见前文,等于 mov ax,60 push ax push ax pop di pop bp ;见前文,等于 mov di,ax 以及 mov bp,ax sub [di+bp+49],al ;di+bp+49=109,即 db 2d 位置,2d-al=2d-60,运算后该地址值变为 cd db 2d 21 ;int 21 的机器码为 cd 21,这里用 2d 占位,执行上一条指令后这里会变为 int 21 |
可见字符和控制字符中的少数字符对应的指令是可以用于初始的 ascode 的,请见下表(这个结果是碰撞所得,可能不完整,但表中列出的应该都能用)复制代码
- *: and sub xor cmp j* daa das aaa inc dec push pop pusha popa imul insb insw outsb outsw
可见字符:复制代码
- 00-05 add *
- 06 push es
- 07 pop es
- 08-0d or *
- 0e push cs
- 0f 无
- 10-15 adc *
- 16 push ss
- 17 pop ss
- 18-1d sbb *
- 1e push ds
- 1f pop ds
不可见字符:复制代码
- 20-25 and *
- 26 es:
- 27 daa
- 28-2d sub *
- 2e cs:
- 2f das
- 30-35 xor *
- 36 ss:
- 37 aaa
- 38-3d cmp [*],*
- 3e ds:
- 3f aas
- 40 inc ax
- 41 inc cx
- 42 inc dx
- 43 inc bx
- 44 inc sp
- 45 inc bp
- 46 inc si
- 47 inc di
- 48 dec ax
- 49 dec cx
- 4a dec dx
- 4b dec bx
- 4c dec sp
- 4d dec bp
- 4e dec si
- 4f dec di
- 50 push ax
- 51 push cx
- 52 push dx
- 53 push bx
- 54 push sp
- 55 push bp
- 56 push si
- 57 push di
- 58 pop ax
- 59 pop cx
- 5a pop dx
- 5b pop bx
- 5c pop sp
- 5d pop bp
- 5e pop si
- 5f pop di
- /********
- 区间 60~6f 由 email10t 在本贴 16 楼补充
- 区间 62、63、66、67 由 sj157250 在本贴 34 楼继续补充
- debug 无法正常汇编/反汇编这部分的指令,但可以正常运行
- 60 pusha
- 61 popa
- 62 BOUND
- 63 ARPL Ew,Rw
- 64 fs:
- 65 gs:
- 66 push dword * | Operand Size Prefix
- 67 imul dword * | Address Size Prefix
- 68 push word *
- 69 imul word *
- 6a push byte *
- 6b imul byte *
- 6c insb
- 6d insw
- 6e outsb
- 6f outsw
- 区间结束
- **********/
- 70 jo
- 71 jno
- 72 jb
- 73 jnb
- 74 jz
- 75 jnz
- 76 jbe
- 77 ja
- 78 js
- 79 jns
- 7a jpe
- 7b jpo
- 7c jl
- 7d jge
- 7e jle
- 7f jg
x86 的部分指令列表参见 pcl_test 在 35 楼的回帖复制代码
- 80-83 and word ptr *
- 84-85 test *
- 86-87 xchg *
- 88-8c mov *
- 8d lea *
- 8e mov
- 8f pop [*]
- 8f pop [*]
- 90 nop
- 91-97 xchg *
- 98 cbw
- 99 cwd
- 9a call
- 9b wait
- 9c pushf
- 9d popf
- 9e sahf
- 9f lahf
- a0-a3 mov *
- a4 movsb
- a5 movsw
- a6 cmpsb
- a7 cmpsw
- a8-a9 test *
- aa stosb
- ab stosw
- ac lodsb
- ad lodsw
- ae scasb
- af scasw
- b0-bf mov *
- c0-c1 无
- c2 ret *
- c3 ret
- c4 les *
- c5 lds *
- c6-c7 mov *
- c8-c9 无
- ca retf *
- cb retf
- cc int 3
- cd int *
- ce into
- cf iret
- d0-d3 shl * (d0 ror;d2 rol)
- d4 aam *
- d5 aad
- d6 无
- d7 xlat
- d8 fsub dword ptr *
- d9 fldenv *
- da fisub dword ptr *
- db esc *
- dc fsub qword ptr *
- dd frstor *
- de fisub word ptr *
- df fbld tbyte ptr *
- e0 loopnz *
- e1 loopz *
- e2 loop *
- e3 jcxz
- e4-e5 in *
- e6-e7 out *
- e8 call *
- e9-eb jmp *
- ec-ed in *
- ee-ef out *
- f0 lock
- f1 无
- f2 repnz
- f3 repz
- f4 hlt
- f5 cmc
- f6 mul byte ptr *
- f7 mul word ptr *
- f8 clc
- f9 stc
- fa cli
- fb sti
- fc cld
- fd std
- fe-ff jmp [*]
这是个特例,而且也没有太大的实际作用复制代码
- inc ax
- inc bp
- inc bx
- dec ax
- dec di
- and [bx+si],ah
- dec di
- inc si
- inc si
- es:
- push dx
- inc bp
- dec bp
- and [bx+si],ah
其机器码为:复制代码
- mov ah,1
- int 21
- ret
一看就知道除了 21 (asc="!") 之外,其他四个字节都不是可见字符,那肿么办呢?表急,让我静下来想一想...复制代码
- B4 01 CD 21 C3
只用 sub 也可以:复制代码
- xor ax,3130
- xor ax,3030
可以再无聊点:复制代码
- sub ax,6060
- sub ax,6060
- sub ax,3f40
因为最终需求是 ax=0100,所以这个特殊结果也可以取巧用 xor+aaa 实现:复制代码
- inc ax
- inc ax
- inc ax
- ... ;加256次
引申一下,其实最无耻莫过于:复制代码
- xor al,2a
- aaa
为什么可以这样,这是因为执行十六位程序的时候,寄存器是有初始状态的,实际是这样的(DX=段寄存器,这几个是会变的,其他均恒定):复制代码
- push si
- pop ax
要注意的是,实际执行十六位程序时的寄存器初始状态和在 debug 中表现的不太一样,debug 调试的时候是这样的:复制代码
- AX=0000 BX=0000 CX=00FF DX=0E1C SP=FFFE BP=091E SI=0100 DI=FFFE
- DS=0E1C ES=0E1C SS=0E1C CS=0E1C IP=0100 NV UP EI PL NZ NA PO NC TF=0
这!很!重!要!复制代码
- AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
- DS=13CC ES=13CC SS=13CC CS=13CC IP=0100 NV UP EI PL NZ NA PO NC
它在 debug 里反汇编的结果是:复制代码
- ,RP_4P0E`0Eb@@3!=
运行一下试试,唔,效果不错,收工回家复制代码
- 段地址:偏移地址 机器码 对应的汇编指令
- 13CC:0100 2C52 SUB AL,52
- 13CC:0102 50 PUSH AX
- 13CC:0103 5F POP DI
- 13CC:0104 3450 XOR AL,50
- 13CC:0106 304560 XOR [DI+60],AL
- 13CC:0109 304562 XOR [DI+62],AL
- 13CC:010C 40 INC AX
- 13CC:010D 40 INC AX
- 13CC:010E 3321 XOR SP,[BX+DI]
- 13CC:0110 3D0000 CMP AX,0000
应用了引申4、引申5 和 2 楼列表中的结论和构想,因为含有 ansi 宽字符,所以精简版仅能在 936 代码页下生成正确的脚本复制代码
- VX0L[Tab字符]..瓮廾
- 实际使用时请吧 [Tab字符] 替换成一个 Tab 字符
复制代码
- @echo off&setlocal enabledelayedexpansion
- set com=vr.com
- cd .>!com!
- more +19 %0|debug !com!>nul
- for /f "tokens=1-14" %%a in ('!com!') do (
- set /a "F=0x%%n,CF=F&1,PF=(F>>2)&1,AF=(F>>4)&1,ZF=(F>>6)&1"
- set /a "SF=(F>>7)&1,TF=(F>>8)&1,IF=(F>>9)&1,DF=(F>>10)&1,OF=(F>>11)&1"
- for %%A in (
- CF-CY-NC PF-PE-PO AF-AC-NA ZF-ZR-NZ SF-NG-PL IF-EI-DI DF-DN-UP OF-OV-NV
- ) do (
- for /f "tokens=1-3 delims=-" %%B in ("%%A") do (
- if !%%B!==1 (set %%B=%%C) else set %%B=%%D
- )
- )
- echo AX=%%a BX=%%b CX=%%c DX=%%d SP=%%e BP=%%f SI=%%g DI=%%h
- echo DS=%%i ES=%%j SS=%%k CS=%%l IP=%%m !OF! !DF! !IF! !SF! !ZF! !AF! !PF! !CF! TF=!TF!
- )
- del !com!>nul&pause&exit/b
- rds
- 1000
- rcs
- 1000
- eds:100 eb 37 50 b8 0 2 51 b9 10 0 83 e9 4 52 d3 ca
- eds:110 81 e2 f 0 80 fa a 72 3 80 c2 7 80 c2 30 cd
- eds:120 21 5a 41 e2 e5 59 52 b8 0 2 ba 20 0 cd 21 58
- eds:130 5a c3 5a 52 83 ea 7e eb c9 9c 8f 6 0 2 52 89
- eds:140 c2 e8 be ff 89 da e8 b9 ff 89 ca e8 b4 ff 5a e8
- eds:150 b0 ff 89 e2 e8 ab ff 50 89 ea e8 a5 ff 89 f2 e8
- eds:160 a0 ff 89 fa e8 9b ff 8c da e8 96 ff 8c c2 e8 91
- eds:170 ff 8c d2 e8 8c ff 8c ca e8 87 ff e8 b4 ff 8b 16
- eds:180 0 2 e8 7d ff cd 20
- rcx
- 87
- w
- q
- 原型:
- jmp 139; main;;;;
- push ax ;fun
- mov ax,200
- push cx
- mov cx,10
- sub cx,4 ;view
- push dx
- ror dx,cl
- and dx,f
- cmp dl,a
- jb 11c ;next;;; don't add 7
- add dl,7
- add dl,30;------
- int 21
- pop dx
- inc cx
- loop 10a; view;;;
- pop cx
- push dx
- mov ax,200
- mov dx,20
- int 21
- pop ax
- pop dx
- ret;;;end fun
- pop dx
- push dx
- sub dx,7e
- jmp 102; fun;;;
- pushf ;main
- pop [200]
- push dx
- mov dx,ax
- call 102;fun;;;
- mov dx,bx
- call 102;fun;;;
- mov dx,cx
- call 102;fun;;;
- pop dx
- call 102;fun;;;
- mov dx,sp
- call 102;fun;;;
- push ax
- mov dx,bp
- call 102;fun;;;
- mov dx,si
- call 102;fun;;;
- mov dx,di
- call 102;fun;;;
- mov dx,ds
- call 102;fun;;;
- mov dx,es
- call 102;fun;;;
- mov dx,ss
- call 102;fun;;;
- mov dx,cs
- call 102;fun;;;
- call 132;rip
- mov dx,[200]
- call 102;fun;;;
- int 20
来个构思详解:
---------------------------------------------------------------------------
臭不要脸 ...
CrLf 发表于 2014-11-23 00:25
可以再无聊点:复制代码
- sub ax,6060
- sub ax,6060
- sub ax,3e40
复制代码
- inc ax
- inc ax
- inc ax
- ... ;加256次
复制代码
- ,5Pj!]_jTX(C!!!
复制代码
- SUB AL,35
- PUSH AX
- DB 6A
- AND [DI+5F],BX
- DB 6A
- PUSH SP
- POP AX
- SUB [BP+DI+21],AL
- INT 21
复制代码
- sub al,35h
- push ax
- push 21h
- pop bp
- pop di
- push 54h
- pop ax
- sub [di+bp+21h],al
- db "!!"
复制代码
- 60 pusha
- 61 popa
- 62-63 无
- 64 fs:
- 65 gs:
- 66 push dword *
- 67 imul dword *
- 68 push word *
- 69 imul word *
- 6a push byte *
- 6b imul byte *
- 6c insb
- 6d insw
- 6e outsb
- 6f outsw
反汇编结果是:复制代码
- ,/Pj!]_j@X(C!j#X(C"+!
复制代码
- sub al,2fh
- push ax
- push 21h
- pop bp
- pop di
- push 40h
- pop ax
- sub [di+bp+21h], al
- push 23h
- pop ax
- sub [di+bp+22h], al
- db "+!"
使用 debug 生成:复制代码
- H4P4cP[0@?u2
复制代码
- debug loop.com
- rdi
- fffe
- rsi
- 100
- a
- dec ax
- xor al,50
- xor al,63
- push ax
- pop bx
- xor [bx+si+3f],al
- db 75 32
- rcx
- c
- w
- q
反汇编:复制代码
- AA帻
既然都作弊了,索性再来一个 2 字节的:复制代码
- inc cx
- inc cx
- loopnz 0101h
反汇编:复制代码
- 膻
复制代码
- jmp 0100h
复制代码
- RQPUWP]UZV_BBBB5``PY(E.(E3)E5)E:(E>)EFSX3CH<P}pE< ~r%ooQRY2AY0@G uG0EGB?
- KO00O0KNX01K91200JMJKN2OLN9J8NNKO0001KNp01K93030JMJKN2OLKN0001_]XYZN9N810
- K40NK307KM1L018J4600453L00t04LM10NKO4K407LM21K8004LLM21hello20world2100
来个构思详解:
---------------------------------------------------------------------------
臭不要脸 ...
CrLf 发表于 2014-11-23 00:25
复制代码
- AX=0000 BX=0000 CX=00FF DX=101D SP=FFFE BP=091E SI=0100 DI=FFFE
- DS=101D ES=101D SS=101D CS=101D IP=0100 NV UP EI PL ZR NA PE NC TF=0
用的是 emu8086 编译的:复制代码
- 4*7Pj9^]4*7Pj<^]j`X(B (B (B!(B"(B"(B#(B$(B$(B&(B'(B'(B)(B,(B.(B/(B0(B1(B2(B3(B3(B4(B5(B7(B7(B8(B:(BKtnsg}zaJF`E<`td-pKTtg-!x`L-!
- Hello, World!`
复制代码
- org 100h
- xor al,"*"
- aaa
- push ax
- push 3ch
- pop si
- pop bp
- push 60h
- pop ax
- sub [bp+si+20h], al
- sub [bp+si+20h], al
- sub [bp+si+21h], al
- sub [bp+si+22h], al
- sub [bp+si+22h], al
- sub [bp+si+23h], al
- sub [bp+si+24h], al
- sub [bp+si+24h], al
- sub [bp+si+26h], al
- sub [bp+si+27h], al
- sub [bp+si+27h], al
- sub [bp+si+29h], al
- sub [bp+si+2ch], al
- sub [bp+si+2eh], al
- sub [bp+si+2fh], al
- sub [bp+si+30h], al
- sub [bp+si+31h], al
- sub [bp+si+32h], al
- sub [bp+si+33h], al
- sub [bp+si+33h], al
- sub [bp+si+34h], al
- sub [bp+si+35h], al
- sub [bp+si+37h], al
- sub [bp+si+37h], al
- sub [bp+si+38h], al
- sub [bp+si+3ah], al
- sub [bp+si+4bh], al
- db 74h,6eh,73h,67h,7dh,7ah,61h,4ah,46h,60h,45h,3ch,60h,74h,64h,2dh,70h,4bh,54h,74h,67h,2dh,21h,78h,60h,4ch,2dh,21h,0dh,0ah
- db "Hello, World!`"
debug 的格式:复制代码
- echo ,RP_0Ee0Eg74 42PZUXc!mHello, World!$>问好.com
- 问好
emu8086 的格式:复制代码
- sub al,52
- push ax
- pop di
- xor [di+65h],al
- xor [di+67h],al
- aaa
- xor al,20
- xor al,32
- push ax
- pop dx
- push bp
- pop ax
- db 63 21
- db 6d
- db 'Hello, World!$'
- rcx
- 24
- w
复制代码
- ORG 100h
- SUB AL,52h
- PUSH AX
- POP DI
- XOR [DI+65h],AL
- XOR [DI+67h],AL
- AAA
- XOR AL,20h
- XOR AL,32h
- PUSH AX
- POP DX
- PUSH BP
- POP AX
- DB "c!m"
- DB 'Hello, World!$'
emu8086 不能直接使用 insb insw outsb outsw,需要 db (define byte)复制代码
- *: and sub xor cmp j* daa das aaa inc dec push pop pusha popa imul insb insw outsb outsw
复制代码
- AX=0000 BX=0000 CX=00FF DX=0DF1 SP=FFFE BP=091E SI=0100 DI=FFFE IP=0100
复制代码
- P\[581560P\S
复制代码
- 62 BOUND
- 63 ARPL Ew,Rw
- 66 Operand Size Prefix
- 67 Address Size Prefix
复制代码
- 20/ AND r/m,r (8-bit) 40/@ INC AX 60/` PUSHA
- 21/! AND r/m,r (16-bit) 41/A INC CX 61/a POPA
- 22/" AND r,r/m (8-bit) 42/B INC DX 62/b BOUND r,m
- 23/# AND r,r/m (16-bit) 43/C INC BX 63/c ARPL r/m,r (16-bit)
- 24/$ AND AL,imm 44/D INC SP 64/d FS:
- 25/% AND AX,imm 45/E INC BP 65/e GS:
- 26/& ES: 46/F INC SI 66/f N/A
- 27/' DAA 47/G INC DI 67/g N/A
- 28/( SUB r/m,r (8-bit) 48/H DEC AX 68/h PUSH imm16
- 29/) SUB r/m,r (16-bit) 49/I DEC CX 69/i IMUL r,r/m,imm16
- 2A/* SUB r,r/m (8-bit) 4A/J DEC DX 6A/j Push imm8
- 2B/+ SUB r,r/m (16-bit) 4B/K DEC BX 6B/k IMUL r,r/m,imm8
- 2C/, SUB AL,imm8 4C/L DEC SP 6C/l INSB
- 2D/- SUB AX,imm16 4D/M DEC BP 6D/m INSW
- 2E/. CS: 4E/N DEC SI 6E/n OUTSB
- 2F// DAS 4F/O DEC DI 6F/o OUTSW
- 30/0 XOR r/m,r (8-bit) 50/P PUSH AX 70/p JO rel8
- 31/1 XOR r/m,r (16-bit) 51/Q PUSH CX 71/q JNO rel8
- 32/2 XOR r,r/m (8-bit) 52/R PUSH DX 72/r JC rel8
- 33/3 XOR r,r/m (16-bit) 53/S PUSH BX 73/s JNC rel8
- 34/4 XOR AL,imm 54/T PUSH SP 74/t JZ rel8
- 35/5 XOR AX,imm 55/U PUSH BP 75/u JNZ rel8
- 36/6 SS: 56/V PUSH SI 76/v JBE rel8
- 37/7 AAA 57/W PUSH DI 77/w JNBE rel8
- 38/8 CMP r/m,r (8-bit) 58/X POP AX 78/x JS rel8
- 39/9 CMP r/m,r (16-bit) 59/Y POP CX 79/y JNS rel8
- 3A/: CMP r,r/m (8-bit) 5A/Z POP DX 7A/z JP rel8
- 3B/; CMP r,r/m (16-bit) 5B/[ POP BX 7B/{ JNP rel8
- 3C/< CMP AL,imm 5C/\ POP SP 7C/| JL rel8
- 3D/= CMP AX,imm 5D/] POP BP 7D/} JNL rel8
- 3E/> DS: 5E/^ POP SI 7E/~ JLE rel8
- 3F/? AAS 5F/_ POP DI
复制代码
- @echo off
- echo jS[SX,SPZ,!P_772W/(]9(]@ !SX5SL !>printc.com
- echo 502500PPj`X,~P_0E50E=XZ/!j0X50L/!>p_0x00.com
- echo 592500PPj`X,~P_0E50E=XZ/!j0X50L/!>p_0x09.com
- echo 582520PPj`X,~P_0E50E=XZ/!j0X50L/!>p_0x0a.com
- echo 582550PPj`X,~P_0E50E=XZ/!j0X50L/!>p_0x0d.com
- echo 5a25z0PPj`X,~P_0E50E=XZ/!j0X50L/!>p_0x1b.com
- echo 5a25A0PPj`X,~P_0E50E=XZ/!j0X50L/!>p_space.com
- echo 5a25C0PPj`X,~P_0E50E=XZ/!j0X50L/!>p_quot.com
- echo 5a25D0PPj`X,~P_0E50E=XZ/!j0X50L/!>p_0x25.com
- echo 5a25G0PPj`X,~P_0E50E=XZ/!j0X50L/!>p_amp.com
- echo 5a25I0PPj`X,~P_0E50E=XZ/!j0X50L/!>p_0x28.com
- echo 5a25H0PPj`X,~P_0E50E=XZ/!j0X50L/!>p_0x29.com
- echo 5A25}0PPj`X,~P_0E50E=XZ/!j0X50L/!>print_lt.com
- echo 5C25}0PPj`X,~P_0E50E=XZ/!j0X50L/!>print_gt.com
- echo 5a25?0PPj`X,~P_0E50E=XZ/!j0X50L/!>p_caret.com
- echo , PP,dPZ]X1F61F?502500-!5Lo51!H-!>p_pipe.com
- echo , PP,aPZ]X1F61F?502500-!5Lo51!H-!>p_0x7f.com
- echo , PP,`PZ]X1F61F?502500-!5Lo51!H-!>p_0x80.com
- echo 503-10PPj`X,~P_0E50E=XZ/!j0X50L/!>p_0xff.com
- echo j`_WX4`PYAAAAPP,!P],~(FL(FO(FP(Fd(FmX2E"<@|c,'3APZXP4.74>P]XP2E#<@|c,'$OP">p_0x.com
- echo 1XWX502500(F"(F+-!X50m50!">>p_0x.com
- printc H >Hello.txt
- printc e >>Hello.txt
- printc l >>Hello.txt
- printc l >>Hello.txt
- printc o >>Hello.txt
- printc , >>Hello.txt
- p_space >>Hello.txt
- printc W >>Hello.txt
- printc o >>Hello.txt
- printc r >>Hello.txt
- printc l >>Hello.txt
- printc d >>Hello.txt
- printc ! >>Hello.txt
- p_0x0d >>Hello.txt
- p_0x0a >>Hello.txt
- type Hello.txt
- pause>nul
复制代码
- @echo off
- chcp 437 >nul
- echo T_j:X50$P5@@-}VP-0:4~P5l,500P-@?5_$P@-!n50cP51U50@P5!1P]TZ5A8510P(F7(F=-!X5`E-!>~tmp.com
- ~tmp.com>~tmp.txt
- graftabl 936 >nul
- cls
- type ~tmp.txt
- pause
复制代码
- @ECho OFF
- :: -!9P^0D00D77'!50M40'!
- type %0.bat>~tmp.com
- ~tmp.com
- del ~tmp.com>nul
复制代码
- @ECho OFF
- :: P-!9P^0D40D;X5=='!50K40'!
- type %0.bat>~tmp.com
- ~tmp.com
- del ~tmp.com>nul
复制代码
- @ECho OFF
- :: Q_X0EJ0MJ0MK0MORX-__-__-6APZRh01X500PHH,;P5 HHHHHH?P5UMPT]o*^^^4
- setlocal enabledelayedexpansion >nul
- type %0 >%0.com
- %0.com
- echo=
- pause>nul
- goto :eof
- :: ??????????????
- <子 ASCODE 部分>
欢迎光临 批处理之家 (http://www.bathome.net/) | Powered by Discuz! 7.2 |