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

📄 ddutil.asm

📁 一款不错的射击类游戏
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.386p
	ifdef ??version
	if    ??version GT 500H
	.mmx
	endif
	endif
	model flat
	ifndef	??version
	?debug	macro
	endm
	endif
	?debug	S "C:\Program Files\Borland\CBuilder5\Projects\新建文件夹\ddutil.cpp"
	?debug	T "C:\Program Files\Borland\CBuilder5\Projects\新建文件夹\ddutil.cpp"
_TEXT	segment dword public use32 'CODE'
_TEXT	ends
_DATA	segment dword public use32 'DATA'
_DATA	ends
_BSS	segment dword public use32 'BSS'
_BSS	ends
$$BSYMS	segment byte public use32 'DEBSYM'
$$BSYMS	ends
$$BTYPES	segment byte public use32 'DEBTYP'
$$BTYPES	ends
$$BNAMES	segment byte public use32 'DEBNAM'
$$BNAMES	ends
$$BROWSE	segment byte public use32 'DEBSYM'
$$BROWSE	ends
$$BROWFILE	segment byte public use32 'DEBSYM'
$$BROWFILE	ends
DGROUP	group	_BSS,_DATA
_DATA	segment dword public use32 'DATA'
@_$DCKC$@CDisplay@$bctr$qv	segment virtual
	align	2
@@_$DCKC$@CDisplay@$bctr$qv	label	dword
	dd	@@$xt$p8CDisplay
	dd	5
	dd	8
	dd	0
@_$DCKC$@CDisplay@$bctr$qv	ends
_DATA	ends
_DATA	segment dword public use32 'DATA'
@_$ECTLC$@CDisplay@$bctr$qv	segment virtual
	align	2
@@_$ECTLC$@CDisplay@$bctr$qv	label	dword
	dd	0
	dd	-36
	dw	0
	dw	5
	dd	0
	dd	@@_$DCKC$@CDisplay@$bctr$qv
@_$ECTLC$@CDisplay@$bctr$qv	ends
_DATA	ends
_TEXT	segment dword public use32 'CODE'
@CDisplay@$bctr$qv	segment virtual
@@CDisplay@$bctr$qv	proc	near
?live16385@0:
	?debug L 23
	push      ebp
	mov       ebp,esp
	add       esp,-36
@1:
	mov       eax,offset @@_$ECTLC$@CDisplay@$bctr$qv
	call      @__InitExceptBlockLDTC
	?debug L 24
	mov       word ptr [ebp-20],8
	mov       edx,offset @@CDisplay@3+12
	mov       ecx,dword ptr [ebp+8]
	mov       dword ptr [ecx],edx
	?debug L 25
	mov       eax,dword ptr [ebp+8]
	xor       edx,edx
	mov       dword ptr [eax+4],edx
	?debug L 26
	mov       ecx,dword ptr [ebp+8]
	xor       eax,eax
	mov       dword ptr [ecx+8],eax
	?debug L 27
	mov       edx,dword ptr [ebp+8]
	xor       ecx,ecx
	mov       dword ptr [edx+12],ecx
	?debug L 28
	mov       eax,dword ptr [ebp+8]
	xor       edx,edx
	mov       dword ptr [eax+16],edx
	?debug L 29
	mov       ecx,dword ptr [ebp-36]
	mov       dword ptr fs:[0],ecx
	mov       eax,dword ptr [ebp+8]
	?debug L 29
@3:
@2:
	mov       esp,ebp
	pop       ebp
	ret 
	?debug L 0
@@CDisplay@$bctr$qv	endp
@CDisplay@$bctr$qv	ends
_TEXT	ends
$$BSYMS	segment byte public use32 'DEBSYM'
	db	2
	db	0
	db	0
	db	0
	dw	65
	dw	517
	dw	0
	dw	0
	dw	0
	dw	0
	dw	0
	dw	0
	dd	?patch1
	dd	?patch2
	dd	?patch3
	df	@@CDisplay@$bctr$qv
	dw	0
	dw	4096
	dw	0
	dw	1
	dw	0
	dw	0
	dw	0
	db	18
	db	64
	db	67
	db	68
	db	105
	db	115
	db	112
	db	108
	db	97
	db	121
	db	64
	db	36
	db	98
	db	99
	db	116
	db	114
	db	36
	db	113
	db	118
	dw	18
	dw	512
	dw	8
	dw	0
	dw	4097
	dw	0
	dw	2
	dw	0
	dw	0
	dw	0
