⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mscomm.cod

📁 一个虚拟串口读取程序
💻 COD
📖 第 1 页 / 共 5 页
字号:
; 135  : {

  0043f	55		 push	 ebp
  00440	8b ec		 mov	 ebp, esp
  00442	83 ec 08	 sub	 esp, 8
  00445	c7 45 f8 cc cc
	cc cc		 mov	 DWORD PTR [ebp-8], -858993460 ; ccccccccH
  0044c	c7 45 fc cc cc
	cc cc		 mov	 DWORD PTR [ebp-4], -858993460 ; ccccccccH
  00453	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 136  : 	short result;
; 137  : 	InvokeHelper(0xb, DISPATCH_PROPERTYGET, VT_I2, (void*)&result, NULL);

  00456	6a 00		 push	 0
  00458	8d 45 fc	 lea	 eax, DWORD PTR _result$[ebp]
  0045b	50		 push	 eax
  0045c	6a 02		 push	 2
  0045e	6a 02		 push	 2
  00460	6a 0b		 push	 11			; 0000000bH
  00462	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00465	51		 push	 ecx
  00466	e8 00 00 00 00	 call	 ?InvokeHelper@CWnd@@QAAXJGGPAXPBEZZ ; CWnd::InvokeHelper
  0046b	83 c4 18	 add	 esp, 24			; 00000018H

; 138  : 	return result;

  0046e	66 8b 45 fc	 mov	 ax, WORD PTR _result$[ebp]

; 139  : }

  00472	83 c4 08	 add	 esp, 8
  00475	3b ec		 cmp	 ebp, esp
  00477	e8 00 00 00 00	 call	 __chkesp
  0047c	8b e5		 mov	 esp, ebp
  0047e	5d		 pop	 ebp
  0047f	c3		 ret	 0
?GetInBufferSize@CMSComm@@QAEFXZ ENDP			; CMSComm::GetInBufferSize
_TEXT	ENDS
PUBLIC	?SetInBufferCount@CMSComm@@QAEXF@Z		; CMSComm::SetInBufferCount
_TEXT	SEGMENT
_nNewValue$ = 8
_this$ = -4
?SetInBufferCount@CMSComm@@QAEXF@Z PROC NEAR		; CMSComm::SetInBufferCount

; 142  : {

  00480	55		 push	 ebp
  00481	8b ec		 mov	 ebp, esp
  00483	51		 push	 ecx
  00484	c7 45 fc cc cc
	cc cc		 mov	 DWORD PTR [ebp-4], -858993460 ; ccccccccH
  0048b	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 143  : 	static BYTE parms[] =
; 144  : 		VTS_I2;
; 145  : 	InvokeHelper(0xc, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
; 146  : 		 nNewValue);

  0048e	0f bf 45 08	 movsx	 eax, WORD PTR _nNewValue$[ebp]
  00492	50		 push	 eax
  00493	68 00 00 00 00	 push	 OFFSET FLAT:_?parms@?1??SetInBufferCount@CMSComm@@QAEXF@Z@4PAEA
  00498	6a 00		 push	 0
  0049a	6a 00		 push	 0
  0049c	6a 04		 push	 4
  0049e	6a 0c		 push	 12			; 0000000cH
  004a0	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  004a3	51		 push	 ecx
  004a4	e8 00 00 00 00	 call	 ?InvokeHelper@CWnd@@QAAXJGGPAXPBEZZ ; CWnd::InvokeHelper
  004a9	83 c4 1c	 add	 esp, 28			; 0000001cH

; 147  : }

  004ac	83 c4 04	 add	 esp, 4
  004af	3b ec		 cmp	 ebp, esp
  004b1	e8 00 00 00 00	 call	 __chkesp
  004b6	8b e5		 mov	 esp, ebp
  004b8	5d		 pop	 ebp
  004b9	c2 04 00	 ret	 4
?SetInBufferCount@CMSComm@@QAEXF@Z ENDP			; CMSComm::SetInBufferCount
_TEXT	ENDS
PUBLIC	?GetInBufferCount@CMSComm@@QAEFXZ		; CMSComm::GetInBufferCount
_TEXT	SEGMENT
_this$ = -8
_result$ = -4
?GetInBufferCount@CMSComm@@QAEFXZ PROC NEAR		; CMSComm::GetInBufferCount

