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

📄 cq.sbk

📁 3D 游戏界的大牛人 John Carmack 终于放出了 Q3 的源代码
💻 SBK
📖 第 1 页 / 共 5 页
字号:
L619:
fld qword ptr (-92)[ebp]
fmul qword ptr (-92)[ebp]
fld qword ptr (-52)[ebp]
fcompp
fstsw ax
sahf
je L622
mov byte ptr (-5)[ebp],1
L622:
mov byte ptr (-41)[ebp],0
mov dword ptr (-4)[ebp],0
L625:
movsx edi,byte ptr (-41)[ebp]
mov esi,dword ptr (-4)[ebp]
movsx esi,byte ptr (-32)[ebp][esi]
lea edi,[esi][edi]
mov ebx,edi
mov byte ptr (-41)[ebp],bl
L626:
inc dword ptr (-4)[ebp]
cmp dword ptr (-4)[ebp],28
jl L625
movsx edi,byte ptr (-41)[ebp]
cmp edi,0
je L629
add dword ptr (-104)[ebp],4
mov edi,dword ptr (20)[ebp]
cmp dword ptr (44)[edi],0
je L631
push 4
lea edi,(L520)
push edi
call _printf
add esp,8
lea edi,(L633)
push edi
call _printf
add esp,4
mov dword ptr (-4)[ebp],0
L634:
mov edi,dword ptr (-4)[ebp]
movsx edi,byte ptr (-32)[ebp][edi]
push edi
lea edi,(L638)
push edi
call _printf
add esp,8
L635:
inc dword ptr (-4)[ebp]
cmp dword ptr (-4)[ebp],28
jl L634
lea edi,(L639)
push edi
call _printf
add esp,4
L631:
L629:
mov dword ptr (-68)[ebp],32768
mov edi,dword ptr (-68)[ebp]
cmp edi,08000H
jbe L640
add dword ptr (-104)[ebp],8
mov edi,dword ptr (20)[ebp]
cmp dword ptr (44)[edi],0
je L642
push 8
lea edi,(L520)
push edi
call _printf
add esp,8
L642:
L640:
mov eax,dword ptr (-104)[ebp]
L519:
mov esp,ebp
pop ebp
pop edi
pop esi
pop ebx
ret
_TEXT ends
_DATA segment
align 1
L645 label byte
db 115
db 55
db 49
db 44
db 101
db 114
db 37
db 100
db 10
db 0
align 1
L646 label byte
db 115
db 55
db 49
db 32
db 32
db 32
db 32
db 0
align 1
L647 label byte
db 113
public _s71
_DATA ends
_TEXT segment
_s71:
push ebx
push esi
push edi
push ebp
mov ebp,esp
sub esp,68
lea edi,(L646)
mov dword ptr (-4)[ebp],edi
mov edi,dword ptr (20)[ebp]
lea edi,(60)[edi]
mov dword ptr (-8)[ebp],edi
mov dword ptr (-12)[ebp],0
L648:
L649:
mov edi,dword ptr (-8)[ebp]
lea esi,(1)[edi]
mov dword ptr (-8)[ebp],esi
mov esi,dword ptr (-4)[ebp]
lea ebx,(1)[esi]
mov dword ptr (-4)[ebp],ebx
mov bl,byte ptr [esi]
mov byte ptr [edi],bl
movsx edi,bl
cmp edi,0
jne L648
movsx edi,byte ptr (L653)
movsx esi,byte ptr (L647)
cmp edi,esi
je L651
inc dword ptr (-12)[ebp]
mov edi,dword ptr (20)[ebp]
cmp dword ptr (44)[edi],0
je L654
push 1
lea edi,(L645)
push edi
call _printf
add esp,8
L654:
L651:
jmp L656
add dword ptr (-12)[ebp],2
mov edi,dword ptr (20)[ebp]
cmp dword ptr (44)[edi],0
je L658
push 2
lea edi,(L645)
push edi
call _printf
add esp,8
L658:
L656:
mov dword ptr (-32)[ebp],1942
cmp dword ptr (-32)[ebp],1942
jne L666
mov edi,dword ptr (-32)[ebp]
cmp dword ptr (-32)[ebp],edi
je L661
L666:
add dword ptr (-12)[ebp],4
mov edi,dword ptr (20)[ebp]
cmp dword ptr (44)[edi],0
je L667
push 4
lea edi,(L645)
push edi
call _printf
add esp,8
L667:
L661:
push -5
call _McCarthy
add esp,4
cmp eax,91
je L669
add dword ptr (-12)[ebp],8
mov edi,dword ptr (20)[ebp]
cmp dword ptr (44)[edi],0
je L671
push 8
lea edi,(L645)
push edi
call _printf
add esp,8
L671:
L669:
mov dword ptr (-56)[ebp],2
mov dword ptr (-60)[ebp],3
lea edi,(-60)[ebp]
mov dword ptr (-64)[ebp],edi
mov edi,dword ptr (-64)[ebp]
push edi
mov edi,dword ptr (-56)[ebp]
push edi
call _clobber
add esp,8
cmp dword ptr (-56)[ebp],2
jne L675
cmp dword ptr (-60)[ebp],2
je L673
L675:
add dword ptr (-12)[ebp],16
mov edi,dword ptr (20)[ebp]
cmp dword ptr (44)[edi],0
je L676
push 16
lea edi,(L645)
push edi
call _printf
add esp,8
L676:
L673:
mov edi,dword ptr (20)[ebp]
fld dword ptr (32)[edi]
fstp dword ptr (-68)[ebp]
fld dword ptr (-68)[ebp]
fcomp dword ptr (-68)[ebp]
fstsw ax
sahf
je L678
add dword ptr (-12)[ebp],32
mov edi,dword ptr (20)[ebp]
cmp dword ptr (44)[edi],0
je L680
push 32
lea edi,(L645)
push edi
call _printf
add esp,8
L680:
L678:
mov eax,dword ptr (-12)[ebp]
L644:
mov esp,ebp
pop ebp
pop edi
pop esi
pop ebx
ret
public _McCarthy
_McCarthy:
push ebx
push esi
push edi
push ebp
mov ebp,esp
cmp dword ptr (20)[ebp],100
jle L683
mov edi,dword ptr (20)[ebp]
mov eax,edi
sub eax,10
jmp L682
L683:
mov edi,dword ptr (20)[ebp]
lea edi,(11)[edi]
push edi
call _McCarthy
add esp,4
mov edi,eax
push edi
call _McCarthy
add esp,4
mov edi,eax
L682:
mov esp,ebp
pop ebp
pop edi
pop esi
pop ebx
ret
public _clobber
_clobber:
push ebx
push esi
push edi
push ebp
mov ebp,esp
mov dword ptr (20)[ebp],3
mov edi,dword ptr (24)[ebp]
mov dword ptr [edi],2
mov eax,0
L685:
mov esp,ebp
pop ebp
pop edi
pop esi
pop ebx
ret
_TEXT ends
_DATA segment
align 1
L687 label byte
db 76
db 111
db 99
db 97
db 108
db 32
db 101
db 114
db 114
db 111
db 114
db 32
db 37
db 100
db 46
db 10
db 0
align 1
L688 label byte
db 115
db 55
db 49
db 52
db 44
db 101
db 114
db 37
db 100
db 10
db 0
align 1
L689 label byte
db 115
db 55
db 49
db 52
db 32
db 32
db 32
db 0
public _s714
_DATA ends
_TEXT segment
_s714:
push ebx
push esi
push edi
push ebp
mov ebp,esp
sub esp,248
lea edi,(L689)
mov dword ptr (-68)[ebp],edi
mov edi,dword ptr (20)[ebp]
lea esi,(60)[edi]
mov dword ptr (-72)[ebp],esi
mov dword ptr (-76)[ebp],0
mov dword ptr (-8)[ebp],0
mov edi,dword ptr (48)[edi]
mov dword ptr (-4)[ebp],edi
L690:
L691:
mov edi,dword ptr (-72)[ebp]
lea esi,(1)[edi]
mov dword ptr (-72)[ebp],esi
mov esi,dword ptr (-68)[ebp]
lea ebx,(1)[esi]
mov dword ptr (-68)[ebp],ebx
mov bl,byte ptr [esi]
mov byte ptr [edi],bl
movsx edi,bl
cmp edi,0
jne L690
mov byte ptr (-9)[ebp],5
mov byte ptr (-25)[ebp],2
mov bl,byte ptr (-25)[ebp]
mov byte ptr (-9)[ebp],bl
movsx edi,byte ptr (-9)[ebp]
cmp edi,2
je L693
mov dword ptr (-8)[ebp],1
cmp dword ptr (-4)[ebp],0
je L695
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L695:
L693:
mov byte ptr (-9)[ebp],5
mov word ptr (-28)[ebp],2
movsx edi,word ptr (-28)[ebp]
mov ebx,edi
mov byte ptr (-9)[ebp],bl
movsx edi,byte ptr (-9)[ebp]
cmp edi,2
je L697
mov dword ptr (-8)[ebp],2
cmp dword ptr (-4)[ebp],0
je L699
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L699:
L697:
mov byte ptr (-9)[ebp],5
mov dword ptr (-32)[ebp],2
mov edi,dword ptr (-32)[ebp]
mov ebx,edi
mov byte ptr (-9)[ebp],bl
movsx edi,byte ptr (-9)[ebp]
cmp edi,2
je L701
mov dword ptr (-8)[ebp],3
cmp dword ptr (-4)[ebp],0
je L703
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L703:
L701:
mov byte ptr (-9)[ebp],5
mov dword ptr (-36)[ebp],2
mov edi,dword ptr (-36)[ebp]
mov ebx,edi
mov byte ptr (-9)[ebp],bl
movsx edi,byte ptr (-9)[ebp]
cmp edi,2
je L705
mov dword ptr (-8)[ebp],4
cmp dword ptr (-4)[ebp],0
je L707
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L707:
L705:
mov byte ptr (-9)[ebp],5
mov dword ptr (-40)[ebp],2
mov edi,dword ptr (-40)[ebp]
mov ebx,edi
mov byte ptr (-9)[ebp],bl
movsx edi,byte ptr (-9)[ebp]
cmp edi,2
je L709
mov dword ptr (-8)[ebp],5
cmp dword ptr (-4)[ebp],0
je L711
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L711:
L709:
mov byte ptr (-9)[ebp],5
fld dword ptr (L529)
fstp dword ptr (-56)[ebp]
fld dword ptr (-56)[ebp]
call __ftol
mov ebx,eax
mov byte ptr (-9)[ebp],bl
movsx edi,byte ptr (-9)[ebp]
cmp edi,2
je L713
mov dword ptr (-8)[ebp],6
cmp dword ptr (-4)[ebp],0
je L715
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L715:
L713:
mov byte ptr (-9)[ebp],5
fld qword ptr (L416)
fstp qword ptr (-64)[ebp]
fld qword ptr (-64)[ebp]
call __ftol
mov ebx,eax
mov byte ptr (-9)[ebp],bl
movsx edi,byte ptr (-9)[ebp]
cmp edi,2
je L717
mov dword ptr (-8)[ebp],7
cmp dword ptr (-4)[ebp],0
je L719
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L719:
L717:
mov word ptr (-12)[ebp],5
mov byte ptr (-25)[ebp],2
movsx edi,byte ptr (-25)[ebp]
mov word ptr (-12)[ebp],di
movsx edi,word ptr (-12)[ebp]
cmp edi,2
je L721
mov dword ptr (-8)[ebp],8
cmp dword ptr (-4)[ebp],0
je L723
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L723:
L721:
mov word ptr (-12)[ebp],5
mov word ptr (-28)[ebp],2
mov di,word ptr (-28)[ebp]
mov word ptr (-12)[ebp],di
movsx edi,word ptr (-12)[ebp]
cmp edi,2
je L725
mov dword ptr (-8)[ebp],9
cmp dword ptr (-4)[ebp],0
je L727
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L727:
L725:
mov word ptr (-12)[ebp],5
mov dword ptr (-32)[ebp],2
mov edi,dword ptr (-32)[ebp]
mov word ptr (-12)[ebp],di
movsx edi,word ptr (-12)[ebp]
cmp edi,2
je L729
mov dword ptr (-8)[ebp],10
cmp dword ptr (-4)[ebp],0
je L731
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L731:
L729:
mov word ptr (-12)[ebp],5
mov dword ptr (-36)[ebp],2
mov edi,dword ptr (-36)[ebp]
mov word ptr (-12)[ebp],di
movsx edi,word ptr (-12)[ebp]
cmp edi,2
je L733
mov dword ptr (-8)[ebp],11
cmp dword ptr (-4)[ebp],0
je L735
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L735:
L733:
mov word ptr (-12)[ebp],5
mov dword ptr (-40)[ebp],2
mov edi,dword ptr (-40)[ebp]
mov word ptr (-12)[ebp],di
movsx edi,word ptr (-12)[ebp]
cmp edi,2
je L737
mov dword ptr (-8)[ebp],12
cmp dword ptr (-4)[ebp],0
je L739
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L739:
L737:
mov word ptr (-12)[ebp],5
fld dword ptr (L529)
fstp dword ptr (-56)[ebp]
fld dword ptr (-56)[ebp]
call __ftol
mov edi,eax
mov word ptr (-12)[ebp],di
movsx edi,word ptr (-12)[ebp]
cmp edi,2
je L741
mov dword ptr (-8)[ebp],13
cmp dword ptr (-4)[ebp],0
je L743
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L743:
L741:
mov word ptr (-12)[ebp],5
fld qword ptr (L416)
fstp qword ptr (-64)[ebp]
fld qword ptr (-64)[ebp]
call __ftol
mov edi,eax
mov word ptr (-12)[ebp],di
movsx edi,word ptr (-12)[ebp]
cmp edi,2
je L745
mov dword ptr (-8)[ebp],14
cmp dword ptr (-4)[ebp],0
je L747
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L747:
L745:
mov dword ptr (-16)[ebp],5
mov byte ptr (-25)[ebp],2
movsx edi,byte ptr (-25)[ebp]
mov dword ptr (-16)[ebp],edi
cmp dword ptr (-16)[ebp],2
je L749
mov dword ptr (-8)[ebp],15
cmp dword ptr (-4)[ebp],0
je L751
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L751:
L749:
mov dword ptr (-16)[ebp],5
mov word ptr (-28)[ebp],2
movsx edi,word ptr (-28)[ebp]
mov dword ptr (-16)[ebp],edi
cmp dword ptr (-16)[ebp],2
je L753
mov dword ptr (-8)[ebp],16
cmp dword ptr (-4)[ebp],0
je L755
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L755:
L753:
mov dword ptr (-16)[ebp],5
mov dword ptr (-32)[ebp],2
mov edi,dword ptr (-32)[ebp]
mov dword ptr (-16)[ebp],edi
cmp dword ptr (-16)[ebp],2
je L757
mov dword ptr (-8)[ebp],17
cmp dword ptr (-4)[ebp],0
je L759
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L759:
L757:
mov dword ptr (-16)[ebp],5
mov dword ptr (-36)[ebp],2
mov edi,dword ptr (-36)[ebp]
mov dword ptr (-16)[ebp],edi
cmp dword ptr (-16)[ebp],2
je L761
mov dword ptr (-8)[ebp],18
cmp dword ptr (-4)[ebp],0
je L763
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L763:
L761:
mov dword ptr (-16)[ebp],5
mov dword ptr (-40)[ebp],2
mov edi,dword ptr (-40)[ebp]
mov dword ptr (-16)[ebp],edi
cmp dword ptr (-16)[ebp],2
je L765
mov dword ptr (-8)[ebp],19
cmp dword ptr (-4)[ebp],0
je L767
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L767:
L765:
mov dword ptr (-16)[ebp],5
fld dword ptr (L529)
fstp dword ptr (-56)[ebp]
fld dword ptr (-56)[ebp]
call __ftol
mov dword ptr (-16)[ebp],eax
cmp dword ptr (-16)[ebp],2
je L769
mov dword ptr (-8)[ebp],20
cmp dword ptr (-4)[ebp],0
je L771
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L771:
L769:
mov dword ptr (-16)[ebp],5
fld qword ptr (L416)
fstp qword ptr (-64)[ebp]
fld qword ptr (-64)[ebp]
call __ftol
mov dword ptr (-16)[ebp],eax
cmp dword ptr (-16)[ebp],2
je L773
mov dword ptr (-8)[ebp],21
cmp dword ptr (-4)[ebp],0
je L775
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi
call _printf
add esp,8
L775:
L773:
mov dword ptr (-20)[ebp],5
mov byte ptr (-25)[ebp],2
movsx edi,byte ptr (-25)[ebp]
mov dword ptr (-20)[ebp],edi
cmp dword ptr (-20)[ebp],2
je L777
mov dword ptr (-8)[ebp],22
cmp dword ptr (-4)[ebp],0
je L779
mov edi,dword ptr (-8)[ebp]
push edi
lea edi,(L687)
push edi

⌨️ 快捷键说明

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