?patch1	equ	@3-@@CDisplay@$bctr$qv+4
?patch2	equ	0
?patch3	equ	@3-@@CDisplay@$bctr$qv
	dw	2
	dw	6
	dw	4
	dw	531
	dw	0
$$BSYMS	ends
_TEXT	segment dword public use32 'CODE'
@CDisplay@$bdtr$qv	segment virtual
@@CDisplay@$bdtr$qv	proc	near
?live16389@0:
	?debug L 38
	push      ebp
	mov       ebp,esp
@4:
	cmp       dword ptr [ebp+8],0
	je        short @5
	mov       eax,offset @@CDisplay@3+12
	mov       edx,dword ptr [ebp+8]
	mov       dword ptr [edx],eax
	?debug L 40
	mov       ecx,dword ptr [ebp+8]
	push      ecx
	mov       eax,dword ptr [ecx]
	call      dword ptr [eax]
	pop       ecx
	test      byte ptr [ebp+12],1
	je        short @6
	push      dword ptr [ebp+8]
	call      @$bdele$qpv
	pop       ecx
	?debug L 41
@6:
@5:
@7:
	pop       ebp
	ret 
	?debug L 0
@@CDisplay@$bdtr$qv	endp
@CDisplay@$bdtr$qv	ends
_TEXT	ends
$$BSYMS	segment byte public use32 'DEBSYM'
	dw	65
	dw	517
	dw	0
	dw	0
	dw	0
	dw	0
	dw	0
	dw	0
	dd	?patch4
	dd	?patch5
	dd	?patch6
	df	@@CDisplay@$bdtr$qv
	dw	0
	dw	4099
	dw	0
	dw	3
	dw	0
	dw	0
	dw	0
	db	18
	db	64
	db	67
	db	68
	db	105
	db	115
	db	112
	db	108
	db	97
	db	121
	db	64
	db	36
	db	98
	db	100
	db	116
	db	114
	db	36
	db	113
	db	118
	dw	18
	dw	512
	dw	8
	dw	0
	dw	4097
	dw	0
	dw	4
	dw	0
	dw	0
	dw	0
?patch4	equ	@7-@@CDisplay@$bdtr$qv+2
?patch5	equ	0
?patch6	equ	@7-@@CDisplay@$bdtr$qv
	dw	2
	dw	6
$$BSYMS	ends
_TEXT	segment dword public use32 'CODE'
@CDisplay@DestroyObjects$qv	segment virtual
@@CDisplay@DestroyObjects$qv	proc	near
?live16390@0:
	?debug L 50
	push      ebp
	mov       ebp,esp
	?debug L 52
@8:
	mov       eax,dword ptr [ebp+8]
	cmp       dword ptr [eax+16],0
	je        short @9
	mov       edx,dword ptr [ebp+8]
	mov       ecx,dword ptr [edx+16]
	push      ecx
	mov       eax,dword ptr [ecx]
	call      dword ptr [eax+8]
	mov       edx,dword ptr [ebp+8]
	xor       ecx,ecx
	mov       dword ptr [edx+16],ecx
	?debug L 53
@9:
	mov       eax,dword ptr [ebp+8]
	cmp       dword ptr [eax+12],0
	je        short @10
	mov       edx,dword ptr [ebp+8]
	mov       ecx,dword ptr [edx+12]
	push      ecx
	mov       eax,dword ptr [ecx]
	call      dword ptr [eax+8]
	mov       edx,dword ptr [ebp+8]
	xor       ecx,ecx
	mov       dword ptr [edx+12],ecx
	?debug L 54
@10:
	mov       eax,dword ptr [ebp+8]
	cmp       dword ptr [eax+8],0
	je        short @11
	mov       edx,dword ptr [ebp+8]
	mov       ecx,dword ptr [edx+8]
	push      ecx
	mov       eax,dword ptr [ecx]
	call      dword ptr [eax+8]
	mov       edx,dword ptr [ebp+8]
	xor       ecx,ecx
	mov       dword ptr [edx+8],ecx
	?debug L 56
@11:
	mov       eax,dword ptr [ebp+8]
	cmp       dword ptr [eax+4],0
	je        short @12
	?debug L 57
	push      8
	mov       edx,dword ptr [ebp+8]
	push      dword ptr [edx+20]
	mov       ecx,dword ptr [ebp+8]
	mov       eax,dword ptr [ecx+4]
	push      eax
	mov       edx,dword ptr [eax]
	call      dword ptr [edx+80]
	?debug L 59
