📄 ddutil.asm
字号:
dw 57
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65468
dw 65535
dw 33
dw 0
dw 58
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65471
dw 65535
dw 32
dw 0
dw 59
dw 0
dw 0
dw 0
dw 24
dw 519
dw 0
dw 0
dw 0
dw 0
dd ?patch27
df @74
dw 0
dw 0
dw 18
dw 512
dw 65448
dw 65535
dw 116
dw 0
dw 60
dw 0
dw 0
dw 0
?patch27 equ @79-@74
dw 2
dw 6
dw 24
dw 519
dw 0
dw 0
dw 0
dw 0
dd ?patch28
df @82
dw 0
dw 0
dw 18
dw 512
dw 65444
dw 65535
dw 116
dw 0
dw 61
dw 0
dw 0
dw 0
?patch28 equ @88-@82
dw 2
dw 6
?patch26 equ @94-@69
dw 2
dw 6
dw 24
dw 519
dw 0
dw 0
dw 0
dw 0
dd ?patch29
df @99
dw 0
dw 0
dw 18
dw 512
dw 65408
dw 65535
dw 64
dw 0
dw 62
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65412
dw 65535
dw 1057
dw 0
dw 63
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65416
dw 65535
dw 116
dw 0
dw 64
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65420
dw 65535
dw 116
dw 0
dw 65
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65426
dw 65535
dw 33
dw 0
dw 66
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65428
dw 65535
dw 34
dw 0
dw 67
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65432
dw 65535
dw 34
dw 0
dw 68
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65436
dw 65535
dw 34
dw 0
dw 69
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65443
dw 65535
dw 32
dw 0
dw 70
dw 0
dw 0
dw 0
dw 24
dw 519
dw 0
dw 0
dw 0
dw 0
dd ?patch30
df @103
dw 0
dw 0
dw 18
dw 512
dw 65404
dw 65535
dw 116
dw 0
dw 71
dw 0
dw 0
dw 0
?patch30 equ @109-@103
dw 2
dw 6
dw 24
dw 519
dw 0
dw 0
dw 0
dw 0
dd ?patch31
df @112
dw 0
dw 0
dw 18
dw 512
dw 65400
dw 65535
dw 116
dw 0
dw 72
dw 0
dw 0
dw 0
?patch31 equ @117-@112
dw 2
dw 6
?patch29 equ @123-@99
dw 2
dw 6
dw 24
dw 519
dw 0
dw 0
dw 0
dw 0
dd ?patch32
df @127
dw 0
dw 0
dw 18
dw 512
dw 65368
dw 65535
dw 1057
dw 0
dw 73
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65372
dw 65535
dw 65
dw 0
dw 74
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65380
dw 65535
dw 116
dw 0
dw 75
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65384
dw 65535
dw 116
dw 0
dw 76
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65388
dw 65535
dw 34
dw 0
dw 77
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65392
dw 65535
dw 34
dw 0
dw 78
dw 0
dw 0
dw 0
dw 18
dw 512
dw 65396
dw 65535
dw 34
dw 0
dw 79
dw 0
dw 0
dw 0
?patch32 equ @136-@127
dw 2
dw 6
?patch25 equ @137-@65
dw 2
dw 6
?patch22 equ @138-@@CDisplay@CreateSurfaceFromTGA$qpp8CSurfacepxc+36
?patch23 equ 0
?patch24 equ @138-@@CDisplay@CreateSurfaceFromTGA$qpp8CSurfacepxc
dw 2
dw 6
dw 4
dw 531
dw 0
$$BSYMS ends
_DATA segment dword public use32 'DATA'
@_$DCQC$@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc segment virtual
align 2
@@_$DCQC$@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc label dword
dd @@$xt$p8CSurface
dd 8199
dd -4
dd 0
@_$DCQC$@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc ends
_DATA ends
_DATA segment dword public use32 'DATA'
@_$ECTRC$@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc segment virtual
align 2
@@_$ECTRC$@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc label dword
dd 0
dd -40
dw 0
dw 5
dd 0
dd 0
dw 8
dw 5
dd 0
dd @@_$DCQC$@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc
@_$ECTRC$@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc ends
_DATA ends
_TEXT segment dword public use32 'CODE'
@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc segment virtual
@@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc proc near
?live16402@0:
?debug L 530
push ebp
mov ebp,esp
add esp,-292
@139:
mov eax,offset @@_$ECTRC$@CDisplay@CreateAlphaSurfaceFromTGA$qpp13_ALPHASURFACEpxc
call @__InitExceptBlockLDTC
?debug L 535
xor edx,edx
mov dword ptr [ebp-48],edx
?debug L 536
xor ecx,ecx
mov dword ptr [ebp-52],ecx
?debug L 538
mov eax,dword ptr [ebp+8]
cmp dword ptr [eax+4],0
je short @141
cmp dword ptr [ebp+16],0
jne short @140
?debug L 539
@141:
mov eax,-2147024809
mov edx,dword ptr [ebp-40]
mov dword ptr fs:[0],edx
jmp @142
?debug L 540
@140:
mov ecx,dword ptr [ebp+12]
xor eax,eax
mov dword ptr [ecx],eax
?debug L 544
xor edx,edx
mov dword ptr [ebp-56],edx
?debug L 545
push offset s@+3
push dword ptr [ebp+16]
call @_fopen
add esp,8
mov dword ptr [ebp-56],eax
test eax,eax
je @144
?debug L 547
push dword ptr [ebp-56]
push 1
push 20
lea edx,dword ptr [ebp-284]
push edx
call @_fread
add esp,16
?debug L 551
push 124
push 0
lea ecx,dword ptr [ebp-264]
push ecx
call @_memset
add esp,12
?debug L 552
mov dword ptr [ebp-264],124
?debug L 553
mov dword ptr [ebp-260],7
?debug L 554
mov dword ptr [ebp-160],2112
?debug L 555
movzx eax,word ptr [ebp-270]
mov dword ptr [ebp-252],eax
?debug L 556
movzx edx,word ptr [ebp-268]
mov dword ptr [ebp-256],edx
?debug L 558
push 8
call @$bnew$qui
pop ecx
mov ecx,dword ptr [ebp+12]
mov dword ptr [ecx],eax
?debug L 559
push 140
call @$bnew$qui
pop ecx
mov dword ptr [ebp-4],eax
test eax,eax
je short @145
mov word ptr [ebp-24],20
push dword ptr [ebp-4]
call @@CSurface@$bctr$qv
pop ecx
mov word ptr [ebp-24],8
mov edx,dword ptr [ebp-4]
jmp short @146
@145:
mov edx,dword ptr [ebp-4]
@146:
mov eax,dword ptr [ebp+12]
mov ecx,dword ptr [eax]
mov dword ptr [ecx+4],edx
?debug L 560
lea eax,dword ptr [ebp-264]
push eax
mov edx,dword ptr [ebp+8]
push dword ptr [edx+4]
mov ecx,dword ptr [ebp+12]
mov eax,dword ptr [ecx]
push dword ptr [eax+4]
call @@CSurface@Create$qp12IDirectDraw7p15_DDSURFACEDESC2
add esp,12
mov dword ptr [ebp-44],eax
test eax,eax
jge short @147
?debug L 562
push 3
mov edx,dword ptr [ebp+12]
mov ecx,dword ptr [edx]
push dword ptr [ecx+4]
call @@CSurface@$bdtr$qv
add esp,8
?debug L 563
mov eax,dword ptr [ebp+12]
push dword ptr [eax]
call @$bdele$qpv
pop ecx
?debug L 564
mov eax,dword ptr [ebp-44]
mov edx,dword ptr [ebp-40]
mov dword ptr fs:[0],edx
jmp @142
?debug L 566
@147:
movzx ecx,word ptr [ebp-270]
movzx eax,word ptr [ebp-268]
imul ecx,eax
push ecx
call @$bnwa$qui
pop ecx
mov edx,dword ptr [ebp+12]
mov ecx,dword ptr [edx]
mov dword ptr [ecx],eax
?debug L 567
mov eax,dword ptr [ebp+12]
mov edx,dword ptr [eax]
mov ecx,dword ptr [edx]
mov dword ptr [ebp-52],ecx
?debug L 569
push 124
push 0
lea eax,dword ptr [ebp-264]
push eax
call @_memset
add esp,12
?debug L 570
mov dword ptr [ebp-264],124
?debug L 572
mov edx,dword ptr [ebp+12]
mov ecx,dword ptr [edx]
push dword ptr [ecx+4]
call @@CSurface@GetDDrawSurface$qv
pop ecx
mov dword ptr [ebp-60],eax
push 0
push 17
lea eax,dword ptr [ebp-264]
push eax
push 0
mov edx,dword ptr [ebp-60]
push edx
mov ecx,dword ptr [edx]
call dword ptr [ecx+100]
mov dword ptr [ebp-44],eax
test eax,eax
jl @149
?debug L 574
@150:
mov edx,dword ptr [ebp-228]
mov dword ptr [ebp-64],edx
?debug L 575
mov ecx,dword ptr [ebp-248]
mov dword ptr [ebp-48],ecx
?debug L 579
mov eax,dword ptr [ebp-172]
mov dword ptr [ebp-68],eax
?debug L 582
mov edx,dword ptr [ebp-48]
sar edx,1
movzx ecx,word ptr [ebp-268]
dec ecx
imul edx,ecx
add edx,edx
add dword ptr [ebp-64],edx
?debug L 583
movzx eax,word ptr [ebp-270]
movzx edx,word ptr [ebp-268]
dec edx
imul edx
add dword ptr [ebp-52],eax
?debug L 585
mov ecx,dword ptr [ebp-52]
mov dword ptr [ebp-72],ecx
?debug L 586
mov eax,dword ptr [ebp-64]
mov dword ptr [ebp-76],eax
?debug L 588
cmp byte ptr [ebp-282],10
jne @153
cmp byte ptr [ebp-266],32
jne @153
?debug L 593
@154:
xor edx,edx
mov dword ptr [ebp-92],edx
?debug L 595
xor ecx,ecx
mov dword ptr [ebp-100],ecx
?debug L 596
xor eax,eax
mov dword ptr [ebp-104],eax
jmp @156
?debug L 600
@155:
test byte ptr [ebp-77],-128
je @157
?debug L 602
xor edx,edx
mov dl,byte ptr [ebp-77]
and dx,127
inc edx
mov word ptr [ebp-94],dx
?debug L 603
movzx ecx,word ptr [ebp-94]
add dword ptr [ebp-104],ecx
?debug L 604
push dword ptr [ebp-56]
push 1
push 4
lea eax,dword ptr [ebp-88]
push eax
call @_fread
add esp,16
?debug L 605
@158:
xor edx,edx
mov dword ptr [ebp-112],edx
jmp @160
?debug L 608
@159:
mov ecx,dword ptr [ebp-88]
and ecx,-16777216
shr ecx,24
and ecx,255
mov dword ptr [ebp-84],ecx
?debug L 609
mov al,byte ptr [ebp-84]
mov edx,dword ptr [ebp-52]
mov byte ptr [edx],al
?debug L 610
inc dword ptr [ebp-52]
?debug L 611
mov ecx,dword ptr [ebp-84]
mov dword ptr [ebp-292],ecx
xor eax,eax
mov dword ptr [ebp-288],eax
fild qword ptr [ebp-292]
fld tbyte ptr [@161]
fmulp st(1),st
fstp dword ptr [ebp-108]
?debug L 612
fld dword ptr [ebp-108]
fcomp dword ptr [@161+12]
fnstsw ax
sahf
jne short @162
xor edx,edx
mov dword ptr [ebp-92],edx
jmp short @163
?debug L 615
@162:
mov ecx,dword ptr [ebp-88]
and ecx,16711680
shr ecx,8
and ecx,63488
mov dword ptr [ebp-92],ecx
?debug L 616
mov eax,dword ptr [ebp-88]
and eax,65280
shr eax,5
and eax,2016
add dword ptr [ebp-92],eax
?debug L 617
mov edx,dword ptr [ebp-88]
and edx,255
shr edx,3
and edx,31
add dword ptr [ebp-92],edx
?debug L 619
@163:
mov ecx,dword ptr [ebp-64]
mov ax,word ptr [ebp-92]
mov word ptr [ecx],ax
?debug L 620
add dword ptr [ebp-64],2
?debug L 605
@164:
inc dword ptr [ebp-112]
@160:
movzx edx,word ptr [ebp-94]
cmp edx,dword ptr [ebp-112]
jg @159
?debug L 622
jmp @166
?debug L 625
@157:
xor ecx,ecx
mov cl,byte ptr [ebp-77]
and cx,127
inc ecx
mov word ptr [ebp-94],cx
?debug L 626
movzx eax,word ptr [ebp-94]
add dword ptr [ebp-104],eax
?debug L 627
@167:
xor edx,edx
mov dword ptr [ebp-116],edx
jmp @169
?debug L 629
@168:
push dword ptr [ebp-56]
push 1
push 4
lea ecx,dword ptr [ebp-88]
push ecx
call @_fread
add esp,16
?debug L 630
mov eax,dword ptr [ebp-88]
and eax,-16777216
shr eax,24
and eax,255
mov dword ptr [ebp-84],eax
?debug L 631
mov dl,byte ptr [ebp-84]
mov ecx,dword ptr [ebp-52]
mov byte ptr [ecx],dl
?debug L 632
inc dword ptr [ebp-52]
?debug L 634
mov eax,dword ptr [ebp-84]
mov dword ptr [ebp-292],eax
xor edx,edx
mov dword ptr [ebp-288],edx
fild qword ptr [ebp-292]
fld tbyte ptr [@161]
fmulp st(1),st
fstp dword ptr [ebp-108]
?debug L 635
fld dword ptr [ebp-108]
fcomp dword ptr [@161+12]
fnstsw ax
sahf
jne short @170
xor edx
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -