.intel_syntax noprefix .section .text .balign 16 .globl _INITIALISE@0 _INITIALISE@0: push ebp mov ebp, esp sub esp, 4 push ebx .Lt_012D: mov dword ptr [ebp-4], 0 mov dword ptr [ebp-4], 0 .Lt_0132: mov eax, dword ptr [ebp-4] imul eax, 640 mov ebx, eax mov eax, dword ptr [ebp-4] mov dword ptr [_RESLOOKUP+eax*4], ebx .Lt_0130: inc dword ptr [ebp-4] .Lt_012F: cmp dword ptr [ebp-4], 579 jle .Lt_0132 .Lt_0131: mov dword ptr [ebp-4], 0 .Lt_0136: fild dword ptr [ebp-4] fmul qword ptr [_Lt_0137] fsin mov ebx, dword ptr [ebp-4] fstp qword ptr [_SINPRECALCS+ebx*8] fild dword ptr [ebp-4] fmul qword ptr [_Lt_0137] fcos mov ebx, dword ptr [ebp-4] fstp qword ptr [_COSPRECALCS+ebx*8] .Lt_0134: inc dword ptr [ebp-4] .Lt_0133: cmp dword ptr [ebp-4], 359 jle .Lt_0136 .Lt_0135: .Lt_012E: pop ebx mov esp, ebp pop ebp ret .balign 16 .globl _PREPGRAPHIC@20 _PREPGRAPHIC@20: push ebp mov ebp, esp sub esp, 8 push ebx .Lt_0138: mov dword ptr [ebp-4], 0 cmp dword ptr [ebp+8], 0 je .Lt_013B mov dword ptr [ebp-4], 0 mov eax, dword ptr [ebp+8] dec eax mov dword ptr [ebp-8], eax jmp .Lt_013D .Lt_0140: mov eax, dword ptr [ebp+12] movzx ebx, byte ptr [eax] mov eax, dword ptr [ebp+16] mov dword ptr [eax], ebx add dword ptr [ebp+16], 4 inc dword ptr [ebp+12] .Lt_013E: inc dword ptr [ebp-4] .Lt_013D: mov ebx, dword ptr [ebp-8] cmp dword ptr [ebp-4], ebx jle .Lt_0140 .Lt_013F: .Lt_013B: .Lt_013A: cmp dword ptr [ebp+20], 0 je .Lt_0142 mov dword ptr [ebp-4], 0 .Lt_0146: mov ebx, dword ptr [ebp+20] movzx eax, byte ptr [ebx] sal eax, 16 mov ebx, dword ptr [ebp+20] movzx ecx, byte ptr [ebx+1] sal ecx, 8 or eax, ecx mov ecx, dword ptr [ebp+20] movzx ebx, byte ptr [ecx+2] or eax, ebx mov ecx, eax mov ebx, dword ptr [ebp+24] mov dword ptr [ebx], ecx add dword ptr [ebp+20], 3 add dword ptr [ebp+24], 4 .Lt_0144: inc dword ptr [ebp-4] .Lt_0143: cmp dword ptr [ebp-4], 255 jle .Lt_0146 .Lt_0145: .Lt_0142: .Lt_0141: .Lt_0139: pop ebx mov esp, ebp pop ebp ret 20 .balign 16 .globl _SETPALETTE@12 _SETPALETTE@12: push ebp mov ebp, esp sub esp, 8 push ebx .Lt_0147: mov dword ptr [ebp-4], 0 mov dword ptr [ebp-4], 0 mov eax, dword ptr [ebp+16] add eax, 4294967295 mov ebx, eax mov dword ptr [ebp-8], ebx jmp .Lt_014A .Lt_014D: mov ebx, dword ptr [ebp+8] movzx eax, byte ptr [ebx] sal eax, 16 mov ebx, dword ptr [ebp+8] movzx ecx, byte ptr [ebx+1] sal ecx, 8 or eax, ecx mov ecx, dword ptr [ebp+8] movzx ebx, byte ptr [ecx+2] or eax, ebx mov ecx, eax mov ebx, dword ptr [ebp+12] mov dword ptr [ebx], ecx add dword ptr [ebp+8], 3 add dword ptr [ebp+12], 4 .Lt_014B: inc dword ptr [ebp-4] .Lt_014A: mov ecx, dword ptr [ebp-8] cmp dword ptr [ebp-4], ecx jle .Lt_014D .Lt_014C: .Lt_0148: pop ebx mov esp, ebp pop ebp ret 12 .balign 16 .globl _BLITIMAGE@32 _BLITIMAGE@32: push ebp mov ebp, esp sub esp, 20 push ebx .Lt_014E: mov dword ptr [ebp-4], 0 mov dword ptr [ebp-8], 0 mov dword ptr [ebp-12], 0 mov eax, dword ptr [ebp+24] mov dword ptr [ebp-8], eax mov eax, dword ptr [ebp+32] mov dword ptr [ebp-16], eax jmp .Lt_0151 .Lt_0154: mov eax, dword ptr [ebp+20] mov dword ptr [ebp-4], eax mov eax, dword ptr [ebp+28] mov dword ptr [ebp-20], eax jmp .Lt_0156 .Lt_0159: mov eax, dword ptr [ebp+8] mov ebx, dword ptr [ebp+8] mov ecx, dword ptr [ebx] imul ecx, dword ptr [ebp-8] add ecx, dword ptr [ebp-4] sal ecx, 2 mov ebx, dword ptr [eax+1040] add ebx, ecx mov ecx, dword ptr [ebx+4] mov dword ptr [ebp-12], ecx mov ecx, dword ptr [ebp+36] cmp dword ptr [ebp-12], ecx je .Lt_015B mov ecx, dword ptr [ebp-12] sal ecx, 2 mov ebx, dword ptr [ebp+8] add ebx, ecx push dword ptr [ebx+12] mov ebx, dword ptr [ebp+16] add ebx, dword ptr [ebp-8] sub ebx, dword ptr [ebp+24] push ebx mov ebx, dword ptr [ebp+12] add ebx, dword ptr [ebp-4] sub ebx, dword ptr [ebp+20] push ebx call _WRITEPIXELFAST@12 .Lt_015B: .Lt_0157: inc dword ptr [ebp-4] .Lt_0156: mov ebx, dword ptr [ebp-20] cmp dword ptr [ebp-4], ebx jle .Lt_0159 .Lt_0158: .Lt_0152: inc dword ptr [ebp-8] .Lt_0151: mov ebx, dword ptr [ebp-16] cmp dword ptr [ebp-8], ebx jle .Lt_0154 .Lt_0153: .Lt_014F: pop ebx mov esp, ebp pop ebp ret 32 .balign 16 .globl _WRITEPIXELFAST@12 _WRITEPIXELFAST@12: push ebp mov ebp, esp push ebx .Lt_015C: cmp dword ptr [ebp+8], 0 setae al shr eax, 1 sbb eax, eax cmp dword ptr [ebp+8], 638 setb bl shr ebx, 1 sbb ebx, ebx and eax, ebx cmp dword ptr [ebp+12], 0 setae bl shr ebx, 1 sbb ebx, ebx cmp dword ptr [ebp+12], 480 setb cl shr ecx, 1 sbb ecx, ecx and ebx, ecx and eax, ebx je .Lt_015F mov ebx, dword ptr [ebp+12] mov eax, dword ptr [_RESLOOKUP+ebx*4] add eax, dword ptr [ebp+8] mov ebx, eax sal ebx, 2 mov eax, dword ptr [_BUFFERPTR] add eax, ebx mov ebx, dword ptr [ebp+16] mov dword ptr [eax], ebx .Lt_015F: .Lt_015D: pop ebx mov esp, ebp pop ebp ret 12 .balign 16 .globl _NZOFADETARGETPALETTE@20 _NZOFADETARGETPALETTE@20: push ebp mov ebp, esp sub esp, 32 push ebx mov byte ptr [ebp-4], 0 .Lt_0164: mov dword ptr [ebp-8], 0 mov byte ptr [ebp-12], 0 mov byte ptr [ebp-16], 0 mov byte ptr [ebp-20], 0 mov byte ptr [ebp-24], 0 mov byte ptr [ebp-28], 0 inc dword ptr [_NZOPALETTETIMER] mov eax, dword ptr [ebp+20] cmp dword ptr [_NZOPALETTETIMER], eax jae .Lt_0167 mov byte ptr [ebp-4], -1 jmp .Lt_0165 .Lt_0167: mov dword ptr [_NZOPALETTETIMER], 0 mov byte ptr [ebp-24], 0 cmp dword ptr [ebp+24], 0 jne .Lt_0169 mov byte ptr [ebp-28], 16 jmp .Lt_0168 .Lt_0169: mov byte ptr [ebp-28], 1 .Lt_0168: mov dword ptr [ebp-8], 0 mov eax, dword ptr [ebp+16] add eax, 4294967295 mov ebx, eax mov dword ptr [ebp-32], ebx jmp .Lt_016B .Lt_016E: mov ebx, dword ptr [ebp+12] mov eax, dword ptr [ebx] and eax, 16711680 shr eax, 16 mov bl, al mov byte ptr [ebp-12], bl mov ebx, dword ptr [ebp+12] mov eax, dword ptr [ebx] and eax, 65280 shr eax, 8 mov bl, al mov byte ptr [ebp-16], bl mov ebx, dword ptr [ebp+12] mov eax, dword ptr [ebx] and eax, 255 mov bl, al mov byte ptr [ebp-20], bl movzx ebx, byte ptr [ebp-12] mov eax, dword ptr [ebp+8] movzx ecx, byte ptr [eax] cmp ebx, ecx jle .Lt_0170 movzx ecx, byte ptr [ebp-12] movzx ebx, byte ptr [ebp-28] sub ecx, ebx mov bl, cl mov byte ptr [ebp-12], bl mov byte ptr [ebp-24], 1 jmp .Lt_016F .Lt_0170: movzx ebx, byte ptr [ebp-12] mov ecx, dword ptr [ebp+8] movzx eax, byte ptr [ecx] cmp ebx, eax jge .Lt_0171 movzx eax, byte ptr [ebp-12] movzx ebx, byte ptr [ebp-28] add eax, ebx mov bl, al mov byte ptr [ebp-12], bl mov byte ptr [ebp-24], 1 .Lt_0171: .Lt_016F: movzx ebx, byte ptr [ebp-16] mov eax, dword ptr [ebp+8] movzx ecx, byte ptr [eax+1] cmp ebx, ecx jle .Lt_0173 movzx ecx, byte ptr [ebp-16] movzx ebx, byte ptr [ebp-28] sub ecx, ebx mov bl, cl mov byte ptr [ebp-16], bl mov byte ptr [ebp-24], 1 jmp .Lt_0172 .Lt_0173: movzx ebx, byte ptr [ebp-16] mov ecx, dword ptr [ebp+8] movzx eax, byte ptr [ecx+1] cmp ebx, eax jge .Lt_0174 movzx eax, byte ptr [ebp-16] movzx ebx, byte ptr [ebp-28] add eax, ebx mov bl, al mov byte ptr [ebp-16], bl mov byte ptr [ebp-24], 1 .Lt_0174: .Lt_0172: movzx ebx, byte ptr [ebp-20] mov eax, dword ptr [ebp+8] movzx ecx, byte ptr [eax+2] cmp ebx, ecx jle .Lt_0176 movzx ecx, byte ptr [ebp-20] movzx ebx, byte ptr [ebp-28] sub ecx, ebx mov bl, cl mov byte ptr [ebp-20], bl mov byte ptr [ebp-24], 1 jmp .Lt_0175 .Lt_0176: movzx ebx, byte ptr [ebp-20] mov ecx, dword ptr [ebp+8] movzx eax, byte ptr [ecx+2] cmp ebx, eax jge .Lt_0177 movzx eax, byte ptr [ebp-20] movzx ebx, byte ptr [ebp-28] add eax, ebx mov bl, al mov byte ptr [ebp-20], bl mov byte ptr [ebp-24], 1 .Lt_0177: .Lt_0175: movzx ebx, byte ptr [ebp-12] sal ebx, 16 movzx eax, byte ptr [ebp-16] sal eax, 8 or ebx, eax movzx eax, byte ptr [ebp-20] or ebx, eax mov ecx, ebx mov eax, dword ptr [ebp+12] mov dword ptr [eax], ecx add dword ptr [ebp+8], 3 add dword ptr [ebp+12], 4 .Lt_016C: inc dword ptr [ebp-8] .Lt_016B: mov ecx, dword ptr [ebp-32] cmp dword ptr [ebp-8], ecx jle .Lt_016E .Lt_016D: mov cl, byte ptr [ebp-24] mov byte ptr [ebp-4], cl .Lt_0165: mov al, byte ptr [ebp-4] pop ebx mov esp, ebp pop ebp ret 20 .balign 16 .globl _NZOFADETARGETPALETTE2@24 _NZOFADETARGETPALETTE2@24: push ebp mov ebp, esp sub esp, 44 push ebx mov byte ptr [ebp-4], 0 .Lt_0178: mov dword ptr [ebp-8], 0 mov byte ptr [ebp-12], 0 mov byte ptr [ebp-16], 0 mov byte ptr [ebp-20], 0 mov byte ptr [ebp-24], 0 mov byte ptr [ebp-28], 0 mov byte ptr [ebp-32], 0 mov byte ptr [ebp-36], 0 mov byte ptr [ebp-40], 0 mov eax, dword ptr [ebp+28] inc dword ptr [_NZOPALETTETIMER+eax*4] mov eax, dword ptr [ebp+28] mov ebx, dword ptr [ebp+20] cmp dword ptr [_NZOPALETTETIMER+eax*4], ebx jae .Lt_017B mov byte ptr [ebp-4], -1 jmp .Lt_0179 .Lt_017B: mov ebx, dword ptr [ebp+28] mov dword ptr [_NZOPALETTETIMER+ebx*4], 0 mov byte ptr [ebp-24], 0 cmp dword ptr [ebp+24], 0 jne .Lt_017D mov byte ptr [ebp-28], 16 jmp .Lt_017C .Lt_017D: mov byte ptr [ebp-28], 1 .Lt_017C: mov dword ptr [ebp-8], 0 mov ebx, dword ptr [ebp+16] add ebx, 4294967295 mov eax, ebx mov dword ptr [ebp-44], eax jmp .Lt_017F .Lt_0182: mov eax, dword ptr [ebp+12] mov ebx, dword ptr [eax] and ebx, 16711680 shr ebx, 16 mov al, bl mov byte ptr [ebp-12], al mov eax, dword ptr [ebp+12] mov ebx, dword ptr [eax] and ebx, 65280 shr ebx, 8 mov al, bl mov byte ptr [ebp-16], al mov eax, dword ptr [ebp+12] mov ebx, dword ptr [eax] and ebx, 255 mov al, bl mov byte ptr [ebp-20], al mov eax, dword ptr [ebp+8] mov ebx, dword ptr [eax] and ebx, 16711680 shr ebx, 16 mov al, bl mov byte ptr [ebp-32], al mov eax, dword ptr [ebp+8] mov ebx, dword ptr [eax] and ebx, 65280 shr ebx, 8 mov al, bl mov byte ptr [ebp-36], al mov eax, dword ptr [ebp+8] mov ebx, dword ptr [eax] and ebx, 255 mov al, bl mov byte ptr [ebp-40], al movzx eax, byte ptr [ebp-12] movzx ebx, byte ptr [ebp-32] cmp eax, ebx jle .Lt_0184 movzx ebx, byte ptr [ebp-12] movzx eax, byte ptr [ebp-28] sub ebx, eax mov al, bl mov byte ptr [ebp-12], al mov byte ptr [ebp-24], 1 jmp .Lt_0183 .Lt_0184: movzx eax, byte ptr [ebp-12] movzx ebx, byte ptr [ebp-32] cmp eax, ebx jge .Lt_0185 movzx ebx, byte ptr [ebp-12] movzx eax, byte ptr [ebp-28] add ebx, eax mov al, bl mov byte ptr [ebp-12], al mov byte ptr [ebp-24], 1 .Lt_0185: .Lt_0183: movzx eax, byte ptr [ebp-16] movzx ebx, byte ptr [ebp-36] cmp eax, ebx jle .Lt_0187 movzx ebx, byte ptr [ebp-16] movzx eax, byte ptr [ebp-28] sub ebx, eax mov al, bl mov byte ptr [ebp-16], al mov byte ptr [ebp-24], 1 jmp .Lt_0186 .Lt_0187: movzx eax, byte ptr [ebp-16] movzx ebx, byte ptr [ebp-36] cmp eax, ebx jge .Lt_0188 movzx ebx, byte ptr [ebp-16] movzx eax, byte ptr [ebp-28] add ebx, eax mov al, bl mov byte ptr [ebp-16], al mov byte ptr [ebp-24], 1 .Lt_0188: .Lt_0186: movzx eax, byte ptr [ebp-20] movzx ebx, byte ptr [ebp-40] cmp eax, ebx jle .Lt_018A movzx ebx, byte ptr [ebp-20] movzx eax, byte ptr [ebp-28] sub ebx, eax mov al, bl mov byte ptr [ebp-20], al mov byte ptr [ebp-24], 1 jmp .Lt_0189 .Lt_018A: movzx eax, byte ptr [ebp-20] movzx ebx, byte ptr [ebp-40] cmp eax, ebx jge .Lt_018B movzx ebx, byte ptr [ebp-20] movzx eax, byte ptr [ebp-28] add ebx, eax mov al, bl mov byte ptr [ebp-20], al mov byte ptr [ebp-24], 1 .Lt_018B: .Lt_0189: movzx eax, byte ptr [ebp-12] sal eax, 16 movzx ebx, byte ptr [ebp-16] sal ebx, 8 or eax, ebx movzx ebx, byte ptr [ebp-20] or eax, ebx mov ecx, eax mov ebx, dword ptr [ebp+12] mov dword ptr [ebx], ecx add dword ptr [ebp+8], 4 add dword ptr [ebp+12], 4 .Lt_0180: inc dword ptr [ebp-8] .Lt_017F: mov ecx, dword ptr [ebp-44] cmp dword ptr [ebp-8], ecx jle .Lt_0182 .Lt_0181: mov cl, byte ptr [ebp-24] mov byte ptr [ebp-4], cl .Lt_0179: mov al, byte ptr [ebp-4] pop ebx mov esp, ebp pop ebp ret 24 .balign 16 .globl _NZOFADE1COL@12 _NZOFADE1COL@12: push ebp mov ebp, esp sub esp, 40 push ebx mov dword ptr [ebp-4], 0 .Lt_018C: mov dword ptr [ebp-8], 0 mov dword ptr [ebp-12], 0 mov byte ptr [ebp-16], 0 mov byte ptr [ebp-20], 0 mov byte ptr [ebp-24], 0 mov byte ptr [ebp-28], 0 mov byte ptr [ebp-32], 0 mov byte ptr [ebp-36], 0 mov eax, dword ptr [ebp+12] and eax, 16711680 shr eax, 16 mov bl, al mov byte ptr [ebp-28], bl mov ebx, dword ptr [ebp+12] and ebx, 65280 shr ebx, 8 mov al, bl mov byte ptr [ebp-32], al mov eax, dword ptr [ebp+12] and eax, 255 mov bl, al mov byte ptr [ebp-36], bl mov ebx, dword ptr [ebp+8] and ebx, 16711680 shr ebx, 16 mov al, bl mov byte ptr [ebp-16], al mov eax, dword ptr [ebp+8] and eax, 65280 shr eax, 8 mov bl, al mov byte ptr [ebp-20], bl mov ebx, dword ptr [ebp+8] and ebx, 255 mov al, bl mov byte ptr [ebp-24], al mov dword ptr [ebp-8], 0 mov eax, dword ptr [ebp+16] mov dword ptr [ebp-40], eax jmp .Lt_018F .Lt_0192: movzx eax, byte ptr [ebp-28] movzx ebx, byte ptr [ebp-16] cmp eax, ebx jge .Lt_0194 movzx ebx, byte ptr [ebp-16] add ebx, -17 mov al, bl mov byte ptr [ebp-16], al jmp .Lt_0193 .Lt_0194: movzx eax, byte ptr [ebp-28] movzx ebx, byte ptr [ebp-16] cmp eax, ebx jle .Lt_0195 movzx ebx, byte ptr [ebp-16] add ebx, 17 mov al, bl mov byte ptr [ebp-16], al .Lt_0195: .Lt_0193: movzx eax, byte ptr [ebp-32] movzx ebx, byte ptr [ebp-20] cmp eax, ebx jge .Lt_0197 movzx ebx, byte ptr [ebp-20] add ebx, -17 mov al, bl mov byte ptr [ebp-20], al jmp .Lt_0196 .Lt_0197: movzx eax, byte ptr [ebp-32] movzx ebx, byte ptr [ebp-20] cmp eax, ebx jle .Lt_0198 movzx ebx, byte ptr [ebp-20] add ebx, 17 mov al, bl mov byte ptr [ebp-20], al .Lt_0198: .Lt_0196: movzx eax, byte ptr [ebp-36] movzx ebx, byte ptr [ebp-24] cmp eax, ebx jge .Lt_019A movzx ebx, byte ptr [ebp-24] add ebx, -17 mov al, bl mov byte ptr [ebp-24], al jmp .Lt_0199 .Lt_019A: movzx eax, byte ptr [ebp-36] movzx ebx, byte ptr [ebp-24] cmp eax, ebx jle .Lt_019B movzx ebx, byte ptr [ebp-24] add ebx, 17 mov al, bl mov byte ptr [ebp-24], al .Lt_019B: .Lt_0199: .Lt_0190: inc dword ptr [ebp-8] .Lt_018F: mov eax, dword ptr [ebp-40] cmp dword ptr [ebp-8], eax jle .Lt_0192 .Lt_0191: movzx eax, byte ptr [ebp-16] sal eax, 16 movzx ebx, byte ptr [ebp-20] sal ebx, 8 or eax, ebx movzx ebx, byte ptr [ebp-24] or eax, ebx mov ecx, eax mov dword ptr [ebp-12], ecx mov ecx, dword ptr [ebp-12] mov dword ptr [ebp-4], ecx .Lt_018D: mov eax, dword ptr [ebp-4] pop ebx mov esp, ebp pop ebp ret 12 .balign 16 .globl _RENDERLINE@16 _RENDERLINE@16: push ebp mov ebp, esp sub esp, 4 push ebx push esi push edi .Lt_019C: mov dword ptr [ebp-4], 0 mov eax, dword ptr [ebp+8] imul eax, 640 add eax, dword ptr [ebp+12] mov ebx, eax lea eax, [_BUFFER+ebx*4] mov dword ptr [ebp-4], eax mov eax,dword Ptr[ebp+20] mov ecx, [ebp+16] mov edi, [ebp-4] rep stosd .Lt_019D: pop edi pop esi pop ebx mov esp, ebp pop ebp ret 16 .balign 16 .globl _CURVEVALUE@24 _CURVEVALUE@24: push ebp mov ebp, esp sub esp, 8 mov dword ptr [ebp-8], 0 mov dword ptr [ebp-4], 0 .Lt_019E: fld qword ptr [ebp+8] fsub qword ptr [ebp+16] fdiv qword ptr [ebp+24] fadd qword ptr [ebp+16] fstp qword ptr [ebp-8] .Lt_019F: fld qword ptr [ebp-8] mov esp, ebp pop ebp ret 24 .balign 16 .globl _INITIALISE_OBJECT@4 _INITIALISE_OBJECT@4: push ebp mov ebp, esp sub esp, 32 push ebx .Lt_024D: mov dword ptr [ebp-4], 0 mov dword ptr [ebp-12], 0 mov dword ptr [ebp-8], 0 mov dword ptr [ebp-20], 0 mov dword ptr [ebp-16], 0 mov dword ptr [ebp-28], 0 mov dword ptr [ebp-24], 0 movsx eax, word ptr [ebp+8] cmp eax, 1 jne .Lt_0250 .Lt_0251: mov dword ptr [_VERT_READ], 34 mov dword ptr [_FACE_READ], 24 jmp .Lt_024F .Lt_0250: movsx eax, word ptr [ebp+8] cmp eax, 2 jne .Lt_0252 .Lt_0253: mov dword ptr [_VERT_READ], 70 mov dword ptr [_FACE_READ], 56 jmp .Lt_024F .Lt_0252: movsx eax, word ptr [ebp+8] cmp eax, 3 jne .Lt_0254 .Lt_0255: mov dword ptr [_VERT_READ], 79 mov dword ptr [_FACE_READ], 59 jmp .Lt_024F .Lt_0254: movsx eax, word ptr [ebp+8] cmp eax, 4 jne .Lt_0256 .Lt_0257: mov dword ptr [_VERT_READ], 61 mov dword ptr [_FACE_READ], 49 jmp .Lt_024F .Lt_0256: movsx eax, word ptr [ebp+8] cmp eax, 5 jne .Lt_0258 .Lt_0259: mov dword ptr [_VERT_READ], 70 mov dword ptr [_FACE_READ], 48 jmp .Lt_024F .Lt_0258: movsx eax, word ptr [ebp+8] cmp eax, 6 jne .Lt_025A .Lt_025B: mov dword ptr [_VERT_READ], 78 mov dword ptr [_FACE_READ], 58 jmp .Lt_024F .Lt_025A: movsx eax, word ptr [ebp+8] cmp eax, 7 jne .Lt_025C .Lt_025D: mov dword ptr [_VERT_READ], 42 mov dword ptr [_FACE_READ], 33 .Lt_025C: .Lt_025E: .Lt_024F: mov dword ptr [ebp-4], 1 mov eax, dword ptr [_VERT_READ] mov dword ptr [ebp-32], eax jmp .Lt_0260 .Lt_0263: lea eax, [ebp-12] push eax call _fb_DataReadDouble@4 lea eax, [ebp-20] push eax call _fb_DataReadDouble@4 lea eax, [ebp-28] push eax call _fb_DataReadDouble@4 fld qword ptr [_XSCALE] fmul qword ptr [ebp-12] mov eax, dword ptr [ebp-4] sal eax, 3 add eax, dword ptr [_OBJ_X] fstp qword ptr [eax] fld qword ptr [_YSCALE] fmul qword ptr [ebp-20] mov eax, dword ptr [ebp-4] sal eax, 3 add eax, dword ptr [_OBJ_Y] fstp qword ptr [eax] fld qword ptr [_ZSCALE] fmul qword ptr [ebp-28] mov eax, dword ptr [ebp-4] sal eax, 3 add eax, dword ptr [_OBJ_Z] fstp qword ptr [eax] .Lt_0261: inc dword ptr [ebp-4] .Lt_0260: mov eax, dword ptr [ebp-32] cmp dword ptr [ebp-4], eax jle .Lt_0263 .Lt_0262: mov dword ptr [ebp-4], 1 mov eax, dword ptr [_FACE_READ] mov dword ptr [ebp-32], eax jmp .Lt_0265 .Lt_0268: mov eax, dword ptr [ebp-4] sal eax, 2 add eax, dword ptr [_CONNECT1] lea ebx, [eax] push ebx call _fb_DataReadInt@4 mov ebx, dword ptr [ebp-4] sal ebx, 2 add ebx, dword ptr [_CONNECT2] lea eax, [ebx] push eax call _fb_DataReadInt@4 mov eax, dword ptr [ebp-4] sal eax, 2 add eax, dword ptr [_CONNECT3] lea ebx, [eax] push ebx call _fb_DataReadInt@4 .Lt_0266: inc dword ptr [ebp-4] .Lt_0265: mov ebx, dword ptr [ebp-32] cmp dword ptr [ebp-4], ebx jle .Lt_0268 .Lt_0267: .Lt_024E: pop ebx mov esp, ebp pop ebp ret 4 .balign 16 .globl _DRAW_OBJECT@28 _DRAW_OBJECT@28: push ebp mov ebp, esp sub esp, 24 push ebx .Lt_0269: mov dword ptr [ebp-4], 0 mov dword ptr [ebp-12], 0 mov dword ptr [ebp-8], 0 mov dword ptr [ebp-20], 0 mov dword ptr [ebp-16], 0 push dword ptr [_Lt_0275] push dword ptr [_Lt_0275+4] pop dword ptr [ebp-8] pop dword ptr [ebp-12] push dword ptr [_Lt_0276] push dword ptr [_Lt_0276+4] pop dword ptr [ebp-16] pop dword ptr [ebp-20] mov dword ptr [ebp-4], 1 mov eax, dword ptr [_VERT_READ] mov dword ptr [ebp-24], eax jmp .Lt_026C .Lt_026F: mov eax, dword ptr [ebp-4] sal eax, 3 add eax, dword ptr [_OBJ_X] fld qword ptr [ebp+8] fadd qword ptr [eax] mov eax, dword ptr [ebp-4] sal eax, 3 add eax, dword ptr [_OBJ_Z] fld qword ptr [ebp+24] fadd qword ptr [eax] fxch st(1) fdivrp fadd qword ptr [ebp-12] mov eax, dword ptr [ebp-4] sal eax, 2 add eax, dword ptr [_TX] fistp dword ptr [eax] mov eax, dword ptr [ebp-4] sal eax, 3 add eax, dword ptr [_OBJ_Y] fld qword ptr [ebp+16] fadd qword ptr [eax] mov eax, dword ptr [ebp-4] sal eax, 3 add eax, dword ptr [_OBJ_Z] fld qword ptr [ebp+24] fadd qword ptr [eax] fxch st(1) fdivrp fadd qword ptr [ebp-20] mov eax, dword ptr [ebp-4] sal eax, 2 add eax, dword ptr [_TY] fistp dword ptr [eax] .Lt_026D: inc dword ptr [ebp-4] .Lt_026C: mov eax, dword ptr [ebp-24] cmp dword ptr [ebp-4], eax jle .Lt_026F .Lt_026E: mov dword ptr [ebp-4], 1 mov eax, dword ptr [_FACE_READ] mov dword ptr [ebp-24], eax jmp .Lt_0271 .Lt_0274: push dword ptr [ebp+32] mov eax, dword ptr [ebp-4] sal eax, 2 add eax, dword ptr [_CONNECT3] mov ebx, dword ptr [eax] sal ebx, 2 add ebx, dword ptr [_TY] push dword ptr [ebx] mov ebx, dword ptr [ebp-4] sal ebx, 2 add ebx, dword ptr [_CONNECT3] mov eax, dword ptr [ebx] sal eax, 2 add eax, dword ptr [_TX] push dword ptr [eax] mov eax, dword ptr [ebp-4] sal eax, 2 add eax, dword ptr [_CONNECT2] mov ebx, dword ptr [eax] sal ebx, 2 add ebx, dword ptr [_TY] push dword ptr [ebx] mov ebx, dword ptr [ebp-4] sal ebx, 2 add ebx, dword ptr [_CONNECT2] mov eax, dword ptr [ebx] sal eax, 2 add eax, dword ptr [_TX] push dword ptr [eax] mov eax, dword ptr [ebp-4] sal eax, 2 add eax, dword ptr [_CONNECT1] mov ebx, dword ptr [eax] sal ebx, 2 add ebx, dword ptr [_TY] push dword ptr [ebx] mov ebx, dword ptr [ebp-4] sal ebx, 2 add ebx, dword ptr [_CONNECT1] mov eax, dword ptr [ebx] sal eax, 2 add eax, dword ptr [_TX] push dword ptr [eax] call _TRIANGLE@28 .Lt_0272: inc dword ptr [ebp-4] .Lt_0271: mov eax, dword ptr [ebp-24] cmp dword ptr [ebp-4], eax jle .Lt_0274 .Lt_0273: .Lt_026A: pop ebx mov esp, ebp pop ebp ret 28 .balign 16 .globl _TRIANGLE@28 _TRIANGLE@28: push ebp mov ebp, esp sub esp, 168 push ebx push esi push edi .Lt_0277: mov dword ptr [ebp-4], 0 mov dword ptr [ebp-8], 0 mov dword ptr [ebp-12], 0 mov dword ptr [ebp-16], 0 mov dword ptr [ebp-32], 0 mov dword ptr [ebp-28], 0 mov dword ptr [ebp-24], 0 mov dword ptr [ebp-20], 0 lea eax, [ebp-32] mov dword ptr [ebp-64], eax lea eax, [ebp-32] mov dword ptr [ebp-60], eax mov dword ptr [ebp-56], 16 mov dword ptr [ebp-52], 4 mov dword ptr [ebp-48], 1 mov dword ptr [ebp-44], 4 mov dword ptr [ebp-40], 0 mov dword ptr [ebp-36], 3 mov dword ptr [ebp-80], 0 mov dword ptr [ebp-76], 0 mov dword ptr [ebp-72], 0 mov dword ptr [ebp-68], 0 lea eax, [ebp-80] mov dword ptr [ebp-112], eax lea eax, [ebp-80] mov dword ptr [ebp-108], eax mov dword ptr [ebp-104], 16 mov dword ptr [ebp-100], 4 mov dword ptr [ebp-96], 1 mov dword ptr [ebp-92], 4 mov dword ptr [ebp-88], 0 mov dword ptr [ebp-84], 3 mov dword ptr [ebp-116], 0 mov dword ptr [ebp-120], 0 mov dword ptr [ebp-124], 0 mov dword ptr [ebp-128], 0 mov dword ptr [ebp-132], 0 mov dword ptr [ebp-116], 0 mov eax, dword ptr [ebp+8] mov dword ptr [ebp-28], eax mov eax, dword ptr [ebp+16] mov dword ptr [ebp-24], eax mov eax, dword ptr [ebp+24] mov dword ptr [ebp-20], eax mov eax, dword ptr [ebp+12] mov dword ptr [ebp-76], eax mov eax, dword ptr [ebp+20] mov dword ptr [ebp-72], eax mov eax, dword ptr [ebp+28] mov dword ptr [ebp-68], eax mov dword ptr [ebp-12], 1 .Lt_027E: mov dword ptr [ebp-16], 1 .Lt_0282: mov eax, dword ptr [ebp-16] mov ebx, dword ptr [ebp-16] mov ecx, dword ptr [ebp+ebx*4-80] cmp dword ptr [ebp+eax*4-76], ecx jg .Lt_0284 mov ecx, dword ptr [ebp-16] mov eax, dword ptr [ebp+ecx*4-32] mov dword ptr [ebp-4], eax mov eax, dword ptr [ebp-16] mov ecx, dword ptr [ebp+eax*4-80] mov dword ptr [ebp-8], ecx mov ecx, dword ptr [ebp-16] mov eax, dword ptr [ebp-16] mov ebx, dword ptr [ebp+ecx*4-28] mov dword ptr [ebp+eax*4-32], ebx mov ebx, dword ptr [ebp-16] mov eax, dword ptr [ebp-16] mov ecx, dword ptr [ebp+ebx*4-76] mov dword ptr [ebp+eax*4-80], ecx mov ecx, dword ptr [ebp-16] mov eax, dword ptr [ebp-4] mov dword ptr [ebp+ecx*4-28], eax mov eax, dword ptr [ebp-16] mov ecx, dword ptr [ebp-8] mov dword ptr [ebp+eax*4-76], ecx .Lt_0284: .Lt_0283: .Lt_0280: inc dword ptr [ebp-16] .Lt_027F: cmp dword ptr [ebp-16], 2 jle .Lt_0282 .Lt_0281: .Lt_027C: inc dword ptr [ebp-12] .Lt_027B: cmp dword ptr [ebp-12], 2 jle .Lt_027E .Lt_027D: mov ecx, dword ptr [ebp-28] test ecx, ecx setl cl shr ecx, 1 sbb ecx, ecx mov eax, dword ptr [ebp-24] test eax, eax setl al shr eax, 1 sbb eax, eax and ecx, eax mov eax, dword ptr [ebp-20] test eax, eax setl al shr eax, 1 sbb eax, eax and ecx, eax je .Lt_0286 mov dword ptr [ebp-116], 1 .Lt_0286: mov eax, dword ptr [ebp-28] cmp eax, 640 setg al shr eax, 1 sbb eax, eax mov ecx, dword ptr [ebp-24] cmp ecx, 640 setg cl shr ecx, 1 sbb ecx, ecx and eax, ecx mov ecx, dword ptr [ebp-20] cmp ecx, 640 setg cl shr ecx, 1 sbb ecx, ecx and eax, ecx je .Lt_0288 mov dword ptr [ebp-116], 1 .Lt_0288: mov ecx, dword ptr [ebp-76] cmp ecx, 480 setg cl shr ecx, 1 sbb ecx, ecx mov eax, dword ptr [ebp-72] cmp eax, 480 setg al shr eax, 1 sbb eax, eax and ecx, eax mov eax, dword ptr [ebp-68] cmp eax, 480 setg al shr eax, 1 sbb eax, eax and ecx, eax je .Lt_028A mov dword ptr [ebp-116], 1 .Lt_028A: mov