@12:
	mov       ecx,dword ptr [ebp+8]
	cmp       dword ptr [ecx+4],0
	je        short @13
	mov       eax,dword ptr [ebp+8]
	mov       edx,dword ptr [eax+4]
	push      edx
	mov       ecx,dword ptr [edx]
	call      dword ptr [ecx+8]
	mov       eax,dword ptr [ebp+8]
	xor       edx,edx
	mov       dword ptr [eax+4],edx
	?debug L 61
@13:
	xor       eax,eax
	?debug L 62
@15:
@14:
	pop       ebp
	ret 
	?debug L 0
@@CDisplay@DestroyObjects$qv	endp
@CDisplay@DestroyObjects$qv	ends
_TEXT	ends
$$BSYMS	segment byte public use32 'DEBSYM'
	dw	74
	dw	517
	dw	0
	dw	0
	dw	0
	dw	0
	dw	0
	dw	0
	dd	?patch7
	dd	?patch8
	dd	?patch9
	df	@@CDisplay@DestroyObjects$qv
	dw	0
	dw	4101
	dw	0
	dw	5
	dw	0
	dw	0
	dw	0
	db	27
	db	64
	db	67
	db	68
	db	105
	db	115
	db	112
	db	108
	db	97
	db	121
	db	64
	db	68
	db	101
	db	115
	db	116
	db	114
	db	111
	db	121
	db	79
	db	98
	db	106
	db	101
	db	99
	db	116
	db	115
	db	36
	db	113
	db	118
	dw	18
	dw	512
	dw	8
	dw	0
	dw	4097
	dw	0
	dw	6
	dw	0
	dw	0
	dw	0
?patch7	equ	@15-@@CDisplay@DestroyObjects$qv+2
?patch8	equ	0
?patch9	equ	@15-@@CDisplay@DestroyObjects$qv
	dw	2
	dw	6
$$BSYMS	ends
_TEXT	segment dword public use32 'CODE'
@CDisplay@CreateFullScreenDisplay$qpvululul	segment virtual
@@CDisplay@CreateFullScreenDisplay$qpvululul	proc	near
?live16391@0:
	?debug L 71
	push      ebp
	mov       ebp,esp
	add       esp,-144
	?debug L 77
@16:
	mov       eax,dword ptr [ebp+8]
	push      eax
	mov       edx,dword ptr [eax]
	call      dword ptr [edx]
	pop       ecx
	?debug L 80
	push      0
	push      offset _IID_IDirectDraw7
	mov       ecx,dword ptr [ebp+8]
	add       ecx,4
	push      ecx
	push      0
	call      @DirectDrawCreateEx
	mov       dword ptr [ebp-4],eax
	test      eax,eax
	jge       short @17
	?debug L 82
	mov       eax,-2147467259
	jmp       @18
	?debug L 85
@17:
	push      17
	push      dword ptr [ebp+12]
	mov       edx,dword ptr [ebp+8]
	mov       ecx,dword ptr [edx+4]
	push      ecx
	mov       eax,dword ptr [ecx]
	call      dword ptr [eax+80]
	mov       dword ptr [ebp-4],eax
	?debug L 86
	cmp       dword ptr [ebp-4],0
	jge       short @19
	?debug L 87
	mov       eax,-2147467259
	jmp       @18
	?debug L 90
@19:
	push      0
	push      0
	push      dword ptr [ebp+24]
	push      dword ptr [ebp+20]
	push      dword ptr [ebp+16]
	mov       edx,dword ptr [ebp+8]
	mov       ecx,dword ptr [edx+4]
	push      ecx
	mov       eax,dword ptr [ecx]
	call      dword ptr [eax+84]
	test      eax,eax
	jge       short @20
	?debug L 91
	mov       eax,-2147467259
	jmp       @18
	?debug L 95
@20:
	push      124
	push      0
	lea       edx,dword ptr [ebp-128]
	push      edx
	call      @_memset
	add       esp,12
	?debug L 96
	mov       dword ptr [ebp-128],124
	?debug L 97
	mov       dword ptr [ebp-124],33
	?debug L 98
	mov       dword ptr [ebp-24],10776
	?debug L 100
	mov       dword ptr [ebp-108],1
	?debug L 102
	push      0
	mov       ecx,dword ptr [ebp+8]
	add       ecx,8
	push      ecx
	lea       eax,dword ptr [ebp-128]
	push      eax
	mov       edx,dword ptr [ebp+8]
	mov       ecx,dword ptr [edx+4]
	push      ecx
	mov       eax,dword ptr [ecx]
	call      dword ptr [eax+24]
	mov       dword ptr [ebp-4],eax
	test      eax,eax
	jge       short @21
	?debug L 104
	mov       eax,-2147467259
	jmp       short @18
	?debug L 108
