-
Notifications
You must be signed in to change notification settings - Fork 0
/
SONIC3K.EXE.c
960 lines (949 loc) · 59.1 KB
/
SONIC3K.EXE.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
typedef unsigned char undefined;
typedef unsigned int word;
typedef unsigned char byte;
typedef struct OLD_IMAGE_DOS_HEADER OLD_IMAGE_DOS_HEADER, *POLD_IMAGE_DOS_HEADER;
struct OLD_IMAGE_DOS_HEADER {
char e_magic[2]; // Magic number
word e_cblp; // Bytes of last page
word e_cp; // Pages in file
word e_crlc; // Relocations
word e_cparhdr; // Size of header in paragraphs
word e_minalloc; // Minimum extra paragraphs needed
word e_maxalloc; // Maximum extra paragraphs needed
word e_ss; // Initial (relative) SS value
word e_sp; // Initial SP value
word e_csum; // Checksum
word e_ip; // Initial IP value
word e_cs; // Initial (relative) CS value
word e_lfarlc; // File address of relocation table
word e_ovno; // Overlay number
};
// WARNING: Control flow encountered bad instruction data
// WARNING: Instruction at (ram,0x00010400) overlaps instruction at (ram,0x000103ff)
//
// WARNING: Stack frame is not setup normally: Input value of stackpointer is not used
// WARNING: This function may have set the stack pointer
// WARNING: Removing unreachable block (ram,0x0001009c)
// WARNING: Type propagation algorithm not settling
void entry(void)
{
char **ppcVar1;
byte *pbVar2;
int *puVar3;
char *pcVar4;
char *pcVar5;
undefined *puVar7;
char ppcVar8;
char *pcVar9;
char *pcVar10;
byte bVar11;
char cVar12;
byte bVar13;
char cVar14;
byte bVar15;
char cVar19;
int iVar16;
int uVar17;
undefined uVar20;
char *pcVar18;
int in_CX;
int iVar21;
undefined uVar22;
int *in_BX;
undefined *puVar23;
undefined *puVar24;
undefined *puVar25;
undefined *puVar26;
undefined *puVar27;
undefined *puVar28;
undefined *puVar29;
undefined *puVar30;
int unaff_BP;
undefined *puVar31;
undefined *puVar32;
undefined *unaff_SI;
int *puVar33;
int *puVar34;
undefined *unaff_DI;
char **ppcVar35;
undefined unaff_ES;
int bVar36;
byte in_AF;
byte in_TF;
byte in_IF;
byte in_NT;
undefined uVar37;
char *pcVar6;
char somerndstuff;
// WARNING: Read-only address (ram,0x000100b6) is written
int StrangeWriteToReadOnlyAddess = 0;
puVar23 = (undefined *)0xb8;
pcVar10 = (somerndstuff *0x21);
//(*pcVar10)();
pcVar10 = (somerndstuff *0x21);
uVar37 = pcVar10;
iVar21 = (int)((long)uVar37 >> 0x10);
iVar16 = (int)uVar37;
*(undefined **)(puVar23 + -2) = puVar23;
puVar24 = puVar23 + -4;
*(undefined *)(puVar23 + -4) = 0x7369;
pbVar2 = (byte *)((int)in_BX + (int)unaff_SI + 0x72);
bVar13 = (byte)((long)uVar37 >> 0x18);
*pbVar2 = *pbVar2 & bVar13;
out(*unaff_SI,iVar21);
cVar14 = (char)in_CX;
ppcVar35 = (somerndstuff **unaff_DI + 1);
uVar22 = in(iVar21);
*unaff_DI = uVar22;
pbVar2 = (byte *)((int)ppcVar35 + unaff_BP + 0x61);
bVar11 = (byte)((long)uVar37 >> 8);
*pbVar2 = *pbVar2 & bVar11;
out(*(undefined *)(unaff_SI + 1),iVar21);
out(*(undefined *)((int)unaff_SI + 3),iVar21);
puVar29 = unaff_SI + 3;
out(unaff_SI[2],iVar21);
if (*pbVar2 != 0) {
puVar7 = puVar29;
puVar29 = (undefined *)((int)unaff_SI + 7);
out(*(undefined *)puVar7,iVar21);
pbVar2 = (byte *)((int)in_BX + (int)ppcVar35 + 0x6e);
bVar15 = (byte)((int)in_CX >> 8);
*pbVar2 = *pbVar2 & bVar15;
*(byte *)(unaff_SI + 0x2b) = *(byte *)(unaff_SI + 0x2b) & (byte)uVar37;
*(int **)(puVar23 + -6) = in_BX;
*(byte *)((int)unaff_DI + 0x71) = *(byte *)((int)unaff_DI + 0x71) & bVar15;
iVar16 = (int)(bVar11 | 10) << 8;
*(undefined *)((int)in_BX + (int)puVar29) = *(undefined *)((int)in_BX + (int)puVar29);
*(undefined *)((int)in_BX + (int)puVar29) = *(undefined *)((int)in_BX + (int)puVar29);
*(undefined *)((int)in_BX + (int)puVar29) = *(undefined *)((int)in_BX + (int)puVar29);
puVar24 = puVar23 + -8;
*(int *)(puVar23 + -8) = iVar16;
unaff_BP = unaff_BP + 1;
}
*(char *)((int)in_BX + (int)puVar29) = *(char *)((int)in_BX + (int)puVar29) + (char)iVar16;
puVar25 = (undefined ) * (puVar24 + -1);
*in_BX = *in_BX + iVar16;
*(char *)(in_BX + -5) = *(char *)(in_BX + -5) + cVar14;
puVar33 = puVar29 + 1;
cVar19 = (char)((int) * puVar29 >> 8);
bVar11 = (byte)*puVar29 ^ *(byte *)((int)in_BX + (int)puVar33);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
cVar12 = bVar11 + cVar19;
*(char *)(unaff_BP + (int)puVar33) = *(char *)(unaff_BP + (int)puVar33) + cVar14;
*(int *)(unaff_BP + (int)ppcVar35) = *(int *)(unaff_BP + (int)ppcVar35) + in_CX;
puVar3 = puVar33;
bVar36 = CARRY2(*puVar3,CONCAT11(cVar19,cVar12));
*puVar3 = *puVar3 + CONCAT11(cVar19,cVar12);
bVar11 = cVar12 + bVar36;
if ((SCARRY1(cVar12,'\0') != SCARRY1(cVar12,bVar36)) == (char)bVar11 < '\0') {
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
cVar12 = *(char *)puVar33;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
((char *)((int)in_BX + (int)puVar33))[-0xb] =
((char *)((int)in_BX + (int)puVar33))[-0xb] + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
iVar21 = CONCAT11(bVar13,(char)((long)uVar37 >> 0x10) + cVar12) + 1;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + (char)iVar21;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)(unaff_BP + (int)puVar33) = *(char *)(unaff_BP + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
bVar11 = bVar11 + (char)iVar21;
puVar25 = (undefined) * (puVar24 + -3);
(int) * (puVar24 + -3) = puVar33;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)(unaff_BP + (int)puVar33) = *(char *)(unaff_BP + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
}
bVar15 = (byte)iVar21;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar15;
pbVar2 = (byte *)((int)in_BX + (int)puVar33);
bVar13 = *pbVar2;
*pbVar2 = *pbVar2 + bVar11;
*(char *)((int)in_BX + (int)puVar33) =
*(char *)((int)in_BX + (int)puVar33) + bVar11 + CARRY1(bVar13,bVar11);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar15;
pbVar2 = (byte *)((int)in_BX + (int)puVar33);
bVar13 = *pbVar2;
*pbVar2 = *pbVar2 + bVar11;
*(char *)((int)in_BX + (int)puVar33) =
*(char *)((int)in_BX + (int)puVar33) + bVar11 + CARRY1(bVar13,bVar11);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar15;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
puVar31 = (undefined *)(unaff_BP + 1);
*(char *)puVar33 = *(char *)puVar33 + cVar14;
pcVar4 = (char *)((int)in_BX + (int)puVar33);
*pcVar4 = *pcVar4 + bVar11;
in_CX = in_CX + -1;
if (in_CX == 0 || *pcVar4 == '\0') {
((char *)((int)in_BX + (int)puVar33))[0x30] =
((char *)((int)in_BX + (int)puVar33))[0x30] + (char)((int)iVar21 >> 8);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
pbVar2 = (byte *)((int)in_BX + (int)ppcVar35);
*pbVar2 = *pbVar2 & bVar15;
puVar26 = (undefined *)((int)puVar25 + -2);
int puVar25 ; puVar25 =
(int)(in_NT & 1) * 0x4000 | (int)(in_IF & 1) * 0x200 | (int)(in_TF & 1) * 0x100 |
(int)((char)*pbVar2 < '\0') * 0x80 | (int)(*pbVar2 == 0) * 0x40 |
(int)(in_AF & 1) * 0x10 | (int)((POPCOUNT(*pbVar2) & 1U) == 0) * 4;
*ppcVar35 = *ppcVar35;
((char *)((int)in_BX + (int)puVar33))[0x42] =
((char *)((int)in_BX + (int)puVar33))[0x42] + bVar15;
puVar27 = (undefined *)((int)puVar25 + -4);
puVar25 = (undefined *)((int)puVar25 + -4);
*(undefined **)puVar27 = puVar26;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)puVar29 + 0x4595) = *(char *)((int)puVar29 + 0x4595) + bVar11;
}
bVar11 = bVar11 + (char)((int)in_BX >> 8) + *(char *)((int)in_BX + (int)puVar33);
uVar17 = CONCAT11(cVar19,bVar11);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
cVar14 = (char)((int)in_CX >> 8);
int
cRam00006574 = cRam00006574 + cVar14;
if (cRam00006574 < '\0') {
puVar29 = (undefined *)(*(int *)((int)puVar29 + 99) * 0x6174);
LAB_1000_018d:
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + (char)uVar17;
cVar12 = (char)(int)in_CX >> 8;
pbVar2 = puVar31 + (int)puVar33;
bVar11 = (byte)in_CX & 7;
*pbVar2 = *pbVar2 << bVar11 | *pbVar2 >> 8 - bVar11;
*(char *)((int)in_BX + (int)puVar33) =
*(char *)((int)in_BX + (int)puVar33) + (char)uVar17 + cVar12;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + 'B';
pbVar2 = (byte *)((int)in_BX + (int)puVar33);
bVar11 = *pbVar2;
bVar13 = *pbVar2;
*pbVar2 = *pbVar2 + 0x42;
*(int *)((int)puVar29 + -2) =
(int)(in_NT & 1) * 0x4000 | (int)SCARRY1(bVar13,'B') * 0x800 | (int)(in_IF & 1) * 0x200
| (int)(in_TF & 1) * 0x100 | (int)((char)*pbVar2 < '\0') * 0x80 |
(int)(*pbVar2 == 0) * 0x40 | (int)(in_AF & 1) * 0x10 |
(int)((POPCOUNT(*pbVar2) & 1U) == 0) * 4 | (int)(0xbd < bVar11);
iVar21 = iVar21 + 1;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + 'B';
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + 'B';
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + 'B';
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + 'B';
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + 'B';
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + 'B';
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + 'B';
puVar28 = (undefined *)(*(int *)((int)puVar33 + 0x61) * 0x6174);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + -0x7c;
puVar31[(int)puVar33] = puVar31[(int)puVar33];
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + -0x7c;
puVar31 = puVar31 + 1;
pbVar2 = (byte *)((int)in_BX + (int)puVar33);
bVar11 = *pbVar2;
*pbVar2 = *pbVar2 + 0x84;
cVar14 = (0x7b < bVar11) + -0x7c;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
puVar31[(int)puVar33] = puVar31[(int)puVar33] + '\x01';
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
iVar16 = CONCAT11((char)(uVar17 >> 8),cVar14) + 1;
bVar13 = (byte)iVar16;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
pbVar2 = (byte *)((int)in_BX + (int)puVar33);
bVar11 = *pbVar2;
*pbVar2 = *pbVar2 + bVar13;
out(iVar21,iVar16);
in_AF = 9 < (bVar13 & 0xf) | in_AF;
bVar15 = bVar13 + in_AF * '\x06';
uVar17 = *(int *)((int)in_BX + (int)puVar33);
((char *)((int)in_BX + (int)puVar33))[0x45] =
((char *)((int)in_BX + (int)puVar33))[0x45] + (char)((int)iVar21 >> 8);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar12;
uVar17 = CONCAT11((char)((int)iVar16 >> 8),
bVar15 + (0x90 < (bVar15 & 0xf0) |
CARRY1(bVar11,bVar13) | in_AF * (0xf9 < bVar15)) * '`') | uVar17 |
*(int *)((int)in_BX + (int)puVar33);
puVar31[(int)puVar33] = puVar31[(int)puVar33] + (char)iVar21;
}
else {
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
(puVar31 + (int)ppcVar35)[0x7b] = (puVar31 + (int)ppcVar35)[0x7b] + cVar14;
iVar21 = iVar21 + 1;
pbVar2 = (byte *)((int)in_BX + (int)puVar33);
bVar13 = *pbVar2;
*pbVar2 = *pbVar2 + bVar11;
*(char *)((int)in_BX + (int)puVar33) =
*(char *)((int)in_BX + (int)puVar33) + bVar11 + CARRY1(bVar13,bVar11);
pcVar4 = (char *)((int)in_BX + (int)puVar33);
cVar14 = *pcVar4;
*pcVar4 = *pcVar4 + bVar11;
puVar29 = puVar25;
if (SCARRY1(cVar14,bVar11) != *pcVar4 < '\0') goto LAB_1000_018d;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
iVar16 = CONCAT11(cVar19,bVar11);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar11;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar19;
pbVar2 = (byte *)((int)in_BX + (int)puVar33);
bVar13 = *pbVar2;
*pbVar2 = *pbVar2 + bVar11;
bVar15 = *pbVar2;
puVar25[-1] = iVar16;
puVar25[-2] = in_CX;
puVar25[-3] = iVar21;
puVar25[-4] = in_BX;
puVar25[-5] = puVar25;
puVar25[-6] = puVar31;
puVar25[-7] = puVar33;
puVar25[-8] = ppcVar35;
puVar29 = puVar25 + -8;
if (CARRY1(bVar13,bVar11)) {
LAB_1000_01c5_2:
cVar14 = (char)iVar16;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14;
uVar17 = CONCAT11((char)((int)iVar16 >> 8),cVar14 * '\x02');
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + cVar14 * '\x02';
goto LAB_1000_018d;
}
ppcVar35 = (somerndstuff ) * puVar25[-8];
puVar33 = (int *)puVar25[-7];
puVar31 = (undefined *)puVar25[-6];
in_BX = (int *)puVar25[-4];
iVar21 = puVar25[-3];
in_CX = puVar25[-2];
iVar16 = puVar25[-1];
puVar29 = puVar25;
if (bVar15 == 0) goto LAB_1000_01c5_2;
pbVar2 = (byte *)((int)in_BX + (int)puVar33);
bVar11 = *pbVar2;
bVar13 = (byte)iVar16;
*pbVar2 = *pbVar2 + bVar13;
puVar31[(int)puVar33] = (puVar31[(int)puVar33] - (char)in_BX) - CARRY1(bVar11,bVar13);
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
((char *)((int)in_BX + (int)puVar33))[0x42] =
((char *)((int)in_BX + (int)puVar33))[0x42] + (char)iVar21;
*(char *)puVar33 = *(char *)puVar33 + (char)in_BX;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
((char *)((int)in_BX + (int)puVar33))[0x42] =
((char *)((int)in_BX + (int)puVar33))[0x42] + bVar13;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13;
*(char *)((int)in_BX + (int)puVar33) = *(char *)((int)in_BX + (int)puVar33) + bVar13 + 1;
ppcVar35 = somerndstuff + puVar29; //WTF IT DOESN'T WORK?????????????????????????
puVar33 = (int *)puVar25[1];
puVar31 = (undefined *)puVar25[2];
in_BX = (int *)puVar25[4];
iVar21 = puVar25[5];
in_CX = puVar25[6];
uVar17 = puVar25[7];
puVar29 = puVar25 + 8;
puVar28 = puVar25 + 8;
if (iVar16 != -2) goto LAB_1000_018d;
}
iVar16 = (int)in_BX + 1;
bVar13 = (byte)uVar17;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar13;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar13;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar13;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar13;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar13;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar13;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar13;
uVar20 = (undefined)(uVar17 >> 8);
bVar11 = bVar13 * '\x02';
uVar17 = CONCAT11(uVar20,bVar11);
if (CARRY1(bVar13,bVar13)) {
LAB_1000_0276:
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
}
else {
if (CARRY1(bVar13,bVar13)) {
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
goto LAB_1000_0276;
}
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
pcVar4 = (char *)((int)puVar33 + (int)in_BX + 0x31);
*pcVar4 = *pcVar4 + (char)((int)iVar21 >> 8);
pcVar4 = (char *)(iVar16 + (int)puVar33);
*pcVar4 = *pcVar4 + bVar11;
in_CX = in_CX + -1;
puVar34 = puVar33;
if (in_CX != 0 && *pcVar4 != '\0') {
LAB_1000_025f:
cVar14 = (char)uVar17;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)((int)ppcVar35 + -0x75) = *(char *)((int)ppcVar35 + -0x75) + (byte)iVar21;
cVar14 = in(iVar21);
puVar30 = (undefined *)puVar28;
puVar32 = puVar31;
puVar33 = puVar34;
goto code_r0x000103c3;
}
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
bVar11 = bVar11 ^ *(byte *)(iVar16 + (int)puVar33);
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + bVar11;
pbVar2 = (byte *)(iVar16 + (int)puVar33);
bVar36 = CARRY1(*pbVar2,bVar11 + 1);
*pbVar2 = *pbVar2 + bVar11 + 1;
uVar17 = CONCAT11(uVar20,bVar11) + 2;
if (!bVar36) {
ppcVar8 = ppcVar35;
ppcVar35 = (somerndstuff ) * ((int)ppcVar35 + 1);
uVar20 = in(iVar21);
*(undefined *)ppcVar8 = uVar20;
puVar34 = puVar33 + 1;
out(*puVar33,iVar21);
puVar3 = (int *)(iVar16 + (int)puVar34);
*puVar3 = *puVar3 + (int)bVar36 * ((uVar17 & 3) - (*puVar3 & 3));
pcVar4 = (char *)((int)puVar34 + (int)in_BX + -0x5d);
cVar14 = (char)uVar17;
*pcVar4 = *pcVar4 + cVar14;
*(byte *)(iVar16 + (int)ppcVar35) = *(byte *)(iVar16 + (int)ppcVar35) & (byte)iVar21;
*(char *)((int)puVar33 + 7) = *(char *)((int)puVar33 + 7) + (char)(uVar17 >> 8);
*(char *)(puVar33 + 0x28) = *(char *)(puVar33 + 0x28) + (char)((int)in_CX >> 8);
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
puVar31[(int)puVar34] = puVar31[(int)puVar34] + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + cVar14;
goto LAB_1000_025f;
}
}
cVar14 = (char)uVar17;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
puVar30 = (undefined *)((int)puVar28 + -2);
puVar32 = (undefined *)((int)puVar28 + -2);
*(undefined *)((int)puVar28 + -2) = puVar31;
code_r0x000103c3:
*(int *)(puVar30 + -0x3e) = iVar16;
*(int **)(puVar30 + -0x40) = puVar33;
ppcVar35 = (somerndstuff) + puVar30 + -0x42;
ppcVar35[-4] = 0x0;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
ppcVar35[-2] = 0;
*(char *)(iVar16 + (int)puVar33) = *(char *)(iVar16 + (int)puVar33) + cVar14;
pcVar9 = *ppcVar35;
*(undefined *)(puVar30 + -0x44) = 0x3d9;
uVar37 = pcVar9;
uVar22 = (undefined)((long)uVar37 >> 0x10);
iVar21 = (int)uVar37;
puVar34 = (int *)((int)ppcVar35 + 1);
uVar20 = in(uVar22);
*(undefined *)ppcVar35 = uVar20;
puVar3 = (int *)(iVar16 + iVar21);
uVar17 = *puVar3;
int pu00001148 = puVar33;
*puVar3 = *puVar3 - 0x5f;
*(char **)(puVar32 + (int)puVar34 + 0x2b00) =
(char *)((int)puVar33 +
(int)(*(char **)(puVar32 + (int)puVar34 + 0x2b00) + ((0x5e < uVar17) - 1)));
pcVar18 = (char *)((int)puVar33 + -0x4fb9);
pbVar2 = (byte *)(iVar16 + iVar21);
bVar11 = *pbVar2;
*pbVar2 = *pbVar2 + 0xa3;
*(char **)(puVar32 + (int)puVar34 + -32000) =
pcVar18 + (int)(*(char **)(puVar32 + (int)puVar34 + -32000) + (0x5c < bVar11));
pcVar4 = (char *)(iVar16 + iVar21);
cVar14 = *pcVar4;
*pcVar4 = *pcVar4 + '\x01';
if (SCARRY1(cVar14,'\x01') == *pcVar4 < '\0') {
// WARNING: Bad instruction - Truncating control flow here
halt_baddata();
}
do {
*(char *)(iVar16 + iVar21) = *(char *)(iVar16 + iVar21) + (char)pcVar18;
uVar17 = *puVar34;
ppcVar1 = (char **)(puVar32 + (int)puVar34 + 0x1100);
pcVar5 = *ppcVar1;
pcVar6 = *ppcVar1;
*ppcVar1 = pcVar6 + (int)pcVar18 + (uVar17 < 0x5c);
if ((SCARRY2((int)pcVar5,(int)pcVar18) !=
SCARRY2((int)(pcVar6 + (int)pcVar18),(int)(uVar17 < 0x5c))) == (int)*ppcVar1 < 0) {
// WARNING: Bad instruction - Truncating control flow here
// WARNING: Read-only address (ram,0x000100b6) is written
halt_baddata();
}
*(char *)(iVar16 + iVar21) = *(char *)(iVar16 + iVar21) + (char)pcVar18;
pcVar4 = (char *)(iVar16 + iVar21);
*pcVar4 = *pcVar4 + -0x7e;
if (*pcVar4 == '\0') {
return;
}
*(char *)(iVar16 + iVar21) = *(char *)(iVar16 + iVar21) + -0x7e;
pcVar18 = (char *)CONCAT11((char)((int)pcVar18 >> 8),0x82);
pcVar4 = (char *)(iVar16 + iVar21);
*pcVar4 = *pcVar4 + -0x7e;
bVar36 = *pcVar4 == '\0';
while (1) {
if (!bVar36) goto code_r0x00010446;
*(char *)(iVar16 + iVar21) = *(char *)(iVar16 + iVar21) + (char)pcVar18;
*puVar34 = 0xb044;
*(char *)(iVar16 + iVar21) = *(char *)(iVar16 + iVar21) + '\x01';
*(char *)(iVar16 + iVar21) = *(char *)(iVar16 + iVar21) + (char)pcVar18;
pcVar4 = (char *)((int)puVar34 + iVar16 + 0x1148);
cVar14 = (char)((int)pcVar18 >> 8);
*pcVar4 = *pcVar4 + cVar14;
*(int *)(iVar16 + iVar21) = *(int *)(iVar16 + iVar21) + -0x77;
if (in_CX + -1 != 0 && puVar32 + 1 != (undefined *)0x0) break;
puVar32 = puVar32 + 2;
cVar12 = in(0);
pcVar18 = (char *)CONCAT11(cVar14,cVar12);
*(char *)(iVar16 + iVar21) = *(char *)(iVar16 + iVar21) + cVar12;
cVar14 = (char)((int)iVar16 >> 8) + (char)iVar16;
iVar16 = CONCAT11(cVar14,(char)iVar16);
bVar36 = cVar14 == '\0';
puVar3 = puVar34;
puVar34 = puVar34 + 1;
uVar17 = in(uVar22);
*puVar3 = uVar17;
in_CX = in_CX + -2;
if (in_CX == 0 || bVar36) {
code_r0x00010446:
*(int *)(iVar16 + iVar21) = *(int *)(iVar16 + iVar21) + -0x5f;
*(char *)(iVar16 + (int)puVar34) = *(char *)(iVar16 + (int)puVar34) + '\x01';
return;
}
}
*(int *)(iVar16 + iVar21) = *(int *)(iVar16 + iVar21) + 0x11;
in_CX = in_CX + -1;
puVar32 = puVar32 + 1;
} while(0);
}