; 150  : {

  004bc	55		 push	 ebp
  004bd	8b ec		 mov	 ebp, esp
  004bf	83 ec 08	 sub	 esp, 8
  004c2	c7 45 f8 cc cc
	cc cc		 mov	 DWORD PTR [ebp-8], -858993460 ; ccccccccH
  004c9	c7 45 fc cc cc
	cc cc		 mov	 DWORD PTR [ebp-4], -858993460 ; ccccccccH
  004d0	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 151  : 	short result;
; 152  : 	InvokeHelper(0xc, DISPATCH_PROPERTYGET, VT_I2, (void*)&result, NULL);

  004d3	6a 00		 push	 0
  004d5	8d 45 fc	 lea	 eax, DWORD PTR _result$[ebp]
  004d8	50		 push	 eax
  004d9	6a 02		 push	 2
  004db	6a 02		 push	 2
  004dd	6a 0c		 push	 12			; 0000000cH
  004df	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  004e2	51		 push	 ecx
  004e3	e8 00 00 00 00	 call	 ?InvokeHelper@CWnd@@QAAXJGGPAXPBEZZ ; CWnd::InvokeHelper
  004e8	83 c4 18	 add	 esp, 24			; 00000018H

; 153  : 	return result;

  004eb	66 8b 45 fc	 mov	 ax, WORD PTR _result$[ebp]

; 154  : }

  004ef	83 c4 08	 add	 esp, 8
  004f2	3b ec		 cmp	 ebp, esp
  004f4	e8 00 00 00 00	 call	 __chkesp
  004f9	8b e5		 mov	 esp, ebp
  004fb	5d		 pop	 ebp
  004fc	c3		 ret	 0
?GetInBufferCount@CMSComm@@QAEFXZ ENDP			; CMSComm::GetInBufferCount
_TEXT	ENDS
PUBLIC	?SetBreak@CMSComm@@QAEXH@Z			; CMSComm::SetBreak
_TEXT	SEGMENT
_bNewValue$ = 8
_this$ = -4
?SetBreak@CMSComm@@QAEXH@Z PROC NEAR			; CMSComm::SetBreak

; 157  : {

  004fd	55		 push	 ebp
  004fe	8b ec		 mov	 ebp, esp
  00500	51		 push	 ecx
  00501	c7 45 fc cc cc
	cc cc		 mov	 DWORD PTR [ebp-4], -858993460 ; ccccccccH
  00508	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 158  : 	static BYTE parms[] =
; 159  : 		VTS_BOOL;
; 160  : 	InvokeHelper(0xd, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
; 161  : 		 bNewValue);

  0050b	8b 45 08	 mov	 eax, DWORD PTR _bNewValue$[ebp]
  0050e	50		 push	 eax
  0050f	68 00 00 00 00	 push	 OFFSET FLAT:_?parms@?1??SetBreak@CMSComm@@QAEXH@Z@4PAEA
  00514	6a 00		 push	 0
  00516	6a 00		 push	 0
  00518	6a 04		 push	 4
  0051a	6a 0d		 push	 13			; 0000000dH
  0051c	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0051f	51		 push	 ecx
  00520	e8 00 00 00 00	 call	 ?InvokeHelper@CWnd@@QAAXJGGPAXPBEZZ ; CWnd::InvokeHelper
  00525	83 c4 1c	 add	 esp, 28			; 0000001cH

; 162  : }

  00528	83 c4 04	 add	 esp, 4
  0052b	3b ec		 cmp	 ebp, esp
  0052d	e8 00 00 00 00	 call	 __chkesp
  00532	8b e5		 mov	 esp, ebp
  00534	5d		 pop	 ebp
  00535	c2 04 00	 ret	 4
?SetBreak@CMSComm@@QAEXH@Z ENDP				; CMSComm::SetBreak
_TEXT	ENDS
PUBLIC	?GetBreak@CMSComm@@QAEHXZ			; CMSComm::GetBreak
_TEXT	SEGMENT
_this$ = -8
_result$ = -4
?GetBreak@CMSComm@@QAEHXZ PROC NEAR			; CMSComm::GetBreak

; 165  : {

  00538	55		 push	 ebp
  00539	8b ec		 mov	 ebp, esp
  0053b	83 ec 08	 sub	 esp, 8
  0053e	c7 45 f8 cc cc
	cc cc		 mov	 DWORD PTR [ebp-8], -858993460 ; ccccccccH
  00545	c7 45 fc cc cc
	cc cc		 mov	 DWORD PTR [ebp-4], -858993460 ; ccccccccH
  0054c	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 166  : 	BOOL result;
; 167  : 	InvokeHelper(0xd, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, NULL);

  0054f	6a 00		 push	 0
  00551	8d 45 fc	 lea	 eax, DWORD PTR _result$[ebp]
  00554	50		 push	 eax
  00555	6a 0b		 push	 11			; 0000000bH
  00557	6a 02		 push	 2
  00559	6a 0d		 push	 13			; 0000000dH
  0055b	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  0055e	51		 push	 ecx
  0055f	e8 00 00 00 00	 call	 ?InvokeHelper@CWnd@@QAAXJGGPAXPBEZZ ; CWnd::InvokeHelper
  00564	83 c4 18	 add	 esp, 24			; 00000018H

; 168  : 	return result;

  00567	8b 45 fc	 mov	 eax, DWORD PTR _result$[ebp]

; 169  : }

  0056a	83 c4 08	 add	 esp, 8
  0056d	3b ec		 cmp	 ebp, esp
  0056f	e8 00 00 00 00	 call	 __chkesp
  00574	8b e5		 mov	 esp, ebp
  00576	5d		 pop	 ebp
  00577	c3		 ret	 0