@21:
	push      16
	push      0
	lea       edx,dword ptr [ebp-144]
	push      edx
	call      @_memset
	add       esp,12
	?debug L 109
	mov       dword ptr [ebp-144],4
	?debug L 111
	mov       ecx,dword ptr [ebp+8]
	add       ecx,12
	push      ecx
	lea       eax,dword ptr [ebp-144]
	push      eax
	mov       edx,dword ptr [ebp+8]
	mov       ecx,dword ptr [edx+8]
	push      ecx
	mov       eax,dword ptr [ecx]
	call      dword ptr [eax+48]
	mov       dword ptr [ebp-4],eax
	test      eax,eax
	jge       short @22
	?debug L 113
	mov       eax,-2147467259
	jmp       short @18
	?debug L 115
@22:
	mov       edx,dword ptr [ebp+8]
	mov       ecx,dword ptr [edx+12]
	push      ecx
	mov       eax,dword ptr [ecx]
	call      dword ptr [eax+4]
	?debug L 117
	mov       edx,dword ptr [ebp+12]
	mov       ecx,dword ptr [ebp+8]
	mov       dword ptr [ecx+20],edx
	?debug L 118
	mov       eax,dword ptr [ebp+8]
	xor       edx,edx
	mov       dword ptr [eax+40],edx
	?debug L 119
	push      dword ptr [ebp+8]
	call      @@CDisplay@UpdateBounds$qv
	pop       ecx
	?debug L 121
	xor       eax,eax
	?debug L 122
@23:
@18:
	mov       esp,ebp
	pop       ebp
	ret 
	?debug L 0
@@CDisplay@CreateFullScreenDisplay$qpvululul	endp
@CDisplay@CreateFullScreenDisplay$qpvululul	ends
_TEXT	ends
$$BSYMS	segment byte public use32 'DEBSYM'
	dw	90
	dw	517
	dw	0
	dw	0
	dw	0
	dw	0
	dw	0
	dw	0
	dd	?patch10
	dd	?patch11
	dd	?patch12
	df	@@CDisplay@CreateFullScreenDisplay$qpvululul
	dw	0
	dw	4103
	dw	0
	dw	7
	dw	0
	dw	0
	dw	0
	db	43
	db	64
	db	67
	db	68
	db	105
	db	115
	db	112
	db	108
	db	97
	db	121
	db	64
	db	67
	db	114
	db	101
	db	97
	db	116
	db	101
	db	70
	db	117
	db	108
	db	108
	db	83
	db	99
	db	114
	db	101
	db	101
	db	110
	db	68
	db	105
	db	115
	db	112
	db	108
	db	97
	db	121
	db	36
	db	113
	db	112
	db	118
	db	117
	db	108
	db	117
	db	108
	db	117
	db	108
	dw	18
	dw	512
	dw	8
	dw	0
	dw	4097
	dw	0
	dw	8
	dw	0
	dw	0
	dw	0
	dw	18
	dw	512
	dw	12
	dw	0
	dw	1027
	dw	0
	dw	9
	dw	0
	dw	0
	dw	0
	dw	18
	dw	512
	dw	16
	dw	0
	dw	34
	dw	0
	dw	10
	dw	0
	dw	0
	dw	0
	dw	18
	dw	512
	dw	20
	dw	0
	dw	34
	dw	0
	dw	11
	dw	0
	dw	0
	dw	0
	dw	18
	dw	512
	dw	24
	dw	0
	dw	34
	dw	0
	dw	12
	dw	0
	dw	0
	dw	0
	dw	18
	dw	512
	dw	65392
	dw	65535
	dw	65533
	dw	65535
	dw	13
	dw	0
	dw	0
	dw	0
	dw	18
	dw	512
	dw	65408
	dw	65535
	dw	65532
	dw	65535
	dw	14
	dw	0
	dw	0
	dw	0
	dw	18
	dw	512
	dw	65532
	dw	65535
	dw	18
	dw	0
	dw	15
	dw	0
	dw	0
	dw	0
?patch10	equ	@23-@@CDisplay@CreateFullScreenDisplay$qpvululul+4
?patch11	equ	0
?patch12	equ	@23-@@CDisplay@CreateFullScreenDisplay$qpvululul
	dw	2
	dw	6
	dw	4
	dw	531
	dw	0
$$BSYMS	ends
_TEXT	segment dword public use32 'CODE'
@CDisplay@CreateWindowedDisplay$qpvulul	segment virtual
@@CDisplay@CreateWindowedDisplay$qpvulul	proc	near

⌨️ 快捷键说明

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