阅读:1339回复:7
各位大牛,请帮我把这段汇编改成C代码,谢谢!!!
.586
.model flat,stdcall option casemap:none include \masm32\include\windows.inc include \masm32\include\user32.inc include \masm32\include\kernel32.inc include \masm32\include\masm32.inc includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib includelib \masm32\lib\masm32.lib Prodef typedef proto :dword,:dword,:dword,:dword lpPro typedef ptr Prodef UNICODE_STRING STRUCT _Length WORD ? MaximumLength WORD ? Buffer PWSTR ? UNICODE_STRING ENDS SYSTEM_THREAD_INFORMATION struct KernelTime LARGE_INTEGER <> UserTime LARGE_INTEGER <> CreateTime LARGE_INTEGER <> WaitTime ULONG ? StartAddress PVOID ? ClientId dd ? Priority dd ? BasePriority dd ? ContextSwitchCount ULONG ? State LONG ? WaitReason LONG ? SYSTEM_THREAD_INFORMATION ends SYSTEM_PROCESS_INFORMATION struct NextEntryDelta ULONG ? ThreadCount ULONG ? Reserved1 ULONG 6 dup(?) CreateTime LARGE_INTEGER <> UserTime LARGE_INTEGER <> KernelTime LARGE_INTEGER <> ProcessName UNICODE_STRING <> BasePriority dd ? ProcessId ULONG ? InheritedFromProcessId ULONG ? HandleCount ULONG ? Reserved2 ULONG 2 dup(?) VmCounters dd ? IoCounters dd ? Threads SYSTEM_THREAD_INFORMATION <> SYSTEM_PROCESS_INFORMATION ends .data szZwQuerySystemInformation db 'ZwQuerySystemInformation',0 szNtdll db 'Ntdll.dll',0 szHead db 'ProcessID',9h,9h,'ProcessName',0dh,0ah,0 szFmt db '%4d',9h,9h,9h,'%ws',0dh,0ah,0 .data? ZwQuerySystemInformation lpPro ? lpBuff dd ? szPrint db 256 dup(?) rLen dd ? .code Main proc invoke GetModuleHandle,offset szNtdll invoke GetProcAddress,eax,offset szZwQuerySystemInformation mov ZwQuerySystemInformation,eax invoke ZwQuerySystemInformation,5,offset lpBuff,0,offset rLen .if eax != 0 invoke GlobalAlloc,GMEM_FIXED or GMEM_ZEROINIT,rLen mov lpBuff,eax invoke ZwQuerySystemInformation,5,lpBuff,rLen,NULL .if eax == 0 mov esi,lpBuff assume esi:ptr SYSTEM_PROCESS_INFORMATION invoke StdOut,offset szHead .while [esi].NextEntryDelta !=0 invoke wsprintf,offset szPrint,offset szFmt,[esi].ProcessId,[esi].ProcessName.Buffer invoke StdOut,offset szPrint add esi,[esi].NextEntryDelta .endw .endif invoke GlobalFree,lpBuff .endif ret Main endp end Main |
|
沙发#
发布于:2007-07-10 15:30
楼上典型懒人,鉴定完毕
|
|
|
板凳#
发布于:2007-07-11 08:55
是的.
|
|
地板#
发布于:2007-07-11 09:14
这种伪汇编,和c基本上没区别...
|
|
|
地下室#
发布于:2007-07-11 15:56
写程序滴 当敢懒成这地步 佩服
|
|
5楼#
发布于:2007-07-13 18:20
我会,但是我绝对不帮你改!这辈子最恨懒人!
|
|
|
6楼#
发布于:2007-07-18 08:23
这不就是C语言的格式嘛
|
|
7楼#
发布于:2007-07-18 08:51
老第还没搞定,哈哈,跑这里发帖子来了?
|
|
|