|
目前用以下方法来判断 但觉得速度太慢 寻求更快的方法
debug 1
find --devices=h /windows/system32/version.dll | checksys
checksys 代码如下
- !BAT
- if "%~1"=="" && exit
- set i=0
- :start
- set /a i=%i%+1 > nul
- set sysp=%~1
- map --mem %sysp%/windows/system32/version.dll (rd) > nul
- calc *0x82d0=*0x82d0+*0x82d8-0x800 > nul
- calc *0x82d8=0x800 > nul
- cat --locate=\0\0\x44\0\0\0 --number=1 (rd)+1 | set skip=
- set /a skip=0x%skip%-0x30 > nul
- cat --locate=\0\0\0 --skip=%skip% --number=1 (rd)+1 | set skip=
- calc *0x82d0=*0x82d0+0x%skip%+3 > nul
- call Fn.67 *0x82d0 0x60000 3
- cat (md)0x300+1,3 | goto :_
- set sys%i%=unknown
- goto :disp
- :_5.0
- set sys%i%=Win2000
- goto :disp
- :_5.1
- set sys%i%=Winxp
- goto :disp
- :_5.2
- set sys%i%=Win2003
- goto :disp
- :_6.1
- set sys%i%=Win7
- goto :disp
- :_6.2
- set sys%i%=Win8
- goto :disp
-
- :disp
- if "%~2"=="" && exit
- shift
- goto :start
复制代码 |
|