Quake-III-Arena

Quake III Arena GPL Source Release
Log | Files | Refs

switch.sbk (10680B)


      1 .486
      2 .model flat
      3 extrn __fltused:near
      4 extrn __ftol:near
      5 public _main
      6 _TEXT segment
      7 _main:
      8 push ebx
      9 push esi
     10 push edi
     11 push ebp
     12 mov ebp,esp
     13 sub esp,8
     14 lea edi,(L6)
     15 mov dword ptr (-4)[ebp],edi
     16 jmp L5
     17 L2:
     18 mov edi,dword ptr (-4)[ebp]
     19 movsx edi,byte ptr [edi]
     20 push edi
     21 call _backslash
     22 add esp,4
     23 push eax
     24 mov edi,dword ptr (-4)[ebp]
     25 movsx edi,byte ptr [edi]
     26 push edi
     27 lea edi,(L7)
     28 push edi
     29 call _printf
     30 add esp,12
     31 L3:
     32 inc dword ptr (-4)[ebp]
     33 L5:
     34 mov edi,dword ptr (-4)[ebp]
     35 movsx edi,byte ptr [edi]
     36 cmp edi,0
     37 jne L2
     38 call _f
     39 add esp,0
     40 call _g
     41 add esp,0
     42 call _h
     43 add esp,0
     44 mov dword ptr (-8)[ebp],16777216
     45 jmp L11
     46 L8:
     47 mov edi,dword ptr (-8)[ebp]
     48 push edi
     49 call _big
     50 add esp,4
     51 L9:
     52 add dword ptr (-8)[ebp],16777216
     53 L11:
     54 mov edi,dword ptr (-8)[ebp]
     55 and edi,117440512
     56 cmp edi,0
     57 jne L8
     58 call _limit
     59 add esp,0
     60 mov eax,0
     61 L1:
     62 mov esp,ebp
     63 pop ebp
     64 pop edi
     65 pop esi
     66 pop ebx
     67 ret
     68 public _backslash
     69 _backslash:
     70 push ebx
     71 push esi
     72 push edi
     73 push ebp
     74 mov ebp,esp
     75 mov edi,dword ptr (20)[ebp]
     76 cmp edi,102
     77 je L16
     78 cmp edi,102
     79 jg L22
     80 L21:
     81 cmp dword ptr (20)[ebp],98
     82 je L15
     83 jmp L13
     84 L22:
     85 mov edi,dword ptr (20)[ebp]
     86 cmp edi,110
     87 je L17
     88 cmp edi,110
     89 jl L13
     90 L23:
     91 mov edi,dword ptr (20)[ebp]
     92 cmp edi,114
     93 je L18
     94 cmp edi,116
     95 je L19
     96 cmp edi,118
     97 je L20
     98 jmp L13
     99 L15:
    100 mov eax,8
    101 jmp L12
    102 L16:
    103 mov eax,12
    104 jmp L12
    105 L17:
    106 mov eax,10
    107 jmp L12
    108 L18:
    109 mov eax,13
    110 jmp L12
    111 L19:
    112 mov eax,9
    113 jmp L12
    114 L20:
    115 mov eax,11
    116 jmp L12
    117 L13:
    118 mov eax,dword ptr (20)[ebp]
    119 L12:
    120 mov esp,ebp
    121 pop ebp
    122 pop edi
    123 pop esi
    124 pop ebx
    125 ret
    126 public _f
    127 _f:
    128 push ebx
    129 push esi
    130 push edi
    131 push ebp
    132 mov ebp,esp
    133 sub esp,12
    134 mov dword ptr (-8)[ebp],0
    135 lea edi,(L25)
    136 push edi
    137 call _printf
    138 add esp,4
    139 mov dword ptr (-4)[ebp],0
    140 L26:
    141 mov edi,dword ptr (-4)[ebp]
    142 mov dword ptr (-12)[ebp],edi
    143 mov edi,dword ptr (-4)[ebp]
    144 cmp edi,1
    145 jl L30
    146 cmp edi,20
    147 jg L30
    148 jmp dword ptr (L42-4)[edi*4]
    149 _TEXT ends
    150 _TEXT segment
    151 align 4
    152 L42 label byte
    153 dd L32
    154 dd L33
    155 dd L30
    156 dd L30
    157 dd L30
    158 dd L30
    159 dd L34
    160 dd L35
    161 dd L36
    162 dd L30
    163 dd L30
    164 dd L30
    165 dd L30
    166 dd L30
    167 dd L30
    168 dd L37
    169 dd L38
    170 dd L39
    171 dd L40
    172 dd L41
    173 _TEXT ends
    174 _TEXT segment
    175 L32:
    176 mov edi,dword ptr (-4)[ebp]
    177 mov dword ptr (-8)[ebp],edi
    178 jmp L31
    179 L33:
    180 mov edi,dword ptr (-4)[ebp]
    181 mov dword ptr (-8)[ebp],edi
    182 jmp L31
    183 L34:
    184 mov edi,dword ptr (-4)[ebp]
    185 mov dword ptr (-8)[ebp],edi
    186 jmp L31
    187 L35:
    188 mov edi,dword ptr (-4)[ebp]
    189 mov dword ptr (-8)[ebp],edi
    190 jmp L31
    191 L36:
    192 mov edi,dword ptr (-4)[ebp]
    193 mov dword ptr (-8)[ebp],edi
    194 jmp L31
    195 L37:
    196 mov edi,dword ptr (-4)[ebp]
    197 mov dword ptr (-8)[ebp],edi
    198 jmp L31
    199 L38:
    200 mov edi,dword ptr (-4)[ebp]
    201 mov dword ptr (-8)[ebp],edi
    202 jmp L31
    203 L39:
    204 mov edi,dword ptr (-4)[ebp]
    205 mov dword ptr (-8)[ebp],edi
    206 jmp L31
    207 L40:
    208 mov edi,dword ptr (-4)[ebp]
    209 mov dword ptr (-8)[ebp],edi
    210 jmp L31
    211 L41:
    212 mov edi,dword ptr (-4)[ebp]
    213 mov dword ptr (-8)[ebp],edi
    214 L30:
    215 L31:
    216 mov edi,dword ptr (-8)[ebp]
    217 push edi
    218 lea edi,(L44)
    219 push edi
    220 call _printf
    221 add esp,8
    222 L27:
    223 inc dword ptr (-4)[ebp]
    224 cmp dword ptr (-4)[ebp],20
    225 jle L26
    226 mov eax,0
    227 L24:
    228 mov esp,ebp
    229 pop ebp
    230 pop edi
    231 pop esi
    232 pop ebx
    233 ret
    234 public _g
    235 _g:
    236 push ebx
    237 push esi
    238 push edi
    239 push ebp
    240 mov ebp,esp
    241 sub esp,4
    242 lea edi,(L46)
    243 push edi
    244 call _printf
    245 add esp,4
    246 mov dword ptr (-4)[ebp],1
    247 L47:
    248 mov edi,dword ptr (-4)[ebp]
    249 cmp edi,1001
    250 jl L64
    251 cmp edi,1004
    252 jg L65
    253 jmp dword ptr (L66-4004)[edi*4]
    254 _TEXT ends
    255 _TEXT segment
    256 align 4
    257 L66 label byte
    258 dd L60
    259 dd L60
    260 dd L60
    261 dd L60
    262 _TEXT ends
    263 _TEXT segment
    264 L64:
    265 mov edi,dword ptr (-4)[ebp]
    266 cmp edi,1
    267 jl L51
    268 cmp edi,8
    269 jg L51
    270 jmp dword ptr (L68-4)[edi*4]
    271 _TEXT ends
    272 _TEXT segment
    273 align 4
    274 L68 label byte
    275 dd L53
    276 dd L53
    277 dd L55
    278 dd L55
    279 dd L55
    280 dd L57
    281 dd L57
    282 dd L57
    283 _TEXT ends
    284 _TEXT segment
    285 L65:
    286 mov edi,dword ptr (-4)[ebp]
    287 cmp edi,3001
    288 jl L51
    289 cmp edi,3004
    290 jg L51
    291 jmp dword ptr (L70-12004)[edi*4]
    292 _TEXT ends
    293 _TEXT segment
    294 align 4
    295 L70 label byte
    296 dd L62
    297 dd L62
    298 dd L62
    299 dd L62
    300 _TEXT ends
    301 _TEXT segment
    302 L53:
    303 mov edi,dword ptr (-4)[ebp]
    304 push edi
    305 lea edi,(L54)
    306 push edi
    307 call _printf
    308 add esp,8
    309 jmp L52
    310 L55:
    311 mov edi,dword ptr (-4)[ebp]
    312 push edi
    313 lea edi,(L56)
    314 push edi
    315 call _printf
    316 add esp,8
    317 jmp L52
    318 L57:
    319 mov edi,dword ptr (-4)[ebp]
    320 push edi
    321 lea edi,(L58)
    322 push edi
    323 call _printf
    324 add esp,8
    325 L51:
    326 mov edi,dword ptr (-4)[ebp]
    327 push edi
    328 lea edi,(L59)
    329 push edi
    330 call _printf
    331 add esp,8
    332 jmp L52
    333 L60:
    334 mov edi,dword ptr (-4)[ebp]
    335 push edi
    336 lea edi,(L61)
    337 push edi
    338 call _printf
    339 add esp,8
    340 jmp L52
    341 L62:
    342 mov edi,dword ptr (-4)[ebp]
    343 push edi
    344 lea edi,(L63)
    345 push edi
    346 call _printf
    347 add esp,8
    348 L52:
    349 L48:
    350 inc dword ptr (-4)[ebp]
    351 cmp dword ptr (-4)[ebp],10
    352 jle L47
    353 mov eax,0
    354 L45:
    355 mov esp,ebp
    356 pop ebp
    357 pop edi
    358 pop esi
    359 pop ebx
    360 ret
    361 public _h
    362 _h:
    363 push ebx
    364 push esi
    365 push edi
    366 push ebp
    367 mov ebp,esp
    368 sub esp,8
    369 mov dword ptr (-8)[ebp],0
    370 lea edi,(L73)
    371 push edi
    372 call _printf
    373 add esp,4
    374 mov dword ptr (-4)[ebp],1
    375 L74:
    376 mov edi,dword ptr (-4)[ebp]
    377 cmp edi,264
    378 je L86
    379 cmp edi,264
    380 jg L94
    381 L93:
    382 mov edi,dword ptr (-4)[ebp]
    383 cmp edi,120
    384 je L84
    385 cmp edi,120
    386 jg L96
    387 L95:
    388 mov edi,dword ptr (-4)[ebp]
    389 cmp edi,8
    390 je L83
    391 cmp edi,8
    392 jl L78
    393 L97:
    394 cmp dword ptr (-4)[ebp],16
    395 je L82
    396 jmp L78
    397 L96:
    398 mov edi,dword ptr (-4)[ebp]
    399 cmp edi,128
    400 je L80
    401 cmp edi,128
    402 jl L78
    403 L98:
    404 cmp dword ptr (-4)[ebp],248
    405 je L87
    406 jmp L78
    407 L94:
    408 mov edi,dword ptr (-4)[ebp]
    409 cmp edi,288
    410 je L91
    411 cmp edi,288
    412 jg L100
    413 L99:
    414 mov edi,dword ptr (-4)[ebp]
    415 cmp edi,272
    416 je L88
    417 cmp edi,272
    418 jl L78
    419 L101:
    420 cmp dword ptr (-4)[ebp],280
    421 je L85
    422 jmp L78
    423 L100:
    424 mov edi,dword ptr (-4)[ebp]
    425 cmp edi,304
    426 je L89
    427 cmp edi,304
    428 jg L103
    429 L102:
    430 cmp dword ptr (-4)[ebp],296
    431 je L90
    432 jmp L78
    433 L103:
    434 cmp dword ptr (-4)[ebp],312
    435 je L92
    436 jmp L78
    437 L78:
    438 inc dword ptr (-8)[ebp]
    439 jmp L75
    440 L80:
    441 mov edi,dword ptr (-4)[ebp]
    442 push edi
    443 lea edi,(L81)
    444 push edi
    445 call _printf
    446 add esp,8
    447 jmp L79
    448 L82:
    449 mov edi,dword ptr (-4)[ebp]
    450 push edi
    451 lea edi,(L81)
    452 push edi
    453 call _printf
    454 add esp,8
    455 jmp L79
    456 L83:
    457 mov edi,dword ptr (-4)[ebp]
    458 push edi
    459 lea edi,(L81)
    460 push edi
    461 call _printf
    462 add esp,8
    463 jmp L79
    464 L84:
    465 mov edi,dword ptr (-4)[ebp]
    466 push edi
    467 lea edi,(L81)
    468 push edi
    469 call _printf
    470 add esp,8
    471 jmp L79
    472 L85:
    473 mov edi,dword ptr (-4)[ebp]
    474 push edi
    475 lea edi,(L81)
    476 push edi
    477 call _printf
    478 add esp,8
    479 jmp L79
    480 L86:
    481 mov edi,dword ptr (-4)[ebp]
    482 push edi
    483 lea edi,(L81)
    484 push edi
    485 call _printf
    486 add esp,8
    487 jmp L79
    488 L87:
    489 mov edi,dword ptr (-4)[ebp]
    490 push edi
    491 lea edi,(L81)
    492 push edi
    493 call _printf
    494 add esp,8
    495 jmp L79
    496 L88:
    497 mov edi,dword ptr (-4)[ebp]
    498 push edi
    499 lea edi,(L81)
    500 push edi
    501 call _printf
    502 add esp,8
    503 jmp L79
    504 L89:
    505 mov edi,dword ptr (-4)[ebp]
    506 push edi
    507 lea edi,(L81)
    508 push edi
    509 call _printf
    510 add esp,8
    511 jmp L79
    512 L90:
    513 mov edi,dword ptr (-4)[ebp]
    514 push edi
    515 lea edi,(L81)
    516 push edi
    517 call _printf
    518 add esp,8
    519 jmp L79
    520 L91:
    521 mov edi,dword ptr (-4)[ebp]
    522 push edi
    523 lea edi,(L81)
    524 push edi
    525 call _printf
    526 add esp,8
    527 jmp L79
    528 L92:
    529 mov edi,dword ptr (-4)[ebp]
    530 push edi
    531 lea edi,(L81)
    532 push edi
    533 call _printf
    534 add esp,8
    535 L79:
    536 L75:
    537 inc dword ptr (-4)[ebp]
    538 cmp dword ptr (-4)[ebp],500
    539 jle L74
    540 mov edi,dword ptr (-8)[ebp]
    541 push edi
    542 lea edi,(L104)
    543 push edi
    544 call _printf
    545 add esp,8
    546 mov eax,0
    547 L72:
    548 mov esp,ebp
    549 pop ebp
    550 pop edi
    551 pop esi
    552 pop ebx
    553 ret
    554 public _big
    555 _big:
    556 push ebx
    557 push esi
    558 push edi
    559 push ebp
    560 mov ebp,esp
    561 sub esp,4
    562 mov edi,dword ptr (20)[ebp]
    563 and edi,06000000H
    564 mov dword ptr (-4)[ebp],edi
    565 mov edi,dword ptr (-4)[ebp]
    566 cmp edi,33554432
    567 je L111
    568 cmp edi,33554432
    569 jg L115
    570 L114:
    571 mov edi,dword ptr (-4)[ebp]
    572 cmp edi,-2
    573 je L109
    574 cmp edi,-1
    575 je L109
    576 cmp edi,0
    577 je L109
    578 jmp L106
    579 L115:
    580 mov edi,dword ptr (-4)[ebp]
    581 cmp edi,67108864
    582 je L112
    583 jmp L106
    584 L109:
    585 mov edi,dword ptr (20)[ebp]
    586 push edi
    587 lea edi,(L110)
    588 push edi
    589 call _printf
    590 add esp,8
    591 jmp L107
    592 L111:
    593 mov edi,dword ptr (20)[ebp]
    594 push edi
    595 lea edi,(L110)
    596 push edi
    597 call _printf
    598 add esp,8
    599 jmp L107
    600 L112:
    601 mov edi,dword ptr (20)[ebp]
    602 push edi
    603 lea edi,(L110)
    604 push edi
    605 call _printf
    606 add esp,8
    607 jmp L107
    608 L106:
    609 mov edi,dword ptr (20)[ebp]
    610 push edi
    611 lea edi,(L113)
    612 push edi
    613 call _printf
    614 add esp,8
    615 L107:
    616 mov eax,0
    617 L105:
    618 mov esp,ebp
    619 pop ebp
    620 pop edi
    621 pop esi
    622 pop ebx
    623 ret
    624 public _limit
    625 _limit:
    626 push ebx
    627 push esi
    628 push edi
    629 push ebp
    630 mov ebp,esp
    631 sub esp,4
    632 mov dword ptr (-4)[ebp],-2147483648
    633 L117:
    634 mov edi,dword ptr (-4)[ebp]
    635 mov esi,-2147483648
    636 cmp edi,-2147483648
    637 jl L121
    638 cmp edi,-2147483644
    639 jg L121
    640 lea edi,[edi*4]
    641 lea esi,[esi*4]
    642 sub edi,esi
    643 jmp dword ptr (L134)[edi]
    644 _TEXT ends
    645 _TEXT segment
    646 align 4
    647 L134 label byte
    648 dd L123
    649 dd L125
    650 dd L127
    651 dd L129
    652 dd L131
    653 _TEXT ends
    654 _TEXT segment
    655 L123:
    656 lea edi,(L124)
    657 push edi
    658 call _printf
    659 add esp,4
    660 jmp L122
    661 L125:
    662 lea edi,(L126)
    663 push edi
    664 call _printf
    665 add esp,4
    666 jmp L122
    667 L127:
    668 lea edi,(L128)
    669 push edi
    670 call _printf
    671 add esp,4
    672 jmp L122
    673 L129:
    674 lea edi,(L130)
    675 push edi
    676 call _printf
    677 add esp,4
    678 jmp L122
    679 L131:
    680 lea edi,(L132)
    681 push edi
    682 call _printf
    683 add esp,4
    684 jmp L122
    685 L121:
    686 lea edi,(L133)
    687 push edi
    688 call _printf
    689 add esp,4
    690 L122:
    691 L118:
    692 inc dword ptr (-4)[ebp]
    693 cmp dword ptr (-4)[ebp],-2147483643
    694 jle L117
    695 mov dword ptr (-4)[ebp],2147483647
    696 L135:
    697 mov edi,dword ptr (-4)[ebp]
    698 mov esi,2147483643
    699 cmp edi,2147483643
    700 jl L139
    701 cmp edi,2147483647
    702 jg L139
    703 lea edi,[edi*4]
    704 lea esi,[esi*4]
    705 sub edi,esi
    706 jmp dword ptr (L146)[edi]
    707 _TEXT ends
    708 _TEXT segment
    709 align 4
    710 L146 label byte
    711 dd L145
    712 dd L144
    713 dd L143
    714 dd L142
    715 dd L141
    716 _TEXT ends
    717 _TEXT segment
    718 L141:
    719 lea edi,(L124)
    720 push edi
    721 call _printf
    722 add esp,4
    723 jmp L140
    724 L142:
    725 lea edi,(L126)
    726 push edi
    727 call _printf
    728 add esp,4
    729 jmp L140
    730 L143:
    731 lea edi,(L128)
    732 push edi
    733 call _printf
    734 add esp,4
    735 jmp L140
    736 L144:
    737 lea edi,(L130)
    738 push edi
    739 call _printf
    740 add esp,4
    741 jmp L140
    742 L145:
    743 lea edi,(L132)
    744 push edi
    745 call _printf
    746 add esp,4
    747 jmp L140
    748 L139:
    749 lea edi,(L133)
    750 push edi
    751 call _printf
    752 add esp,4
    753 L140:
    754 L136:
    755 dec dword ptr (-4)[ebp]
    756 cmp dword ptr (-4)[ebp],2147483642
    757 jge L135
    758 mov eax,0
    759 L116:
    760 mov esp,ebp
    761 pop ebp
    762 pop edi
    763 pop esi
    764 pop ebx
    765 ret
    766 _TEXT ends
    767 extrn _printf:near
    768 _TEXT segment
    769 _TEXT ends
    770 _TEXT segment
    771 align 1
    772 L133 label byte
    773 db 53
    774 db 10
    775 db 0
    776 align 1
    777 L132 label byte
    778 db 52
    779 db 10
    780 db 0
    781 align 1
    782 L130 label byte
    783 db 51
    784 db 10
    785 db 0
    786 align 1
    787 L128 label byte
    788 db 50
    789 db 10
    790 db 0
    791 align 1
    792 L126 label byte
    793 db 49
    794 db 10
    795 db 0
    796 align 1
    797 L124 label byte
    798 db 48
    799 db 10
    800 db 0
    801 align 1
    802 L113 label byte
    803 db 120
    804 db 32
    805 db 61
    806 db 32
    807 db 48
    808 db 120
    809 db 37
    810 db 120
    811 db 32
    812 db 40
    813 db 100
    814 db 101
    815 db 102
    816 db 97
    817 db 117
    818 db 108
    819 db 116
    820 db 41
    821 db 10
    822 db 0
    823 align 1
    824 L110 label byte
    825 db 120
    826 db 32
    827 db 61
    828 db 32
    829 db 48
    830 db 120
    831 db 37
    832 db 120
    833 db 10
    834 db 0
    835 align 1
    836 L104 label byte
    837 db 37
    838 db 100
    839 db 32
    840 db 100
    841 db 101
    842 db 102
    843 db 97
    844 db 117
    845 db 108
    846 db 116
    847 db 115
    848 db 10
    849 db 0
    850 align 1
    851 L81 label byte
    852 db 105
    853 db 32
    854 db 61
    855 db 32
    856 db 37
    857 db 100
    858 db 10
    859 db 0
    860 align 1
    861 L73 label byte
    862 db 104
    863 db 58
    864 db 10
    865 db 0
    866 align 1
    867 L63 label byte
    868 db 54
    869 db 32
    870 db 37
    871 db 100
    872 db 10
    873 db 0
    874 align 1
    875 L61 label byte
    876 db 53
    877 db 32
    878 db 37
    879 db 100
    880 db 10
    881 db 0
    882 align 1
    883 L59 label byte
    884 db 100
    885 db 32
    886 db 37
    887 db 100
    888 db 10
    889 db 0
    890 align 1
    891 L58 label byte
    892 db 51
    893 db 32
    894 db 37
    895 db 100
    896 db 10
    897 db 0
    898 align 1
    899 L56 label byte
    900 db 50
    901 db 32
    902 db 37
    903 db 100
    904 db 10
    905 db 0
    906 align 1
    907 L54 label byte
    908 db 49
    909 db 32
    910 db 37
    911 db 100
    912 db 10
    913 db 0
    914 align 1
    915 L46 label byte
    916 db 103
    917 db 58
    918 db 10
    919 db 0
    920 align 1
    921 L44 label byte
    922 db 120
    923 db 32
    924 db 61
    925 db 32
    926 db 37
    927 db 100
    928 db 10
    929 db 0
    930 align 1
    931 L25 label byte
    932 db 102
    933 db 58
    934 db 10
    935 db 0
    936 align 1
    937 L7 label byte
    938 db 37
    939 db 99
    940 db 32
    941 db 61
    942 db 32
    943 db 48
    944 db 120
    945 db 37
    946 db 120
    947 db 10
    948 db 0
    949 align 1
    950 L6 label byte
    951 db 98
    952 db 102
    953 db 110
    954 db 114
    955 db 116
    956 db 118
    957 db 120
    958 db 0
    959 _TEXT ends
    960 end