outputflash.cod
来自「模拟电梯程序」· COD 代码 · 共 1,756 行 · 第 1/4 页
COD
1,756 行
00513 51 push ecx
00514 68 00 00 00 00 push OFFSET FLAT:??_C@_07GFNB@?$CFdb?4bmp?$AA@ ; `string'
00519 8d 55 bc lea edx, DWORD PTR _filePath$[ebp]
0051c 52 push edx
0051d e8 00 00 00 00 call _sprintf
00522 83 c4 0c add esp, 12 ; 0000000cH
; 90 : hEggs[34+i] = LayEgg();
00525 e8 00 00 00 00 call _LayEgg
0052a 8b 4d fc mov ecx, DWORD PTR _i$[ebp]
0052d 89 04 8d 88 00
00 00 mov DWORD PTR _hEggs[ecx*4+136], eax
; 91 : ShowEgg(0);
00534 6a 00 push 0
00536 e8 00 00 00 00 call _ShowEgg
0053b 83 c4 04 add esp, 4
; 92 : MovePen(7.4, 10.6);
0053e 68 33 33 25 40 push 1076179763 ; 40253333H
00543 68 33 33 33 33 push 858993459 ; 33333333H
00548 68 99 99 1d 40 push 1075681689 ; 401d9999H
0054d 68 9a 99 99 99 push -1717986918 ; 9999999aH
00552 e8 00 00 00 00 call _MovePen
00557 83 c4 10 add esp, 16 ; 00000010H
; 93 : DrawBitmap(filePath);
0055a 8d 55 bc lea edx, DWORD PTR _filePath$[ebp]
0055d 52 push edx
0055e e8 00 00 00 00 call _DrawBitmap
00563 83 c4 04 add esp, 4
; 94 : SetActiveEgg(hEggs[34+i]);
00566 8b 45 fc mov eax, DWORD PTR _i$[ebp]
00569 8b 0c 85 88 00
00 00 mov ecx, DWORD PTR _hEggs[eax*4+136]
00570 51 push ecx
00571 e8 00 00 00 00 call _SetActiveEgg
00576 83 c4 04 add esp, 4
; 95 : }
00579 eb 86 jmp SHORT $L52992
$L52993:
; 96 :
; 97 : hEggs[46] = LayEgg();
0057b e8 00 00 00 00 call _LayEgg
00580 a3 b8 00 00 00 mov DWORD PTR _hEggs+184, eax
; 98 : MovePen(7.4, 6);
00585 68 00 00 18 40 push 1075314688 ; 40180000H
0058a 6a 00 push 0
0058c 68 99 99 1d 40 push 1075681689 ; 401d9999H
00591 68 9a 99 99 99 push -1717986918 ; 9999999aH
00596 e8 00 00 00 00 call _MovePen
0059b 83 c4 10 add esp, 16 ; 00000010H
; 99 : DrawBitmap("1.bmp");
0059e 68 00 00 00 00 push OFFSET FLAT:??_C@_05ECEF@1?4bmp?$AA@ ; `string'
005a3 e8 00 00 00 00 call _DrawBitmap
005a8 83 c4 04 add esp, 4
; 100 :
; 101 : hEggs[47] = LayEgg();
005ab e8 00 00 00 00 call _LayEgg
005b0 a3 bc 00 00 00 mov DWORD PTR _hEggs+188, eax
; 102 : MovePen(7.4, 7.2);
005b5 68 cc cc 1c 40 push 1075629260 ; 401cccccH
005ba 68 cd cc cc cc push -858993459 ; cccccccdH
005bf 68 99 99 1d 40 push 1075681689 ; 401d9999H
005c4 68 9a 99 99 99 push -1717986918 ; 9999999aH
005c9 e8 00 00 00 00 call _MovePen
005ce 83 c4 10 add esp, 16 ; 00000010H
; 103 : DrawBitmap("2.bmp");
005d1 68 00 00 00 00 push OFFSET FLAT:??_C@_05KCCK@2?4bmp?$AA@ ; `string'
005d6 e8 00 00 00 00 call _DrawBitmap
005db 83 c4 04 add esp, 4
; 104 :
; 105 : hEggs[48] = LayEgg();
005de e8 00 00 00 00 call _LayEgg
005e3 a3 c0 00 00 00 mov DWORD PTR _hEggs+192, eax
; 106 : MovePen(7.4, 8.4);
005e8 68 cc cc 20 40 push 1075891404 ; 4020ccccH
005ed 68 cd cc cc cc push -858993459 ; cccccccdH
005f2 68 99 99 1d 40 push 1075681689 ; 401d9999H
005f7 68 9a 99 99 99 push -1717986918 ; 9999999aH
005fc e8 00 00 00 00 call _MovePen
00601 83 c4 10 add esp, 16 ; 00000010H
; 107 : DrawBitmap("3.bmp");
00604 68 00 00 00 00 push OFFSET FLAT:??_C@_05CAP@3?4bmp?$AA@ ; `string'
00609 e8 00 00 00 00 call _DrawBitmap
0060e 83 c4 04 add esp, 4
; 108 : for (i=4; i!=10; i++){
00611 c7 45 fc 04 00
00 00 mov DWORD PTR _i$[ebp], 4
00618 eb 09 jmp SHORT $L52998
$L52999:
0061a 8b 55 fc mov edx, DWORD PTR _i$[ebp]
0061d 83 c2 01 add edx, 1
00620 89 55 fc mov DWORD PTR _i$[ebp], edx
$L52998:
00623 83 7d fc 0a cmp DWORD PTR _i$[ebp], 10 ; 0000000aH
00627 74 68 je SHORT $L53000
; 109 : sprintf(filePath, "%d.bmp", i);
00629 8b 45 fc mov eax, DWORD PTR _i$[ebp]
0062c 50 push eax
0062d 68 00 00 00 00 push OFFSET FLAT:??_C@_06BONA@?$CFd?4bmp?$AA@ ; `string'
00632 8d 4d bc lea ecx, DWORD PTR _filePath$[ebp]
00635 51 push ecx
00636 e8 00 00 00 00 call _sprintf
0063b 83 c4 0c add esp, 12 ; 0000000cH
; 110 : hEggs[45+i] = LayEgg();
0063e e8 00 00 00 00 call _LayEgg
00643 8b 55 fc mov edx, DWORD PTR _i$[ebp]
00646 89 04 95 b4 00
00 00 mov DWORD PTR _hEggs[edx*4+180], eax
; 111 : MovePen(5.9, 6+1.2*(i-4));
0064d 8b 45 fc mov eax, DWORD PTR _i$[ebp]
00650 83 e8 04 sub eax, 4
00653 89 85 44 ff ff
ff mov DWORD PTR -188+[ebp], eax
00659 db 85 44 ff ff
ff fild DWORD PTR -188+[ebp]
0065f dc 0d 00 00 00
00 fmul QWORD PTR __real@8@3fff9999999999999800
00665 dc 05 00 00 00
00 fadd QWORD PTR __real@8@4001c000000000000000
0066b 83 ec 08 sub esp, 8
0066e dd 1c 24 fstp QWORD PTR [esp]
00671 68 99 99 17 40 push 1075288473 ; 40179999H
00676 68 9a 99 99 99 push -1717986918 ; 9999999aH
0067b e8 00 00 00 00 call _MovePen
00680 83 c4 10 add esp, 16 ; 00000010H
; 112 : DrawBitmap(filePath);
00683 8d 4d bc lea ecx, DWORD PTR _filePath$[ebp]
00686 51 push ecx
00687 e8 00 00 00 00 call _DrawBitmap
0068c 83 c4 04 add esp, 4
; 113 : }
0068f eb 89 jmp SHORT $L52999
$L53000:
; 114 :
; 115 : hEggs[44] = LayEgg();
00691 e8 00 00 00 00 call _LayEgg
00696 a3 b0 00 00 00 mov DWORD PTR _hEggs+176, eax
; 116 : MovePen(7.5, 12);
0069b 68 00 00 28 40 push 1076363264 ; 40280000H
006a0 6a 00 push 0
006a2 68 00 00 1e 40 push 1075707904 ; 401e0000H
006a7 6a 00 push 0
006a9 e8 00 00 00 00 call _MovePen
006ae 83 c4 10 add esp, 16 ; 00000010H
; 117 : DrawBitmap("direction5.bmp");
006b1 68 00 00 00 00 push OFFSET FLAT:??_C@_0P@COFI@direction5?4bmp?$AA@ ; `string'
006b6 e8 00 00 00 00 call _DrawBitmap
006bb 83 c4 04 add esp, 4
; 118 : SetActiveEgg(hEggs[44]);
006be 8b 15 b0 00 00
00 mov edx, DWORD PTR _hEggs+176
006c4 52 push edx
006c5 e8 00 00 00 00 call _SetActiveEgg
006ca 83 c4 04 add esp, 4
; 119 : ShowEgg (0);
006cd 6a 00 push 0
006cf e8 00 00 00 00 call _ShowEgg
006d4 83 c4 04 add esp, 4
; 120 :
; 121 : hEggs[45] = LayEgg();
006d7 e8 00 00 00 00 call _LayEgg
006dc a3 b4 00 00 00 mov DWORD PTR _hEggs+180, eax
; 122 : MovePen(7.5, 12);
006e1 68 00 00 28 40 push 1076363264 ; 40280000H
006e6 6a 00 push 0
006e8 68 00 00 1e 40 push 1075707904 ; 401e0000H
006ed 6a 00 push 0
006ef e8 00 00 00 00 call _MovePen
006f4 83 c4 10 add esp, 16 ; 00000010H
; 123 : DrawBitmap("direction6.bmp");
006f7 68 00 00 00 00 push OFFSET FLAT:??_C@_0P@MODH@direction6?4bmp?$AA@ ; `string'
006fc e8 00 00 00 00 call _DrawBitmap
00701 83 c4 04 add esp, 4
; 124 : SetActiveEgg(hEggs[45]);
00704 a1 b4 00 00 00 mov eax, DWORD PTR _hEggs+180
00709 50 push eax
0070a e8 00 00 00 00 call _SetActiveEgg
0070f 83 c4 04 add esp, 4
; 125 : ShowEgg (0);
00712 6a 00 push 0
00714 e8 00 00 00 00 call _ShowEgg
00719 83 c4 04 add esp, 4
; 126 :
; 127 :
; 128 : for (i=4; i!=10; i++){
0071c c7 45 fc 04 00
00 00 mov DWORD PTR _i$[ebp], 4
00723 eb 09 jmp SHORT $L53004
$L53005:
00725 8b 4d fc mov ecx, DWORD PTR _i$[ebp]
00728 83 c1 01 add ecx, 1
0072b 89 4d fc mov DWORD PTR _i$[ebp], ecx
$L53004:
0072e 83 7d fc 0a cmp DWORD PTR _i$[ebp], 10 ; 0000000aH
00732 74 75 je SHORT $L53006
; 129 : sprintf(filePath, "%da.bmp", i);
00734 8b 55 fc mov edx, DWORD PTR _i$[ebp]
00737 52 push edx
00738 68 00 00 00 00 push OFFSET FLAT:??_C@_07IFLO@?$CFda?4bmp?$AA@ ; `string'
0073d 8d 45 bc lea eax, DWORD PTR _filePath$[ebp]
00740 50 push eax
00741 e8 00 00 00 00 call _sprintf
00746 83 c4 0c add esp, 12 ; 0000000cH
; 130 : hEggs[58+(i-4)] = LayEgg();
00749 e8 00 00 00 00 call _LayEgg
0074e 8b 4d fc mov ecx, DWORD PTR _i$[ebp]
00751 89 04 8d d8 00
00 00 mov DWORD PTR _hEggs[ecx*4+216], eax
; 131 : ShowEgg(0);
00758 6a 00 push 0
0075a e8 00 00 00 00 call _ShowEgg
0075f 83 c4 04 add esp, 4
; 132 : MovePen(5.9, 6 + 1.2*(i - 4));
00762 8b 55 fc mov edx, DWORD PTR _i$[ebp]
00765 83 ea 04 sub edx, 4
00768 89 95 40 ff ff
ff mov DWORD PTR -192+[ebp], edx
0076e db 85 40 ff ff
ff fild DWORD PTR -192+[ebp]
00774 dc 0d 00 00 00
00 fmul QWORD PTR __real@8@3fff9999999999999800
0077a dc 05 00 00 00
00 fadd QWORD PTR __real@8@4001c000000000000000
00780 83 ec 08 sub esp, 8
00783 dd 1c 24 fstp QWORD PTR [esp]
00786 68 99 99 17 40 push 1075288473 ; 40179999H
0078b 68 9a 99 99 99 push -1717986918 ; 9999999aH
00790 e8 00 00 00 00 call _MovePen
00795 83 c4 10 add esp, 16 ; 00000010H
; 133 : DrawBitmap(filePath);
00798 8d 45 bc lea eax, DWORD PTR _filePath$[ebp]
0079b 50 push eax
0079c e8 00 00 00 00 call _DrawBitmap
007a1 83 c4 04 add esp, 4
; 134 : }
007a4 e9 7c ff ff ff jmp $L53005
$L53006:
; 135 : hEggs[55] = LayEgg();
007a9 e8 00 00 00 00 call _LayEgg
007ae a3 dc 00 00 00 mov DWORD PTR _hEggs+220, eax
; 136 : MovePen(7.4, 6);
007b3 68 00 00 18 40 push 1075314688 ; 40180000H
007b8 6a 00 push 0
007ba 68 99 99 1d 40 push 1075681689 ; 401d9999H
007bf 68 9a 99 99 99 push -1717986918 ; 9999999aH
007c4 e8 00 00 00 00 call _MovePen
007c9 83 c4 10 add esp, 16 ; 00000010H
; 137 : DrawBitmap("1a.bmp");
007cc 68 00 00 00 00 push OFFSET FLAT:??_C@_06DCOC@1a?4bmp?$AA@ ; `string'
007d1 e8 00 00 00 00 call _DrawBitmap
007d6 83 c4 04 add esp, 4
; 138 : ShowEgg (0);
007d9 6a 00 push 0
007db e8 00 00 00 00 call _ShowEgg
007e0 83 c4 04 add esp, 4
; 139 :
; 140 : hEggs[56] = LayEgg();
007e3 e8 00 00 00 00 call _LayEgg
007e8 a3 e0 00 00 00 mov DWORD PTR _hEggs+224, eax
; 141 : MovePen(7.4, 7.2);
007ed 68 cc cc 1c 40 push 1075629260 ; 401cccccH
007f2 68 cd cc cc cc push -858993459 ; cccccccdH
007f7 68 99 99 1d 40 push 1075681689 ; 401d9999H
007fc 68 9a 99 99 99 push -1717986918 ; 9999999aH
00801 e8 00 00 00 00 call _MovePen
00806 83 c4 10 add esp, 16 ; 00000010H
; 142 : DrawBitmap("2a.bmp");
00809 68 00 00 00 00 push OFFSET FLAT:??_C@_06IMAC@2a?4bmp?$AA@ ; `string'
0080e e8 00 00 00 00 call _DrawBitmap
00813 83 c4 04 add esp, 4
; 143 : ShowEgg (0);
00816 6a 00 push 0
00818 e8 00 00 00 00 call _ShowEgg
0081d 83 c4 04 add esp, 4
; 144 :
; 145 : hEggs[57] = LayEgg();
00820 e8 00 00 00 00 call _LayEgg
00825 a3 e4 00 00 00 mov DWORD PTR _hEggs+228, eax
; 146 : MovePen(7.4, 8.4);
0082a 68 cc cc 20 40 push 1075891404 ; 4020ccccH
0082f 68 cd cc cc cc push -858993459 ; cccccccdH
00834 68 99 99 1d 40 push 1075681689 ; 401d9999H
00839 68 9a 99 99 99 push -1717986918 ; 9999999aH
0083e e8 00 00 00 00 call _MovePen
00843 83 c4 10 add esp, 16 ; 00000010H
; 147 : DrawBitmap("3a.bmp");
00846 68 00 00 00 00 push OFFSET FLAT:??_C@_06BJKC@3a?4bmp?$AA@ ; `string'
0084b e8 00 00 00 00 call _DrawBitmap
00850 83 c4 04 add esp, 4
; 148 : ShowEgg (0);
00853 6a 00 push 0
00855 e8 00 00 00 00 call _ShowEgg
0085a 83 c4 04 add esp, 4
; 149 :
; 150 : SetActiveEgg(hEggs[35]);
0085d 8b 0d 8c 00 00
00 mov ecx, DWORD PTR _hEggs+140
00863 51 push ecx
00864 e8 00 00 00 00 call _SetActiveEgg
00869 83 c4 04 add esp, 4
; 151 : ShowEgg (1);
0086c 6a 01 push 1
0086e e8 00 00 00 00 call _ShowEgg
00873 83 c4 04 add esp, 4
; 152 : }
00876 5f pop edi
00877 5e pop esi
00878 5b pop ebx
00879 81 c4 00 01 00
00 add esp, 256 ; 00000100H
0087f 3b ec cmp ebp, esp
00881 e8 00 00 00 00 call __chkesp
00886 8b e5 mov esp, ebp
00888 5d pop ebp
00889 c3 ret 0
_StartFlash ENDP
_TEXT ENDS
PUBLIC _ControlFlash
EXTRN _OffsetEgg:NEAR
EXTRN _State:DWORD
EXTRN _CurrentDirection:DWORD
; COMDAT _ControlFlash
_TEXT SEGMENT
_i$ = -4
_ControlFlash PROC NEAR ; COMDAT
; 156 : {
00000 55 push ebp
00001 8b ec mov ebp, esp
00003 83 ec 48 sub esp, 72 ; 00000048H
00006 53 push ebx
00007 56 push esi
00008 57 push edi
00009 8d 7d b8 lea edi, DWORD PTR [ebp-72]
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?