?GetBreak@CMSComm@@QAEHXZ ENDP				; CMSComm::GetBreak
_TEXT	ENDS
PUBLIC	?SetInputLen@CMSComm@@QAEXF@Z			; CMSComm::SetInputLen
_TEXT	SEGMENT
_nNewValue$ = 8
_this$ = -4
?SetInputLen@CMSComm@@QAEXF@Z PROC NEAR			; CMSComm::SetInputLen

; 172  : {

  00578	55		 push	 ebp
  00579	8b ec		 mov	 ebp, esp
  0057b	51		 push	 ecx
  0057c	c7 45 fc cc cc
	cc cc		 mov	 DWORD PTR [ebp-4], -858993460 ; ccccccccH
  00583	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 173  : 	static BYTE parms[] =
; 174  : 		VTS_I2;
; 175  : 	InvokeHelper(0xe, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
; 176  : 		 nNewValue);

  00586	0f bf 45 08	 movsx	 eax, WORD PTR _nNewValue$[ebp]
  0058a	50		 push	 eax
  0058b	68 00 00 00 00	 push	 OFFSET FLAT:_?parms@?1??SetInputLen@CMSComm@@QAEXF@Z@4PAEA
  00590	6a 00		 push	 0
  00592	6a 00		 push	 0
  00594	6a 04		 push	 4
  00596	6a 0e		 push	 14			; 0000000eH
  00598	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  0059b	51		 push	 ecx
  0059c	e8 00 00 00 00	 call	 ?InvokeHelper@CWnd@@QAAXJGGPAXPBEZZ ; CWnd::InvokeHelper
  005a1	83 c4 1c	 add	 esp, 28			; 0000001cH

; 177  : }

  005a4	83 c4 04	 add	 esp, 4
  005a7	3b ec		 cmp	 ebp, esp
  005a9	e8 00 00 00 00	 call	 __chkesp
  005ae	8b e5		 mov	 esp, ebp
  005b0	5d		 pop	 ebp
  005b1	c2 04 00	 ret	 4
?SetInputLen@CMSComm@@QAEXF@Z ENDP			; CMSComm::SetInputLen
_TEXT	ENDS
PUBLIC	?GetInputLen@CMSComm@@QAEFXZ			; CMSComm::GetInputLen
_TEXT	SEGMENT
_this$ = -8
_result$ = -4
?GetInputLen@CMSComm@@QAEFXZ PROC NEAR			; CMSComm::GetInputLen

; 180  : {

  005b4	55		 push	 ebp
  005b5	8b ec		 mov	 ebp, esp
  005b7	83 ec 08	 sub	 esp, 8
  005ba	c7 45 f8 cc cc
	cc cc		 mov	 DWORD PTR [ebp-8], -858993460 ; ccccccccH
  005c1	c7 45 fc cc cc
	cc cc		 mov	 DWORD PTR [ebp-4], -858993460 ; ccccccccH
  005c8	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 181  : 	short result;
; 182  : 	InvokeHelper(0xe, DISPATCH_PROPERTYGET, VT_I2, (void*)&result, NULL);

  005cb	6a 00		 push	 0
  005cd	8d 45 fc	 lea	 eax, DWORD PTR _result$[ebp]
  005d0	50		 push	 eax
  005d1	6a 02		 push	 2
  005d3	6a 02		 push	 2
  005d5	6a 0e		 push	 14			; 0000000eH
  005d7	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  005da	51		 push	 ecx
  005db	e8 00 00 00 00	 call	 ?InvokeHelper@CWnd@@QAAXJGGPAXPBEZZ ; CWnd::InvokeHelper
  005e0	83 c4 18	 add	 esp, 24			; 00000018H

; 183  : 	return result;

  005e3	66 8b 45 fc	 mov	 ax, WORD PTR _result$[ebp]

; 184  : }

  005e7	83 c4 08	 add	 esp, 8
  005ea	3b ec		 cmp	 ebp, esp
  005ec	e8 00 00 00 00	 call	 __chkesp
  005f1	8b e5		 mov	 esp, ebp
  005f3	5d		 pop	 ebp
  005f4	c3		 ret	 0
