1;hq4x filter (thread-safe version)
2;16bpp output
3;----------------------------------------------------------
4;Copyright (C) 2003 MaxSt ( maxst@hiend3d.com )
5;
6;This program is free software; you can redistribute it and/or
7;modify it under the terms of the GNU General Public License
8;as published by the Free Software Foundation; either
9;version 2 of the License, or (at your option) any later
10;version.
11;
12;This program is distributed in the hope that it will be useful,
13;but WITHOUT ANY WARRANTY; without even the implied warranty of
14;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15;GNU General Public License for more details.
16;
17;You should have received a copy of the GNU General Public License
18;along with this program; if not, write to the Free Software
19;Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20
21%include "macros.mac"
22
23EXTSYM LUT16to32,RGBtoYUV
24
25SECTION .bss
26
27SECTION .data
28
29reg_blank    dd  0,0
30const3       dd  0x00030003,0x00000003
31const5       dd  0x00050005,0x00000005
32const6       dd  0x00060006,0x00000006
33const7       dd  0x00070007,0x00000007
34threshold    dd  0x00300706,0x00000000
35zerolowbits  dd  0xF7DEF7DE
36
37SECTION .text
38
39%macro AUXADDRESS 0
40    mov     ecx, edi
41    add     ecx, ebx
42    add     ecx, ebx
43%endmacro
44
45%macro TestDiff 2
46    mov     edx,[%1]
47    sub     edx,[%2]
48    jz      %%fin
49    mov     edx,[%1]
50    shl     edx,2
51    add     edx,RGBtoYUV
52    movd    mm1,[edx]
53    movq    mm5,mm1
54    mov     edx,[%2]
55    shl     edx,2
56    add     edx,RGBtoYUV
57    movd    mm2,[edx]
58    psubusb mm1,mm2
59    psubusb mm2,mm5
60    por     mm1,mm2
61    psubusb mm1,[threshold]
62    movd    edx,mm1
63%%fin:
64%endmacro
65
66%macro DiffOrNot 4
67   TestDiff %1,%2
68   test edx,edx
69   jz   %%same
70   %3
71   jmp %%fin
72%%same:
73   %4
74%%fin
75%endmacro
76
77%macro DiffOrNot 8
78   TestDiff %1,%2
79   test edx,edx
80   jz   %%same
81   %3
82   %4
83   %5
84   jmp %%fin
85%%same:
86   %6
87   %7
88   %8
89%%fin
90%endmacro
91
92%macro DiffOrNot 10
93   TestDiff %1,%2
94   test edx,edx
95   jz %%same
96   %3
97   %4
98   %5
99   %6
100   jmp %%fin
101%%same:
102   %7
103   %8
104   %9
105   %10
106%%fin
107%endmacro
108
109%macro DiffOrNot 14
110   TestDiff %1,%2
111   test edx,edx
112   jz %%same
113   %3
114   %4
115   %5
116   %6
117   %7
118   %8
119   jmp %%fin
120%%same:
121   %9
122   %10
123   %11
124   %12
125   %13
126   %14
127%%fin
128%endmacro
129
130%macro Interp1 3
131    mov edx,%2
132    mov eax,%3
133    cmp edx,eax
134    je  %%fin
135    and edx,[zerolowbits]
136    and eax,[zerolowbits]
137    add eax,edx
138    shr eax,1
139    add eax,0x0821
140    and eax,[zerolowbits]
141    add edx,eax
142    shr edx,1
143%%fin
144    mov %1,dx
145%endmacro
146
147%macro Interp2 4
148    mov edx,%3
149    mov eax,%4
150    cmp edx,eax
151    je  %%fin1
152    and edx,[zerolowbits]
153    and eax,[zerolowbits]
154    add eax,edx
155    shr eax,1
156    add eax,0x0821
157%%fin1
158    mov edx,%2
159    cmp edx,eax
160    je  %%fin2
161    and eax,[zerolowbits]
162    and edx,[zerolowbits]
163    add edx,eax
164    shr edx,1
165%%fin2
166    mov %1,dx
167%endmacro
168
169%macro Interp3 3
170    mov        eax, LUT16to32
171    mov        edx, %2
172    movd       mm1, [eax+edx*4]
173    mov        edx, %3
174    movd       mm2, [eax+edx*4]
175    punpcklbw  mm1, [reg_blank]
176    punpcklbw  mm2, [reg_blank]
177    pmullw     mm1, [const7]
178    paddw      mm1, mm2
179    psrlw      mm1, 5
180    packuswb   mm1, [reg_blank]
181    movd       edx, mm1
182    shl        dl,  2
183    shr        edx, 1
184    shl        dx,  3
185    shr        edx, 5
186    mov        %1,  dx
187%endmacro
188
189%macro Interp5 3
190    mov edx,%2
191    mov eax,%3
192    cmp edx,eax
193    je  %%fin
194    and edx,[zerolowbits]
195    and eax,[zerolowbits]
196    add edx,eax
197    shr edx,1
198%%fin
199    mov %1,dx
200%endmacro
201
202%macro Interp6 4
203    mov        eax, LUT16to32
204    mov        edx, %2
205    movd       mm1, [eax+edx*4]
206    mov        edx, %3
207    movd       mm2, [eax+edx*4]
208    mov        edx, %4
209    movd       mm3, [eax+edx*4]
210    punpcklbw  mm1, [reg_blank]
211    punpcklbw  mm2, [reg_blank]
212    punpcklbw  mm3, [reg_blank]
213    pmullw     mm1, [const5]
214    psllw      mm2, 1
215    paddw      mm1, mm3
216    paddw      mm1, mm2
217    psrlw      mm1, 5
218    packuswb   mm1, [reg_blank]
219    movd       edx, mm1
220    shl        dl,  2
221    shr        edx, 1
222    shl        dx,  3
223    shr        edx, 5
224    mov        %1,  dx
225%endmacro
226
227%macro Interp7 4
228    mov        eax, LUT16to32
229    mov        edx, %2
230    movd       mm1, [eax+edx*4]
231    mov        edx, %3
232    movd       mm2, [eax+edx*4]
233    mov        edx, %4
234    movd       mm3, [eax+edx*4]
235    punpcklbw  mm1, [reg_blank]
236    punpcklbw  mm2, [reg_blank]
237    punpcklbw  mm3, [reg_blank]
238    pmullw     mm1, [const6]
239    paddw      mm2, mm3
240    paddw      mm1, mm2
241    psrlw      mm1, 5
242    packuswb   mm1, [reg_blank]
243    movd       edx, mm1
244    shl        dl,  2
245    shr        edx, 1
246    shl        dx,  3
247    shr        edx, 5
248    mov        %1,  dx
249%endmacro
250
251%macro Interp8 3
252    mov        eax, LUT16to32
253    mov        edx, %2
254    movd       mm1, [eax+edx*4]
255    mov        edx, %3
256    movd       mm2, [eax+edx*4]
257    punpcklbw  mm1, [reg_blank]
258    punpcklbw  mm2, [reg_blank]
259    pmullw     mm1, [const5]
260    pmullw     mm2, [const3]
261    paddw      mm1, mm2
262    psrlw      mm1, 5
263    packuswb   mm1, [reg_blank]
264    movd       edx, mm1
265    shl        dl,  2
266    shr        edx, 1
267    shl        dx,  3
268    shr        edx, 5
269    mov        %1,  dx
270%endmacro
271
272%macro PIXEL00_0 0
273    mov eax,dword[ebp-w5]
274    mov [edi],ax
275%endmacro
276
277%macro PIXEL00_11 0
278    Interp1 [edi],dword[ebp-w5],dword[ebp-w4]
279%endmacro
280
281%macro PIXEL00_12 0
282    Interp1 [edi],dword[ebp-w5],dword[ebp-w2]
283%endmacro
284
285%macro PIXEL00_20 0
286    Interp2 [edi],dword[ebp-w5],dword[ebp-w2],dword[ebp-w4]
287%endmacro
288
289%macro PIXEL00_50 0
290    Interp5 [edi],dword[ebp-w2],dword[ebp-w4]
291%endmacro
292
293%macro PIXEL00_80 0
294    Interp8 [edi],dword[ebp-w5],dword[ebp-w1]
295%endmacro
296
297%macro PIXEL00_81 0
298    Interp8 [edi],dword[ebp-w5],dword[ebp-w4]
299%endmacro
300
301%macro PIXEL00_82 0
302    Interp8 [edi],dword[ebp-w5],dword[ebp-w2]
303%endmacro
304
305%macro PIXEL01_0 0
306    mov eax,dword[ebp-w5]
307    mov [edi+2],ax
308%endmacro
309
310%macro PIXEL01_10 0
311    Interp1 [edi+2],dword[ebp-w5],dword[ebp-w1]
312%endmacro
313
314%macro PIXEL01_12 0
315    Interp1 [edi+2],dword[ebp-w5],dword[ebp-w2]
316%endmacro
317
318%macro PIXEL01_14 0
319    Interp1 [edi+2],dword[ebp-w2],dword[ebp-w5]
320%endmacro
321
322%macro PIXEL01_21 0
323    Interp2 [edi+2],dword[ebp-w2],dword[ebp-w5],dword[ebp-w4]
324%endmacro
325
326%macro PIXEL01_31 0
327    Interp3 [edi+2],dword[ebp-w5],dword[ebp-w4]
328%endmacro
329
330%macro PIXEL01_50 0
331    Interp5 [edi+2],dword[ebp-w2],dword[ebp-w5]
332%endmacro
333
334%macro PIXEL01_60 0
335    Interp6 [edi+2],dword[ebp-w5],dword[ebp-w2],dword[ebp-w4]
336%endmacro
337
338%macro PIXEL01_61 0
339    Interp6 [edi+2],dword[ebp-w5],dword[ebp-w2],dword[ebp-w1]
340%endmacro
341
342%macro PIXEL01_82 0
343    Interp8 [edi+2],dword[ebp-w5],dword[ebp-w2]
344%endmacro
345
346%macro PIXEL01_83 0
347    Interp8 [edi+2],dword[ebp-w2],dword[ebp-w4]
348%endmacro
349
350%macro PIXEL02_0 0
351    mov eax,dword[ebp-w5]
352    mov [edi+4],ax
353%endmacro
354
355%macro PIXEL02_10 0
356    Interp1 [edi+4],dword[ebp-w5],dword[ebp-w3]
357%endmacro
358
359%macro PIXEL02_11 0
360    Interp1 [edi+4],dword[ebp-w5],dword[ebp-w2]
361%endmacro
362
363%macro PIXEL02_13 0
364    Interp1 [edi+4],dword[ebp-w2],dword[ebp-w5]
365%endmacro
366
367%macro PIXEL02_21 0
368    Interp2 [edi+4],dword[ebp-w2],dword[ebp-w5],dword[ebp-w6]
369%endmacro
370
371%macro PIXEL02_32 0
372    Interp3 [edi+4],dword[ebp-w5],dword[ebp-w6]
373%endmacro
374
375%macro PIXEL02_50 0
376    Interp5 [edi+4],dword[ebp-w2],dword[ebp-w5]
377%endmacro
378
379%macro PIXEL02_60 0
380    Interp6 [edi+4],dword[ebp-w5],dword[ebp-w2],dword[ebp-w6]
381%endmacro
382
383%macro PIXEL02_61 0
384    Interp6 [edi+4],dword[ebp-w5],dword[ebp-w2],dword[ebp-w3]
385%endmacro
386
387%macro PIXEL02_81 0
388    Interp8 [edi+4],dword[ebp-w5],dword[ebp-w2]
389%endmacro
390
391%macro PIXEL02_83 0
392    Interp8 [edi+4],dword[ebp-w2],dword[ebp-w6]
393%endmacro
394
395%macro PIXEL03_0 0
396    mov eax,dword[ebp-w5]
397    mov [edi+6],ax
398%endmacro
399
400%macro PIXEL03_11 0
401    Interp1 [edi+6],dword[ebp-w5],dword[ebp-w2]
402%endmacro
403
404%macro PIXEL03_12 0
405    Interp1 [edi+6],dword[ebp-w5],dword[ebp-w6]
406%endmacro
407
408%macro PIXEL03_20 0
409    Interp2 [edi+6],dword[ebp-w5],dword[ebp-w2],dword[ebp-w6]
410%endmacro
411
412%macro PIXEL03_50 0
413    Interp5 [edi+6],dword[ebp-w2],dword[ebp-w6]
414%endmacro
415
416%macro PIXEL03_80 0
417    Interp8 [edi+6],dword[ebp-w5],dword[ebp-w3]
418%endmacro
419
420%macro PIXEL03_81 0
421    Interp8 [edi+6],dword[ebp-w5],dword[ebp-w2]
422%endmacro
423
424%macro PIXEL03_82 0
425    Interp8 [edi+6],dword[ebp-w5],dword[ebp-w6]
426%endmacro
427
428%macro PIXEL10_0 0
429    mov eax,dword[ebp-w5]
430    mov [edi+ebx],ax
431%endmacro
432
433%macro PIXEL10_10 0
434    Interp1 [edi+ebx],dword[ebp-w5],dword[ebp-w1]
435%endmacro
436
437%macro PIXEL10_11 0
438    Interp1 [edi+ebx],dword[ebp-w5],dword[ebp-w4]
439%endmacro
440
441%macro PIXEL10_13 0
442    Interp1 [edi+ebx],dword[ebp-w4],dword[ebp-w5]
443%endmacro
444
445%macro PIXEL10_21 0
446    Interp2 [edi+ebx],dword[ebp-w4],dword[ebp-w5],dword[ebp-w2]
447%endmacro
448
449%macro PIXEL10_32 0
450    Interp3 [edi+ebx],dword[ebp-w5],dword[ebp-w2]
451%endmacro
452
453%macro PIXEL10_50 0
454    Interp5 [edi+ebx],dword[ebp-w4],dword[ebp-w5]
455%endmacro
456
457%macro PIXEL10_60 0
458    Interp6 [edi+ebx],dword[ebp-w5],dword[ebp-w4],dword[ebp-w2]
459%endmacro
460
461%macro PIXEL10_61 0
462    Interp6 [edi+ebx],dword[ebp-w5],dword[ebp-w4],dword[ebp-w1]
463%endmacro
464
465%macro PIXEL10_81 0
466    Interp8 [edi+ebx],dword[ebp-w5],dword[ebp-w4]
467%endmacro
468
469%macro PIXEL10_83 0
470    Interp8 [edi+ebx],dword[ebp-w4],dword[ebp-w2]
471%endmacro
472
473%macro PIXEL11_0 0
474    mov eax,dword[ebp-w5]
475    mov [edi+ebx+2],ax
476%endmacro
477
478%macro PIXEL11_30 0
479    Interp3 [edi+ebx+2],dword[ebp-w5],dword[ebp-w1]
480%endmacro
481
482%macro PIXEL11_31 0
483    Interp3 [edi+ebx+2],dword[ebp-w5],dword[ebp-w4]
484%endmacro
485
486%macro PIXEL11_32 0
487    Interp3 [edi+ebx+2],dword[ebp-w5],dword[ebp-w2]
488%endmacro
489
490%macro PIXEL11_70 0
491    Interp7 [edi+ebx+2],dword[ebp-w5],dword[ebp-w4],dword[ebp-w2]
492%endmacro
493
494%macro PIXEL12_0 0
495    mov eax,dword[ebp-w5]
496    mov [edi+ebx+4],ax
497%endmacro
498
499%macro PIXEL12_30 0
500    Interp3 [edi+ebx+4],dword[ebp-w5],dword[ebp-w3]
501%endmacro
502
503%macro PIXEL12_31 0
504    Interp3 [edi+ebx+4],dword[ebp-w5],dword[ebp-w2]
505%endmacro
506
507%macro PIXEL12_32 0
508    Interp3 [edi+ebx+4],dword[ebp-w5],dword[ebp-w6]
509%endmacro
510
511%macro PIXEL12_70 0
512    Interp7 [edi+ebx+4],dword[ebp-w5],dword[ebp-w6],dword[ebp-w2]
513%endmacro
514
515%macro PIXEL13_0 0
516    mov eax,dword[ebp-w5]
517    mov [edi+ebx+6],ax
518%endmacro
519
520%macro PIXEL13_10 0
521    Interp1 [edi+ebx+6],dword[ebp-w5],dword[ebp-w3]
522%endmacro
523
524%macro PIXEL13_12 0
525    Interp1 [edi+ebx+6],dword[ebp-w5],dword[ebp-w6]
526%endmacro
527
528%macro PIXEL13_14 0
529    Interp1 [edi+ebx+6],dword[ebp-w6],dword[ebp-w5]
530%endmacro
531
532%macro PIXEL13_21 0
533    Interp2 [edi+ebx+6],dword[ebp-w6],dword[ebp-w5],dword[ebp-w2]
534%endmacro
535
536%macro PIXEL13_31 0
537    Interp3 [edi+ebx+6],dword[ebp-w5],dword[ebp-w2]
538%endmacro
539
540%macro PIXEL13_50 0
541    Interp5 [edi+ebx+6],dword[ebp-w6],dword[ebp-w5]
542%endmacro
543
544%macro PIXEL13_60 0
545    Interp6 [edi+ebx+6],dword[ebp-w5],dword[ebp-w6],dword[ebp-w2]
546%endmacro
547
548%macro PIXEL13_61 0
549    Interp6 [edi+ebx+6],dword[ebp-w5],dword[ebp-w6],dword[ebp-w3]
550%endmacro
551
552%macro PIXEL13_82 0
553    Interp8 [edi+ebx+6],dword[ebp-w5],dword[ebp-w6]
554%endmacro
555
556%macro PIXEL13_83 0
557    Interp8 [edi+ebx+6],dword[ebp-w6],dword[ebp-w2]
558%endmacro
559
560%macro PIXEL20_0 0
561    mov eax,dword[ebp-w5]
562    mov [ecx],ax
563%endmacro
564
565%macro PIXEL20_10 0
566    Interp1 [ecx],dword[ebp-w5],dword[ebp-w7]
567%endmacro
568
569%macro PIXEL20_12 0
570    Interp1 [ecx],dword[ebp-w5],dword[ebp-w4]
571%endmacro
572
573%macro PIXEL20_14 0
574    Interp1 [ecx],dword[ebp-w4],dword[ebp-w5]
575%endmacro
576
577%macro PIXEL20_21 0
578    Interp2 [ecx],dword[ebp-w4],dword[ebp-w5],dword[ebp-w8]
579%endmacro
580
581%macro PIXEL20_31 0
582    Interp3 [ecx],dword[ebp-w5],dword[ebp-w8]
583%endmacro
584
585%macro PIXEL20_50 0
586    Interp5 [ecx],dword[ebp-w4],dword[ebp-w5]
587%endmacro
588
589%macro PIXEL20_60 0
590    Interp6 [ecx],dword[ebp-w5],dword[ebp-w4],dword[ebp-w8]
591%endmacro
592
593%macro PIXEL20_61 0
594    Interp6 [ecx],dword[ebp-w5],dword[ebp-w4],dword[ebp-w7]
595%endmacro
596
597%macro PIXEL20_82 0
598    Interp8 [ecx],dword[ebp-w5],dword[ebp-w4]
599%endmacro
600
601%macro PIXEL20_83 0
602    Interp8 [ecx],dword[ebp-w4],dword[ebp-w8]
603%endmacro
604
605%macro PIXEL21_0 0
606    mov eax,dword[ebp-w5]
607    mov [ecx+2],ax
608%endmacro
609
610%macro PIXEL21_30 0
611    Interp3 [ecx+2],dword[ebp-w5],dword[ebp-w7]
612%endmacro
613
614%macro PIXEL21_31 0
615    Interp3 [ecx+2],dword[ebp-w5],dword[ebp-w8]
616%endmacro
617
618%macro PIXEL21_32 0
619    Interp3 [ecx+2],dword[ebp-w5],dword[ebp-w4]
620%endmacro
621
622%macro PIXEL21_70 0
623    Interp7 [ecx+2],dword[ebp-w5],dword[ebp-w4],dword[ebp-w8]
624%endmacro
625
626%macro PIXEL22_0 0
627    mov eax,dword[ebp-w5]
628    mov [ecx+4],ax
629%endmacro
630
631%macro PIXEL22_30 0
632    Interp3 [ecx+4],dword[ebp-w5],dword[ebp-w9]
633%endmacro
634
635%macro PIXEL22_31 0
636    Interp3 [ecx+4],dword[ebp-w5],dword[ebp-w6]
637%endmacro
638
639%macro PIXEL22_32 0
640    Interp3 [ecx+4],dword[ebp-w5],dword[ebp-w8]
641%endmacro
642
643%macro PIXEL22_70 0
644    Interp7 [ecx+4],dword[ebp-w5],dword[ebp-w6],dword[ebp-w8]
645%endmacro
646
647%macro PIXEL23_0 0
648    mov eax,dword[ebp-w5]
649    mov [ecx+6],ax
650%endmacro
651
652%macro PIXEL23_10 0
653    Interp1 [ecx+6],dword[ebp-w5],dword[ebp-w9]
654%endmacro
655
656%macro PIXEL23_11 0
657    Interp1 [ecx+6],dword[ebp-w5],dword[ebp-w6]
658%endmacro
659
660%macro PIXEL23_13 0
661    Interp1 [ecx+6],dword[ebp-w6],dword[ebp-w5]
662%endmacro
663
664%macro PIXEL23_21 0
665    Interp2 [ecx+6],dword[ebp-w6],dword[ebp-w5],dword[ebp-w8]
666%endmacro
667
668%macro PIXEL23_32 0
669    Interp3 [ecx+6],dword[ebp-w5],dword[ebp-w8]
670%endmacro
671
672%macro PIXEL23_50 0
673    Interp5 [ecx+6],dword[ebp-w6],dword[ebp-w5]
674%endmacro
675
676%macro PIXEL23_60 0
677    Interp6 [ecx+6],dword[ebp-w5],dword[ebp-w6],dword[ebp-w8]
678%endmacro
679
680%macro PIXEL23_61 0
681    Interp6 [ecx+6],dword[ebp-w5],dword[ebp-w6],dword[ebp-w9]
682%endmacro
683
684%macro PIXEL23_81 0
685    Interp8 [ecx+6],dword[ebp-w5],dword[ebp-w6]
686%endmacro
687
688%macro PIXEL23_83 0
689    Interp8 [ecx+6],dword[ebp-w6],dword[ebp-w8]
690%endmacro
691
692%macro PIXEL30_0 0
693    mov eax,dword[ebp-w5]
694    mov [ecx+ebx],ax
695%endmacro
696
697%macro PIXEL30_11 0
698    Interp1 [ecx+ebx],dword[ebp-w5],dword[ebp-w8]
699%endmacro
700
701%macro PIXEL30_12 0
702    Interp1 [ecx+ebx],dword[ebp-w5],dword[ebp-w4]
703%endmacro
704
705%macro PIXEL30_20 0
706    Interp2 [ecx+ebx],dword[ebp-w5],dword[ebp-w8],dword[ebp-w4]
707%endmacro
708
709%macro PIXEL30_50 0
710    Interp5 [ecx+ebx],dword[ebp-w8],dword[ebp-w4]
711%endmacro
712
713%macro PIXEL30_80 0
714    Interp8 [ecx+ebx],dword[ebp-w5],dword[ebp-w7]
715%endmacro
716
717%macro PIXEL30_81 0
718    Interp8 [ecx+ebx],dword[ebp-w5],dword[ebp-w8]
719%endmacro
720
721%macro PIXEL30_82 0
722    Interp8 [ecx+ebx],dword[ebp-w5],dword[ebp-w4]
723%endmacro
724
725%macro PIXEL31_0 0
726    mov eax,dword[ebp-w5]
727    mov [ecx+ebx+2],ax
728%endmacro
729
730%macro PIXEL31_10 0
731    Interp1 [ecx+ebx+2],dword[ebp-w5],dword[ebp-w7]
732%endmacro
733
734%macro PIXEL31_11 0
735    Interp1 [ecx+ebx+2],dword[ebp-w5],dword[ebp-w8]
736%endmacro
737
738%macro PIXEL31_13 0
739    Interp1 [ecx+ebx+2],dword[ebp-w8],dword[ebp-w5]
740%endmacro
741
742%macro PIXEL31_21 0
743    Interp2 [ecx+ebx+2],dword[ebp-w8],dword[ebp-w5],dword[ebp-w4]
744%endmacro
745
746%macro PIXEL31_32 0
747    Interp3 [ecx+ebx+2],dword[ebp-w5],dword[ebp-w4]
748%endmacro
749
750%macro PIXEL31_50 0
751    Interp5 [ecx+ebx+2],dword[ebp-w8],dword[ebp-w5]
752%endmacro
753
754%macro PIXEL31_60 0
755    Interp6 [ecx+ebx+2],dword[ebp-w5],dword[ebp-w8],dword[ebp-w4]
756%endmacro
757
758%macro PIXEL31_61 0
759    Interp6 [ecx+ebx+2],dword[ebp-w5],dword[ebp-w8],dword[ebp-w7]
760%endmacro
761
762%macro PIXEL31_81 0
763    Interp8 [ecx+ebx+2],dword[ebp-w5],dword[ebp-w8]
764%endmacro
765
766%macro PIXEL31_83 0
767    Interp8 [ecx+ebx+2],dword[ebp-w8],dword[ebp-w4]
768%endmacro
769
770%macro PIXEL32_0 0
771    mov eax,dword[ebp-w5]
772    mov [ecx+ebx+4],ax
773%endmacro
774
775%macro PIXEL32_10 0
776    Interp1 [ecx+ebx+4],dword[ebp-w5],dword[ebp-w9]
777%endmacro
778
779%macro PIXEL32_12 0
780    Interp1 [ecx+ebx+4],dword[ebp-w5],dword[ebp-w8]
781%endmacro
782
783%macro PIXEL32_14 0
784    Interp1 [ecx+ebx+4],dword[ebp-w8],dword[ebp-w5]
785%endmacro
786
787%macro PIXEL32_21 0
788    Interp2 [ecx+ebx+4],dword[ebp-w8],dword[ebp-w5],dword[ebp-w6]
789%endmacro
790
791%macro PIXEL32_31 0
792    Interp3 [ecx+ebx+4],dword[ebp-w5],dword[ebp-w6]
793%endmacro
794
795%macro PIXEL32_50 0
796    Interp5 [ecx+ebx+4],dword[ebp-w8],dword[ebp-w5]
797%endmacro
798
799%macro PIXEL32_60 0
800    Interp6 [ecx+ebx+4],dword[ebp-w5],dword[ebp-w8],dword[ebp-w6]
801%endmacro
802
803%macro PIXEL32_61 0
804    Interp6 [ecx+ebx+4],dword[ebp-w5],dword[ebp-w8],dword[ebp-w9]
805%endmacro
806
807%macro PIXEL32_82 0
808    Interp8 [ecx+ebx+4],dword[ebp-w5],dword[ebp-w8]
809%endmacro
810
811%macro PIXEL32_83 0
812    Interp8 [ecx+ebx+4],dword[ebp-w8],dword[ebp-w6]
813%endmacro
814
815%macro PIXEL33_0 0
816    mov eax,dword[ebp-w5]
817    mov [ecx+ebx+6],ax
818%endmacro
819
820%macro PIXEL33_11 0
821    Interp1 [ecx+ebx+6],dword[ebp-w5],dword[ebp-w6]
822%endmacro
823
824%macro PIXEL33_12 0
825    Interp1 [ecx+ebx+6],dword[ebp-w5],dword[ebp-w8]
826%endmacro
827
828%macro PIXEL33_20 0
829    Interp2 [ecx+ebx+6],dword[ebp-w5],dword[ebp-w8],dword[ebp-w6]
830%endmacro
831
832%macro PIXEL33_50 0
833    Interp5 [ecx+ebx+6],dword[ebp-w8],dword[ebp-w6]
834%endmacro
835
836%macro PIXEL33_80 0
837    Interp8 [ecx+ebx+6],dword[ebp-w5],dword[ebp-w9]
838%endmacro
839
840%macro PIXEL33_81 0
841    Interp8 [ecx+ebx+6],dword[ebp-w5],dword[ebp-w6]
842%endmacro
843
844%macro PIXEL33_82 0
845    Interp8 [ecx+ebx+6],dword[ebp-w5],dword[ebp-w8]
846%endmacro
847
848inbuffer     equ 8
849outbuffer    equ 12
850Xres         equ 16
851Yres         equ 20
852pitch        equ 24
853offset       equ 28
854
855linesleft equ 4
856xcounter  equ 8
857cross     equ 12
858nextline  equ 16
859prevline  equ 20
860w1        equ 24
861w2        equ 28
862w3        equ 32
863w4        equ 36
864w5        equ 40
865w6        equ 44
866w7        equ 48
867w8        equ 52
868w9        equ 56
869localsize equ 56
870
871NEWSYM hq4x_16
872    push ebp
873    mov ebp,esp
874    sub esp, localsize
875    pushad
876
877    mov     esi,[ebp+inbuffer]
878    mov     edi,[ebp+outbuffer]
879    mov     edx,[ebp+Yres]
880    mov     [ebp-linesleft],edx
881    mov     ebx,[ebp+Xres]
882    shl     ebx,1
883    mov     dword[ebp-prevline],0
884    mov     eax, [ebp+offset]
885    add     eax, ebx
886    mov     dword[ebp-nextline],eax
887.loopy
888    mov     ecx,[ebp+Xres]
889    sub     ecx,2                 ; x={Xres-2, Xres-1} are special cases.
890    mov     dword[ebp-xcounter],ecx
891    ; x=0 - special case
892    mov     ebx,[ebp-prevline]
893    movq    mm5,[esi+ebx]
894    movq    mm6,[esi]
895    mov     ebx,[ebp-nextline]
896    movq    mm7,[esi+ebx]
897    movd    eax,mm5
898    movzx   edx,ax
899    mov     [ebp-w1],edx
900    mov     [ebp-w2],edx
901    shr     eax,16
902    mov     [ebp-w3],eax
903    movd    eax,mm6
904    movzx   edx,ax
905    mov     [ebp-w4],edx
906    mov     [ebp-w5],edx
907    shr     eax,16
908    mov     [ebp-w6],eax
909    movd    eax,mm7
910    movzx   edx,ax
911    mov     [ebp-w7],edx
912    mov     [ebp-w8],edx
913    shr     eax,16
914    mov     [ebp-w9],eax
915    jmp     .flags
916.loopx
917    mov     ebx,[ebp-prevline]
918    movq    mm5,[esi+ebx-2]
919    movq    mm6,[esi-2]
920    mov     ebx,[ebp-nextline]
921    movq    mm7,[esi+ebx-2]
922    movd    eax,mm5
923    movzx   edx,ax
924    mov     [ebp-w1],edx
925    shr     eax,16
926    mov     [ebp-w2],eax
927    psrlq   mm5,32
928    movd    eax,mm5
929    movzx   edx,ax
930    mov     [ebp-w3],edx
931    movd    eax,mm6
932    movzx   edx,ax
933    mov     [ebp-w4],edx
934    shr     eax,16
935    mov     [ebp-w5],eax
936    psrlq   mm6,32
937    movd    eax,mm6
938    movzx   edx,ax
939    mov     [ebp-w6],edx
940    movd    eax,mm7
941    movzx   edx,ax
942    mov     [ebp-w7],edx
943    shr     eax,16
944    mov     [ebp-w8],eax
945    psrlq   mm7,32
946    movd    eax,mm7
947    movzx   edx,ax
948    mov     [ebp-w9],edx
949.flags
950    mov     ebx,RGBtoYUV
951    mov     eax,[ebp-w5]
952    xor     ecx,ecx
953    movd    mm5,[ebx+eax*4]
954    mov     dword[ebp-cross],0
955
956    mov     edx,[ebp-w2]
957    cmp     eax,edx
958    je      .noflag2
959    or      dword[ebp-cross],1
960    movq    mm1,mm5
961    movd    mm2,[ebx+edx*4]
962    psubusb mm1,mm2
963    psubusb mm2,mm5
964    por     mm1,mm2
965    psubusb mm1,[threshold]
966    movd    edx,mm1
967    test    edx,edx
968    jz      .noflag2
969    or      ecx,2
970.noflag2
971    mov     edx,[ebp-w4]
972    cmp     eax,edx
973    je      .noflag4
974    or      dword[ebp-cross],2
975    movq    mm1,mm5
976    movd    mm2,[ebx+edx*4]
977    psubusb mm1,mm2
978    psubusb mm2,mm5
979    por     mm1,mm2
980    psubusb mm1,[threshold]
981    movd    edx,mm1
982    test    edx,edx
983    jz      .noflag4
984    or      ecx,8
985.noflag4
986    mov     edx,[ebp-w6]
987    cmp     eax,edx
988    je      .noflag6
989    or      dword[ebp-cross],4
990    movq    mm1,mm5
991    movd    mm2,[ebx+edx*4]
992    psubusb mm1,mm2
993    psubusb mm2,mm5
994    por     mm1,mm2
995    psubusb mm1,[threshold]
996    movd    edx,mm1
997    test    edx,edx
998    jz      .noflag6
999    or      ecx,16
1000.noflag6
1001    mov     edx,[ebp-w8]
1002    cmp     eax,edx
1003    je      .noflag8
1004    or      dword[ebp-cross],8
1005    movq    mm1,mm5
1006    movd    mm2,[ebx+edx*4]
1007    psubusb mm1,mm2
1008    psubusb mm2,mm5
1009    por     mm1,mm2
1010    psubusb mm1,[threshold]
1011    movd    edx,mm1
1012    test    edx,edx
1013    jz      .noflag8
1014    or      ecx,64
1015.noflag8
1016    cmp     dword[ebp-cross],0
1017    jnz     .testflag1
1018    mov     ebx,[ebp+pitch]
1019    mov     edx,eax
1020    shl     eax,16
1021    or      eax,edx
1022    AUXADDRESS
1023    mov     [edi],eax
1024    mov     [edi+4],eax
1025    mov     [edi+ebx],eax
1026    mov     [edi+ebx+4],eax
1027    mov     [ecx],eax
1028    mov     [ecx+4],eax
1029    mov     [ecx+ebx],eax
1030    mov     [ecx+ebx+4],eax
1031    jmp     .loopx_end
1032.testflag1
1033    mov     edx,[ebp-w1]
1034    cmp     eax,edx
1035    je      .noflag1
1036    movq    mm1,mm5
1037    movd    mm2,[ebx+edx*4]
1038    psubusb mm1,mm2
1039    psubusb mm2,mm5
1040    por     mm1,mm2
1041    psubusb mm1,[threshold]
1042    movd    edx,mm1
1043    test    edx,edx
1044    jz      .noflag1
1045    or      ecx,1
1046.noflag1
1047    mov     edx,[ebp-w3]
1048    cmp     eax,edx
1049    je      .noflag3
1050    movq    mm1,mm5
1051    movd    mm2,[ebx+edx*4]
1052    psubusb mm1,mm2
1053    psubusb mm2,mm5
1054    por     mm1,mm2
1055    psubusb mm1,[threshold]
1056    movd    edx,mm1
1057    test    edx,edx
1058    jz      .noflag3
1059    or      ecx,4
1060.noflag3
1061    mov     edx,[ebp-w7]
1062    cmp     eax,edx
1063    je      .noflag7
1064    movq    mm1,mm5
1065    movd    mm2,[ebx+edx*4]
1066    psubusb mm1,mm2
1067    psubusb mm2,mm5
1068    por     mm1,mm2
1069    psubusb mm1,[threshold]
1070    movd    edx,mm1
1071    test    edx,edx
1072    jz      .noflag7
1073    or      ecx,32
1074.noflag7
1075    mov     edx,[ebp-w9]
1076    cmp     eax,edx
1077    je      .noflag9
1078    movq    mm1,mm5
1079    movd    mm2,[ebx+edx*4]
1080    psubusb mm1,mm2
1081    psubusb mm2,mm5
1082    por     mm1,mm2
1083    psubusb mm1,[threshold]
1084    movd    edx,mm1
1085    test    edx,edx
1086    jz      .noflag9
1087    or      ecx,128
1088.noflag9
1089    mov  ebx,[ebp+pitch]
1090    jmp  [FuncTable+ecx*4]
1091
1092..@flag0
1093..@flag1
1094..@flag4
1095..@flag32
1096..@flag128
1097..@flag5
1098..@flag132
1099..@flag160
1100..@flag33
1101..@flag129
1102..@flag36
1103..@flag133
1104..@flag164
1105..@flag161
1106..@flag37
1107..@flag165
1108    AUXADDRESS
1109    PIXEL00_20
1110    PIXEL01_60
1111    PIXEL02_60
1112    PIXEL03_20
1113    PIXEL10_60
1114    PIXEL11_70
1115    PIXEL12_70
1116    PIXEL13_60
1117    PIXEL20_60
1118    PIXEL21_70
1119    PIXEL22_70
1120    PIXEL23_60
1121    PIXEL30_20
1122    PIXEL31_60
1123    PIXEL32_60
1124    PIXEL33_20
1125    jmp .loopx_end
1126..@flag2
1127..@flag34
1128..@flag130
1129..@flag162
1130    AUXADDRESS
1131    PIXEL00_80
1132    PIXEL01_10
1133    PIXEL02_10
1134    PIXEL03_80
1135    PIXEL10_61
1136    PIXEL11_30
1137    PIXEL12_30
1138    PIXEL13_61
1139    PIXEL20_60
1140    PIXEL21_70
1141    PIXEL22_70
1142    PIXEL23_60
1143    PIXEL30_20
1144    PIXEL31_60
1145    PIXEL32_60
1146    PIXEL33_20
1147    jmp .loopx_end
1148..@flag16
1149..@flag17
1150..@flag48
1151..@flag49
1152    AUXADDRESS
1153    PIXEL00_20
1154    PIXEL01_60
1155    PIXEL02_61
1156    PIXEL03_80
1157    PIXEL10_60
1158    PIXEL11_70
1159    PIXEL12_30
1160    PIXEL13_10
1161    PIXEL20_60
1162    PIXEL21_70
1163    PIXEL22_30
1164    PIXEL23_10
1165    PIXEL30_20
1166    PIXEL31_60
1167    PIXEL32_61
1168    PIXEL33_80
1169    jmp .loopx_end
1170..@flag64
1171..@flag65
1172..@flag68
1173..@flag69
1174    AUXADDRESS
1175    PIXEL00_20
1176    PIXEL01_60
1177    PIXEL02_60
1178    PIXEL03_20
1179    PIXEL10_60
1180    PIXEL11_70
1181    PIXEL12_70
1182    PIXEL13_60
1183    PIXEL20_61
1184    PIXEL21_30
1185    PIXEL22_30
1186    PIXEL23_61
1187    PIXEL30_80
1188    PIXEL31_10
1189    PIXEL32_10
1190    PIXEL33_80
1191    jmp .loopx_end
1192..@flag8
1193..@flag12
1194..@flag136
1195..@flag140
1196    AUXADDRESS
1197    PIXEL00_80
1198    PIXEL01_61
1199    PIXEL02_60
1200    PIXEL03_20
1201    PIXEL10_10
1202    PIXEL11_30
1203    PIXEL12_70
1204    PIXEL13_60
1205    PIXEL20_10
1206    PIXEL21_30
1207    PIXEL22_70
1208    PIXEL23_60
1209    PIXEL30_80
1210    PIXEL31_61
1211    PIXEL32_60
1212    PIXEL33_20
1213    jmp .loopx_end
1214..@flag3
1215..@flag35
1216..@flag131
1217..@flag163
1218    AUXADDRESS
1219    PIXEL00_81
1220    PIXEL01_31
1221    PIXEL02_10
1222    PIXEL03_80
1223    PIXEL10_81
1224    PIXEL11_31
1225    PIXEL12_30
1226    PIXEL13_61
1227    PIXEL20_60
1228    PIXEL21_70
1229    PIXEL22_70
1230    PIXEL23_60
1231    PIXEL30_20
1232    PIXEL31_60
1233    PIXEL32_60
1234    PIXEL33_20
1235    jmp .loopx_end
1236..@flag6
1237..@flag38
1238..@flag134
1239..@flag166
1240    AUXADDRESS
1241    PIXEL00_80
1242    PIXEL01_10
1243    PIXEL02_32
1244    PIXEL03_82
1245    PIXEL10_61
1246    PIXEL11_30
1247    PIXEL12_32
1248    PIXEL13_82
1249    PIXEL20_60
1250    PIXEL21_70
1251    PIXEL22_70
1252    PIXEL23_60
1253    PIXEL30_20
1254    PIXEL31_60
1255    PIXEL32_60
1256    PIXEL33_20
1257    jmp .loopx_end
1258..@flag20
1259..@flag21
1260..@flag52
1261..@flag53
1262    AUXADDRESS
1263    PIXEL00_20
1264    PIXEL01_60
1265    PIXEL02_81
1266    PIXEL03_81
1267    PIXEL10_60
1268    PIXEL11_70
1269    PIXEL12_31
1270    PIXEL13_31
1271    PIXEL20_60
1272    PIXEL21_70
1273    PIXEL22_30
1274    PIXEL23_10
1275    PIXEL30_20
1276    PIXEL31_60
1277    PIXEL32_61
1278    PIXEL33_80
1279    jmp .loopx_end
1280..@flag144
1281..@flag145
1282..@flag176
1283..@flag177
1284    AUXADDRESS
1285    PIXEL00_20
1286    PIXEL01_60
1287    PIXEL02_61
1288    PIXEL03_80
1289    PIXEL10_60
1290    PIXEL11_70
1291    PIXEL12_30
1292    PIXEL13_10
1293    PIXEL20_60
1294    PIXEL21_70
1295    PIXEL22_32
1296    PIXEL23_32
1297    PIXEL30_20
1298    PIXEL31_60
1299    PIXEL32_82
1300    PIXEL33_82
1301    jmp .loopx_end
1302..@flag192
1303..@flag193
1304..@flag196
1305..@flag197
1306    AUXADDRESS
1307    PIXEL00_20
1308    PIXEL01_60
1309    PIXEL02_60
1310    PIXEL03_20
1311    PIXEL10_60
1312    PIXEL11_70
1313    PIXEL12_70
1314    PIXEL13_60
1315    PIXEL20_61
1316    PIXEL21_30
1317    PIXEL22_31
1318    PIXEL23_81
1319    PIXEL30_80
1320    PIXEL31_10
1321    PIXEL32_31
1322    PIXEL33_81
1323    jmp .loopx_end
1324..@flag96
1325..@flag97
1326..@flag100
1327..@flag101
1328    AUXADDRESS
1329    PIXEL00_20
1330    PIXEL01_60
1331    PIXEL02_60
1332    PIXEL03_20
1333    PIXEL10_60
1334    PIXEL11_70
1335    PIXEL12_70
1336    PIXEL13_60
1337    PIXEL20_82
1338    PIXEL21_32
1339    PIXEL22_30
1340    PIXEL23_61
1341    PIXEL30_82
1342    PIXEL31_32
1343    PIXEL32_10
1344    PIXEL33_80
1345    jmp .loopx_end
1346..@flag40
1347..@flag44
1348..@flag168
1349..@flag172
1350    AUXADDRESS
1351    PIXEL00_80
1352    PIXEL01_61
1353    PIXEL02_60
1354    PIXEL03_20
1355    PIXEL10_10
1356    PIXEL11_30
1357    PIXEL12_70
1358    PIXEL13_60
1359    PIXEL20_31
1360    PIXEL21_31
1361    PIXEL22_70
1362    PIXEL23_60
1363    PIXEL30_81
1364    PIXEL31_81
1365    PIXEL32_60
1366    PIXEL33_20
1367    jmp .loopx_end
1368..@flag9
1369..@flag13
1370..@flag137
1371..@flag141
1372    AUXADDRESS
1373    PIXEL00_82
1374    PIXEL01_82
1375    PIXEL02_60
1376    PIXEL03_20
1377    PIXEL10_32
1378    PIXEL11_32
1379    PIXEL12_70
1380    PIXEL13_60
1381    PIXEL20_10
1382    PIXEL21_30
1383    PIXEL22_70
1384    PIXEL23_60
1385    PIXEL30_80
1386    PIXEL31_61
1387    PIXEL32_60
1388    PIXEL33_20
1389    jmp .loopx_end
1390..@flag18
1391..@flag50
1392    AUXADDRESS
1393    PIXEL00_80
1394    PIXEL01_10
1395    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_50,PIXEL03_50,PIXEL12_0,PIXEL13_50
1396    PIXEL10_61
1397    PIXEL11_30
1398    PIXEL20_60
1399    PIXEL21_70
1400    PIXEL22_30
1401    PIXEL23_10
1402    PIXEL30_20
1403    PIXEL31_60
1404    PIXEL32_61
1405    PIXEL33_80
1406    jmp .loopx_end
1407..@flag80
1408..@flag81
1409    AUXADDRESS
1410    PIXEL00_20
1411    PIXEL01_60
1412    PIXEL02_61
1413    PIXEL03_80
1414    PIXEL10_60
1415    PIXEL11_70
1416    PIXEL12_30
1417    PIXEL13_10
1418    PIXEL20_61
1419    PIXEL21_30
1420    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
1421    PIXEL30_80
1422    PIXEL31_10
1423    jmp .loopx_end
1424..@flag72
1425..@flag76
1426    AUXADDRESS
1427    PIXEL00_80
1428    PIXEL01_61
1429    PIXEL02_60
1430    PIXEL03_20
1431    PIXEL10_10
1432    PIXEL11_30
1433    PIXEL12_70
1434    PIXEL13_60
1435    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_50,PIXEL21_0,PIXEL30_50,PIXEL31_50
1436    PIXEL22_30
1437    PIXEL23_61
1438    PIXEL32_10
1439    PIXEL33_80
1440    jmp .loopx_end
1441..@flag10
1442..@flag138
1443    AUXADDRESS
1444    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_50,PIXEL01_50,PIXEL10_50,PIXEL11_0
1445    PIXEL02_10
1446    PIXEL03_80
1447    PIXEL12_30
1448    PIXEL13_61
1449    PIXEL20_10
1450    PIXEL21_30
1451    PIXEL22_70
1452    PIXEL23_60
1453    PIXEL30_80
1454    PIXEL31_61
1455    PIXEL32_60
1456    PIXEL33_20
1457    jmp .loopx_end
1458..@flag66
1459    AUXADDRESS
1460    PIXEL00_80
1461    PIXEL01_10
1462    PIXEL02_10
1463    PIXEL03_80
1464    PIXEL10_61
1465    PIXEL11_30
1466    PIXEL12_30
1467    PIXEL13_61
1468    PIXEL20_61
1469    PIXEL21_30
1470    PIXEL22_30
1471    PIXEL23_61
1472    PIXEL30_80
1473    PIXEL31_10
1474    PIXEL32_10
1475    PIXEL33_80
1476    jmp .loopx_end
1477..@flag24
1478    AUXADDRESS
1479    PIXEL00_80
1480    PIXEL01_61
1481    PIXEL02_61
1482    PIXEL03_80
1483    PIXEL10_10
1484    PIXEL11_30
1485    PIXEL12_30
1486    PIXEL13_10
1487    PIXEL20_10
1488    PIXEL21_30
1489    PIXEL22_30
1490    PIXEL23_10
1491    PIXEL30_80
1492    PIXEL31_61
1493    PIXEL32_61
1494    PIXEL33_80
1495    jmp .loopx_end
1496..@flag7
1497..@flag39
1498..@flag135
1499    AUXADDRESS
1500    PIXEL00_81
1501    PIXEL01_31
1502    PIXEL02_32
1503    PIXEL03_82
1504    PIXEL10_81
1505    PIXEL11_31
1506    PIXEL12_32
1507    PIXEL13_82
1508    PIXEL20_60
1509    PIXEL21_70
1510    PIXEL22_70
1511    PIXEL23_60
1512    PIXEL30_20
1513    PIXEL31_60
1514    PIXEL32_60
1515    PIXEL33_20
1516    jmp .loopx_end
1517..@flag148
1518..@flag149
1519..@flag180
1520    AUXADDRESS
1521    PIXEL00_20
1522    PIXEL01_60
1523    PIXEL02_81
1524    PIXEL03_81
1525    PIXEL10_60
1526    PIXEL11_70
1527    PIXEL12_31
1528    PIXEL13_31
1529    PIXEL20_60
1530    PIXEL21_70
1531    PIXEL22_32
1532    PIXEL23_32
1533    PIXEL30_20
1534    PIXEL31_60
1535    PIXEL32_82
1536    PIXEL33_82
1537    jmp .loopx_end
1538..@flag224
1539..@flag228
1540..@flag225
1541    AUXADDRESS
1542    PIXEL00_20
1543    PIXEL01_60
1544    PIXEL02_60
1545    PIXEL03_20
1546    PIXEL10_60
1547    PIXEL11_70
1548    PIXEL12_70
1549    PIXEL13_60
1550    PIXEL20_82
1551    PIXEL21_32
1552    PIXEL22_31
1553    PIXEL23_81
1554    PIXEL30_82
1555    PIXEL31_32
1556    PIXEL32_31
1557    PIXEL33_81
1558    jmp .loopx_end
1559..@flag41
1560..@flag169
1561..@flag45
1562    AUXADDRESS
1563    PIXEL00_82
1564    PIXEL01_82
1565    PIXEL02_60
1566    PIXEL03_20
1567    PIXEL10_32
1568    PIXEL11_32
1569    PIXEL12_70
1570    PIXEL13_60
1571    PIXEL20_31
1572    PIXEL21_31
1573    PIXEL22_70
1574    PIXEL23_60
1575    PIXEL30_81
1576    PIXEL31_81
1577    PIXEL32_60
1578    PIXEL33_20
1579    jmp .loopx_end
1580..@flag22
1581..@flag54
1582    AUXADDRESS
1583    PIXEL00_80
1584    PIXEL01_10
1585    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
1586    PIXEL10_61
1587    PIXEL11_30
1588    PIXEL12_0
1589    PIXEL20_60
1590    PIXEL21_70
1591    PIXEL22_30
1592    PIXEL23_10
1593    PIXEL30_20
1594    PIXEL31_60
1595    PIXEL32_61
1596    PIXEL33_80
1597    jmp .loopx_end
1598..@flag208
1599..@flag209
1600    AUXADDRESS
1601    PIXEL00_20
1602    PIXEL01_60
1603    PIXEL02_61
1604    PIXEL03_80
1605    PIXEL10_60
1606    PIXEL11_70
1607    PIXEL12_30
1608    PIXEL13_10
1609    PIXEL20_61
1610    PIXEL21_30
1611    PIXEL22_0
1612    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
1613    PIXEL30_80
1614    PIXEL31_10
1615    jmp .loopx_end
1616..@flag104
1617..@flag108
1618    AUXADDRESS
1619    PIXEL00_80
1620    PIXEL01_61
1621    PIXEL02_60
1622    PIXEL03_20
1623    PIXEL10_10
1624    PIXEL11_30
1625    PIXEL12_70
1626    PIXEL13_60
1627    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
1628    PIXEL21_0
1629    PIXEL22_30
1630    PIXEL23_61
1631    PIXEL32_10
1632    PIXEL33_80
1633    jmp .loopx_end
1634..@flag11
1635..@flag139
1636    AUXADDRESS
1637    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
1638    PIXEL02_10
1639    PIXEL03_80
1640    PIXEL11_0
1641    PIXEL12_30
1642    PIXEL13_61
1643    PIXEL20_10
1644    PIXEL21_30
1645    PIXEL22_70
1646    PIXEL23_60
1647    PIXEL30_80
1648    PIXEL31_61
1649    PIXEL32_60
1650    PIXEL33_20
1651    jmp .loopx_end
1652..@flag19
1653..@flag51
1654    AUXADDRESS
1655    DiffOrNot ebp-w2,ebp-w6,PIXEL00_81,PIXEL01_31,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL00_12,PIXEL01_14,PIXEL02_83,PIXEL03_50,PIXEL12_70,PIXEL13_21
1656    PIXEL10_81
1657    PIXEL11_31
1658    PIXEL20_60
1659    PIXEL21_70
1660    PIXEL22_30
1661    PIXEL23_10
1662    PIXEL30_20
1663    PIXEL31_60
1664    PIXEL32_61
1665    PIXEL33_80
1666    jmp .loopx_end
1667..@flag146
1668..@flag178
1669    AUXADDRESS
1670    PIXEL00_80
1671    PIXEL01_10
1672    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL23_32,PIXEL33_82,PIXEL02_21,PIXEL03_50,PIXEL12_70,PIXEL13_83,PIXEL23_13,PIXEL33_11
1673    PIXEL10_61
1674    PIXEL11_30
1675    PIXEL20_60
1676    PIXEL21_70
1677    PIXEL22_32
1678    PIXEL30_20
1679    PIXEL31_60
1680    PIXEL32_82
1681    jmp .loopx_end
1682..@flag84
1683..@flag85
1684    AUXADDRESS
1685    PIXEL00_20
1686    PIXEL01_60
1687    PIXEL02_81
1688    DiffOrNot ebp-w6,ebp-w8,PIXEL03_81,PIXEL13_31,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL03_12,PIXEL13_14,PIXEL22_70,PIXEL23_83,PIXEL32_21,PIXEL33_50
1689    PIXEL10_60
1690    PIXEL11_70
1691    PIXEL12_31
1692    PIXEL20_61
1693    PIXEL21_30
1694    PIXEL30_80
1695    PIXEL31_10
1696    jmp .loopx_end
1697..@flag112
1698..@flag113
1699    AUXADDRESS
1700    PIXEL00_20
1701    PIXEL01_60
1702    PIXEL02_61
1703    PIXEL03_80
1704    PIXEL10_60
1705    PIXEL11_70
1706    PIXEL12_30
1707    PIXEL13_10
1708    PIXEL20_82
1709    PIXEL21_32
1710    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL30_82,PIXEL31_32,PIXEL32_10,PIXEL33_80,PIXEL22_70,PIXEL23_21,PIXEL30_11,PIXEL31_13,PIXEL32_83,PIXEL33_50
1711    jmp .loopx_end
1712..@flag200
1713..@flag204
1714    AUXADDRESS
1715    PIXEL00_80
1716    PIXEL01_61
1717    PIXEL02_60
1718    PIXEL03_20
1719    PIXEL10_10
1720    PIXEL11_30
1721    PIXEL12_70
1722    PIXEL13_60
1723    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL32_31,PIXEL33_81,PIXEL20_21,PIXEL21_70,PIXEL30_50,PIXEL31_83,PIXEL32_14,PIXEL33_12
1724    PIXEL22_31
1725    PIXEL23_81
1726    jmp .loopx_end
1727..@flag73
1728..@flag77
1729    AUXADDRESS
1730    DiffOrNot ebp-w8,ebp-w4,PIXEL00_82,PIXEL10_32,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL00_11,PIXEL10_13,PIXEL20_83,PIXEL21_70,PIXEL30_50,PIXEL31_21
1731    PIXEL01_82
1732    PIXEL02_60
1733    PIXEL03_20
1734    PIXEL11_32
1735    PIXEL12_70
1736    PIXEL13_60
1737    PIXEL22_30
1738    PIXEL23_61
1739    PIXEL32_10
1740    PIXEL33_80
1741    jmp .loopx_end
1742..@flag42
1743..@flag170
1744    AUXADDRESS
1745    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL20_31,PIXEL30_81,PIXEL00_50,PIXEL01_21,PIXEL10_83,PIXEL11_70,PIXEL20_14,PIXEL30_12
1746    PIXEL02_10
1747    PIXEL03_80
1748    PIXEL12_30
1749    PIXEL13_61
1750    PIXEL21_31
1751    PIXEL22_70
1752    PIXEL23_60
1753    PIXEL31_81
1754    PIXEL32_60
1755    PIXEL33_20
1756    jmp .loopx_end
1757..@flag14
1758..@flag142
1759    AUXADDRESS
1760    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL02_32,PIXEL03_82,PIXEL10_10,PIXEL11_30,PIXEL00_50,PIXEL01_83,PIXEL02_13,PIXEL03_11,PIXEL10_21,PIXEL11_70
1761    PIXEL12_32
1762    PIXEL13_82
1763    PIXEL20_10
1764    PIXEL21_30
1765    PIXEL22_70
1766    PIXEL23_60
1767    PIXEL30_80
1768    PIXEL31_61
1769    PIXEL32_60
1770    PIXEL33_20
1771    jmp .loopx_end
1772..@flag67
1773    AUXADDRESS
1774    PIXEL00_81
1775    PIXEL01_31
1776    PIXEL02_10
1777    PIXEL03_80
1778    PIXEL10_81
1779    PIXEL11_31
1780    PIXEL12_30
1781    PIXEL13_61
1782    PIXEL20_61
1783    PIXEL21_30
1784    PIXEL22_30
1785    PIXEL23_61
1786    PIXEL30_80
1787    PIXEL31_10
1788    PIXEL32_10
1789    PIXEL33_80
1790    jmp .loopx_end
1791..@flag70
1792    AUXADDRESS
1793    PIXEL00_80
1794    PIXEL01_10
1795    PIXEL02_32
1796    PIXEL03_82
1797    PIXEL10_61
1798    PIXEL11_30
1799    PIXEL12_32
1800    PIXEL13_82
1801    PIXEL20_61
1802    PIXEL21_30
1803    PIXEL22_30
1804    PIXEL23_61
1805    PIXEL30_80
1806    PIXEL31_10
1807    PIXEL32_10
1808    PIXEL33_80
1809    jmp .loopx_end
1810..@flag28
1811    AUXADDRESS
1812    PIXEL00_80
1813    PIXEL01_61
1814    PIXEL02_81
1815    PIXEL03_81
1816    PIXEL10_10
1817    PIXEL11_30
1818    PIXEL12_31
1819    PIXEL13_31
1820    PIXEL20_10
1821    PIXEL21_30
1822    PIXEL22_30
1823    PIXEL23_10
1824    PIXEL30_80
1825    PIXEL31_61
1826    PIXEL32_61
1827    PIXEL33_80
1828    jmp .loopx_end
1829..@flag152
1830    AUXADDRESS
1831    PIXEL00_80
1832    PIXEL01_61
1833    PIXEL02_61
1834    PIXEL03_80
1835    PIXEL10_10
1836    PIXEL11_30
1837    PIXEL12_30
1838    PIXEL13_10
1839    PIXEL20_10
1840    PIXEL21_30
1841    PIXEL22_32
1842    PIXEL23_32
1843    PIXEL30_80
1844    PIXEL31_61
1845    PIXEL32_82
1846    PIXEL33_82
1847    jmp .loopx_end
1848..@flag194
1849    AUXADDRESS
1850    PIXEL00_80
1851    PIXEL01_10
1852    PIXEL02_10
1853    PIXEL03_80
1854    PIXEL10_61
1855    PIXEL11_30
1856    PIXEL12_30
1857    PIXEL13_61
1858    PIXEL20_61
1859    PIXEL21_30
1860    PIXEL22_31
1861    PIXEL23_81
1862    PIXEL30_80
1863    PIXEL31_10
1864    PIXEL32_31
1865    PIXEL33_81
1866    jmp .loopx_end
1867..@flag98
1868    AUXADDRESS
1869    PIXEL00_80
1870    PIXEL01_10
1871    PIXEL02_10
1872    PIXEL03_80
1873    PIXEL10_61
1874    PIXEL11_30
1875    PIXEL12_30
1876    PIXEL13_61
1877    PIXEL20_82
1878    PIXEL21_32
1879    PIXEL22_30
1880    PIXEL23_61
1881    PIXEL30_82
1882    PIXEL31_32
1883    PIXEL32_10
1884    PIXEL33_80
1885    jmp .loopx_end
1886..@flag56
1887    AUXADDRESS
1888    PIXEL00_80
1889    PIXEL01_61
1890    PIXEL02_61
1891    PIXEL03_80
1892    PIXEL10_10
1893    PIXEL11_30
1894    PIXEL12_30
1895    PIXEL13_10
1896    PIXEL20_31
1897    PIXEL21_31
1898    PIXEL22_30
1899    PIXEL23_10
1900    PIXEL30_81
1901    PIXEL31_81
1902    PIXEL32_61
1903    PIXEL33_80
1904    jmp .loopx_end
1905..@flag25
1906    AUXADDRESS
1907    PIXEL00_82
1908    PIXEL01_82
1909    PIXEL02_61
1910    PIXEL03_80
1911    PIXEL10_32
1912    PIXEL11_32
1913    PIXEL12_30
1914    PIXEL13_10
1915    PIXEL20_10
1916    PIXEL21_30
1917    PIXEL22_30
1918    PIXEL23_10
1919    PIXEL30_80
1920    PIXEL31_61
1921    PIXEL32_61
1922    PIXEL33_80
1923    jmp .loopx_end
1924..@flag26
1925..@flag31
1926    AUXADDRESS
1927    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
1928    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
1929    PIXEL11_0
1930    PIXEL12_0
1931    PIXEL20_10
1932    PIXEL21_30
1933    PIXEL22_30
1934    PIXEL23_10
1935    PIXEL30_80
1936    PIXEL31_61
1937    PIXEL32_61
1938    PIXEL33_80
1939    jmp .loopx_end
1940..@flag82
1941..@flag214
1942    AUXADDRESS
1943    PIXEL00_80
1944    PIXEL01_10
1945    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
1946    PIXEL10_61
1947    PIXEL11_30
1948    PIXEL12_0
1949    PIXEL20_61
1950    PIXEL21_30
1951    PIXEL22_0
1952    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
1953    PIXEL30_80
1954    PIXEL31_10
1955    jmp .loopx_end
1956..@flag88
1957..@flag248
1958    AUXADDRESS
1959    PIXEL00_80
1960    PIXEL01_61
1961    PIXEL02_61
1962    PIXEL03_80
1963    PIXEL10_10
1964    PIXEL11_30
1965    PIXEL12_30
1966    PIXEL13_10
1967    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
1968    PIXEL21_0
1969    PIXEL22_0
1970    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
1971    jmp .loopx_end
1972..@flag74
1973..@flag107
1974    AUXADDRESS
1975    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
1976    PIXEL02_10
1977    PIXEL03_80
1978    PIXEL11_0
1979    PIXEL12_30
1980    PIXEL13_61
1981    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
1982    PIXEL21_0
1983    PIXEL22_30
1984    PIXEL23_61
1985    PIXEL32_10
1986    PIXEL33_80
1987    jmp .loopx_end
1988..@flag27
1989    AUXADDRESS
1990    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
1991    PIXEL02_10
1992    PIXEL03_80
1993    PIXEL11_0
1994    PIXEL12_30
1995    PIXEL13_10
1996    PIXEL20_10
1997    PIXEL21_30
1998    PIXEL22_30
1999    PIXEL23_10
2000    PIXEL30_80
2001    PIXEL31_61
2002    PIXEL32_61
2003    PIXEL33_80
2004    jmp .loopx_end
2005..@flag86
2006    AUXADDRESS
2007    PIXEL00_80
2008    PIXEL01_10
2009    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
2010    PIXEL10_61
2011    PIXEL11_30
2012    PIXEL12_0
2013    PIXEL20_61
2014    PIXEL21_30
2015    PIXEL22_30
2016    PIXEL23_10
2017    PIXEL30_80
2018    PIXEL31_10
2019    PIXEL32_10
2020    PIXEL33_80
2021    jmp .loopx_end
2022..@flag216
2023    AUXADDRESS
2024    PIXEL00_80
2025    PIXEL01_61
2026    PIXEL02_61
2027    PIXEL03_80
2028    PIXEL10_10
2029    PIXEL11_30
2030    PIXEL12_30
2031    PIXEL13_10
2032    PIXEL20_10
2033    PIXEL21_30
2034    PIXEL22_0
2035    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
2036    PIXEL30_80
2037    PIXEL31_10
2038    jmp .loopx_end
2039..@flag106
2040    AUXADDRESS
2041    PIXEL00_80
2042    PIXEL01_10
2043    PIXEL02_10
2044    PIXEL03_80
2045    PIXEL10_10
2046    PIXEL11_30
2047    PIXEL12_30
2048    PIXEL13_61
2049    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
2050    PIXEL21_0
2051    PIXEL22_30
2052    PIXEL23_61
2053    PIXEL32_10
2054    PIXEL33_80
2055    jmp .loopx_end
2056..@flag30
2057    AUXADDRESS
2058    PIXEL00_80
2059    PIXEL01_10
2060    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
2061    PIXEL10_10
2062    PIXEL11_30
2063    PIXEL12_0
2064    PIXEL20_10
2065    PIXEL21_30
2066    PIXEL22_30
2067    PIXEL23_10
2068    PIXEL30_80
2069    PIXEL31_61
2070    PIXEL32_61
2071    PIXEL33_80
2072    jmp .loopx_end
2073..@flag210
2074    AUXADDRESS
2075    PIXEL00_80
2076    PIXEL01_10
2077    PIXEL02_10
2078    PIXEL03_80
2079    PIXEL10_61
2080    PIXEL11_30
2081    PIXEL12_30
2082    PIXEL13_10
2083    PIXEL20_61
2084    PIXEL21_30
2085    PIXEL22_0
2086    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
2087    PIXEL30_80
2088    PIXEL31_10
2089    jmp .loopx_end
2090..@flag120
2091    AUXADDRESS
2092    PIXEL00_80
2093    PIXEL01_61
2094    PIXEL02_61
2095    PIXEL03_80
2096    PIXEL10_10
2097    PIXEL11_30
2098    PIXEL12_30
2099    PIXEL13_10
2100    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
2101    PIXEL21_0
2102    PIXEL22_30
2103    PIXEL23_10
2104    PIXEL32_10
2105    PIXEL33_80
2106    jmp .loopx_end
2107..@flag75
2108    AUXADDRESS
2109    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
2110    PIXEL02_10
2111    PIXEL03_80
2112    PIXEL11_0
2113    PIXEL12_30
2114    PIXEL13_61
2115    PIXEL20_10
2116    PIXEL21_30
2117    PIXEL22_30
2118    PIXEL23_61
2119    PIXEL30_80
2120    PIXEL31_10
2121    PIXEL32_10
2122    PIXEL33_80
2123    jmp .loopx_end
2124..@flag29
2125    AUXADDRESS
2126    PIXEL00_82
2127    PIXEL01_82
2128    PIXEL02_81
2129    PIXEL03_81
2130    PIXEL10_32
2131    PIXEL11_32
2132    PIXEL12_31
2133    PIXEL13_31
2134    PIXEL20_10
2135    PIXEL21_30
2136    PIXEL22_30
2137    PIXEL23_10
2138    PIXEL30_80
2139    PIXEL31_61
2140    PIXEL32_61
2141    PIXEL33_80
2142    jmp .loopx_end
2143..@flag198
2144    AUXADDRESS
2145    PIXEL00_80
2146    PIXEL01_10
2147    PIXEL02_32
2148    PIXEL03_82
2149    PIXEL10_61
2150    PIXEL11_30
2151    PIXEL12_32
2152    PIXEL13_82
2153    PIXEL20_61
2154    PIXEL21_30
2155    PIXEL22_31
2156    PIXEL23_81
2157    PIXEL30_80
2158    PIXEL31_10
2159    PIXEL32_31
2160    PIXEL33_81
2161    jmp .loopx_end
2162..@flag184
2163    AUXADDRESS
2164    PIXEL00_80
2165    PIXEL01_61
2166    PIXEL02_61
2167    PIXEL03_80
2168    PIXEL10_10
2169    PIXEL11_30
2170    PIXEL12_30
2171    PIXEL13_10
2172    PIXEL20_31
2173    PIXEL21_31
2174    PIXEL22_32
2175    PIXEL23_32
2176    PIXEL30_81
2177    PIXEL31_81
2178    PIXEL32_82
2179    PIXEL33_82
2180    jmp .loopx_end
2181..@flag99
2182    AUXADDRESS
2183    PIXEL00_81
2184    PIXEL01_31
2185    PIXEL02_10
2186    PIXEL03_80
2187    PIXEL10_81
2188    PIXEL11_31
2189    PIXEL12_30
2190    PIXEL13_61
2191    PIXEL20_82
2192    PIXEL21_32
2193    PIXEL22_30
2194    PIXEL23_61
2195    PIXEL30_82
2196    PIXEL31_32
2197    PIXEL32_10
2198    PIXEL33_80
2199    jmp .loopx_end
2200..@flag57
2201    AUXADDRESS
2202    PIXEL00_82
2203    PIXEL01_82
2204    PIXEL02_61
2205    PIXEL03_80
2206    PIXEL10_32
2207    PIXEL11_32
2208    PIXEL12_30
2209    PIXEL13_10
2210    PIXEL20_31
2211    PIXEL21_31
2212    PIXEL22_30
2213    PIXEL23_10
2214    PIXEL30_81
2215    PIXEL31_81
2216    PIXEL32_61
2217    PIXEL33_80
2218    jmp .loopx_end
2219..@flag71
2220    AUXADDRESS
2221    PIXEL00_81
2222    PIXEL01_31
2223    PIXEL02_32
2224    PIXEL03_82
2225    PIXEL10_81
2226    PIXEL11_31
2227    PIXEL12_32
2228    PIXEL13_82
2229    PIXEL20_61
2230    PIXEL21_30
2231    PIXEL22_30
2232    PIXEL23_61
2233    PIXEL30_80
2234    PIXEL31_10
2235    PIXEL32_10
2236    PIXEL33_80
2237    jmp .loopx_end
2238..@flag156
2239    AUXADDRESS
2240    PIXEL00_80
2241    PIXEL01_61
2242    PIXEL02_81
2243    PIXEL03_81
2244    PIXEL10_10
2245    PIXEL11_30
2246    PIXEL12_31
2247    PIXEL13_31
2248    PIXEL20_10
2249    PIXEL21_30
2250    PIXEL22_32
2251    PIXEL23_32
2252    PIXEL30_80
2253    PIXEL31_61
2254    PIXEL32_82
2255    PIXEL33_82
2256    jmp .loopx_end
2257..@flag226
2258    AUXADDRESS
2259    PIXEL00_80
2260    PIXEL01_10
2261    PIXEL02_10
2262    PIXEL03_80
2263    PIXEL10_61
2264    PIXEL11_30
2265    PIXEL12_30
2266    PIXEL13_61
2267    PIXEL20_82
2268    PIXEL21_32
2269    PIXEL22_31
2270    PIXEL23_81
2271    PIXEL30_82
2272    PIXEL31_32
2273    PIXEL32_31
2274    PIXEL33_81
2275    jmp .loopx_end
2276..@flag60
2277    AUXADDRESS
2278    PIXEL00_80
2279    PIXEL01_61
2280    PIXEL02_81
2281    PIXEL03_81
2282    PIXEL10_10
2283    PIXEL11_30
2284    PIXEL12_31
2285    PIXEL13_31
2286    PIXEL20_31
2287    PIXEL21_31
2288    PIXEL22_30
2289    PIXEL23_10
2290    PIXEL30_81
2291    PIXEL31_81
2292    PIXEL32_61
2293    PIXEL33_80
2294    jmp .loopx_end
2295..@flag195
2296    AUXADDRESS
2297    PIXEL00_81
2298    PIXEL01_31
2299    PIXEL02_10
2300    PIXEL03_80
2301    PIXEL10_81
2302    PIXEL11_31
2303    PIXEL12_30
2304    PIXEL13_61
2305    PIXEL20_61
2306    PIXEL21_30
2307    PIXEL22_31
2308    PIXEL23_81
2309    PIXEL30_80
2310    PIXEL31_10
2311    PIXEL32_31
2312    PIXEL33_81
2313    jmp .loopx_end
2314..@flag102
2315    AUXADDRESS
2316    PIXEL00_80
2317    PIXEL01_10
2318    PIXEL02_32
2319    PIXEL03_82
2320    PIXEL10_61
2321    PIXEL11_30
2322    PIXEL12_32
2323    PIXEL13_82
2324    PIXEL20_82
2325    PIXEL21_32
2326    PIXEL22_30
2327    PIXEL23_61
2328    PIXEL30_82
2329    PIXEL31_32
2330    PIXEL32_10
2331    PIXEL33_80
2332    jmp .loopx_end
2333..@flag153
2334    AUXADDRESS
2335    PIXEL00_82
2336    PIXEL01_82
2337    PIXEL02_61
2338    PIXEL03_80
2339    PIXEL10_32
2340    PIXEL11_32
2341    PIXEL12_30
2342    PIXEL13_10
2343    PIXEL20_10
2344    PIXEL21_30
2345    PIXEL22_32
2346    PIXEL23_32
2347    PIXEL30_80
2348    PIXEL31_61
2349    PIXEL32_82
2350    PIXEL33_82
2351    jmp .loopx_end
2352..@flag58
2353    AUXADDRESS
2354    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
2355    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
2356    PIXEL20_31
2357    PIXEL21_31
2358    PIXEL22_30
2359    PIXEL23_10
2360    PIXEL30_81
2361    PIXEL31_81
2362    PIXEL32_61
2363    PIXEL33_80
2364    jmp .loopx_end
2365..@flag83
2366    AUXADDRESS
2367    PIXEL00_81
2368    PIXEL01_31
2369    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
2370    PIXEL10_81
2371    PIXEL11_31
2372    PIXEL20_61
2373    PIXEL21_30
2374    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
2375    PIXEL30_80
2376    PIXEL31_10
2377    jmp .loopx_end
2378..@flag92
2379    AUXADDRESS
2380    PIXEL00_80
2381    PIXEL01_61
2382    PIXEL02_81
2383    PIXEL03_81
2384    PIXEL10_10
2385    PIXEL11_30
2386    PIXEL12_31
2387    PIXEL13_31
2388    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
2389    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
2390    jmp .loopx_end
2391..@flag202
2392    AUXADDRESS
2393    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
2394    PIXEL02_10
2395    PIXEL03_80
2396    PIXEL12_30
2397    PIXEL13_61
2398    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
2399    PIXEL22_31
2400    PIXEL23_81
2401    PIXEL32_31
2402    PIXEL33_81
2403    jmp .loopx_end
2404..@flag78
2405    AUXADDRESS
2406    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
2407    PIXEL02_32
2408    PIXEL03_82
2409    PIXEL12_32
2410    PIXEL13_82
2411    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
2412    PIXEL22_30
2413    PIXEL23_61
2414    PIXEL32_10
2415    PIXEL33_80
2416    jmp .loopx_end
2417..@flag154
2418    AUXADDRESS
2419    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
2420    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
2421    PIXEL20_10
2422    PIXEL21_30
2423    PIXEL22_32
2424    PIXEL23_32
2425    PIXEL30_80
2426    PIXEL31_61
2427    PIXEL32_82
2428    PIXEL33_82
2429    jmp .loopx_end
2430..@flag114
2431    AUXADDRESS
2432    PIXEL00_80
2433    PIXEL01_10
2434    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
2435    PIXEL10_61
2436    PIXEL11_30
2437    PIXEL20_82
2438    PIXEL21_32
2439    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
2440    PIXEL30_82
2441    PIXEL31_32
2442    jmp .loopx_end
2443..@flag89
2444    AUXADDRESS
2445    PIXEL00_82
2446    PIXEL01_82
2447    PIXEL02_61
2448    PIXEL03_80
2449    PIXEL10_32
2450    PIXEL11_32
2451    PIXEL12_30
2452    PIXEL13_10
2453    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
2454    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
2455    jmp .loopx_end
2456..@flag90
2457    AUXADDRESS
2458    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
2459    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
2460    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
2461    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
2462    jmp .loopx_end
2463..@flag55
2464..@flag23
2465    AUXADDRESS
2466    DiffOrNot ebp-w2,ebp-w6,PIXEL00_81,PIXEL01_31,PIXEL02_0,PIXEL03_0,PIXEL12_0,PIXEL13_0,PIXEL00_12,PIXEL01_14,PIXEL02_83,PIXEL03_50,PIXEL12_70,PIXEL13_21
2467    PIXEL10_81
2468    PIXEL11_31
2469    PIXEL20_60
2470    PIXEL21_70
2471    PIXEL22_30
2472    PIXEL23_10
2473    PIXEL30_20
2474    PIXEL31_60
2475    PIXEL32_61
2476    PIXEL33_80
2477    jmp .loopx_end
2478..@flag182
2479..@flag150
2480    AUXADDRESS
2481    PIXEL00_80
2482    PIXEL01_10
2483    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL12_0,PIXEL13_0,PIXEL23_32,PIXEL33_82,PIXEL02_21,PIXEL03_50,PIXEL12_70,PIXEL13_83,PIXEL23_13,PIXEL33_11
2484    PIXEL10_61
2485    PIXEL11_30
2486    PIXEL20_60
2487    PIXEL21_70
2488    PIXEL22_32
2489    PIXEL30_20
2490    PIXEL31_60
2491    PIXEL32_82
2492    jmp .loopx_end
2493..@flag213
2494..@flag212
2495    AUXADDRESS
2496    PIXEL00_20
2497    PIXEL01_60
2498    PIXEL02_81
2499    DiffOrNot ebp-w6,ebp-w8,PIXEL03_81,PIXEL13_31,PIXEL22_0,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL03_12,PIXEL13_14,PIXEL22_70,PIXEL23_83,PIXEL32_21,PIXEL33_50
2500    PIXEL10_60
2501    PIXEL11_70
2502    PIXEL12_31
2503    PIXEL20_61
2504    PIXEL21_30
2505    PIXEL30_80
2506    PIXEL31_10
2507    jmp .loopx_end
2508..@flag241
2509..@flag240
2510    AUXADDRESS
2511    PIXEL00_20
2512    PIXEL01_60
2513    PIXEL02_61
2514    PIXEL03_80
2515    PIXEL10_60
2516    PIXEL11_70
2517    PIXEL12_30
2518    PIXEL13_10
2519    PIXEL20_82
2520    PIXEL21_32
2521    DiffOrNot ebp-w6,ebp-w8,PIXEL22_0,PIXEL23_0,PIXEL30_82,PIXEL31_32,PIXEL32_0,PIXEL33_0,PIXEL22_70,PIXEL23_21,PIXEL30_11,PIXEL31_13,PIXEL32_83,PIXEL33_50
2522    jmp .loopx_end
2523..@flag236
2524..@flag232
2525    AUXADDRESS
2526    PIXEL00_80
2527    PIXEL01_61
2528    PIXEL02_60
2529    PIXEL03_20
2530    PIXEL10_10
2531    PIXEL11_30
2532    PIXEL12_70
2533    PIXEL13_60
2534    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL21_0,PIXEL30_0,PIXEL31_0,PIXEL32_31,PIXEL33_81,PIXEL20_21,PIXEL21_70,PIXEL30_50,PIXEL31_83,PIXEL32_14,PIXEL33_12
2535    PIXEL22_31
2536    PIXEL23_81
2537    jmp .loopx_end
2538..@flag109
2539..@flag105
2540    AUXADDRESS
2541    DiffOrNot ebp-w8,ebp-w4,PIXEL00_82,PIXEL10_32,PIXEL20_0,PIXEL21_0,PIXEL30_0,PIXEL31_0,PIXEL00_11,PIXEL10_13,PIXEL20_83,PIXEL21_70,PIXEL30_50,PIXEL31_21
2542    PIXEL01_82
2543    PIXEL02_60
2544    PIXEL03_20
2545    PIXEL11_32
2546    PIXEL12_70
2547    PIXEL13_60
2548    PIXEL22_30
2549    PIXEL23_61
2550    PIXEL32_10
2551    PIXEL33_80
2552    jmp .loopx_end
2553..@flag171
2554..@flag43
2555    AUXADDRESS
2556    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL11_0,PIXEL20_31,PIXEL30_81,PIXEL00_50,PIXEL01_21,PIXEL10_83,PIXEL11_70,PIXEL20_14,PIXEL30_12
2557    PIXEL02_10
2558    PIXEL03_80
2559    PIXEL12_30
2560    PIXEL13_61
2561    PIXEL21_31
2562    PIXEL22_70
2563    PIXEL23_60
2564    PIXEL31_81
2565    PIXEL32_60
2566    PIXEL33_20
2567    jmp .loopx_end
2568..@flag143
2569..@flag15
2570    AUXADDRESS
2571    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL02_32,PIXEL03_82,PIXEL10_0,PIXEL11_0,PIXEL00_50,PIXEL01_83,PIXEL02_13,PIXEL03_11,PIXEL10_21,PIXEL11_70
2572    PIXEL12_32
2573    PIXEL13_82
2574    PIXEL20_10
2575    PIXEL21_30
2576    PIXEL22_70
2577    PIXEL23_60
2578    PIXEL30_80
2579    PIXEL31_61
2580    PIXEL32_60
2581    PIXEL33_20
2582    jmp .loopx_end
2583..@flag124
2584    AUXADDRESS
2585    PIXEL00_80
2586    PIXEL01_61
2587    PIXEL02_81
2588    PIXEL03_81
2589    PIXEL10_10
2590    PIXEL11_30
2591    PIXEL12_31
2592    PIXEL13_31
2593    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
2594    PIXEL21_0
2595    PIXEL22_30
2596    PIXEL23_10
2597    PIXEL32_10
2598    PIXEL33_80
2599    jmp .loopx_end
2600..@flag203
2601    AUXADDRESS
2602    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
2603    PIXEL02_10
2604    PIXEL03_80
2605    PIXEL11_0
2606    PIXEL12_30
2607    PIXEL13_61
2608    PIXEL20_10
2609    PIXEL21_30
2610    PIXEL22_31
2611    PIXEL23_81
2612    PIXEL30_80
2613    PIXEL31_10
2614    PIXEL32_31
2615    PIXEL33_81
2616    jmp .loopx_end
2617..@flag62
2618    AUXADDRESS
2619    PIXEL00_80
2620    PIXEL01_10
2621    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
2622    PIXEL10_10
2623    PIXEL11_30
2624    PIXEL12_0
2625    PIXEL20_31
2626    PIXEL21_31
2627    PIXEL22_30
2628    PIXEL23_10
2629    PIXEL30_81
2630    PIXEL31_81
2631    PIXEL32_61
2632    PIXEL33_80
2633    jmp .loopx_end
2634..@flag211
2635    AUXADDRESS
2636    PIXEL00_81
2637    PIXEL01_31
2638    PIXEL02_10
2639    PIXEL03_80
2640    PIXEL10_81
2641    PIXEL11_31
2642    PIXEL12_30
2643    PIXEL13_10
2644    PIXEL20_61
2645    PIXEL21_30
2646    PIXEL22_0
2647    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
2648    PIXEL30_80
2649    PIXEL31_10
2650    jmp .loopx_end
2651..@flag118
2652    AUXADDRESS
2653    PIXEL00_80
2654    PIXEL01_10
2655    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
2656    PIXEL10_61
2657    PIXEL11_30
2658    PIXEL12_0
2659    PIXEL20_82
2660    PIXEL21_32
2661    PIXEL22_30
2662    PIXEL23_10
2663    PIXEL30_82
2664    PIXEL31_32
2665    PIXEL32_10
2666    PIXEL33_80
2667    jmp .loopx_end
2668..@flag217
2669    AUXADDRESS
2670    PIXEL00_82
2671    PIXEL01_82
2672    PIXEL02_61
2673    PIXEL03_80
2674    PIXEL10_32
2675    PIXEL11_32
2676    PIXEL12_30
2677    PIXEL13_10
2678    PIXEL20_10
2679    PIXEL21_30
2680    PIXEL22_0
2681    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
2682    PIXEL30_80
2683    PIXEL31_10
2684    jmp .loopx_end
2685..@flag110
2686    AUXADDRESS
2687    PIXEL00_80
2688    PIXEL01_10
2689    PIXEL02_32
2690    PIXEL03_82
2691    PIXEL10_10
2692    PIXEL11_30
2693    PIXEL12_32
2694    PIXEL13_82
2695    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
2696    PIXEL21_0
2697    PIXEL22_30
2698    PIXEL23_61
2699    PIXEL32_10
2700    PIXEL33_80
2701    jmp .loopx_end
2702..@flag155
2703    AUXADDRESS
2704    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
2705    PIXEL02_10
2706    PIXEL03_80
2707    PIXEL11_0
2708    PIXEL12_30
2709    PIXEL13_10
2710    PIXEL20_10
2711    PIXEL21_30
2712    PIXEL22_32
2713    PIXEL23_32
2714    PIXEL30_80
2715    PIXEL31_61
2716    PIXEL32_82
2717    PIXEL33_82
2718    jmp .loopx_end
2719..@flag188
2720    AUXADDRESS
2721    PIXEL00_80
2722    PIXEL01_61
2723    PIXEL02_81
2724    PIXEL03_81
2725    PIXEL10_10
2726    PIXEL11_30
2727    PIXEL12_31
2728    PIXEL13_31
2729    PIXEL20_31
2730    PIXEL21_31
2731    PIXEL22_32
2732    PIXEL23_32
2733    PIXEL30_81
2734    PIXEL31_81
2735    PIXEL32_82
2736    PIXEL33_82
2737    jmp .loopx_end
2738..@flag185
2739    AUXADDRESS
2740    PIXEL00_82
2741    PIXEL01_82
2742    PIXEL02_61
2743    PIXEL03_80
2744    PIXEL10_32
2745    PIXEL11_32
2746    PIXEL12_30
2747    PIXEL13_10
2748    PIXEL20_31
2749    PIXEL21_31
2750    PIXEL22_32
2751    PIXEL23_32
2752    PIXEL30_81
2753    PIXEL31_81
2754    PIXEL32_82
2755    PIXEL33_82
2756    jmp .loopx_end
2757..@flag61
2758    AUXADDRESS
2759    PIXEL00_82
2760    PIXEL01_82
2761    PIXEL02_81
2762    PIXEL03_81
2763    PIXEL10_32
2764    PIXEL11_32
2765    PIXEL12_31
2766    PIXEL13_31
2767    PIXEL20_31
2768    PIXEL21_31
2769    PIXEL22_30
2770    PIXEL23_10
2771    PIXEL30_81
2772    PIXEL31_81
2773    PIXEL32_61
2774    PIXEL33_80
2775    jmp .loopx_end
2776..@flag157
2777    AUXADDRESS
2778    PIXEL00_82
2779    PIXEL01_82
2780    PIXEL02_81
2781    PIXEL03_81
2782    PIXEL10_32
2783    PIXEL11_32
2784    PIXEL12_31
2785    PIXEL13_31
2786    PIXEL20_10
2787    PIXEL21_30
2788    PIXEL22_32
2789    PIXEL23_32
2790    PIXEL30_80
2791    PIXEL31_61
2792    PIXEL32_82
2793    PIXEL33_82
2794    jmp .loopx_end
2795..@flag103
2796    AUXADDRESS
2797    PIXEL00_81
2798    PIXEL01_31
2799    PIXEL02_32
2800    PIXEL03_82
2801    PIXEL10_81
2802    PIXEL11_31
2803    PIXEL12_32
2804    PIXEL13_82
2805    PIXEL20_82
2806    PIXEL21_32
2807    PIXEL22_30
2808    PIXEL23_61
2809    PIXEL30_82
2810    PIXEL31_32
2811    PIXEL32_10
2812    PIXEL33_80
2813    jmp .loopx_end
2814..@flag227
2815    AUXADDRESS
2816    PIXEL00_81
2817    PIXEL01_31
2818    PIXEL02_10
2819    PIXEL03_80
2820    PIXEL10_81
2821    PIXEL11_31
2822    PIXEL12_30
2823    PIXEL13_61
2824    PIXEL20_82
2825    PIXEL21_32
2826    PIXEL22_31
2827    PIXEL23_81
2828    PIXEL30_82
2829    PIXEL31_32
2830    PIXEL32_31
2831    PIXEL33_81
2832    jmp .loopx_end
2833..@flag230
2834    AUXADDRESS
2835    PIXEL00_80
2836    PIXEL01_10
2837    PIXEL02_32
2838    PIXEL03_82
2839    PIXEL10_61
2840    PIXEL11_30
2841    PIXEL12_32
2842    PIXEL13_82
2843    PIXEL20_82
2844    PIXEL21_32
2845    PIXEL22_31
2846    PIXEL23_81
2847    PIXEL30_82
2848    PIXEL31_32
2849    PIXEL32_31
2850    PIXEL33_81
2851    jmp .loopx_end
2852..@flag199
2853    AUXADDRESS
2854    PIXEL00_81
2855    PIXEL01_31
2856    PIXEL02_32
2857    PIXEL03_82
2858    PIXEL10_81
2859    PIXEL11_31
2860    PIXEL12_32
2861    PIXEL13_82
2862    PIXEL20_61
2863    PIXEL21_30
2864    PIXEL22_31
2865    PIXEL23_81
2866    PIXEL30_80
2867    PIXEL31_10
2868    PIXEL32_31
2869    PIXEL33_81
2870    jmp .loopx_end
2871..@flag220
2872    AUXADDRESS
2873    PIXEL00_80
2874    PIXEL01_61
2875    PIXEL02_81
2876    PIXEL03_81
2877    PIXEL10_10
2878    PIXEL11_30
2879    PIXEL12_31
2880    PIXEL13_31
2881    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
2882    PIXEL22_0
2883    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
2884    jmp .loopx_end
2885..@flag158
2886    AUXADDRESS
2887    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
2888    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
2889    PIXEL12_0
2890    PIXEL20_10
2891    PIXEL21_30
2892    PIXEL22_32
2893    PIXEL23_32
2894    PIXEL30_80
2895    PIXEL31_61
2896    PIXEL32_82
2897    PIXEL33_82
2898    jmp .loopx_end
2899..@flag234
2900    AUXADDRESS
2901    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
2902    PIXEL02_10
2903    PIXEL03_80
2904    PIXEL12_30
2905    PIXEL13_61
2906    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
2907    PIXEL21_0
2908    PIXEL22_31
2909    PIXEL23_81
2910    PIXEL32_31
2911    PIXEL33_81
2912    jmp .loopx_end
2913..@flag242
2914    AUXADDRESS
2915    PIXEL00_80
2916    PIXEL01_10
2917    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
2918    PIXEL10_61
2919    PIXEL11_30
2920    PIXEL20_82
2921    PIXEL21_32
2922    PIXEL22_0
2923    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
2924    PIXEL30_82
2925    PIXEL31_32
2926    jmp .loopx_end
2927..@flag59
2928    AUXADDRESS
2929    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
2930    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
2931    PIXEL11_0
2932    PIXEL20_31
2933    PIXEL21_31
2934    PIXEL22_30
2935    PIXEL23_10
2936    PIXEL30_81
2937    PIXEL31_81
2938    PIXEL32_61
2939    PIXEL33_80
2940    jmp .loopx_end
2941..@flag121
2942    AUXADDRESS
2943    PIXEL00_82
2944    PIXEL01_82
2945    PIXEL02_61
2946    PIXEL03_80
2947    PIXEL10_32
2948    PIXEL11_32
2949    PIXEL12_30
2950    PIXEL13_10
2951    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
2952    PIXEL21_0
2953    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
2954    jmp .loopx_end
2955..@flag87
2956    AUXADDRESS
2957    PIXEL00_81
2958    PIXEL01_31
2959    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
2960    PIXEL10_81
2961    PIXEL11_31
2962    PIXEL12_0
2963    PIXEL20_61
2964    PIXEL21_30
2965    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
2966    PIXEL30_80
2967    PIXEL31_10
2968    jmp .loopx_end
2969..@flag79
2970    AUXADDRESS
2971    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
2972    PIXEL02_32
2973    PIXEL03_82
2974    PIXEL11_0
2975    PIXEL12_32
2976    PIXEL13_82
2977    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
2978    PIXEL22_30
2979    PIXEL23_61
2980    PIXEL32_10
2981    PIXEL33_80
2982    jmp .loopx_end
2983..@flag122
2984    AUXADDRESS
2985    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
2986    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
2987    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
2988    PIXEL21_0
2989    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
2990    jmp .loopx_end
2991..@flag94
2992    AUXADDRESS
2993    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
2994    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
2995    PIXEL12_0
2996    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
2997    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
2998    jmp .loopx_end
2999..@flag218
3000    AUXADDRESS
3001    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
3002    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
3003    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
3004    PIXEL22_0
3005    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
3006    jmp .loopx_end
3007..@flag91
3008    AUXADDRESS
3009    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
3010    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
3011    PIXEL11_0
3012    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
3013    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
3014    jmp .loopx_end
3015..@flag229
3016    AUXADDRESS
3017    PIXEL00_20
3018    PIXEL01_60
3019    PIXEL02_60
3020    PIXEL03_20
3021    PIXEL10_60
3022    PIXEL11_70
3023    PIXEL12_70
3024    PIXEL13_60
3025    PIXEL20_82
3026    PIXEL21_32
3027    PIXEL22_31
3028    PIXEL23_81
3029    PIXEL30_82
3030    PIXEL31_32
3031    PIXEL32_31
3032    PIXEL33_81
3033    jmp .loopx_end
3034..@flag167
3035    AUXADDRESS
3036    PIXEL00_81
3037    PIXEL01_31
3038    PIXEL02_32
3039    PIXEL03_82
3040    PIXEL10_81
3041    PIXEL11_31
3042    PIXEL12_32
3043    PIXEL13_82
3044    PIXEL20_60
3045    PIXEL21_70
3046    PIXEL22_70
3047    PIXEL23_60
3048    PIXEL30_20
3049    PIXEL31_60
3050    PIXEL32_60
3051    PIXEL33_20
3052    jmp .loopx_end
3053..@flag173
3054    AUXADDRESS
3055    PIXEL00_82
3056    PIXEL01_82
3057    PIXEL02_60
3058    PIXEL03_20
3059    PIXEL10_32
3060    PIXEL11_32
3061    PIXEL12_70
3062    PIXEL13_60
3063    PIXEL20_31
3064    PIXEL21_31
3065    PIXEL22_70
3066    PIXEL23_60
3067    PIXEL30_81
3068    PIXEL31_81
3069    PIXEL32_60
3070    PIXEL33_20
3071    jmp .loopx_end
3072..@flag181
3073    AUXADDRESS
3074    PIXEL00_20
3075    PIXEL01_60
3076    PIXEL02_81
3077    PIXEL03_81
3078    PIXEL10_60
3079    PIXEL11_70
3080    PIXEL12_31
3081    PIXEL13_31
3082    PIXEL20_60
3083    PIXEL21_70
3084    PIXEL22_32
3085    PIXEL23_32
3086    PIXEL30_20
3087    PIXEL31_60
3088    PIXEL32_82
3089    PIXEL33_82
3090    jmp .loopx_end
3091..@flag186
3092    AUXADDRESS
3093    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
3094    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
3095    PIXEL20_31
3096    PIXEL21_31
3097    PIXEL22_32
3098    PIXEL23_32
3099    PIXEL30_81
3100    PIXEL31_81
3101    PIXEL32_82
3102    PIXEL33_82
3103    jmp .loopx_end
3104..@flag115
3105    AUXADDRESS
3106    PIXEL00_81
3107    PIXEL01_31
3108    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
3109    PIXEL10_81
3110    PIXEL11_31
3111    PIXEL20_82
3112    PIXEL21_32
3113    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
3114    PIXEL30_82
3115    PIXEL31_32
3116    jmp .loopx_end
3117..@flag93
3118    AUXADDRESS
3119    PIXEL00_82
3120    PIXEL01_82
3121    PIXEL02_81
3122    PIXEL03_81
3123    PIXEL10_32
3124    PIXEL11_32
3125    PIXEL12_31
3126    PIXEL13_31
3127    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
3128    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
3129    jmp .loopx_end
3130..@flag206
3131    AUXADDRESS
3132    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
3133    PIXEL02_32
3134    PIXEL03_82
3135    PIXEL12_32
3136    PIXEL13_82
3137    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
3138    PIXEL22_31
3139    PIXEL23_81
3140    PIXEL32_31
3141    PIXEL33_81
3142    jmp .loopx_end
3143..@flag205
3144..@flag201
3145    AUXADDRESS
3146    PIXEL00_82
3147    PIXEL01_82
3148    PIXEL02_60
3149    PIXEL03_20
3150    PIXEL10_32
3151    PIXEL11_32
3152    PIXEL12_70
3153    PIXEL13_60
3154    DiffOrNot ebp-w8,ebp-w4,PIXEL20_10,PIXEL21_30,PIXEL30_80,PIXEL31_10,PIXEL20_12,PIXEL21_0,PIXEL30_20,PIXEL31_11
3155    PIXEL22_31
3156    PIXEL23_81
3157    PIXEL32_31
3158    PIXEL33_81
3159    jmp .loopx_end
3160..@flag174
3161..@flag46
3162    AUXADDRESS
3163    DiffOrNot ebp-w4,ebp-w2,PIXEL00_80,PIXEL01_10,PIXEL10_10,PIXEL11_30,PIXEL00_20,PIXEL01_12,PIXEL10_11,PIXEL11_0
3164    PIXEL02_32
3165    PIXEL03_82
3166    PIXEL12_32
3167    PIXEL13_82
3168    PIXEL20_31
3169    PIXEL21_31
3170    PIXEL22_70
3171    PIXEL23_60
3172    PIXEL30_81
3173    PIXEL31_81
3174    PIXEL32_60
3175    PIXEL33_20
3176    jmp .loopx_end
3177..@flag179
3178..@flag147
3179    AUXADDRESS
3180    PIXEL00_81
3181    PIXEL01_31
3182    DiffOrNot ebp-w2,ebp-w6,PIXEL02_10,PIXEL03_80,PIXEL12_30,PIXEL13_10,PIXEL02_11,PIXEL03_20,PIXEL12_0,PIXEL13_12
3183    PIXEL10_81
3184    PIXEL11_31
3185    PIXEL20_60
3186    PIXEL21_70
3187    PIXEL22_32
3188    PIXEL23_32
3189    PIXEL30_20
3190    PIXEL31_60
3191    PIXEL32_82
3192    PIXEL33_82
3193    jmp .loopx_end
3194..@flag117
3195..@flag116
3196    AUXADDRESS
3197    PIXEL00_20
3198    PIXEL01_60
3199    PIXEL02_81
3200    PIXEL03_81
3201    PIXEL10_60
3202    PIXEL11_70
3203    PIXEL12_31
3204    PIXEL13_31
3205    PIXEL20_82
3206    PIXEL21_32
3207    DiffOrNot ebp-w6,ebp-w8,PIXEL22_30,PIXEL23_10,PIXEL32_10,PIXEL33_80,PIXEL22_0,PIXEL23_11,PIXEL32_12,PIXEL33_20
3208    PIXEL30_82
3209    PIXEL31_32
3210    jmp .loopx_end
3211..@flag189
3212    AUXADDRESS
3213    PIXEL00_82
3214    PIXEL01_82
3215    PIXEL02_81
3216    PIXEL03_81
3217    PIXEL10_32
3218    PIXEL11_32
3219    PIXEL12_31
3220    PIXEL13_31
3221    PIXEL20_31
3222    PIXEL21_31
3223    PIXEL22_32
3224    PIXEL23_32
3225    PIXEL30_81
3226    PIXEL31_81
3227    PIXEL32_82
3228    PIXEL33_82
3229    jmp .loopx_end
3230..@flag231
3231    AUXADDRESS
3232    PIXEL00_81
3233    PIXEL01_31
3234    PIXEL02_32
3235    PIXEL03_82
3236    PIXEL10_81
3237    PIXEL11_31
3238    PIXEL12_32
3239    PIXEL13_82
3240    PIXEL20_82
3241    PIXEL21_32
3242    PIXEL22_31
3243    PIXEL23_81
3244    PIXEL30_82
3245    PIXEL31_32
3246    PIXEL32_31
3247    PIXEL33_81
3248    jmp .loopx_end
3249..@flag126
3250    AUXADDRESS
3251    PIXEL00_80
3252    PIXEL01_10
3253    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
3254    PIXEL10_10
3255    PIXEL11_30
3256    PIXEL12_0
3257    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
3258    PIXEL21_0
3259    PIXEL22_30
3260    PIXEL23_10
3261    PIXEL32_10
3262    PIXEL33_80
3263    jmp .loopx_end
3264..@flag219
3265    AUXADDRESS
3266    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
3267    PIXEL02_10
3268    PIXEL03_80
3269    PIXEL11_0
3270    PIXEL12_30
3271    PIXEL13_10
3272    PIXEL20_10
3273    PIXEL21_30
3274    PIXEL22_0
3275    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
3276    PIXEL30_80
3277    PIXEL31_10
3278    jmp .loopx_end
3279..@flag125
3280    AUXADDRESS
3281    DiffOrNot ebp-w8,ebp-w4,PIXEL00_82,PIXEL10_32,PIXEL20_0,PIXEL21_0,PIXEL30_0,PIXEL31_0,PIXEL00_11,PIXEL10_13,PIXEL20_83,PIXEL21_70,PIXEL30_50,PIXEL31_21
3282    PIXEL01_82
3283    PIXEL02_81
3284    PIXEL03_81
3285    PIXEL11_32
3286    PIXEL12_31
3287    PIXEL13_31
3288    PIXEL22_30
3289    PIXEL23_10
3290    PIXEL32_10
3291    PIXEL33_80
3292    jmp .loopx_end
3293..@flag221
3294    AUXADDRESS
3295    PIXEL00_82
3296    PIXEL01_82
3297    PIXEL02_81
3298    DiffOrNot ebp-w6,ebp-w8,PIXEL03_81,PIXEL13_31,PIXEL22_0,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL03_12,PIXEL13_14,PIXEL22_70,PIXEL23_83,PIXEL32_21,PIXEL33_50
3299    PIXEL10_32
3300    PIXEL11_32
3301    PIXEL12_31
3302    PIXEL20_10
3303    PIXEL21_30
3304    PIXEL30_80
3305    PIXEL31_10
3306    jmp .loopx_end
3307..@flag207
3308    AUXADDRESS
3309    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL02_32,PIXEL03_82,PIXEL10_0,PIXEL11_0,PIXEL00_50,PIXEL01_83,PIXEL02_13,PIXEL03_11,PIXEL10_21,PIXEL11_70
3310    PIXEL12_32
3311    PIXEL13_82
3312    PIXEL20_10
3313    PIXEL21_30
3314    PIXEL22_31
3315    PIXEL23_81
3316    PIXEL30_80
3317    PIXEL31_10
3318    PIXEL32_31
3319    PIXEL33_81
3320    jmp .loopx_end
3321..@flag238
3322    AUXADDRESS
3323    PIXEL00_80
3324    PIXEL01_10
3325    PIXEL02_32
3326    PIXEL03_82
3327    PIXEL10_10
3328    PIXEL11_30
3329    PIXEL12_32
3330    PIXEL13_82
3331    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL21_0,PIXEL30_0,PIXEL31_0,PIXEL32_31,PIXEL33_81,PIXEL20_21,PIXEL21_70,PIXEL30_50,PIXEL31_83,PIXEL32_14,PIXEL33_12
3332    PIXEL22_31
3333    PIXEL23_81
3334    jmp .loopx_end
3335..@flag190
3336    AUXADDRESS
3337    PIXEL00_80
3338    PIXEL01_10
3339    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL12_0,PIXEL13_0,PIXEL23_32,PIXEL33_82,PIXEL02_21,PIXEL03_50,PIXEL12_70,PIXEL13_83,PIXEL23_13,PIXEL33_11
3340    PIXEL10_10
3341    PIXEL11_30
3342    PIXEL20_31
3343    PIXEL21_31
3344    PIXEL22_32
3345    PIXEL30_81
3346    PIXEL31_81
3347    PIXEL32_82
3348    jmp .loopx_end
3349..@flag187
3350    AUXADDRESS
3351    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL11_0,PIXEL20_31,PIXEL30_81,PIXEL00_50,PIXEL01_21,PIXEL10_83,PIXEL11_70,PIXEL20_14,PIXEL30_12
3352    PIXEL02_10
3353    PIXEL03_80
3354    PIXEL12_30
3355    PIXEL13_10
3356    PIXEL21_31
3357    PIXEL22_32
3358    PIXEL23_32
3359    PIXEL31_81
3360    PIXEL32_82
3361    PIXEL33_82
3362    jmp .loopx_end
3363..@flag243
3364    AUXADDRESS
3365    PIXEL00_81
3366    PIXEL01_31
3367    PIXEL02_10
3368    PIXEL03_80
3369    PIXEL10_81
3370    PIXEL11_31
3371    PIXEL12_30
3372    PIXEL13_10
3373    PIXEL20_82
3374    PIXEL21_32
3375    DiffOrNot ebp-w6,ebp-w8,PIXEL22_0,PIXEL23_0,PIXEL30_82,PIXEL31_32,PIXEL32_0,PIXEL33_0,PIXEL22_70,PIXEL23_21,PIXEL30_11,PIXEL31_13,PIXEL32_83,PIXEL33_50
3376    jmp .loopx_end
3377..@flag119
3378    AUXADDRESS
3379    DiffOrNot ebp-w2,ebp-w6,PIXEL00_81,PIXEL01_31,PIXEL02_0,PIXEL03_0,PIXEL12_0,PIXEL13_0,PIXEL00_12,PIXEL01_14,PIXEL02_83,PIXEL03_50,PIXEL12_70,PIXEL13_21
3380    PIXEL10_81
3381    PIXEL11_31
3382    PIXEL20_82
3383    PIXEL21_32
3384    PIXEL22_30
3385    PIXEL23_10
3386    PIXEL30_82
3387    PIXEL31_32
3388    PIXEL32_10
3389    PIXEL33_80
3390    jmp .loopx_end
3391..@flag237
3392..@flag233
3393    AUXADDRESS
3394    PIXEL00_82
3395    PIXEL01_82
3396    PIXEL02_60
3397    PIXEL03_20
3398    PIXEL10_32
3399    PIXEL11_32
3400    PIXEL12_70
3401    PIXEL13_60
3402    PIXEL20_0
3403    PIXEL21_0
3404    PIXEL22_31
3405    PIXEL23_81
3406    DiffOrNot ebp-w8,ebp-w4,PIXEL30_0,PIXEL30_20
3407    PIXEL31_0
3408    PIXEL32_31
3409    PIXEL33_81
3410    jmp .loopx_end
3411..@flag175
3412..@flag47
3413    AUXADDRESS
3414    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL00_20
3415    PIXEL01_0
3416    PIXEL02_32
3417    PIXEL03_82
3418    PIXEL10_0
3419    PIXEL11_0
3420    PIXEL12_32
3421    PIXEL13_82
3422    PIXEL20_31
3423    PIXEL21_31
3424    PIXEL22_70
3425    PIXEL23_60
3426    PIXEL30_81
3427    PIXEL31_81
3428    PIXEL32_60
3429    PIXEL33_20
3430    jmp .loopx_end
3431..@flag183
3432..@flag151
3433    AUXADDRESS
3434    PIXEL00_81
3435    PIXEL01_31
3436    PIXEL02_0
3437    DiffOrNot ebp-w2,ebp-w6,PIXEL03_0,PIXEL03_20
3438    PIXEL10_81
3439    PIXEL11_31
3440    PIXEL12_0
3441    PIXEL13_0
3442    PIXEL20_60
3443    PIXEL21_70
3444    PIXEL22_32
3445    PIXEL23_32
3446    PIXEL30_20
3447    PIXEL31_60
3448    PIXEL32_82
3449    PIXEL33_82
3450    jmp .loopx_end
3451..@flag245
3452..@flag244
3453    AUXADDRESS
3454    PIXEL00_20
3455    PIXEL01_60
3456    PIXEL02_81
3457    PIXEL03_81
3458    PIXEL10_60
3459    PIXEL11_70
3460    PIXEL12_31
3461    PIXEL13_31
3462    PIXEL20_82
3463    PIXEL21_32
3464    PIXEL22_0
3465    PIXEL23_0
3466    PIXEL30_82
3467    PIXEL31_32
3468    PIXEL32_0
3469    DiffOrNot ebp-w6,ebp-w8,PIXEL33_0,PIXEL33_20
3470    jmp .loopx_end
3471..@flag250
3472    AUXADDRESS
3473    PIXEL00_80
3474    PIXEL01_10
3475    PIXEL02_10
3476    PIXEL03_80
3477    PIXEL10_10
3478    PIXEL11_30
3479    PIXEL12_30
3480    PIXEL13_10
3481    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
3482    PIXEL21_0
3483    PIXEL22_0
3484    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
3485    jmp .loopx_end
3486..@flag123
3487    AUXADDRESS
3488    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
3489    PIXEL02_10
3490    PIXEL03_80
3491    PIXEL11_0
3492    PIXEL12_30
3493    PIXEL13_10
3494    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
3495    PIXEL21_0
3496    PIXEL22_30
3497    PIXEL23_10
3498    PIXEL32_10
3499    PIXEL33_80
3500    jmp .loopx_end
3501..@flag95
3502    AUXADDRESS
3503    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
3504    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
3505    PIXEL11_0
3506    PIXEL12_0
3507    PIXEL20_10
3508    PIXEL21_30
3509    PIXEL22_30
3510    PIXEL23_10
3511    PIXEL30_80
3512    PIXEL31_10
3513    PIXEL32_10
3514    PIXEL33_80
3515    jmp .loopx_end
3516..@flag222
3517    AUXADDRESS
3518    PIXEL00_80
3519    PIXEL01_10
3520    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
3521    PIXEL10_10
3522    PIXEL11_30
3523    PIXEL12_0
3524    PIXEL20_10
3525    PIXEL21_30
3526    PIXEL22_0
3527    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
3528    PIXEL30_80
3529    PIXEL31_10
3530    jmp .loopx_end
3531..@flag252
3532    AUXADDRESS
3533    PIXEL00_80
3534    PIXEL01_61
3535    PIXEL02_81
3536    PIXEL03_81
3537    PIXEL10_10
3538    PIXEL11_30
3539    PIXEL12_31
3540    PIXEL13_31
3541    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
3542    PIXEL21_0
3543    PIXEL22_0
3544    PIXEL23_0
3545    PIXEL32_0
3546    DiffOrNot ebp-w6,ebp-w8,PIXEL33_0,PIXEL33_20
3547    jmp .loopx_end
3548..@flag249
3549    AUXADDRESS
3550    PIXEL00_82
3551    PIXEL01_82
3552    PIXEL02_61
3553    PIXEL03_80
3554    PIXEL10_32
3555    PIXEL11_32
3556    PIXEL12_30
3557    PIXEL13_10
3558    PIXEL20_0
3559    PIXEL21_0
3560    PIXEL22_0
3561    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
3562    DiffOrNot ebp-w8,ebp-w4,PIXEL30_0,PIXEL30_20
3563    PIXEL31_0
3564    jmp .loopx_end
3565..@flag235
3566    AUXADDRESS
3567    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
3568    PIXEL02_10
3569    PIXEL03_80
3570    PIXEL11_0
3571    PIXEL12_30
3572    PIXEL13_61
3573    PIXEL20_0
3574    PIXEL21_0
3575    PIXEL22_31
3576    PIXEL23_81
3577    DiffOrNot ebp-w8,ebp-w4,PIXEL30_0,PIXEL30_20
3578    PIXEL31_0
3579    PIXEL32_31
3580    PIXEL33_81
3581    jmp .loopx_end
3582..@flag111
3583    AUXADDRESS
3584    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL00_20
3585    PIXEL01_0
3586    PIXEL02_32
3587    PIXEL03_82
3588    PIXEL10_0
3589    PIXEL11_0
3590    PIXEL12_32
3591    PIXEL13_82
3592    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
3593    PIXEL21_0
3594    PIXEL22_30
3595    PIXEL23_61
3596    PIXEL32_10
3597    PIXEL33_80
3598    jmp .loopx_end
3599..@flag63
3600    AUXADDRESS
3601    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL00_20
3602    PIXEL01_0
3603    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
3604    PIXEL10_0
3605    PIXEL11_0
3606    PIXEL12_0
3607    PIXEL20_31
3608    PIXEL21_31
3609    PIXEL22_30
3610    PIXEL23_10
3611    PIXEL30_81
3612    PIXEL31_81
3613    PIXEL32_61
3614    PIXEL33_80
3615    jmp .loopx_end
3616..@flag159
3617    AUXADDRESS
3618    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
3619    PIXEL02_0
3620    DiffOrNot ebp-w2,ebp-w6,PIXEL03_0,PIXEL03_20
3621    PIXEL11_0
3622    PIXEL12_0
3623    PIXEL13_0
3624    PIXEL20_10
3625    PIXEL21_30
3626    PIXEL22_32
3627    PIXEL23_32
3628    PIXEL30_80
3629    PIXEL31_61
3630    PIXEL32_82
3631    PIXEL33_82
3632    jmp .loopx_end
3633..@flag215
3634    AUXADDRESS
3635    PIXEL00_81
3636    PIXEL01_31
3637    PIXEL02_0
3638    DiffOrNot ebp-w2,ebp-w6,PIXEL03_0,PIXEL03_20
3639    PIXEL10_81
3640    PIXEL11_31
3641    PIXEL12_0
3642    PIXEL13_0
3643    PIXEL20_61
3644    PIXEL21_30
3645    PIXEL22_0
3646    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
3647    PIXEL30_80
3648    PIXEL31_10
3649    jmp .loopx_end
3650..@flag246
3651    AUXADDRESS
3652    PIXEL00_80
3653    PIXEL01_10
3654    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
3655    PIXEL10_61
3656    PIXEL11_30
3657    PIXEL12_0
3658    PIXEL20_82
3659    PIXEL21_32
3660    PIXEL22_0
3661    PIXEL23_0
3662    PIXEL30_82
3663    PIXEL31_32
3664    PIXEL32_0
3665    DiffOrNot ebp-w6,ebp-w8,PIXEL33_0,PIXEL33_20
3666    jmp .loopx_end
3667..@flag254
3668    AUXADDRESS
3669    PIXEL00_80
3670    PIXEL01_10
3671    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
3672    PIXEL10_10
3673    PIXEL11_30
3674    PIXEL12_0
3675    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
3676    PIXEL21_0
3677    PIXEL22_0
3678    PIXEL23_0
3679    PIXEL32_0
3680    DiffOrNot ebp-w6,ebp-w8,PIXEL33_0,PIXEL33_20
3681    jmp .loopx_end
3682..@flag253
3683    AUXADDRESS
3684    PIXEL00_82
3685    PIXEL01_82
3686    PIXEL02_81
3687    PIXEL03_81
3688    PIXEL10_32
3689    PIXEL11_32
3690    PIXEL12_31
3691    PIXEL13_31
3692    PIXEL20_0
3693    PIXEL21_0
3694    PIXEL22_0
3695    PIXEL23_0
3696    DiffOrNot ebp-w8,ebp-w4,PIXEL30_0,PIXEL30_20
3697    PIXEL31_0
3698    PIXEL32_0
3699    DiffOrNot ebp-w6,ebp-w8,PIXEL33_0,PIXEL33_20
3700    jmp .loopx_end
3701..@flag251
3702    AUXADDRESS
3703    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
3704    PIXEL02_10
3705    PIXEL03_80
3706    PIXEL11_0
3707    PIXEL12_30
3708    PIXEL13_10
3709    PIXEL20_0
3710    PIXEL21_0
3711    PIXEL22_0
3712    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
3713    DiffOrNot ebp-w8,ebp-w4,PIXEL30_0,PIXEL30_20
3714    PIXEL31_0
3715    jmp .loopx_end
3716..@flag239
3717    AUXADDRESS
3718    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL00_20
3719    PIXEL01_0
3720    PIXEL02_32
3721    PIXEL03_82
3722    PIXEL10_0
3723    PIXEL11_0
3724    PIXEL12_32
3725    PIXEL13_82
3726    PIXEL20_0
3727    PIXEL21_0
3728    PIXEL22_31
3729    PIXEL23_81
3730    DiffOrNot ebp-w8,ebp-w4,PIXEL30_0,PIXEL30_20
3731    PIXEL31_0
3732    PIXEL32_31
3733    PIXEL33_81
3734    jmp .loopx_end
3735..@flag127
3736    AUXADDRESS
3737    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL00_20
3738    PIXEL01_0
3739    DiffOrNot ebp-w2,ebp-w6,PIXEL02_0,PIXEL03_0,PIXEL13_0,PIXEL02_50,PIXEL03_50,PIXEL13_50
3740    PIXEL10_0
3741    PIXEL11_0
3742    PIXEL12_0
3743    DiffOrNot ebp-w8,ebp-w4,PIXEL20_0,PIXEL30_0,PIXEL31_0,PIXEL20_50,PIXEL30_50,PIXEL31_50
3744    PIXEL21_0
3745    PIXEL22_30
3746    PIXEL23_10
3747    PIXEL32_10
3748    PIXEL33_80
3749    jmp .loopx_end
3750..@flag191
3751    AUXADDRESS
3752    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL00_20
3753    PIXEL01_0
3754    PIXEL02_0
3755    DiffOrNot ebp-w2,ebp-w6,PIXEL03_0,PIXEL03_20
3756    PIXEL10_0
3757    PIXEL11_0
3758    PIXEL12_0
3759    PIXEL13_0
3760    PIXEL20_31
3761    PIXEL21_31
3762    PIXEL22_32
3763    PIXEL23_32
3764    PIXEL30_81
3765    PIXEL31_81
3766    PIXEL32_82
3767    PIXEL33_82
3768    jmp .loopx_end
3769..@flag223
3770    AUXADDRESS
3771    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL01_0,PIXEL10_0,PIXEL00_50,PIXEL01_50,PIXEL10_50
3772    PIXEL02_0
3773    DiffOrNot ebp-w2,ebp-w6,PIXEL03_0,PIXEL03_20
3774    PIXEL11_0
3775    PIXEL12_0
3776    PIXEL13_0
3777    PIXEL20_10
3778    PIXEL21_30
3779    PIXEL22_0
3780    DiffOrNot ebp-w6,ebp-w8,PIXEL23_0,PIXEL32_0,PIXEL33_0,PIXEL23_50,PIXEL32_50,PIXEL33_50
3781    PIXEL30_80
3782    PIXEL31_10
3783    jmp .loopx_end
3784..@flag247
3785    AUXADDRESS
3786    PIXEL00_81
3787    PIXEL01_31
3788    PIXEL02_0
3789    DiffOrNot ebp-w2,ebp-w6,PIXEL03_0,PIXEL03_20
3790    PIXEL10_81
3791    PIXEL11_31
3792    PIXEL12_0
3793    PIXEL13_0
3794    PIXEL20_82
3795    PIXEL21_32
3796    PIXEL22_0
3797    PIXEL23_0
3798    PIXEL30_82
3799    PIXEL31_32
3800    PIXEL32_0
3801    DiffOrNot ebp-w6,ebp-w8,PIXEL33_0,PIXEL33_20
3802    jmp .loopx_end
3803..@flag255
3804    AUXADDRESS
3805    DiffOrNot ebp-w4,ebp-w2,PIXEL00_0,PIXEL00_20
3806    PIXEL01_0
3807    PIXEL02_0
3808    DiffOrNot ebp-w2,ebp-w6,PIXEL03_0,PIXEL03_20
3809    PIXEL10_0
3810    PIXEL11_0
3811    PIXEL12_0
3812    PIXEL13_0
3813    PIXEL20_0
3814    PIXEL21_0
3815    PIXEL22_0
3816    PIXEL23_0
3817    DiffOrNot ebp-w8,ebp-w4,PIXEL30_0,PIXEL30_20
3818    PIXEL31_0
3819    PIXEL32_0
3820    DiffOrNot ebp-w6,ebp-w8,PIXEL33_0,PIXEL33_20
3821    jmp .loopx_end
3822
3823.loopx_end
3824    add     esi,2
3825    add     edi,8
3826    dec     dword[ebp-xcounter]
3827    jle     .xres_2
3828    jmp     .loopx
3829.xres_2
3830    ; x=Xres-2 - special case
3831    jl      .xres_1
3832    mov     ebx,[ebp-prevline]
3833    movq    mm5,[esi+ebx-4]
3834    movq    mm6,[esi-4]
3835    mov     ebx,[ebp-nextline]
3836    movq    mm7,[esi+ebx-4]
3837    psrlq   mm5,16
3838    psrlq   mm6,16
3839    psrlq   mm7,16
3840    movd    eax,mm5
3841    movzx   edx,ax
3842    mov     [ebp-w1],edx
3843    shr     eax,16
3844    mov     [ebp-w2],eax
3845    psrlq   mm5,32
3846    movd    eax,mm5
3847    mov     [ebp-w3],eax
3848    movd    eax,mm6
3849    movzx   edx,ax
3850    mov     [ebp-w4],edx
3851    shr     eax,16
3852    mov     [ebp-w5],eax
3853    psrlq   mm6,32
3854    movd    eax,mm6
3855    mov     [ebp-w6],eax
3856    movd    eax,mm7
3857    movzx   edx,ax
3858    mov     [ebp-w7],edx
3859    shr     eax,16
3860    mov     [ebp-w8],eax
3861    psrlq   mm7,32
3862    movd    eax,mm7
3863    mov     [ebp-w9],eax
3864    jmp     .flags
3865.xres_1
3866    cmp     dword[ebp-xcounter],-1
3867    jl      .nexty
3868    ; x=Xres-1 - special case
3869    mov     ebx,[ebp-prevline]
3870    movq    mm5,[esi+ebx-6]
3871    movq    mm6,[esi-6]
3872    mov     ebx,[ebp-nextline]
3873    movq    mm7,[esi+ebx-6]
3874    psrlq   mm5,32
3875    psrlq   mm6,32
3876    psrlq   mm7,32
3877    movd    eax,mm5
3878    movzx   edx,ax
3879    mov     [ebp-w1],edx
3880    shr     eax,16
3881    mov     [ebp-w2],eax
3882    mov     [ebp-w3],eax
3883    movd    eax,mm6
3884    movzx   edx,ax
3885    mov     [ebp-w4],edx
3886    shr     eax,16
3887    mov     [ebp-w5],eax
3888    mov     [ebp-w6],eax
3889    movd    eax,mm7
3890    movzx   edx,ax
3891    mov     [ebp-w7],edx
3892    shr     eax,16
3893    mov     [ebp-w8],eax
3894    mov     [ebp-w9],eax
3895    jmp     .flags
3896.nexty
3897    add		esi,[ebp+offset] ; added - move source pointer past end-of-line blanks
3898    add     edi,ebx
3899    add     edi,ebx
3900    add		edi,ebx
3901    add     edi,ebx
3902    mov     ebx, [ebp+Xres] ; added, bug - need to add to destination offset
3903    shl     ebx, 3
3904    sub     edi, ebx
3905    shr     ebx, 2
3906    dec     dword[ebp-linesleft]
3907    jz      .fin
3908     add		ebx, [ebp+offset];
3909    cmp     dword[ebp-linesleft],1
3910    je      .lastline
3911    mov     dword[ebp-nextline],ebx
3912    neg     ebx
3913    mov     dword[ebp-prevline],ebx
3914    jmp     .loopy
3915.lastline
3916    mov     dword[ebp-nextline],0
3917    neg     ebx
3918    mov     dword[ebp-prevline],ebx
3919    jmp     .loopy
3920.fin
3921    emms
3922    popad
3923    mov esp,ebp
3924    pop ebp
3925    ret
3926
3927SECTION .data
3928FuncTable
3929    dd ..@flag0, ..@flag1, ..@flag2, ..@flag3, ..@flag4, ..@flag5, ..@flag6, ..@flag7
3930    dd ..@flag8, ..@flag9, ..@flag10, ..@flag11, ..@flag12, ..@flag13, ..@flag14, ..@flag15
3931    dd ..@flag16, ..@flag17, ..@flag18, ..@flag19, ..@flag20, ..@flag21, ..@flag22, ..@flag23
3932    dd ..@flag24, ..@flag25, ..@flag26, ..@flag27, ..@flag28, ..@flag29, ..@flag30, ..@flag31
3933    dd ..@flag32, ..@flag33, ..@flag34, ..@flag35, ..@flag36, ..@flag37, ..@flag38, ..@flag39
3934    dd ..@flag40, ..@flag41, ..@flag42, ..@flag43, ..@flag44, ..@flag45, ..@flag46, ..@flag47
3935    dd ..@flag48, ..@flag49, ..@flag50, ..@flag51, ..@flag52, ..@flag53, ..@flag54, ..@flag55
3936    dd ..@flag56, ..@flag57, ..@flag58, ..@flag59, ..@flag60, ..@flag61, ..@flag62, ..@flag63
3937    dd ..@flag64, ..@flag65, ..@flag66, ..@flag67, ..@flag68, ..@flag69, ..@flag70, ..@flag71
3938    dd ..@flag72, ..@flag73, ..@flag74, ..@flag75, ..@flag76, ..@flag77, ..@flag78, ..@flag79
3939    dd ..@flag80, ..@flag81, ..@flag82, ..@flag83, ..@flag84, ..@flag85, ..@flag86, ..@flag87
3940    dd ..@flag88, ..@flag89, ..@flag90, ..@flag91, ..@flag92, ..@flag93, ..@flag94, ..@flag95
3941    dd ..@flag96, ..@flag97, ..@flag98, ..@flag99, ..@flag100, ..@flag101, ..@flag102, ..@flag103
3942    dd ..@flag104, ..@flag105, ..@flag106, ..@flag107, ..@flag108, ..@flag109, ..@flag110, ..@flag111
3943    dd ..@flag112, ..@flag113, ..@flag114, ..@flag115, ..@flag116, ..@flag117, ..@flag118, ..@flag119
3944    dd ..@flag120, ..@flag121, ..@flag122, ..@flag123, ..@flag124, ..@flag125, ..@flag126, ..@flag127
3945    dd ..@flag128, ..@flag129, ..@flag130, ..@flag131, ..@flag132, ..@flag133, ..@flag134, ..@flag135
3946    dd ..@flag136, ..@flag137, ..@flag138, ..@flag139, ..@flag140, ..@flag141, ..@flag142, ..@flag143
3947    dd ..@flag144, ..@flag145, ..@flag146, ..@flag147, ..@flag148, ..@flag149, ..@flag150, ..@flag151
3948    dd ..@flag152, ..@flag153, ..@flag154, ..@flag155, ..@flag156, ..@flag157, ..@flag158, ..@flag159
3949    dd ..@flag160, ..@flag161, ..@flag162, ..@flag163, ..@flag164, ..@flag165, ..@flag166, ..@flag167
3950    dd ..@flag168, ..@flag169, ..@flag170, ..@flag171, ..@flag172, ..@flag173, ..@flag174, ..@flag175
3951    dd ..@flag176, ..@flag177, ..@flag178, ..@flag179, ..@flag180, ..@flag181, ..@flag182, ..@flag183
3952    dd ..@flag184, ..@flag185, ..@flag186, ..@flag187, ..@flag188, ..@flag189, ..@flag190, ..@flag191
3953    dd ..@flag192, ..@flag193, ..@flag194, ..@flag195, ..@flag196, ..@flag197, ..@flag198, ..@flag199
3954    dd ..@flag200, ..@flag201, ..@flag202, ..@flag203, ..@flag204, ..@flag205, ..@flag206, ..@flag207
3955    dd ..@flag208, ..@flag209, ..@flag210, ..@flag211, ..@flag212, ..@flag213, ..@flag214, ..@flag215
3956    dd ..@flag216, ..@flag217, ..@flag218, ..@flag219, ..@flag220, ..@flag221, ..@flag222, ..@flag223
3957    dd ..@flag224, ..@flag225, ..@flag226, ..@flag227, ..@flag228, ..@flag229, ..@flag230, ..@flag231
3958    dd ..@flag232, ..@flag233, ..@flag234, ..@flag235, ..@flag236, ..@flag237, ..@flag238, ..@flag239
3959    dd ..@flag240, ..@flag241, ..@flag242, ..@flag243, ..@flag244, ..@flag245, ..@flag246, ..@flag247
3960    dd ..@flag248, ..@flag249, ..@flag250, ..@flag251, ..@flag252, ..@flag253, ..@flag254, ..@flag255
3961
3962
3963