?GetInputLen@CMSComm@@QAEFXZ ENDP			; CMSComm::GetInputLen
_TEXT	ENDS
PUBLIC	?SetNullDiscard@CMSComm@@QAEXH@Z		; CMSComm::SetNullDiscard
_TEXT	SEGMENT
_bNewValue$ = 8
_this$ = -4
?SetNullDiscard@CMSComm@@QAEXH@Z PROC NEAR		; CMSComm::SetNullDiscard

; 187  : {

  005f5	55		 push	 ebp
  005f6	8b ec		 mov	 ebp, esp
  005f8	51		 push	 ecx
  005f9	c7 45 fc cc cc
	cc cc		 mov	 DWORD PTR [ebp-4], -858993460 ; ccccccccH
  00600	89 4d fc	 mov	 DWORD PTR _this$[ebp], ecx

; 188  : 	static BYTE parms[] =
; 189  : 		VTS_BOOL;
; 190  : 	InvokeHelper(0x10, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
; 191  : 		 bNewValue);

  00603	8b 45 08	 mov	 eax, DWORD PTR _bNewValue$[ebp]
  00606	50		 push	 eax
  00607	68 00 00 00 00	 push	 OFFSET FLAT:_?parms@?1??SetNullDiscard@CMSComm@@QAEXH@Z@4PAEA
  0060c	6a 00		 push	 0
  0060e	6a 00		 push	 0
  00610	6a 04		 push	 4
  00612	6a 10		 push	 16			; 00000010H
  00614	8b 4d fc	 mov	 ecx, DWORD PTR _this$[ebp]
  00617	51		 push	 ecx
  00618	e8 00 00 00 00	 call	 ?InvokeHelper@CWnd@@QAAXJGGPAXPBEZZ ; CWnd::InvokeHelper
  0061d	83 c4 1c	 add	 esp, 28			; 0000001cH

; 192  : }

  00620	83 c4 04	 add	 esp, 4
  00623	3b ec		 cmp	 ebp, esp
  00625	e8 00 00 00 00	 call	 __chkesp
  0062a	8b e5		 mov	 esp, ebp
  0062c	5d		 pop	 ebp
  0062d	c2 04 00	 ret	 4
?SetNullDiscard@CMSComm@@QAEXH@Z ENDP			; CMSComm::SetNullDiscard
_TEXT	ENDS
PUBLIC	?GetNullDiscard@CMSComm@@QAEHXZ			; CMSComm::GetNullDiscard
_TEXT	SEGMENT
_this$ = -8
_result$ = -4
?GetNullDiscard@CMSComm@@QAEHXZ PROC NEAR		; CMSComm::GetNullDiscard

; 195  : {

  00630	55		 push	 ebp
  00631	8b ec		 mov	 ebp, esp
  00633	83 ec 08	 sub	 esp, 8
  00636	c7 45 f8 cc cc
	cc cc		 mov	 DWORD PTR [ebp-8], -858993460 ; ccccccccH
  0063d	c7 45 fc cc cc
	cc cc		 mov	 DWORD PTR [ebp-4], -858993460 ; ccccccccH
  00644	89 4d f8	 mov	 DWORD PTR _this$[ebp], ecx

; 196  : 	BOOL result;
; 197  : 	InvokeHelper(0x10, DISPATCH_PROPERTYGET, VT_BOOL, (void*)&result, NULL);

  00647	6a 00		 push	 0
  00649	8d 45 fc	 lea	 eax, DWORD PTR _result$[ebp]
  0064c	50		 push	 eax
  0064d	6a 0b		 push	 11			; 0000000bH
  0064f	6a 02		 push	 2
  00651	6a 10		 push	 16			; 00000010H
  00653	8b 4d f8	 mov	 ecx, DWORD PTR _this$[ebp]
  00656	51		 push	 ecx
  00657	e8 00 00 00 00	 call	 ?InvokeHelper@CWnd@@QAAXJGGPAXPBEZZ ; CWnd::InvokeHelper
  0065c	83 c4 18	 add	 esp, 24			; 00000018H

; 198  : 	return result;

  0065f	8b 45 fc	 mov	 eax, DWORD PTR _result$[ebp]

; 199  : }

  00662	83 c4 08	 add	 esp, 8
  00665	3b ec		 cmp	 ebp, esp
  00667	e8 00 00 00 00	 call	 __chkesp
  0066c	8b e5		 mov	 esp, ebp
  0066e	5d		 pop	 ebp
  0066f	c3		 ret	 0
?GetNullDiscard@CMSComm@@QAEHXZ ENDP			; CMSComm::GetNullDiscard
_TEXT	ENDS
PUBLIC	?SetOutBufferSize@CMSComm@@QAEXF@Z		; CMSComm::SetOutBufferSize
_TEXT	SEGMENT
_nNewValue$ = 8

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -