aboutsummaryrefslogtreecommitdiffstats
path: root/fw/gadgets/gcp_code.thumb.txt
blob: f9aeb2906ba470ece464848049c48249133b46a6 (plain) (blame)
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
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110
7111
7112
7113
7114
7115
7116
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
8168
8169
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189
8190
8191
8192
8193
8194
8195
8196
8197
8198
8199
8200
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213
8214
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244
8245
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278
8279
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289
8290
8291
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
8308
8309
8310
8311
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321
8322
8323
8324
8325
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387
8388
8389
8390
8391
8392
8393
8394
8395
8396
8397
8398
8399
8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
8463
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486
8487
8488
8489
8490
8491
8492
8493
8494
8495
8496
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
8520
8521
8522
8523
8524
8525
8526
8527
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
8541
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598
8599
8600
8601
8602
8603
8604
8605
8606
8607
8608
8609
8610
8611
8612
8613
8614
8615
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631
8632
8633
8634
8635
8636
8637
8638
8639
8640
8641
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651
8652
8653
8654
8655
8656
8657
8658
8659
8660
8661
8662
8663
8664
8665
8666
8667
8668
8669
8670
8671
8672
8673
8674
8675
8676
8677
8678
8679
8680
8681
8682
8683
8684
8685
8686
8687
8688
8689
8690
8691
8692
8693
8694
8695
8696
8697
8698
8699
8700
8701
8702
8703
8704
8705
8706
8707
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717
8718
8719
8720
8721
8722
8723
8724
8725
8726
8727
8728
8729
8730
8731
8732
8733
8734
8735
8736
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746
8747
8748
8749
8750
8751
8752
8753
8754
8755
8756
8757
8758
8759
8760
8761
8762
8763
8764
8765
8766
8767
8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790
8791
8792
8793
8794
8795
8796
8797
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
8866
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
8926
8927
8928
8929
8930
8931
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995
8996
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006
9007
9008
9009
9010
9011
9012
9013
9014
9015
9016
9017
9018
9019
9020
9021
9022
9023
9024
9025
9026
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047
9048
9049
9050
9051
9052
9053
9054
9055
9056
9057
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
9069
9070
9071
9072
9073
9074
9075
9076
9077
9078
9079
9080
9081
9082
9083
9084
9085
9086
9087
9088
9089
9090
9091
9092
9093
9094
9095
9096
9097
9098
9099
9100
9101
9102
9103
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113
9114
9115
9116
9117
9118
9119
9120
9121
9122
9123
9124
9125
9126
9127
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167
9168
9169
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205
9206
9207
9208
9209
9210
9211
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
9229
9230
9231
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257
9258
9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318
9319
9320
9321
9322
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332
9333
9334
9335
9336
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381
9382
9383
9384
9385
9386
9387
9388
9389
9390
9391
9392
9393
9394
9395
9396
9397
9398
9399
9400
9401
9402
9403
9404
9405
9406
9407
9408
9409
9410
9411
9412
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443
9444
9445
9446
9447
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463
9464
9465
9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
9499
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509
9510
9511
9512
9513
9514
9515
9516
9517
9518
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
9534
9535
9536
9537
9538
9539
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
9550
9551
9552
9553
9554
9555
9556
9557
9558
9559
9560
9561
9562
9563
9564
9565
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
9584
9585
9586
9587
9588
9589
9590
9591
9592
9593
9594
9595
9596
9597
9598
9599
9600
9601
9602
9603
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641
9642
9643
9644
9645
9646
9647
9648
9649
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
9677
9678
9679
9680
9681
9682
9683
9684
9685
9686
9687
9688
9689
9690
9691
9692
9693
9694
9695
9696
9697
9698
9699
9700
9701
9702
9703
9704
9705
9706
9707
9708
9709
9710
9711
9712
9713
9714
9715
9716
9717
9718
9719
9720
9721
9722
9723
9724
9725
9726
9727
9728
9729
9730
9731
9732
9733
9734
9735
9736
9737
9738
9739
9740
9741
9742
9743
9744
9745
9746
9747
9748
9749
9750
9751
9752
9753
9754
9755
9756
9757
9758
9759
9760
9761
9762
9763
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
9816
9817
9818
9819
9820
9821
9822
9823
9824
9825
9826
9827
9828
9829
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839
9840
9841
9842
9843
9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
9930
9931
9932
9933
9934
9935
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973
9974
9975
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182
10183
10184
10185
10186
10187
10188
10189
10190
10191
10192
10193
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247
10248
10249
10250
10251
10252
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
10325
10326
10327
10328
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767
10768
10769
10770
10771
10772
10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794
10795
10796
10797
10798
10799
10800
10801
10802
10803
10804
10805
10806
10807
10808
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832
10833
10834
10835
10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910
10911
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
11169
11170
11171
11172
11173
11174
11175
11176
11177
11178
11179
11180
11181
11182
11183
11184
11185
11186
11187
11188
11189
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228
11229
11230
11231
11232
11233
11234
11235
11236
11237
11238
11239
11240
11241
11242
11243
11244
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317
11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357
11358
11359
11360
11361
11362
11363
11364
11365
11366
11367
11368
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489
11490
11491
11492
11493
11494
11495
11496
11497
11498
11499
11500
11501
11502
11503
11504
11505
11506
11507
11508
11509
11510
11511
11512
11513
11514
11515
11516
11517
11518
11519
11520
11521
11522
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555
11556
11557
11558
11559
11560
11561
11562
11563
11564
11565
11566
11567
11568
11569
11570
11571
11572
11573
11574
11575
11576
11577
11578
11579
11580
11581
11582
11583
11584
11585
11586
11587
11588
11589
11590
11591
11592
11593
11594
11595
11596
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
11632
11633
11634
11635
11636
11637
11638
11639
11640
11641
11642
11643
11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
11701
11702
11703
11704
11705
11706
11707
11708
11709
11710
11711
11712
11713
11714
11715
11716
11717
11718
11719
11720
11721
11722
11723
11724
11725
11726
11727
11728
11729
11730
11731
11732
11733
11734
11735
11736
11737
11738
11739
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765
11766
11767
11768
11769
11770
11771
11772
11773
11774
11775
11776
11777
11778
11779
11780
11781
11782
11783
11784
11785
11786
11787
11788
11789
11790
11791
11792
11793
11794
11795
11796
11797
11798
11799
11800
11801
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819
11820
11821
11822
11823
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885
11886
11887
11888
11889
11890
11891
11892
11893
11894
11895
11896
11897
11898
11899
11900
11901
11902
11903
11904
11905
11906
11907
11908
11909
11910
11911
11912
11913
11914
11915
11916
11917
11918
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954
11955
11956
11957
11958
11959
11960
11961
11962
11963
11964
11965
11966
11967
11968
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984
11985
11986
11987
11988
11989
11990
11991
11992
11993
11994
11995
11996
11997
11998
11999
12000
12001
12002
12003
12004
12005
12006
12007
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034
12035
12036
12037
12038
12039
12040
12041
12042
12043
12044
12045
12046
12047
12048
12049
12050
12051
12052
12053
12054
12055
12056
12057
12058
12059
12060
12061
12062
12063
12064
12065
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075
12076
12077
12078
12079
12080
12081
12082
12083
12084
12085
12086
12087
12088
12089
12090
12091
12092
12093
12094
12095
12096
12097
12098
12099
12100
12101
12102
12103
12104
12105
12106
12107
12108
12109
12110
12111
12112
12113
12114
12115
12116
12117
12118
12119
12120
12121
12122
12123
12124
12125
12126
12127
12128
12129
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142
12143
12144
12145
12146
12147
12148
12149
12150
12151
12152
12153
12154
12155
12156
12157
12158
12159
12160
12161
12162
12163
12164
12165
12166
12167
12168
12169
12170
12171
12172
12173
12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
12199
12200
12201
12202
12203
12204
12205
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
12216
12217
12218
12219
12220
12221
12222
12223
12224
12225
12226
12227
12228
12229
12230
12231
12232
12233
12234
12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246
12247
12248
12249
12250
12251
12252
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
12268
12269
12270
12271
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
12325
12326
12327
12328
12329
12330
12331
12332
12333
12334
12335
12336
12337
12338
12339
12340
12341
12342
12343
12344
12345
12346
12347
12348
12349
12350
12351
12352
12353
12354
12355
12356
12357
12358
12359
12360
12361
12362
12363
12364
12365
12366
12367
12368
12369
12370
12371
12372
12373
12374
12375
12376
12377
12378
12379
12380
12381
12382
12383
12384
12385
12386
12387
12388
12389
12390
12391
12392
12393
12394
12395
12396
12397
12398
12399
12400
12401
12402
12403
12404
12405
12406
12407
12408
12409
12410
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
12426
12427
12428
12429
12430
12431
12432
12433
12434
12435
12436
12437
12438
12439
12440
12441
12442
12443
12444
12445
12446
12447
12448
12449
12450
12451
12452
12453
12454
12455
12456
12457
12458
12459
12460
12461
12462
12463
12464
12465
12466
12467
12468
12469
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479
12480
12481
12482
12483
12484
12485
12486
12487
12488
12489
12490
12491
12492
12493
12494
12495
12496
12497
12498
12499
12500
12501
12502
12503
12504
12505
12506
12507
12508
12509
12510
12511
12512
12513
12514
12515
12516
12517
12518
12519
12520
12521
12522
12523
12524
12525
12526
12527
12528
12529
12530
12531
12532
12533
12534
12535
12536
12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
12547
12548
12549
12550
12551
12552
12553
12554
12555
12556
12557
12558
12559
12560
12561
12562
12563
12564
12565
12566
12567
12568
12569
12570
12571
12572
12573
12574
12575
12576
12577
12578
12579
12580
12581
12582
12583
12584
12585
12586
12587
12588
12589
12590
12591
12592
12593
12594
12595
12596
12597
12598
12599
12600
12601
12602
12603
12604
12605
12606
12607
12608
12609
12610
12611
12612
12613
12614
12615
12616
12617
12618
12619
12620
12621
12622
12623
12624
12625
12626
12627
12628
12629
12630
12631
12632
12633
12634
12635
12636
12637
12638
12639
12640
12641
12642
12643
12644
12645
12646
12647
12648
12649
12650
12651
12652
12653
12654
12655
12656
12657
12658
12659
12660
12661
12662
12663
12664
12665
12666
12667
12668
12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680
12681
12682
12683
12684
12685
12686
12687
12688
12689
12690
12691
12692
12693
12694
12695
12696
12697
12698
12699
12700
12701
12702
12703
12704
12705
12706
12707
12708
12709
12710
12711
12712
12713
12714
12715
12716
12717
12718
12719
12720
12721
12722
12723
12724
12725
12726
12727
12728
12729
12730
12731
12732
12733
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
12745
12746
12747
12748
12749
12750
12751
12752
12753
12754
12755
12756
12757
12758
12759
12760
12761
12762
12763
12764
12765
12766
12767
12768
12769
12770
12771
12772
12773
12774
12775
12776
12777
12778
12779
12780
12781
12782
12783
12784
12785
12786
12787
12788
12789
12790
12791
12792
12793
12794
12795
12796
12797
12798
12799
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
12839
12840
12841
12842
12843
12844
12845
12846
12847
12848
12849
12850
12851
12852
12853
12854
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
12909
12910
12911
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
12964
12965
12966
12967
12968
12969
12970
12971
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993
12994
12995
12996
12997
12998
12999
13000
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
13056
13057
13058
13059
13060
13061
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
13260
13261
13262
13263
13264
13265
13266
13267
13268
13269
13270
13271
13272
13273
13274
13275
13276
13277
13278
13279
13280
13281
13282
13283
13284
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
13320
13321
13322
13323
13324
13325
13326
13327
13328
13329
13330
13331
13332
13333
13334
13335
13336
13337
13338
13339
13340
13341
13342
13343
13344
13345
13346
13347
13348
13349
13350
13351
13352
13353
13354
13355
13356
13357
13358
13359
13360
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371
13372
13373
13374
13375
13376
13377
13378
13379
13380
13381
13382
13383
13384
13385
13386
13387
13388
13389
13390
13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
13428
13429
13430
13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
13448
13449
13450
13451
13452
13453
13454
13455
13456
13457
13458
13459
13460
13461
13462
13463
13464
13465
13466
13467
13468
13469
13470
13471
13472
13473
13474
13475
13476
13477
13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521
13522
13523
13524
13525
13526
13527
13528
13529
13530
13531
13532
13533
13534
13535
13536
13537
13538
13539
13540
13541
13542
13543
13544
13545
13546
13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
13559
13560
13561
13562
13563
13564
13565
13566
13567
13568
13569
13570
13571
13572
13573
13574
13575
13576
13577
13578
13579
13580
13581
13582
13583
13584
13585
13586
13587
13588
13589
13590
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601
13602
13603
13604
13605
13606
13607
13608
13609
13610
13611
13612
13613
13614
13615
13616
13617
13618
13619
13620
13621
13622
13623
13624
13625
13626
13627
13628
13629
13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
13654
13655
13656
13657
13658
13659
13660
13661
13662
13663
13664
13665
13666
13667
13668
13669
13670
13671
13672
13673
13674
13675
13676
13677
13678
13679
13680
13681
13682
13683
13684
13685
13686
13687
13688
13689
13690
13691
13692
13693
13694
13695
13696
13697
13698
13699
13700
13701
13702
13703
13704
13705
13706
13707
13708
13709
13710
13711
13712
13713
13714
13715
13716
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727
13728
13729
13730
13731
13732
13733
13734
13735
13736
13737
13738
13739
13740
13741
13742
13743
13744
13745
13746
13747
13748
13749
13750
13751
13752
13753
13754
13755
13756
13757
13758
13759
13760
13761
13762
13763
13764
13765
13766
13767
13768
13769
13770
13771
13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
13809
13810
13811
13812
13813
13814
13815
13816
13817
13818
13819
13820
13821
13822
13823
13824
13825
13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
13842
13843
13844
13845
13846
13847
13848
13849
13850
13851
13852
13853
13854
13855
13856
13857
13858
13859
13860
13861
13862
13863
13864
13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
13891
13892
13893
13894
13895
13896
13897
13898
13899
13900
13901
13902
13903
13904
13905
13906
13907
13908
13909
13910
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
13948
13949
13950
13951
13952
13953
13954
13955
13956
13957
13958
13959
13960
13961
13962
13963
13964
13965
13966
13967
13968
13969
13970
13971
13972
13973
13974
13975
13976
13977
13978
13979
13980
13981
13982
13983
13984
13985
13986
13987
13988
13989
13990
13991
13992
13993
13994
13995
13996
13997
13998
13999
14000
14001
14002
14003
14004
14005
14006
14007
14008
14009
14010
14011
14012
14013
14014
14015
14016
14017
14018
14019
14020
14021
14022
14023
14024
14025
14026
14027
14028
14029
14030
14031
14032
14033
14034
14035
14036
14037
14038
14039
14040
14041
14042
14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054
14055
14056
14057
14058
14059
14060
14061
14062
14063
14064
14065
14066
14067
14068
14069
14070
14071
14072
14073
14074
14075
14076
14077
14078
14079
14080
14081
14082
14083
14084
14085
14086
14087
14088
14089
14090
14091
14092
14093
14094
14095
14096
14097
14098
14099
14100
14101
14102
14103
14104
14105
14106
14107
14108
14109
14110
14111
14112
14113
14114
14115
14116
14117
14118
14119
14120
14121
14122
14123
14124
14125
14126
14127
14128
14129
14130
14131
14132
14133
14134
14135
14136
14137
14138
14139
14140
14141
14142
14143
14144
14145
14146
14147
14148
14149
14150
14151
14152
14153
14154
14155
14156
14157
14158
14159
14160
14161
14162
14163
14164
14165
14166
14167
14168
14169
14170
14171
14172
14173
14174
14175
14176
14177
14178
14179
14180
14181
14182
14183
14184
14185
14186
14187
14188
14189
14190
14191
14192
14193
14194
14195
14196
14197
14198
14199
14200
14201
14202
14203
14204
14205
14206
14207
14208
14209
14210
14211
14212
14213
14214
14215
14216
14217
14218
14219
14220
14221
14222
14223
14224
14225
14226
14227
14228
14229
14230
14231
14232
14233
14234
14235
14236
14237
14238
14239
14240
14241
14242
14243
14244
14245
14246
14247
14248
14249
14250
14251
14252
14253
14254
14255
14256
14257
14258
14259
14260
14261
14262
14263
14264
14265
14266
14267
14268
14269
14270
14271
14272
14273
14274
14275
14276
14277
14278
14279
14280
14281
14282
14283
14284
14285
14286
14287
14288
14289
14290
14291
14292
14293
14294
14295
14296
14297
14298
14299
14300
14301
14302
14303
14304
14305
14306
14307
14308
14309
14310
14311
14312
14313
14314
14315
14316
14317
14318
14319
14320
14321
14322
14323
14324
14325
14326
14327
14328
14329
14330
14331
14332
14333
14334
14335
00400000  0000         movs r0, r0                        
00400002  0000         movs r0, r0                        
00400004  0000         movs r0, r0                        
00400006  0000         movs r0, r0                        
00400008  0000         movs r0, r0                        
0040000a  0000         movs r0, r0                        
0040000c  0000         movs r0, r0                        
0040000e  0000         movs r0, r0                        
00400010  0000         movs r0, r0                        
00400012  0000         movs r0, r0                        
00400014  0000         movs r0, r0                        
00400016  0000         movs r0, r0                        
00400018  0000         movs r0, r0                        
0040001a  0000         movs r0, r0                        
0040001c  0000         movs r0, r0                        
0040001e  0000         movs r0, r0                        
00400020  0000         movs r0, r0                        
00400022  0000         movs r0, r0                        
00400024  0000         movs r0, r0                        
00400026  0000         movs r0, r0                        
00400028  0000         movs r0, r0                        
0040002a  0000         movs r0, r0                        
0040002c  0000         movs r0, r0                        
0040002e  0000         movs r0, r0                        
00400030  0000         movs r0, r0                        
00400032  0000         movs r0, r0                        
00400034  0000         movs r0, r0                        
00400036  0000         movs r0, r0                        
00400038  0000         movs r0, r0                        
0040003a  0000         movs r0, r0                        
0040003c  0000         movs r0, r0                        
0040003e  0000         movs r0, r0                        
00400040  0000         movs r0, r0                        
00400042  0000         movs r0, r0                        
00400044  0000         movs r0, r0                        
00400046  0000         movs r0, r0                        
00400048  0000         movs r0, r0                        
0040004a  0000         movs r0, r0                        
0040004c  0000         movs r0, r0                        
0040004e  0000         movs r0, r0                        
00400050  0000         movs r0, r0                        
00400052  0000         movs r0, r0                        
00400054  0000         movs r0, r0                        
00400056  0000         movs r0, r0                        
00400058  0000         movs r0, r0                        
0040005a  0000         movs r0, r0                        
0040005c  0000         movs r0, r0                        
0040005e  0000         movs r0, r0                        
00400060  0000         movs r0, r0                        
00400062  0000         movs r0, r0                        
00400064  0000         movs r0, r0                        
00400066  0000         movs r0, r0                        
00400068  0000         movs r0, r0                        
0040006a  0000         movs r0, r0                        
0040006c  0000         movs r0, r0                        
0040006e  0000         movs r0, r0                        
00400070  0000         movs r0, r0                        
00400072  0000         movs r0, r0                        
00400074  0000         movs r0, r0                        
00400076  0000         movs r0, r0                        
00400078  0000         movs r0, r0                        
0040007a  0000         movs r0, r0                        
0040007c  0000         movs r0, r0                        
0040007e  0000         movs r0, r0                        
00400080  0000         movs r0, r0                        
00400082  0000         movs r0, r0                        
00400084  0000         movs r0, r0                        
00400086  0000         movs r0, r0                        
00400088  0000         movs r0, r0                        
0040008a  0000         movs r0, r0                        
0040008c  0000         movs r0, r0                        
0040008e  0000         movs r0, r0                        
00400090  0000         movs r0, r0                        
00400092  0000         movs r0, r0                        
00400094  0000         movs r0, r0                        
00400096  0000         movs r0, r0                        
00400098  0000         movs r0, r0                        
0040009a  0000         movs r0, r0                        
0040009c  0000         movs r0, r0                        
0040009e  0000         movs r0, r0                        
004000a0  0000         movs r0, r0                        
004000a2  0000         movs r0, r0                        
004000a4  0000         movs r0, r0                        
004000a6  0000         movs r0, r0                        
004000a8  0000         movs r0, r0                        
004000aa  0000         movs r0, r0                        
004000ac  0000         movs r0, r0                        
004000ae  0000         movs r0, r0                        
004000b0  0000         movs r0, r0                        
004000b2  0000         movs r0, r0                        
004000b4  0000         movs r0, r0                        
004000b6  0000         movs r0, r0                        
004000b8  0000         movs r0, r0                        
004000ba  0000         movs r0, r0                        
004000bc  0000         movs r0, r0                        
004000be  0000         movs r0, r0                        
004000c0  0000         movs r0, r0                        
004000c2  0000         movs r0, r0                        
004000c4  0000         movs r0, r0                        
004000c6  0000         movs r0, r0                        
004000c8  0000         movs r0, r0                        
004000ca  0000         movs r0, r0                        
004000cc  0000         movs r0, r0                        
004000ce  0000         movs r0, r0                        
004000d0  0000         movs r0, r0                        
004000d2  0000         movs r0, r0                        
004000d4  0000         movs r0, r0                        
004000d6  0000         movs r0, r0                        
004000d8  0000         movs r0, r0                        
004000da  0000         movs r0, r0                        
004000dc  0000         movs r0, r0                        
004000de  0000         movs r0, r0                        
004000e0  0000         movs r0, r0                        
004000e2  0000         movs r0, r0                        
004000e4  0000         movs r0, r0                        
004000e6  0000         movs r0, r0                        
004000e8  0000         movs r0, r0                        
004000ea  0000         movs r0, r0                        
004000ec  0000         movs r0, r0                        
004000ee  0000         movs r0, r0                        
004000f0  0000         movs r0, r0                        
004000f2  0000         movs r0, r0                        
004000f4  0000         movs r0, r0                        
004000f6  0000         movs r0, r0                        
004000f8  0000         movs r0, r0                        
004000fa  0000         movs r0, r0                        
004000fc  0000         movs r0, r0                        
004000fe  0000         movs r0, r0                        
00400100  0002         lsls r0, r0, #8                    
00400102  0000         movs r0, r0                        
00400104  0000         movs r0, r0                        
00400106  4000         lsls r0, r0, #1                    
00400108  0070         strb r0, [r0]                      
0040010a  4000         lsls r0, r0, #1                    
0040010c  646e         ldr r4, [r4, #0x64]                
0040010e  4100         lsls r1, r0, #1                    
00400110  b860         str r0, [r7, #8]                   
00400112  4000         lsls r0, r0, #1                    
00400114  5441         adcs r4, r2                        
00400116  0000         movs r0, r0                        
00400118  0000         movs r0, r0                        
0040011a  0000         movs r0, r0                        
0040011c  0060         str r0, [r0]                       
0040011e  4100         lsls r1, r0, #1                    
00400120  4c61         str r4, [r1, #0x14]                
00400122  4000         lsls r0, r0, #1                    
00400124  0000         movs r0, r0                        
00400126  0000         movs r0, r0                        
00400128  0000         movs r0, r0                        
0040012a  0000         movs r0, r0                        
0040012c  0000         movs r0, r0                        
0040012e  0000         movs r0, r0                        
00400130  0000         movs r0, r0                        
00400132  0000         movs r0, r0                        
00400134  0000         movs r0, r0                        
00400136  0000         movs r0, r0                        
00400138  0000         movs r0, r0                        
0040013a  0000         movs r0, r0                        
0040013c  0000         movs r0, r0                        
0040013e  0000         movs r0, r0                        
00400140  0000         movs r0, r0                        
00400142  0000         movs r0, r0                        
00400144  0000         movs r0, r0                        
00400146  0000         movs r0, r0                        
00400148  0000         movs r0, r0                        
0040014a  0000         movs r0, r0                        
0040014c  0000         movs r0, r0                        
0040014e  0000         movs r0, r0                        
00400150  0000         movs r0, r0                        
00400152  0000         movs r0, r0                        
00400154  0000         movs r0, r0                        
00400156  0000         movs r0, r0                        
00400158  0000         movs r0, r0                        
0040015a  0000         movs r0, r0                        
0040015c  0000         movs r0, r0                        
0040015e  0000         movs r0, r0                        
00400160  0000         movs r0, r0                        
00400162  0000         movs r0, r0                        
00400164  0000         movs r0, r0                        
00400166  0000         movs r0, r0                        
00400168  0000         movs r0, r0                        
0040016a  0000         movs r0, r0                        
0040016c  0000         movs r0, r0                        
0040016e  0000         movs r0, r0                        
00400170  0000         movs r0, r0                        
00400172  0000         movs r0, r0                        
00400174  0000         movs r0, r0                        
00400176  0000         movs r0, r0                        
00400178  0000         movs r0, r0                        
0040017a  0000         movs r0, r0                        
0040017c  0000         movs r0, r0                        
0040017e  0000         movs r0, r0                        
00400180  0000         movs r0, r0                        
00400182  0000         movs r0, r0                        
00400184  0000         movs r0, r0                        
00400186  0000         movs r0, r0                        
00400188  0000         movs r0, r0                        
0040018a  0000         movs r0, r0                        
0040018c  0000         movs r0, r0                        
0040018e  0000         movs r0, r0                        
00400190  0000         movs r0, r0                        
00400192  0000         movs r0, r0                        
00400194  0000         movs r0, r0                        
00400196  0000         movs r0, r0                        
00400198  0000         movs r0, r0                        
0040019a  0000         movs r0, r0                        
0040019c  0000         movs r0, r0                        
0040019e  0000         movs r0, r0                        
004001a0  0000         movs r0, r0                        
004001a2  0000         movs r0, r0                        
004001a4  0000         movs r0, r0                        
004001a6  0000         movs r0, r0                        
004001a8  0000         movs r0, r0                        
004001aa  0000         movs r0, r0                        
004001ac  0000         movs r0, r0                        
004001ae  0000         movs r0, r0                        
004001b0  0000         movs r0, r0                        
004001b2  0000         movs r0, r0                        
004001b4  0000         movs r0, r0                        
004001b6  0000         movs r0, r0                        
004001b8  0000         movs r0, r0                        
004001ba  0000         movs r0, r0                        
004001bc  0000         movs r0, r0                        
004001be  0000         movs r0, r0                        
004001c0  0000         movs r0, r0                        
004001c2  0000         movs r0, r0                        
004001c4  0000         movs r0, r0                        
004001c6  0000         movs r0, r0                        
004001c8  0000         movs r0, r0                        
004001ca  0000         movs r0, r0                        
004001cc  0000         movs r0, r0                        
004001ce  0000         movs r0, r0                        
004001d0  0000         movs r0, r0                        
004001d2  0000         movs r0, r0                        
004001d4  0000         movs r0, r0                        
004001d6  0000         movs r0, r0                        
004001d8  0000         movs r0, r0                        
004001da  0000         movs r0, r0                        
004001dc  0000         movs r0, r0                        
004001de  0000         movs r0, r0                        
004001e0  0000         movs r0, r0                        
004001e2  0000         movs r0, r0                        
004001e4  0000         movs r0, r0                        
004001e6  0000         movs r0, r0                        
004001e8  0000         movs r0, r0                        
004001ea  0000         movs r0, r0                        
004001ec  0000         movs r0, r0                        
004001ee  0000         movs r0, r0                        
004001f0  0000         movs r0, r0                        
004001f2  0000         movs r0, r0                        
004001f4  0000         movs r0, r0                        
004001f6  0000         movs r0, r0                        
004001f8  0000         movs r0, r0                        
004001fa  0000         movs r0, r0                        
004001fc  0000         movs r0, r0                        
004001fe  0000         movs r0, r0                        
00400200  0000         movs r0, r0                        
00400202  0000         movs r0, r0                        
00400204  0000         movs r0, r0                        
00400206  0000         movs r0, r0                        
00400208  0000         movs r0, r0                        
0040020a  0000         movs r0, r0                        
0040020c  0000         movs r0, r0                        
0040020e  0000         movs r0, r0                        
00400210  0000         movs r0, r0                        
00400212  0000         movs r0, r0                        
00400214  0000         movs r0, r0                        
00400216  0000         movs r0, r0                        
00400218  0000         movs r0, r0                        
0040021a  0000         movs r0, r0                        
0040021c  0000         movs r0, r0                        
0040021e  0000         movs r0, r0                        
00400220  0000         movs r0, r0                        
00400222  0000         movs r0, r0                        
00400224  0000         movs r0, r0                        
00400226  0000         movs r0, r0                        
00400228  0000         movs r0, r0                        
0040022a  0000         movs r0, r0                        
0040022c  0000         movs r0, r0                        
0040022e  0000         movs r0, r0                        
00400230  0000         movs r0, r0                        
00400232  0000         movs r0, r0                        
00400234  0000         movs r0, r0                        
00400236  0000         movs r0, r0                        
00400238  0000         movs r0, r0                        
0040023a  0000         movs r0, r0                        
0040023c  0000         movs r0, r0                        
0040023e  0000         movs r0, r0                        
00400240  0000         movs r0, r0                        
00400242  0000         movs r0, r0                        
00400244  0000         movs r0, r0                        
00400246  0000         movs r0, r0                        
00400248  0000         movs r0, r0                        
0040024a  0000         movs r0, r0                        
0040024c  0000         movs r0, r0                        
0040024e  0000         movs r0, r0                        
00400250  0000         movs r0, r0                        
00400252  0000         movs r0, r0                        
00400254  0000         movs r0, r0                        
00400256  0000         movs r0, r0                        
00400258  0000         movs r0, r0                        
0040025a  0000         movs r0, r0                        
0040025c  0000         movs r0, r0                        
0040025e  0000         movs r0, r0                        
00400260  0000         movs r0, r0                        
00400262  0000         movs r0, r0                        
00400264  0000         movs r0, r0                        
00400266  0000         movs r0, r0                        
00400268  0000         movs r0, r0                        
0040026a  0000         movs r0, r0                        
0040026c  0000         movs r0, r0                        
0040026e  0000         movs r0, r0                        
00400270  0000         movs r0, r0                        
00400272  0000         movs r0, r0                        
00400274  0000         movs r0, r0                        
00400276  0000         movs r0, r0                        
00400278  0000         movs r0, r0                        
0040027a  0000         movs r0, r0                        
0040027c  0000         movs r0, r0                        
0040027e  0000         movs r0, r0                        
00400280  0000         movs r0, r0                        
00400282  0000         movs r0, r0                        
00400284  0000         movs r0, r0                        
00400286  0000         movs r0, r0                        
00400288  0000         movs r0, r0                        
0040028a  0000         movs r0, r0                        
0040028c  0000         movs r0, r0                        
0040028e  0000         movs r0, r0                        
00400290  0000         movs r0, r0                        
00400292  0000         movs r0, r0                        
00400294  0000         movs r0, r0                        
00400296  0000         movs r0, r0                        
00400298  0000         movs r0, r0                        
0040029a  0000         movs r0, r0                        
0040029c  0000         movs r0, r0                        
0040029e  0000         movs r0, r0                        
004002a0  0000         movs r0, r0                        
004002a2  0000         movs r0, r0                        
004002a4  0000         movs r0, r0                        
004002a6  0000         movs r0, r0                        
004002a8  0000         movs r0, r0                        
004002aa  0000         movs r0, r0                        
004002ac  0000         movs r0, r0                        
004002ae  0000         movs r0, r0                        
004002b0  0000         movs r0, r0                        
004002b2  0000         movs r0, r0                        
004002b4  0000         movs r0, r0                        
004002b6  0000         movs r0, r0                        
004002b8  0000         movs r0, r0                        
004002ba  0000         movs r0, r0                        
004002bc  0000         movs r0, r0                        
004002be  0000         movs r0, r0                        
004002c0  0000         movs r0, r0                        
004002c2  0000         movs r0, r0                        
004002c4  0000         movs r0, r0                        
004002c6  0000         movs r0, r0                        
004002c8  0000         movs r0, r0                        
004002ca  0000         movs r0, r0                        
004002cc  0000         movs r0, r0                        
004002ce  0000         movs r0, r0                        
004002d0  0000         movs r0, r0                        
004002d2  0000         movs r0, r0                        
004002d4  0000         movs r0, r0                        
004002d6  0000         movs r0, r0                        
004002d8  0000         movs r0, r0                        
004002da  0000         movs r0, r0                        
004002dc  0000         movs r0, r0                        
004002de  0000         movs r0, r0                        
004002e0  0000         movs r0, r0                        
004002e2  0000         movs r0, r0                        
004002e4  0000         movs r0, r0                        
004002e6  0000         movs r0, r0                        
004002e8  0000         movs r0, r0                        
004002ea  0000         movs r0, r0                        
004002ec  0000         movs r0, r0                        
004002ee  0000         movs r0, r0                        
004002f0  0000         movs r0, r0                        
004002f2  0000         movs r0, r0                        
004002f4  0000         movs r0, r0                        
004002f6  0000         movs r0, r0                        
004002f8  0000         movs r0, r0                        
004002fa  0000         movs r0, r0                        
004002fc  0000         movs r0, r0                        
004002fe  0000         movs r0, r0                        
00400300  0000         movs r0, r0                        
00400302  0000         movs r0, r0                        
00400304  0000         movs r0, r0                        
00400306  0000         movs r0, r0                        
00400308  0000         movs r0, r0                        
0040030a  0000         movs r0, r0                        
0040030c  0000         movs r0, r0                        
0040030e  0000         movs r0, r0                        
00400310  0000         movs r0, r0                        
00400312  0000         movs r0, r0                        
00400314  0000         movs r0, r0                        
00400316  0000         movs r0, r0                        
00400318  0000         movs r0, r0                        
0040031a  0000         movs r0, r0                        
0040031c  0000         movs r0, r0                        
0040031e  0000         movs r0, r0                        
00400320  0000         movs r0, r0                        
00400322  0000         movs r0, r0                        
00400324  0000         movs r0, r0                        
00400326  0000         movs r0, r0                        
00400328  0000         movs r0, r0                        
0040032a  0000         movs r0, r0                        
0040032c  0000         movs r0, r0                        
0040032e  0000         movs r0, r0                        
00400330  0000         movs r0, r0                        
00400332  0000         movs r0, r0                        
00400334  0000         movs r0, r0                        
00400336  0000         movs r0, r0                        
00400338  0000         movs r0, r0                        
0040033a  0000         movs r0, r0                        
0040033c  0000         movs r0, r0                        
0040033e  0000         movs r0, r0                        
00400340  0000         movs r0, r0                        
00400342  0000         movs r0, r0                        
00400344  0000         movs r0, r0                        
00400346  0000         movs r0, r0                        
00400348  0000         movs r0, r0                        
0040034a  0000         movs r0, r0                        
0040034c  0000         movs r0, r0                        
0040034e  0000         movs r0, r0                        
00400350  0000         movs r0, r0                        
00400352  0000         movs r0, r0                        
00400354  0000         movs r0, r0                        
00400356  0000         movs r0, r0                        
00400358  0000         movs r0, r0                        
0040035a  0000         movs r0, r0                        
0040035c  0000         movs r0, r0                        
0040035e  0000         movs r0, r0                        
00400360  0000         movs r0, r0                        
00400362  0000         movs r0, r0                        
00400364  0000         movs r0, r0                        
00400366  0000         movs r0, r0                        
00400368  0000         movs r0, r0                        
0040036a  0000         movs r0, r0                        
0040036c  0000         movs r0, r0                        
0040036e  0000         movs r0, r0                        
00400370  0000         movs r0, r0                        
00400372  0000         movs r0, r0                        
00400374  0000         movs r0, r0                        
00400376  0000         movs r0, r0                        
00400378  0000         movs r0, r0                        
0040037a  0000         movs r0, r0                        
0040037c  0000         movs r0, r0                        
0040037e  0000         movs r0, r0                        
00400380  0000         movs r0, r0                        
00400382  0000         movs r0, r0                        
00400384  0000         movs r0, r0                        
00400386  0000         movs r0, r0                        
00400388  0000         movs r0, r0                        
0040038a  0000         movs r0, r0                        
0040038c  0000         movs r0, r0                        
0040038e  0000         movs r0, r0                        
00400390  0000         movs r0, r0                        
00400392  0000         movs r0, r0                        
00400394  0000         movs r0, r0                        
00400396  0000         movs r0, r0                        
00400398  0000         movs r0, r0                        
0040039a  0000         movs r0, r0                        
0040039c  0000         movs r0, r0                        
0040039e  0000         movs r0, r0                        
004003a0  0000         movs r0, r0                        
004003a2  0000         movs r0, r0                        
004003a4  0000         movs r0, r0                        
004003a6  0000         movs r0, r0                        
004003a8  0000         movs r0, r0                        
004003aa  0000         movs r0, r0                        
004003ac  0000         movs r0, r0                        
004003ae  0000         movs r0, r0                        
004003b0  0000         movs r0, r0                        
004003b2  0000         movs r0, r0                        
004003b4  0000         movs r0, r0                        
004003b6  0000         movs r0, r0                        
004003b8  0000         movs r0, r0                        
004003ba  0000         movs r0, r0                        
004003bc  0000         movs r0, r0                        
004003be  0000         movs r0, r0                        
004003c0  0000         movs r0, r0                        
004003c2  0000         movs r0, r0                        
004003c4  0000         movs r0, r0                        
004003c6  0000         movs r0, r0                        
004003c8  0000         movs r0, r0                        
004003ca  0000         movs r0, r0                        
004003cc  0000         movs r0, r0                        
004003ce  0000         movs r0, r0                        
004003d0  0000         movs r0, r0                        
004003d2  0000         movs r0, r0                        
004003d4  0000         movs r0, r0                        
004003d6  0000         movs r0, r0                        
004003d8  0000         movs r0, r0                        
004003da  0000         movs r0, r0                        
004003dc  0000         movs r0, r0                        
004003de  0000         movs r0, r0                        
004003e0  0000         movs r0, r0                        
004003e2  0000         movs r0, r0                        
004003e4  0000         movs r0, r0                        
004003e6  0000         movs r0, r0                        
004003e8  0000         movs r0, r0                        
004003ea  0000         movs r0, r0                        
004003ec  0000         movs r0, r0                        
004003ee  0000         movs r0, r0                        
004003f0  0000         movs r0, r0                        
004003f2  0000         movs r0, r0                        
004003f4  0000         movs r0, r0                        
004003f6  0000         movs r0, r0                        
004003f8  0000         movs r0, r0                        
004003fa  0000         movs r0, r0                        
004003fc  0000         movs r0, r0                        
004003fe  0000         movs r0, r0                        
00400400  0000         movs r0, r0                        
00400402  0000         movs r0, r0                        
00400404  0000         movs r0, r0                        
00400406  0000         movs r0, r0                        
00400408  0000         movs r0, r0                        
0040040a  0000         movs r0, r0                        
0040040c  0000         movs r0, r0                        
0040040e  0000         movs r0, r0                        
00400410  0000         movs r0, r0                        
00400412  0000         movs r0, r0                        
00400414  0000         movs r0, r0                        
00400416  0000         movs r0, r0                        
00400418  0000         movs r0, r0                        
0040041a  0000         movs r0, r0                        
0040041c  0000         movs r0, r0                        
0040041e  0000         movs r0, r0                        
00400420  0000         movs r0, r0                        
00400422  0000         movs r0, r0                        
00400424  0000         movs r0, r0                        
00400426  0000         movs r0, r0                        
00400428  0000         movs r0, r0                        
0040042a  0000         movs r0, r0                        
0040042c  0000         movs r0, r0                        
0040042e  0000         movs r0, r0                        
00400430  0000         movs r0, r0                        
00400432  0000         movs r0, r0                        
00400434  0000         movs r0, r0                        
00400436  0000         movs r0, r0                        
00400438  0000         movs r0, r0                        
0040043a  0000         movs r0, r0                        
0040043c  0000         movs r0, r0                        
0040043e  0000         movs r0, r0                        
00400440  0000         movs r0, r0                        
00400442  0000         movs r0, r0                        
00400444  0000         movs r0, r0                        
00400446  0000         movs r0, r0                        
00400448  0000         movs r0, r0                        
0040044a  0000         movs r0, r0                        
0040044c  0000         movs r0, r0                        
0040044e  0000         movs r0, r0                        
00400450  0000         movs r0, r0                        
00400452  0000         movs r0, r0                        
00400454  0000         movs r0, r0                        
00400456  0000         movs r0, r0                        
00400458  0000         movs r0, r0                        
0040045a  0000         movs r0, r0                        
0040045c  0000         movs r0, r0                        
0040045e  0000         movs r0, r0                        
00400460  0000         movs r0, r0                        
00400462  0000         movs r0, r0                        
00400464  0000         movs r0, r0                        
00400466  0000         movs r0, r0                        
00400468  0000         movs r0, r0                        
0040046a  0000         movs r0, r0                        
0040046c  0000         movs r0, r0                        
0040046e  0000         movs r0, r0                        
00400470  0000         movs r0, r0                        
00400472  0000         movs r0, r0                        
00400474  0000         movs r0, r0                        
00400476  0000         movs r0, r0                        
00400478  0000         movs r0, r0                        
0040047a  0000         movs r0, r0                        
0040047c  0000         movs r0, r0                        
0040047e  0000         movs r0, r0                        
00400480  0000         movs r0, r0                        
00400482  0000         movs r0, r0                        
00400484  0000         movs r0, r0                        
00400486  0000         movs r0, r0                        
00400488  0000         movs r0, r0                        
0040048a  0000         movs r0, r0                        
0040048c  0000         movs r0, r0                        
0040048e  0000         movs r0, r0                        
00400490  0000         movs r0, r0                        
00400492  0000         movs r0, r0                        
00400494  0000         movs r0, r0                        
00400496  0000         movs r0, r0                        
00400498  0000         movs r0, r0                        
0040049a  0000         movs r0, r0                        
0040049c  0000         movs r0, r0                        
0040049e  0000         movs r0, r0                        
004004a0  0000         movs r0, r0                        
004004a2  0000         movs r0, r0                        
004004a4  0000         movs r0, r0                        
004004a6  0000         movs r0, r0                        
004004a8  0000         movs r0, r0                        
004004aa  0000         movs r0, r0                        
004004ac  0000         movs r0, r0                        
004004ae  0000         movs r0, r0                        
004004b0  0000         movs r0, r0                        
004004b2  0000         movs r0, r0                        
004004b4  0000         movs r0, r0                        
004004b6  0000         movs r0, r0                        
004004b8  0000         movs r0, r0                        
004004ba  0000         movs r0, r0                        
004004bc  0000         movs r0, r0                        
004004be  0000         movs r0, r0                        
004004c0  0000         movs r0, r0                        
004004c2  0000         movs r0, r0                        
004004c4  0000         movs r0, r0                        
004004c6  0000         movs r0, r0                        
004004c8  0000         movs r0, r0                        
004004ca  0000         movs r0, r0                        
004004cc  0000         movs r0, r0                        
004004ce  0000         movs r0, r0                        
004004d0  0000         movs r0, r0                        
004004d2  0000         movs r0, r0                        
004004d4  0000         movs r0, r0                        
004004d6  0000         movs r0, r0                        
004004d8  0000         movs r0, r0                        
004004da  0000         movs r0, r0                        
004004dc  0000         movs r0, r0                        
004004de  0000         movs r0, r0                        
004004e0  0000         movs r0, r0                        
004004e2  0000         movs r0, r0                        
004004e4  0000         movs r0, r0                        
004004e6  0000         movs r0, r0                        
004004e8  0000         movs r0, r0                        
004004ea  0000         movs r0, r0                        
004004ec  0000         movs r0, r0                        
004004ee  0000         movs r0, r0                        
004004f0  0000         movs r0, r0                        
004004f2  0000         movs r0, r0                        
004004f4  0000         movs r0, r0                        
004004f6  0000         movs r0, r0                        
004004f8  0000         movs r0, r0                        
004004fa  0000         movs r0, r0                        
004004fc  0000         movs r0, r0                        
004004fe  0000         movs r0, r0                        
00400500  0000         movs r0, r0                        
00400502  0000         movs r0, r0                        
00400504  0000         movs r0, r0                        
00400506  0000         movs r0, r0                        
00400508  0000         movs r0, r0                        
0040050a  0000         movs r0, r0                        
0040050c  0000         movs r0, r0                        
0040050e  0000         movs r0, r0                        
00400510  0000         movs r0, r0                        
00400512  0000         movs r0, r0                        
00400514  0000         movs r0, r0                        
00400516  0000         movs r0, r0                        
00400518  0000         movs r0, r0                        
0040051a  0000         movs r0, r0                        
0040051c  0000         movs r0, r0                        
0040051e  0000         movs r0, r0                        
00400520  0000         movs r0, r0                        
00400522  0000         movs r0, r0                        
00400524  0000         movs r0, r0                        
00400526  0000         movs r0, r0                        
00400528  0000         movs r0, r0                        
0040052a  0000         movs r0, r0                        
0040052c  0000         movs r0, r0                        
0040052e  0000         movs r0, r0                        
00400530  0000         movs r0, r0                        
00400532  0000         movs r0, r0                        
00400534  0000         movs r0, r0                        
00400536  0000         movs r0, r0                        
00400538  0000         movs r0, r0                        
0040053a  0000         movs r0, r0                        
0040053c  0000         movs r0, r0                        
0040053e  0000         movs r0, r0                        
00400540  0000         movs r0, r0                        
00400542  0000         movs r0, r0                        
00400544  0000         movs r0, r0                        
00400546  0000         movs r0, r0                        
00400548  0000         movs r0, r0                        
0040054a  0000         movs r0, r0                        
0040054c  0000         movs r0, r0                        
0040054e  0000         movs r0, r0                        
00400550  0000         movs r0, r0                        
00400552  0000         movs r0, r0                        
00400554  0000         movs r0, r0                        
00400556  0000         movs r0, r0                        
00400558  0000         movs r0, r0                        
0040055a  0000         movs r0, r0                        
0040055c  0000         movs r0, r0                        
0040055e  0000         movs r0, r0                        
00400560  0000         movs r0, r0                        
00400562  0000         movs r0, r0                        
00400564  0000         movs r0, r0                        
00400566  0000         movs r0, r0                        
00400568  0000         movs r0, r0                        
0040056a  0000         movs r0, r0                        
0040056c  0000         movs r0, r0                        
0040056e  0000         movs r0, r0                        
00400570  0000         movs r0, r0                        
00400572  0000         movs r0, r0                        
00400574  0000         movs r0, r0                        
00400576  0000         movs r0, r0                        
00400578  0000         movs r0, r0                        
0040057a  0000         movs r0, r0                        
0040057c  0000         movs r0, r0                        
0040057e  0000         movs r0, r0                        
00400580  0000         movs r0, r0                        
00400582  0000         movs r0, r0                        
00400584  0000         movs r0, r0                        
00400586  0000         movs r0, r0                        
00400588  0000         movs r0, r0                        
0040058a  0000         movs r0, r0                        
0040058c  0000         movs r0, r0                        
0040058e  0000         movs r0, r0                        
00400590  0000         movs r0, r0                        
00400592  0000         movs r0, r0                        
00400594  0000         movs r0, r0                        
00400596  0000         movs r0, r0                        
00400598  0000         movs r0, r0                        
0040059a  0000         movs r0, r0                        
0040059c  0000         movs r0, r0                        
0040059e  0000         movs r0, r0                        
004005a0  0000         movs r0, r0                        
004005a2  0000         movs r0, r0                        
004005a4  0000         movs r0, r0                        
004005a6  0000         movs r0, r0                        
004005a8  0000         movs r0, r0                        
004005aa  0000         movs r0, r0                        
004005ac  0000         movs r0, r0                        
004005ae  0000         movs r0, r0                        
004005b0  0000         movs r0, r0                        
004005b2  0000         movs r0, r0                        
004005b4  0000         movs r0, r0                        
004005b6  0000         movs r0, r0                        
004005b8  0000         movs r0, r0                        
004005ba  0000         movs r0, r0                        
004005bc  0000         movs r0, r0                        
004005be  0000         movs r0, r0                        
004005c0  0000         movs r0, r0                        
004005c2  0000         movs r0, r0                        
004005c4  0000         movs r0, r0                        
004005c6  0000         movs r0, r0                        
004005c8  0000         movs r0, r0                        
004005ca  0000         movs r0, r0                        
004005cc  0000         movs r0, r0                        
004005ce  0000         movs r0, r0                        
004005d0  0000         movs r0, r0                        
004005d2  0000         movs r0, r0                        
004005d4  0000         movs r0, r0                        
004005d6  0000         movs r0, r0                        
004005d8  0000         movs r0, r0                        
004005da  0000         movs r0, r0                        
004005dc  0000         movs r0, r0                        
004005de  0000         movs r0, r0                        
004005e0  0000         movs r0, r0                        
004005e2  0000         movs r0, r0                        
004005e4  0000         movs r0, r0                        
004005e6  0000         movs r0, r0                        
004005e8  0000         movs r0, r0                        
004005ea  0000         movs r0, r0                        
004005ec  0000         movs r0, r0                        
004005ee  0000         movs r0, r0                        
004005f0  0000         movs r0, r0                        
004005f2  0000         movs r0, r0                        
004005f4  0000         movs r0, r0                        
004005f6  0000         movs r0, r0                        
004005f8  0000         movs r0, r0                        
004005fa  0000         movs r0, r0                        
004005fc  0000         movs r0, r0                        
004005fe  0000         movs r0, r0                        
00400600  0000         movs r0, r0                        
00400602  0000         movs r0, r0                        
00400604  0000         movs r0, r0                        
00400606  0000         movs r0, r0                        
00400608  0000         movs r0, r0                        
0040060a  0000         movs r0, r0                        
0040060c  0000         movs r0, r0                        
0040060e  0000         movs r0, r0                        
00400610  0000         movs r0, r0                        
00400612  0000         movs r0, r0                        
00400614  0000         movs r0, r0                        
00400616  0000         movs r0, r0                        
00400618  0000         movs r0, r0                        
0040061a  0000         movs r0, r0                        
0040061c  0000         movs r0, r0                        
0040061e  0000         movs r0, r0                        
00400620  0000         movs r0, r0                        
00400622  0000         movs r0, r0                        
00400624  0000         movs r0, r0                        
00400626  0000         movs r0, r0                        
00400628  0000         movs r0, r0                        
0040062a  0000         movs r0, r0                        
0040062c  0000         movs r0, r0                        
0040062e  0000         movs r0, r0                        
00400630  0000         movs r0, r0                        
00400632  0000         movs r0, r0                        
00400634  0000         movs r0, r0                        
00400636  0000         movs r0, r0                        
00400638  0000         movs r0, r0                        
0040063a  0000         movs r0, r0                        
0040063c  0000         movs r0, r0                        
0040063e  0000         movs r0, r0                        
00400640  0000         movs r0, r0                        
00400642  0000         movs r0, r0                        
00400644  0000         movs r0, r0                        
00400646  0000         movs r0, r0                        
00400648  0000         movs r0, r0                        
0040064a  0000         movs r0, r0                        
0040064c  0000         movs r0, r0                        
0040064e  0000         movs r0, r0                        
00400650  0000         movs r0, r0                        
00400652  0000         movs r0, r0                        
00400654  0000         movs r0, r0                        
00400656  0000         movs r0, r0                        
00400658  0000         movs r0, r0                        
0040065a  0000         movs r0, r0                        
0040065c  0000         movs r0, r0                        
0040065e  0000         movs r0, r0                        
00400660  0000         movs r0, r0                        
00400662  0000         movs r0, r0                        
00400664  0000         movs r0, r0                        
00400666  0000         movs r0, r0                        
00400668  0000         movs r0, r0                        
0040066a  0000         movs r0, r0                        
0040066c  0000         movs r0, r0                        
0040066e  0000         movs r0, r0                        
00400670  0000         movs r0, r0                        
00400672  0000         movs r0, r0                        
00400674  0000         movs r0, r0                        
00400676  0000         movs r0, r0                        
00400678  0000         movs r0, r0                        
0040067a  0000         movs r0, r0                        
0040067c  0000         movs r0, r0                        
0040067e  0000         movs r0, r0                        
00400680  0000         movs r0, r0                        
00400682  0000         movs r0, r0                        
00400684  0000         movs r0, r0                        
00400686  0000         movs r0, r0                        
00400688  0000         movs r0, r0                        
0040068a  0000         movs r0, r0                        
0040068c  0000         movs r0, r0                        
0040068e  0000         movs r0, r0                        
00400690  0000         movs r0, r0                        
00400692  0000         movs r0, r0                        
00400694  0000         movs r0, r0                        
00400696  0000         movs r0, r0                        
00400698  0000         movs r0, r0                        
0040069a  0000         movs r0, r0                        
0040069c  0000         movs r0, r0                        
0040069e  0000         movs r0, r0                        
004006a0  0000         movs r0, r0                        
004006a2  0000         movs r0, r0                        
004006a4  0000         movs r0, r0                        
004006a6  0000         movs r0, r0                        
004006a8  0000         movs r0, r0                        
004006aa  0000         movs r0, r0                        
004006ac  0000         movs r0, r0                        
004006ae  0000         movs r0, r0                        
004006b0  0000         movs r0, r0                        
004006b2  0000         movs r0, r0                        
004006b4  0000         movs r0, r0                        
004006b6  0000         movs r0, r0                        
004006b8  0000         movs r0, r0                        
004006ba  0000         movs r0, r0                        
004006bc  0000         movs r0, r0                        
004006be  0000         movs r0, r0                        
004006c0  0000         movs r0, r0                        
004006c2  0000         movs r0, r0                        
004006c4  0000         movs r0, r0                        
004006c6  0000         movs r0, r0                        
004006c8  0000         movs r0, r0                        
004006ca  0000         movs r0, r0                        
004006cc  0000         movs r0, r0                        
004006ce  0000         movs r0, r0                        
004006d0  0000         movs r0, r0                        
004006d2  0000         movs r0, r0                        
004006d4  0000         movs r0, r0                        
004006d6  0000         movs r0, r0                        
004006d8  0000         movs r0, r0                        
004006da  0000         movs r0, r0                        
004006dc  0000         movs r0, r0                        
004006de  0000         movs r0, r0                        
004006e0  0000         movs r0, r0                        
004006e2  0000         movs r0, r0                        
004006e4  0000         movs r0, r0                        
004006e6  0000         movs r0, r0                        
004006e8  0000         movs r0, r0                        
004006ea  0000         movs r0, r0                        
004006ec  0000         movs r0, r0                        
004006ee  0000         movs r0, r0                        
004006f0  0000         movs r0, r0                        
004006f2  0000         movs r0, r0                        
004006f4  0000         movs r0, r0                        
004006f6  0000         movs r0, r0                        
004006f8  0000         movs r0, r0                        
004006fa  0000         movs r0, r0                        
004006fc  0000         movs r0, r0                        
004006fe  0000         movs r0, r0                        
00400700  0000         movs r0, r0                        
00400702  0000         movs r0, r0                        
00400704  0000         movs r0, r0                        
00400706  0000         movs r0, r0                        
00400708  0000         movs r0, r0                        
0040070a  0000         movs r0, r0                        
0040070c  0000         movs r0, r0                        
0040070e  0000         movs r0, r0                        
00400710  0000         movs r0, r0                        
00400712  0000         movs r0, r0                        
00400714  0000         movs r0, r0                        
00400716  0000         movs r0, r0                        
00400718  0000         movs r0, r0                        
0040071a  0000         movs r0, r0                        
0040071c  0000         movs r0, r0                        
0040071e  0000         movs r0, r0                        
00400720  0000         movs r0, r0                        
00400722  0000         movs r0, r0                        
00400724  0000         movs r0, r0                        
00400726  0000         movs r0, r0                        
00400728  0000         movs r0, r0                        
0040072a  0000         movs r0, r0                        
0040072c  0000         movs r0, r0                        
0040072e  0000         movs r0, r0                        
00400730  0000         movs r0, r0                        
00400732  0000         movs r0, r0                        
00400734  0000         movs r0, r0                        
00400736  0000         movs r0, r0                        
00400738  0000         movs r0, r0                        
0040073a  0000         movs r0, r0                        
0040073c  0000         movs r0, r0                        
0040073e  0000         movs r0, r0                        
00400740  0000         movs r0, r0                        
00400742  0000         movs r0, r0                        
00400744  0000         movs r0, r0                        
00400746  0000         movs r0, r0                        
00400748  0000         movs r0, r0                        
0040074a  0000         movs r0, r0                        
0040074c  0000         movs r0, r0                        
0040074e  0000         movs r0, r0                        
00400750  0000         movs r0, r0                        
00400752  0000         movs r0, r0                        
00400754  0000         movs r0, r0                        
00400756  0000         movs r0, r0                        
00400758  0000         movs r0, r0                        
0040075a  0000         movs r0, r0                        
0040075c  0000         movs r0, r0                        
0040075e  0000         movs r0, r0                        
00400760  0000         movs r0, r0                        
00400762  0000         movs r0, r0                        
00400764  0000         movs r0, r0                        
00400766  0000         movs r0, r0                        
00400768  0000         movs r0, r0                        
0040076a  0000         movs r0, r0                        
0040076c  0000         movs r0, r0                        
0040076e  0000         movs r0, r0                        
00400770  0000         movs r0, r0                        
00400772  0000         movs r0, r0                        
00400774  0000         movs r0, r0                        
00400776  0000         movs r0, r0                        
00400778  0000         movs r0, r0                        
0040077a  0000         movs r0, r0                        
0040077c  0000         movs r0, r0                        
0040077e  0000         movs r0, r0                        
00400780  0000         movs r0, r0                        
00400782  0000         movs r0, r0                        
00400784  0000         movs r0, r0                        
00400786  0000         movs r0, r0                        
00400788  0000         movs r0, r0                        
0040078a  0000         movs r0, r0                        
0040078c  0000         movs r0, r0                        
0040078e  0000         movs r0, r0                        
00400790  0000         movs r0, r0                        
00400792  0000         movs r0, r0                        
00400794  0000         movs r0, r0                        
00400796  0000         movs r0, r0                        
00400798  0000         movs r0, r0                        
0040079a  0000         movs r0, r0                        
0040079c  0000         movs r0, r0                        
0040079e  0000         movs r0, r0                        
004007a0  0000         movs r0, r0                        
004007a2  0000         movs r0, r0                        
004007a4  0000         movs r0, r0                        
004007a6  0000         movs r0, r0                        
004007a8  0000         movs r0, r0                        
004007aa  0000         movs r0, r0                        
004007ac  0000         movs r0, r0                        
004007ae  0000         movs r0, r0                        
004007b0  0000         movs r0, r0                        
004007b2  0000         movs r0, r0                        
004007b4  0000         movs r0, r0                        
004007b6  0000         movs r0, r0                        
004007b8  0000         movs r0, r0                        
004007ba  0000         movs r0, r0                        
004007bc  0000         movs r0, r0                        
004007be  0000         movs r0, r0                        
004007c0  0000         movs r0, r0                        
004007c2  0000         movs r0, r0                        
004007c4  0000         movs r0, r0                        
004007c6  0000         movs r0, r0                        
004007c8  0000         movs r0, r0                        
004007ca  0000         movs r0, r0                        
004007cc  0000         movs r0, r0                        
004007ce  0000         movs r0, r0                        
004007d0  0000         movs r0, r0                        
004007d2  0000         movs r0, r0                        
004007d4  0000         movs r0, r0                        
004007d6  0000         movs r0, r0                        
004007d8  0000         movs r0, r0                        
004007da  0000         movs r0, r0                        
004007dc  0000         movs r0, r0                        
004007de  0000         movs r0, r0                        
004007e0  0000         movs r0, r0                        
004007e2  0000         movs r0, r0                        
004007e4  0000         movs r0, r0                        
004007e6  0000         movs r0, r0                        
004007e8  0000         movs r0, r0                        
004007ea  0000         movs r0, r0                        
004007ec  0000         movs r0, r0                        
004007ee  0000         movs r0, r0                        
004007f0  0000         movs r0, r0                        
004007f2  0000         movs r0, r0                        
004007f4  0000         movs r0, r0                        
004007f6  0000         movs r0, r0                        
004007f8  0000         movs r0, r0                        
004007fa  0000         movs r0, r0                        
004007fc  0000         movs r0, r0                        
004007fe  0000         movs r0, r0                        
00400800  1901         lsls r1, r3, #4                    
00400802  0000         movs r0, r0                        
00400804  0a00         movs r2, r1                        
00400806  0000         movs r0, r0                        
00400808  0000         movs r0, r0                        
0040080a  0000         movs r0, r0                        
0040080c  0000         movs r0, r0                        
0040080e  0000         movs r0, r0                        
00400810  2104         lsls r1, r4, #0x10                 
00400812  0d10         asrs r5, r1, #0x20                 
00400814  6770         strb r7, [r4, #1]                  
00400816  642e         cmp r6, #0x64                      
00400818  7461         str r4, [r6, #0x14]                
0040081a  2e61         str r6, [r5, #0x10]                
0040081c  7070         strb r0, [r6, #1]                  
0040081e  4944         add r1, sb                         
00400820  003d         subs r5, #0                        
00400822  46a7         adr r7, #0x118                     
00400824  8d2c         cmp r4, #0x8d                      
00400826  6954         strb r1, [r5, r1]                  
00400828  4f8d         ldrh r7, [r1, #0x2a]               
0040082a  3b9c         ldr r4, [sp, #0xec]                
0040082c  f05a         ldrh r0, [r6, r3]                  
0040082e  ccb9         cbnz r4, #0x400864                 
00400830  9619         adds r6, r2, r6                    
00400832  0111         asrs r1, r0, #4                    
00400834  0467         str r4, [r0, #0x70]                
00400836  7064         str r0, [r6, #0x44]                
00400838  2e74         strb r6, [r5, #0x10]               
0040083a  612e         cmp r6, #0x61                      
0040083c  7374         strb r3, [r6, #0x11]               
0040083e  6163         str r1, [r4, #0x34]                
00400840  6b53         strh r3, [r5, r5]                  
00400842  697a         ldrb r1, [r5, #9]                  
00400844  6500         lsls r5, r4, #1                    
00400846  0040         ands r0, r0                        
00400848  0000         movs r0, r0                        
0040084a  1801         lsls r0, r3, #4                    
0040084c  1004         lsls r0, r2, #0x10                 
0040084e  6770         strb r7, [r4, #1]                  
00400850  642e         cmp r6, #0x64                      
00400852  7461         str r4, [r6, #0x14]                
00400854  2e68         ldr r6, [r5]                       
00400856  6561         str r5, [r4, #0x14]                
00400858  7053         strh r0, [r6, r5]                  
0040085a  697a         ldrb r1, [r5, #9]                  
0040085c  6500         lsls r5, r4, #1                    
0040085e  0040         ands r0, r0                        
00400860  0000         movs r0, r0                        
00400862  1b02         lsls r3, r3, #8                    
00400864  1601         lsls r6, r2, #4                    
00400866  6770         strb r7, [r4, #1]                  
00400868  642e         cmp r6, #0x64                      
0040086a  7461         str r4, [r6, #0x14]                
0040086c  2e73         strb r6, [r5, #0xc]                
0040086e  696e         ldr r1, [r5, #0x64]                
00400870  676c         ldr r7, [r4, #0x44]                
00400872  6549         ldr r1, [pc, #0x194]               
00400874  6e73         strb r6, [r5, #0xd]                
00400876  7461         str r4, [r6, #0x14]                
00400878  6e63         str r6, [r5, #0x34]                
0040087a  6500         lsls r5, r4, #1                    
0040087c  0119         adds r1, r0, r4                    
0040087e  0214         asrs r2, r0, #0x10                 
00400880  0167         str r1, [r0, #0x70]                
00400882  7064         str r0, [r6, #0x44]                
00400884  2e74         strb r6, [r5, #0x10]               
00400886  612e         cmp r6, #0x61                      
00400888  6d75         strb r5, [r5, #0x15]               
0040088a  6c74         strb r4, [r5, #0x11]               
0040088c  6953         strh r1, [r5, r5]                  
0040088e  6573         strb r5, [r4, #0xd]                
00400890  7369         ldr r3, [r6, #0x14]                
00400892  6f6e         ldr r7, [r5, #0x64]                
00400894  0000         movs r0, r0                        
00400896  1700         movs r7, r2                        
00400898  0f04         lsls r7, r1, #0x10                 
0040089a  6770         strb r7, [r4, #1]                  
0040089c  642e         cmp r6, #0x64                      
0040089e  7461         str r4, [r6, #0x14]                
004008a0  2e76         strb r6, [r5, #0x18]               
004008a2  6572         strb r5, [r4, #9]                  
004008a4  7369         ldr r3, [r6, #0x14]                
004008a6  6f6e         ldr r7, [r5, #0x64]                
004008a8  0031         adds r1, #0                        
004008aa  2e30         adds r0, #0x2e                     
004008ac  0017         asrs r0, r0, #0x1c                 
004008ae  010f         lsrs r1, r0, #0x1c                 
004008b0  0461         str r4, [r0, #0x10]                
004008b2  6d64         str r5, [r5, #0x44]                
004008b4  2e74         strb r6, [r5, #0x10]               
004008b6  612e         cmp r6, #0x61                      
004008b8  7665         str r6, [r6, #0x54]                
004008ba  7273         strb r2, [r6, #0xd]                
004008bc  696f         ldr r1, [r5, #0x74]                
004008be  6e00         lsls r6, r5, #1                    
004008c0  4d00         lsls r5, r1, #1                    
004008c2  0016         asrs r0, r0, #0x18                 
004008c4  2b00         movs r3, r5                        
004008c6  1314         asrs r3, r2, #0x10                 
004008c8  6770         strb r7, [r4, #1]                  
004008ca  642e         cmp r6, #0x64                      
004008cc  7461         str r4, [r6, #0x14]                
004008ce  2e64         str r6, [r5, #0x40]                
004008d0  6573         strb r5, [r4, #0xd]                
004008d2  6372         strb r3, [r4, #9]                  
004008d4  6970         strb r1, [r5, #1]                  
004008d6  7469         ldr r4, [r6, #0x14]                
004008d8  6f6e         ldr r7, [r5, #0x64]                
004008da  0041         asrs r0, r0                        
004008dc  4d44         add r5, sb                         
004008de  2047         bx r4                              
004008e0  4350         str r3, [r0, r1]                   
004008e2  2041         asrs r0, r4                        
004008e4  7070         strb r0, [r6, #1]                  
004008e6  6c69         ldr r4, [r5, #0x14]                
004008e8  6361         str r3, [r4, #0x14]                
004008ea  7469         ldr r4, [r6, #0x14]                
004008ec  6f6e         ldr r7, [r5, #0x64]                
004008ee  0012         asrs r0, r0, #8                    
004008f0  020d         lsrs r2, r0, #0x14                 
004008f2  0161         str r1, [r0, #0x10]                
004008f4  6d64         str r5, [r5, #0x44]                
004008f6  2e66         str r6, [r5, #0x60]                
004008f8  772e         cmp r6, #0x77                      
004008fa  416d         ldr r1, [r0, #0x54]                
004008fc  6446         mov r4, ip                         
004008fe  7700         lsls r7, r6, #1                    
00400900  0118         adds r1, r0, r0                    
00400902  0213         asrs r2, r0, #0xc                  
00400904  0161         str r1, [r0, #0x10]                
00400906  6d64         str r5, [r5, #0x44]                
00400908  2e66         str r6, [r5, #0x60]                
0040090a  772e         cmp r6, #0x77                      
0040090c  4470         strb r4, [r0, #1]                  
0040090e  6d4c         ldr r4, [pc, #0x1b4]               
00400910  6576         strb r5, [r4, #0x19]               
00400912  656c         ldr r5, [r4, #0x44]                
00400914  4c6f         ldr r4, [r1, #0x74]                
00400916  7700         lsls r7, r6, #1                    
00400918  0100         movs r1, r0                        
0040091a  0000         movs r0, r0                        
0040091c  0000         movs r0, r0                        
0040091e  0000         movs r0, r0                        
00400920  0000         movs r0, r0                        
00400922  0000         movs r0, r0                        
00400924  0000         movs r0, r0                        
00400926  0000         movs r0, r0                        
00400928  0000         movs r0, r0                        
0040092a  0000         movs r0, r0                        
0040092c  0000         movs r0, r0                        
0040092e  0000         movs r0, r0                        
00400930  0000         movs r0, r0                        
00400932  0000         movs r0, r0                        
00400934  0000         movs r0, r0                        
00400936  0000         movs r0, r0                        
00400938  0000         movs r0, r0                        
0040093a  0000         movs r0, r0                        
0040093c  0000         movs r0, r0                        
0040093e  0000         movs r0, r0                        
00400940  0000         movs r0, r0                        
00400942  0000         movs r0, r0                        
00400944  0000         movs r0, r0                        
00400946  0000         movs r0, r0                        
00400948  0000         movs r0, r0                        
0040094a  0000         movs r0, r0                        
0040094c  0000         movs r0, r0                        
0040094e  0000         movs r0, r0                        
00400950  0000         movs r0, r0                        
00400952  0000         movs r0, r0                        
00400954  0000         movs r0, r0                        
00400956  0000         movs r0, r0                        
00400958  0000         movs r0, r0                        
0040095a  0000         movs r0, r0                        
0040095c  0000         movs r0, r0                        
0040095e  0000         movs r0, r0                        
00400960  0000         movs r0, r0                        
00400962  0000         movs r0, r0                        
00400964  0000         movs r0, r0                        
00400966  0000         movs r0, r0                        
00400968  0000         movs r0, r0                        
0040096a  0000         movs r0, r0                        
0040096c  0000         movs r0, r0                        
0040096e  0000         movs r0, r0                        
00400970  0000         movs r0, r0                        
00400972  0000         movs r0, r0                        
00400974  0000         movs r0, r0                        
00400976  0000         movs r0, r0                        
00400978  0000         movs r0, r0                        
0040097a  0000         movs r0, r0                        
0040097c  0000         movs r0, r0                        
0040097e  0000         movs r0, r0                        
00400980  0000         movs r0, r0                        
00400982  0000         movs r0, r0                        
00400984  0000         movs r0, r0                        
00400986  0000         movs r0, r0                        
00400988  0000         movs r0, r0                        
0040098a  0000         movs r0, r0                        
0040098c  0000         movs r0, r0                        
0040098e  0000         movs r0, r0                        
00400990  0000         movs r0, r0                        
00400992  0000         movs r0, r0                        
00400994  0000         movs r0, r0                        
00400996  0000         movs r0, r0                        
00400998  0000         movs r0, r0                        
0040099a  0000         movs r0, r0                        
0040099c  0000         movs r0, r0                        
0040099e  0000         movs r0, r0                        
004009a0  0000         movs r0, r0                        
004009a2  0000         movs r0, r0                        
004009a4  0000         movs r0, r0                        
004009a6  0000         movs r0, r0                        
004009a8  0000         movs r0, r0                        
004009aa  0000         movs r0, r0                        
004009ac  0000         movs r0, r0                        
004009ae  0000         movs r0, r0                        
004009b0  0000         movs r0, r0                        
004009b2  0000         movs r0, r0                        
004009b4  0000         movs r0, r0                        
004009b6  0000         movs r0, r0                        
004009b8  0000         movs r0, r0                        
004009ba  0000         movs r0, r0                        
004009bc  0000         movs r0, r0                        
004009be  0000         movs r0, r0                        
004009c0  0000         movs r0, r0                        
004009c2  0000         movs r0, r0                        
004009c4  0000         movs r0, r0                        
004009c6  0000         movs r0, r0                        
004009c8  0000         movs r0, r0                        
004009ca  0000         movs r0, r0                        
004009cc  0000         movs r0, r0                        
004009ce  0000         movs r0, r0                        
004009d0  0000         movs r0, r0                        
004009d2  0000         movs r0, r0                        
004009d4  0000         movs r0, r0                        
004009d6  0000         movs r0, r0                        
004009d8  0000         movs r0, r0                        
004009da  0000         movs r0, r0                        
004009dc  0000         movs r0, r0                        
004009de  0000         movs r0, r0                        
004009e0  0000         movs r0, r0                        
004009e2  0000         movs r0, r0                        
004009e4  0000         movs r0, r0                        
004009e6  0000         movs r0, r0                        
004009e8  0000         movs r0, r0                        
004009ea  0000         movs r0, r0                        
004009ec  0000         movs r0, r0                        
004009ee  0000         movs r0, r0                        
004009f0  0000         movs r0, r0                        
004009f2  0000         movs r0, r0                        
004009f4  0000         movs r0, r0                        
004009f6  0000         movs r0, r0                        
004009f8  0000         movs r0, r0                        
004009fa  0000         movs r0, r0                        
004009fc  0000         movs r0, r0                        
004009fe  0000         movs r0, r0                        
00400a00  0000         movs r0, r0                        
00400a02  0000         movs r0, r0                        
00400a04  0000         movs r0, r0                        
00400a06  0000         movs r0, r0                        
00400a08  0000         movs r0, r0                        
00400a0a  0000         movs r0, r0                        
00400a0c  0000         movs r0, r0                        
00400a0e  0000         movs r0, r0                        
00400a10  0000         movs r0, r0                        
00400a12  0000         movs r0, r0                        
00400a14  0000         movs r0, r0                        
00400a16  0000         movs r0, r0                        
00400a18  0000         movs r0, r0                        
00400a1a  0000         movs r0, r0                        
00400a1c  0000         movs r0, r0                        
00400a1e  0000         movs r0, r0                        
00400a20  0000         movs r0, r0                        
00400a22  0000         movs r0, r0                        
00400a24  0000         movs r0, r0                        
00400a26  0000         movs r0, r0                        
00400a28  0000         movs r0, r0                        
00400a2a  0000         movs r0, r0                        
00400a2c  0000         movs r0, r0                        
00400a2e  0000         movs r0, r0                        
00400a30  0000         movs r0, r0                        
00400a32  0000         movs r0, r0                        
00400a34  0000         movs r0, r0                        
00400a36  0000         movs r0, r0                        
00400a38  0000         movs r0, r0                        
00400a3a  0000         movs r0, r0                        
00400a3c  0000         movs r0, r0                        
00400a3e  0000         movs r0, r0                        
00400a40  0000         movs r0, r0                        
00400a42  0000         movs r0, r0                        
00400a44  0000         movs r0, r0                        
00400a46  0000         movs r0, r0                        
00400a48  0000         movs r0, r0                        
00400a4a  0000         movs r0, r0                        
00400a4c  0000         movs r0, r0                        
00400a4e  0000         movs r0, r0                        
00400a50  0000         movs r0, r0                        
00400a52  0000         movs r0, r0                        
00400a54  0000         movs r0, r0                        
00400a56  0000         movs r0, r0                        
00400a58  0000         movs r0, r0                        
00400a5a  0000         movs r0, r0                        
00400a5c  0000         movs r0, r0                        
00400a5e  0000         movs r0, r0                        
00400a60  0000         movs r0, r0                        
00400a62  0000         movs r0, r0                        
00400a64  0000         movs r0, r0                        
00400a66  0000         movs r0, r0                        
00400a68  0000         movs r0, r0                        
00400a6a  0000         movs r0, r0                        
00400a6c  0000         movs r0, r0                        
00400a6e  0000         movs r0, r0                        
00400a70  0000         movs r0, r0                        
00400a72  0000         movs r0, r0                        
00400a74  0000         movs r0, r0                        
00400a76  0000         movs r0, r0                        
00400a78  0000         movs r0, r0                        
00400a7a  0000         movs r0, r0                        
00400a7c  0000         movs r0, r0                        
00400a7e  0000         movs r0, r0                        
00400a80  0000         movs r0, r0                        
00400a82  0000         movs r0, r0                        
00400a84  0000         movs r0, r0                        
00400a86  0000         movs r0, r0                        
00400a88  0000         movs r0, r0                        
00400a8a  0000         movs r0, r0                        
00400a8c  0000         movs r0, r0                        
00400a8e  0000         movs r0, r0                        
00400a90  0000         movs r0, r0                        
00400a92  0000         movs r0, r0                        
00400a94  0000         movs r0, r0                        
00400a96  0000         movs r0, r0                        
00400a98  0000         movs r0, r0                        
00400a9a  0000         movs r0, r0                        
00400a9c  0000         movs r0, r0                        
00400a9e  0000         movs r0, r0                        
00400aa0  0000         movs r0, r0                        
00400aa2  0000         movs r0, r0                        
00400aa4  0000         movs r0, r0                        
00400aa6  0000         movs r0, r0                        
00400aa8  0000         movs r0, r0                        
00400aaa  0000         movs r0, r0                        
00400aac  0000         movs r0, r0                        
00400aae  0000         movs r0, r0                        
00400ab0  0000         movs r0, r0                        
00400ab2  0000         movs r0, r0                        
00400ab4  0000         movs r0, r0                        
00400ab6  0000         movs r0, r0                        
00400ab8  0000         movs r0, r0                        
00400aba  0000         movs r0, r0                        
00400abc  0000         movs r0, r0                        
00400abe  0000         movs r0, r0                        
00400ac0  0000         movs r0, r0                        
00400ac2  0000         movs r0, r0                        
00400ac4  0000         movs r0, r0                        
00400ac6  0000         movs r0, r0                        
00400ac8  0000         movs r0, r0                        
00400aca  0000         movs r0, r0                        
00400acc  0000         movs r0, r0                        
00400ace  0000         movs r0, r0                        
00400ad0  0000         movs r0, r0                        
00400ad2  0000         movs r0, r0                        
00400ad4  0000         movs r0, r0                        
00400ad6  0000         movs r0, r0                        
00400ad8  0000         movs r0, r0                        
00400ada  0000         movs r0, r0                        
00400adc  0000         movs r0, r0                        
00400ade  0000         movs r0, r0                        
00400ae0  0000         movs r0, r0                        
00400ae2  0000         movs r0, r0                        
00400ae4  0000         movs r0, r0                        
00400ae6  0000         movs r0, r0                        
00400ae8  0000         movs r0, r0                        
00400aea  0000         movs r0, r0                        
00400aec  0000         movs r0, r0                        
00400aee  0000         movs r0, r0                        
00400af0  0000         movs r0, r0                        
00400af2  0000         movs r0, r0                        
00400af4  0000         movs r0, r0                        
00400af6  0000         movs r0, r0                        
00400af8  0000         movs r0, r0                        
00400afa  0000         movs r0, r0                        
00400afc  0000         movs r0, r0                        
00400afe  0000         movs r0, r0                        
00400b00  0000         movs r0, r0                        
00400b02  0000         movs r0, r0                        
00400b04  0000         movs r0, r0                        
00400b06  0000         movs r0, r0                        
00400b08  0000         movs r0, r0                        
00400b0a  0000         movs r0, r0                        
00400b0c  0000         movs r0, r0                        
00400b0e  0000         movs r0, r0                        
00400b10  0000         movs r0, r0                        
00400b12  0000         movs r0, r0                        
00400b14  0000         movs r0, r0                        
00400b16  0000         movs r0, r0                        
00400b18  0000         movs r0, r0                        
00400b1a  0000         movs r0, r0                        
00400b1c  0000         movs r0, r0                        
00400b1e  0000         movs r0, r0                        
00400b20  0000         movs r0, r0                        
00400b22  0000         movs r0, r0                        
00400b24  0000         movs r0, r0                        
00400b26  0000         movs r0, r0                        
00400b28  0000         movs r0, r0                        
00400b2a  0000         movs r0, r0                        
00400b2c  0000         movs r0, r0                        
00400b2e  0000         movs r0, r0                        
00400b30  0000         movs r0, r0                        
00400b32  0000         movs r0, r0                        
00400b34  0000         movs r0, r0                        
00400b36  0000         movs r0, r0                        
00400b38  0000         movs r0, r0                        
00400b3a  0000         movs r0, r0                        
00400b3c  0000         movs r0, r0                        
00400b3e  0000         movs r0, r0                        
00400b40  0000         movs r0, r0                        
00400b42  0000         movs r0, r0                        
00400b44  0000         movs r0, r0                        
00400b46  0000         movs r0, r0                        
00400b48  0000         movs r0, r0                        
00400b4a  0000         movs r0, r0                        
00400b4c  0000         movs r0, r0                        
00400b4e  0000         movs r0, r0                        
00400b50  0000         movs r0, r0                        
00400b52  0000         movs r0, r0                        
00400b54  0000         movs r0, r0                        
00400b56  0000         movs r0, r0                        
00400b58  0000         movs r0, r0                        
00400b5a  0000         movs r0, r0                        
00400b5c  0000         movs r0, r0                        
00400b5e  0000         movs r0, r0                        
00400b60  0000         movs r0, r0                        
00400b62  0000         movs r0, r0                        
00400b64  0000         movs r0, r0                        
00400b66  0000         movs r0, r0                        
00400b68  0000         movs r0, r0                        
00400b6a  0000         movs r0, r0                        
00400b6c  0000         movs r0, r0                        
00400b6e  0000         movs r0, r0                        
00400b70  0000         movs r0, r0                        
00400b72  0000         movs r0, r0                        
00400b74  0000         movs r0, r0                        
00400b76  0000         movs r0, r0                        
00400b78  0000         movs r0, r0                        
00400b7a  0000         movs r0, r0                        
00400b7c  0000         movs r0, r0                        
00400b7e  0000         movs r0, r0                        
00400b80  0000         movs r0, r0                        
00400b82  0000         movs r0, r0                        
00400b84  0000         movs r0, r0                        
00400b86  0000         movs r0, r0                        
00400b88  0000         movs r0, r0                        
00400b8a  0000         movs r0, r0                        
00400b8c  0000         movs r0, r0                        
00400b8e  0000         movs r0, r0                        
00400b90  0000         movs r0, r0                        
00400b92  0000         movs r0, r0                        
00400b94  0000         movs r0, r0                        
00400b96  0000         movs r0, r0                        
00400b98  0000         movs r0, r0                        
00400b9a  0000         movs r0, r0                        
00400b9c  0000         movs r0, r0                        
00400b9e  0000         movs r0, r0                        
00400ba0  0000         movs r0, r0                        
00400ba2  0000         movs r0, r0                        
00400ba4  0000         movs r0, r0                        
00400ba6  0000         movs r0, r0                        
00400ba8  0000         movs r0, r0                        
00400baa  0000         movs r0, r0                        
00400bac  0000         movs r0, r0                        
00400bae  0000         movs r0, r0                        
00400bb0  0000         movs r0, r0                        
00400bb2  0000         movs r0, r0                        
00400bb4  0000         movs r0, r0                        
00400bb6  0000         movs r0, r0                        
00400bb8  0000         movs r0, r0                        
00400bba  0000         movs r0, r0                        
00400bbc  0000         movs r0, r0                        
00400bbe  0000         movs r0, r0                        
00400bc0  0000         movs r0, r0                        
00400bc2  0000         movs r0, r0                        
00400bc4  0000         movs r0, r0                        
00400bc6  0000         movs r0, r0                        
00400bc8  0000         movs r0, r0                        
00400bca  0000         movs r0, r0                        
00400bcc  0000         movs r0, r0                        
00400bce  0000         movs r0, r0                        
00400bd0  0000         movs r0, r0                        
00400bd2  0000         movs r0, r0                        
00400bd4  0000         movs r0, r0                        
00400bd6  0000         movs r0, r0                        
00400bd8  0000         movs r0, r0                        
00400bda  0000         movs r0, r0                        
00400bdc  0000         movs r0, r0                        
00400bde  0000         movs r0, r0                        
00400be0  0000         movs r0, r0                        
00400be2  0000         movs r0, r0                        
00400be4  0000         movs r0, r0                        
00400be6  0000         movs r0, r0                        
00400be8  0000         movs r0, r0                        
00400bea  0000         movs r0, r0                        
00400bec  0000         movs r0, r0                        
00400bee  0000         movs r0, r0                        
00400bf0  0000         movs r0, r0                        
00400bf2  0000         movs r0, r0                        
00400bf4  0000         movs r0, r0                        
00400bf6  0000         movs r0, r0                        
00400bf8  0000         movs r0, r0                        
00400bfa  0000         movs r0, r0                        
00400bfc  0000         movs r0, r0                        
00400bfe  0000         movs r0, r0                        
00400c00  0000         movs r0, r0                        
00400c02  0000         movs r0, r0                        
00400c04  0000         movs r0, r0                        
00400c06  0000         movs r0, r0                        
00400c08  0000         movs r0, r0                        
00400c0a  0000         movs r0, r0                        
00400c0c  0000         movs r0, r0                        
00400c0e  0000         movs r0, r0                        
00400c10  0000         movs r0, r0                        
00400c12  0000         movs r0, r0                        
00400c14  0000         movs r0, r0                        
00400c16  0000         movs r0, r0                        
00400c18  0000         movs r0, r0                        
00400c1a  0000         movs r0, r0                        
00400c1c  0000         movs r0, r0                        
00400c1e  0000         movs r0, r0                        
00400c20  0000         movs r0, r0                        
00400c22  0000         movs r0, r0                        
00400c24  0000         movs r0, r0                        
00400c26  0000         movs r0, r0                        
00400c28  0000         movs r0, r0                        
00400c2a  0000         movs r0, r0                        
00400c2c  0000         movs r0, r0                        
00400c2e  0000         movs r0, r0                        
00400c30  0000         movs r0, r0                        
00400c32  0000         movs r0, r0                        
00400c34  0000         movs r0, r0                        
00400c36  0000         movs r0, r0                        
00400c38  0000         movs r0, r0                        
00400c3a  0000         movs r0, r0                        
00400c3c  0000         movs r0, r0                        
00400c3e  0000         movs r0, r0                        
00400c40  0000         movs r0, r0                        
00400c42  0000         movs r0, r0                        
00400c44  0000         movs r0, r0                        
00400c46  0000         movs r0, r0                        
00400c48  0000         movs r0, r0                        
00400c4a  0000         movs r0, r0                        
00400c4c  0000         movs r0, r0                        
00400c4e  0000         movs r0, r0                        
00400c50  0000         movs r0, r0                        
00400c52  0000         movs r0, r0                        
00400c54  0000         movs r0, r0                        
00400c56  0000         movs r0, r0                        
00400c58  0000         movs r0, r0                        
00400c5a  0000         movs r0, r0                        
00400c5c  0000         movs r0, r0                        
00400c5e  0000         movs r0, r0                        
00400c60  0000         movs r0, r0                        
00400c62  0000         movs r0, r0                        
00400c64  0000         movs r0, r0                        
00400c66  0000         movs r0, r0                        
00400c68  0000         movs r0, r0                        
00400c6a  0000         movs r0, r0                        
00400c6c  0000         movs r0, r0                        
00400c6e  0000         movs r0, r0                        
00400c70  0000         movs r0, r0                        
00400c72  0000         movs r0, r0                        
00400c74  0000         movs r0, r0                        
00400c76  0000         movs r0, r0                        
00400c78  0000         movs r0, r0                        
00400c7a  0000         movs r0, r0                        
00400c7c  0000         movs r0, r0                        
00400c7e  0000         movs r0, r0                        
00400c80  0000         movs r0, r0                        
00400c82  0000         movs r0, r0                        
00400c84  0000         movs r0, r0                        
00400c86  0000         movs r0, r0                        
00400c88  0000         movs r0, r0                        
00400c8a  0000         movs r0, r0                        
00400c8c  0000         movs r0, r0                        
00400c8e  0000         movs r0, r0                        
00400c90  0000         movs r0, r0                        
00400c92  0000         movs r0, r0                        
00400c94  0000         movs r0, r0                        
00400c96  0000         movs r0, r0                        
00400c98  0000         movs r0, r0                        
00400c9a  0000         movs r0, r0                        
00400c9c  0000         movs r0, r0                        
00400c9e  0000         movs r0, r0                        
00400ca0  0000         movs r0, r0                        
00400ca2  0000         movs r0, r0                        
00400ca4  0000         movs r0, r0                        
00400ca6  0000         movs r0, r0                        
00400ca8  0000         movs r0, r0                        
00400caa  0000         movs r0, r0                        
00400cac  0000         movs r0, r0                        
00400cae  0000         movs r0, r0                        
00400cb0  0000         movs r0, r0                        
00400cb2  0000         movs r0, r0                        
00400cb4  0000         movs r0, r0                        
00400cb6  0000         movs r0, r0                        
00400cb8  0000         movs r0, r0                        
00400cba  0000         movs r0, r0                        
00400cbc  0000         movs r0, r0                        
00400cbe  0000         movs r0, r0                        
00400cc0  0000         movs r0, r0                        
00400cc2  0000         movs r0, r0                        
00400cc4  0000         movs r0, r0                        
00400cc6  0000         movs r0, r0                        
00400cc8  0000         movs r0, r0                        
00400cca  0000         movs r0, r0                        
00400ccc  0000         movs r0, r0                        
00400cce  0000         movs r0, r0                        
00400cd0  0000         movs r0, r0                        
00400cd2  0000         movs r0, r0                        
00400cd4  0000         movs r0, r0                        
00400cd6  0000         movs r0, r0                        
00400cd8  0000         movs r0, r0                        
00400cda  0000         movs r0, r0                        
00400cdc  0000         movs r0, r0                        
00400cde  0000         movs r0, r0                        
00400ce0  0000         movs r0, r0                        
00400ce2  0000         movs r0, r0                        
00400ce4  0000         movs r0, r0                        
00400ce6  0000         movs r0, r0                        
00400ce8  0000         movs r0, r0                        
00400cea  0000         movs r0, r0                        
00400cec  0000         movs r0, r0                        
00400cee  0000         movs r0, r0                        
00400cf0  0000         movs r0, r0                        
00400cf2  0000         movs r0, r0                        
00400cf4  0000         movs r0, r0                        
00400cf6  0000         movs r0, r0                        
00400cf8  0000         movs r0, r0                        
00400cfa  0000         movs r0, r0                        
00400cfc  0000         movs r0, r0                        
00400cfe  0000         movs r0, r0                        
00400d00  0000         movs r0, r0                        
00400d02  0000         movs r0, r0                        
00400d04  0000         movs r0, r0                        
00400d06  0000         movs r0, r0                        
00400d08  0000         movs r0, r0                        
00400d0a  0000         movs r0, r0                        
00400d0c  0000         movs r0, r0                        
00400d0e  0000         movs r0, r0                        
00400d10  0000         movs r0, r0                        
00400d12  0000         movs r0, r0                        
00400d14  0000         movs r0, r0                        
00400d16  0000         movs r0, r0                        
00400d18  0000         movs r0, r0                        
00400d1a  0000         movs r0, r0                        
00400d1c  0000         movs r0, r0                        
00400d1e  0000         movs r0, r0                        
00400d20  0000         movs r0, r0                        
00400d22  0000         movs r0, r0                        
00400d24  0000         movs r0, r0                        
00400d26  0000         movs r0, r0                        
00400d28  0000         movs r0, r0                        
00400d2a  0000         movs r0, r0                        
00400d2c  0000         movs r0, r0                        
00400d2e  0000         movs r0, r0                        
00400d30  0000         movs r0, r0                        
00400d32  0000         movs r0, r0                        
00400d34  0000         movs r0, r0                        
00400d36  0000         movs r0, r0                        
00400d38  0000         movs r0, r0                        
00400d3a  0000         movs r0, r0                        
00400d3c  0000         movs r0, r0                        
00400d3e  0000         movs r0, r0                        
00400d40  0000         movs r0, r0                        
00400d42  0000         movs r0, r0                        
00400d44  0000         movs r0, r0                        
00400d46  0000         movs r0, r0                        
00400d48  0000         movs r0, r0                        
00400d4a  0000         movs r0, r0                        
00400d4c  0000         movs r0, r0                        
00400d4e  0000         movs r0, r0                        
00400d50  0000         movs r0, r0                        
00400d52  0000         movs r0, r0                        
00400d54  0000         movs r0, r0                        
00400d56  0000         movs r0, r0                        
00400d58  0000         movs r0, r0                        
00400d5a  0000         movs r0, r0                        
00400d5c  0000         movs r0, r0                        
00400d5e  0000         movs r0, r0                        
00400d60  0000         movs r0, r0                        
00400d62  0000         movs r0, r0                        
00400d64  0000         movs r0, r0                        
00400d66  0000         movs r0, r0                        
00400d68  0000         movs r0, r0                        
00400d6a  0000         movs r0, r0                        
00400d6c  0000         movs r0, r0                        
00400d6e  0000         movs r0, r0                        
00400d70  0000         movs r0, r0                        
00400d72  0000         movs r0, r0                        
00400d74  0000         movs r0, r0                        
00400d76  0000         movs r0, r0                        
00400d78  0000         movs r0, r0                        
00400d7a  0000         movs r0, r0                        
00400d7c  0000         movs r0, r0                        
00400d7e  0000         movs r0, r0                        
00400d80  0000         movs r0, r0                        
00400d82  0000         movs r0, r0                        
00400d84  0000         movs r0, r0                        
00400d86  0000         movs r0, r0                        
00400d88  0000         movs r0, r0                        
00400d8a  0000         movs r0, r0                        
00400d8c  0000         movs r0, r0                        
00400d8e  0000         movs r0, r0                        
00400d90  0000         movs r0, r0                        
00400d92  0000         movs r0, r0                        
00400d94  0000         movs r0, r0                        
00400d96  0000         movs r0, r0                        
00400d98  0000         movs r0, r0                        
00400d9a  0000         movs r0, r0                        
00400d9c  0000         movs r0, r0                        
00400d9e  0000         movs r0, r0                        
00400da0  0000         movs r0, r0                        
00400da2  0000         movs r0, r0                        
00400da4  0000         movs r0, r0                        
00400da6  0000         movs r0, r0                        
00400da8  0000         movs r0, r0                        
00400daa  0000         movs r0, r0                        
00400dac  0000         movs r0, r0                        
00400dae  0000         movs r0, r0                        
00400db0  0000         movs r0, r0                        
00400db2  0000         movs r0, r0                        
00400db4  0000         movs r0, r0                        
00400db6  0000         movs r0, r0                        
00400db8  0000         movs r0, r0                        
00400dba  0000         movs r0, r0                        
00400dbc  0000         movs r0, r0                        
00400dbe  0000         movs r0, r0                        
00400dc0  0000         movs r0, r0                        
00400dc2  0000         movs r0, r0                        
00400dc4  0000         movs r0, r0                        
00400dc6  0000         movs r0, r0                        
00400dc8  0000         movs r0, r0                        
00400dca  0000         movs r0, r0                        
00400dcc  0000         movs r0, r0                        
00400dce  0000         movs r0, r0                        
00400dd0  0000         movs r0, r0                        
00400dd2  0000         movs r0, r0                        
00400dd4  0000         movs r0, r0                        
00400dd6  0000         movs r0, r0                        
00400dd8  0000         movs r0, r0                        
00400dda  0000         movs r0, r0                        
00400ddc  0000         movs r0, r0                        
00400dde  0000         movs r0, r0                        
00400de0  0000         movs r0, r0                        
00400de2  0000         movs r0, r0                        
00400de4  0000         movs r0, r0                        
00400de6  0000         movs r0, r0                        
00400de8  0000         movs r0, r0                        
00400dea  0000         movs r0, r0                        
00400dec  0000         movs r0, r0                        
00400dee  0000         movs r0, r0                        
00400df0  0000         movs r0, r0                        
00400df2  0000         movs r0, r0                        
00400df4  0000         movs r0, r0                        
00400df6  0000         movs r0, r0                        
00400df8  0000         movs r0, r0                        
00400dfa  0000         movs r0, r0                        
00400dfc  0000         movs r0, r0                        
00400dfe  0000         movs r0, r0                        
00400e00  0000         movs r0, r0                        
00400e02  0000         movs r0, r0                        
00400e04  0000         movs r0, r0                        
00400e06  0000         movs r0, r0                        
00400e08  0000         movs r0, r0                        
00400e0a  0000         movs r0, r0                        
00400e0c  0000         movs r0, r0                        
00400e0e  0000         movs r0, r0                        
00400e10  0000         movs r0, r0                        
00400e12  0000         movs r0, r0                        
00400e14  0000         movs r0, r0                        
00400e16  0000         movs r0, r0                        
00400e18  0000         movs r0, r0                        
00400e1a  0000         movs r0, r0                        
00400e1c  0000         movs r0, r0                        
00400e1e  0000         movs r0, r0                        
00400e20  0000         movs r0, r0                        
00400e22  0000         movs r0, r0                        
00400e24  0000         movs r0, r0                        
00400e26  0000         movs r0, r0                        
00400e28  0000         movs r0, r0                        
00400e2a  0000         movs r0, r0                        
00400e2c  0000         movs r0, r0                        
00400e2e  0000         movs r0, r0                        
00400e30  0000         movs r0, r0                        
00400e32  0000         movs r0, r0                        
00400e34  0000         movs r0, r0                        
00400e36  0000         movs r0, r0                        
00400e38  0000         movs r0, r0                        
00400e3a  0000         movs r0, r0                        
00400e3c  0000         movs r0, r0                        
00400e3e  0000         movs r0, r0                        
00400e40  0000         movs r0, r0                        
00400e42  0000         movs r0, r0                        
00400e44  0000         movs r0, r0                        
00400e46  0000         movs r0, r0                        
00400e48  0000         movs r0, r0                        
00400e4a  0000         movs r0, r0                        
00400e4c  0000         movs r0, r0                        
00400e4e  0000         movs r0, r0                        
00400e50  0000         movs r0, r0                        
00400e52  0000         movs r0, r0                        
00400e54  0000         movs r0, r0                        
00400e56  0000         movs r0, r0                        
00400e58  0000         movs r0, r0                        
00400e5a  0000         movs r0, r0                        
00400e5c  0000         movs r0, r0                        
00400e5e  0000         movs r0, r0                        
00400e60  0000         movs r0, r0                        
00400e62  0000         movs r0, r0                        
00400e64  0000         movs r0, r0                        
00400e66  0000         movs r0, r0                        
00400e68  0000         movs r0, r0                        
00400e6a  0000         movs r0, r0                        
00400e6c  0000         movs r0, r0                        
00400e6e  0000         movs r0, r0                        
00400e70  0000         movs r0, r0                        
00400e72  0000         movs r0, r0                        
00400e74  0000         movs r0, r0                        
00400e76  0000         movs r0, r0                        
00400e78  0000         movs r0, r0                        
00400e7a  0000         movs r0, r0                        
00400e7c  0000         movs r0, r0                        
00400e7e  0000         movs r0, r0                        
00400e80  0000         movs r0, r0                        
00400e82  0000         movs r0, r0                        
00400e84  0000         movs r0, r0                        
00400e86  0000         movs r0, r0                        
00400e88  0000         movs r0, r0                        
00400e8a  0000         movs r0, r0                        
00400e8c  0000         movs r0, r0                        
00400e8e  0000         movs r0, r0                        
00400e90  0000         movs r0, r0                        
00400e92  0000         movs r0, r0                        
00400e94  0000         movs r0, r0                        
00400e96  0000         movs r0, r0                        
00400e98  0000         movs r0, r0                        
00400e9a  0000         movs r0, r0                        
00400e9c  0000         movs r0, r0                        
00400e9e  0000         movs r0, r0                        
00400ea0  0000         movs r0, r0                        
00400ea2  0000         movs r0, r0                        
00400ea4  0000         movs r0, r0                        
00400ea6  0000         movs r0, r0                        
00400ea8  0000         movs r0, r0                        
00400eaa  0000         movs r0, r0                        
00400eac  0000         movs r0, r0                        
00400eae  0000         movs r0, r0                        
00400eb0  0000         movs r0, r0                        
00400eb2  0000         movs r0, r0                        
00400eb4  0000         movs r0, r0                        
00400eb6  0000         movs r0, r0                        
00400eb8  0000         movs r0, r0                        
00400eba  0000         movs r0, r0                        
00400ebc  0000         movs r0, r0                        
00400ebe  0000         movs r0, r0                        
00400ec0  0000         movs r0, r0                        
00400ec2  0000         movs r0, r0                        
00400ec4  0000         movs r0, r0                        
00400ec6  0000         movs r0, r0                        
00400ec8  0000         movs r0, r0                        
00400eca  0000         movs r0, r0                        
00400ecc  0000         movs r0, r0                        
00400ece  0000         movs r0, r0                        
00400ed0  0000         movs r0, r0                        
00400ed2  0000         movs r0, r0                        
00400ed4  0000         movs r0, r0                        
00400ed6  0000         movs r0, r0                        
00400ed8  0000         movs r0, r0                        
00400eda  0000         movs r0, r0                        
00400edc  0000         movs r0, r0                        
00400ede  0000         movs r0, r0                        
00400ee0  0000         movs r0, r0                        
00400ee2  0000         movs r0, r0                        
00400ee4  0000         movs r0, r0                        
00400ee6  0000         movs r0, r0                        
00400ee8  0000         movs r0, r0                        
00400eea  0000         movs r0, r0                        
00400eec  0000         movs r0, r0                        
00400eee  0000         movs r0, r0                        
00400ef0  0000         movs r0, r0                        
00400ef2  0000         movs r0, r0                        
00400ef4  0000         movs r0, r0                        
00400ef6  0000         movs r0, r0                        
00400ef8  0000         movs r0, r0                        
00400efa  0000         movs r0, r0                        
00400efc  0000         movs r0, r0                        
00400efe  0000         movs r0, r0                        
00400f00  0000         movs r0, r0                        
00400f02  0000         movs r0, r0                        
00400f04  0000         movs r0, r0                        
00400f06  0000         movs r0, r0                        
00400f08  0000         movs r0, r0                        
00400f0a  0000         movs r0, r0                        
00400f0c  0000         movs r0, r0                        
00400f0e  0000         movs r0, r0                        
00400f10  0000         movs r0, r0                        
00400f12  0000         movs r0, r0                        
00400f14  0000         movs r0, r0                        
00400f16  0000         movs r0, r0                        
00400f18  0000         movs r0, r0                        
00400f1a  0000         movs r0, r0                        
00400f1c  0000         movs r0, r0                        
00400f1e  0000         movs r0, r0                        
00400f20  0000         movs r0, r0                        
00400f22  0000         movs r0, r0                        
00400f24  0000         movs r0, r0                        
00400f26  0000         movs r0, r0                        
00400f28  0000         movs r0, r0                        
00400f2a  0000         movs r0, r0                        
00400f2c  0000         movs r0, r0                        
00400f2e  0000         movs r0, r0                        
00400f30  0000         movs r0, r0                        
00400f32  0000         movs r0, r0                        
00400f34  0000         movs r0, r0                        
00400f36  0000         movs r0, r0                        
00400f38  0000         movs r0, r0                        
00400f3a  0000         movs r0, r0                        
00400f3c  0000         movs r0, r0                        
00400f3e  0000         movs r0, r0                        
00400f40  0000         movs r0, r0                        
00400f42  0000         movs r0, r0                        
00400f44  0000         movs r0, r0                        
00400f46  0000         movs r0, r0                        
00400f48  0000         movs r0, r0                        
00400f4a  0000         movs r0, r0                        
00400f4c  0000         movs r0, r0                        
00400f4e  0000         movs r0, r0                        
00400f50  0000         movs r0, r0                        
00400f52  0000         movs r0, r0                        
00400f54  0000         movs r0, r0                        
00400f56  0000         movs r0, r0                        
00400f58  0000         movs r0, r0                        
00400f5a  0000         movs r0, r0                        
00400f5c  0000         movs r0, r0                        
00400f5e  0000         movs r0, r0                        
00400f60  0000         movs r0, r0                        
00400f62  0000         movs r0, r0                        
00400f64  0000         movs r0, r0                        
00400f66  0000         movs r0, r0                        
00400f68  0000         movs r0, r0                        
00400f6a  0000         movs r0, r0                        
00400f6c  0000         movs r0, r0                        
00400f6e  0000         movs r0, r0                        
00400f70  0000         movs r0, r0                        
00400f72  0000         movs r0, r0                        
00400f74  0000         movs r0, r0                        
00400f76  0000         movs r0, r0                        
00400f78  0000         movs r0, r0                        
00400f7a  0000         movs r0, r0                        
00400f7c  0000         movs r0, r0                        
00400f7e  0000         movs r0, r0                        
00400f80  0000         movs r0, r0                        
00400f82  0000         movs r0, r0                        
00400f84  0000         movs r0, r0                        
00400f86  0000         movs r0, r0                        
00400f88  0000         movs r0, r0                        
00400f8a  0000         movs r0, r0                        
00400f8c  0000         movs r0, r0                        
00400f8e  0000         movs r0, r0                        
00400f90  0000         movs r0, r0                        
00400f92  0000         movs r0, r0                        
00400f94  0000         movs r0, r0                        
00400f96  0000         movs r0, r0                        
00400f98  0000         movs r0, r0                        
00400f9a  0000         movs r0, r0                        
00400f9c  0000         movs r0, r0                        
00400f9e  0000         movs r0, r0                        
00400fa0  0000         movs r0, r0                        
00400fa2  0000         movs r0, r0                        
00400fa4  0000         movs r0, r0                        
00400fa6  0000         movs r0, r0                        
00400fa8  0000         movs r0, r0                        
00400faa  0000         movs r0, r0                        
00400fac  0000         movs r0, r0                        
00400fae  0000         movs r0, r0                        
00400fb0  0000         movs r0, r0                        
00400fb2  0000         movs r0, r0                        
00400fb4  0000         movs r0, r0                        
00400fb6  0000         movs r0, r0                        
00400fb8  0000         movs r0, r0                        
00400fba  0000         movs r0, r0                        
00400fbc  0000         movs r0, r0                        
00400fbe  0000         movs r0, r0                        
00400fc0  0000         movs r0, r0                        
00400fc2  0000         movs r0, r0                        
00400fc4  0000         movs r0, r0                        
00400fc6  0000         movs r0, r0                        
00400fc8  0000         movs r0, r0                        
00400fca  0000         movs r0, r0                        
00400fcc  0000         movs r0, r0                        
00400fce  0000         movs r0, r0                        
00400fd0  0000         movs r0, r0                        
00400fd2  0000         movs r0, r0                        
00400fd4  0000         movs r0, r0                        
00400fd6  0000         movs r0, r0                        
00400fd8  0000         movs r0, r0                        
00400fda  0000         movs r0, r0                        
00400fdc  0000         movs r0, r0                        
00400fde  0000         movs r0, r0                        
00400fe0  0000         movs r0, r0                        
00400fe2  0000         movs r0, r0                        
00400fe4  0000         movs r0, r0                        
00400fe6  0000         movs r0, r0                        
00400fe8  0000         movs r0, r0                        
00400fea  0000         movs r0, r0                        
00400fec  0000         movs r0, r0                        
00400fee  0000         movs r0, r0                        
00400ff0  0000         movs r0, r0                        
00400ff2  0000         movs r0, r0                        
00400ff4  0000         movs r0, r0                        
00400ff6  0000         movs r0, r0                        
00400ff8  0000         movs r0, r0                        
00400ffa  0000         movs r0, r0                        
00400ffc  0000         movs r0, r0                        
00400ffe  0000         movs r0, r0                        
00401000  6e29         cmp r1, #0x6e                      
00401002  00f0a982     beq.w #0x401558                    
00401004  a982         strh r1, [r5, #0x14]               
00401006  7029         cmp r1, #0x70                      
00401008  00f0f383     beq.w #0x4017f2                    
0040100a  f383         strh r3, [r6, #0x1e]               
0040100c  6629         cmp r1, #0x66                      
0040100e  05f0a581     beq.w #0x40635c                    
00401010  a581         strh r5, [r4, #0xc]                
00401012  6529         cmp r1, #0x65                      
00401014  05f0a281     beq.w #0x40635c                    
00401016  a281         strh r2, [r4, #0xc]                
00401018  6729         cmp r1, #0x67                      
0040101a  05f09f81     beq.w #0x40635c                    
0040101c  9f81         strh r7, [r3, #0xc]                
0040101e  6129         cmp r1, #0x61                      
00401020  05f09e81     beq.w #0x406360                    
00401022  9e81         strh r6, [r3, #0xc]                
00401024  0368         ldr r3, [r0]                       
00401026  1b0a         lsrs r3, r3, #8                    
00401028  28bf         it hs                              
0040102a  41f08001     orr r1, r1, #0x80                  
0040102c  8001         lsls r0, r0, #6                    
0040102e  6929         cmp r1, #0x69                      
00401030  00f05a82     beq.w #0x4014e8                    
00401032  5a82         strh r2, [r3, #0x12]               
00401034  6429         cmp r1, #0x64                      
00401036  00f05782     beq.w #0x4014e8                    
00401038  5782         strh r7, [r2, #0x12]               
0040103a  7529         cmp r1, #0x75                      
0040103c  00f05482     beq.w #0x4014e8                    
0040103e  5482         strh r4, [r2, #0x12]               
00401040  6f29         cmp r1, #0x6f                      
00401042  00f08183     beq.w #0x401748                    
00401044  8183         strh r1, [r0, #0x1c]               
00401046  7829         cmp r1, #0x78                      
00401048  00f0bf83     beq.w #0x4017ca                    
0040104a  bf83         strh r7, [r7, #0x1c]               
0040104c  e929         cmp r1, #0xe9                      
0040104e  00f01b83     beq.w #0x401688                    
00401050  1b83         strh r3, [r3, #0x18]               
00401052  e429         cmp r1, #0xe4                      
00401054  00f01883     beq.w #0x401688                    
00401056  1883         strh r0, [r3, #0x18]               
00401058  f529         cmp r1, #0xf5                      
0040105a  00f01583     beq.w #0x401688                    
0040105c  1583         strh r5, [r2, #0x18]               
0040105e  ef29         cmp r1, #0xef                      
00401060  00f07e83     beq.w #0x401760                    
00401062  7e83         strh r6, [r7, #0x1a]               
00401064  f829         cmp r1, #0xf8                      
00401066  00f0be83     beq.w #0x4017e6                    
00401068  be83         strh r6, [r7, #0x1c]               
0040106a  0368         ldr r3, [r0]                       
0040106c  db09         lsrs r3, r3, #7                    
0040106e  28bf         it hs                              
00401070  41f08001     orr r1, r1, #0x80                  
00401072  8001         lsls r0, r0, #6                    
00401074  6329         cmp r1, #0x63                      
00401076  01f0c380     beq.w #0x402200                    
00401078  c380         strh r3, [r0, #6]                  
0040107a  7329         cmp r1, #0x73                      
0040107c  01f0c880     beq.w #0x402210                    
0040107e  c880         strh r0, [r1, #6]                  
00401080  e329         cmp r1, #0xe3                      
00401082  01f0d380     beq.w #0x40222c                    
00401084  d380         strh r3, [r2, #6]                  
00401086  f329         cmp r1, #0xf3                      
00401088  01f0d880     beq.w #0x40223c                    
0040108a  d880         strh r0, [r3, #6]                  
0040108c  0020         movs r0, #0                        
0040108e  7047         bx lr                              
00401090  7cb5         push {r2, r3, r4, r5, r6, lr}      
00401092  1d46         mov r5, r3                         
00401094  1646         mov r6, r2                         
00401096  0c00         movs r4, r1                        
00401098  0090         str r0, [sp]                       
0040109a  01d0         beq #0x4010a0                      
0040109c  2044         add r0, r4                         
0040109e  401e         subs r0, r0, #1                    
004010a0  074b         ldr r3, [pc, #0x1c]                
004010a2  7b44         add r3, pc                         
004010a4  2a46         mov r2, r5                         
004010a6  6946         mov r1, sp                         
004010a8  0190         str r0, [sp, #4]                   
004010aa  3046         mov r0, r6                         
004010ac  00f06dfa     bl #0x40158a                       
004010ae  6dfa         (undecodable)
004010b0  0546         mov r5, r0                         
004010b2  1cb1         cbz r4, #0x4010bc                  
004010b4  0020         movs r0, #0                        
004010b6  6946         mov r1, sp                         
004010b8  00f07afa     bl #0x4015b0                       
004010ba  7afa         (undecodable)
004010bc  2846         mov r0, r5                         
004010be  7cbd         pop {r2, r3, r4, r5, r6, pc}       
004010c0  1505         lsls r5, r2, #0x14                 
004010c2  0000         movs r0, r0                        
004010c4  40ea0103     orr.w r3, r0, r1                   
004010c6  0103         lsls r1, r0, #0xc                  
004010c8  10b5         push {r4, lr}                      
004010ca  9b07         lsls r3, r3, #0x1e                 
004010cc  0fd1         bne #0x4010ee                      
004010ce  042a         cmp r2, #4                         
004010d0  0dd3         blo #0x4010ee                      
004010d2  10c8         ldm r0!, {r4}                      
004010d4  08c9         ldm r1!, {r3}                      
004010d6  121f         subs r2, r2, #4                    
004010d8  9c42         cmp r4, r3                         
004010da  f8d0         beq #0x4010ce                      
004010dc  20ba         rev r0, r4                         
004010de  19ba         rev r1, r3                         
004010e0  8842         cmp r0, r1                         
004010e2  01d9         bls #0x4010e8                      
004010e4  0120         movs r0, #1                        
004010e6  10bd         pop {r4, pc}                       
004010e8  4ff0ff30     mov.w r0, #-1                      
004010ea  ff30         adds r0, #0xff                     
004010ec  10bd         pop {r4, pc}                       
004010ee  1ab1         cbz r2, #0x4010f8                  
004010f0  d307         lsls r3, r2, #0x1f                 
004010f2  03d0         beq #0x4010fc                      
004010f4  521c         adds r2, r2, #1                    
004010f6  07e0         b #0x401108                        
004010f8  0020         movs r0, #0                        
004010fa  10bd         pop {r4, pc}                       
004010fc  10f8013b     ldrb r3, [r0], #1                  
004010fe  013b         subs r3, #1                        
00401100  11f8014b     ldrb r4, [r1], #1                  
00401102  014b         ldr r3, [pc, #4]                   
00401104  1b1b         subs r3, r3, r4                    
00401106  07d1         bne #0x401118                      
00401108  10f8013b     ldrb r3, [r0], #1                  
0040110a  013b         subs r3, #1                        
0040110c  11f8014b     ldrb r4, [r1], #1                  
0040110e  014b         ldr r3, [pc, #4]                   
00401110  1b1b         subs r3, r3, r4                    
00401112  01d1         bne #0x401118                      
00401114  921e         subs r2, r2, #2                    
00401116  f1d1         bne #0x4010fc                      
00401118  1846         mov r0, r3                         
0040111a  10bd         pop {r4, pc}                       
0040111c  0300         movs r3, r0                        
0040111e  52e3         b #0x4017c6                        
00401120  1700         movs r7, r2                        
00401122  009a         ldr r2, [sp]                       
00401124  03c0         stm r0!, {r0, r1}                  
00401126  10e2         b #0x40154a                        
00401128  0800         movs r0, r1                        
0040112a  000a         lsrs r0, r0, #8                    
0040112c  0130         adds r0, #1                        
0040112e  d1e4         b #0x400ad4                        
00401130  0200         movs r2, r0                        
00401132  5ce3         b #0x4017ee                        
00401134  0c20         movs r0, #0xc                      
00401136  82e0         b #0x40123e                        
00401138  01c0         stm r0!, {r0}                      
0040113a  d194         str r4, [sp, #0x344]               
0040113c  0130         adds r0, #1                        
0040113e  c0e4         b #0x400ac2                        
00401140  0130         adds r0, #1                        
00401142  d134         adds r4, #0xd1                     
00401144  0420         movs r0, #4                        
00401146  42e2         b #0x4015ce                        
00401148  01c0         stm r0!, {r0}                      
0040114a  c094         str r4, [sp, #0x300]               
0040114c  0130         adds r0, #1                        
0040114e  c034         adds r4, #0xc0                     
00401150  0330         adds r0, #3                        
00401152  11e2         b #0x401578                        
00401154  1200         movs r2, r2                        
00401156  000a         lsrs r0, r0, #8                    
00401158  0820         movs r0, #8                        
0040115a  52e2         b #0x401602                        
0040115c  0400         movs r4, r0                        
0040115e  003a         subs r2, #0                        
00401160  0430         adds r0, #4                        
00401162  91e4         b #0x400a88                        
00401164  0820         movs r0, #8                        
00401166  52e2         b #0x40160e                        
00401168  04c0         stm r0!, {r2}                      
0040116a  91e4         b #0x400a90                        
0040116c  0810         asrs r0, r1, #0x20                 
0040116e  a0e8         (undecodable)
00401170  f9ff         (undecodable)
00401172  ffea         (undecodable)
00401174  0420         movs r0, #4                        
00401176  92e2         b #0x40169e                        
00401178  0430         adds r0, #4                        
0040117a  9154         strb r1, [r2, r2]                  
0040117c  0430         adds r0, #4                        
0040117e  8054         strb r0, [r0, r2]                  
00401180  0000         movs r0, r0                        
00401182  a0e1         b #0x4014c6                        
00401184  822f         cmp r7, #0x82                      
00401186  b0e1         b #0x4014ea                        
00401188  0130         adds r0, #1                        
0040118a  d124         movs r4, #0xd1                     
0040118c  01c0         stm r0!, {r0}                      
0040118e  d124         movs r4, #0xd1                     
00401190  0120         movs r0, #1                        
00401192  d144         add sb, sl                         
00401194  0130         adds r0, #1                        
00401196  c024         movs r4, #0xc0                     
00401198  01c0         stm r0!, {r0}                      
0040119a  c024         movs r4, #0xc0                     
0040119c  0120         movs r0, #1                        
0040119e  c044         add r8, r8                         
004011a0  1eff2fe1     vrhadd.u16 d14, d14, d31           
004011a2  2fe1         b #0x401404                        
004011a4  1040         ands r0, r2                        
004011a6  2de9         (undecodable)
004011a8  2020         movs r0, #0x20                     
004011aa  52e2         b #0x401652                        
004011ac  0500         movs r5, r0                        
004011ae  003a         subs r2, #0                        
004011b0  1850         str r0, [r3, r0]                   
004011b2  b1e81850     ldm.w r1!, {r3, r4, ip, lr}        
004011b4  1850         str r0, [r3, r0]                   
004011b6  a0e81850     stm.w r0!, {r3, r4, ip, lr}        
004011b8  1850         str r0, [r3, r0]                   
004011ba  b1e81850     ldm.w r1!, {r3, r4, ip, lr}        
004011bc  1850         str r0, [r3, r0]                   
004011be  a0e8         (undecodable)
004011c0  2020         movs r0, #0x20                     
004011c2  52e2         b #0x40166a                        
004011c4  f9ff         (undecodable)
004011c6  ff2a         cmp r2, #0xff                      
004011c8  02ce         ldm r6!, {r1}                      
004011ca  b0e1         b #0x40152e                        
004011cc  1850         str r0, [r3, r0]                   
004011ce  b128         cmp r0, #0xb1                      
004011d0  1850         str r0, [r3, r0]                   
004011d2  a028         cmp r0, #0xa0                      
004011d4  1800         movs r0, r3                        
004011d6  b148         ldr r0, [pc, #0x2c4]               
004011d8  1800         movs r0, r3                        
004011da  a048         ldr r0, [pc, #0x280]               
004011dc  1040         ands r0, r2                        
004011de  bde802cf     pop.w {r1, r8, sb, sl, fp, lr, pc} 
004011e0  02cf         ldm r7!, {r1}                      
004011e2  b0e1         b #0x401546                        
004011e4  0430         adds r0, #4                        
004011e6  9124         movs r4, #0x91                     
004011e8  0430         adds r0, #4                        
004011ea  8024         movs r4, #0x80                     
004011ec  1eff2f01     vrhadd.u16 d0, d14, d31            
004011ee  2f01         lsls r7, r5, #4                    
004011f0  822f         cmp r7, #0x82                      
004011f2  b0e1         b #0x401556                        
004011f4  b230         adds r0, #0xb2                     
004011f6  d120         movs r0, #0xd1                     
004011f8  0120         movs r0, #1                        
004011fa  d144         add sb, sl                         
004011fc  b230         adds r0, #0xb2                     
004011fe  c020         movs r0, #0xc0                     
00401200  0120         movs r0, #1                        
00401202  c044         add r8, r8                         
00401204  1eff2fe1     vrhadd.u16 d14, d14, d31           
00401206  2fe1         b #0x401468                        
00401208  4ff00002     mov.w r2, #0                       
0040120a  0002         lsls r0, r0, #8                    
0040120c  0429         cmp r1, #4                         
0040120e  c0f01280     blo.w #0x401236                    
00401210  1280         strh r2, [r2]                      
00401212  10f0030c     ands ip, r0, #3                    
00401214  030c         lsrs r3, r0, #0x10                 
00401216  00f01b80     beq.w #0x401250                    
00401218  1b80         strh r3, [r3]                      
0040121a  ccf1040c     rsb.w ip, ip, #4                   
0040121c  040c         lsrs r4, r0, #0x10                 
0040121e  bcf1020f     cmp.w ip, #2                       
00401220  020f         lsrs r2, r0, #0x1c                 
00401222  18bf         it ne                              
00401224  00f8012b     strb r2, [r0], #1                  
00401226  012b         cmp r3, #1                         
00401228  a8bf         it ge                              
0040122a  20f8022b     strh r2, [r0], #2                  
0040122c  022b         cmp r3, #2                         
0040122e  a1eb0c01     sub.w r1, r1, ip                   
00401230  0c01         lsls r4, r1, #4                    
00401232  00f00db8     b.w #0x401250                      
00401234  0db8         (undecodable)
00401236  5feac17c     lsls.w ip, r1, #0x1f               
00401238  c17c         ldrb r1, [r0, #0x13]               
0040123a  24bf         itt hs                             
0040123c  00f8012b     strb r2, [r0], #1                  
0040123e  012b         cmp r3, #1                         
00401240  00f8012b     strb r2, [r0], #1                  
00401242  012b         cmp r3, #1                         
00401244  48bf         it mi                              
00401246  00f8012b     strb r2, [r0], #1                  
00401248  012b         cmp r3, #1                         
0040124a  7047         bx lr                              
0040124c  4ff00002     mov.w r2, #0                       
0040124e  0002         lsls r0, r0, #8                    
00401250  00b5         push {lr}                          
00401252  1346         mov r3, r2                         
00401254  9446         mov ip, r2                         
00401256  9646         mov lr, r2                         
00401258  2039         subs r1, #0x20                     
0040125a  22bf         ittt hs                            
0040125c  a0e80c50     stm.w r0!, {r2, r3, ip, lr}        
0040125e  0c50         str r4, [r1, r0]                   
00401260  a0e80c50     stm.w r0!, {r2, r3, ip, lr}        
00401262  0c50         str r4, [r1, r0]                   
00401264  b1f12001     subs.w r1, r1, #0x20               
00401266  2001         lsls r0, r4, #4                    
00401268  bff4f7af     bhs.w #0x40125a                    
0040126a  f7af         add r7, sp, #0x3dc                 
0040126c  0907         lsls r1, r1, #0x1c                 
0040126e  28bf         it hs                              
00401270  a0e80c50     stm.w r0!, {r2, r3, ip, lr}        
00401272  0c50         str r4, [r1, r0]                   
00401274  48bf         it mi                              
00401276  0cc0         stm r0!, {r2, r3}                  
00401278  5df804eb     ldr lr, [sp], #4                   
0040127a  04eb8900     add.w r0, r4, sb, lsl #2           
0040127c  8900         lsls r1, r1, #2                    
0040127e  28bf         it hs                              
00401280  40f8042b     str r2, [r0], #4                   
00401282  042b         cmp r3, #4                         
00401284  08bf         it eq                              
00401286  7047         bx lr                              
00401288  48bf         it mi                              
0040128a  20f8022b     strh r2, [r0], #2                  
0040128c  022b         cmp r3, #2                         
0040128e  11f0804f     tst.w r1, #0x40000000              
00401290  804f         ldr r7, [pc, #0x200]               
00401292  18bf         it ne                              
00401294  00f8012b     strb r2, [r0], #1                  
00401296  012b         cmp r3, #1                         
00401298  7047         bx lr                              
0040129a  0000         movs r0, r0                        
0040129c  0130         adds r0, #1                        
0040129e  90e1         b #0x4015c2                        
004012a0  2100         movs r1, r4                        
004012a2  004a         ldr r2, [pc, #0]                   
004012a4  0020         movs r0, #0                        
004012a6  b0e3         b #0x401a0a                        
004012a8  a030         adds r0, #0xa0                     
004012aa  71e0         b #0x401390                        
004012ac  1a00         movs r2, r3                        
004012ae  003a         subs r2, #0                        
004012b0  2032         adds r2, #0x20                     
004012b2  71e0         b #0x401398                        
004012b4  0f00         movs r7, r1                        
004012b6  003a         subs r2, #0                        
004012b8  2034         adds r4, #0x20                     
004012ba  71e0         b #0x4013a0                        
004012bc  0100         movs r1, r0                        
004012be  003a         subs r2, #0                        
004012c0  00c0         (undecodable)
004012c2  a0e3         b #0x401a06                        
004012c4  2000         movs r0, r4                        
004012c6  00eaa033     and.w r3, r0, r0, asr #14          
004012c8  a033         adds r3, #0xa0                     
004012ca  71e0         b #0x4013b0                        
004012cc  8103         lsls r1, r0, #0xe                  
004012ce  4020         movs r0, #0x40                     
004012d0  0220         movs r0, #2                        
004012d2  b2e0         b #0x40143a                        
004012d4  2033         adds r3, #0x20                     
004012d6  71e0         b #0x4013bc                        
004012d8  0103         lsls r1, r0, #0xc                  
004012da  4020         movs r0, #0x40                     
004012dc  0220         movs r0, #2                        
004012de  b2e0         b #0x401446                        
004012e0  a032         adds r2, #0xa0                     
004012e2  71e0         b #0x4013c8                        
004012e4  8102         lsls r1, r0, #0xa                  
004012e6  4020         movs r0, #0x40                     
004012e8  0220         movs r0, #2                        
004012ea  b2e0         b #0x401452                        
004012ec  2032         adds r2, #0x20                     
004012ee  71e0         b #0x4013d4                        
004012f0  0102         lsls r1, r0, #8                    
004012f2  4020         movs r0, #0x40                     
004012f4  0220         movs r0, #2                        
004012f6  b2e0         b #0x40145e                        
004012f8  a031         adds r1, #0xa0                     
004012fa  71e0         b #0x4013e0                        
004012fc  8101         lsls r1, r0, #6                    
004012fe  4020         movs r0, #0x40                     
00401300  0220         movs r0, #2                        
00401302  b2e0         b #0x40146a                        
00401304  2031         adds r1, #0x20                     
00401306  71e0         b #0x4013ec                        
00401308  0101         lsls r1, r0, #4                    
0040130a  4020         movs r0, #0x40                     
0040130c  0220         movs r0, #2                        
0040130e  b2e0         b #0x401476                        
00401310  a030         adds r0, #0xa0                     
00401312  71e0         b #0x4013f8                        
00401314  8100         lsls r1, r0, #2                    
00401316  4020         movs r0, #0x40                     
00401318  0220         movs r0, #2                        
0040131a  b2e0         b #0x401482                        
0040131c  0110         asrs r1, r0, #0x20                 
0040131e  50e0         b #0x4013c2                        
00401320  0010         asrs r0, r0, #0x20                 
00401322  a031         adds r1, #0xa0                     
00401324  0200         movs r2, r0                        
00401326  a2e0         b #0x40146e                        
00401328  1eff2fe1     vrhadd.u16 d14, d14, d31           
0040132a  2fe1         b #0x40158c                        
0040132c  0221         movs r1, #2                        
0040132e  11e2         b #0x401754                        
00401330  0010         asrs r0, r0, #0x20                 
00401332  6142         rsbs r1, r4, #0                    
00401334  40c0         stm r0!, {r6}                      
00401336  32e0         b #0x40139e                        
00401338  0000         movs r0, r0                        
0040133a  6022         movs r2, #0x60                     
0040133c  2032         adds r2, #0x20                     
0040133e  71e0         b #0x401424                        
00401340  1d00         movs r5, r3                        
00401342  003a         subs r2, #0                        
00401344  2034         adds r4, #0x20                     
00401346  71e0         b #0x40142c                        
00401348  0f00         movs r7, r1                        
0040134a  003a         subs r2, #0                        
0040134c  0113         asrs r1, r0, #0xc                  
0040134e  a0e1         b #0x401692                        
00401350  3f23         movs r3, #0x3f                     
00401352  82e3         b #0x401a5a                        
00401354  2034         adds r4, #0x20                     
00401356  71e0         b #0x40143c                        
00401358  0b00         movs r3, r1                        
0040135a  003a         subs r2, #0                        
0040135c  0113         asrs r1, r0, #0xc                  
0040135e  a0e1         b #0x4016a2                        
00401360  3f26         movs r6, #0x3f                     
00401362  82e3         b #0x401a6a                        
00401364  2034         adds r4, #0x20                     
00401366  71e0         b #0x40144c                        
00401368  0700         movs r7, r0                        
0040136a  003a         subs r2, #0                        
0040136c  0113         asrs r1, r0, #0xc                  
0040136e  a0e1         b #0x4016b2                        
00401370  3f29         cmp r1, #0x3f                      
00401372  82e3         b #0x401a7a                        
00401374  2034         adds r4, #0x20                     
00401376  71e0         b #0x40145c                        
00401378  0113         asrs r1, r0, #0xc                  
0040137a  a021         movs r1, #0xa0                     
0040137c  3f2c         cmp r4, #0x3f                      
0040137e  8223         movs r3, #0x82                     
00401380  0030         adds r0, #0                        
00401382  71e2         b #0x401868                        
00401384  1d00         movs r5, r3                        
00401386  002a         cmp r2, #0                         
00401388  2113         asrs r1, r4, #0xc                  
0040138a  a021         movs r1, #0xa0                     
0040138c  a033         adds r3, #0xa0                     
0040138e  71e0         b #0x401474                        
00401390  8103         lsls r1, r0, #0xe                  
00401392  4020         movs r0, #0x40                     
00401394  0220         movs r0, #2                        
00401396  b2e0         b #0x4014fe                        
00401398  2033         adds r3, #0x20                     
0040139a  71e0         b #0x401480                        
0040139c  0103         lsls r1, r0, #0xc                  
0040139e  4020         movs r0, #0x40                     
004013a0  0220         movs r0, #2                        
004013a2  b2e0         b #0x40150a                        
004013a4  a032         adds r2, #0xa0                     
004013a6  71e0         b #0x40148c                        
004013a8  8102         lsls r1, r0, #0xa                  
004013aa  4020         movs r0, #0x40                     
004013ac  0220         movs r0, #2                        
004013ae  b2e0         b #0x401516                        
004013b0  2032         adds r2, #0x20                     
004013b2  71e0         b #0x401498                        
004013b4  0102         lsls r1, r0, #8                    
004013b6  4020         movs r0, #0x40                     
004013b8  0220         movs r0, #2                        
004013ba  b2e0         b #0x401522                        
004013bc  a031         adds r1, #0xa0                     
004013be  71e0         b #0x4014a4                        
004013c0  8101         lsls r1, r0, #6                    
004013c2  4020         movs r0, #0x40                     
004013c4  0220         movs r0, #2                        
004013c6  b2e0         b #0x40152e                        
004013c8  2031         adds r1, #0x20                     
004013ca  71e0         b #0x4014b0                        
004013cc  0101         lsls r1, r0, #4                    
004013ce  4020         movs r0, #0x40                     
004013d0  0220         movs r0, #2                        
004013d2  b2e0         b #0x40153a                        
004013d4  ebff         (undecodable)
004013d6  ff2a         cmp r2, #0xff                      
004013d8  a030         adds r0, #0xa0                     
004013da  71e0         b #0x4014c0                        
004013dc  8100         lsls r1, r0, #2                    
004013de  4020         movs r0, #0x40                     
004013e0  0220         movs r0, #2                        
004013e2  b2e0         b #0x40154a                        
004013e4  0110         asrs r1, r0, #0x20                 
004013e6  50e0         b #0x40148a                        
004013e8  0010         asrs r0, r0, #0x20                 
004013ea  a031         adds r1, #0xa0                     
004013ec  0200         movs r2, r0                        
004013ee  a2e0         b #0x401536                        
004013f0  cccf         ldm r7, {r2, r3, r6, r7}           
004013f2  b0e1         b #0x401756                        
004013f4  0000         movs r0, r0                        
004013f6  6042         rsbs r0, r4, #0                    
004013f8  0010         asrs r0, r0, #0x20                 
004013fa  6122         movs r2, #0x61                     
004013fc  1eff2fe1     vrhadd.u16 d14, d14, d31           
004013fe  2fe1         b #0x401660                        
00401400  cccf         ldm r7, {r2, r3, r6, r7}           
00401402  b0e1         b #0x401766                        
00401404  0000         movs r0, r0                        
00401406  6042         rsbs r0, r4, #0                    
00401408  0140         ands r1, r0                        
0040140a  2de90211     push.w {r1, r8, ip}                
0040140c  0211         asrs r2, r0, #4                    
0040140e  00e2         b #0x401812                        
00401410  0000         movs r0, r0                        
00401412  50e3         b #0x401ab6                        
00401414  0211         asrs r2, r0, #4                    
00401416  e0c3         stm r3!, {r5, r6, r7}              
00401418  0100         movs r1, r0                        
0040141a  a0e1         b #0x40175e                        
0040141c  0000         movs r0, r0                        
0040141e  a0e1         b #0x401762                        
00401420  0280         strh r2, [r0]                      
00401422  bde870b5     pop.w {r4, r5, r6, r8, sl, ip, sp, pc} 
00401424  70b5         push {r4, r5, r6, lr}              
00401426  0446         mov r4, r0                         
00401428  8569         ldr r5, [r0, #0x18]                
0040142a  0068         ldr r0, [r0]                       
0040142c  c106         lsls r1, r0, #0x1b                 
0040142e  01d5         bpl #0x401434                      
00401430  3026         movs r6, #0x30                     
00401432  00e0         b #0x401436                        
00401434  2026         movs r6, #0x20                     
00401436  c007         lsls r0, r0, #0x1f                 
00401438  07d0         beq #0x40144a                      
0040143a  70bd         pop {r4, r5, r6, pc}               
0040143c  d4e90121     ldrd r2, r1, [r4, #4]              
0040143e  0121         movs r1, #1                        
00401440  3046         mov r0, r6                         
00401442  9047         blx r2                             
00401444  206a         ldr r0, [r4, #0x20]                
00401446  401c         adds r0, r0, #1                    
00401448  2062         str r0, [r4, #0x20]                
0040144a  6d1e         subs r5, r5, #1                    
0040144c  f6d5         bpl #0x40143c                      
0040144e  70bd         pop {r4, r5, r6, pc}               
00401450  70b5         push {r4, r5, r6, lr}              
00401452  0446         mov r4, r0                         
00401454  8569         ldr r5, [r0, #0x18]                
00401456  0078         ldrb r0, [r0]                      
00401458  c007         lsls r0, r0, #0x1f                 
0040145a  07d1         bne #0x40146c                      
0040145c  70bd         pop {r4, r5, r6, pc}               
0040145e  d4e90121     ldrd r2, r1, [r4, #4]              
00401460  0121         movs r1, #1                        
00401462  2020         movs r0, #0x20                     
00401464  9047         blx r2                             
00401466  206a         ldr r0, [r4, #0x20]                
00401468  401c         adds r0, r0, #1                    
0040146a  2062         str r0, [r4, #0x20]                
0040146c  6d1e         subs r5, r5, #1                    
0040146e  f6d5         bpl #0x40145e                      
00401470  70bd         pop {r4, r5, r6, pc}               
00401472  0968         ldr r1, [r1]                       
00401474  4a05         lsls r2, r1, #0x15                 
00401476  01d5         bpl #0x40147c                      
00401478  40b2         sxtb r0, r0                        
0040147a  7047         bx lr                              
0040147c  c905         lsls r1, r1, #0x17                 
0040147e  fcd5         bpl #0x40147a                      
00401480  00b2         sxth r0, r0                        
00401482  7047         bx lr                              
00401484  0968         ldr r1, [r1]                       
00401486  4a05         lsls r2, r1, #0x15                 
00401488  01d5         bpl #0x40148e                      
0040148a  c0b2         uxtb r0, r0                        
0040148c  7047         bx lr                              
0040148e  c905         lsls r1, r1, #0x17                 
00401490  fcd5         bpl #0x40148c                      
00401492  80b2         uxth r0, r0                        
00401494  7047         bx lr                              
00401496  70b5         push {r4, r5, r6, lr}              
00401498  0c46         mov r4, r1                         
0040149a  0546         mov r5, r0                         
0040149c  012a         cmp r2, #1                         
0040149e  05d0         beq #0x4014ac                      
004014a0  2878         ldrb r0, [r5]                      
004014a2  8006         lsls r0, r0, #0x1a                 
004014a4  00d5         bpl #0x4014a8                      
004014a6  ea69         ldr r2, [r5, #0x1c]                
004014a8  0023         movs r3, #0                        
004014aa  02e0         b #0x4014b2                        
004014ac  0123         movs r3, #1                        
004014ae  05e0         b #0x4014bc                        
004014b0  5b1c         adds r3, r3, #1                    
004014b2  9342         cmp r3, r2                         
004014b4  02d2         bhs #0x4014bc                      
004014b6  e05c         ldrb r0, [r4, r3]                  
004014b8  0028         cmp r0, #0                         
004014ba  f9d1         bne #0x4014b0                      
004014bc  a869         ldr r0, [r5, #0x18]                
004014be  e618         adds r6, r4, r3                    
004014c0  c01a         subs r0, r0, r3                    
004014c2  a861         str r0, [r5, #0x18]                
004014c4  286a         ldr r0, [r5, #0x20]                
004014c6  1844         add r0, r3                         
004014c8  2862         str r0, [r5, #0x20]                
004014ca  2846         mov r0, r5                         
004014cc  fff7aaff     bl #0x401424                       
004014ce  aaff04e0     vaddl.u32 q7, d10, d4              
004014d0  04e0         b #0x4014dc                        
004014d2  d5e90121     ldrd r2, r1, [r5, #4]              
004014d4  0121         movs r1, #1                        
004014d6  14f8010b     ldrb r0, [r4], #1                  
004014d8  010b         lsrs r1, r0, #0xc                  
004014da  9047         blx r2                             
004014dc  b442         cmp r4, r6                         
004014de  f8d3         blo #0x4014d2                      
004014e0  2846         mov r0, r5                         
004014e2  fff7b5ff     bl #0x401450                       
004014e4  b5ff         (undecodable)
004014e6  70bd         pop {r4, r5, r6, pc}               
004014e8  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
004014ea  f041         rors r0, r6                        
004014ec  8046         mov r8, r0                         
004014ee  0025         movs r5, #0                        
004014f0  1068         ldr r0, [r2]                       
004014f2  7529         cmp r1, #0x75                      
004014f4  4146         mov r1, r8                         
004014f6  14a6         adr r6, #0x50                      
004014f8  11d0         beq #0x40151e                      
004014fa  fff7baff     bl #0x401472                       
004014fc  baff0028     vtbl.8 d2, {d10}, d0               
004014fe  0028         cmp r0, #0                         
00401500  02da         bge #0x401508                      
00401502  4042         rsbs r0, r0, #0                    
00401504  11a6         adr r6, #0x44                      
00401506  08e0         b #0x40151a                        
00401508  d8f80010     ldr.w r1, [r8]                     
0040150a  0010         asrs r0, r0, #0x20                 
0040150c  8a07         lsls r2, r1, #0x1e                 
0040150e  01d5         bpl #0x401514                      
00401510  0fa6         adr r6, #0x3c                      
00401512  02e0         b #0x40151a                        
00401514  4907         lsls r1, r1, #0x1d                 
00401516  04d5         bpl #0x401522                      
00401518  0ea6         adr r6, #0x38                      
0040151a  0125         movs r5, #1                        
0040151c  01e0         b #0x401522                        
0040151e  fff7b1ff     bl #0x401484                       
00401520  b1ff         (undecodable)
00401522  0024         movs r4, #0                        
00401524  08f12407     add.w r7, r8, #0x24                
00401526  2407         lsls r4, r4, #0x1c                 
00401528  04e0         b #0x401534                        
0040152a  00f0b0ee     blx #0x40228c                      
0040152c  b0ee3031     mrc p1, #5, r3, c0, c0, #1         
0040152e  3031         adds r1, #0x30                     
00401530  3955         strb r1, [r7, r4]                  
00401532  641c         adds r4, r4, #1                    
00401534  0028         cmp r0, #0                         
00401536  f8d1         bne #0x40152a                      
00401538  2b46         mov r3, r5                         
0040153a  3246         mov r2, r6                         
0040153c  2146         mov r1, r4                         
0040153e  4046         mov r0, r8                         
00401540  bde8f041     pop.w {r4, r5, r6, r7, r8, lr}     
00401542  f041         rors r0, r6                        
00401544  00f070ba     b.w #0x401a28                      
00401546  70ba         rev16 r0, r6                       
00401548  0000         movs r0, r0                        
0040154a  0000         movs r0, r0                        
0040154c  2d00         movs r5, r5                        
0040154e  0000         movs r0, r0                        
00401550  2b00         movs r3, r5                        
00401552  0000         movs r0, r0                        
00401554  2000         movs r0, r4                        
00401556  0000         movs r0, r0                        
00401558  1168         ldr r1, [r2]                       
0040155a  0268         ldr r2, [r0]                       
0040155c  006a         ldr r0, [r0, #0x20]                
0040155e  5305         lsls r3, r2, #0x15                 
00401560  01d5         bpl #0x401566                      
00401562  0870         strb r0, [r1]                      
00401564  0ae0         b #0x40157c                        
00401566  d305         lsls r3, r2, #0x17                 
00401568  01d5         bpl #0x40156e                      
0040156a  0880         strh r0, [r1]                      
0040156c  06e0         b #0x40157c                        
0040156e  1306         lsls r3, r2, #0x18                 
00401570  03d5         bpl #0x40157a                      
00401572  c217         asrs r2, r0, #0x1f                 
00401574  c1e90002     strd r0, r2, [r1]                  
00401576  0002         lsls r0, r0, #8                    
00401578  00e0         b #0x40157c                        
0040157a  0860         str r0, [r1]                       
0040157c  0120         movs r0, #1                        
0040157e  7047         bx lr                              
00401580  0169         ldr r1, [r0, #0x10]                
00401582  4a1c         adds r2, r1, #1                    
00401584  0261         str r2, [r0, #0x10]                
00401586  0878         ldrb r0, [r1]                      
00401588  7047         bx lr                              
0040158a  00b5         push {lr}                          
0040158c  8fb0         sub sp, #0x3c                      
0040158e  cde90131     strd r3, r1, [sp, #4]              
00401590  0131         adds r1, #1                        
00401592  0021         movs r1, #0                        
00401594  0591         str r1, [sp, #0x14]                
00401596  0549         ldr r1, [pc, #0x14]                
00401598  7944         add r1, pc                         
0040159a  cde90310     strd r1, r0, [sp, #0xc]            
0040159c  0310         asrs r3, r0, #0x20                 
0040159e  1146         mov r1, r2                         
004015a0  6846         mov r0, sp                         
004015a2  00f031f9     bl #0x401808                       
004015a4  31f90fb0     ldrsh.w fp, [r1, pc]               
004015a6  0fb0         add sp, #0x3c                      
004015a8  00bd         pop {pc}                           
004015aa  0000         movs r0, r0                        
004015ac  e5ff         (undecodable)
004015ae  ffff0a68     vtbl.8 d22, {d15}, d10             
004015b0  0a68         ldr r2, [r1]                       
004015b2  02f8010b     strb r0, [r2], #1                  
004015b4  010b         lsrs r1, r0, #0xc                  
004015b6  0a60         str r2, [r1]                       
004015b8  7047         bx lr                              
004015ba  d1e90023     ldrd r2, r3, [r1]                  
004015bc  0023         movs r3, #0                        
004015be  9a42         cmp r2, r3                         
004015c0  02d2         bhs #0x4015c8                      
004015c2  531c         adds r3, r2, #1                    
004015c4  0b60         str r3, [r1]                       
004015c6  1070         strb r0, [r2]                      
004015c8  7047         bx lr                              
004015ca  0000         movs r0, r0                        
004015cc  2de9ff5f     push.w {r0, r1, r2, r3, r4, r5, r6, r7, r8, sb, sl, fp, ip, lr} 
004015ce  ff5f         ldrsh r7, [r7, r7]                 
004015d0  1546         mov r5, r2                         
004015d2  8a46         mov sl, r1                         
004015d4  0446         mov r4, r0                         
004015d6  dff8ac80     ldr.w r8, [pc, #0xac]              
004015d8  ac80         strh r4, [r5, #4]                  
004015da  f844         add r8, pc                         
004015dc  0027         movs r7, #0                        
004015de  d8e90010     ldrd r1, r0, [r8]                  
004015e0  0010         asrs r0, r0, #0x20                 
004015e2  3e46         mov r6, r7                         
004015e4  cde90010     strd r1, r0, [sp]                  
004015e6  0010         asrs r0, r0, #0x20                 
004015e8  10e0         b #0x40160c                        
004015ea  3af81610     ldrh.w r1, [sl, r6, lsl #1]        
004015ec  1610         asrs r6, r2, #0x20                 
004015ee  6a46         mov r2, sp                         
004015f0  02a8         add r0, sp, #8                     
004015f2  00f027fe     bl #0x402244                       
004015f4  27fe411c     cdp2 p12, #2, c1, c7, c1, #2       
004015f6  411c         adds r1, r0, #1                    
004015f8  07d0         beq #0x40160a                      
004015fa  2178         ldrb r1, [r4]                      
004015fc  8906         lsls r1, r1, #0x1a                 
004015fe  03d5         bpl #0x401608                      
00401600  e269         ldr r2, [r4, #0x1c]                
00401602  3918         adds r1, r7, r0                    
00401604  9142         cmp r1, r2                         
00401606  0dd8         bhi #0x401624                      
00401608  0744         add r7, r0                         
0040160a  761c         adds r6, r6, #1                    
0040160c  2078         ldrb r0, [r4]                      
0040160e  8006         lsls r0, r0, #0x1a                 
00401610  02d5         bpl #0x401618                      
00401612  e069         ldr r0, [r4, #0x1c]                
00401614  b842         cmp r0, r7                         
00401616  05dd         ble #0x401624                      
00401618  ae42         cmp r6, r5                         
0040161a  e6db         blt #0x4015ea                      
0040161c  3af81600     ldrh.w r0, [sl, r6, lsl #1]        
0040161e  1600         movs r6, r2                        
00401620  0028         cmp r0, #0                         
00401622  e2d1         bne #0x4015ea                      
00401624  a069         ldr r0, [r4, #0x18]                
00401626  c01b         subs r0, r0, r7                    
00401628  a061         str r0, [r4, #0x18]                
0040162a  2046         mov r0, r4                         
0040162c  fff7fafe     bl #0x401424                       
0040162e  fafed8e9     mrc2 p9, #7, lr, c10, c8, #6       
00401630  d8e90010     ldrd r1, r0, [r8]                  
00401632  0010         asrs r0, r0, #0x20                 
00401634  cde90010     strd r1, r0, [sp]                  
00401636  0010         asrs r0, r0, #0x20                 
00401638  0020         movs r0, #0                        
0040163a  17e0         b #0x40166c                        
0040163c  3af81810     ldrh.w r1, [sl, r8, lsl #1]        
0040163e  1810         asrs r0, r3, #0x20                 
00401640  6a46         mov r2, sp                         
00401642  02a8         add r0, sp, #8                     
00401644  00f0fefd     bl #0x402244                       
00401646  fefdb0f1     ldc2l p1, c15, [lr, #0x2c0]!       
00401648  b0f1ff3f     cmp.w r0, #-1                      
0040164a  ff3f         subs r7, #0xff                     
0040164c  8146         mov sb, r0                         
0040164e  0bd0         beq #0x401668                      
00401650  0025         movs r5, #0                        
00401652  0df1080b     add.w fp, sp, #8                   
00401654  080b         lsrs r0, r1, #0xc                  
00401656  05e0         b #0x401664                        
00401658  d4e90121     ldrd r2, r1, [r4, #4]              
0040165a  0121         movs r1, #1                        
0040165c  1bf80500     ldrb.w r0, [fp, r5]                
0040165e  0500         movs r5, r0                        
00401660  9047         blx r2                             
00401662  6d1c         adds r5, r5, #1                    
00401664  4d45         cmp r5, sb                         
00401666  f7d3         blo #0x401658                      
00401668  08f10100     add.w r0, r8, #1                   
0040166a  0100         movs r1, r0                        
0040166c  b042         cmp r0, r6                         
0040166e  8046         mov r8, r0                         
00401670  e4db         blt #0x40163c                      
00401672  206a         ldr r0, [r4, #0x20]                
00401674  3844         add r0, r7                         
00401676  2062         str r0, [r4, #0x20]                
00401678  2046         mov r0, r4                         
0040167a  fff7e9fe     bl #0x401450                       
0040167c  e9febde8     mcr2 p8, #7, lr, c9, c13, #5       
0040167e  bde8ff9f     pop.w {r0, r1, r2, r3, r4, r5, r6, r7, r8, sb, sl, fp, ip, pc} 
00401680  ff9f         ldr r7, [sp, #0x3fc]               
00401682  0000         movs r0, r0                        
00401684  864d         ldr r5, [pc, #0x218]               
00401686  0000         movs r0, r0                        
00401688  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
0040168a  f041         rors r0, r6                        
0040168c  8046         mov r8, r0                         
0040168e  d21d         adds r2, r2, #7                    
00401690  22f00702     bic r2, r2, #7                     
00401692  0702         lsls r7, r0, #8                    
00401694  0025         movs r5, #0                        
00401696  d2e90002     ldrd r0, r2, [r2]                  
00401698  0002         lsls r0, r0, #8                    
0040169a  f529         cmp r1, #0xf5                      
0040169c  15a6         adr r6, #0x54                      
0040169e  14d0         beq #0x4016ca                      
004016a0  011e         subs r1, r0, #0                    
004016a2  72f10001     sbcs r1, r2, #0                    
004016a4  0001         lsls r0, r0, #4                    
004016a6  06da         bge #0x4016b6                      
004016a8  0023         movs r3, #0                        
004016aa  d0eb0300     rsbs r0, r0, r3                    
004016ac  0300         movs r3, r0                        
004016ae  63eb0202     sbc.w r2, r3, r2                   
004016b0  0202         lsls r2, r0, #8                    
004016b2  11a6         adr r6, #0x44                      
004016b4  08e0         b #0x4016c8                        
004016b6  d8f80010     ldr.w r1, [r8]                     
004016b8  0010         asrs r0, r0, #0x20                 
004016ba  8b07         lsls r3, r1, #0x1e                 
004016bc  01d5         bpl #0x4016c2                      
004016be  0fa6         adr r6, #0x3c                      
004016c0  02e0         b #0x4016c8                        
004016c2  4907         lsls r1, r1, #0x1d                 
004016c4  01d5         bpl #0x4016ca                      
004016c6  0ea6         adr r6, #0x38                      
004016c8  0125         movs r5, #1                        
004016ca  1146         mov r1, r2                         
004016cc  0024         movs r4, #0                        
004016ce  08f12407     add.w r7, r8, #0x24                
004016d0  2407         lsls r4, r4, #0x1c                 
004016d2  04e0         b #0x4016de                        
004016d4  00f05ce9     blx #0x401990                      
004016d6  5ce93032     ldrd r3, r2, [ip, #-0xc0]          
004016d8  3032         adds r2, #0x30                     
004016da  3a55         strb r2, [r7, r4]                  
004016dc  641c         adds r4, r4, #1                    
004016de  50ea0102     orrs.w r2, r0, r1                  
004016e0  0102         lsls r1, r0, #8                    
004016e2  f7d1         bne #0x4016d4                      
004016e4  2b46         mov r3, r5                         
004016e6  3246         mov r2, r6                         
004016e8  2146         mov r1, r4                         
004016ea  4046         mov r0, r8                         
004016ec  bde8f041     pop.w {r4, r5, r6, r7, r8, lr}     
004016ee  f041         rors r0, r6                        
004016f0  00f09ab9     b.w #0x401a28                      
004016f2  9ab9         cbnz r2, #0x40171c                 
004016f4  0000         movs r0, r0                        
004016f6  0000         movs r0, r0                        
004016f8  2d00         movs r5, r5                        
004016fa  0000         movs r0, r0                        
004016fc  2b00         movs r3, r5                        
004016fe  0000         movs r0, r0                        
00401700  2000         movs r0, r4                        
00401702  0000         movs r0, r0                        
00401704  30b4         push {r4, r5}                      
00401706  0021         movs r1, #0                        
00401708  00f12404     add.w r4, r0, #0x24                
0040170a  2404         lsls r4, r4, #0x10                 
0040170c  08e0         b #0x401720                        
0040170e  02f00705     and r5, r2, #7                     
00401710  0705         lsls r7, r0, #0x14                 
00401712  d208         lsrs r2, r2, #3                    
00401714  3035         adds r5, #0x30                     
00401716  42ea4372     orr.w r2, r2, r3, lsl #29          
00401718  4372         strb r3, [r0, #9]                  
0040171a  db08         lsrs r3, r3, #3                    
0040171c  6554         strb r5, [r4, r1]                  
0040171e  491c         adds r1, r1, #1                    
00401720  52ea0305     orrs.w r5, r2, r3                  
00401722  0305         lsls r3, r0, #0x14                 
00401724  f3d1         bne #0x40170e                      
00401726  0468         ldr r4, [r0]                       
00401728  0023         movs r3, #0                        
0040172a  10a2         adr r2, #0x40                      
0040172c  2507         lsls r5, r4, #0x1c                 
0040172e  08d5         bpl #0x401742                      
00401730  04f02004     and r4, r4, #0x20                  
00401732  2004         lsls r0, r4, #0x10                 
00401734  0c43         orrs r4, r1                        
00401736  04d0         beq #0x401742                      
00401738  c469         ldr r4, [r0, #0x1c]                
0040173a  0123         movs r3, #1                        
0040173c  0ca2         adr r2, #0x30                      
0040173e  641e         subs r4, r4, #1                    
00401740  c461         str r4, [r0, #0x1c]                
00401742  30bc         pop {r4, r5}                       
00401744  00f070b9     b.w #0x401a28                      
00401746  70b9         cbnz r0, #0x401766                 
00401748  10b5         push {r4, lr}                      
0040174a  0446         mov r4, r0                         
0040174c  2146         mov r1, r4                         
0040174e  1068         ldr r0, [r2]                       
00401750  fff798fe     bl #0x401484                       
00401752  98fe0246     cdp2 p6, #9, c4, c8, c2, #0        
00401754  0246         mov r2, r0                         
00401756  2046         mov r0, r4                         
00401758  bde81040     pop.w {r4, lr}                     
0040175a  1040         ands r0, r2                        
0040175c  0023         movs r3, #0                        
0040175e  d1e7         b #0x401704                        
00401760  d21d         adds r2, r2, #7                    
00401762  22f00701     bic r1, r2, #7                     
00401764  0701         lsls r7, r0, #4                    
00401766  d1e90023     ldrd r2, r3, [r1]                  
00401768  0023         movs r3, #0                        
0040176a  cbe7         b #0x401704                        
0040176c  0000         movs r0, r0                        
0040176e  0000         movs r0, r0                        
00401770  3000         movs r0, r6                        
00401772  0000         movs r0, r0                        
00401774  f0b4         push {r4, r5, r6, r7}              
00401776  0d46         mov r5, r1                         
00401778  0188         ldrh r1, [r0]                      
0040177a  0905         lsls r1, r1, #0x14                 
0040177c  02d5         bpl #0x401784                      
0040177e  214c         ldr r4, [pc, #0x84]                
00401780  7c44         add r4, pc                         
00401782  02e0         b #0x40178a                        
00401784  1f4c         ldr r4, [pc, #0x7c]                
00401786  7c44         add r4, pc                         
00401788  0e34         adds r4, #0xe                      
0040178a  0021         movs r1, #0                        
0040178c  00f12406     add.w r6, r0, #0x24                
0040178e  2406         lsls r4, r4, #0x18                 
00401790  08e0         b #0x4017a4                        
00401792  02f00f07     and r7, r2, #0xf                   
00401794  0f07         lsls r7, r1, #0x1c                 
00401796  1209         lsrs r2, r2, #4                    
00401798  e75d         ldrb r7, [r4, r7]                  
0040179a  42ea0372     orr.w r2, r2, r3, lsl #28          
0040179c  0372         strb r3, [r0, #8]                  
0040179e  1b09         lsrs r3, r3, #4                    
004017a0  7754         strb r7, [r6, r1]                  
004017a2  491c         adds r1, r1, #1                    
004017a4  52ea0307     orrs.w r7, r2, r3                  
004017a6  0307         lsls r3, r0, #0x1c                 
004017a8  f3d1         bne #0x401792                      
004017aa  0278         ldrb r2, [r0]                      
004017ac  0023         movs r3, #0                        
004017ae  1207         lsls r2, r2, #0x1c                 
004017b0  04d5         bpl #0x4017bc                      
004017b2  702d         cmp r5, #0x70                      
004017b4  06d0         beq #0x4017c4                      
004017b6  09b1         cbz r1, #0x4017bc                  
004017b8  0223         movs r3, #2                        
004017ba  1134         adds r4, #0x11                     
004017bc  2246         mov r2, r4                         
004017be  f0bc         pop {r4, r5, r6, r7}               
004017c0  00f032b9     b.w #0x401a28                      
004017c2  32b9         cbnz r2, #0x4017d2                 
004017c4  0123         movs r3, #1                        
004017c6  1034         adds r4, #0x10                     
004017c8  f8e7         b #0x4017bc                        
004017ca  70b5         push {r4, r5, r6, lr}              
004017cc  0446         mov r4, r0                         
004017ce  0d46         mov r5, r1                         
004017d0  2146         mov r1, r4                         
004017d2  1068         ldr r0, [r2]                       
004017d4  fff756fe     bl #0x401484                       
004017d6  56fe0246     cdp2 p6, #5, c4, c6, c2, #0        
004017d8  0246         mov r2, r0                         
004017da  2946         mov r1, r5                         
004017dc  2046         mov r0, r4                         
004017de  bde87040     pop.w {r4, r5, r6, lr}             
004017e0  7040         eors r0, r6                        
004017e2  0023         movs r3, #0                        
004017e4  c6e7         b #0x401774                        
004017e6  d21d         adds r2, r2, #7                    
004017e8  22f00703     bic r3, r2, #7                     
004017ea  0703         lsls r7, r0, #0xc                  
004017ec  d3e90023     ldrd r2, r3, [r3]                  
004017ee  0023         movs r3, #0                        
004017f0  c0e7         b #0x401774                        
004017f2  0368         ldr r3, [r0]                       
004017f4  1268         ldr r2, [r2]                       
004017f6  43f02003     orr r3, r3, #0x20                  
004017f8  2003         lsls r0, r4, #0xc                  
004017fa  0360         str r3, [r0]                       
004017fc  0823         movs r3, #8                        
004017fe  c361         str r3, [r0, #0x1c]                
00401800  0023         movs r3, #0                        
00401802  b7e7         b #0x401774                        
00401804  e84b         ldr r3, [pc, #0x3a0]               
00401806  0000         movs r0, r0                        
00401808  2de9f05f     push.w {r4, r5, r6, r7, r8, sb, sl, fp, ip, lr} 
0040180a  f05f         ldrsh r0, [r6, r7]                 
0040180c  8946         mov sb, r1                         
0040180e  0446         mov r4, r0                         
00401810  4ff0000a     mov.w sl, #0                       
00401812  000a         lsrs r0, r0, #8                    
00401814  dff874b1     ldr.w fp, [pc, #0x174]             
00401816  74b1         cbz r4, #0x401836                  
00401818  fb44         add fp, pc                         
0040181a  c0f820a0     str.w sl, [r0, #0x20]              
0040181c  20a0         adr r0, #0x80                      
0040181e  2046         mov r0, r4                         
00401820  e168         ldr r1, [r4, #0xc]                 
00401822  8847         blx r1                             
00401824  0028         cmp r0, #0                         
00401826  74d0         beq #0x401912                      
00401828  2528         cmp r0, #0x25                      
0040182a  06d0         beq #0x40183a                      
0040182c  d4e90121     ldrd r2, r1, [r4, #4]              
0040182e  0121         movs r1, #1                        
00401830  9047         blx r2                             
00401832  206a         ldr r0, [r4, #0x20]                
00401834  401c         adds r0, r0, #1                    
00401836  2062         str r0, [r4, #0x20]                
00401838  f1e7         b #0x40181e                        
0040183a  0026         movs r6, #0                        
0040183c  5f46         mov r7, fp                         
0040183e  2046         mov r0, r4                         
00401840  e168         ldr r1, [r4, #0xc]                 
00401842  8847         blx r1                             
00401844  2028         cmp r0, #0x20                      
00401846  0546         mov r5, r0                         
00401848  07db         blt #0x40185a                      
0040184a  312d         cmp r5, #0x31                      
0040184c  05d2         bhs #0x40185a                      
0040184e  7819         adds r0, r7, r5                    
00401850  10f8200c     ldrb r0, [r0, #-0x20]              
00401852  200c         lsrs r0, r4, #0x10                 
00401854  08b1         cbz r0, #0x40185a                  
00401856  0643         orrs r6, r0                        
00401858  f1e7         b #0x40183e                        
0040185a  b007         lsls r0, r6, #0x1e                 
0040185c  01d5         bpl #0x401862                      
0040185e  26f00406     bic r6, r6, #4                     
00401860  0406         lsls r4, r0, #0x18                 
00401862  c4f81ca0     str.w sl, [r4, #0x1c]              
00401864  1ca0         adr r0, #0x70                      
00401866  0027         movs r7, #0                        
00401868  c4f818a0     str.w sl, [r4, #0x18]              
0040186a  18a0         adr r0, #0x60                      
0040186c  2a2d         cmp r5, #0x2a                      
0040186e  09d0         beq #0x401884                      
00401870  2846         mov r0, r5                         
00401872  04f095fc     bl #0x4061a0                       
00401874  95fc38b3     ldc2 p3, c11, [r5], {0x38}         
00401876  38b3         cbz r0, #0x4018c8                  
00401878  04eb8708     add.w r8, r4, r7, lsl #2           
0040187a  8708         lsrs r7, r0, #2                    
0040187c  303d         subs r5, #0x30                     
0040187e  c8f81850     str.w r5, [r8, #0x18]              
00401880  1850         str r0, [r3, r0]                   
00401882  19e0         b #0x4018b8                        
00401884  59f8041b     ldr r1, [sb], #4                   
00401886  041b         subs r4, r0, r4                    
00401888  2046         mov r0, r4                         
0040188a  04eb8702     add.w r2, r4, r7, lsl #2           
0040188c  8702         lsls r7, r0, #0xa                  
0040188e  9161         str r1, [r2, #0x18]                
00401890  e168         ldr r1, [r4, #0xc]                 
00401892  8847         blx r1                             
00401894  012f         cmp r7, #1                         
00401896  0546         mov r5, r0                         
00401898  18d1         bne #0x4018cc                      
0040189a  e069         ldr r0, [r4, #0x1c]                
0040189c  0028         cmp r0, #0                         
0040189e  20da         bge #0x4018e2                      
004018a0  26f02006     bic r6, r6, #0x20                  
004018a2  2006         lsls r0, r4, #0x18                 
004018a4  1de0         b #0x4018e2                        
004018a6  d8f81800     ldr.w r0, [r8, #0x18]              
004018a8  1800         movs r0, r3                        
004018aa  00eb8000     add.w r0, r0, r0, lsl #2           
004018ac  8000         lsls r0, r0, #2                    
004018ae  05eb4000     add.w r0, r5, r0, lsl #1           
004018b0  4000         lsls r0, r0, #1                    
004018b2  3038         subs r0, #0x30                     
004018b4  c8f81800     str.w r0, [r8, #0x18]              
004018b6  1800         movs r0, r3                        
004018b8  2046         mov r0, r4                         
004018ba  e168         ldr r1, [r4, #0xc]                 
004018bc  8847         blx r1                             
004018be  0546         mov r5, r0                         
004018c0  04f06efc     bl #0x4061a0                       
004018c2  6efc0028     stc2l p8, c2, [lr], #-0            
004018c4  0028         cmp r0, #0                         
004018c6  eed1         bne #0x4018a6                      
004018c8  012f         cmp r7, #1                         
004018ca  0ad0         beq #0x4018e2                      
004018cc  2e2d         cmp r5, #0x2e                      
004018ce  08d1         bne #0x4018e2                      
004018d0  2046         mov r0, r4                         
004018d2  e168         ldr r1, [r4, #0xc]                 
004018d4  8847         blx r1                             
004018d6  7f1c         adds r7, r7, #1                    
004018d8  0546         mov r5, r0                         
004018da  022f         cmp r7, #2                         
004018dc  46f02006     orr r6, r6, #0x20                  
004018de  2006         lsls r0, r4, #0x18                 
004018e0  c4db         blt #0x40186c                      
004018e2  a069         ldr r0, [r4, #0x18]                
004018e4  0028         cmp r0, #0                         
004018e6  03da         bge #0x4018f0                      
004018e8  4042         rsbs r0, r0, #0                    
004018ea  46f00106     orr r6, r6, #1                     
004018ec  0106         lsls r1, r0, #0x18                 
004018ee  a061         str r0, [r4, #0x18]                
004018f0  f007         lsls r0, r6, #0x1f                 
004018f2  01d0         beq #0x4018f8                      
004018f4  26f01006     bic r6, r6, #0x10                  
004018f6  1006         lsls r0, r2, #0x18                 
004018f8  6c2d         cmp r5, #0x6c                      
004018fa  0bd0         beq #0x401914                      
004018fc  682d         cmp r5, #0x68                      
004018fe  09d0         beq #0x401914                      
00401900  4c2d         cmp r5, #0x4c                      
00401902  39d0         beq #0x401978                      
00401904  6a2d         cmp r5, #0x6a                      
00401906  35d0         beq #0x401974                      
00401908  742d         cmp r5, #0x74                      
0040190a  35d0         beq #0x401978                      
0040190c  7a2d         cmp r5, #0x7a                      
0040190e  33d0         beq #0x401978                      
00401910  16e0         b #0x401940                        
00401912  38e0         b #0x401986                        
00401914  e168         ldr r1, [r4, #0xc]                 
00401916  2f46         mov r7, r5                         
00401918  2046         mov r0, r4                         
0040191a  8847         blx r1                             
0040191c  b842         cmp r0, r7                         
0040191e  0546         mov r5, r0                         
00401920  09d1         bne #0x401936                      
00401922  6c2f         cmp r7, #0x6c                      
00401924  26d0         beq #0x401974                      
00401926  4ff48060     mov.w r0, #0x400                   
00401928  8060         str r0, [r0, #8]                   
0040192a  e168         ldr r1, [r4, #0xc]                 
0040192c  0643         orrs r6, r0                        
0040192e  2046         mov r0, r4                         
00401930  8847         blx r1                             
00401932  0546         mov r5, r0                         
00401934  04e0         b #0x401940                        
00401936  6c2f         cmp r7, #0x6c                      
00401938  1ad0         beq #0x401970                      
0040193a  4ff48070     mov.w r0, #0x100                   
0040193c  8070         strb r0, [r0, #2]                  
0040193e  0643         orrs r6, r0                        
00401940  0db3         cbz r5, #0x401986                  
00401942  a5f14100     sub.w r0, r5, #0x41                
00401944  4100         lsls r1, r0, #1                    
00401946  1928         cmp r0, #0x19                      
00401948  02d8         bhi #0x401950                      
0040194a  2035         adds r5, #0x20                     
0040194c  46f40066     orr r6, r6, #0x800                 
0040194e  0066         str r0, [r0, #0x60]                
00401950  4a46         mov r2, sb                         
00401952  2946         mov r1, r5                         
00401954  2046         mov r0, r4                         
00401956  2660         str r6, [r4]                       
00401958  4e46         mov r6, sb                         
0040195a  fff751fb     bl #0x401000                       
0040195c  51fb         (undecodable)
0040195e  80b1         cbz r0, #0x401982                  
00401960  0128         cmp r0, #1                         
00401962  0bd0         beq #0x40197c                      
00401964  f61d         adds r6, r6, #7                    
00401966  26f00700     bic r0, r6, #7                     
00401968  0700         movs r7, r0                        
0040196a  00f10809     add.w sb, r0, #8                   
0040196c  0809         lsrs r0, r1, #4                    
0040196e  56e7         b #0x40181e                        
00401970  4020         movs r0, #0x40                     
00401972  e4e7         b #0x40193e                        
00401974  8020         movs r0, #0x80                     
00401976  d8e7         b #0x40192a                        
00401978  0020         movs r0, #0                        
0040197a  d6e7         b #0x40192a                        
0040197c  06f10409     add.w sb, r6, #4                   
0040197e  0409         lsrs r4, r0, #4                    
00401980  4de7         b #0x40181e                        
00401982  2846         mov r0, r5                         
00401984  52e7         b #0x40182c                        
00401986  206a         ldr r0, [r4, #0x20]                
00401988  bde8f09f     pop.w {r4, r5, r6, r7, r8, sb, sl, fp, ip, pc} 
0040198a  f09f         ldr r7, [sp, #0x3c0]               
0040198c  784b         ldr r3, [pc, #0x1e0]               
0040198e  0000         movs r0, r0                        
00401990  3040         ands r0, r6                        
00401992  2de9         (undecodable)
00401994  0a20         movs r0, #0xa                      
00401996  50e2         b #0x401e3a                        
00401998  0030         adds r0, #0                        
0040199a  d1e2         b #0x401f40                        
0040199c  20e1         b #0x401be0                        
0040199e  a0e1         b #0x401ce2                        
004019a0  01ef8ee1     vrhadd.s8 d14, d17, d14            
004019a2  8ee1         b #0x401cc2                        
004019a4  0e00         movs r6, r1                        
004019a6  50e0         b #0x401a4a                        
004019a8  2111         asrs r1, r4, #4                    
004019aa  c1e0         b #0x401b30                        
004019ac  20e2         b #0x401df0                        
004019ae  a0e1         b #0x401cf2                        
004019b0  01ee8ee1     cdp p1, #0, c14, c1, c14, #4       
004019b2  8ee1         b #0x401cd2                        
004019b4  0e00         movs r6, r1                        
004019b6  90e0         b #0x401ada                        
004019b8  2112         asrs r1, r4, #8                    
004019ba  a1e0         b #0x401b00                        
004019bc  20e4         b #0x401200                        
004019be  a0e1         b #0x401d02                        
004019c0  01ec         (undecodable)
004019c2  8ee1         b #0x401ce2                        
004019c4  0e00         movs r6, r1                        
004019c6  90e0         b #0x401aea                        
004019c8  2114         asrs r1, r4, #0x10                 
004019ca  a1e0         b #0x401b10                        
004019cc  20e8         (undecodable)
004019ce  a0e1         b #0x401d12                        
004019d0  01e8         (undecodable)
004019d2  8ee1         b #0x401cf2                        
004019d4  0e00         movs r6, r1                        
004019d6  90e0         b #0x401afa                        
004019d8  2118         adds r1, r4, r0                    
004019da  a1e0         b #0x401b20                        
004019dc  0100         movs r1, r0                        
004019de  90e0         b #0x401b02                        
004019e0  0010         asrs r0, r0, #0x20                 
004019e2  a1e2         b #0x401f28                        
004019e4  a001         lsls r0, r4, #6                    
004019e6  a0e1         b #0x401d2a                        
004019e8  810e         lsrs r1, r0, #0x1a                 
004019ea  80e1         b #0x401cee                        
004019ec  a111         asrs r1, r4, #6                    
004019ee  a0e1         b #0x401d32                        
004019f0  0141         asrs r1, r0                        
004019f2  a0e1         b #0x401d36                        
004019f4  204f         ldr r7, [pc, #0x80]                
004019f6  84e1         b #0x401d02                        
004019f8  0051         str r0, [r0, r4]                   
004019fa  90e0         b #0x401b1e                        
004019fc  0140         ands r1, r0                        
004019fe  a4e0         b #0x401b4a                        
00401a00  0550         str r5, [r0, r0]                   
00401a02  95e0         b #0x401b30                        
00401a04  0440         ands r4, r0                        
00401a06  a4e0         b #0x401b52                        
00401a08  0520         movs r0, #5                        
00401a0a  52e0         b #0x401ab2                        
00401a0c  0430         adds r0, #4                        
00401a0e  d3e0         b #0x401bb8                        
00401a10  0030         adds r0, #0                        
00401a12  a0e3         b #0x402156                        
00401a14  0a20         movs r0, #0xa                      
00401a16  8242         cmp r2, r0                         
00401a18  3080         strh r0, [r6]                      
00401a1a  bd48         ldr r0, [pc, #0x2f4]               
00401a1c  0100         movs r1, r0                        
00401a1e  90e2         b #0x401f42                        
00401a20  0010         asrs r0, r0, #0x20                 
00401a22  a1e2         b #0x401f68                        
00401a24  3080         strh r0, [r6]                      
00401a26  bde82de9     pop.w {r0, r2, r3, r5, r8, fp, sp, lr, pc} 
00401a28  2de9f047     push.w {r4, r5, r6, r7, r8, sb, sl, lr} 
00401a2a  f047         blx lr                             
00401a2c  0d46         mov r5, r1                         
00401a2e  9946         mov sb, r3                         
00401a30  9246         mov sl, r2                         
00401a32  0446         mov r4, r0                         
00401a34  00f12408     add.w r8, r0, #0x24                
00401a36  2408         lsrs r4, r4, #0x20                 
00401a38  0168         ldr r1, [r0]                       
00401a3a  8806         lsls r0, r1, #0x1a                 
00401a3c  04d5         bpl #0x401a48                      
00401a3e  e069         ldr r0, [r4, #0x1c]                
00401a40  21f01001     bic r1, r1, #0x10                  
00401a42  1001         lsls r0, r2, #4                    
00401a44  2160         str r1, [r4]                       
00401a46  00e0         b #0x401a4a                        
00401a48  0120         movs r0, #1                        
00401a4a  a842         cmp r0, r5                         
00401a4c  01dd         ble #0x401a52                      
00401a4e  471b         subs r7, r0, r5                    
00401a50  00e0         b #0x401a54                        
00401a52  0027         movs r7, #0                        
00401a54  a169         ldr r1, [r4, #0x18]                
00401a56  7a19         adds r2, r7, r5                    
00401a58  02eb0900     add.w r0, r2, sb                   
00401a5a  0900         movs r1, r1                        
00401a5c  081a         subs r0, r1, r0                    
00401a5e  a061         str r0, [r4, #0x18]                
00401a60  2078         ldrb r0, [r4]                      
00401a62  c006         lsls r0, r0, #0x1b                 
00401a64  02d4         bmi #0x401a6c                      
00401a66  2046         mov r0, r4                         
00401a68  fff7dcfc     bl #0x401424                       
00401a6a  dcfc0026     ldc2l p6, c2, [ip], {0}            
00401a6c  0026         movs r6, #0                        
00401a6e  08e0         b #0x401a82                        
00401a70  d4e90121     ldrd r2, r1, [r4, #4]              
00401a72  0121         movs r1, #1                        
00401a74  1af80600     ldrb.w r0, [sl, r6]                
00401a76  0600         movs r6, r0                        
00401a78  9047         blx r2                             
00401a7a  206a         ldr r0, [r4, #0x20]                
00401a7c  401c         adds r0, r0, #1                    
00401a7e  761c         adds r6, r6, #1                    
00401a80  2062         str r0, [r4, #0x20]                
00401a82  4e45         cmp r6, sb                         
00401a84  f4db         blt #0x401a70                      
00401a86  2078         ldrb r0, [r4]                      
00401a88  c006         lsls r0, r0, #0x1b                 
00401a8a  0ad5         bpl #0x401aa2                      
00401a8c  2046         mov r0, r4                         
00401a8e  fff7c9fc     bl #0x401424                       
00401a90  c9fc06e0     stc2l p0, c14, [sb], {6}           
00401a92  06e0         b #0x401aa2                        
00401a94  d4e90121     ldrd r2, r1, [r4, #4]              
00401a96  0121         movs r1, #1                        
00401a98  3020         movs r0, #0x30                     
00401a9a  9047         blx r2                             
00401a9c  206a         ldr r0, [r4, #0x20]                
00401a9e  401c         adds r0, r0, #1                    
00401aa0  2062         str r0, [r4, #0x20]                
00401aa2  381e         subs r0, r7, #0                    
00401aa4  a7f10107     sub.w r7, r7, #1                   
00401aa6  0107         lsls r1, r0, #0x1c                 
00401aa8  f4dc         bgt #0x401a94                      
00401aaa  07e0         b #0x401abc                        
00401aac  d4e90121     ldrd r2, r1, [r4, #4]              
00401aae  0121         movs r1, #1                        
00401ab0  18f80500     ldrb.w r0, [r8, r5]                
00401ab2  0500         movs r5, r0                        
00401ab4  9047         blx r2                             
00401ab6  206a         ldr r0, [r4, #0x20]                
00401ab8  401c         adds r0, r0, #1                    
00401aba  2062         str r0, [r4, #0x20]                
00401abc  281e         subs r0, r5, #0                    
00401abe  a5f10105     sub.w r5, r5, #1                   
00401ac0  0105         lsls r1, r0, #0x14                 
00401ac2  f3dc         bgt #0x401aac                      
00401ac4  2046         mov r0, r4                         
00401ac6  fff7c3fc     bl #0x401450                       
00401ac8  c3fc2078     stc2l p8, c7, [r3], {0x20}         
00401aca  2078         ldrb r0, [r4]                      
00401acc  0006         lsls r0, r0, #0x18                 
00401ace  02d5         bpl #0x401ad6                      
00401ad0  0220         movs r0, #2                        
00401ad2  bde8f087     pop.w {r4, r5, r6, r7, r8, sb, sl, pc} 
00401ad4  f087         strh r0, [r6, #0x3e]               
00401ad6  0120         movs r0, #1                        
00401ad8  fbe7         b #0x401ad2                        
00401ada  2de9ff4f     push.w {r0, r1, r2, r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} 
00401adc  ff4f         ldr r7, [pc, #0x3fc]               
00401ade  0c46         mov r4, r1                         
00401ae0  1e46         mov r6, r3                         
00401ae2  4ff0ff37     mov.w r7, #-1                      
00401ae4  ff37         adds r7, #0xff                     
00401ae6  8bb0         sub sp, #0x2c                      
00401ae8  d2e90001     ldrd r0, r1, [r2]                  
00401aea  0001         lsls r0, r0, #4                    
00401aec  ddf86080     ldr.w r8, [sp, #0x60]              
00401aee  6080         strh r0, [r4, #2]                  
00401af0  0a90         str r0, [sp, #0x28]                
00401af2  8a46         mov sl, r1                         
00401af4  c1f30a55     ubfx r5, r1, #0x14, #0xb           
00401af6  0a55         strb r2, [r1, r4]                  
00401af8  05b9         cbnz r5, #0x401afc                 
00401afa  3d46         mov r5, r7                         
00401afc  0021         movs r1, #0                        
00401afe  0846         mov r0, r1                         
00401b00  4ff00000     mov.w r0, #0                       
00401b02  0000         movs r0, r0                        
00401b04  baf1000f     cmp.w sl, #0                       
00401b06  000f         lsrs r0, r0, #0x1c                 
00401b08  00f44000     and r0, r0, #0xc00000              
00401b0a  4000         lsls r0, r0, #1                    
00401b0c  05da         bge #0x401b1a                      
00401b0e  00eb8000     add.w r0, r0, r0, lsl #2           
00401b10  8000         lsls r0, r0, #2                    
00401b12  4ff44001     mov.w r1, #0xc00000                
00401b14  4001         lsls r0, r0, #5                    
00401b16  01ea5000     and.w r0, r1, r0, lsr #1           
00401b18  5000         lsls r0, r2, #1                    
00401b1a  4fea9059     lsr.w sb, r0, #0x16                
00401b1c  9059         ldr r0, [r2, r6]                   
00401b1e  b9f1010f     cmp.w sb, #1                       
00401b20  010f         lsrs r1, r0, #0x1c                 
00401b22  00dd         ble #0x401b26                      
00401b24  b946         mov sb, r7                         
00401b26  0a98         ldr r0, [sp, #0x28]                
00401b28  50ea4a00     orrs.w r0, r0, sl, lsl #1          
00401b2a  4a00         lsls r2, r1, #1                    
00401b2c  0fd0         beq #0x401b4e                      
00401b2e  44f61050     movw r0, #0x4d10                   
00401b30  1050         str r0, [r2, r0]                   
00401b32  a5f2ff35     subw r5, r5, #0x3ff                
00401b34  ff35         adds r5, #0xff                     
00401b36  15fb00f0     smulbb r0, r5, r0                  
00401b38  00f00714     and r4, r0, #0x70007               
00401b3a  0714         asrs r7, r0, #0x10                 
00401b3c  b8f1000f     cmp.w r8, #0                       
00401b3e  000f         lsrs r0, r0, #0x1c                 
00401b40  1ed0         beq #0x401b80                      
00401b42  7542         rsbs r5, r6, #0                    
00401b44  291e         subs r1, r5, #0                    
00401b46  1edd         ble #0x401b86                      
00401b48  c9f10002     rsb.w r2, sb, #0                   
00401b4a  0002         lsls r0, r0, #8                    
00401b4c  1ce0         b #0x401b88                        
00401b4e  b8f1010f     cmp.w r8, #1                       
00401b50  010f         lsrs r1, r0, #0x1c                 
00401b52  4ff00000     mov.w r0, #0                       
00401b54  0000         movs r0, r0                        
00401b56  01d0         beq #0x401b5c                      
00401b58  3021         movs r1, #0x30                     
00401b5a  03e0         b #0x401b64                        
00401b5c  f243         mvns r2, r6                        
00401b5e  05e0         b #0x401b6c                        
00401b60  2154         strb r1, [r4, r0]                  
00401b62  401c         adds r0, r0, #1                    
00401b64  b042         cmp r0, r6                         
00401b66  fbdb         blt #0x401b60                      
00401b68  3046         mov r0, r6                         
00401b6a  0022         movs r2, #0                        
00401b6c  0021         movs r1, #0                        
00401b6e  2154         strb r1, [r4, r0]                  
00401b70  0b99         ldr r1, [sp, #0x2c]                
00401b72  c1f80880     str.w r8, [r1, #8]                 
00401b74  0880         strh r0, [r1]                      
00401b76  c1e90020     strd r2, r0, [r1]                  
00401b78  0020         movs r0, #0                        
00401b7a  0fb0         add sp, #0x3c                      
00401b7c  bde8f08f     pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc} 
00401b7e  f08f         ldrh r0, [r6, #0x3e]               
00401b80  bd1b         subs r5, r7, r6                    
00401b82  6d1c         adds r5, r5, #1                    
00401b84  dee7         b #0x401b44                        
00401b86  4a46         mov r2, sb                         
00401b88  00da         bge #0x401b8c                      
00401b8a  6942         rsbs r1, r5, #0                    
00401b8c  06a8         add r0, sp, #0x18                  
00401b8e  00f0dffb     bl #0x402350                       
00401b90  dffb         (undecodable)
00401b92  06ab         add r3, sp, #0x18                  
00401b94  93e80700     ldm.w r3, {r0, r1, r2}             
00401b96  0700         movs r7, r0                        
00401b98  03ab         add r3, sp, #0xc                   
00401b9a  83e80700     stm.w r3, {r0, r1, r2}             
00401b9c  0700         movs r7, r0                        
00401b9e  5046         mov r0, sl                         
00401ba0  0a99         ldr r1, [sp, #0x28]                
00401ba2  03f0c0fe     bl #0x405926                       
00401ba4  c0fe8de8     cdp2 p8, #0xc, c14, c0, c13, #4    
00401ba6  8de80700     stm.w sp, {r0, r1, r2}             
00401ba8  0700         movs r7, r0                        
00401baa  a0f50050     sub.w r0, r0, #0x2000              
00401bac  0050         str r0, [r0, r0]                   
00401bae  1f38         subs r0, #0x1f                     
00401bb0  0090         str r0, [sp]                       
00401bb2  0398         ldr r0, [sp, #0xc]                 
00401bb4  002d         cmp r5, #0                         
00401bb6  0add         ble #0x401bce                      
00401bb8  42f21f01     movw r1, #0x201f                   
00401bba  1f01         lsls r7, r3, #4                    
00401bbc  4a46         mov r2, sb                         
00401bbe  0844         add r0, r1                         
00401bc0  0023         movs r3, #0                        
00401bc2  03a9         add r1, sp, #0xc                   
00401bc4  0390         str r0, [sp, #0xc]                 
00401bc6  6846         mov r0, sp                         
00401bc8  04f029f9     bl #0x405e1e                       
00401bca  29f909e0     vld4.8 {d14, d15, d16, d17}, [sb], sb 
00401bcc  09e0         b #0x401be2                        
00401bce  a0f50050     sub.w r0, r0, #0x2000              
00401bd0  0050         str r0, [r0, r0]                   
00401bd2  4a46         mov r2, sb                         
00401bd4  1f38         subs r0, #0x1f                     
00401bd6  0023         movs r3, #0                        
00401bd8  03a9         add r1, sp, #0xc                   
00401bda  0390         str r0, [sp, #0xc]                 
00401bdc  6846         mov r0, sp                         
00401bde  04f033f9     bl #0x405e48                       
00401be0  33f9         (undecodable)
00401be2  8de80700     stm.w sp, {r0, r1, r2}             
00401be4  0700         movs r7, r0                        
00401be6  0004         lsls r0, r0, #0x10                 
00401be8  000c         lsrs r0, r0, #0x10                 
00401bea  03d0         beq #0x401bf4                      
00401bec  4ff0ff30     mov.w r0, #-1                      
00401bee  ff30         adds r0, #0xff                     
00401bf0  4108         lsrs r1, r0, #1                    
00401bf2  00e0         b #0x401bf6                        
00401bf4  1046         mov r0, r2                         
00401bf6  b8f1000f     cmp.w r8, #0                       
00401bf8  000f         lsrs r0, r0, #0x1c                 
00401bfa  03d0         beq #0x401c04                      
00401bfc  0022         movs r2, #0                        
00401bfe  0092         str r2, [sp]                       
00401c00  1546         mov r5, r2                         
00401c02  1ee0         b #0x401c42                        
00401c04  751e         subs r5, r6, #1                    
00401c06  05d4         bmi #0x401c14                      
00401c08  fff7c2ee     blx #0x401990                      
00401c0a  c2ee3032     mcr p2, #6, r3, c2, c0, #1         
00401c0c  3032         adds r2, #0x30                     
00401c0e  6255         strb r2, [r4, r5]                  
00401c10  6d1e         subs r5, r5, #1                    
00401c12  f9d5         bpl #0x401c08                      
00401c14  b346         mov fp, r6                         
00401c16  0122         movs r2, #1                        
00401c18  0843         orrs r0, r1                        
00401c1a  02d0         beq #0x401c22                      
00401c1c  0022         movs r2, #0                        
00401c1e  7f1c         adds r7, r7, #1                    
00401c20  04e0         b #0x401c2c                        
00401c22  2078         ldrb r0, [r4]                      
00401c24  3028         cmp r0, #0x30                      
00401c26  01d1         bne #0x401c2c                      
00401c28  0022         movs r2, #0                        
00401c2a  7f1e         subs r7, r7, #1                    
00401c2c  002a         cmp r2, #0                         
00401c2e  0997         str r7, [sp, #0x24]                
00401c30  84d0         beq #0x401b3c                      
00401c32  1de0         b #0x401c70                        
00401c34  112d         cmp r5, #0x11                      
00401c36  07da         bge #0x401c48                      
00401c38  fff7aaee     blx #0x401990                      
00401c3a  aaee3032     mcr p2, #5, r3, c10, c0, #1        
00401c3c  3032         adds r2, #0x30                     
00401c3e  6255         strb r2, [r4, r5]                  
00401c40  6d1c         adds r5, r5, #1                    
00401c42  50ea0102     orrs.w r2, r0, r1                  
00401c44  0102         lsls r1, r0, #8                    
00401c46  f5d1         bne #0x401c34                      
00401c48  0843         orrs r0, r1                        
00401c4a  02d0         beq #0x401c52                      
00401c4c  0098         ldr r0, [sp]                       
00401c4e  c8b1         cbz r0, #0x401c84                  
00401c50  0ee0         b #0x401c70                        
00401c52  0021         movs r1, #0                        
00401c54  681e         subs r0, r5, #1                    
00401c56  05e0         b #0x401c64                        
00401c58  235c         ldrb r3, [r4, r0]                  
00401c5a  625c         ldrb r2, [r4, r1]                  
00401c5c  6354         strb r3, [r4, r1]                  
00401c5e  2254         strb r2, [r4, r0]                  
00401c60  401e         subs r0, r0, #1                    
00401c62  491c         adds r1, r1, #1                    
00401c64  8142         cmp r1, r0                         
00401c66  f7db         blt #0x401c58                      
00401c68  ab46         mov fp, r5                         
00401c6a  a81b         subs r0, r5, r6                    
00401c6c  401e         subs r0, r0, #1                    
00401c6e  0990         str r0, [sp, #0x24]                
00401c70  0020         movs r0, #0                        
00401c72  04f80b00     strb.w r0, [r4, fp]                
00401c74  0b00         movs r3, r1                        
00401c76  0b98         ldr r0, [sp, #0x2c]                
00401c78  099a         ldr r2, [sp, #0x24]                
00401c7a  c0f80880     str.w r8, [r0, #8]                 
00401c7c  0880         strh r0, [r1]                      
00401c7e  c0e9002b     strd r2, fp, [r0]                  
00401c80  002b         cmp r3, #0                         
00401c82  7ae7         b #0x401b7a                        
00401c84  1126         movs r6, #0x11                     
00401c86  4ff00008     mov.w r8, #0                       
00401c88  0008         lsrs r0, r0, #0x20                 
00401c8a  57e7         b #0x401b3c                        
00401c8c  2de9f04f     push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} 
00401c8e  f04f         ldr r7, [pc, #0x3c0]               
00401c90  8846         mov r8, r1                         
00401c92  0446         mov r4, r0                         
00401c94  d21d         adds r2, r2, #7                    
00401c96  22f00701     bic r1, r2, #7                     
00401c98  0701         lsls r7, r0, #4                    
00401c9a  91b0         sub sp, #0x44                      
00401c9c  d1e90001     ldrd r0, r1, [r1]                  
00401c9e  0001         lsls r0, r0, #4                    
00401ca0  cde90a01     strd r0, r1, [sp, #0x28]           
00401ca2  0a01         lsls r2, r1, #4                    
00401ca4  04f064fa     bl #0x406170                       
00401ca6  64fa         (undecodable)
00401ca8  0246         mov r2, r0                         
00401caa  0b98         ldr r0, [sp, #0x2c]                
00401cac  c00f         lsrs r0, r0, #0x1f                 
00401cae  01d0         beq #0x401cb4                      
00401cb0  2d20         movs r0, #0x2d                     
00401cb2  07e0         b #0x401cc4                        
00401cb4  2068         ldr r0, [r4]                       
00401cb6  8107         lsls r1, r0, #0x1e                 
00401cb8  01d5         bpl #0x401cbe                      
00401cba  2b20         movs r0, #0x2b                     
00401cbc  02e0         b #0x401cc4                        
00401cbe  2021         movs r1, #0x20                     
00401cc0  01eac000     and.w r0, r1, r0, lsl #3           
00401cc2  c000         lsls r0, r0, #3                    
00401cc4  032a         cmp r2, #3                         
00401cc6  0990         str r0, [sp, #0x24]                
00401cc8  01d0         beq #0x401cce                      
00401cca  072a         cmp r2, #7                         
00401ccc  05db         blt #0x401cda                      
00401cce  0346         mov r3, r0                         
00401cd0  4146         mov r1, r8                         
00401cd2  2046         mov r0, r4                         
00401cd4  00f0fcfa     bl #0x4022d0                       
00401cd6  fcfa         (undecodable)
00401cd8  04e1         b #0x401ee4                        
00401cda  2078         ldrb r0, [r4]                      
00401cdc  8006         lsls r0, r0, #0x1a                 
00401cde  01d5         bpl #0x401ce4                      
00401ce0  e769         ldr r7, [r4, #0x1c]                
00401ce2  00e0         b #0x401ce6                        
00401ce4  0627         movs r7, #6                        
00401ce6  b8f1650f     cmp.w r8, #0x65                    
00401ce8  650f         lsrs r5, r4, #0x1d                 
00401cea  06d0         beq #0x401cfa                      
00401cec  b8f1660f     cmp.w r8, #0x66                    
00401cee  660f         lsrs r6, r4, #0x1d                 
00401cf0  15d0         beq #0x401d1e                      
00401cf2  b8f1670f     cmp.w r8, #0x67                    
00401cf4  670f         lsrs r7, r4, #0x1d                 
00401cf6  67d1         bne #0x401dc8                      
00401cf8  2be0         b #0x401d52                        
00401cfa  0020         movs r0, #0                        
00401cfc  112f         cmp r7, #0x11                      
00401cfe  0090         str r0, [sp]                       
00401d00  01db         blt #0x401d06                      
00401d02  1123         movs r3, #0x11                     
00401d04  00e0         b #0x401d08                        
00401d06  7b1c         adds r3, r7, #1                    
00401d08  0aaa         add r2, sp, #0x28                  
00401d0a  01a9         add r1, sp, #4                     
00401d0c  0ca8         add r0, sp, #0x30                  
00401d0e  fff7e4fe     bl #0x401ada                       
00401d10  e4fedde9     mcr2 p9, #7, lr, c4, c13, #6       
00401d12  dde90c01     ldrd r0, r1, [sp, #0x30]           
00401d14  0c01         lsls r4, r1, #4                    
00401d16  0026         movs r6, #0                        
00401d18  7d1c         adds r5, r7, #1                    
00401d1a  8b46         mov fp, r1                         
00401d1c  40e0         b #0x401da0                        
00401d1e  0120         movs r0, #1                        
00401d20  3b46         mov r3, r7                         
00401d22  0090         str r0, [sp]                       
00401d24  4ff00049     mov.w sb, #-0x80000000             
00401d26  0049         ldr r1, [pc, #0]                   
00401d28  0aaa         add r2, sp, #0x28                  
00401d2a  01a9         add r1, sp, #4                     
00401d2c  0ca8         add r0, sp, #0x30                  
00401d2e  fff7d4fe     bl #0x401ada                       
00401d30  d4fedde9     mrc2 p9, #6, lr, c4, c13, #6       
00401d32  dde90db0     ldrd fp, r0, [sp, #0x34]           
00401d34  0db0         add sp, #0x34                      
00401d36  0c99         ldr r1, [sp, #0x30]                
00401d38  5d46         mov r5, fp                         
00401d3a  0026         movs r6, #0                        
00401d3c  08b9         cbnz r0, #0x401d42                 
00401d3e  781c         adds r0, r7, #1                    
00401d40  0d18         adds r5, r1, r0                    
00401d42  781b         subs r0, r7, r5                    
00401d44  02d4         bmi #0x401d4c                      
00401d46  7d1c         adds r5, r7, #1                    
00401d48  c0f1ff36     rsb.w r6, r0, #-1                  
00401d4a  ff36         adds r6, #0xff                     
00401d4c  a5eb070a     sub.w sl, r5, r7                   
00401d4e  070a         lsrs r7, r0, #8                    
00401d50  3ae0         b #0x401dc8                        
00401d52  012f         cmp r7, #1                         
00401d54  00da         bge #0x401d58                      
00401d56  0127         movs r7, #1                        
00401d58  0020         movs r0, #0                        
00401d5a  112f         cmp r7, #0x11                      
00401d5c  0090         str r0, [sp]                       
00401d5e  01dd         ble #0x401d64                      
00401d60  1123         movs r3, #0x11                     
00401d62  00e0         b #0x401d66                        
00401d64  3b46         mov r3, r7                         
00401d66  0aaa         add r2, sp, #0x28                  
00401d68  01a9         add r1, sp, #4                     
00401d6a  0ca8         add r0, sp, #0x30                  
00401d6c  fff7b5fe     bl #0x401ada                       
00401d6e  b5fedde9     mrc2 p9, #5, lr, c5, c13, #6       
00401d70  dde90c01     ldrd r0, r1, [sp, #0x30]           
00401d72  0c01         lsls r4, r1, #4                    
00401d74  3d46         mov r5, r7                         
00401d76  0026         movs r6, #0                        
00401d78  8b46         mov fp, r1                         
00401d7a  2178         ldrb r1, [r4]                      
00401d7c  0907         lsls r1, r1, #0x1c                 
00401d7e  0ad4         bmi #0x401d96                      
00401d80  ab45         cmp fp, r5                         
00401d82  00da         bge #0x401d86                      
00401d84  5d46         mov r5, fp                         
00401d86  01a9         add r1, sp, #4                     
00401d88  012d         cmp r5, #1                         
00401d8a  04dd         ble #0x401d96                      
00401d8c  4a19         adds r2, r1, r5                    
00401d8e  12f8012c     ldrb r2, [r2, #-0x1]               
00401d90  012c         cmp r4, #1                         
00401d92  302a         cmp r2, #0x30                      
00401d94  07d0         beq #0x401da6                      
00401d96  b842         cmp r0, r7                         
00401d98  02da         bge #0x401da0                      
00401d9a  10f1040f     cmn.w r0, #4                       
00401d9c  040f         lsrs r4, r0, #0x1c                 
00401d9e  04da         bge #0x401daa                      
00401da0  4ff0010a     mov.w sl, #1                       
00401da2  010a         lsrs r1, r0, #8                    
00401da4  0fe0         b #0x401dc6                        
00401da6  6d1e         subs r5, r5, #1                    
00401da8  eee7         b #0x401d88                        
00401daa  0028         cmp r0, #0                         
00401dac  02dc         bgt #0x401db4                      
00401dae  2d1a         subs r5, r5, r0                    
00401db0  0644         add r6, r0                         
00401db2  03e0         b #0x401dbc                        
00401db4  411c         adds r1, r0, #1                    
00401db6  a942         cmp r1, r5                         
00401db8  00dd         ble #0x401dbc                      
00401dba  0d46         mov r5, r1                         
00401dbc  801b         subs r0, r0, r6                    
00401dbe  00f1010a     add.w sl, r0, #1                   
00401dc0  010a         lsrs r1, r0, #8                    
00401dc2  4ff00040     mov.w r0, #-0x80000000             
00401dc4  0040         ands r0, r0                        
00401dc6  8146         mov sb, r0                         
00401dc8  2078         ldrb r0, [r4]                      
00401dca  0007         lsls r0, r0, #0x1c                 
00401dcc  03d4         bmi #0x401dd6                      
00401dce  aa45         cmp sl, r5                         
00401dd0  01db         blt #0x401dd6                      
00401dd2  4ff0ff3a     mov.w sl, #-1                      
00401dd4  ff3a         subs r2, #0xff                     
00401dd6  0020         movs r0, #0                        
00401dd8  b9f1004f     cmp.w sb, #-0x80000000             
00401dda  004f         ldr r7, [pc, #0]                   
00401ddc  0df14307     add.w r7, sp, #0x43                
00401dde  4307         lsls r3, r0, #0x1d                 
00401de0  8df84300     strb.w r0, [sp, #0x43]             
00401de2  4300         lsls r3, r0, #1                    
00401de4  25d0         beq #0x401e32                      
00401de6  4ff00208     mov.w r8, #2                       
00401de8  0208         lsrs r2, r0, #0x20                 
00401dea  2b20         movs r0, #0x2b                     
00401dec  b9f1000f     cmp.w sb, #0                       
00401dee  000f         lsrs r0, r0, #0x1c                 
00401df0  0090         str r0, [sp]                       
00401df2  0bda         bge #0x401e0c                      
00401df4  2d20         movs r0, #0x2d                     
00401df6  c9f10009     rsb.w sb, sb, #0                   
00401df8  0009         lsrs r0, r0, #4                    
00401dfa  0090         str r0, [sp]                       
00401dfc  06e0         b #0x401e0c                        
00401dfe  4846         mov r0, sb                         
00401e00  00f044ea     blx #0x40228c                      
00401e02  44ea3031     orr.w r1, r4, r0, ror #12          
00401e04  3031         adds r1, #0x30                     
00401e06  8146         mov sb, r0                         
00401e08  07f8011d     strb r1, [r7, #-0x1]!              
00401e0a  011d         adds r1, r0, #4                    
00401e0c  b8f10001     subs.w r1, r8, #0                  
00401e0e  0001         lsls r0, r0, #4                    
00401e10  a8f10108     sub.w r8, r8, #1                   
00401e12  0108         lsrs r1, r0, #0x20                 
00401e14  f3dc         bgt #0x401dfe                      
00401e16  b9f1000f     cmp.w sb, #0                       
00401e18  000f         lsrs r0, r0, #0x1c                 
00401e1a  f0d1         bne #0x401dfe                      
00401e1c  0098         ldr r0, [sp]                       
00401e1e  07f8010d     strb r0, [r7, #-0x1]!              
00401e20  010d         lsrs r1, r0, #0x14                 
00401e22  2088         ldrh r0, [r4]                      
00401e24  0005         lsls r0, r0, #0x14                 
00401e26  01d5         bpl #0x401e2c                      
00401e28  4520         movs r0, #0x45                     
00401e2a  00e0         b #0x401e2e                        
00401e2c  6520         movs r0, #0x65                     
00401e2e  07f8010d     strb r0, [r7, #-0x1]!              
00401e30  010d         lsrs r1, r0, #0x14                 
00401e32  0fa8         add r0, sp, #0x3c                  
00401e34  c01b         subs r0, r0, r7                    
00401e36  00f10708     add.w r8, r0, #7                   
00401e38  0708         lsrs r7, r0, #0x20                 
00401e3a  0998         ldr r0, [sp, #0x24]                
00401e3c  00b1         cbz r0, #0x401e40                  
00401e3e  0120         movs r0, #1                        
00401e40  4119         adds r1, r0, r5                    
00401e42  01ebea71     add.w r1, r1, sl, asr #31          
00401e44  ea71         strb r2, [r5, #7]                  
00401e46  01eb0800     add.w r0, r1, r8                   
00401e48  0800         movs r0, r1                        
00401e4a  a169         ldr r1, [r4, #0x18]                
00401e4c  081a         subs r0, r1, r0                    
00401e4e  401e         subs r0, r0, #1                    
00401e50  a061         str r0, [r4, #0x18]                
00401e52  2078         ldrb r0, [r4]                      
00401e54  c006         lsls r0, r0, #0x1b                 
00401e56  02d4         bmi #0x401e5e                      
00401e58  2046         mov r0, r4                         
00401e5a  fff7e3fa     bl #0x401424                       
00401e5c  e3fa         (undecodable)
00401e5e  0998         ldr r0, [sp, #0x24]                
00401e60  28b1         cbz r0, #0x401e6e                  
00401e62  d4e90121     ldrd r2, r1, [r4, #4]              
00401e64  0121         movs r1, #1                        
00401e66  9047         blx r2                             
00401e68  206a         ldr r0, [r4, #0x20]                
00401e6a  401c         adds r0, r0, #1                    
00401e6c  2062         str r0, [r4, #0x20]                
00401e6e  2078         ldrb r0, [r4]                      
00401e70  c006         lsls r0, r0, #0x1b                 
00401e72  22d5         bpl #0x401eba                      
00401e74  2046         mov r0, r4                         
00401e76  fff7d5fa     bl #0x401424                       
00401e78  d5fa         (undecodable)
00401e7a  1ee0         b #0x401eba                        
00401e7c  002e         cmp r6, #0                         
00401e7e  04db         blt #0x401e8a                      
00401e80  b345         cmp fp, r6                         
00401e82  02dd         ble #0x401e8a                      
00401e84  01a8         add r0, sp, #4                     
00401e86  805d         ldrb r0, [r0, r6]                  
00401e88  00e0         b #0x401e8c                        
00401e8a  3020         movs r0, #0x30                     
00401e8c  d4e90121     ldrd r2, r1, [r4, #4]              
00401e8e  0121         movs r1, #1                        
00401e90  9047         blx r2                             
00401e92  206a         ldr r0, [r4, #0x20]                
00401e94  401c         adds r0, r0, #1                    
00401e96  2062         str r0, [r4, #0x20]                
00401e98  761c         adds r6, r6, #1                    
00401e9a  aaf10100     sub.w r0, sl, #1                   
00401e9c  0100         movs r1, r0                        
00401e9e  5fea000a     movs.w sl, r0                      
00401ea0  000a         lsrs r0, r0, #8                    
00401ea2  0ad1         bne #0x401eba                      
00401ea4  00f010fa     bl #0x4022c8                       
00401ea6  10fa         (undecodable)
00401ea8  c068         ldr r0, [r0, #0xc]                 
00401eaa  0168         ldr r1, [r0]                       
00401eac  405c         ldrb r0, [r0, r1]                  
00401eae  d4e90121     ldrd r2, r1, [r4, #4]              
00401eb0  0121         movs r1, #1                        
00401eb2  9047         blx r2                             
00401eb4  206a         ldr r0, [r4, #0x20]                
00401eb6  401c         adds r0, r0, #1                    
00401eb8  2062         str r0, [r4, #0x20]                
00401eba  281e         subs r0, r5, #0                    
00401ebc  a5f10105     sub.w r5, r5, #1                   
00401ebe  0105         lsls r1, r0, #0x14                 
00401ec0  dcdc         bgt #0x401e7c                      
00401ec2  07e0         b #0x401ed4                        
00401ec4  d4e90121     ldrd r2, r1, [r4, #4]              
00401ec6  0121         movs r1, #1                        
00401ec8  17f8010b     ldrb r0, [r7], #1                  
00401eca  010b         lsrs r1, r0, #0xc                  
00401ecc  9047         blx r2                             
00401ece  206a         ldr r0, [r4, #0x20]                
00401ed0  401c         adds r0, r0, #1                    
00401ed2  2062         str r0, [r4, #0x20]                
00401ed4  b8f10001     subs.w r1, r8, #0                  
00401ed6  0001         lsls r0, r0, #4                    
00401ed8  a8f10108     sub.w r8, r8, #1                   
00401eda  0108         lsrs r1, r0, #0x20                 
00401edc  f2dc         bgt #0x401ec4                      
00401ede  2046         mov r0, r4                         
00401ee0  fff7b6fa     bl #0x401450                       
00401ee2  b6fa         (undecodable)
00401ee4  0320         movs r0, #3                        
00401ee6  11b0         add sp, #0x44                      
00401ee8  48e6         b #0x401b7c                        
00401eea  0000         movs r0, r0                        
00401eec  2de9f04f     push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} 
00401eee  f04f         ldr r7, [pc, #0x3c0]               
00401ef0  0446         mov r4, r0                         
00401ef2  0d46         mov r5, r1                         
00401ef4  d21d         adds r2, r2, #7                    
00401ef6  22f00700     bic r0, r2, #7                     
00401ef8  0700         movs r7, r0                        
00401efa  89b0         sub sp, #0x24                      
00401efc  d0e90076     ldrd r7, r6, [r0]                  
00401efe  0076         strb r0, [r0, #0x18]               
00401f00  3846         mov r0, r7                         
00401f02  3146         mov r1, r6                         
00401f04  04f034f9     bl #0x406170                       
00401f06  34f9         (undecodable)
00401f08  0246         mov r2, r0                         
00401f0a  f00f         lsrs r0, r6, #0x1f                 
00401f0c  01d0         beq #0x401f12                      
00401f0e  2d23         movs r3, #0x2d                     
00401f10  07e0         b #0x401f22                        
00401f12  2068         ldr r0, [r4]                       
00401f14  8107         lsls r1, r0, #0x1e                 
00401f16  01d5         bpl #0x401f1c                      
00401f18  2b23         movs r3, #0x2b                     
00401f1a  02e0         b #0x401f22                        
00401f1c  2021         movs r1, #0x20                     
00401f1e  01eac003     and.w r3, r1, r0, lsl #3           
00401f20  c003         lsls r0, r0, #0xf                  
00401f22  8df82030     strb.w r3, [sp, #0x20]             
00401f24  2030         adds r0, #0x20                     
00401f26  0bb1         cbz r3, #0x401f2c                  
00401f28  0120         movs r0, #1                        
00401f2a  00e0         b #0x401f2e                        
00401f2c  0020         movs r0, #0                        
00401f2e  032a         cmp r2, #3                         
00401f30  8046         mov r8, r0                         
00401f32  01d0         beq #0x401f38                      
00401f34  072a         cmp r2, #7                         
00401f36  04db         blt #0x401f42                      
00401f38  2946         mov r1, r5                         
00401f3a  2046         mov r0, r4                         
00401f3c  00f0c8f9     bl #0x4022d0                       
00401f3e  c8f940e1     vst2.8 {d30[2], d31[2]}, [r8], r0  
00401f40  40e1         b #0x4021c4                        
00401f42  2078         ldrb r0, [r4]                      
00401f44  8006         lsls r0, r0, #0x1a                 
00401f46  01d4         bmi #0x401f4c                      
00401f48  0d25         movs r5, #0xd                      
00401f4a  00e0         b #0x401f4e                        
00401f4c  e569         ldr r5, [r4, #0x1c]                
00401f4e  c6f30a5a     ubfx sl, r6, #0x14, #0xb           
00401f50  0a5a         ldrh r2, [r1, r0]                  
00401f52  0d2d         cmp r5, #0xd                       
00401f54  48da         bge #0x401fe8                      
00401f56  0021         movs r1, #0                        
00401f58  4fea1659     lsr.w sb, r6, #0x14                
00401f5a  1659         ldr r6, [r2, r4]                   
00401f5c  0846         mov r0, r1                         
00401f5e  4ff00000     mov.w r0, #0                       
00401f60  0000         movs r0, r0                        
00401f62  002e         cmp r6, #0                         
00401f64  00f44000     and r0, r0, #0xc00000              
00401f66  4000         lsls r0, r0, #1                    
00401f68  07da         bge #0x401f7a                      
00401f6a  00eb8000     add.w r0, r0, r0, lsl #2           
00401f6c  8000         lsls r0, r0, #2                    
00401f6e  00ebd071     add.w r1, r0, r0, lsr #31          
00401f70  d071         strb r0, [r2, #7]                  
00401f72  4ff44000     mov.w r0, #0xc00000                
00401f74  4000         lsls r0, r0, #1                    
00401f76  00ea6100     and.w r0, r0, r1, asr #1           
00401f78  6100         lsls r1, r4, #1                    
00401f7a  8115         asrs r1, r0, #0x16                 
00401f7c  0129         cmp r1, #1                         
00401f7e  01dd         ble #0x401f84                      
00401f80  4ff0ff31     mov.w r1, #-1                      
00401f82  ff31         adds r1, #0xff                     
00401f84  0022         movs r2, #0                        
00401f86  4fea850c     lsl.w ip, r5, #2                   
00401f88  850c         lsrs r5, r0, #0x12                 
00401f8a  bcf1180f     cmp.w ip, #0x18                    
00401f8c  180f         lsrs r0, r3, #0x1c                 
00401f8e  06d3         blo #0x401f9e                      
00401f90  1346         mov r3, r2                         
00401f92  acf11800     sub.w r0, ip, #0x18                
00401f94  1800         movs r0, r3                        
00401f96  4ff08052     mov.w r2, #0x10000000              
00401f98  8052         strh r0, [r0, r2]                  
00401f9a  c240         lsrs r2, r0                        
00401f9c  03e0         b #0x401fa6                        
00401f9e  4ff48013     mov.w r3, #0x100000                
00401fa0  8013         asrs r0, r0, #0xe                  
00401fa2  23fa0cf3     lsr.w r3, r3, ip                   
00401fa4  0cf30cf1     bl #0xb0e1c0                       
00401fa6  0cf10c0c     add.w ip, ip, #0xc                 
00401fa8  0c0c         lsrs r4, r1, #0x10                 
00401faa  bcf1200f     cmp.w ip, #0x20                    
00401fac  200f         lsrs r0, r4, #0x1c                 
00401fae  04d3         blo #0x401fba                      
00401fb0  acf1200c     sub.w ip, ip, #0x20                
00401fb2  200c         lsrs r0, r4, #0x10                 
00401fb4  07fa0cf0     lsl.w r0, r7, ip                   
00401fb6  0cf0         (undecodable)
00401fb8  01e0         b #0x401fbe                        
00401fba  06fa0cf0     lsl.w r0, r6, ip                   
00401fbc  0cf00029     and sb, ip, #0                     
00401fbe  0029         cmp r1, #0                         
00401fc0  4ff0004c     mov.w ip, #-0x80000000             
00401fc2  004c         ldr r4, [pc, #0]                   
00401fc4  01dd         ble #0x401fca                      
00401fc6  18b9         cbnz r0, #0x401fd0                 
00401fc8  0ee0         b #0x401fe8                        
00401fca  0dd1         bne #0x401fe8                      
00401fcc  6045         cmp r0, ip                         
00401fce  0bd3         blo #0x401fe8                      
00401fd0  bf18         adds r7, r7, r2                    
00401fd2  5e41         adcs r6, r3                        
00401fd4  19b9         cbnz r1, #0x401fde                 
00401fd6  6045         cmp r0, ip                         
00401fd8  01d1         bne #0x401fde                      
00401fda  9743         bics r7, r2                        
00401fdc  9e43         bics r6, r3                        
00401fde  b9eb165f     cmp.w sb, r6, lsr #20              
00401fe0  165f         ldrsh r6, [r2, r4]                 
00401fe2  01d0         beq #0x401fe8                      
00401fe4  0af1010a     add.w sl, sl, #1                   
00401fe6  010a         lsrs r1, r0, #8                    
00401fe8  2088         ldrh r0, [r4]                      
00401fea  0005         lsls r0, r0, #0x14                 
00401fec  02d5         bpl #0x401ff4                      
00401fee  7d48         ldr r0, [pc, #0x1f4]               
00401ff0  7844         add r0, pc                         
00401ff2  02e0         b #0x401ffa                        
00401ff4  7b48         ldr r0, [pc, #0x1ec]               
00401ff6  7844         add r0, pc                         
00401ff8  1938         subs r0, #0x19                     
00401ffa  e946         mov sb, sp                         
00401ffc  08aa         add r2, sp, #0x20                  
00401ffe  3023         movs r3, #0x30                     
00402000  02f80830     strb.w r3, [r2, r8]                
00402002  0830         adds r0, #8                        
00402004  037c         ldrb r3, [r0, #0x10]               
00402006  08f10101     add.w r1, r8, #1                   
00402008  0101         lsls r1, r0, #4                    
0040200a  baf1000f     cmp.w sl, #0                       
0040200c  000f         lsrs r0, r0, #0x1c                 
0040200e  08f1020b     add.w fp, r8, #2                   
00402010  020b         lsrs r2, r0, #0xc                  
00402012  5354         strb r3, [r2, r1]                  
00402014  02dc         bgt #0x40201c                      
00402016  4ff03001     mov.w r1, #0x30                    
00402018  3001         lsls r0, r6, #4                    
0040201a  01e0         b #0x402020                        
0040201c  4ff03101     mov.w r1, #0x31                    
0040201e  3101         lsls r1, r6, #4                    
00402020  4ff00108     mov.w r8, #1                       
00402022  0108         lsrs r1, r0, #0x20                 
00402024  8df80010     strb.w r1, [sp]                    
00402026  0010         asrs r0, r0, #0x20                 
00402028  02d0         beq #0x402030                      
0040202a  aaf2ff31     subw r1, sl, #0x3ff                
0040202c  ff31         adds r1, #0xff                     
0040202e  03e0         b #0x402038                        
00402030  57ea4601     orrs.w r1, r7, r6, lsl #1          
00402032  4601         lsls r6, r0, #5                    
00402034  01d0         beq #0x40203a                      
00402036  6c49         ldr r1, [pc, #0x1b0]               
00402038  8a46         mov sl, r1                         
0040203a  002d         cmp r5, #0                         
0040203c  02dc         bgt #0x402044                      
0040203e  2178         ldrb r1, [r4]                      
00402040  0907         lsls r1, r1, #0x1c                 
00402042  04d5         bpl #0x40204e                      
00402044  4ff00208     mov.w r8, #2                       
00402046  0208         lsrs r2, r0, #0x20                 
00402048  2e21         movs r1, #0x2e                     
0040204a  8df80110     strb.w r1, [sp, #1]                
0040204c  0110         asrs r1, r0, #0x20                 
0040204e  4346         mov r3, r8                         
00402050  0021         movs r1, #0                        
00402052  0be0         b #0x40206c                        
00402054  c6f30342     ubfx r2, r6, #0x10, #4             
00402056  0342         tst r3, r0                         
00402058  3601         lsls r6, r6, #4                    
0040205a  825c         ldrb r2, [r0, r2]                  
0040205c  491c         adds r1, r1, #1                    
0040205e  6d1e         subs r5, r5, #1                    
00402060  09f80820     strb.w r2, [sb, r8]                
00402062  0820         movs r0, #8                        
00402064  0529         cmp r1, #5                         
00402066  08f10108     add.w r8, r8, #1                   
00402068  0108         lsrs r1, r0, #0x20                 
0040206a  01da         bge #0x402070                      
0040206c  002d         cmp r5, #0                         
0040206e  f1dc         bgt #0x402054                      
00402070  0021         movs r1, #0                        
00402072  0be0         b #0x40208c                        
00402074  00eb1772     add.w r2, r0, r7, lsr #28          
00402076  1772         strb r7, [r2, #8]                  
00402078  3f01         lsls r7, r7, #4                    
0040207a  1278         ldrb r2, [r2]                      
0040207c  491c         adds r1, r1, #1                    
0040207e  6d1e         subs r5, r5, #1                    
00402080  09f80820     strb.w r2, [sb, r8]                
00402082  0820         movs r0, #8                        
00402084  0829         cmp r1, #8                         
00402086  08f10108     add.w r8, r8, #1                   
00402088  0108         lsrs r1, r0, #0x20                 
0040208a  01da         bge #0x402090                      
0040208c  002d         cmp r5, #0                         
0040208e  f1dc         bgt #0x402074                      
00402090  2168         ldr r1, [r4]                       
00402092  8a06         lsls r2, r1, #0x1a                 
00402094  02d5         bpl #0x40209c                      
00402096  16e0         b #0x4020c6                        
00402098  a8f10108     sub.w r8, r8, #1                   
0040209a  0108         lsrs r1, r0, #0x20                 
0040209c  9845         cmp r8, r3                         
0040209e  05dd         ble #0x4020ac                      
004020a0  09eb0802     add.w r2, sb, r8                   
004020a2  0802         lsls r0, r1, #8                    
004020a4  12f8012c     ldrb r2, [r2, #-0x1]               
004020a6  012c         cmp r4, #1                         
004020a8  302a         cmp r2, #0x30                      
004020aa  f5d0         beq #0x402098                      
004020ac  b8f1000f     cmp.w r8, #0                       
004020ae  000f         lsrs r0, r0, #0x1c                 
004020b0  09dd         ble #0x4020c6                      
004020b2  09eb0802     add.w r2, sb, r8                   
004020b4  0802         lsls r0, r1, #8                    
004020b6  12f8012c     ldrb r2, [r2, #-0x1]               
004020b8  012c         cmp r4, #1                         
004020ba  2e2a         cmp r2, #0x2e                      
004020bc  03d1         bne #0x4020c6                      
004020be  0907         lsls r1, r1, #0x1c                 
004020c0  01d4         bmi #0x4020c6                      
004020c2  a8f10108     sub.w r8, r8, #1                   
004020c4  0108         lsrs r1, r0, #0x20                 
004020c6  002d         cmp r5, #0                         
004020c8  05dd         ble #0x4020d6                      
004020ca  3e21         movs r1, #0x3e                     
004020cc  09f80810     strb.w r1, [sb, r8]                
004020ce  0810         asrs r0, r1, #0x20                 
004020d0  6d1e         subs r5, r5, #1                    
004020d2  08f10108     add.w r8, r8, #1                   
004020d4  0108         lsrs r1, r0, #0x20                 
004020d6  407c         ldrb r0, [r0, #0x11]               
004020d8  baf1000f     cmp.w sl, #0                       
004020da  000f         lsrs r0, r0, #0x1c                 
004020dc  09f80800     strb.w r0, [sb, r8]                
004020de  0800         movs r0, r1                        
004020e0  08f10108     add.w r8, r8, #1                   
004020e2  0108         lsrs r1, r0, #0x20                 
004020e4  05da         bge #0x4020f2                      
004020e6  2d20         movs r0, #0x2d                     
004020e8  caf1000a     rsb.w sl, sl, #0                   
004020ea  000a         lsrs r0, r0, #8                    
004020ec  09f80800     strb.w r0, [sb, r8]                
004020ee  0800         movs r0, r1                        
004020f0  02e0         b #0x4020f8                        
004020f2  2b20         movs r0, #0x2b                     
004020f4  09f80800     strb.w r0, [sb, r8]                
004020f6  0800         movs r0, r1                        
004020f8  5046         mov r0, sl                         
004020fa  4ff47a71     mov.w r1, #0x3e8                   
004020fc  7a71         strb r2, [r7, #5]                  
004020fe  8a45         cmp sl, r1                         
00402100  08f10108     add.w r8, r8, #1                   
00402102  0108         lsrs r1, r0, #0x20                 
00402104  08db         blt #0x402118                      
00402106  fff7cae8     blx #0x40129c                      
00402108  cae8         (undecodable)
0040210a  3030         adds r0, #0x30                     
0040210c  8a46         mov sl, r1                         
0040210e  09f80800     strb.w r0, [sb, r8]                
00402110  0800         movs r0, r1                        
00402112  08f10108     add.w r8, r8, #1                   
00402114  0108         lsrs r1, r0, #0x20                 
00402116  02e0         b #0x40211e                        
00402118  baf1640f     cmp.w sl, #0x64                    
0040211a  640f         lsrs r4, r4, #0x1d                 
0040211c  0adb         blt #0x402134                      
0040211e  5046         mov r0, sl                         
00402120  6421         movs r1, #0x64                     
00402122  fff7bce8     blx #0x40129c                      
00402124  bce83030     ldm.w ip!, {r4, r5, ip, sp}        
00402126  3030         adds r0, #0x30                     
00402128  8a46         mov sl, r1                         
0040212a  09f80800     strb.w r0, [sb, r8]                
0040212c  0800         movs r0, r1                        
0040212e  08f10108     add.w r8, r8, #1                   
00402130  0108         lsrs r1, r0, #0x20                 
00402132  02e0         b #0x40213a                        
00402134  baf10a0f     cmp.w sl, #0xa                     
00402136  0a0f         lsrs r2, r1, #0x1c                 
00402138  08db         blt #0x40214c                      
0040213a  5046         mov r0, sl                         
0040213c  0a21         movs r1, #0xa                      
0040213e  fff7aee8     blx #0x40129c                      
00402140  aee8         (undecodable)
00402142  3030         adds r0, #0x30                     
00402144  09f80800     strb.w r0, [sb, r8]                
00402146  0800         movs r0, r1                        
00402148  08f10108     add.w r8, r8, #1                   
0040214a  0108         lsrs r1, r0, #0x20                 
0040214c  5046         mov r0, sl                         
0040214e  0a21         movs r1, #0xa                      
00402150  fff7a4e8     blx #0x40129c                      
00402152  a4e8         (undecodable)
00402154  3031         adds r1, #0x30                     
00402156  09f80810     strb.w r1, [sb, r8]                
00402158  0810         asrs r0, r1, #0x20                 
0040215a  a169         ldr r1, [r4, #0x18]                
0040215c  08f10108     add.w r8, r8, #1                   
0040215e  0108         lsrs r1, r0, #0x20                 
00402160  08eb0502     add.w r2, r8, r5                   
00402162  0502         lsls r5, r0, #8                    
00402164  02eb0b00     add.w r0, r2, fp                   
00402166  0b00         movs r3, r1                        
00402168  081a         subs r0, r1, r0                    
0040216a  a061         str r0, [r4, #0x18]                
0040216c  2078         ldrb r0, [r4]                      
0040216e  c006         lsls r0, r0, #0x1b                 
00402170  02d4         bmi #0x402178                      
00402172  2046         mov r0, r4                         
00402174  fff756f9     bl #0x401424                       
00402176  56f9         (undecodable)
00402178  216a         ldr r1, [r4, #0x20]                
0040217a  08ae         add r6, sp, #0x20                  
0040217c  01eb0b00     add.w r0, r1, fp                   
0040217e  0b00         movs r3, r1                        
00402180  2062         str r0, [r4, #0x20]                
00402182  04e0         b #0x40218e                        
00402184  d4e90121     ldrd r2, r1, [r4, #4]              
00402186  0121         movs r1, #1                        
00402188  16f8010b     ldrb r0, [r6], #1                  
0040218a  010b         lsrs r1, r0, #0xc                  
0040218c  9047         blx r2                             
0040218e  bbf1010b     subs.w fp, fp, #1                  
00402190  010b         lsrs r1, r0, #0xc                  
00402192  f7d2         bhs #0x402184                      
00402194  2078         ldrb r0, [r4]                      
00402196  c006         lsls r0, r0, #0x1b                 
00402198  02d5         bpl #0x4021a0                      
0040219a  2046         mov r0, r4                         
0040219c  fff742f9     bl #0x401424                       
0040219e  42f9         (undecodable)
004021a0  6e46         mov r6, sp                         
004021a2  09e0         b #0x4021b8                        
004021a4  16f8010b     ldrb r0, [r6], #1                  
004021a6  010b         lsrs r1, r0, #0xc                  
004021a8  3e28         cmp r0, #0x3e                      
004021aa  0fd0         beq #0x4021cc                      
004021ac  d4e90121     ldrd r2, r1, [r4, #4]              
004021ae  0121         movs r1, #1                        
004021b0  9047         blx r2                             
004021b2  206a         ldr r0, [r4, #0x20]                
004021b4  401c         adds r0, r0, #1                    
004021b6  2062         str r0, [r4, #0x20]                
004021b8  b8f10108     subs.w r8, r8, #1                  
004021ba  0108         lsrs r1, r0, #0x20                 
004021bc  f2d2         bhs #0x4021a4                      
004021be  2046         mov r0, r4                         
004021c0  fff746f9     bl #0x401450                       
004021c2  46f909b0     vst4.8 {d27, d28, d29, d30}, [r6], sb 
004021c4  09b0         add sp, #0x24                      
004021c6  0320         movs r0, #3                        
004021c8  bde8f08f     pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc} 
004021ca  f08f         ldrh r0, [r6, #0x3e]               
004021cc  206a         ldr r0, [r4, #0x20]                
004021ce  2844         add r0, r5                         
004021d0  2062         str r0, [r4, #0x20]                
004021d2  03e0         b #0x4021dc                        
004021d4  d4e90121     ldrd r2, r1, [r4, #4]              
004021d6  0121         movs r1, #1                        
004021d8  3020         movs r0, #0x30                     
004021da  9047         blx r2                             
004021dc  6d1e         subs r5, r5, #1                    
004021de  ebd3         blo #0x4021b8                      
004021e0  f8e7         b #0x4021d4                        
004021e2  0000         movs r0, r0                        
004021e4  c443         mvns r4, r0                        
004021e6  0000         movs r0, r0                        
004021e8  02fc         (undecodable)
004021ea  ffff10b5     vsli.32 d27, d0, #0x1f             
004021ec  10b5         push {r4, lr}                      
004021ee  4369         ldr r3, [r0, #0x14]                
004021f0  13b1         cbz r3, #0x4021f8                  
004021f2  aff30080     nop.w                              
004021f4  0080         strh r0, [r0]                      
004021f6  01e0         b #0x4021fc                        
004021f8  fff74df9     bl #0x401496                       
004021fa  4df90120     vst4.8 {d18, d19, d20, d21}, [sp], r1 
004021fc  0120         movs r0, #1                        
004021fe  10bd         pop {r4, pc}                       
00402200  1278         ldrb r2, [r2]                      
00402202  00f12401     add.w r1, r0, #0x24                
00402204  2401         lsls r4, r4, #4                    
00402206  0a70         strb r2, [r1]                      
00402208  0022         movs r2, #0                        
0040220a  4a70         strb r2, [r1, #1]                  
0040220c  0122         movs r2, #1                        
0040220e  ede7         b #0x4021ec                        
00402210  1168         ldr r1, [r2]                       
00402212  4ff0ff32     mov.w r2, #-1                      
00402214  ff32         adds r2, #0xff                     
00402216  e9e7         b #0x4021ec                        
00402218  10b5         push {r4, lr}                      
0040221a  4369         ldr r3, [r0, #0x14]                
0040221c  13b1         cbz r3, #0x402224                  
0040221e  aff30080     nop.w                              
00402220  0080         strh r0, [r0]                      
00402222  01e0         b #0x402228                        
00402224  fff7d2f9     bl #0x4015cc                       
00402226  d2f9         (undecodable)
00402228  0120         movs r0, #1                        
0040222a  10bd         pop {r4, pc}                       
0040222c  1288         ldrh r2, [r2]                      
0040222e  00f12401     add.w r1, r0, #0x24                
00402230  2401         lsls r4, r4, #4                    
00402232  8284         strh r2, [r0, #0x24]               
00402234  0022         movs r2, #0                        
00402236  c284         strh r2, [r0, #0x26]               
00402238  0122         movs r2, #1                        
0040223a  ede7         b #0x402218                        
0040223c  1168         ldr r1, [r2]                       
0040223e  4ff0ff32     mov.w r2, #-1                      
00402240  ff32         adds r2, #0xff                     
00402242  e9e7         b #0x402218                        
00402244  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
00402246  f041         rors r0, r6                        
00402248  1646         mov r6, r2                         
0040224a  0c46         mov r4, r1                         
0040224c  0546         mov r5, r0                         
0040224e  00f033f8     bl #0x4022b8                       
00402250  33f8         (undecodable)
00402252  0368         ldr r3, [r0]                       
00402254  93f80101     ldrb.w r0, [r3, #0x101]            
00402256  0101         lsls r1, r0, #4                    
00402258  0128         cmp r0, #1                         
0040225a  07d0         beq #0x40226c                      
0040225c  ff2c         cmp r4, #0xff                      
0040225e  12d8         bhi #0x402286                      
00402260  185d         ldrb r0, [r3, r4]                  
00402262  80b1         cbz r0, #0x402286                  
00402264  0120         movs r0, #1                        
00402266  2c70         strb r4, [r5]                      
00402268  bde8f081     pop.w {r4, r5, r6, r7, r8, pc}     
0040226a  f081         strh r0, [r6, #0xe]                
0040226c  d3f80701     ldr.w r0, [r3, #0x107]             
0040226e  0701         lsls r7, r0, #4                    
00402270  3246         mov r2, r6                         
00402272  2146         mov r1, r4                         
00402274  03f20713     addw r3, r3, #0x107                
00402276  0713         asrs r7, r0, #0xc                  
00402278  c718         adds r7, r0, r3                    
0040227a  2846         mov r0, r5                         
0040227c  bc46         mov ip, r7                         
0040227e  bde8f041     pop.w {r4, r5, r6, r7, r8, lr}     
00402280  f041         rors r0, r6                        
00402282  0023         movs r3, #0                        
00402284  6047         bx ip                              
00402286  4ff0ff30     mov.w r0, #-1                      
00402288  ff30         adds r0, #0xff                     
0040228a  ede7         b #0x402268                        
0040228c  0a10         asrs r2, r1, #0x20                 
0040228e  40e2         b #0x402712                        
00402290  2001         lsls r0, r4, #4                    
00402292  40e0         b #0x402316                        
00402294  2002         lsls r0, r4, #8                    
00402296  80e0         b #0x40239a                        
00402298  2004         lsls r0, r4, #0x10                 
0040229a  80e0         b #0x40239e                        
0040229c  2008         lsrs r0, r4, #0x20                 
0040229e  80e0         b #0x4023a2                        
004022a0  a001         lsls r0, r4, #6                    
004022a2  a0e1         b #0x4025e6                        
004022a4  0021         movs r1, #0                        
004022a6  80e0         b #0x4023aa                        
004022a8  8210         asrs r2, r0, #2                    
004022aa  51e0         b #0x402350                        
004022ac  0100         movs r1, r0                        
004022ae  8052         strh r0, [r0, r2]                  
004022b0  0a10         asrs r2, r1, #0x20                 
004022b2  8142         cmp r1, r0                         
004022b4  1eff2fe1     vrhadd.u16 d14, d14, d31           
004022b6  2fe1         b #0x402518                        
004022b8  10b5         push {r4, lr}                      
004022ba  00f005f8     bl #0x4022c8                       
004022bc  05f8001d     strb r1, [r5, #-0x0]!              
004022be  001d         adds r0, r0, #4                    
004022c0  10bd         pop {r4, pc}                       
004022c2  00bf         nop                                
004022c4  6d40         eors r5, r5                        
004022c6  0000         movs r0, r0                        
004022c8  0048         ldr r0, [pc, #0]                   
004022ca  7047         bx lr                              
004022cc  0060         str r0, [r0]                       
004022ce  4100         lsls r1, r0, #1                    
004022d0  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
004022d2  f041         rors r0, r6                        
004022d4  1f46         mov r7, r3                         
004022d6  0446         mov r4, r0                         
004022d8  0326         movs r6, #3                        
004022da  0168         ldr r1, [r0]                       
004022dc  072a         cmp r2, #7                         
004022de  01f40060     and r0, r1, #0x800                 
004022e0  0060         str r0, [r0]                       
004022e2  04db         blt #0x4022ee                      
004022e4  08b1         cbz r0, #0x4022ea                  
004022e6  16a5         adr r5, #0x58                      
004022e8  05e0         b #0x4022f6                        
004022ea  16a5         adr r5, #0x58                      
004022ec  03e0         b #0x4022f6                        
004022ee  08b1         cbz r0, #0x4022f4                  
004022f0  15a5         adr r5, #0x54                      
004022f2  00e0         b #0x4022f6                        
004022f4  15a5         adr r5, #0x54                      
004022f6  21f01000     bic r0, r1, #0x10                  
004022f8  1000         movs r0, r2                        
004022fa  2060         str r0, [r4]                       
004022fc  a069         ldr r0, [r4, #0x18]                
004022fe  c01e         subs r0, r0, #3                    
00402300  a061         str r0, [r4, #0x18]                
00402302  0fb1         cbz r7, #0x402308                  
00402304  401e         subs r0, r0, #1                    
00402306  a061         str r0, [r4, #0x18]                
00402308  2046         mov r0, r4                         
0040230a  fff78bf8     bl #0x401424                       
0040230c  8bf84fb1     strb.w fp, [fp, #0x14f]            
0040230e  4fb1         cbz r7, #0x402324                  
00402310  d4e90121     ldrd r2, r1, [r4, #4]              
00402312  0121         movs r1, #1                        
00402314  3846         mov r0, r7                         
00402316  9047         blx r2                             
00402318  206a         ldr r0, [r4, #0x20]                
0040231a  401c         adds r0, r0, #1                    
0040231c  2062         str r0, [r4, #0x20]                
0040231e  c01c         adds r0, r0, #3                    
00402320  2062         str r0, [r4, #0x20]                
00402322  06e0         b #0x402332                        
00402324  206a         ldr r0, [r4, #0x20]                
00402326  fae7         b #0x40231e                        
00402328  d4e90121     ldrd r2, r1, [r4, #4]              
0040232a  0121         movs r1, #1                        
0040232c  15f8010b     ldrb r0, [r5], #1                  
0040232e  010b         lsrs r1, r0, #0xc                  
00402330  9047         blx r2                             
00402332  761e         subs r6, r6, #1                    
00402334  f8d2         bhs #0x402328                      
00402336  2046         mov r0, r4                         
00402338  fff78af8     bl #0x401450                       
0040233a  8af8bde8     strb.w lr, [sl, #0x8bd]            
0040233c  bde8f081     pop.w {r4, r5, r6, r7, r8, pc}     
0040233e  f081         strh r0, [r6, #0xe]                
00402340  4e41         adcs r6, r1                        
00402342  4e00         lsls r6, r1, #1                    
00402344  6e61         str r6, [r5, #0x14]                
00402346  6e00         lsls r6, r5, #1                    
00402348  494e         ldr r6, [pc, #0x124]               
0040234a  4600         lsls r6, r0, #1                    
0040234c  696e         ldr r1, [r5, #0x64]                
0040234e  6600         lsls r6, r4, #1                    
00402350  2de9f047     push.w {r4, r5, r6, r7, r8, sb, sl, lr} 
00402352  f047         blx lr                             
00402354  1646         mov r6, r2                         
00402356  8146         mov sb, r0                         
00402358  8ab0         sub sp, #0x28                      
0040235a  344a         ldr r2, [pc, #0xd0]                
0040235c  7a44         add r2, pc                         
0040235e  0dca         ldm r2, {r0, r2, r3}               
00402360  8de80d00     stm.w sp, {r0, r2, r3}             
00402362  0d00         movs r5, r1                        
00402364  314a         ldr r2, [pc, #0xc4]                
00402366  7a44         add r2, pc                         
00402368  921c         adds r2, r2, #2                    
0040236a  03ac         add r4, sp, #0xc                   
0040236c  0dca         ldm r2, {r0, r2, r3}               
0040236e  84e80d00     stm.w r4, {r0, r2, r3}             
00402370  0d00         movs r5, r1                        
00402372  01f5dc50     add.w r0, r1, #0x1b80              
00402374  dc50         str r4, [r3, r3]                   
00402376  3721         movs r1, #0x37                     
00402378  1b30         adds r0, #0x1b                     
0040237a  fef790ef     blx #0x40129c                      
0040237c  90efb1f1     vsra.s64 d15, d17, #0x30           
0040237e  b1f11b04     subs.w r4, r1, #0x1b               
00402380  1b04         lsls r3, r3, #0x10                 
00402382  a0f18005     sub.w r5, r0, #0x80                
00402384  8005         lsls r0, r0, #0x16                 
00402386  02d5         bpl #0x40238e                      
00402388  6442         rsbs r4, r4, #0                    
0040238a  0120         movs r0, #1                        
0040238c  00e0         b #0x402390                        
0040238e  0020         movs r0, #0                        
00402390  dff898a0     ldr.w sl, [pc, #0x98]              
00402392  98a0         adr r0, #0x260                     
00402394  8046         mov r8, r0                         
00402396  0027         movs r7, #0                        
00402398  fa44         add sl, pc                         
0040239a  aaf1b80a     sub.w sl, sl, #0xb8                
0040239c  b80a         lsrs r0, r7, #0xa                  
0040239e  0ee0         b #0x4023be                        
004023a0  e007         lsls r0, r4, #0x1f                 
004023a2  0ad0         beq #0x4023ba                      
004023a4  3246         mov r2, r6                         
004023a6  6846         mov r0, sp                         
004023a8  07eb4701     add.w r1, r7, r7, lsl #1           
004023aa  4701         lsls r7, r0, #5                    
004023ac  0123         movs r3, #1                        
004023ae  0aeb8101     add.w r1, sl, r1, lsl #2           
004023b0  8101         lsls r1, r0, #6                    
004023b2  03f049fd     bl #0x405e48                       
004023b4  49fd8de8     stc2l p8, c14, [sb, #-0x234]       
004023b6  8de80700     stm.w sp, {r0, r1, r2}             
004023b8  0700         movs r7, r0                        
004023ba  6410         asrs r4, r4, #1                    
004023bc  7f1c         adds r7, r7, #1                    
004023be  002c         cmp r4, #0                         
004023c0  eed1         bne #0x4023a0                      
004023c2  1a4f         ldr r7, [pc, #0x68]                
004023c4  7f44         add r7, pc                         
004023c6  a83f         subs r7, #0xa8                     
004023c8  19e0         b #0x4023fe                        
004023ca  e807         lsls r0, r5, #0x1f                 
004023cc  15d0         beq #0x4023fa                      
004023ce  07eb0410     add.w r0, r7, r4, lsl #4           
004023d0  0410         asrs r4, r0, #0x20                 
004023d2  0df1180a     add.w sl, sp, #0x18                
004023d4  180a         lsrs r0, r3, #8                    
004023d6  90e80e00     ldm.w r0, {r1, r2, r3}             
004023d8  0e00         movs r6, r1                        
004023da  8ae80e00     stm.w sl, {r1, r2, r3}             
004023dc  0e00         movs r6, r1                        
004023de  c068         ldr r0, [r0, #0xc]                 
004023e0  f042         cmn r0, r6                         
004023e2  01d1         bne #0x4023e8                      
004023e4  9819         adds r0, r3, r6                    
004023e6  0890         str r0, [sp, #0x20]                
004023e8  3246         mov r2, r6                         
004023ea  0123         movs r3, #1                        
004023ec  06a9         add r1, sp, #0x18                  
004023ee  03a8         add r0, sp, #0xc                   
004023f0  03f02afd     bl #0x405e48                       
004023f2  2afd03ab     stc2 p11, c10, [sl, #-0xc]!        
004023f4  03ab         add r3, sp, #0xc                   
004023f6  83e80700     stm.w r3, {r0, r1, r2}             
004023f8  0700         movs r7, r0                        
004023fa  6d10         asrs r5, r5, #1                    
004023fc  641c         adds r4, r4, #1                    
004023fe  002d         cmp r5, #0                         
00402400  e3d1         bne #0x4023ca                      
00402402  4ff00103     mov.w r3, #1                       
00402404  0103         lsls r1, r0, #0xc                  
00402406  3246         mov r2, r6                         
00402408  6946         mov r1, sp                         
0040240a  b8f1000f     cmp.w r8, #0                       
0040240c  000f         lsrs r0, r0, #0x1c                 
0040240e  03a8         add r0, sp, #0xc                   
00402410  02d0         beq #0x402418                      
00402412  03f004fd     bl #0x405e1e                       
00402414  04fd01e0     stc2 p0, c14, [r4, #-4]            
00402416  01e0         b #0x40241c                        
00402418  03f016fd     bl #0x405e48                       
0040241a  16fdc9e9     ldc2 p9, c14, [r6, #-0x324]        
0040241c  c9e90001     strd r0, r1, [sb]                  
0040241e  0001         lsls r0, r0, #4                    
00402420  c9f80820     str.w r2, [sb, #8]                 
00402422  0820         movs r0, #8                        
00402424  0ab0         add sp, #0x28                      
00402426  bde8f087     pop.w {r4, r5, r6, r7, r8, sb, sl, pc} 
00402428  f087         strh r0, [r6, #0x3e]               
0040242a  0000         movs r0, r0                        
0040242c  e840         lsrs r0, r5                        
0040242e  0000         movs r0, r0                        
00402430  0120         movs r0, #1                        
00402432  20e0         b #0x402476                        
00402434  0300         movs r3, r0                        
00402436  12e3         b #0x402a5e                        
00402438  2c00         movs r4, r5                        
0040243a  001a         subs r0, r0, r0                    
0040243c  0300         movs r3, r0                        
0040243e  10e3         b #0x402a62                        
00402440  1200         movs r2, r2                        
00402442  000a         lsrs r0, r0, #8                    
00402444  0120         movs r0, #1                        
00402446  d0e4         b #0x401dea                        
00402448  0130         adds r0, #1                        
0040244a  d1e4         b #0x401df0                        
0040244c  0100         movs r1, r0                        
0040244e  52e3         b #0x402af6                        
00402450  0300         movs r3, r0                        
00402452  5221         movs r1, #0x52                     
00402454  2f00         movs r7, r5                        
00402456  001a         subs r0, r0, r0                    
00402458  0300         movs r3, r0                        
0040245a  10e3         b #0x402a7e                        
0040245c  0b00         movs r3, r1                        
0040245e  000a         lsrs r0, r0, #8                    
00402460  0120         movs r0, #1                        
00402462  d0e4         b #0x401e06                        
00402464  0130         adds r0, #1                        
00402466  d1e4         b #0x401e0c                        
00402468  0100         movs r1, r0                        
0040246a  52e3         b #0x402b12                        
0040246c  0300         movs r3, r0                        
0040246e  5221         movs r1, #0x52                     
00402470  2800         movs r0, r5                        
00402472  001a         subs r0, r0, r0                    
00402474  0300         movs r3, r0                        
00402476  10e3         b #0x402a9a                        
00402478  0400         movs r4, r0                        
0040247a  000a         lsrs r0, r0, #8                    
0040247c  0120         movs r0, #1                        
0040247e  d0e4         b #0x401e22                        
00402480  0130         adds r0, #1                        
00402482  d1e4         b #0x401e28                        
00402484  0100         movs r1, r0                        
00402486  52e3         b #0x402b2e                        
00402488  0300         movs r3, r0                        
0040248a  5221         movs r1, #0x52                     
0040248c  2100         movs r1, r4                        
0040248e  001a         subs r0, r0, r0                    
00402490  0040         ands r0, r0                        
00402492  2de9         (undecodable)
00402494  84e0         b #0x4025a0                        
00402496  9fe5         b #0x401fd8                        
00402498  0420         movs r0, #4                        
0040249a  90e4         b #0x401dbe                        
0040249c  0430         adds r0, #4                        
0040249e  91e4         b #0x401dc4                        
004024a0  0ec0         stm r0!, {r1, r2, r3}              
004024a2  42e0         b #0x40252a                        
004024a4  02c0         stm r0!, {r1}                      
004024a6  cce1         b #0x402842                        
004024a8  8ec3         stm r3!, {r1, r2, r3, r7}          
004024aa  1ce0         b #0x4024e6                        
004024ac  0300         movs r3, r0                        
004024ae  5201         lsls r2, r2, #5                    
004024b0  f8ff         (undecodable)
004024b2  ff0a         lsrs r7, r7, #0xb                  
004024b4  0040         ands r0, r0                        
004024b6  bde8030c     pop.w {r0, r1, sl, fp}             
004024b8  030c         lsrs r3, r0, #0x10                 
004024ba  a0e1         b #0x4027fe                        
004024bc  020c         lsrs r2, r0, #0x10                 
004024be  50e0         b #0x402562                        
004024c0  ff0e         lsrs r7, r7, #0x1b                 
004024c2  1c03         lsls r4, r3, #0xc                  
004024c4  0700         movs r7, r0                        
004024c6  001a         subs r0, r0, r0                    
004024c8  0308         lsrs r3, r0, #0x20                 
004024ca  a0e1         b #0x40280e                        
004024cc  0208         lsrs r2, r0, #0x20                 
004024ce  50e0         b #0x402572                        
004024d0  ff0c         lsrs r7, r7, #0x13                 
004024d2  1c03         lsls r4, r3, #0xc                  
004024d4  0300         movs r3, r0                        
004024d6  001a         subs r0, r0, r0                    
004024d8  0304         lsls r3, r0, #0x10                 
004024da  a0e1         b #0x40281e                        
004024dc  0204         lsls r2, r0, #0x10                 
004024de  50e0         b #0x402582                        
004024e0  ff08         lsrs r7, r7, #3                    
004024e2  1c03         lsls r4, r3, #0xc                  
004024e4  0200         movs r2, r0                        
004024e6  5300         lsls r3, r2, #1                    
004024e8  6000         lsls r0, r4, #1                    
004024ea  a011         asrs r0, r4, #6                    
004024ec  1eff2fe1     vrhadd.u16 d14, d14, d31           
004024ee  2fe1         b #0x402750                        
004024f0  0120         movs r0, #1                        
004024f2  d0e4         b #0x401e96                        
004024f4  0130         adds r0, #1                        
004024f6  d1e4         b #0x401e9c                        
004024f8  0100         movs r1, r0                        
004024fa  52e3         b #0x402ba2                        
004024fc  0300         movs r3, r0                        
004024fe  5221         movs r1, #0x52                     
00402500  0400         movs r4, r0                        
00402502  001a         subs r0, r0, r0                    
00402504  0120         movs r0, #1                        
00402506  d0e4         b #0x401eaa                        
00402508  0130         adds r0, #1                        
0040250a  d1e4         b #0x401eb0                        
0040250c  0100         movs r1, r0                        
0040250e  52e3         b #0x402bb6                        
00402510  0300         movs r3, r0                        
00402512  5221         movs r1, #0x52                     
00402514  f5ff         (undecodable)
00402516  ff0a         lsrs r7, r7, #0xb                  
00402518  0300         movs r3, r0                        
0040251a  42e0         b #0x4025a2                        
0040251c  1eff2fe1     vrhadd.u16 d14, d14, d31           
0040251e  2fe1         b #0x402780                        
00402520  0101         lsls r1, r0, #4                    
00402522  0101         lsls r1, r0, #4                    
00402524  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
00402526  f041         rors r0, r6                        
00402528  92b0         sub sp, #0x48                      
0040252a  dff8d481     ldr.w r8, [pc, #0x1d4]             
0040252c  d481         strh r4, [r2, #0xe]                
0040252e  0546         mov r5, r0                         
00402530  0c46         mov r4, r1                         
00402532  2021         movs r1, #0x20                     
00402534  1f46         mov r7, r3                         
00402536  1646         mov r6, r2                         
00402538  d8f80000     ldr.w r0, [r8]                     
0040253a  0000         movs r0, r0                        
0040253c  1190         str r0, [sp, #0x44]                
0040253e  08a8         add r0, sp, #0x20                  
00402540  fef784fe     bl #0x40124c                       
00402542  84fe0020     cdp2 p0, #8, c2, c4, c0, #0        
00402544  0020         movs r0, #0                        
00402546  cde90600     strd r0, r0, [sp, #0x18]           
00402548  0600         movs r6, r0                        
0040254a  4db1         cbz r5, #0x402560                  
0040254c  2c48         ldr r0, [pc, #0xb0]                
0040254e  06aa         add r2, sp, #0x18                  
00402550  4ff48071     mov.w r1, #0x100                   
00402552  8071         strb r0, [r0, #6]                  
00402554  02f0acff     bl #0x4054b0                       
00402556  acff         (undecodable)
00402558  28b1         cbz r0, #0x402566                  
0040255a  4ff4a264     mov.w r4, #0x510                   
0040255c  a264         str r2, [r4, #0x48]                
0040255e  3ce0         b #0x4025da                        
00402560  4ff48074     mov.w r4, #0x100                   
00402562  8074         strb r0, [r0, #0x12]               
00402564  41e0         b #0x4025ea                        
00402566  4ff04040     mov.w r0, #-0x40000000             
00402568  4040         eors r0, r0                        
0040256a  cde90467     strd r6, r7, [sp, #0x10]           
0040256c  0467         str r4, [r0, #0x70]                
0040256e  0390         str r0, [sp, #0xc]                 
00402570  03a9         add r1, sp, #0xc                   
00402572  0698         ldr r0, [sp, #0x18]                
00402574  0122         movs r2, #1                        
00402576  03f0e9f8     bl #0x40574c                       
00402578  e9f8         (undecodable)
0040257a  10b1         cbz r0, #0x402582                  
0040257c  40f21154     movw r4, #0x511                    
0040257e  1154         strb r1, [r2, r0]                  
00402580  2be0         b #0x4025da                        
00402582  2049         ldr r1, [pc, #0x80]                
00402584  07a8         add r0, sp, #0x1c                  
00402586  0422         movs r2, #4                        
00402588  4ff48073     mov.w r3, #0x100                   
0040258a  8073         strb r0, [r0, #0xe]                
0040258c  02f072ff     bl #0x405474                       
0040258e  72ff10b1     vbif d27, d2, d0                   
00402590  10b1         cbz r0, #0x402598                  
00402592  40f21254     movw r4, #0x512                    
00402594  1254         strb r2, [r2, r0]                  
00402596  20e0         b #0x4025da                        
00402598  dde90610     ldrd r1, r0, [sp, #0x18]           
0040259a  0610         asrs r6, r0, #0x20                 
0040259c  03f0f0f8     bl #0x405780                       
0040259e  f0f8         (undecodable)
004025a0  10b1         cbz r0, #0x4025a8                  
004025a2  40f21354     movw r4, #0x513                    
004025a4  1354         strb r3, [r2, r0]                  
004025a6  18e0         b #0x4025da                        
004025a8  0798         ldr r0, [sp, #0x1c]                
004025aa  0021         movs r1, #0                        
004025ac  0022         movs r2, #0                        
004025ae  03f088f8     bl #0x4056c2                       
004025b0  88f82020     strb.w r2, [r8, #0x20]             
004025b2  2020         movs r0, #0x20                     
004025b4  02a9         add r1, sp, #8                     
004025b6  0290         str r0, [sp, #8]                   
004025b8  08ab         add r3, sp, #0x20                  
004025ba  0798         ldr r0, [sp, #0x1c]                
004025bc  2246         mov r2, r4                         
004025be  0091         str r1, [sp]                       
004025c0  2946         mov r1, r5                         
004025c2  03f064f8     bl #0x40568e                       
004025c4  64f8         (undecodable)
004025c6  10b1         cbz r0, #0x4025ce                  
004025c8  40f21554     movw r4, #0x515                    
004025ca  1554         strb r5, [r2, r0]                  
004025cc  05e0         b #0x4025da                        
004025ce  1898         ldr r0, [sp, #0x60]                
004025d0  08a9         add r1, sp, #0x20                  
004025d2  1022         movs r2, #0x10                     
004025d4  fef7a2ed     blx #0x40111c                      
004025d6  a2ed0024     stc p4, c2, [r2, #0]!              
004025d8  0024         movs r4, #0                        
004025da  0798         ldr r0, [sp, #0x1c]                
004025dc  08b1         cbz r0, #0x4025e2                  
004025de  03f01cf8     bl #0x40561a                       
004025e0  1cf8         (undecodable)
004025e2  0698         ldr r0, [sp, #0x18]                
004025e4  08b1         cbz r0, #0x4025ea                  
004025e6  03f02af8     bl #0x40563e                       
004025e8  2af8         (undecodable)
004025ea  d8f80000     ldr.w r0, [r8]                     
004025ec  0000         movs r0, r0                        
004025ee  1199         ldr r1, [sp, #0x44]                
004025f0  401a         subs r0, r0, r1                    
004025f2  02bf         ittt eq                            
004025f4  2046         mov r0, r4                         
004025f6  12b0         add sp, #0x48                      
004025f8  bde8f081     pop.w {r4, r5, r6, r7, r8, pc}     
004025fa  f081         strh r0, [r6, #0xe]                
004025fc  03f0a8ed     blx #0x406150                      
004025fe  a8ed1000     stc p0, c0, [r8, #0x40]!           
00402600  1000         movs r0, r2                        
00402602  00a0         adr r0, #0                         
00402604  1006         lsls r0, r2, #0x18                 
00402606  0030         adds r0, #0                        
00402608  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
0040260a  f041         rors r0, r6                        
0040260c  c4b0         sub sp, #0x110                     
0040260e  dff8f080     ldr.w r8, [pc, #0xf0]              
00402610  f080         strh r0, [r6, #6]                  
00402612  0c46         mov r4, r1                         
00402614  0546         mov r5, r0                         
00402616  3ba1         adr r1, #0xec                      
00402618  d8f80000     ldr.w r0, [r8]                     
0040261a  0000         movs r0, r0                        
0040261c  4390         str r0, [sp, #0x10c]               
0040261e  0020         movs r0, #0                        
00402620  54f8106f     ldr r6, [r4, #0x10]!               
00402622  106f         ldr r0, [r2, #0x70]                
00402624  02f0aeff     bl #0x405584                       
00402626  aeff         (undecodable)
00402628  202e         cmp r6, #0x20                      
0040262a  11d3         blo #0x402650                      
0040262c  44a1         adr r1, #0x110                     
0040262e  0020         movs r0, #0                        
00402630  02f0a8ff     bl #0x405584                       
00402632  a8ff414d     vqrdmulh.s32 q2, q4, d1[0]         
00402634  414d         ldr r5, [pc, #0x104]               
00402636  0320         movs r0, #3                        
00402638  4ff47041     mov.w r1, #0xf000                  
0040263a  7041         adcs r0, r6                        
0040263c  a847         blx r5                             
0040263e  0320         movs r0, #3                        
00402640  0021         movs r1, #0                        
00402642  a847         blx r5                             
00402644  40f21344     movw r4, #0x413                    
00402646  1344         add r3, r2                         
00402648  0320         movs r0, #3                        
0040264a  40f21341     movw r1, #0x413                    
0040264c  1341         asrs r3, r2                        
0040264e  3de0         b #0x4026cc                        
00402650  06eb4600     add.w r0, r6, r6, lsl #1           
00402652  4600         lsls r6, r0, #1                    
00402654  05ebc006     add.w r6, r5, r0, lsl #3           
00402656  c006         lsls r0, r0, #0x1b                 
00402658  3746         mov r7, r6                         
0040265a  57f8040f     ldr r0, [r7, #4]!                  
0040265c  040f         lsrs r4, r0, #0x1c                 
0040265e  0128         cmp r0, #1                         
00402660  24d1         bne #0x4026ac                      
00402662  02ad         add r5, sp, #8                     
00402664  4ff48070     mov.w r0, #0x100                   
00402666  8070         strb r0, [r0, #2]                  
00402668  0190         str r0, [sp, #4]                   
0040266a  4ff48071     mov.w r1, #0x100                   
0040266c  8071         strb r0, [r0, #6]                  
0040266e  2846         mov r0, r5                         
00402670  fef7ecfd     bl #0x40124c                       
00402672  ecfd0434     stc2l p4, c3, [ip, #0x10]!         
00402674  0434         adds r4, #4                        
00402676  4ff48072     mov.w r2, #0x100                   
00402678  8072         strb r0, [r0, #0xa]                
0040267a  2046         mov r0, r4                         
0040267c  2146         mov r1, r4                         
0040267e  00f033f9     bl #0x4028e8                       
00402680  33f90020     ldrsh.w r2, [r3, r0]               
00402682  0020         movs r0, #0                        
00402684  01ab         add r3, sp, #4                     
00402686  0090         str r0, [sp]                       
00402688  2046         mov r0, r4                         
0040268a  4ff48071     mov.w r1, #0x100                   
0040268c  8071         strb r0, [r0, #6]                  
0040268e  2a46         mov r2, r5                         
00402690  00f0caff     bl #0x403628                       
00402692  caff         (undecodable)
00402694  019a         ldr r2, [sp, #4]                   
00402696  0446         mov r4, r0                         
00402698  2846         mov r0, r5                         
0040269a  2946         mov r1, r5                         
0040269c  00f024f9     bl #0x4028e8                       
0040269e  24f904b3     vld2.8 {d11, d12, d13, d14}, [r4], r4 
004026a0  04b3         cbz r4, #0x4026e4                  
004026a2  2549         ldr r1, [pc, #0x94]                
004026a4  0020         movs r0, #0                        
004026a6  02f06dff     bl #0x405584                       
004026a8  6dff05e0     vhadd.u32 d30, d13, d5             
004026aa  05e0         b #0x4026b8                        
004026ac  2249         ldr r1, [pc, #0x88]                
004026ae  0020         movs r0, #0                        
004026b0  02f068ff     bl #0x405584                       
004026b2  68ff         (undecodable)
004026b4  40f21644     movw r4, #0x416                    
004026b6  1644         add r6, r2                         
004026b8  204d         ldr r5, [pc, #0x80]                
004026ba  0320         movs r0, #3                        
004026bc  4ff47041     mov.w r1, #0xf000                  
004026be  7041         adcs r0, r6                        
004026c0  a847         blx r5                             
004026c2  210c         lsrs r1, r4, #0x10                 
004026c4  0320         movs r0, #3                        
004026c6  a847         blx r5                             
004026c8  a1b2         uxth r1, r4                        
004026ca  0320         movs r0, #3                        
004026cc  a847         blx r5                             
004026ce  d8f80000     ldr.w r0, [r8]                     
004026d0  0000         movs r0, r0                        
004026d2  4399         ldr r1, [sp, #0x10c]               
004026d4  401a         subs r0, r0, r1                    
004026d6  02bf         ittt eq                            
004026d8  2046         mov r0, r4                         
004026da  44b0         add sp, #0x110                     
004026dc  bde8f081     pop.w {r4, r5, r6, r7, r8, pc}     
004026de  f081         strh r0, [r6, #0xe]                
004026e0  03f036ed     blx #0x406150                      
004026e2  36ed95e8     ldc p8, c14, [r6, #-0x254]!        
004026e4  95e81e00     ldm.w r5, {r1, r2, r3, r4}         
004026e6  1e00         movs r6, r3                        
004026e8  06f10800     add.w r0, r6, #8                   
004026ea  0800         movs r0, r1                        
004026ec  1ec0         stm r0!, {r1, r2, r3, r4}          
004026ee  0220         movs r0, #2                        
004026f0  0024         movs r4, #0                        
004026f2  1149         ldr r1, [pc, #0x44]                
004026f4  3860         str r0, [r7]                       
004026f6  0020         movs r0, #0                        
004026f8  02f044ff     bl #0x405584                       
004026fa  44ff         (undecodable)
004026fc  e7e7         b #0x4026ce                        
004026fe  00bf         nop                                
00402700  4c61         str r4, [r1, #0x14]                
00402702  4000         lsls r0, r0, #1                    
00402704  414d         ldr r5, [pc, #0x104]               
00402706  445f         ldrsh r4, [r0, r5]                 
00402708  5441         adcs r4, r2                        
0040270a  5f47         bxns fp                            
0040270c  4350         str r3, [r0, r1]                   
0040270e  3a20         movs r0, #0x3a                     
00402710  4163         str r1, [r0, #0x34]                
00402712  7469         ldr r4, [r6, #0x14]                
00402714  7661         str r6, [r6, #0x14]                
00402716  7465         str r4, [r6, #0x54]                
00402718  4154         strb r1, [r0, r1]                  
0040271a  4944         add r1, sb                         
0040271c  524d         ldr r5, [pc, #0x148]               
0040271e  4365         str r3, [r0, #0x54]                
00402720  7274         strb r2, [r6, #0x11]               
00402722  4175         strb r1, [r0, #0x15]               
00402724  7468         ldr r4, [r6, #4]                   
00402726  5365         str r3, [r2, #0x54]                
00402728  7373         strb r3, [r6, #0xd]                
0040272a  696f         ldr r1, [r5, #0x74]                
0040272c  6e20         movs r0, #0x6e                     
0040272e  454e         ldr r6, [pc, #0x114]               
00402730  5445         cmp r4, sl                         
00402732  520a         lsrs r2, r2, #9                    
00402734  0000         movs r0, r0                        
00402736  0000         movs r0, r0                        
00402738  1c65         str r4, [r3, #0x50]                
0040273a  4000         lsls r0, r0, #1                    
0040273c  b562         str r5, [r6, #0x28]                
0040273e  4000         lsls r0, r0, #1                    
00402740  414d         ldr r5, [pc, #0x104]               
00402742  445f         ldrsh r4, [r0, r5]                 
00402744  5441         adcs r4, r2                        
00402746  5f47         bxns fp                            
00402748  4350         str r3, [r0, r1]                   
0040274a  3a20         movs r0, #0x3a                     
0040274c  4163         str r1, [r0, #0x34]                
0040274e  7469         ldr r4, [r6, #0x14]                
00402750  7661         str r6, [r6, #0x14]                
00402752  7465         str r4, [r6, #0x54]                
00402754  4154         strb r1, [r0, r1]                  
00402756  4944         add r1, sb                         
00402758  524d         ldr r5, [pc, #0x148]               
0040275a  4365         str r3, [r0, #0x54]                
0040275c  7274         strb r2, [r6, #0x11]               
0040275e  4175         strb r1, [r0, #0x15]               
00402760  7468         ldr r4, [r6, #4]                   
00402762  5365         str r3, [r2, #0x54]                
00402764  7373         strb r3, [r6, #0xd]                
00402766  696f         ldr r1, [r5, #0x74]                
00402768  6e20         movs r0, #0x6e                     
0040276a  696e         ldr r1, [r5, #0x64]                
0040276c  7661         str r6, [r6, #0x14]                
0040276e  6c69         ldr r4, [r5, #0x14]                
00402770  6420         movs r0, #0x64                     
00402772  7365         str r3, [r6, #0x54]                
00402774  7373         strb r3, [r6, #0xd]                
00402776  696f         ldr r1, [r5, #0x74]                
00402778  6e20         movs r0, #0x6e                     
0040277a  4944         add r1, sb                         
0040277c  0a00         movs r2, r1                        
0040277e  0000         movs r0, r0                        
00402780  f8b5         push {r3, r4, r5, r6, r7, lr}      
00402782  0d46         mov r5, r1                         
00402784  34a1         adr r1, #0xd0                      
00402786  0446         mov r4, r0                         
00402788  0020         movs r0, #0                        
0040278a  02f0fbfe     bl #0x405584                       
0040278c  fbfe2869     cdp2 p9, #0xf, c6, c11, c8, #1     
0040278e  2869         ldr r0, [r5, #0x10]                
00402790  0128         cmp r0, #1                         
00402792  08d8         bhi #0x4027a6                      
00402794  271d         adds r7, r4, #4                    
00402796  0026         movs r6, #0                        
00402798  202e         cmp r6, #0x20                      
0040279a  13d0         beq #0x4027c4                      
0040279c  3868         ldr r0, [r7]                       
0040279e  00b3         cbz r0, #0x4027e2                  
004027a0  1837         adds r7, #0x18                     
004027a2  0136         adds r6, #1                        
004027a4  f8e7         b #0x402798                        
004027a6  374d         ldr r5, [pc, #0xdc]                
004027a8  0320         movs r0, #3                        
004027aa  4ff47041     mov.w r1, #0xf000                  
004027ac  7041         adcs r0, r6                        
004027ae  a847         blx r5                             
004027b0  0320         movs r0, #3                        
004027b2  0021         movs r1, #0                        
004027b4  a847         blx r5                             
004027b6  0320         movs r0, #3                        
004027b8  40f21a41     movw r1, #0x41a                    
004027ba  1a41         asrs r2, r3                        
004027bc  40f21a44     movw r4, #0x41a                    
004027be  1a44         add r2, r3                         
004027c0  a847         blx r5                             
004027c2  26e0         b #0x402812                        
004027c4  2f4d         ldr r5, [pc, #0xbc]                
004027c6  0320         movs r0, #3                        
004027c8  4ff47041     mov.w r1, #0xf000                  
004027ca  7041         adcs r0, r6                        
004027cc  a847         blx r5                             
004027ce  0320         movs r0, #3                        
004027d0  0021         movs r1, #0                        
004027d2  a847         blx r5                             
004027d4  0320         movs r0, #3                        
004027d6  40f21941     movw r1, #0x419                    
004027d8  1941         asrs r1, r3                        
004027da  40f21944     movw r4, #0x419                    
004027dc  1944         add r1, r3                         
004027de  a847         blx r5                             
004027e0  13e0         b #0x40280a                        
004027e2  4ff4f050     mov.w r0, #0x1e00                  
004027e4  f050         str r0, [r6, r3]                   
004027e6  2158         ldr r1, [r4, r0]                   
004027e8  01f10102     add.w r2, r1, #1                   
004027ea  0102         lsls r1, r0, #8                    
004027ec  2250         str r2, [r4, r0]                   
004027ee  91b1         cbz r1, #0x402816                  
004027f0  0120         movs r0, #1                        
004027f2  26a1         adr r1, #0x98                      
004027f4  3860         str r0, [r7]                       
004027f6  0024         movs r4, #0                        
004027f8  2869         ldr r0, [r5, #0x10]                
004027fa  47f8040c     str r0, [r7, #-0x4]                
004027fc  040c         lsrs r4, r0, #0x10                 
004027fe  41f65010     movw r0, #0x1950                   
00402800  5010         asrs r0, r2, #1                    
00402802  2e50         str r6, [r5, r0]                   
00402804  0020         movs r0, #0                        
00402806  02f0bdfe     bl #0x405584                       
00402808  bdfe2da1     cdp2 p1, #0xb, c10, c13, c13, #1   
0040280a  2da1         adr r1, #0xb4                      
0040280c  0020         movs r0, #0                        
0040280e  02f0b9fe     bl #0x405584                       
00402810  b9fe2046     cdp2 p6, #0xb, c4, c9, c0, #1      
00402812  2046         mov r0, r4                         
00402814  f8bd         pop {r3, r4, r5, r6, r7, pc}       
00402816  0120         movs r0, #1                        
00402818  03f009fd     bl #0x40622e                       
0040281a  09fd0028     stc2 p8, c2, [sb, #-0]             
0040281c  0028         cmp r0, #0                         
0040281e  e7d0         beq #0x4027f0                      
00402820  1949         ldr r1, [pc, #0x64]                
00402822  0446         mov r4, r0                         
00402824  0020         movs r0, #0                        
00402826  2246         mov r2, r4                         
00402828  02f0acfe     bl #0x405584                       
0040282a  acfe154d     mcr2 p13, #5, r4, c12, c5, #0      
0040282c  154d         ldr r5, [pc, #0x54]                
0040282e  0320         movs r0, #3                        
00402830  4ff47041     mov.w r1, #0xf000                  
00402832  7041         adcs r0, r6                        
00402834  a847         blx r5                             
00402836  0320         movs r0, #3                        
00402838  0021         movs r1, #0                        
0040283a  a847         blx r5                             
0040283c  0320         movs r0, #3                        
0040283e  40f21941     movw r1, #0x419                    
00402840  1941         asrs r1, r3                        
00402842  a847         blx r5                             
00402844  0320         movs r0, #3                        
00402846  4ff47041     mov.w r1, #0xf000                  
00402848  7041         adcs r0, r6                        
0040284a  a847         blx r5                             
0040284c  210c         lsrs r1, r4, #0x10                 
0040284e  0320         movs r0, #3                        
00402850  a847         blx r5                             
00402852  a1b2         uxth r1, r4                        
00402854  0320         movs r0, #3                        
00402856  b3e7         b #0x4027c0                        
00402858  414d         ldr r5, [pc, #0x104]               
0040285a  445f         ldrsh r4, [r0, r5]                 
0040285c  5441         adcs r4, r2                        
0040285e  5f47         bxns fp                            
00402860  4350         str r3, [r0, r1]                   
00402862  3a20         movs r0, #0x3a                     
00402864  416c         ldr r1, [r0, #0x44]                
00402866  6c6f         ldr r4, [r5, #0x74]                
00402868  6361         str r3, [r4, #0x14]                
0040286a  7465         str r4, [r6, #0x54]                
0040286c  4154         strb r1, [r0, r1]                  
0040286e  4944         add r1, sb                         
00402870  524d         ldr r5, [pc, #0x148]               
00402872  5365         str r3, [r2, #0x54]                
00402874  7373         strb r3, [r6, #0xd]                
00402876  696f         ldr r1, [r5, #0x74]                
00402878  6e20         movs r0, #0x6e                     
0040287a  454e         ldr r6, [pc, #0x114]               
0040287c  5445         cmp r4, sl                         
0040287e  520a         lsrs r2, r2, #9                    
00402880  0000         movs r0, r0                        
00402882  0000         movs r0, r0                        
00402884  b562         str r5, [r6, #0x28]                
00402886  4000         lsls r0, r0, #1                    
00402888  4c65         str r4, [r1, #0x54]                
0040288a  4000         lsls r0, r0, #1                    
0040288c  414d         ldr r5, [pc, #0x104]               
0040288e  445f         ldrsh r4, [r0, r5]                 
00402890  5441         adcs r4, r2                        
00402892  5f47         bxns fp                            
00402894  4350         str r3, [r0, r1]                   
00402896  3a20         movs r0, #0x3a                     
00402898  416c         ldr r1, [r0, #0x44]                
0040289a  6c6f         ldr r4, [r5, #0x74]                
0040289c  6361         str r3, [r4, #0x14]                
0040289e  7465         str r4, [r6, #0x54]                
004028a0  4154         strb r1, [r0, r1]                  
004028a2  4944         add r1, sb                         
004028a4  524d         ldr r5, [pc, #0x148]               
004028a6  5365         str r3, [r2, #0x54]                
004028a8  7373         strb r3, [r6, #0xd]                
004028aa  696f         ldr r1, [r5, #0x74]                
004028ac  6e20         movs r0, #0x6e                     
004028ae  7365         str r3, [r6, #0x54]                
004028b0  7373         strb r3, [r6, #0xd]                
004028b2  696f         ldr r1, [r5, #0x74]                
004028b4  6e20         movs r0, #0x6e                     
004028b6  6372         strb r3, [r4, #9]                  
004028b8  6561         str r5, [r4, #0x14]                
004028ba  7465         str r4, [r6, #0x54]                
004028bc  640a         lsrs r4, r4, #9                    
004028be  0000         movs r0, r0                        
004028c0  414d         ldr r5, [pc, #0x104]               
004028c2  445f         ldrsh r4, [r0, r5]                 
004028c4  5441         adcs r4, r2                        
004028c6  5f47         bxns fp                            
004028c8  4350         str r3, [r0, r1]                   
004028ca  3a20         movs r0, #0x3a                     
004028cc  416c         ldr r1, [r0, #0x44]                
004028ce  6c6f         ldr r4, [r5, #0x74]                
004028d0  6361         str r3, [r4, #0x14]                
004028d2  7465         str r4, [r6, #0x54]                
004028d4  4154         strb r1, [r0, r1]                  
004028d6  4944         add r1, sb                         
004028d8  524d         ldr r5, [pc, #0x148]               
004028da  5365         str r3, [r2, #0x54]                
004028dc  7373         strb r3, [r6, #0xd]                
004028de  696f         ldr r1, [r5, #0x74]                
004028e0  6e20         movs r0, #0x6e                     
004028e2  4558         ldr r5, [r0, r1]                   
004028e4  4954         strb r1, [r1, r1]                  
004028e6  0a00         movs r2, r1                        
004028e8  10b5         push {r4, lr}                      
004028ea  a8b1         cbz r0, #0x402918                  
004028ec  a1b1         cbz r1, #0x402918                  
004028ee  8842         cmp r0, r1                         
004028f0  06d0         beq #0x402900                      
004028f2  0139         subs r1, #1                        
004028f4  82b1         cbz r2, #0x402918                  
004028f6  10f8013b     ldrb r3, [r0], #1                  
004028f8  013b         subs r3, #1                        
004028fa  8b54         strb r3, [r1, r2]                  
004028fc  013a         subs r2, #1                        
004028fe  f9e7         b #0x4028f4                        
00402900  1118         adds r1, r2, r0                    
00402902  5208         lsrs r2, r2, #1                    
00402904  0139         subs r1, #1                        
00402906  3ab1         cbz r2, #0x402918                  
00402908  0b78         ldrb r3, [r1]                      
0040290a  013a         subs r2, #1                        
0040290c  0478         ldrb r4, [r0]                      
0040290e  01f80149     strb r4, [r1], #-1                 
00402910  0149         ldr r1, [pc, #4]                   
00402912  00f8013b     strb r3, [r0], #1                  
00402914  013b         subs r3, #1                        
00402916  f6e7         b #0x402906                        
00402918  10bd         pop {r4, pc}                       
0040291a  0000         movs r0, r0                        
0040291c  074a         ldr r2, [pc, #0x1c]                
0040291e  0146         mov r1, r0                         
00402920  d2f800c0     ldr.w ip, [r2]                     
00402922  00c0         (undecodable)
00402924  bcf1000f     cmp.w ip, #0                       
00402926  000f         lsrs r0, r0, #0x1c                 
00402928  02d1         bne #0x402930                      
0040292a  f3df         svc #0xf3                          
0040292c  8446         mov ip, r0                         
0040292e  1060         str r0, [r2]                       
00402930  0846         mov r0, r1                         
00402932  0021         movs r1, #0                        
00402934  0022         movs r2, #0                        
00402936  0023         movs r3, #0                        
00402938  6047         bx ip                              
0040293a  00bf         nop                                
0040293c  5c6e         ldr r4, [r3, #0x64]                
0040293e  4100         lsls r1, r0, #1                    
00402940  b0b5         push {r4, r5, r7, lr}              
00402942  0d69         ldr r5, [r1, #0x10]                
00402944  36a1         adr r1, #0xd8                      
00402946  0446         mov r4, r0                         
00402948  0020         movs r0, #0                        
0040294a  02f01bfe     bl #0x405584                       
0040294c  1bfe202d     cdp2 p13, #1, c2, c11, c0, #1      
0040294e  202d         cmp r5, #0x20                      
00402950  11d3         blo #0x402976                      
00402952  5649         ldr r1, [pc, #0x158]               
00402954  0020         movs r0, #0                        
00402956  02f015fe     bl #0x405584                       
00402958  15fe484d     cdp2 p13, #1, c4, c5, c8, #2       
0040295a  484d         ldr r5, [pc, #0x120]               
0040295c  0320         movs r0, #3                        
0040295e  4ff47041     mov.w r1, #0xf000                  
00402960  7041         adcs r0, r6                        
00402962  a847         blx r5                             
00402964  0320         movs r0, #3                        
00402966  0021         movs r1, #0                        
00402968  a847         blx r5                             
0040296a  40f21344     movw r4, #0x413                    
0040296c  1344         add r3, r2                         
0040296e  0320         movs r0, #3                        
00402970  40f21341     movw r1, #0x413                    
00402972  1341         asrs r3, r2                        
00402974  51e0         b #0x402a1a                        
00402976  05eb4500     add.w r0, r5, r5, lsl #1           
00402978  4500         lsls r5, r0, #1                    
0040297a  04ebc000     add.w r0, r4, r0, lsl #3           
0040297c  c000         lsls r0, r0, #3                    
0040297e  4168         ldr r1, [r0, #4]                   
00402980  59b3         cbz r1, #0x4029da                  
00402982  1821         movs r1, #0x18                     
00402984  fef762fc     bl #0x40124c                       
00402986  62fc2fa1     stc2l p1, c10, [r2], #-0xbc        
00402988  2fa1         adr r1, #0xbc                      
0040298a  0020         movs r0, #0                        
0040298c  02f0fafd     bl #0x405584                       
0040298e  fafd4ff4     ldc2l p4, c15, [sl, #0x13c]!       
00402990  4ff4f050     mov.w r0, #0x1e00                  
00402992  f050         str r0, [r6, r3]                   
00402994  2058         ldr r0, [r4, r0]                   
00402996  20b1         cbz r0, #0x4029a2                  
00402998  04f5f051     add.w r1, r4, #0x1e00              
0040299a  f051         str r0, [r6, r7]                   
0040299c  0138         subs r0, #1                        
0040299e  0860         str r0, [r1]                       
004029a0  15d1         bne #0x4029ce                      
004029a2  0220         movs r0, #2                        
004029a4  03f043fc     bl #0x40622e                       
004029a6  43fc88b1     mcrr2 p1, #8, fp, r3, c8           
004029a8  88b1         cbz r0, #0x4029ce                  
004029aa  3349         ldr r1, [pc, #0xcc]                
004029ac  0446         mov r4, r0                         
004029ae  0020         movs r0, #0                        
004029b0  2246         mov r2, r4                         
004029b2  02f0e7fd     bl #0x405584                       
004029b4  e7fd314d     stc2l p13, c4, [r7, #0xc4]!        
004029b6  314d         ldr r5, [pc, #0xc4]                
004029b8  0320         movs r0, #3                        
004029ba  4ff47041     mov.w r1, #0xf000                  
004029bc  7041         adcs r0, r6                        
004029be  a847         blx r5                             
004029c0  210c         lsrs r1, r4, #0x10                 
004029c2  0320         movs r0, #3                        
004029c4  a847         blx r5                             
004029c6  a1b2         uxth r1, r4                        
004029c8  0320         movs r0, #3                        
004029ca  a847         blx r5                             
004029cc  17e0         b #0x4029fe                        
004029ce  2c49         ldr r1, [pc, #0xb0]                
004029d0  0020         movs r0, #0                        
004029d2  0024         movs r4, #0                        
004029d4  02f0d6fd     bl #0x405584                       
004029d6  d6fd20e0     ldc2l p0, c14, [r6, #0x80]         
004029d8  20e0         b #0x402a1c                        
004029da  284d         ldr r5, [pc, #0xa0]                
004029dc  0320         movs r0, #3                        
004029de  4ff47041     mov.w r1, #0xf000                  
004029e0  7041         adcs r0, r6                        
004029e2  a847         blx r5                             
004029e4  0320         movs r0, #3                        
004029e6  0021         movs r1, #0                        
004029e8  a847         blx r5                             
004029ea  0320         movs r0, #3                        
004029ec  40f21341     movw r1, #0x413                    
004029ee  1341         asrs r3, r2                        
004029f0  40f21344     movw r4, #0x413                    
004029f2  1344         add r3, r2                         
004029f4  a847         blx r5                             
004029f6  23a1         adr r1, #0x8c                      
004029f8  0020         movs r0, #0                        
004029fa  02f0c3fd     bl #0x405584                       
004029fc  c3fd2049     stc2l p9, c4, [r3, #0x80]          
004029fe  2049         ldr r1, [pc, #0x80]                
00402a00  0020         movs r0, #0                        
00402a02  02f0bffd     bl #0x405584                       
00402a04  bffd1d4d     ldc2 p13, c4, [pc, #0x74]!         
00402a06  1d4d         ldr r5, [pc, #0x74]                
00402a08  0320         movs r0, #3                        
00402a0a  4ff47041     mov.w r1, #0xf000                  
00402a0c  7041         adcs r0, r6                        
00402a0e  a847         blx r5                             
00402a10  210c         lsrs r1, r4, #0x10                 
00402a12  0320         movs r0, #3                        
00402a14  a847         blx r5                             
00402a16  a1b2         uxth r1, r4                        
00402a18  0320         movs r0, #3                        
00402a1a  a847         blx r5                             
00402a1c  2046         mov r0, r4                         
00402a1e  b0bd         pop {r4, r5, r7, pc}               
00402a20  414d         ldr r5, [pc, #0x104]               
00402a22  445f         ldrsh r4, [r0, r5]                 
00402a24  5441         adcs r4, r2                        
00402a26  5f47         bxns fp                            
00402a28  4350         str r3, [r0, r1]                   
00402a2a  3a20         movs r0, #0x3a                     
00402a2c  436c         ldr r3, [r0, #0x44]                
00402a2e  6f73         strb r7, [r5, #0xd]                
00402a30  6541         adcs r5, r4                        
00402a32  5449         ldr r1, [pc, #0x150]               
00402a34  4452         strh r4, [r0, r1]                  
00402a36  4d53         strh r5, [r1, r5]                  
00402a38  6573         strb r5, [r4, #0xd]                
00402a3a  7369         ldr r3, [r6, #0x14]                
00402a3c  6f6e         ldr r7, [r5, #0x64]                
00402a3e  2045         cmp r0, r4                         
00402a40  4e54         strb r6, [r1, r1]                  
00402a42  4552         strh r5, [r0, r1]                  
00402a44  0a00         movs r2, r1                        
00402a46  0000         movs r0, r0                        
00402a48  414d         ldr r5, [pc, #0x104]               
00402a4a  445f         ldrsh r4, [r0, r5]                 
00402a4c  5441         adcs r4, r2                        
00402a4e  5f47         bxns fp                            
00402a50  4350         str r3, [r0, r1]                   
00402a52  3a20         movs r0, #0x3a                     
00402a54  436c         ldr r3, [r0, #0x44]                
00402a56  6f73         strb r7, [r5, #0xd]                
00402a58  6541         adcs r5, r4                        
00402a5a  5449         ldr r1, [pc, #0x150]               
00402a5c  4452         strh r4, [r0, r1]                  
00402a5e  4d53         strh r5, [r1, r5]                  
00402a60  6573         strb r5, [r4, #0xd]                
00402a62  7369         ldr r3, [r6, #0x14]                
00402a64  6f6e         ldr r7, [r5, #0x64]                
00402a66  2073         strb r0, [r4, #0xc]                
00402a68  6573         strb r5, [r4, #0xd]                
00402a6a  7369         ldr r3, [r6, #0x14]                
00402a6c  6f6e         ldr r7, [r5, #0x64]                
00402a6e  2063         str r0, [r4, #0x30]                
00402a70  6c6f         ldr r4, [r5, #0x74]                
00402a72  7365         str r3, [r6, #0x54]                
00402a74  640a         lsrs r4, r4, #9                    
00402a76  0000         movs r0, r0                        
00402a78  a665         str r6, [r4, #0x58]                
00402a7a  4000         lsls r0, r0, #1                    
00402a7c  b562         str r5, [r6, #0x28]                
00402a7e  4000         lsls r0, r0, #1                    
00402a80  f764         str r7, [r6, #0x4c]                
00402a82  4000         lsls r0, r0, #1                    
00402a84  414d         ldr r5, [pc, #0x104]               
00402a86  445f         ldrsh r4, [r0, r5]                 
00402a88  5441         adcs r4, r2                        
00402a8a  5f47         bxns fp                            
00402a8c  4350         str r3, [r0, r1]                   
00402a8e  3a20         movs r0, #0x3a                     
00402a90  436c         ldr r3, [r0, #0x44]                
00402a92  6f73         strb r7, [r5, #0xd]                
00402a94  6541         adcs r5, r4                        
00402a96  5449         ldr r1, [pc, #0x150]               
00402a98  4452         strh r4, [r0, r1]                  
00402a9a  4d53         strh r5, [r1, r5]                  
00402a9c  6573         strb r5, [r4, #0xd]                
00402a9e  7369         ldr r3, [r6, #0x14]                
00402aa0  6f6e         ldr r7, [r5, #0x64]                
00402aa2  2066         str r0, [r4, #0x60]                
00402aa4  6169         ldr r1, [r4, #0x14]                
00402aa6  6c65         str r4, [r5, #0x54]                
00402aa8  640a         lsrs r4, r4, #9                    
00402aaa  0000         movs r0, r0                        
00402aac  9664         str r6, [r2, #0x48]                
00402aae  4000         lsls r0, r0, #1                    
00402ab0  2de9f84f     push.w {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} 
00402ab2  f84f         ldr r7, [pc, #0x3e0]               
00402ab4  0d46         mov r5, r1                         
00402ab6  6aa1         adr r1, #0x1a8                     
00402ab8  8046         mov r8, r0                         
00402aba  0020         movs r0, #0                        
00402abc  02f062fd     bl #0x405584                       
00402abe  62fd2c46     stc2l p6, c4, [r2, #-0xb0]!        
00402ac0  2c46         mov r4, r5                         
00402ac2  54f8100f     ldr r0, [r4, #0x10]!               
00402ac4  100f         lsrs r0, r2, #0x1c                 
00402ac6  b0f1805f     cmp.w r0, #0x10000000              
00402ac8  805f         ldrsh r0, [r0, r6]                 
00402aca  0dd3         blo #0x402ae8                      
00402acc  f94c         ldr r4, [pc, #0x3e4]               
00402ace  0320         movs r0, #3                        
00402ad0  4ff47041     mov.w r1, #0xf000                  
00402ad2  7041         adcs r0, r6                        
00402ad4  a047         blx r4                             
00402ad6  0320         movs r0, #3                        
00402ad8  0021         movs r1, #0                        
00402ada  a047         blx r4                             
00402adc  4ff48076     mov.w r6, #0x100                   
00402ade  8076         strb r0, [r0, #0x1a]               
00402ae0  0320         movs r0, #3                        
00402ae2  4ff48071     mov.w r1, #0x100                   
00402ae4  8071         strb r0, [r0, #6]                  
00402ae6  27e0         b #0x402b38                        
00402ae8  d5f82878     ldr.w r7, [r5, #0x828]             
00402aea  2878         ldrb r0, [r5]                      
00402aec  d5f81898     ldr.w sb, [r5, #0x818]             
00402aee  1898         ldr r0, [sp, #0x60]                
00402af0  d5f81424     ldr.w r2, [r5, #0x414]             
00402af2  1424         movs r4, #0x14                     
00402af4  17f1050f     cmn.w r7, #5                       
00402af6  050f         lsrs r5, r0, #0x1c                 
00402af8  d5f820a8     ldr.w sl, [r5, #0x820]             
00402afa  20a8         add r0, sp, #0x80                  
00402afc  d5f824b8     ldr.w fp, [r5, #0x824]             
00402afe  24b8         (undecodable)
00402b00  d5f82c38     ldr.w r3, [r5, #0x82c]             
00402b02  2c38         subs r0, #0x2c                     
00402b04  d5f83018     ldr.w r1, [r5, #0x830]             
00402b06  3018         adds r0, r6, r0                    
00402b08  1ad8         bhi #0x402b40                      
00402b0a  3e1d         adds r6, r7, #4                    
00402b0c  4e45         cmp r6, sb                         
00402b0e  17d9         bls #0x402b40                      
00402b10  7349         ldr r1, [pc, #0x1cc]               
00402b12  0020         movs r0, #0                        
00402b14  02f036fd     bl #0x405584                       
00402b16  36fd4ff4     ldc2 p4, c15, [r6, #-0x13c]!       
00402b18  4ff48076     mov.w r6, #0x100                   
00402b1a  8076         strb r0, [r0, #0x1a]               
00402b1c  6d49         ldr r1, [pc, #0x1b4]               
00402b1e  0020         movs r0, #0                        
00402b20  02f030fd     bl #0x405584                       
00402b22  30fde34c     ldc2 p12, c4, [r0, #-0x38c]!       
00402b24  e34c         ldr r4, [pc, #0x38c]               
00402b26  0320         movs r0, #3                        
00402b28  4ff47041     mov.w r1, #0xf000                  
00402b2a  7041         adcs r0, r6                        
00402b2c  a047         blx r4                             
00402b2e  310c         lsrs r1, r6, #0x10                 
00402b30  0320         movs r0, #3                        
00402b32  a047         blx r4                             
00402b34  b1b2         uxth r1, r6                        
00402b36  0320         movs r0, #3                        
00402b38  a047         blx r4                             
00402b3a  3046         mov r0, r6                         
00402b3c  bde8f88f     pop.w {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} 
00402b3e  f88f         ldrh r0, [r7, #0x3e]               
00402b40  baf1010f     cmp.w sl, #1                       
00402b42  010f         lsrs r1, r0, #0x1c                 
00402b44  07d1         bne #0x402b56                      
00402b46  181d         adds r0, r3, #4                    
00402b48  9042         cmp r0, r2                         
00402b4a  9cbf         itt ls                             
00402b4c  081d         adds r0, r1, #4                    
00402b4e  9042         cmp r0, r2                         
00402b50  18d9         bls #0x402b84                      
00402b52  6249         ldr r1, [pc, #0x188]               
00402b54  dde7         b #0x402b12                        
00402b56  000e         lsrs r0, r0, #0x18                 
00402b58  00eb8000     add.w r0, r0, r0, lsl #2           
00402b5a  8000         lsls r0, r0, #2                    
00402b5c  08eb0016     add.w r6, r8, r0, lsl #4           
00402b5e  0016         asrs r0, r0, #0x18                 
00402b60  d6f81803     ldr.w r0, [r6, #0x318]             
00402b62  1803         lsls r0, r3, #0xc                  
00402b64  0328         cmp r0, #3                         
00402b66  1ad1         bne #0x402b9e                      
00402b68  06f54670     add.w r0, r6, #0x318               
00402b6a  4670         strb r6, [r0, #1]                  
00402b6c  211d         adds r1, r4, #4                    
00402b6e  0090         str r0, [sp]                       
00402b70  02f042fe     bl #0x4057f8                       
00402b72  42fed0b1     mcr2 p1, #2, fp, c2, c0, #6        
00402b74  d0b1         cbz r0, #0x402bac                  
00402b76  4849         ldr r1, [pc, #0x120]               
00402b78  0020         movs r0, #0                        
00402b7a  02f003fd     bl #0x405584                       
00402b7c  03fd40f2     stc2 p2, c15, [r3, #-0x100]        
00402b7e  40f23226     movw r6, #0x232                    
00402b80  3226         movs r6, #0x32                     
00402b82  cbe7         b #0x402b1c                        
00402b84  4046         mov r0, r8                         
00402b86  2946         mov r1, r5                         
00402b88  00f098f9     bl #0x402ebc                       
00402b8a  98f95149     ldrsb.w r4, [r8, #0x951]           
00402b8c  5149         ldr r1, [pc, #0x144]               
00402b8e  0646         mov r6, r0                         
00402b90  0020         movs r0, #0                        
00402b92  02f0f7fc     bl #0x405584                       
00402b94  f7fc002e     ldc2l p14, c2, [r7], #0            
00402b96  002e         cmp r6, #0                         
00402b98  c4d1         bne #0x402b24                      
00402b9a  0026         movs r6, #0                        
00402b9c  cde7         b #0x402b3a                        
00402b9e  3d49         ldr r1, [pc, #0xf4]                
00402ba0  0020         movs r0, #0                        
00402ba2  02f0effc     bl #0x405584                       
00402ba4  effc40f2     stc2l p2, c15, [pc], #0x100        
00402ba6  40f26226     movw r6, #0x262                    
00402ba8  6226         movs r6, #0x62                     
00402baa  b7e7         b #0x402b1c                        
00402bac  04eb0b00     add.w r0, r4, fp                   
00402bae  0b00         movs r3, r1                        
00402bb0  ddf800c0     ldr.w ip, [sp]                     
00402bb2  00c0         (undecodable)
00402bb4  10f8041f     ldrb r1, [r0, #4]!                 
00402bb6  041f         subs r4, r0, #4                    
00402bb8  4278         ldrb r2, [r0, #1]                  
00402bba  8378         ldrb r3, [r0, #2]                  
00402bbc  c078         ldrb r0, [r0, #3]                  
00402bbe  41ea0221     orr.w r1, r1, r2, lsl #8           
00402bc0  0221         movs r1, #2                        
00402bc2  43ea0020     orr.w r0, r3, r0, lsl #8           
00402bc4  0020         movs r0, #0                        
00402bc6  41ea0040     orr.w r0, r1, r0, lsl #16          
00402bc8  0040         ands r0, r0                        
00402bca  d6f84813     ldr.w r1, [r6, #0x348]             
00402bcc  4813         asrs r0, r1, #0xd                  
00402bce  8842         cmp r0, r1                         
00402bd0  13d9         bls #0x402bfa                      
00402bd2  06f55271     add.w r1, r6, #0x348               
00402bd4  5271         strb r2, [r2, #5]                  
00402bd6  baf1020f     cmp.w sl, #2                       
00402bd8  020f         lsrs r2, r0, #0x1c                 
00402bda  6446         mov r4, ip                         
00402bdc  0860         str r0, [r1]                       
00402bde  1bd0         beq #0x402c18                      
00402be0  baf1030f     cmp.w sl, #3                       
00402be2  030f         lsrs r3, r0, #0x1c                 
00402be4  10d0         beq #0x402c08                      
00402be6  baf1040f     cmp.w sl, #4                       
00402be8  040f         lsrs r4, r0, #0x1c                 
00402bea  15d0         beq #0x402c18                      
00402bec  3a49         ldr r1, [pc, #0xe8]                
00402bee  0020         movs r0, #0                        
00402bf0  02f0c8fc     bl #0x405584                       
00402bf2  c8fc40f2     stc2l p2, c15, [r8], {0x40}        
00402bf4  40f23126     movw r6, #0x231                    
00402bf6  3126         movs r6, #0x31                     
00402bf8  90e7         b #0x402b1c                        
00402bfa  28a1         adr r1, #0xa0                      
00402bfc  0020         movs r0, #0                        
00402bfe  02f0c1fc     bl #0x405584                       
00402c00  c1fc4ff4     stc2l p4, c15, [r1], {0x4f}        
00402c02  4ff40c76     mov.w r6, #0x230                   
00402c04  0c76         strb r4, [r1, #0x18]               
00402c06  89e7         b #0x402b1c                        
00402c08  4046         mov r0, r8                         
00402c0a  2946         mov r1, r5                         
00402c0c  00f06af8     bl #0x402ce4                       
00402c0e  6af8         (undecodable)
00402c10  0646         mov r6, r0                         
00402c12  0028         cmp r0, #0                         
00402c14  7ff482af     bne.w #0x402b1c                    
00402c16  82af         add r7, sp, #0x208                 
00402c18  05f58361     add.w r1, r5, #0x418               
00402c1a  8361         str r3, [r0, #0x18]                
00402c1c  0020         movs r0, #0                        
00402c1e  ca19         adds r2, r1, r7                    
00402c20  c855         strb r0, [r1, r7]                  
00402c22  d070         strb r0, [r2, #3]                  
00402c24  9070         strb r0, [r2, #2]                  
00402c26  5070         strb r0, [r2, #1]                  
00402c28  41f65010     movw r0, #0x1950                   
00402c2a  5010         asrs r0, r2, #1                    
00402c2c  2e18         adds r6, r5, r0                    
00402c2e  4ff48062     mov.w r2, #0x400                   
00402c30  8062         str r0, [r0, #0x28]                
00402c32  3046         mov r0, r6                         
00402c34  fef7b6ea     blx #0x4011a4                      
00402c36  b6ea         (undecodable)
00402c38  2046         mov r0, r4                         
00402c3a  3146         mov r1, r6                         
00402c3c  4a46         mov r2, sb                         
00402c3e  00f04dfe     bl #0x4038dc                       
00402c40  4dfe0646     cdp2 p6, #4, c4, c13, c6, #0       
00402c42  0646         mov r6, r0                         
00402c44  0028         cmp r0, #0                         
00402c46  7ff469af     bne.w #0x402b1c                    
00402c48  69af         add r7, sp, #0x1a4                 
00402c4a  2249         ldr r1, [pc, #0x88]                
00402c4c  41f65050     movw r0, #0x1d50                   
00402c4e  5050         str r0, [r2, r1]                   
00402c50  45f80090     str.w sb, [r5, r0]                 
00402c52  0090         str r0, [sp]                       
00402c54  0020         movs r0, #0                        
00402c56  0026         movs r6, #0                        
00402c58  02f094fc     bl #0x405584                       
00402c5a  94fc6de7     ldc2 p7, c14, [r4], {0x6d}         
00402c5c  6de7         b #0x402b3a                        
00402c5e  00bf         nop                                
00402c60  414d         ldr r5, [pc, #0x104]               
00402c62  445f         ldrsh r4, [r0, r5]                 
00402c64  5441         adcs r4, r2                        
00402c66  5f47         bxns fp                            
00402c68  4350         str r3, [r0, r1]                   
00402c6a  3a20         movs r0, #0x3a                     
00402c6c  436f         ldr r3, [r0, #0x74]                
00402c6e  6e66         str r6, [r5, #0x64]                
00402c70  6967         str r1, [r5, #0x74]                
00402c72  7572         strb r5, [r6, #9]                  
00402c74  6541         adcs r5, r4                        
00402c76  7574         strb r5, [r6, #0x11]               
00402c78  6865         str r0, [r5, #0x54]                
00402c7a  6e74         strb r6, [r5, #0x11]               
00402c7c  6963         str r1, [r5, #0x34]                
00402c7e  6174         strb r1, [r4, #0x11]               
00402c80  6564         str r5, [r4, #0x44]                
00402c82  5365         str r3, [r2, #0x54]                
00402c84  7373         strb r3, [r6, #0xd]                
00402c86  696f         ldr r1, [r5, #0x74]                
00402c88  6e20         movs r0, #0x6e                     
00402c8a  454e         ldr r6, [pc, #0x114]               
00402c8c  5445         cmp r4, sl                         
00402c8e  520a         lsrs r2, r2, #9                    
00402c90  0000         movs r0, r0                        
00402c92  0000         movs r0, r0                        
00402c94  2269         ldr r2, [r4, #0x10]                
00402c96  4000         lsls r0, r0, #1                    
00402c98  7d68         ldr r5, [r7, #4]                   
00402c9a  4000         lsls r0, r0, #1                    
00402c9c  414d         ldr r5, [pc, #0x104]               
00402c9e  445f         ldrsh r4, [r0, r5]                 
00402ca0  5441         adcs r4, r2                        
00402ca2  5f47         bxns fp                            
00402ca4  4350         str r3, [r0, r1]                   
00402ca6  3a20         movs r0, #0x3a                     
00402ca8  4552         strh r5, [r0, r1]                  
00402caa  524f         ldr r7, [pc, #0x148]               
00402cac  523a         subs r2, #0x52                     
00402cae  2049         ldr r1, [pc, #0x80]                
00402cb0  6e76         strb r6, [r5, #0x19]               
00402cb2  616c         ldr r1, [r4, #0x44]                
00402cb4  6964         str r1, [r5, #0x44]                
00402cb6  2063         str r0, [r4, #0x30]                
00402cb8  6f6e         ldr r7, [r5, #0x64]                
00402cba  6669         ldr r6, [r4, #0x14]                
00402cbc  6775         strb r7, [r4, #0x15]               
00402cbe  7265         str r2, [r6, #0x54]                
00402cc0  2073         strb r0, [r4, #0xc]                
00402cc2  6571         strb r5, [r4, #5]                  
00402cc4  7565         str r5, [r6, #0x54]                
00402cc6  6e63         str r6, [r5, #0x34]                
00402cc8  6520         movs r0, #0x65                     
00402cca  6e75         strb r6, [r5, #0x15]               
00402ccc  6d62         str r5, [r5, #0x24]                
00402cce  6572         strb r5, [r4, #9]                  
00402cd0  0a00         movs r2, r1                        
00402cd2  0000         movs r0, r0                        
00402cd4  ec66         str r4, [r5, #0x6c]                
00402cd6  4000         lsls r0, r0, #1                    
00402cd8  e568         ldr r5, [r4, #0xc]                 
00402cda  4000         lsls r0, r0, #1                    
00402cdc  9469         ldr r4, [r2, #0x18]                
00402cde  4000         lsls r0, r0, #1                    
00402ce0  d969         ldr r1, [r3, #0x1c]                
00402ce2  4000         lsls r0, r0, #1                    
00402ce4  2de9f047     push.w {r4, r5, r6, r7, r8, sb, sl, lr} 
00402ce6  f047         blx lr                             
00402ce8  88b0         sub sp, #0x20                      
00402cea  0e46         mov r6, r1                         
00402cec  53a1         adr r1, #0x14c                     
00402cee  8046         mov r8, r0                         
00402cf0  0020         movs r0, #0                        
00402cf2  0024         movs r4, #0                        
00402cf4  02f046fc     bl #0x405584                       
00402cf6  46fc3046     mcrr2 p6, #3, r4, r6, c0           
00402cf8  3046         mov r0, r6                         
00402cfa  50f8107f     ldr r7, [r0, #0x10]!               
00402cfc  107f         ldrb r0, [r2, #0x1c]               
00402cfe  b4eb177f     cmp.w r4, r7, lsr #28              
00402d00  177f         ldrb r7, [r2, #0x1c]               
00402d02  02d0         beq #0x402d0a                      
00402d04  4ff48074     mov.w r4, #0x100                   
00402d06  8074         strb r0, [r0, #0x12]               
00402d08  3be0         b #0x402d82                        
00402d0a  d6f81c58     ldr.w r5, [r6, #0x81c]             
00402d0c  1c58         ldr r4, [r3, r0]                   
00402d0e  d6f83898     ldr.w sb, [r6, #0x838]             
00402d10  3898         ldr r0, [sp, #0xe0]                
00402d12  d6f83ca8     ldr.w sl, [r6, #0x83c]             
00402d14  3ca8         add r0, sp, #0xf0                  
00402d16  202d         cmp r5, #0x20                      
00402d18  d6f84018     ldr.w r1, [r6, #0x840]             
00402d1a  4018         adds r0, r0, r1                    
00402d1c  d6f81424     ldr.w r2, [r6, #0x414]             
00402d1e  1424         movs r4, #0x14                     
00402d20  cde90644     strd r4, r4, [sp, #0x18]           
00402d22  0644         add r6, r0                         
00402d24  cde90444     strd r4, r4, [sp, #0x10]           
00402d26  0444         add r4, r0                         
00402d28  cde90244     strd r4, r4, [sp, #8]              
00402d2a  0244         add r2, r0                         
00402d2c  18bf         it ne                              
00402d2e  402d         cmp r5, #0x40                      
00402d30  1fd1         bne #0x402d72                      
00402d32  0aebd503     add.w r3, sl, r5, lsr #3           
00402d34  d503         lsls r5, r2, #0xf                  
00402d36  9a42         cmp r2, r3                         
00402d38  13d3         blo #0x402d62                      
00402d3a  09ebd503     add.w r3, sb, r5, lsr #3           
00402d3c  d503         lsls r5, r2, #0xf                  
00402d3e  9a42         cmp r2, r3                         
00402d40  24bf         itt hs                             
00402d42  01ebd503     add.w r3, r1, r5, lsr #3           
00402d44  d503         lsls r5, r2, #0xf                  
00402d46  9a42         cmp r2, r3                         
00402d48  0bd3         blo #0x402d62                      
00402d4a  6fea0a02     mvn.w r2, sl                       
00402d4c  0a02         lsls r2, r1, #8                    
00402d4e  ee08         lsrs r6, r5, #3                    
00402d50  9642         cmp r6, r2                         
00402d52  06d8         bhi #0x402d62                      
00402d54  6fea0902     mvn.w r2, sb                       
00402d56  0902         lsls r1, r1, #8                    
00402d58  9642         cmp r6, r2                         
00402d5a  9cbf         itt ls                             
00402d5c  ca43         mvns r2, r1                        
00402d5e  9642         cmp r6, r2                         
00402d60  24d9         bls #0x402dac                      
00402d62  5249         ldr r1, [pc, #0x148]               
00402d64  0020         movs r0, #0                        
00402d66  2a46         mov r2, r5                         
00402d68  02f00cfc     bl #0x405584                       
00402d6a  0cfc         (undecodable)
00402d6c  4ff48074     mov.w r4, #0x100                   
00402d6e  8074         strb r0, [r0, #0x12]               
00402d70  06e0         b #0x402d80                        
00402d72  4f49         ldr r1, [pc, #0x13c]               
00402d74  0020         movs r0, #0                        
00402d76  2a46         mov r2, r5                         
00402d78  02f004fc     bl #0x405584                       
00402d7a  04fc         (undecodable)
00402d7c  4ff48274     mov.w r4, #0x104                   
00402d7e  8274         strb r2, [r0, #0x12]               
00402d80  94b1         cbz r4, #0x402da8                  
00402d82  af4d         ldr r5, [pc, #0x2bc]               
00402d84  0320         movs r0, #3                        
00402d86  4ff47041     mov.w r1, #0xf000                  
00402d88  7041         adcs r0, r6                        
00402d8a  a847         blx r5                             
00402d8c  0320         movs r0, #3                        
00402d8e  0021         movs r1, #0                        
00402d90  a847         blx r5                             
00402d92  0320         movs r0, #3                        
00402d94  2146         mov r1, r4                         
00402d96  a847         blx r5                             
00402d98  4749         ldr r1, [pc, #0x11c]               
00402d9a  0020         movs r0, #0                        
00402d9c  02f0f2fb     bl #0x405584                       
00402d9e  f2fb         (undecodable)
00402da0  2046         mov r0, r4                         
00402da2  08b0         add sp, #0x20                      
00402da4  bde8f087     pop.w {r4, r5, r6, r7, r8, sb, sl, pc} 
00402da6  f087         strh r0, [r6, #0x3e]               
00402da8  0024         movs r4, #0                        
00402daa  f5e7         b #0x402d98                        
00402dac  041d         adds r4, r0, #4                    
00402dae  06a8         add r0, sp, #0x18                  
00402db0  2144         add r1, r4                         
00402db2  3246         mov r2, r6                         
00402db4  fef7b2e9     blx #0x40111c                      
00402db6  b2e9         (undecodable)
00402db8  04eb0901     add.w r1, r4, sb                   
00402dba  0901         lsls r1, r1, #4                    
00402dbc  04a8         add r0, sp, #0x10                  
00402dbe  3246         mov r2, r6                         
00402dc0  fef7ace9     blx #0x40111c                      
00402dc2  ace9         (undecodable)
00402dc4  04eb0a01     add.w r1, r4, sl                   
00402dc6  0a01         lsls r2, r1, #4                    
00402dc8  02a8         add r0, sp, #8                     
00402dca  3246         mov r2, r6                         
00402dcc  fef7a6e9     blx #0x40111c                      
00402dce  a6e9         (undecodable)
00402dd0  dde90623     ldrd r2, r3, [sp, #0x18]           
00402dd2  0623         movs r3, #6                        
00402dd4  52ea0300     orrs.w r0, r2, r3                  
00402dd6  0300         movs r3, r0                        
00402dd8  1fd0         beq #0x402e1a                      
00402dda  4046         mov r0, r8                         
00402ddc  0095         str r5, [sp]                       
00402dde  00f035ff     bl #0x403c4c                       
00402de0  35ff         (undecodable)
00402de2  e8b1         cbz r0, #0x402e20                  
00402de4  0546         mov r5, r0                         
00402de6  380e         lsrs r0, r7, #0x18                 
00402de8  00eb8000     add.w r0, r0, r0, lsl #2           
00402dea  8000         lsls r0, r0, #2                    
00402dec  3246         mov r2, r6                         
00402dee  08eb0010     add.w r0, r8, r0, lsl #4           
00402df0  0010         asrs r0, r0, #0x20                 
00402df2  00f54471     add.w r1, r0, #0x310               
00402df4  4471         strb r4, [r0, #5]                  
00402df6  04a8         add r0, sp, #0x10                  
00402df8  fef764f9     bl #0x4010c4                       
00402dfa  64f9         (undecodable)
00402dfc  30b9         cbnz r0, #0x402e0c                 
00402dfe  05f11001     add.w r1, r5, #0x10                
00402e00  1001         lsls r0, r2, #4                    
00402e02  04a8         add r0, sp, #0x10                  
00402e04  3246         mov r2, r6                         
00402e06  fef75df9     bl #0x4010c4                       
00402e08  5df9         (undecodable)
00402e0a  80b1         cbz r0, #0x402e2e                  
00402e0c  16a1         adr r1, #0x58                      
00402e0e  0020         movs r0, #0                        
00402e10  02f0b8fb     bl #0x405584                       
00402e12  b8fb         (undecodable)
00402e14  4ff40d74     mov.w r4, #0x234                   
00402e16  0d74         strb r5, [r1, #0x10]               
00402e18  b2e7         b #0x402d80                        
00402e1a  4ff40c74     mov.w r4, #0x230                   
00402e1c  0c74         strb r4, [r1, #0x10]               
00402e1e  afe7         b #0x402d80                        
00402e20  2149         ldr r1, [pc, #0x84]                
00402e22  0020         movs r0, #0                        
00402e24  02f0aefb     bl #0x405584                       
00402e26  aefb         (undecodable)
00402e28  40f23324     movw r4, #0x233                    
00402e2a  3324         movs r4, #0x33                     
00402e2c  a8e7         b #0x402d80                        
00402e2e  dde90201     ldrd r0, r1, [sp, #8]              
00402e30  0201         lsls r2, r0, #4                    
00402e32  0024         movs r4, #0                        
00402e34  c5e90601     strd r0, r1, [r5, #0x18]           
00402e36  0601         lsls r6, r0, #4                    
00402e38  a2e7         b #0x402d80                        
00402e3a  00bf         nop                                
00402e3c  414d         ldr r5, [pc, #0x104]               
00402e3e  445f         ldrsh r4, [r0, r5]                 
00402e40  5441         adcs r4, r2                        
00402e42  5f47         bxns fp                            
00402e44  4350         str r3, [r0, r1]                   
00402e46  3a20         movs r0, #0x3a                     
00402e48  436f         ldr r3, [r0, #0x74]                
00402e4a  6e66         str r6, [r5, #0x64]                
00402e4c  6967         str r1, [r5, #0x74]                
00402e4e  7572         strb r5, [r6, #9]                  
00402e50  6543         muls r5, r4, r5                    
00402e52  7279         ldrb r2, [r6, #5]                  
00402e54  7074         strb r0, [r6, #0x11]               
00402e56  6f53         strh r7, [r5, r5]                  
00402e58  6573         strb r5, [r4, #0xd]                
00402e5a  7369         ldr r3, [r6, #0x14]                
00402e5c  6f6e         ldr r7, [r5, #0x64]                
00402e5e  2045         cmp r0, r4                         
00402e60  4e54         strb r6, [r1, r1]                  
00402e62  4552         strh r5, [r0, r1]                  
00402e64  0a00         movs r2, r1                        
00402e66  0000         movs r0, r0                        
00402e68  414d         ldr r5, [pc, #0x104]               
00402e6a  445f         ldrsh r4, [r0, r5]                 
00402e6c  5441         adcs r4, r2                        
00402e6e  5f47         bxns fp                            
00402e70  4350         str r3, [r0, r1]                   
00402e72  3a20         movs r0, #0x3a                     
00402e74  4552         strh r5, [r0, r1]                  
00402e76  524f         ldr r7, [pc, #0x148]               
00402e78  523a         subs r2, #0x52                     
00402e7a  2044         add r0, r4                         
00402e7c  5820         movs r0, #0x58                     
00402e7e  6465         str r4, [r4, #0x54]                
00402e80  7669         ldr r6, [r6, #0x14]                
00402e82  6365         str r3, [r4, #0x54]                
00402e84  2070         strb r0, [r4]                      
00402e86  726f         ldr r2, [r6, #0x74]                
00402e88  7669         ldr r6, [r6, #0x14]                
00402e8a  6465         str r4, [r4, #0x54]                
00402e8c  6420         movs r0, #0x64                     
00402e8e  646f         ldr r4, [r4, #0x74]                
00402e90  6573         strb r5, [r4, #0xd]                
00402e92  206e         ldr r0, [r4, #0x60]                
00402e94  6f74         strb r7, [r5, #0x11]               
00402e96  206d         ldr r0, [r4, #0x50]                
00402e98  6174         strb r1, [r4, #0x11]               
00402e9a  6368         ldr r3, [r4, #4]                   
00402e9c  2063         str r0, [r4, #0x30]                
00402e9e  6f6e         ldr r7, [r5, #0x64]                
00402ea0  7465         str r4, [r6, #0x54]                
00402ea2  7874         strb r0, [r7, #0x11]               
00402ea4  0a00         movs r2, r1                        
00402ea6  0000         movs r0, r0                        
00402ea8  4568         ldr r5, [r0, #4]                   
00402eaa  4000         lsls r0, r0, #1                    
00402eac  086a         ldr r0, [r1, #0x20]                
00402eae  4000         lsls r0, r0, #1                    
00402eb0  f465         str r4, [r6, #0x5c]                
00402eb2  4000         lsls r0, r0, #1                    
00402eb4  b562         str r5, [r6, #0x28]                
00402eb6  4000         lsls r0, r0, #1                    
00402eb8  a367         str r3, [r4, #0x78]                
00402eba  4000         lsls r0, r0, #1                    
00402ebc  2de9f84f     push.w {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr} 
00402ebe  f84f         ldr r7, [pc, #0x3e0]               
00402ec0  0f46         mov r7, r1                         
00402ec2  53a1         adr r1, #0x14c                     
00402ec4  0546         mov r5, r0                         
00402ec6  0020         movs r0, #0                        
00402ec8  02f05cfb     bl #0x405584                       
00402eca  5cfb         (undecodable)
00402ecc  3c46         mov r4, r7                         
00402ece  54f8100f     ldr r0, [r4, #0x10]!               
00402ed0  100f         lsrs r0, r2, #0x1c                 
00402ed2  b0f1805f     cmp.w r0, #0x10000000              
00402ed4  805f         ldrsh r0, [r0, r6]                 
00402ed6  0ed3         blo #0x402ef6                      
00402ed8  594c         ldr r4, [pc, #0x164]               
00402eda  0320         movs r0, #3                        
00402edc  4ff47041     mov.w r1, #0xf000                  
00402ede  7041         adcs r0, r6                        
00402ee0  a047         blx r4                             
00402ee2  0320         movs r0, #3                        
00402ee4  0021         movs r1, #0                        
00402ee6  a047         blx r4                             
00402ee8  0320         movs r0, #3                        
00402eea  4ff48071     mov.w r1, #0x100                   
00402eec  8071         strb r0, [r0, #6]                  
00402eee  4ff48075     mov.w r5, #0x100                   
00402ef0  8075         strb r0, [r0, #0x16]               
00402ef2  a047         blx r4                             
00402ef4  82e0         b #0x402ffc                        
00402ef6  000e         lsrs r0, r0, #0x18                 
00402ef8  d7f82898     ldr.w sb, [r7, #0x828]             
00402efa  2898         ldr r0, [sp, #0xa0]                
00402efc  00eb8000     add.w r0, r0, r0, lsl #2           
00402efe  8000         lsls r0, r0, #2                    
00402f00  05eb0015     add.w r5, r5, r0, lsl #4           
00402f02  0015         asrs r0, r0, #0x14                 
00402f04  05f54678     add.w r8, r5, #0x318               
00402f06  4678         ldrb r6, [r0, #1]                  
00402f08  d5f81803     ldr.w r0, [r5, #0x318]             
00402f0a  1803         lsls r0, r3, #0xc                  
00402f0c  0228         cmp r0, #2                         
00402f0e  12d1         bne #0x402f36                      
00402f10  d7f81424     ldr.w r2, [r7, #0x414]             
00402f12  1424         movs r4, #0x14                     
00402f14  211d         adds r1, r4, #4                    
00402f16  4046         mov r0, r8                         
00402f18  d7f82cb8     ldr.w fp, [r7, #0x82c]             
00402f1a  2cb8         (undecodable)
00402f1c  d7f830a8     ldr.w sl, [r7, #0x830]             
00402f1e  30a8         add r0, sp, #0xc0                  
00402f20  02f06afc     bl #0x4057f8                       
00402f22  6afc78b1     stc2l p1, c11, [sl], #-0x1e0       
00402f24  78b1         cbz r0, #0x402f46                  
00402f26  4549         ldr r1, [pc, #0x114]               
00402f28  0646         mov r6, r0                         
00402f2a  0020         movs r0, #0                        
00402f2c  02f02afb     bl #0x405584                       
00402f2e  2afb         (undecodable)
00402f30  40f23224     movw r4, #0x232                    
00402f32  3224         movs r4, #0x32                     
00402f34  2fe0         b #0x402f96                        
00402f36  4049         ldr r1, [pc, #0x100]               
00402f38  0020         movs r0, #0                        
00402f3a  0026         movs r6, #0                        
00402f3c  02f022fb     bl #0x405584                       
00402f3e  22fb         (undecodable)
00402f40  4ff40c74     mov.w r4, #0x230                   
00402f42  0c74         strb r4, [r1, #0x10]               
00402f44  27e0         b #0x402f96                        
00402f46  04eb0b00     add.w r0, r4, fp                   
00402f48  0b00         movs r3, r1                        
00402f4a  10f8041f     ldrb r1, [r0, #4]!                 
00402f4c  041f         subs r4, r0, #4                    
00402f4e  4278         ldrb r2, [r0, #1]                  
00402f50  8378         ldrb r3, [r0, #2]                  
00402f52  c078         ldrb r0, [r0, #3]                  
00402f54  41ea0221     orr.w r1, r1, r2, lsl #8           
00402f56  0221         movs r1, #2                        
00402f58  43ea0020     orr.w r0, r3, r0, lsl #8           
00402f5a  0020         movs r0, #0                        
00402f5c  41ea0040     orr.w r0, r1, r0, lsl #16          
00402f5e  0040         ands r0, r0                        
00402f60  28b1         cbz r0, #0x402f6e                  
00402f62  0021         movs r1, #0                        
00402f64  0138         subs r0, #1                        
00402f66  61f10001     sbc r1, r1, #0                     
00402f68  0001         lsls r0, r0, #4                    
00402f6a  c5e9d001     strd r0, r1, [r5, #0x340]          
00402f6c  d001         lsls r0, r2, #7                    
00402f6e  04eb0a00     add.w r0, r4, sl                   
00402f70  0a00         movs r2, r1                        
00402f72  0324         movs r4, #3                        
00402f74  0026         movs r6, #0                        
00402f76  10f8041f     ldrb r1, [r0, #4]!                 
00402f78  041f         subs r4, r0, #4                    
00402f7a  4278         ldrb r2, [r0, #1]                  
00402f7c  8378         ldrb r3, [r0, #2]                  
00402f7e  c078         ldrb r0, [r0, #3]                  
00402f80  41ea0221     orr.w r1, r1, r2, lsl #8           
00402f82  0221         movs r1, #2                        
00402f84  c8f80040     str.w r4, [r8]                     
00402f86  0040         ands r0, r0                        
00402f88  0024         movs r4, #0                        
00402f8a  43ea0020     orr.w r0, r3, r0, lsl #8           
00402f8c  0020         movs r0, #0                        
00402f8e  41ea0040     orr.w r0, r1, r0, lsl #16          
00402f90  0040         ands r0, r0                        
00402f92  c5f84803     str.w r0, [r5, #0x348]             
00402f94  4803         lsls r0, r1, #0xd                  
00402f96  07f58361     add.w r1, r7, #0x418               
00402f98  8361         str r3, [r0, #0x18]                
00402f9a  320e         lsrs r2, r6, #0x18                 
00402f9c  01eb0900     add.w r0, r1, sb                   
00402f9e  0900         movs r1, r1                        
00402fa0  01f80960     strb.w r6, [r1, sb]                
00402fa2  0960         str r1, [r1]                       
00402fa4  c270         strb r2, [r0, #3]                  
00402fa6  320c         lsrs r2, r6, #0x10                 
00402fa8  8270         strb r2, [r0, #2]                  
00402faa  320a         lsrs r2, r6, #8                    
00402fac  4270         strb r2, [r0, #1]                  
00402fae  41f65010     movw r0, #0x1950                   
00402fb0  5010         asrs r0, r2, #1                    
00402fb2  3e18         adds r6, r7, r0                    
00402fb4  4ff48062     mov.w r2, #0x400                   
00402fb6  8062         str r0, [r0, #0x28]                
00402fb8  3046         mov r0, r6                         
00402fba  fef7f4e8     blx #0x4011a4                      
00402fbc  f4e8d7f8     ldrd pc, r8, [r4], #0x35c          
00402fbe  d7f81828     ldr.w r2, [r7, #0x818]             
00402fc0  1828         cmp r0, #0x18                      
00402fc2  4046         mov r0, r8                         
00402fc4  3146         mov r1, r6                         
00402fc6  00f089fc     bl #0x4038dc                       
00402fc8  89fc34b1     stc2 p1, c11, [sb], {0x34}         
00402fca  34b1         cbz r4, #0x402fda                  
00402fcc  2546         mov r5, r4                         
00402fce  d7f81808     ldr.w r0, [r7, #0x818]             
00402fd0  1808         lsrs r0, r3, #0x20                 
00402fd2  41f65051     movw r1, #0x1d50                   
00402fd4  5051         str r0, [r2, r5]                   
00402fd6  7850         str r0, [r7, r1]                   
00402fd8  01e0         b #0x402fde                        
00402fda  0546         mov r5, r0                         
00402fdc  88b1         cbz r0, #0x403002                  
00402fde  184c         ldr r4, [pc, #0x60]                
00402fe0  0320         movs r0, #3                        
00402fe2  4ff47041     mov.w r1, #0xf000                  
00402fe4  7041         adcs r0, r6                        
00402fe6  a047         blx r4                             
00402fe8  290c         lsrs r1, r5, #0x10                 
00402fea  0320         movs r0, #3                        
00402fec  a047         blx r4                             
00402fee  a9b2         uxth r1, r5                        
00402ff0  0320         movs r0, #3                        
00402ff2  a047         blx r4                             
00402ff4  13a1         adr r1, #0x4c                      
00402ff6  0020         movs r0, #0                        
00402ff8  02f0c4fa     bl #0x405584                       
00402ffa  c4fa         (undecodable)
00402ffc  2846         mov r0, r5                         
00402ffe  bde8f88f     pop.w {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc} 
00403000  f88f         ldrh r0, [r7, #0x3e]               
00403002  d7f81808     ldr.w r0, [r7, #0x818]             
00403004  1808         lsrs r0, r3, #0x20                 
00403006  41f65051     movw r1, #0x1d50                   
00403008  5051         str r0, [r2, r5]                   
0040300a  7850         str r0, [r7, r1]                   
0040300c  0025         movs r5, #0                        
0040300e  f1e7         b #0x402ff4                        
00403010  414d         ldr r5, [pc, #0x104]               
00403012  445f         ldrsh r4, [r0, r5]                 
00403014  5441         adcs r4, r2                        
00403016  5f47         bxns fp                            
00403018  4350         str r3, [r0, r1]                   
0040301a  3a20         movs r0, #0x3a                     
0040301c  436f         ldr r3, [r0, #0x74]                
0040301e  6e66         str r6, [r5, #0x64]                
00403020  6967         str r1, [r5, #0x74]                
00403022  7572         strb r5, [r6, #9]                  
00403024  6549         ldr r1, [pc, #0x194]               
00403026  6e69         ldr r6, [r5, #0x14]                
00403028  7469         ldr r4, [r6, #0x14]                
0040302a  616c         ldr r1, [r4, #0x44]                
0040302c  697a         ldrb r1, [r5, #9]                  
0040302e  6520         movs r0, #0x65                     
00403030  454e         ldr r6, [pc, #0x114]               
00403032  5445         cmp r4, sl                         
00403034  520a         lsrs r2, r2, #9                    
00403036  0000         movs r0, r0                        
00403038  2269         ldr r2, [r4, #0x10]                
0040303a  4000         lsls r0, r0, #1                    
0040303c  7d68         ldr r5, [r7, #4]                   
0040303e  4000         lsls r0, r0, #1                    
00403040  b562         str r5, [r6, #0x28]                
00403042  4000         lsls r0, r0, #1                    
00403044  414d         ldr r5, [pc, #0x104]               
00403046  445f         ldrsh r4, [r0, r5]                 
00403048  5441         adcs r4, r2                        
0040304a  5f47         bxns fp                            
0040304c  4350         str r3, [r0, r1]                   
0040304e  3a20         movs r0, #0x3a                     
00403050  436f         ldr r3, [r0, #0x74]                
00403052  6e66         str r6, [r5, #0x64]                
00403054  6967         str r1, [r5, #0x74]                
00403056  7572         strb r5, [r6, #9]                  
00403058  6549         ldr r1, [pc, #0x194]               
0040305a  6e69         ldr r6, [r5, #0x14]                
0040305c  7469         ldr r4, [r6, #0x14]                
0040305e  616c         ldr r1, [r4, #0x44]                
00403060  697a         ldrb r1, [r5, #9]                  
00403062  6520         movs r0, #0x65                     
00403064  4558         ldr r5, [r0, r1]                   
00403066  4954         strb r1, [r1, r1]                  
00403068  0a00         movs r2, r1                        
0040306a  0000         movs r0, r0                        
0040306c  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
0040306e  f041         rors r0, r6                        
00403070  8846         mov r8, r1                         
00403072  29a1         adr r1, #0xa4                      
00403074  0546         mov r5, r0                         
00403076  0020         movs r0, #0                        
00403078  0027         movs r7, #0                        
0040307a  02f083fa     bl #0x405584                       
0040307c  83fa05f5     sadd8 r5, r3, r5                   
0040307e  05f54076     add.w r6, r5, #0x300               
00403080  4076         strb r0, [r0, #0x19]               
00403082  05f5f050     add.w r0, r5, #0x1e00              
00403084  f050         str r0, [r6, r3]                   
00403086  b7f1805f     cmp.w r7, #0x10000000              
00403088  805f         ldrsh r0, [r0, r6]                 
0040308a  05d0         beq #0x403098                      
0040308c  b169         ldr r1, [r6, #0x18]                
0040308e  a9b1         cbz r1, #0x4030bc                  
00403090  5036         adds r6, #0x50                     
00403092  07f18077     add.w r7, r7, #0x1000000           
00403094  8077         strb r0, [r0, #0x1e]               
00403096  f6e7         b #0x403086                        
00403098  40f21125     movw r5, #0x211                    
0040309a  1125         movs r5, #0x11                     
0040309c  3849         ldr r1, [pc, #0xe0]                
0040309e  0020         movs r0, #0                        
004030a0  02f070fa     bl #0x405584                       
004030a2  70fa         (undecodable)
004030a4  ac4c         ldr r4, [pc, #0x2b0]               
004030a6  0320         movs r0, #3                        
004030a8  4ff47041     mov.w r1, #0xf000                  
004030aa  7041         adcs r0, r6                        
004030ac  a047         blx r4                             
004030ae  290c         lsrs r1, r5, #0x10                 
004030b0  0320         movs r0, #3                        
004030b2  a047         blx r4                             
004030b4  a9b2         uxth r1, r5                        
004030b6  0320         movs r0, #3                        
004030b8  a047         blx r4                             
004030ba  21e0         b #0x403100                        
004030bc  0121         movs r1, #1                        
004030be  b161         str r1, [r6, #0x18]                
004030c0  d8f81810     ldr.w r1, [r8, #0x18]              
004030c2  1810         asrs r0, r3, #0x20                 
004030c4  7160         str r1, [r6, #4]                   
004030c6  d0e90035     ldrd r3, r5, [r0]                  
004030c8  0035         adds r5, #0                        
004030ca  691c         adds r1, r5, #1                    
004030cc  d8e904c2     ldrd ip, r2, [r8, #0x10]           
004030ce  04c2         stm r2!, {r2}                      
004030d0  5c1c         adds r4, r3, #1                    
004030d2  c0e90041     strd r4, r1, [r0]                  
004030d4  0041         asrs r0, r0                        
004030d6  25f07f40     bic r0, r5, #0xff000000            
004030d8  7f40         eors r7, r7                        
004030da  40ea0700     orr.w r0, r0, r7                   
004030dc  0700         movs r7, r0                        
004030de  c6e904c2     strd ip, r2, [r6, #0x10]           
004030e0  04c2         stm r2!, {r2}                      
004030e2  3060         str r0, [r6]                       
004030e4  7bb1         cbz r3, #0x403106                  
004030e6  41f65011     movw r1, #0x1950                   
004030e8  5011         asrs r0, r2, #5                    
004030ea  0025         movs r5, #0                        
004030ec  48f80100     str.w r0, [r8, r1]                 
004030ee  0100         movs r1, r0                        
004030f0  15a1         adr r1, #0x54                      
004030f2  0020         movs r0, #0                        
004030f4  02f046fa     bl #0x405584                       
004030f6  46fa         (undecodable)
004030f8  2149         ldr r1, [pc, #0x84]                
004030fa  0020         movs r0, #0                        
004030fc  02f042fa     bl #0x405584                       
004030fe  42fa         (undecodable)
00403100  2846         mov r0, r5                         
00403102  bde8f081     pop.w {r4, r5, r6, r7, r8, pc}     
00403104  f081         strh r0, [r6, #0xe]                
00403106  0120         movs r0, #1                        
00403108  03f091f8     bl #0x40622e                       
0040310a  91f80546     ldrb.w r4, [r1, #0x605]            
0040310c  0546         mov r5, r0                         
0040310e  0028         cmp r0, #0                         
00403110  c4d1         bne #0x40309c                      
00403112  3068         ldr r0, [r6]                       
00403114  e7e7         b #0x4030e6                        
00403116  00bf         nop                                
00403118  414d         ldr r5, [pc, #0x104]               
0040311a  445f         ldrsh r4, [r0, r5]                 
0040311c  5441         adcs r4, r2                        
0040311e  5f47         bxns fp                            
00403120  4350         str r3, [r0, r1]                   
00403122  3a20         movs r0, #0x3a                     
00403124  4372         strb r3, [r0, #9]                  
00403126  6561         str r5, [r4, #0x14]                
00403128  7465         str r4, [r6, #0x54]                
0040312a  4175         strb r1, [r0, #0x15]               
0040312c  7468         ldr r4, [r6, #4]                   
0040312e  656e         ldr r5, [r4, #0x64]                
00403130  7469         ldr r4, [r6, #0x14]                
00403132  6361         str r3, [r4, #0x14]                
00403134  7465         str r4, [r6, #0x54]                
00403136  6453         strh r4, [r4, r5]                  
00403138  6573         strb r5, [r4, #0xd]                
0040313a  7369         ldr r3, [r6, #0x14]                
0040313c  6f6e         ldr r7, [r5, #0x64]                
0040313e  2045         cmp r0, r4                         
00403140  4e54         strb r6, [r1, r1]                  
00403142  4552         strh r5, [r0, r1]                  
00403144  0a00         movs r2, r1                        
00403146  0000         movs r0, r0                        
00403148  414d         ldr r5, [pc, #0x104]               
0040314a  445f         ldrsh r4, [r0, r5]                 
0040314c  5441         adcs r4, r2                        
0040314e  5f47         bxns fp                            
00403150  4350         str r3, [r0, r1]                   
00403152  3a20         movs r0, #0x3a                     
00403154  4372         strb r3, [r0, #9]                  
00403156  6561         str r5, [r4, #0x14]                
00403158  7465         str r4, [r6, #0x54]                
0040315a  4175         strb r1, [r0, #0x15]               
0040315c  7468         ldr r4, [r6, #4]                   
0040315e  656e         ldr r5, [r4, #0x64]                
00403160  7469         ldr r4, [r6, #0x14]                
00403162  6361         str r3, [r4, #0x14]                
00403164  7465         str r4, [r6, #0x54]                
00403166  6453         strh r4, [r4, r5]                  
00403168  6573         strb r5, [r4, #0xd]                
0040316a  7369         ldr r3, [r6, #0x14]                
0040316c  6f6e         ldr r7, [r5, #0x64]                
0040316e  2073         strb r0, [r4, #0xc]                
00403170  6573         strb r5, [r4, #0xd]                
00403172  7369         ldr r3, [r6, #0x14]                
00403174  6f6e         ldr r7, [r5, #0x64]                
00403176  2063         str r0, [r4, #0x30]                
00403178  7265         str r2, [r6, #0x54]                
0040317a  6174         strb r1, [r4, #0x11]               
0040317c  6564         str r5, [r4, #0x44]                
0040317e  0a00         movs r2, r1                        
00403180  1c67         str r4, [r3, #0x70]                
00403182  4000         lsls r0, r0, #1                    
00403184  f8b5         push {r3, r4, r5, r6, r7, lr}      
00403186  0c46         mov r4, r1                         
00403188  29a1         adr r1, #0xa4                      
0040318a  0646         mov r6, r0                         
0040318c  0020         movs r0, #0                        
0040318e  0027         movs r7, #0                        
00403190  02f0f8f9     bl #0x405584                       
00403192  f8f9         (undecodable)
00403194  06f50065     add.w r5, r6, #0x800               
00403196  0065         str r0, [r0, #0x50]                
00403198  06f5f056     add.w r6, r6, #0x1e00              
0040319a  f056         ldrsb r0, [r6, r3]                 
0040319c  b7f1804f     cmp.w r7, #0x40000000              
0040319e  804f         ldr r7, [pc, #0x200]               
004031a0  05d0         beq #0x4031ae                      
004031a2  286a         ldr r0, [r5, #0x20]                
004031a4  a8b1         cbz r0, #0x4031d2                  
004031a6  07f18077     add.w r7, r7, #0x1000000           
004031a8  8077         strb r0, [r0, #0x1e]               
004031aa  5835         adds r5, #0x58                     
004031ac  f6e7         b #0x40319c                        
004031ae  40f21136     movw r6, #0x311                    
004031b0  1136         adds r6, #0x11                     
004031b2  3649         ldr r1, [pc, #0xd8]                
004031b4  0020         movs r0, #0                        
004031b6  02f0e5f9     bl #0x405584                       
004031b8  e5f9674c     vld1.16 {d20[], d21[]}, [r5], r7   
004031ba  674c         ldr r4, [pc, #0x19c]               
004031bc  0320         movs r0, #3                        
004031be  4ff47041     mov.w r1, #0xf000                  
004031c0  7041         adcs r0, r6                        
004031c2  a047         blx r4                             
004031c4  310c         lsrs r1, r6, #0x10                 
004031c6  0320         movs r0, #3                        
004031c8  a047         blx r4                             
004031ca  b1b2         uxth r1, r6                        
004031cc  0320         movs r0, #3                        
004031ce  a047         blx r4                             
004031d0  24e0         b #0x40321c                        
004031d2  2846         mov r0, r5                         
004031d4  5821         movs r1, #0x58                     
004031d6  fef739f8     bl #0x40124c                       
004031d8  39f80120     ldrh.w r2, [sb, r1]                
004031da  0120         movs r0, #1                        
004031dc  2862         str r0, [r5, #0x20]                
004031de  d4e90401     ldrd r0, r1, [r4, #0x10]           
004031e0  0401         lsls r4, r0, #4                    
004031e2  c5e90201     strd r0, r1, [r5, #8]              
004031e4  0201         lsls r2, r0, #4                    
004031e6  3268         ldr r2, [r6]                       
004031e8  b368         ldr r3, [r6, #8]                   
004031ea  501c         adds r0, r2, #1                    
004031ec  d4e906c1     ldrd ip, r1, [r4, #0x18]           
004031ee  06c1         stm r1!, {r1, r2}                  
004031f0  3060         str r0, [r6]                       
004031f2  581c         adds r0, r3, #1                    
004031f4  b060         str r0, [r6, #8]                   
004031f6  23f07f40     bic r0, r3, #0xff000000            
004031f8  7f40         eors r7, r7                        
004031fa  3843         orrs r0, r7                        
004031fc  c5e904c1     strd ip, r1, [r5, #0x10]           
004031fe  04c1         stm r1!, {r2}                      
00403200  2860         str r0, [r5]                       
00403202  6ab1         cbz r2, #0x403220                  
00403204  41f65011     movw r1, #0x1950                   
00403206  5011         asrs r0, r2, #5                    
00403208  0026         movs r6, #0                        
0040320a  6050         str r0, [r4, r1]                   
0040320c  12a1         adr r1, #0x48                      
0040320e  0020         movs r0, #0                        
00403210  02f0b8f9     bl #0x405584                       
00403212  b8f91d49     ldrsh.w r4, [r8, #0x91d]           
00403214  1d49         ldr r1, [pc, #0x74]                
00403216  0020         movs r0, #0                        
00403218  02f0b4f9     bl #0x405584                       
0040321a  b4f93046     ldrsh.w r4, [r4, #0x630]           
0040321c  3046         mov r0, r6                         
0040321e  f8bd         pop {r3, r4, r5, r6, r7, pc}       
00403220  0120         movs r0, #1                        
00403222  03f004f8     bl #0x40622e                       
00403224  04f8         (undecodable)
00403226  0646         mov r6, r0                         
00403228  0028         cmp r0, #0                         
0040322a  c2d1         bne #0x4031b2                      
0040322c  2868         ldr r0, [r5]                       
0040322e  e9e7         b #0x403204                        
00403230  414d         ldr r5, [pc, #0x104]               
00403232  445f         ldrsh r4, [r0, r5]                 
00403234  5441         adcs r4, r2                        
00403236  5f47         bxns fp                            
00403238  4350         str r3, [r0, r1]                   
0040323a  3a20         movs r0, #0x3a                     
0040323c  4372         strb r3, [r0, #9]                  
0040323e  6561         str r5, [r4, #0x14]                
00403240  7465         str r4, [r6, #0x54]                
00403242  4372         strb r3, [r0, #9]                  
00403244  7970         strb r1, [r7, #1]                  
00403246  746f         ldr r4, [r6, #0x74]                
00403248  5365         str r3, [r2, #0x54]                
0040324a  7373         strb r3, [r6, #0xd]                
0040324c  696f         ldr r1, [r5, #0x74]                
0040324e  6e20         movs r0, #0x6e                     
00403250  454e         ldr r6, [pc, #0x114]               
00403252  5445         cmp r4, sl                         
00403254  520a         lsrs r2, r2, #9                    
00403256  0000         movs r0, r0                        
00403258  414d         ldr r5, [pc, #0x104]               
0040325a  445f         ldrsh r4, [r0, r5]                 
0040325c  5441         adcs r4, r2                        
0040325e  5f47         bxns fp                            
00403260  4350         str r3, [r0, r1]                   
00403262  3a20         movs r0, #0x3a                     
00403264  4372         strb r3, [r0, #9]                  
00403266  6561         str r5, [r4, #0x14]                
00403268  7465         str r4, [r6, #0x54]                
0040326a  4372         strb r3, [r0, #9]                  
0040326c  7970         strb r1, [r7, #1]                  
0040326e  746f         ldr r4, [r6, #0x74]                
00403270  5365         str r3, [r2, #0x54]                
00403272  7373         strb r3, [r6, #0xd]                
00403274  696f         ldr r1, [r5, #0x74]                
00403276  6e20         movs r0, #0x6e                     
00403278  7365         str r3, [r6, #0x54]                
0040327a  7373         strb r3, [r6, #0xd]                
0040327c  696f         ldr r1, [r5, #0x74]                
0040327e  6e20         movs r0, #0x6e                     
00403280  6372         strb r3, [r4, #9]                  
00403282  6561         str r5, [r4, #0x14]                
00403284  7465         str r4, [r6, #0x54]                
00403286  640a         lsrs r4, r4, #9                    
00403288  0000         movs r0, r0                        
0040328a  0000         movs r0, r0                        
0040328c  af6b         ldr r7, [r5, #0x38]                
0040328e  4000         lsls r0, r0, #1                    
00403290  b0b5         push {r4, r5, r7, lr}              
00403292  0d46         mov r5, r1                         
00403294  23a1         adr r1, #0x8c                      
00403296  0446         mov r4, r0                         
00403298  0020         movs r0, #0                        
0040329a  02f073f9     bl #0x405584                       
0040329c  73f9         (undecodable)
0040329e  2869         ldr r0, [r5, #0x10]                
004032a0  b0f1805f     cmp.w r0, #0x10000000              
004032a2  805f         ldrsh r0, [r0, r6]                 
004032a4  28d2         bhs #0x4032f8                      
004032a6  010e         lsrs r1, r0, #0x18                 
004032a8  01eb8101     add.w r1, r1, r1, lsl #2           
004032aa  8101         lsls r1, r0, #6                    
004032ac  04eb0111     add.w r1, r4, r1, lsl #4           
004032ae  0111         asrs r1, r0, #4                    
004032b0  d1f80023     ldr.w r2, [r1, #0x300]             
004032b2  0023         movs r3, #0                        
004032b4  8242         cmp r2, r0                         
004032b6  1bd1         bne #0x4032f0                      
004032b8  0020         movs r0, #0                        
004032ba  c1f81803     str.w r0, [r1, #0x318]             
004032bc  1803         lsls r0, r3, #0xc                  
004032be  4ff4f050     mov.w r0, #0x1e00                  
004032c0  f050         str r0, [r6, r3]                   
004032c2  2058         ldr r0, [r4, r0]                   
004032c4  20b1         cbz r0, #0x4032d0                  
004032c6  04f5f051     add.w r1, r4, #0x1e00              
004032c8  f051         str r0, [r6, r7]                   
004032ca  0138         subs r0, #1                        
004032cc  0860         str r0, [r1]                       
004032ce  23d1         bne #0x403318                      
004032d0  0220         movs r0, #2                        
004032d2  02f0acff     bl #0x40622e                       
004032d4  acff         (undecodable)
004032d6  f8b1         cbz r0, #0x403318                  
004032d8  c34d         ldr r5, [pc, #0x30c]               
004032da  0446         mov r4, r0                         
004032dc  0320         movs r0, #3                        
004032de  4ff47041     mov.w r1, #0xf000                  
004032e0  7041         adcs r0, r6                        
004032e2  a847         blx r5                             
004032e4  210c         lsrs r1, r4, #0x10                 
004032e6  0320         movs r0, #3                        
004032e8  a847         blx r5                             
004032ea  a1b2         uxth r1, r4                        
004032ec  0320         movs r0, #3                        
004032ee  10e0         b #0x403312                        
004032f0  1849         ldr r1, [pc, #0x60]                
004032f2  0020         movs r0, #0                        
004032f4  02f046f9     bl #0x405584                       
004032f6  46f9         (undecodable)
004032f8  bb4d         ldr r5, [pc, #0x2ec]               
004032fa  0320         movs r0, #3                        
004032fc  4ff47041     mov.w r1, #0xf000                  
004032fe  7041         adcs r0, r6                        
00403300  a847         blx r5                             
00403302  0320         movs r0, #3                        
00403304  0021         movs r1, #0                        
00403306  a847         blx r5                             
00403308  4ff48074     mov.w r4, #0x100                   
0040330a  8074         strb r0, [r0, #0x12]               
0040330c  0320         movs r0, #3                        
0040330e  4ff48071     mov.w r1, #0x100                   
00403310  8071         strb r0, [r0, #6]                  
00403312  a847         blx r5                             
00403314  2046         mov r0, r4                         
00403316  b0bd         pop {r4, r5, r7, pc}               
00403318  0e49         ldr r1, [pc, #0x38]                
0040331a  0020         movs r0, #0                        
0040331c  0024         movs r4, #0                        
0040331e  02f031f9     bl #0x405584                       
00403320  31f9         (undecodable)
00403322  f7e7         b #0x403314                        
00403324  414d         ldr r5, [pc, #0x104]               
00403326  445f         ldrsh r4, [r0, r5]                 
00403328  5441         adcs r4, r2                        
0040332a  5f47         bxns fp                            
0040332c  4350         str r3, [r0, r1]                   
0040332e  3a20         movs r0, #0x3a                     
00403330  4465         str r4, [r0, #0x54]                
00403332  7374         strb r3, [r6, #0x11]               
00403334  726f         ldr r2, [r6, #0x74]                
00403336  7941         adcs r1, r7                        
00403338  7574         strb r5, [r6, #0x11]               
0040333a  6865         str r0, [r5, #0x54]                
0040333c  6e74         strb r6, [r5, #0x11]               
0040333e  6963         str r1, [r5, #0x34]                
00403340  6174         strb r1, [r4, #0x11]               
00403342  6564         str r5, [r4, #0x44]                
00403344  5365         str r3, [r2, #0x54]                
00403346  7373         strb r3, [r6, #0xd]                
00403348  696f         ldr r1, [r5, #0x74]                
0040334a  6e20         movs r0, #0x6e                     
0040334c  454e         ldr r6, [pc, #0x114]               
0040334e  5445         cmp r4, sl                         
00403350  520a         lsrs r2, r2, #9                    
00403352  0000         movs r0, r0                        
00403354  4967         str r1, [r1, #0x74]                
00403356  4000         lsls r0, r0, #1                    
00403358  b562         str r5, [r6, #0x28]                
0040335a  4000         lsls r0, r0, #1                    
0040335c  b0b5         push {r4, r5, r7, lr}              
0040335e  0d46         mov r5, r1                         
00403360  27a1         adr r1, #0x9c                      
00403362  0446         mov r4, r0                         
00403364  0020         movs r0, #0                        
00403366  02f00df9     bl #0x405584                       
00403368  0df92869     vst2.8 {d6, d8}, [sp:0x80], r8     
0040336a  2869         ldr r0, [r5, #0x10]                
0040336c  b0f1804f     cmp.w r0, #0x40000000              
0040336e  804f         ldr r7, [pc, #0x200]               
00403370  0bd3         blo #0x40338a                      
00403372  0320         movs r0, #3                        
00403374  4ff47041     mov.w r1, #0xf000                  
00403376  7041         adcs r0, r6                        
00403378  02f09cff     bl #0x4062b4                       
0040337a  9cff0320     vaddl.u16 q1, d12, d3              
0040337c  0320         movs r0, #3                        
0040337e  0021         movs r1, #0                        
00403380  02f098ff     bl #0x4062b4                       
00403382  98ff         (undecodable)
00403384  4ff48074     mov.w r4, #0x100                   
00403386  8074         strb r0, [r0, #0x12]               
00403388  34e0         b #0x4033f4                        
0040338a  010e         lsrs r1, r0, #0x18                 
0040338c  5822         movs r2, #0x58                     
0040338e  11fb0241     smlabb r1, r1, r2, r4              
00403390  0241         asrs r2, r0                        
00403392  d1f80028     ldr.w r2, [r1, #0x800]             
00403394  0028         cmp r0, #0                         
00403396  8242         cmp r2, r0                         
00403398  06bf         itte eq                            
0040339a  0025         movs r5, #0                        
0040339c  c1f82058     str.w r5, [r1, #0x820]             
0040339e  2058         ldr r0, [r4, r0]                   
004033a0  4ff48075     mov.w r5, #0x100                   
004033a2  8075         strb r0, [r0, #0x16]               
004033a4  4ff4f050     mov.w r0, #0x1e00                  
004033a6  f050         str r0, [r6, r3]                   
004033a8  2058         ldr r0, [r4, r0]                   
004033aa  20b1         cbz r0, #0x4033b6                  
004033ac  04f5f051     add.w r1, r4, #0x1e00              
004033ae  f051         str r0, [r6, r7]                   
004033b0  0138         subs r0, #1                        
004033b2  0860         str r0, [r1]                       
004033b4  0ed1         bne #0x4033d4                      
004033b6  0220         movs r0, #2                        
004033b8  02f039ff     bl #0x40622e                       
004033ba  39ff         (undecodable)
004033bc  50b1         cbz r0, #0x4033d4                  
004033be  0446         mov r4, r0                         
004033c0  0320         movs r0, #3                        
004033c2  4ff47041     mov.w r1, #0xf000                  
004033c4  7041         adcs r0, r6                        
004033c6  02f075ff     bl #0x4062b4                       
004033c8  75ff         (undecodable)
004033ca  210c         lsrs r1, r4, #0x10                 
004033cc  0320         movs r0, #3                        
004033ce  02f071ff     bl #0x4062b4                       
004033d0  71ff         (undecodable)
004033d2  0fe0         b #0x4033f4                        
004033d4  14a1         adr r1, #0x50                      
004033d6  0020         movs r0, #0                        
004033d8  0024         movs r4, #0                        
004033da  02f0d3f8     bl #0x405584                       
004033dc  d3f86db1     ldr.w fp, [r3, #0x16d]             
004033de  6db1         cbz r5, #0x4033fc                  
004033e0  0320         movs r0, #3                        
004033e2  4ff47041     mov.w r1, #0xf000                  
004033e4  7041         adcs r0, r6                        
004033e6  02f065ff     bl #0x4062b4                       
004033e8  65ff0320     vhadd.u32 d18, d5, d3              
004033ea  0320         movs r0, #3                        
004033ec  0021         movs r1, #0                        
004033ee  02f061ff     bl #0x4062b4                       
004033f0  61ff2c46     vmax.u32 d20, d1, d28              
004033f2  2c46         mov r4, r5                         
004033f4  a1b2         uxth r1, r4                        
004033f6  0320         movs r0, #3                        
004033f8  02f05cff     bl #0x4062b4                       
004033fa  5cff2046     vmax.u16 d20, d12, d16             
004033fc  2046         mov r0, r4                         
004033fe  b0bd         pop {r4, r5, r7, pc}               
00403400  414d         ldr r5, [pc, #0x104]               
00403402  445f         ldrsh r4, [r0, r5]                 
00403404  5441         adcs r4, r2                        
00403406  5f47         bxns fp                            
00403408  4350         str r3, [r0, r1]                   
0040340a  3a20         movs r0, #0x3a                     
0040340c  4465         str r4, [r0, #0x54]                
0040340e  7374         strb r3, [r6, #0x11]               
00403410  726f         ldr r2, [r6, #0x74]                
00403412  7943         muls r1, r7, r1                    
00403414  7279         ldrb r2, [r6, #5]                  
00403416  7074         strb r0, [r6, #0x11]               
00403418  6f53         strh r7, [r5, r5]                  
0040341a  6573         strb r5, [r4, #0xd]                
0040341c  7369         ldr r3, [r6, #0x14]                
0040341e  6f6e         ldr r7, [r5, #0x64]                
00403420  2045         cmp r0, r4                         
00403422  4e54         strb r6, [r1, r1]                  
00403424  4552         strh r5, [r0, r1]                  
00403426  0a00         movs r2, r1                        
00403428  414d         ldr r5, [pc, #0x104]               
0040342a  445f         ldrsh r4, [r0, r5]                 
0040342c  5441         adcs r4, r2                        
0040342e  5f47         bxns fp                            
00403430  4350         str r3, [r0, r1]                   
00403432  3a20         movs r0, #0x3a                     
00403434  4465         str r4, [r0, #0x54]                
00403436  7374         strb r3, [r6, #0x11]               
00403438  726f         ldr r2, [r6, #0x74]                
0040343a  7943         muls r1, r7, r1                    
0040343c  7279         ldrb r2, [r6, #5]                  
0040343e  7074         strb r0, [r6, #0x11]               
00403440  6f53         strh r7, [r5, r5]                  
00403442  6573         strb r5, [r4, #0xd]                
00403444  7369         ldr r3, [r6, #0x14]                
00403446  6f6e         ldr r7, [r5, #0x64]                
00403448  2045         cmp r0, r4                         
0040344a  5849         ldr r1, [pc, #0x160]               
0040344c  540a         lsrs r4, r2, #9                    
0040344e  0000         movs r0, r0                        
00403450  2de9f04f     push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} 
00403452  f04f         ldr r7, [pc, #0x3c0]               
00403454  9fb0         sub sp, #0x7c                      
00403456  0446         mov r4, r0                         
00403458  e846         mov r8, sp                         
0040345a  08f10800     add.w r0, r8, #8                   
0040345c  0800         movs r0, r1                        
0040345e  0d46         mov r5, r1                         
00403460  2021         movs r1, #0x20                     
00403462  1f46         mov r7, r3                         
00403464  1646         mov r6, r2                         
00403466  fdf7f1fe     bl #0x40124c                       
00403468  f1fe41f2     cdp2 p2, #0xf, c15, c1, c1, #2     
0040346a  41f29d00     movw r0, #0x109d                   
0040346c  9d00         lsls r5, r3, #2                    
0040346e  ddf8a8a0     ldr.w sl, [sp, #0xa8]              
00403470  a8a0         adr r0, #0x2a0                     
00403472  0090         str r0, [sp]                       
00403474  0220         movs r0, #2                        
00403476  0190         str r0, [sp, #4]                   
00403478  dde928b9     ldrd fp, sb, [sp, #0xa0]           
0040347a  28b9         cbnz r0, #0x403488                 
0040347c  00f0cefd     bl #0x40401c                       
0040347e  cefd0128     stc2l p8, c2, [lr, #4]             
00403480  0128         cmp r0, #1                         
00403482  07d1         bne #0x403494                      
00403484  0ea8         add r0, sp, #0x38                  
00403486  cdf84c90     str.w sb, [sp, #0x4c]              
00403488  4c90         str r0, [sp, #0x130]               
0040348a  80e8f008     stm.w r0, {r4, r5, r6, r7, fp}     
0040348c  f008         lsrs r0, r6, #3                    
0040348e  08f15000     add.w r0, r8, #0x50                
00403490  5000         lsls r0, r2, #1                    
00403492  09e0         b #0x4034a8                        
00403494  2020         movs r0, #0x20                     
00403496  cdf82090     str.w sb, [sp, #0x20]              
00403498  2090         str r0, [sp, #0x80]                
0040349a  cde9067b     strd r7, fp, [sp, #0x18]           
0040349c  067b         ldrb r6, [r0, #0xc]                
0040349e  0590         str r0, [sp, #0x14]                
004034a0  02a8         add r0, sp, #8                     
004034a2  70c0         stm r0!, {r4, r5, r6}              
004034a4  08f12400     add.w r0, r8, #0x24                
004034a6  2400         movs r4, r4                        
004034a8  c0f800a0     str.w sl, [r0]                     
004034aa  00a0         adr r0, #0                         
004034ac  6946         mov r1, sp                         
004034ae  2b98         ldr r0, [sp, #0xac]                
004034b0  1590         str r0, [sp, #0x54]                
004034b2  0120         movs r0, #1                        
004034b4  f2df         svc #0xf2                          
004034b6  1fb0         add sp, #0x7c                      
004034b8  bde8f08f     pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc} 
004034ba  f08f         ldrh r0, [r6, #0x3e]               
004034bc  f0b5         push {r4, r5, r6, r7, lr}          
004034be  9fb0         sub sp, #0x7c                      
004034c0  0646         mov r6, r0                         
004034c2  6f46         mov r7, sp                         
004034c4  07f10800     add.w r0, r7, #8                   
004034c6  0800         movs r0, r1                        
004034c8  0d46         mov r5, r1                         
004034ca  2021         movs r1, #0x20                     
004034cc  1446         mov r4, r2                         
004034ce  fdf7bdfe     bl #0x40124c                       
004034d0  bdfe41f2     cdp2 p2, #0xb, c15, c13, c1, #2    
004034d2  41f29c00     movw r0, #0x109c                   
004034d4  9c00         lsls r4, r3, #2                    
004034d6  0090         str r0, [sp]                       
004034d8  0220         movs r0, #2                        
004034da  0190         str r0, [sp, #4]                   
004034dc  00f09efd     bl #0x40401c                       
004034de  9efd0128     ldc2 p8, c2, [lr, #4]              
004034e0  0128         cmp r0, #1                         
004034e2  19bf         ittee ne                           
004034e4  0296         str r6, [sp, #8]                   
004034e6  07f10c00     add.w r0, r7, #0xc                 
004034e8  0c00         movs r4, r1                        
004034ea  0e96         str r6, [sp, #0x38]                
004034ec  07f13c00     add.w r0, r7, #0x3c                
004034ee  3c00         movs r4, r7                        
004034f0  0560         str r5, [r0]                       
004034f2  0120         movs r0, #1                        
004034f4  1094         str r4, [sp, #0x40]                
004034f6  6946         mov r1, sp                         
004034f8  f2df         svc #0xf2                          
004034fa  1fb0         add sp, #0x7c                      
004034fc  f0bd         pop {r4, r5, r6, r7, pc}           
004034fe  7047         bx lr                              
00403500  f8b5         push {r3, r4, r5, r6, r7, lr}      
00403502  0c46         mov r4, r1                         
00403504  2aa1         adr r1, #0xa8                      
00403506  0546         mov r5, r0                         
00403508  0020         movs r0, #0                        
0040350a  02f03bf8     bl #0x405584                       
0040350c  3bf82069     ldrh r6, [fp], #-0x20              
0040350e  2069         ldr r0, [r4, #0x10]                
00403510  b0f1804f     cmp.w r0, #0x40000000              
00403512  804f         ldr r7, [pc, #0x200]               
00403514  0dd3         blo #0x403532                      
00403516  344d         ldr r5, [pc, #0xd0]                
00403518  0320         movs r0, #3                        
0040351a  4ff47041     mov.w r1, #0xf000                  
0040351c  7041         adcs r0, r6                        
0040351e  a847         blx r5                             
00403520  0320         movs r0, #3                        
00403522  0021         movs r1, #0                        
00403524  a847         blx r5                             
00403526  4ff48074     mov.w r4, #0x100                   
00403528  8074         strb r0, [r0, #0x12]               
0040352a  0320         movs r0, #3                        
0040352c  4ff48071     mov.w r1, #0x100                   
0040352e  8071         strb r0, [r0, #6]                  
00403530  25e0         b #0x40357e                        
00403532  000e         lsrs r0, r0, #0x18                 
00403534  5821         movs r1, #0x58                     
00403536  10fb0151     smlabb r1, r0, r1, r5              
00403538  0151         str r1, [r0, r4]                   
0040353a  d1f82028     ldr.w r2, [r1, #0x820]             
0040353c  2028         cmp r0, #0x20                      
0040353e  022a         cmp r2, #2                         
00403540  0cd1         bne #0x40355c                      
00403542  6ff00f02     mvn r2, #0xf                       
00403544  0f02         lsls r7, r1, #8                    
00403546  e2b1         cbz r2, #0x403582                  
00403548  8b18         adds r3, r1, r2                    
0040354a  0132         adds r2, #1                        
0040354c  93f83468     ldrb.w r6, [r3, #0x834]            
0040354e  3468         ldr r4, [r6]                       
00403550  93f84478     ldrb.w r7, [r3, #0x844]            
00403552  4478         ldrb r4, [r0, #1]                  
00403554  7e40         eors r6, r7                        
00403556  83f83468     strb.w r6, [r3, #0x834]            
00403558  3468         ldr r4, [r6]                       
0040355a  f4e7         b #0x403546                        
0040355c  2149         ldr r1, [pc, #0x84]                
0040355e  0020         movs r0, #0                        
00403560  02f010f8     bl #0x405584                       
00403562  10f8204d     ldrb r4, [r0, #-0x20]!             
00403564  204d         ldr r5, [pc, #0x80]                
00403566  0320         movs r0, #3                        
00403568  4ff47041     mov.w r1, #0xf000                  
0040356a  7041         adcs r0, r6                        
0040356c  a847         blx r5                             
0040356e  0320         movs r0, #3                        
00403570  0021         movs r1, #0                        
00403572  a847         blx r5                             
00403574  40f22134     movw r4, #0x321                    
00403576  2134         adds r4, #0x21                     
00403578  0320         movs r0, #3                        
0040357a  40f22131     movw r1, #0x321                    
0040357c  2131         adds r1, #0x21                     
0040357e  a847         blx r5                             
00403580  14e0         b #0x4035ac                        
00403582  5821         movs r1, #0x58                     
00403584  41f65012     movw r2, #0x1950                   
00403586  5012         asrs r0, r2, #9                    
00403588  10fb0150     smlabb r0, r0, r1, r5              
0040358a  0150         str r1, [r0, r0]                   
0040358c  d0f81818     ldr.w r1, [r0, #0x818]             
0040358e  1818         adds r0, r3, r0                    
00403590  d0f81c08     ldr.w r0, [r0, #0x81c]             
00403592  1c08         lsrs r4, r3, #0x20                 
00403594  a150         str r1, [r4, r2]                   
00403596  a118         adds r1, r4, r2                    
00403598  0024         movs r4, #0                        
0040359a  4860         str r0, [r1, #4]                   
0040359c  13a1         adr r1, #0x4c                      
0040359e  0020         movs r0, #0                        
004035a0  01f0f0ff     bl #0x405584                       
004035a2  f0ff0f49     vtbl.8 d20, {d0, d1}, d15          
004035a4  0f49         ldr r1, [pc, #0x3c]                
004035a6  0020         movs r0, #0                        
004035a8  01f0ecff     bl #0x405584                       
004035aa  ecff2046     vrsubhn.i64 d20, q6, q8            
004035ac  2046         mov r0, r4                         
004035ae  f8bd         pop {r3, r4, r5, r6, r7, pc}       
004035b0  414d         ldr r5, [pc, #0x104]               
004035b2  445f         ldrsh r4, [r0, r5]                 
004035b4  5441         adcs r4, r2                        
004035b6  5f47         bxns fp                            
004035b8  4350         str r3, [r0, r1]                   
004035ba  3a20         movs r0, #0x3a                     
004035bc  4669         ldr r6, [r0, #0x14]                
004035be  6e69         ldr r6, [r5, #0x14]                
004035c0  7368         ldr r3, [r6, #4]                   
004035c2  4b65         str r3, [r1, #0x54]                
004035c4  7952         strh r1, [r7, r1]                  
004035c6  6566         str r5, [r4, #0x64]                
004035c8  7265         str r2, [r6, #0x54]                
004035ca  7368         ldr r3, [r6, #4]                   
004035cc  4372         strb r3, [r0, #9]                  
004035ce  7970         strb r1, [r7, #1]                  
004035d0  746f         ldr r4, [r6, #0x74]                
004035d2  5365         str r3, [r2, #0x54]                
004035d4  7373         strb r3, [r6, #0xd]                
004035d6  696f         ldr r1, [r5, #0x74]                
004035d8  6e20         movs r0, #0x6e                     
004035da  454e         ldr r6, [pc, #0x114]               
004035dc  5445         cmp r4, sl                         
004035de  520a         lsrs r2, r2, #9                    
004035e0  0000         movs r0, r0                        
004035e2  0000         movs r0, r0                        
004035e4  d56b         ldr r5, [r2, #0x3c]                
004035e6  4000         lsls r0, r0, #1                    
004035e8  b562         str r5, [r6, #0x28]                
004035ea  4000         lsls r0, r0, #1                    
004035ec  414d         ldr r5, [pc, #0x104]               
004035ee  445f         ldrsh r4, [r0, r5]                 
004035f0  5441         adcs r4, r2                        
004035f2  5f47         bxns fp                            
004035f4  4350         str r3, [r0, r1]                   
004035f6  3a20         movs r0, #0x3a                     
004035f8  4669         ldr r6, [r0, #0x14]                
004035fa  6e69         ldr r6, [r5, #0x14]                
004035fc  7368         ldr r3, [r6, #4]                   
004035fe  2063         str r0, [r4, #0x30]                
00403600  7279         ldrb r2, [r6, #5]                  
00403602  7074         strb r0, [r6, #0x11]               
00403604  6f20         movs r0, #0x6f                     
00403606  7365         str r3, [r6, #0x54]                
00403608  7373         strb r3, [r6, #0xd]                
0040360a  696f         ldr r1, [r5, #0x74]                
0040360c  6e20         movs r0, #0x6e                     
0040360e  6b65         str r3, [r5, #0x54]                
00403610  7920         movs r0, #0x79                     
00403612  7265         str r2, [r6, #0x54]                
00403614  6672         strb r6, [r4, #9]                  
00403616  6573         strb r5, [r4, #0xd]                
00403618  6820         movs r0, #0x68                     
0040361a  636f         ldr r3, [r4, #0x74]                
0040361c  6d70         strb r5, [r5, #1]                  
0040361e  6c65         str r4, [r5, #0x54]                
00403620  7465         str r4, [r6, #0x54]                
00403622  640a         lsrs r4, r4, #9                    
00403624  0000         movs r0, r0                        
00403626  0000         movs r0, r0                        
00403628  2de9f04f     push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} 
0040362a  f04f         ldr r7, [pc, #0x3c0]               
0040362c  03af         add r7, sp, #0xc                   
0040362e  adf5fe5d     sub.w sp, sp, #0x1fc0              
00403630  fe5d         ldrb r6, [r7, r7]                  
00403632  87b0         sub sp, #0x1c                      
00403634  6c46         mov r4, sp                         
00403636  6ff30a04     bfc r4, #0, #0xb                   
00403638  0a04         lsls r2, r1, #0x10                 
0040363a  a546         mov sp, r4                         
0040363c  dff844bf     ldr.w fp, [pc, #0xf44]             
0040363e  44bf         itt mi                             
00403640  0df58054     add.w r4, sp, #0x1000              
00403642  8054         strb r0, [r0, r2]                  
00403644  0546         mov r5, r0                         
00403646  002d         cmp r5, #0                         
00403648  dbf80000     ldr.w r0, [fp]                     
0040364a  0000         movs r0, r0                        
0040364c  c4f8d80f     str.w r0, [r4, #0xfd8]             
0040364e  d80f         lsrs r0, r3, #0x1f                 
00403650  4ff48274     mov.w r4, #0x104                   
00403652  8274         strb r2, [r0, #0x12]               
00403654  57d0         beq #0x403706                      
00403656  b1f5807f     cmp.w r1, #0x100                   
00403658  807f         ldrb r0, [r0, #0x1e]               
0040365a  54d1         bne #0x403706                      
0040365c  9246         mov sl, r2                         
0040365e  002a         cmp r2, #0                         
00403660  51d0         beq #0x403706                      
00403662  9946         mov sb, r3                         
00403664  002b         cmp r3, #0                         
00403666  4ed0         beq #0x403706                      
00403668  0020         movs r0, #0                        
0040366a  4ff48071     mov.w r1, #0x100                   
0040366c  8071         strb r0, [r0, #6]                  
0040366e  cdf8fc07     str.w r0, [sp, #0x7fc]             
00403670  fc07         lsls r4, r7, #0x1f                 
00403672  06a8         add r0, sp, #0x18                  
00403674  00f5f650     add.w r0, r0, #0x1ec0              
00403676  f650         str r6, [r6, r3]                   
00403678  d7f81880     ldr.w r8, [r7, #0x18]              
0040367a  1880         strh r0, [r3]                      
0040367c  fdf7e6fd     bl #0x40124c                       
0040367e  e6fd06a8     stc2l p8, c10, [r6, #0x18]!        
00403680  06a8         add r0, sp, #0x18                  
00403682  4ff48071     mov.w r1, #0x100                   
00403684  8071         strb r0, [r0, #6]                  
00403686  00f5ee50     add.w r0, r0, #0x1dc0              
00403688  ee50         str r6, [r5, r3]                   
0040368a  fdf7dffd     bl #0x40124c                       
0040368c  dffd0df5     ldc2l p5, c15, [pc, #0x34]         
0040368e  0df50066     add.w r6, sp, #0x800               
00403690  0066         str r0, [r0, #0x60]                
00403692  4ff48051     mov.w r1, #0x1000                  
00403694  8051         str r0, [r0, r6]                   
00403696  3046         mov r0, r6                         
00403698  fdf7d8fd     bl #0x40124c                       
0040369a  d8fd3046     ldc2l p6, c4, [r8, #0xc0]          
0040369c  3046         mov r0, r6                         
0040369e  4ff49861     mov.w r1, #0x4c0                   
004036a0  9861         str r0, [r3, #0x18]                
004036a2  4246         mov r2, r8                         
004036a4  00f0d8fc     bl #0x404058                       
004036a6  d8fc0446     ldc2l p6, c4, [r8], {4}            
004036a8  0446         mov r4, r0                         
004036aa  60bb         cbnz r0, #0x403706                 
004036ac  ddf82408     ldr.w r0, [sp, #0x824]             
004036ae  2408         lsrs r4, r4, #0x20                 
004036b0  b0f5006f     cmp.w r0, #0x800                   
004036b2  006f         ldr r0, [r0, #0x70]                
004036b4  25d1         bne #0x403702                      
004036b6  564c         ldr r4, [pc, #0x158]               
004036b8  06f13000     add.w r0, r6, #0x30                
004036ba  3000         movs r0, r6                        
004036bc  0df2fc71     addw r1, sp, #0x7fc                
004036be  fc71         strb r4, [r7, #7]                  
004036c0  0322         movs r2, #3                        
004036c2  a047         blx r4                             
004036c4  06a9         add r1, sp, #0x18                  
004036c6  06f13400     add.w r0, r6, #0x34                
004036c8  3400         movs r4, r6                        
004036ca  01f5f651     add.w r1, r1, #0x1ec0              
004036cc  f651         str r6, [r6, r7]                   
004036ce  4ff48072     mov.w r2, #0x100                   
004036d0  8072         strb r0, [r0, #0xa]                
004036d2  a047         blx r4                             
004036d4  06a9         add r1, sp, #0x18                  
004036d6  06f59a70     add.w r0, r6, #0x134               
004036d8  9a70         strb r2, [r3, #2]                  
004036da  01f5ee56     add.w r6, r1, #0x1dc0              
004036dc  ee56         ldrsb r6, [r5, r3]                 
004036de  4ff48072     mov.w r2, #0x100                   
004036e0  8072         strb r0, [r0, #0xa]                
004036e2  3146         mov r1, r6                         
004036e4  a047         blx r4                             
004036e6  0020         movs r0, #0                        
004036e8  0df5ff62     add.w r2, sp, #0x7f8               
004036ea  ff62         str r7, [r7, #0x2c]                
004036ec  cdf8f807     str.w r0, [sp, #0x7f8]             
004036ee  f807         lsls r0, r7, #0x1f                 
004036f0  4ff40061     mov.w r1, #0x800                   
004036f2  0061         str r0, [r0, #0x10]                
004036f4  4748         ldr r0, [pc, #0x11c]               
004036f6  01f0dbfe     bl #0x4054b0                       
004036f8  dbfea0b1     cdp2 p1, #0xd, c11, c11, c0, #5    
004036fa  a0b1         cbz r0, #0x403726                  
004036fc  4ff4a264     mov.w r4, #0x510                   
004036fe  a264         str r2, [r4, #0x48]                
00403700  01e0         b #0x403706                        
00403702  40f26324     movw r4, #0x263                    
00403704  6324         movs r4, #0x63                     
00403706  0df58051     add.w r1, sp, #0x1000              
00403708  8051         str r0, [r0, r6]                   
0040370a  dbf80000     ldr.w r0, [fp]                     
0040370c  0000         movs r0, r0                        
0040370e  d1f8d81f     ldr.w r1, [r1, #0xfd8]             
00403710  d81f         subs r0, r3, #7                    
00403712  401a         subs r0, r0, r1                    
00403714  01bf         itttt eq                           
00403716  2046         mov r0, r4                         
00403718  a7f10c04     sub.w r4, r7, #0xc                 
0040371a  0c04         lsls r4, r1, #0x10                 
0040371c  a546         mov sp, r4                         
0040371e  bde8f08f     pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc} 
00403720  f08f         ldrh r0, [r6, #0x3e]               
00403722  02f016ed     blx #0x406150                      
00403724  16ed0df5     ldc p5, c15, [r6, #-0x34]          
00403726  0df5f364     add.w r4, sp, #0x798               
00403728  f364         str r3, [r6, #0x4c]                
0040372a  3c21         movs r1, #0x3c                     
0040372c  04f12400     add.w r0, r4, #0x24                
0040372e  2400         movs r4, r4                        
00403730  fdf78cfd     bl #0x40124c                       
00403732  8cfd0df2     stc2 p2, c15, [ip, #0x34]          
00403734  0df2fc70     addw r0, sp, #0x7fc                
00403736  fc70         strb r4, [r7, #3]                  
00403738  cdf89c07     str.w r0, [sp, #0x79c]             
0040373a  9c07         lsls r4, r3, #0x1e                 
0040373c  06a8         add r0, sp, #0x18                  
0040373e  4ff48071     mov.w r1, #0x100                   
00403740  8071         strb r0, [r0, #6]                  
00403742  00f5f650     add.w r0, r0, #0x1ec0              
00403744  f650         str r6, [r6, r3]                   
00403746  cdf8a807     str.w r0, [sp, #0x7a8]             
00403748  a807         lsls r0, r5, #0x1e                 
0040374a  3348         ldr r0, [pc, #0xcc]                
0040374c  0322         movs r2, #3                        
0040374e  cdf8a407     str.w r0, [sp, #0x7a4]             
00403750  a407         lsls r4, r4, #0x1e                 
00403752  3248         ldr r0, [pc, #0xc8]                
00403754  cdf8b007     str.w r0, [sp, #0x7b0]             
00403756  b007         lsls r0, r6, #0x1e                 
00403758  00f58070     add.w r0, r0, #0x100               
0040375a  8070         strb r0, [r0, #2]                  
0040375c  cdf89807     str.w r0, [sp, #0x798]             
0040375e  9807         lsls r0, r3, #0x1e                 
00403760  0320         movs r0, #3                        
00403762  cdf8ac17     str.w r1, [sp, #0x7ac]             
00403764  ac17         asrs r4, r5, #0x1e                 
00403766  cdf8a007     str.w r0, [sp, #0x7a0]             
00403768  a007         lsls r0, r4, #0x1e                 
0040376a  ddf8f807     ldr.w r0, [sp, #0x7f8]             
0040376c  f807         lsls r0, r7, #0x1f                 
0040376e  cdf8b817     str.w r1, [sp, #0x7b8]             
00403770  b817         asrs r0, r7, #0x1e                 
00403772  2146         mov r1, r4                         
00403774  cdf8b467     str.w r6, [sp, #0x7b4]             
00403776  b467         str r4, [r6, #0x78]                
00403778  01f0e8ff     bl #0x40574c                       
0040377a  e8ff10b1     vsra.u32 d27, d0, #0x18            
0040377c  10b1         cbz r0, #0x403784                  
0040377e  40f21154     movw r4, #0x511                    
00403780  1154         strb r1, [r2, r0]                  
00403782  3de0         b #0x403800                        
00403784  0020         movs r0, #0                        
00403786  2649         ldr r1, [pc, #0x98]                
00403788  cdf89407     str.w r0, [sp, #0x794]             
0040378a  9407         lsls r4, r2, #0x1e                 
0040378c  0df29470     addw r0, sp, #0x794                
0040378e  9470         strb r4, [r2, #2]                  
00403790  0122         movs r2, #1                        
00403792  4ff40063     mov.w r3, #0x800                   
00403794  0063         str r0, [r0, #0x30]                
00403796  b8f1000f     cmp.w r8, #0                       
00403798  000f         lsrs r0, r0, #0x1c                 
0040379a  1cbf         itt ne                             
0040379c  40f23021     movw r1, #0x230                    
0040379e  3021         movs r1, #0x30                     
004037a0  c6f26101     movt r1, #0x6061                   
004037a2  6101         lsls r1, r4, #5                    
004037a4  01f066fe     bl #0x405474                       
004037a6  66fe10b1     mcr2 p1, #3, fp, c6, c0, #0        
004037a8  10b1         cbz r0, #0x4037b0                  
004037aa  40f21254     movw r4, #0x512                    
004037ac  1254         strb r2, [r2, r0]                  
004037ae  27e0         b #0x403800                        
004037b0  ddf8f817     ldr.w r1, [sp, #0x7f8]             
004037b2  f817         asrs r0, r7, #0x1f                 
004037b4  ddf89407     ldr.w r0, [sp, #0x794]             
004037b6  9407         lsls r4, r2, #0x1e                 
004037b8  01f0e2ff     bl #0x405780                       
004037ba  e2ff10b1     vsra.u32 d27, d0, #0x1e            
004037bc  10b1         cbz r0, #0x4037c4                  
004037be  40f21354     movw r4, #0x513                    
004037c0  1354         strb r3, [r2, r0]                  
004037c2  18e0         b #0x4037f6                        
004037c4  ddf89407     ldr.w r0, [sp, #0x794]             
004037c6  9407         lsls r4, r2, #0x1e                 
004037c8  4ff48071     mov.w r1, #0x100                   
004037ca  8071         strb r0, [r0, #6]                  
004037cc  0df5f262     add.w r2, sp, #0x790               
004037ce  f262         str r2, [r6, #0x2c]                
004037d0  cde9001a     strd r1, sl, [sp]                  
004037d2  001a         subs r0, r0, r0                    
004037d4  cdf89017     str.w r1, [sp, #0x790]             
004037d6  9017         asrs r0, r2, #0x1e                 
004037d8  0021         movs r1, #0                        
004037da  0292         str r2, [sp, #8]                   
004037dc  0022         movs r2, #0                        
004037de  2b46         mov r3, r5                         
004037e0  01f07ffe     bl #0x4054e2                       
004037e2  7ffe10b1     mrc2 p1, #3, fp, c15, c0, #0       
004037e4  10b1         cbz r0, #0x4037ec                  
004037e6  40f21454     movw r4, #0x514                    
004037e8  1454         strb r4, [r2, r0]                  
004037ea  04e0         b #0x4037f6                        
004037ec  ddf89007     ldr.w r0, [sp, #0x790]             
004037ee  9007         lsls r0, r2, #0x1e                 
004037f0  0024         movs r4, #0                        
004037f2  c9f80000     str.w r0, [sb]                     
004037f4  0000         movs r0, r0                        
004037f6  ddf89407     ldr.w r0, [sp, #0x794]             
004037f8  9407         lsls r4, r2, #0x1e                 
004037fa  08b1         cbz r0, #0x403800                  
004037fc  01f00dff     bl #0x40561a                       
004037fe  0dff         (undecodable)
00403800  ddf8f807     ldr.w r0, [sp, #0x7f8]             
00403802  f807         lsls r0, r7, #0x1f                 
00403804  0028         cmp r0, #0                         
00403806  3ff47eaf     beq.w #0x403706                    
00403808  7eaf         add r7, sp, #0x1f8                 
0040380a  01f018ff     bl #0x40563e                       
0040380c  18ff7ae7     vaba.u16 q7, q4, q13               
0040380e  7ae7         b #0x403706                        
00403810  e928         cmp r0, #0xe9                      
00403812  4000         lsls r0, r0, #1                    
00403814  3000         movs r0, r6                        
00403816  00a1         adr r1, #0                         
00403818  3003         lsls r0, r6, #0xc                  
0040381a  00c0         (undecodable)
0040381c  3001         lsls r0, r6, #4                    
0040381e  00d0         beq #0x403822                      
00403820  3000         movs r0, r6                        
00403822  0060         str r0, [r0]                       
00403824  f8b5         push {r3, r4, r5, r6, r7, lr}      
00403826  40f26625     movw r5, #0x266                    
00403828  6625         movs r5, #0x66                     
0040382a  0028         cmp r0, #0                         
0040382c  53d0         beq #0x4038d6                      
0040382e  0e46         mov r6, r1                         
00403830  0029         cmp r1, #0                         
00403832  50d0         beq #0x4038d6                      
00403834  00f10807     add.w r7, r0, #8                   
00403836  0807         lsls r0, r1, #0x1c                 
00403838  0446         mov r4, r0                         
0040383a  7821         movs r1, #0x78                     
0040383c  3846         mov r0, r7                         
0040383e  fdf7e3fc     bl #0x401208                       
00403840  e3fc8020     stc2l p0, c2, [r3], #0x200         
00403842  8020         movs r0, #0x80                     
00403844  2146         mov r1, r4                         
00403846  2070         strb r0, [r4]                      
00403848  0120         movs r0, #1                        
0040384a  01f85c0f     strb r0, [r1, #0x5c]!              
0040384c  5c0f         lsrs r4, r3, #0x1d                 
0040384e  0025         movs r5, #0                        
00403850  84f85d50     strb.w r5, [r4, #0x5d]             
00403852  5d50         str r5, [r3, r1]                   
00403854  2246         mov r2, r4                         
00403856  cd70         strb r5, [r1, #3]                  
00403858  8d70         strb r5, [r1, #2]                  
0040385a  2146         mov r1, r4                         
0040385c  01f8040f     strb r0, [r1, #4]!                 
0040385e  040f         lsrs r4, r0, #0x1c                 
00403860  6571         strb r5, [r4, #5]                  
00403862  e570         strb r5, [r4, #3]                  
00403864  a570         strb r5, [r4, #2]                  
00403866  6570         strb r5, [r4, #1]                  
00403868  cd70         strb r5, [r1, #3]                  
0040386a  8d70         strb r5, [r1, #2]                  
0040386c  d6e90201     ldrd r0, r1, [r6, #8]              
0040386e  0201         lsls r2, r0, #4                    
00403870  0b0e         lsrs r3, r1, #0x18                 
00403872  02f8241f     strb r1, [r2, #0x24]!              
00403874  241f         subs r4, r4, #4                    
00403876  d370         strb r3, [r2, #3]                  
00403878  0b0c         lsrs r3, r1, #0x10                 
0040387a  090a         lsrs r1, r1, #8                    
0040387c  9370         strb r3, [r2, #2]                  
0040387e  84f82510     strb.w r1, [r4, #0x25]             
00403880  2510         asrs r5, r4, #0x20                 
00403882  2146         mov r1, r4                         
00403884  01f8200f     strb r0, [r1, #0x20]!              
00403886  200f         lsrs r0, r4, #0x1c                 
00403888  020e         lsrs r2, r0, #0x18                 
0040388a  ca70         strb r2, [r1, #3]                  
0040388c  020c         lsrs r2, r0, #0x10                 
0040388e  000a         lsrs r0, r0, #8                    
00403890  8a70         strb r2, [r1, #2]                  
00403892  84f82100     strb.w r0, [r4, #0x21]             
00403894  2100         movs r1, r4                        
00403896  04f13000     add.w r0, r4, #0x30                
00403898  3000         movs r0, r6                        
0040389a  06f11001     add.w r1, r6, #0x10                
0040389c  1001         lsls r0, r2, #4                    
0040389e  1022         movs r2, #0x10                     
004038a0  fdf73cec     blx #0x40111c                      
004038a2  3cec3068     ldc p8, c6, [ip], #-0xc0           
004038a4  3068         ldr r0, [r6]                       
004038a6  2146         mov r1, r4                         
004038a8  01f8400f     strb r0, [r1, #0x40]!              
004038aa  400f         lsrs r0, r0, #0x1d                 
004038ac  020e         lsrs r2, r0, #0x18                 
004038ae  ca70         strb r2, [r1, #3]                  
004038b0  020c         lsrs r2, r0, #0x10                 
004038b2  000a         lsrs r0, r0, #8                    
004038b4  8a70         strb r2, [r1, #2]                  
004038b6  84f84100     strb.w r0, [r4, #0x41]             
004038b8  4100         lsls r1, r0, #1                    
004038ba  3846         mov r0, r7                         
004038bc  1021         movs r1, #0x10                     
004038be  01f0d1fe     bl #0x405664                       
004038c0  d1fe2046     cdp2 p6, #0xd, c4, c1, c0, #1      
004038c2  2046         mov r0, r4                         
004038c4  01f062fc     bl #0x40518c                       
004038c6  62fc28b1     stc2l p1, c11, [r2], #-0xa0        
004038c8  28b1         cbz r0, #0x4038d6                  
004038ca  0646         mov r6, r0                         
004038cc  2046         mov r0, r4                         
004038ce  8021         movs r1, #0x80                     
004038d0  fdf79afc     bl #0x401208                       
004038d2  9afc3546     ldc2 p6, c4, [sl], {0x35}          
004038d4  3546         mov r5, r6                         
004038d6  2846         mov r0, r5                         
004038d8  f8bd         pop {r3, r4, r5, r6, r7, pc}       
004038da  0000         movs r0, r0                        
004038dc  7cb5         push {r2, r3, r4, r5, r6, lr}      
004038de  0e46         mov r6, r1                         
004038e0  10a1         adr r1, #0x40                      
004038e2  0546         mov r5, r0                         
004038e4  0020         movs r0, #0                        
004038e6  1446         mov r4, r2                         
004038e8  01f04cfe     bl #0x405584                       
004038ea  4cfe112c     mcr2 p12, #2, r2, c12, c1, #0      
004038ec  112c         cmp r4, #0x11                      
004038ee  0cd3         blo #0x40390a                      
004038f0  06f11000     add.w r0, r6, #0x10                
004038f2  1000         movs r0, r2                        
004038f4  a4f11001     sub.w r1, r4, #0x10                
004038f6  1001         lsls r0, r2, #4                    
004038f8  2a1d         adds r2, r5, #4                    
004038fa  1023         movs r3, #0x10                     
004038fc  0096         str r6, [sp]                       
004038fe  fef711fe     bl #0x402524                       
00403900  11fe0446     cdp2 p6, #1, c4, c1, c4, #0        
00403902  0446         mov r4, r0                         
00403904  18b9         cbnz r0, #0x40390e                 
00403906  0024         movs r4, #0                        
00403908  06e0         b #0x403918                        
0040390a  40f23224     movw r4, #0x232                    
0040390c  3224         movs r4, #0x32                     
0040390e  0d49         ldr r1, [pc, #0x34]                
00403910  0020         movs r0, #0                        
00403912  2246         mov r2, r4                         
00403914  01f036fe     bl #0x405584                       
00403916  36fe0ba1     cdp2 p1, #3, c10, c6, c11, #0      
00403918  0ba1         adr r1, #0x2c                      
0040391a  0020         movs r0, #0                        
0040391c  01f032fe     bl #0x405584                       
0040391e  32fe2046     cdp2 p6, #3, c4, c2, c0, #1        
00403920  2046         mov r0, r4                         
00403922  7cbd         pop {r2, r3, r4, r5, r6, pc}       
00403924  414d         ldr r5, [pc, #0x104]               
00403926  445f         ldrsh r4, [r0, r5]                 
00403928  5441         adcs r4, r2                        
0040392a  5f47         bxns fp                            
0040392c  4350         str r3, [r0, r1]                   
0040392e  3a20         movs r0, #0x3a                     
00403930  4765         str r7, [r0, #0x54]                
00403932  6e65         str r6, [r5, #0x54]                
00403934  7261         str r2, [r6, #0x14]                
00403936  7465         str r4, [r6, #0x54]                
00403938  4f4d         ldr r5, [pc, #0x13c]               
0040393a  4143         muls r1, r0, r1                    
0040393c  2045         cmp r0, r4                         
0040393e  4e54         strb r6, [r1, r1]                  
00403940  4552         strh r5, [r0, r1]                  
00403942  0a00         movs r2, r1                        
00403944  8f6c         ldr r7, [r1, #0x48]                
00403946  4000         lsls r0, r0, #1                    
00403948  414d         ldr r5, [pc, #0x104]               
0040394a  445f         ldrsh r4, [r0, r5]                 
0040394c  5441         adcs r4, r2                        
0040394e  5f47         bxns fp                            
00403950  4350         str r3, [r0, r1]                   
00403952  3a20         movs r0, #0x3a                     
00403954  4765         str r7, [r0, #0x54]                
00403956  6e65         str r6, [r5, #0x54]                
00403958  7261         str r2, [r6, #0x14]                
0040395a  7465         str r4, [r6, #0x54]                
0040395c  4f4d         ldr r5, [pc, #0x13c]               
0040395e  4143         muls r1, r0, r1                    
00403960  2045         cmp r0, r4                         
00403962  5849         ldr r1, [pc, #0x160]               
00403964  540a         lsrs r4, r2, #9                    
00403966  0000         movs r0, r0                        
00403968  2de9f045     push.w {r4, r5, r6, r7, r8, sl, lr} 
0040396a  f045         cmp r8, lr                         
0040396c  91b0         sub sp, #0x44                      
0040396e  dff87c81     ldr.w r8, [pc, #0x17c]             
00403970  7c81         strh r4, [r7, #0xa]                
00403972  0646         mov r6, r0                         
00403974  0c46         mov r4, r1                         
00403976  0d46         mov r5, r1                         
00403978  5da1         adr r1, #0x174                     
0040397a  d8f80000     ldr.w r0, [r8]                     
0040397c  0000         movs r0, r0                        
0040397e  1090         str r0, [sp, #0x40]                
00403980  1020         movs r0, #0x10                     
00403982  0790         str r0, [sp, #0x1c]                
00403984  0020         movs r0, #0                        
00403986  55f8107f     ldr r7, [r5, #0x10]!               
00403988  107f         ldrb r0, [r2, #0x1c]               
0040398a  cde90e00     strd r0, r0, [sp, #0x38]           
0040398c  0e00         movs r6, r1                        
0040398e  cde90a00     strd r0, r0, [sp, #0x28]           
00403990  0a00         movs r2, r1                        
00403992  cde90400     strd r0, r0, [sp, #0x10]           
00403994  0400         movs r4, r0                        
00403996  cde90c00     strd r0, r0, [sp, #0x30]           
00403998  0c00         movs r4, r1                        
0040399a  cde90800     strd r0, r0, [sp, #0x20]           
0040399c  0800         movs r0, r1                        
0040399e  0690         str r0, [sp, #0x18]                
004039a0  cde90200     strd r0, r0, [sp, #8]              
004039a2  0200         movs r2, r0                        
004039a4  0020         movs r0, #0                        
004039a6  01f0edfd     bl #0x405584                       
004039a8  edfd202f     stc2l p15, c2, [sp, #0x80]!        
004039aa  202f         cmp r7, #0x20                      
004039ac  12d3         blo #0x4039d4                      
004039ae  6f49         ldr r1, [pc, #0x1bc]               
004039b0  0020         movs r0, #0                        
004039b2  01f0e7fd     bl #0x405584                       
004039b4  e7fd644c     stc2l p12, c4, [r7, #0x190]!       
004039b6  644c         ldr r4, [pc, #0x190]               
004039b8  0320         movs r0, #3                        
004039ba  4ff47041     mov.w r1, #0xf000                  
004039bc  7041         adcs r0, r6                        
004039be  a047         blx r4                             
004039c0  0320         movs r0, #3                        
004039c2  0021         movs r1, #0                        
004039c4  a047         blx r4                             
004039c6  0320         movs r0, #3                        
004039c8  40f21341     movw r1, #0x413                    
004039ca  1341         asrs r3, r2                        
004039cc  40f21345     movw r5, #0x413                    
004039ce  1345         cmp r3, r2                         
004039d0  a047         blx r4                             
004039d2  6de0         b #0x403ab0                        
004039d4  05f1040a     add.w sl, r5, #4                   
004039d6  040a         lsrs r4, r0, #8                    
004039d8  08a8         add r0, sp, #0x20                  
004039da  1022         movs r2, #0x10                     
004039dc  5146         mov r1, sl                         
004039de  01f095ff     bl #0x40590c                       
004039e0  95ff90b3     vrsra.u64 d11, d0, #0x2b           
004039e2  90b3         cbz r0, #0x403a4a                  
004039e4  4b4d         ldr r5, [pc, #0x12c]               
004039e6  05aa         add r2, sp, #0x14                  
004039e8  8021         movs r1, #0x80                     
004039ea  05f11040     add.w r0, r5, #-0x70000000         
004039ec  1040         ands r0, r2                        
004039ee  01f05ffd     bl #0x4054b0                       
004039f0  5ffde8b9     ldc2l p9, c11, [pc, #-0x3a0]       
004039f2  e8b9         cbnz r0, #0x403a30                 
004039f4  1020         movs r0, #0x10                     
004039f6  02a9         add r1, sp, #8                     
004039f8  0490         str r0, [sp, #0x10]                
004039fa  4ff04040     mov.w r0, #-0x40000000             
004039fc  4040         eors r0, r0                        
004039fe  0290         str r0, [sp, #8]                   
00403a00  07eb4700     add.w r0, r7, r7, lsl #1           
00403a02  4700         lsls r7, r0, #1                    
00403a04  0122         movs r2, #1                        
00403a06  06ebc000     add.w r0, r6, r0, lsl #3           
00403a08  c000         lsls r0, r0, #3                    
00403a0a  0830         adds r0, #8                        
00403a0c  0390         str r0, [sp, #0xc]                 
00403a0e  0598         ldr r0, [sp, #0x14]                
00403a10  01f09cfe     bl #0x40574c                       
00403a12  9cfe60b9     cdp2 p9, #9, c11, c12, c0, #3      
00403a14  60b9         cbnz r0, #0x403a30                 
00403a16  06a8         add r0, sp, #0x18                  
00403a18  2946         mov r1, r5                         
00403a1a  0122         movs r2, #1                        
00403a1c  8023         movs r3, #0x80                     
00403a1e  01f029fd     bl #0x405474                       
00403a20  29fd28b9     stc2 p9, c11, [sb, #-0xa0]!        
00403a22  28b9         cbnz r0, #0x403a30                 
00403a24  dde90510     ldrd r1, r0, [sp, #0x14]           
00403a26  0510         asrs r5, r0, #0x20                 
00403a28  01f0aafe     bl #0x405780                       
00403a2a  aafe0028     cdp2 p8, #0xa, c2, c10, c0, #0     
00403a2c  0028         cmp r0, #0                         
00403a2e  4ad0         beq #0x403ac6                      
00403a30  40f21b45     movw r5, #0x41b                    
00403a32  1b45         cmp r3, r3                         
00403a34  0698         ldr r0, [sp, #0x18]                
00403a36  08b1         cbz r0, #0x403a3c                  
00403a38  01f0effd     bl #0x40561a                       
00403a3a  effd0598     stc2l p8, c9, [pc, #0x14]!         
00403a3c  0598         ldr r0, [sp, #0x14]                
00403a3e  08b1         cbz r0, #0x403a44                  
00403a40  01f0fdfd     bl #0x40563e                       
00403a42  fdfdd5b9     ldc2l p9, c11, [sp, #0x354]!       
00403a44  d5b9         cbnz r5, #0x403a7c                 
00403a46  0799         ldr r1, [sp, #0x1c]                
00403a48  09e0         b #0x403a5e                        
00403a4a  07eb4700     add.w r0, r7, r7, lsl #1           
00403a4c  4700         lsls r7, r0, #1                    
00403a4e  0ca9         add r1, sp, #0x30                  
00403a50  06ebc000     add.w r0, r6, r0, lsl #3           
00403a52  c000         lsls r0, r0, #3                    
00403a54  0830         adds r0, #8                        
00403a56  90e86c00     ldm.w r0, {r2, r3, r5, r6}         
00403a58  6c00         lsls r4, r5, #1                    
00403a5a  6cc1         stm r1!, {r2, r3, r5, r6}          
00403a5c  1021         movs r1, #0x10                     
00403a5e  04f12402     add.w r2, r4, #0x24                
00403a60  2402         lsls r4, r4, #8                    
00403a62  0ca8         add r0, sp, #0x30                  
00403a64  07ab         add r3, sp, #0x1c                  
00403a66  02f0f2fb     bl #0x40624e                       
00403a68  f2fb         (undecodable)
00403a6a  c0b1         cbz r0, #0x403a9e                  
00403a6c  2aa1         adr r1, #0xa8                      
00403a6e  0020         movs r0, #0                        
00403a70  40f21542     movw r2, #0x415                    
00403a72  1542         tst r5, r2                         
00403a74  40f21545     movw r5, #0x415                    
00403a76  1545         cmp r5, r2                         
00403a78  01f084fd     bl #0x405584                       
00403a7a  84fd324c     stc2 p12, c4, [r4, #0xc8]          
00403a7c  324c         ldr r4, [pc, #0xc8]                
00403a7e  0020         movs r0, #0                        
00403a80  cde90e00     strd r0, r0, [sp, #0x38]           
00403a82  0e00         movs r6, r1                        
00403a84  4ff47041     mov.w r1, #0xf000                  
00403a86  7041         adcs r0, r6                        
00403a88  cde90c00     strd r0, r0, [sp, #0x30]           
00403a8a  0c00         movs r4, r1                        
00403a8c  0320         movs r0, #3                        
00403a8e  a047         blx r4                             
00403a90  0320         movs r0, #3                        
00403a92  0021         movs r1, #0                        
00403a94  a047         blx r4                             
00403a96  a9b2         uxth r1, r5                        
00403a98  0320         movs r0, #3                        
00403a9a  a047         blx r4                             
00403a9c  04e0         b #0x403aa8                        
00403a9e  0025         movs r5, #0                        
00403aa0  cde90e55     strd r5, r5, [sp, #0x38]           
00403aa2  0e55         strb r6, [r1, r4]                  
00403aa4  cde90c55     strd r5, r5, [sp, #0x30]           
00403aa6  0c55         strb r4, [r1, r4]                  
00403aa8  28a1         adr r1, #0xa0                      
00403aaa  0020         movs r0, #0                        
00403aac  01f06afd     bl #0x405584                       
00403aae  6afdd8f8     stc2l p8, c15, [sl, #-0x360]!      
00403ab0  d8f80000     ldr.w r0, [r8]                     
00403ab2  0000         movs r0, r0                        
00403ab4  1099         ldr r1, [sp, #0x40]                
00403ab6  401a         subs r0, r0, r1                    
00403ab8  02bf         ittt eq                            
00403aba  2846         mov r0, r5                         
00403abc  11b0         add sp, #0x44                      
00403abe  bde8f085     pop.w {r4, r5, r6, r7, r8, sl, pc} 
00403ac0  f085         strh r0, [r6, #0x2e]               
00403ac2  02f046eb     blx #0x406150                      
00403ac4  46eb0698     adc.w r8, r6, r6, lsl #4           
00403ac6  0698         ldr r0, [sp, #0x18]                
00403ac8  0021         movs r1, #0                        
00403aca  0022         movs r2, #0                        
00403acc  01f042fd     bl #0x405554                       
00403ace  42fd0698     stc2l p8, c9, [r2, #-0x18]         
00403ad0  0698         ldr r0, [sp, #0x18]                
00403ad2  07a9         add r1, sp, #0x1c                  
00403ad4  0cab         add r3, sp, #0x30                  
00403ad6  0091         str r1, [sp]                       
00403ad8  5146         mov r1, sl                         
00403ada  1022         movs r2, #0x10                     
00403adc  01f021fd     bl #0x405522                       
00403ade  21fd0546     stc2 p6, c4, [r1, #-0x14]!         
00403ae0  0546         mov r5, r0                         
00403ae2  0028         cmp r0, #0                         
00403ae4  18bf         it ne                              
00403ae6  40f21c45     movw r5, #0x41c                    
00403ae8  1c45         cmp r4, r3                         
00403aea  a3e7         b #0x403a34                        
00403aec  4c61         str r4, [r1, #0x14]                
00403aee  4000         lsls r0, r0, #1                    
00403af0  414d         ldr r5, [pc, #0x104]               
00403af2  445f         ldrsh r4, [r0, r5]                 
00403af4  5441         adcs r4, r2                        
00403af6  5f47         bxns fp                            
00403af8  4350         str r3, [r0, r1]                   
00403afa  3a20         movs r0, #0x3a                     
00403afc  4765         str r7, [r0, #0x54]                
00403afe  7443         muls r4, r6, r4                    
00403b00  6f6e         ldr r7, [r5, #0x64]                
00403b02  7465         str r4, [r6, #0x54]                
00403b04  6e74         strb r6, [r5, #0x11]               
00403b06  4b65         str r3, [r1, #0x54]                
00403b08  7920         movs r0, #0x79                     
00403b0a  454e         ldr r6, [pc, #0x114]               
00403b0c  5445         cmp r4, sl                         
00403b0e  520a         lsrs r2, r2, #9                    
00403b10  0000         movs r0, r0                        
00403b12  0000         movs r0, r0                        
00403b14  1000         movs r0, r2                        
00403b16  0010         asrs r0, r0, #0x20                 
00403b18  414d         ldr r5, [pc, #0x104]               
00403b1a  445f         ldrsh r4, [r0, r5]                 
00403b1c  5441         adcs r4, r2                        
00403b1e  5f47         bxns fp                            
00403b20  4350         str r3, [r0, r1]                   
00403b22  3a20         movs r0, #0x3a                     
00403b24  746c         ldr r4, [r6, #0x44]                
00403b26  4472         strb r4, [r0, #9]                  
00403b28  6d41         adcs r5, r5                        
00403b2a  7069         ldr r0, [r6, #0x14]                
00403b2c  4765         str r7, [r0, #0x54]                
00403b2e  744f         ldr r7, [pc, #0x1d0]               
00403b30  6266         str r2, [r4, #0x64]                
00403b32  4b65         str r3, [r1, #0x54]                
00403b34  7920         movs r0, #0x79                     
00403b36  7374         strb r3, [r6, #0x11]               
00403b38  6174         strb r1, [r4, #0x11]               
00403b3a  7573         strb r5, [r6, #0xd]                
00403b3c  203d         subs r5, #0x20                     
00403b3e  2030         adds r0, #0x20                     
00403b40  7825         movs r5, #0x78                     
00403b42  780a         lsrs r0, r7, #9                    
00403b44  0000         movs r0, r0                        
00403b46  0000         movs r0, r0                        
00403b48  b562         str r5, [r6, #0x28]                
00403b4a  4000         lsls r0, r0, #1                    
00403b4c  414d         ldr r5, [pc, #0x104]               
00403b4e  445f         ldrsh r4, [r0, r5]                 
00403b50  5441         adcs r4, r2                        
00403b52  5f47         bxns fp                            
00403b54  4350         str r3, [r0, r1]                   
00403b56  3a20         movs r0, #0x3a                     
00403b58  4765         str r7, [r0, #0x54]                
00403b5a  7443         muls r4, r6, r4                    
00403b5c  6f6e         ldr r7, [r5, #0x64]                
00403b5e  7465         str r4, [r6, #0x54]                
00403b60  6e74         strb r6, [r5, #0x11]               
00403b62  4b65         str r3, [r1, #0x54]                
00403b64  7920         movs r0, #0x79                     
00403b66  4558         ldr r5, [r0, r1]                   
00403b68  4954         strb r1, [r1, r1]                  
00403b6a  0a00         movs r2, r1                        
00403b6c  c964         str r1, [r1, #0x4c]                
00403b6e  4000         lsls r0, r0, #1                    
00403b70  feb5         push {r1, r2, r3, r4, r5, r6, r7, lr} 
00403b72  1aa1         adr r1, #0x68                      
00403b74  0446         mov r4, r0                         
00403b76  0020         movs r0, #0                        
00403b78  cde90023     strd r2, r3, [sp]                  
00403b7a  0023         movs r3, #0                        
00403b7c  01f002fd     bl #0x405584                       
00403b7e  02fd089d     stc2 p13, c9, [r2, #-0x20]         
00403b80  089d         ldr r5, [sp, #0x20]                
00403b82  402d         cmp r5, #0x40                      
00403b84  18bf         it ne                              
00403b86  202d         cmp r5, #0x20                      
00403b88  14d1         bne #0x403bb4                      
00403b8a  2149         ldr r1, [pc, #0x84]                
00403b8c  0020         movs r0, #0                        
00403b8e  2a46         mov r2, r5                         
00403b90  01f0f8fc     bl #0x405584                       
00403b92  f8fc04f5     ldc2l p5, c15, [r8], #0x10         
00403b94  04f50064     add.w r4, r4, #0x800               
00403b96  0064         str r0, [r0, #0x40]                
00403b98  ed08         lsrs r5, r5, #3                    
00403b9a  4027         movs r7, #0x40                     
00403b9c  6e46         mov r6, sp                         
00403b9e  87b1         cbz r7, #0x403bc2                  
00403ba0  04f11800     add.w r0, r4, #0x18                
00403ba2  1800         movs r0, r3                        
00403ba4  3146         mov r1, r6                         
00403ba6  2a46         mov r2, r5                         
00403ba8  fdf78cfa     bl #0x4010c4                       
00403baa  8cfa         (undecodable)
00403bac  58b1         cbz r0, #0x403bc6                  
00403bae  013f         subs r7, #1                        
00403bb0  5834         adds r4, #0x58                     
00403bb2  f4e7         b #0x403b9e                        
00403bb4  5a49         ldr r1, [pc, #0x168]               
00403bb6  0020         movs r0, #0                        
00403bb8  2a46         mov r2, r5                         
00403bba  0024         movs r4, #0                        
00403bbc  01f0e2fc     bl #0x405584                       
00403bbe  e2fc05e0     stc2l p0, c14, [r2], #0x14         
00403bc0  05e0         b #0x403bce                        
00403bc2  0024         movs r4, #0                        
00403bc4  03e0         b #0x403bce                        
00403bc6  13a1         adr r1, #0x4c                      
00403bc8  0020         movs r0, #0                        
00403bca  01f0dbfc     bl #0x405584                       
00403bcc  dbfc1e49     ldc2l p9, c4, [fp], {0x1e}         
00403bce  1e49         ldr r1, [pc, #0x78]                
00403bd0  0020         movs r0, #0                        
00403bd2  01f0d7fc     bl #0x405584                       
00403bd4  d7fc2046     ldc2l p6, c4, [r7], {0x20}         
00403bd6  2046         mov r0, r4                         
00403bd8  febd         pop {r1, r2, r3, r4, r5, r6, r7, pc} 
00403bda  00bf         nop                                
00403bdc  414d         ldr r5, [pc, #0x104]               
00403bde  445f         ldrsh r4, [r0, r5]                 
00403be0  5441         adcs r4, r2                        
00403be2  5f47         bxns fp                            
00403be4  4350         str r3, [r0, r1]                   
00403be6  3a20         movs r0, #0x3a                     
00403be8  4765         str r7, [r0, #0x54]                
00403bea  7443         muls r4, r6, r4                    
00403bec  7279         ldrb r2, [r6, #5]                  
00403bee  7074         strb r0, [r6, #0x11]               
00403bf0  6f53         strh r7, [r5, r5]                  
00403bf2  6573         strb r5, [r4, #0xd]                
00403bf4  7369         ldr r3, [r6, #0x14]                
00403bf6  6f6e         ldr r7, [r5, #0x64]                
00403bf8  4279         ldrb r2, [r0, #5]                  
00403bfa  4465         str r4, [r0, #0x54]                
00403bfc  636f         ldr r3, [r4, #0x74]                
00403bfe  6465         str r4, [r4, #0x54]                
00403c00  4861         str r0, [r1, #0x14]                
00403c02  6e64         str r6, [r5, #0x44]                
00403c04  6c65         str r4, [r5, #0x54]                
00403c06  2045         cmp r0, r4                         
00403c08  4e54         strb r6, [r1, r1]                  
00403c0a  4552         strh r5, [r0, r1]                  
00403c0c  0a00         movs r2, r1                        
00403c0e  0000         movs r0, r0                        
00403c10  d56a         ldr r5, [r2, #0x2c]                
00403c12  4000         lsls r0, r0, #1                    
00403c14  414d         ldr r5, [pc, #0x104]               
00403c16  445f         ldrsh r4, [r0, r5]                 
00403c18  5441         adcs r4, r2                        
00403c1a  5f47         bxns fp                            
00403c1c  4350         str r3, [r0, r1]                   
00403c1e  3a20         movs r0, #0x3a                     
00403c20  4372         strb r3, [r0, #9]                  
00403c22  7970         strb r1, [r7, #1]                  
00403c24  746f         ldr r4, [r6, #0x74]                
00403c26  2073         strb r0, [r4, #0xc]                
00403c28  6573         strb r5, [r4, #0xd]                
00403c2a  7369         ldr r3, [r6, #0x14]                
00403c2c  6f6e         ldr r7, [r5, #0x64]                
00403c2e  2066         str r0, [r4, #0x60]                
00403c30  6f75         strb r7, [r5, #0x15]               
00403c32  6e64         str r6, [r5, #0x44]                
00403c34  2066         str r0, [r4, #0x60]                
00403c36  6f72         strb r7, [r5, #9]                  
00403c38  2064         str r0, [r4, #0x40]                
00403c3a  6563         str r5, [r4, #0x34]                
00403c3c  6f64         str r7, [r5, #0x44]                
00403c3e  6520         movs r0, #0x65                     
00403c40  6861         str r0, [r5, #0x14]                
00403c42  6e64         str r6, [r5, #0x44]                
00403c44  6c65         str r4, [r5, #0x54]                
00403c46  0a00         movs r2, r1                        
00403c48  536b         ldr r3, [r2, #0x34]                
00403c4a  4000         lsls r0, r0, #1                    
00403c4c  feb5         push {r1, r2, r3, r4, r5, r6, r7, lr} 
00403c4e  1aa1         adr r1, #0x68                      
00403c50  0446         mov r4, r0                         
00403c52  0020         movs r0, #0                        
00403c54  cde90023     strd r2, r3, [sp]                  
00403c56  0023         movs r3, #0                        
00403c58  01f094fc     bl #0x405584                       
00403c5a  94fc089d     ldc2 p13, c9, [r4], {8}            
00403c5c  089d         ldr r5, [sp, #0x20]                
00403c5e  402d         cmp r5, #0x40                      
00403c60  18bf         it ne                              
00403c62  202d         cmp r5, #0x20                      
00403c64  14d1         bne #0x403c90                      
00403c66  2049         ldr r1, [pc, #0x80]                
00403c68  0020         movs r0, #0                        
00403c6a  2a46         mov r2, r5                         
00403c6c  01f08afc     bl #0x405584                       
00403c6e  8afc04f5     stc2 p5, c15, [sl], {4}            
00403c70  04f50064     add.w r4, r4, #0x800               
00403c72  0064         str r0, [r0, #0x40]                
00403c74  ed08         lsrs r5, r5, #3                    
00403c76  4027         movs r7, #0x40                     
00403c78  6e46         mov r6, sp                         
00403c7a  87b1         cbz r7, #0x403c9e                  
00403c7c  04f10800     add.w r0, r4, #8                   
00403c7e  0800         movs r0, r1                        
00403c80  3146         mov r1, r6                         
00403c82  2a46         mov r2, r5                         
00403c84  fdf71efa     bl #0x4010c4                       
00403c86  1efa         (undecodable)
00403c88  58b1         cbz r0, #0x403ca2                  
00403c8a  013f         subs r7, #1                        
00403c8c  5834         adds r4, #0x58                     
00403c8e  f4e7         b #0x403c7a                        
00403c90  2349         ldr r1, [pc, #0x8c]                
00403c92  0020         movs r0, #0                        
00403c94  2a46         mov r2, r5                         
00403c96  0024         movs r4, #0                        
00403c98  01f074fc     bl #0x405584                       
00403c9a  74fc05e0     ldc2l p0, c14, [r4], #-0x14        
00403c9c  05e0         b #0x403caa                        
00403c9e  0024         movs r4, #0                        
00403ca0  03e0         b #0x403caa                        
00403ca2  12a1         adr r1, #0x48                      
00403ca4  0020         movs r0, #0                        
00403ca6  01f06dfc     bl #0x405584                       
00403ca8  6dfc1e49     stc2l p9, c4, [sp], #-0x78         
00403caa  1e49         ldr r1, [pc, #0x78]                
00403cac  0020         movs r0, #0                        
00403cae  01f069fc     bl #0x405584                       
00403cb0  69fc2046     stc2l p6, c4, [sb], #-0x80         
00403cb2  2046         mov r0, r4                         
00403cb4  febd         pop {r1, r2, r3, r4, r5, r6, r7, pc} 
00403cb6  00bf         nop                                
00403cb8  414d         ldr r5, [pc, #0x104]               
00403cba  445f         ldrsh r4, [r0, r5]                 
00403cbc  5441         adcs r4, r2                        
00403cbe  5f47         bxns fp                            
00403cc0  4350         str r3, [r0, r1]                   
00403cc2  3a20         movs r0, #0x3a                     
00403cc4  4765         str r7, [r0, #0x54]                
00403cc6  7443         muls r4, r6, r4                    
00403cc8  7279         ldrb r2, [r6, #5]                  
00403cca  7074         strb r0, [r6, #0x11]               
00403ccc  6f53         strh r7, [r5, r5]                  
00403cce  6573         strb r5, [r4, #0xd]                
00403cd0  7369         ldr r3, [r6, #0x14]                
00403cd2  6f6e         ldr r7, [r5, #0x64]                
00403cd4  4279         ldrb r2, [r0, #5]                  
00403cd6  5541         adcs r5, r2                        
00403cd8  5350         str r3, [r2, r1]                   
00403cda  4861         str r0, [r1, #0x14]                
00403cdc  6e64         str r6, [r5, #0x44]                
00403cde  6c65         str r4, [r5, #0x54]                
00403ce0  2045         cmp r0, r4                         
00403ce2  4e54         strb r6, [r1, r1]                  
00403ce4  4552         strh r5, [r0, r1]                  
00403ce6  0a00         movs r2, r1                        
00403ce8  d56a         ldr r5, [r2, #0x2c]                
00403cea  4000         lsls r0, r0, #1                    
00403cec  414d         ldr r5, [pc, #0x104]               
00403cee  445f         ldrsh r4, [r0, r5]                 
00403cf0  5441         adcs r4, r2                        
00403cf2  5f47         bxns fp                            
00403cf4  4350         str r3, [r0, r1]                   
00403cf6  3a20         movs r0, #0x3a                     
00403cf8  4372         strb r3, [r0, #9]                  
00403cfa  7970         strb r1, [r7, #1]                  
00403cfc  746f         ldr r4, [r6, #0x74]                
00403cfe  2073         strb r0, [r4, #0xc]                
00403d00  6573         strb r5, [r4, #0xd]                
00403d02  7369         ldr r3, [r6, #0x14]                
00403d04  6f6e         ldr r7, [r5, #0x64]                
00403d06  2066         str r0, [r4, #0x60]                
00403d08  6f75         strb r7, [r5, #0x15]               
00403d0a  6e64         str r6, [r5, #0x44]                
00403d0c  2066         str r0, [r4, #0x60]                
00403d0e  6f72         strb r7, [r5, #9]                  
00403d10  2055         strb r0, [r4, r4]                  
00403d12  4153         strh r1, [r0, r5]                  
00403d14  5020         movs r0, #0x50                     
00403d16  6861         str r0, [r5, #0x14]                
00403d18  6e64         str r6, [r5, #0x44]                
00403d1a  6c65         str r4, [r5, #0x54]                
00403d1c  0a00         movs r2, r1                        
00403d1e  0000         movs r0, r0                        
00403d20  b26a         ldr r2, [r6, #0x28]                
00403d22  4000         lsls r0, r0, #1                    
00403d24  246b         ldr r4, [r4, #0x30]                
00403d26  4000         lsls r0, r0, #1                    
00403d28  f8b5         push {r3, r4, r5, r6, r7, lr}      
00403d2a  0c46         mov r4, r1                         
00403d2c  1ba1         adr r1, #0x6c                      
00403d2e  0546         mov r5, r0                         
00403d30  0020         movs r0, #0                        
00403d32  01f027fc     bl #0x405584                       
00403d34  27fc05f5     stc2 p5, c15, [r7], #-0x14         
00403d36  05f50066     add.w r6, r5, #0x800               
00403d38  0066         str r0, [r0, #0x60]                
00403d3a  04f11005     add.w r5, r4, #0x10                
00403d3c  1005         lsls r0, r2, #0x14                 
00403d3e  4027         movs r7, #0x40                     
00403d40  4fb1         cbz r7, #0x403d56                  
00403d42  06f11800     add.w r0, r6, #0x18                
00403d44  1800         movs r0, r3                        
00403d46  2946         mov r1, r5                         
00403d48  0822         movs r2, #8                        
00403d4a  fdf7bbf9     bl #0x4010c4                       
00403d4c  bbf9a8b1     ldrsh.w fp, [fp, #0x1a8]           
00403d4e  a8b1         cbz r0, #0x403d7c                  
00403d50  013f         subs r7, #1                        
00403d52  5836         adds r6, #0x58                     
00403d54  f4e7         b #0x403d40                        
00403d56  2c49         ldr r1, [pc, #0xb0]                
00403d58  0020         movs r0, #0                        
00403d5a  01f013fc     bl #0x405584                       
00403d5c  13fc         (undecodable)
00403d5e  ae4d         ldr r5, [pc, #0x2b8]               
00403d60  0320         movs r0, #3                        
00403d62  4ff47041     mov.w r1, #0xf000                  
00403d64  7041         adcs r0, r6                        
00403d66  a847         blx r5                             
00403d68  0320         movs r0, #3                        
00403d6a  0021         movs r1, #0                        
00403d6c  a847         blx r5                             
00403d6e  0320         movs r0, #3                        
00403d70  40f23131     movw r1, #0x331                    
00403d72  3131         adds r1, #0x31                     
00403d74  40f23134     movw r4, #0x331                    
00403d76  3134         adds r4, #0x31                     
00403d78  a847         blx r5                             
00403d7a  0ce0         b #0x403d96                        
00403d7c  3068         ldr r0, [r6]                       
00403d7e  41f65011     movw r1, #0x1950                   
00403d80  5011         asrs r0, r2, #5                    
00403d82  6050         str r0, [r4, r1]                   
00403d84  11a1         adr r1, #0x44                      
00403d86  0020         movs r0, #0                        
00403d88  0024         movs r4, #0                        
00403d8a  01f0fbfb     bl #0x405584                       
00403d8c  fbfb         (undecodable)
00403d8e  1e49         ldr r1, [pc, #0x78]                
00403d90  0020         movs r0, #0                        
00403d92  01f0f7fb     bl #0x405584                       
00403d94  f7fb         (undecodable)
00403d96  2046         mov r0, r4                         
00403d98  f8bd         pop {r3, r4, r5, r6, r7, pc}       
00403d9a  00bf         nop                                
00403d9c  414d         ldr r5, [pc, #0x104]               
00403d9e  445f         ldrsh r4, [r0, r5]                 
00403da0  5441         adcs r4, r2                        
00403da2  5f47         bxns fp                            
00403da4  4350         str r3, [r0, r1]                   
00403da6  3a20         movs r0, #0x3a                     
00403da8  4765         str r7, [r0, #0x54]                
00403daa  7443         muls r4, r6, r4                    
00403dac  7279         ldrb r2, [r6, #5]                  
00403dae  7074         strb r0, [r6, #0x11]               
00403db0  6f53         strh r7, [r5, r5]                  
00403db2  6573         strb r5, [r4, #0xd]                
00403db4  7369         ldr r3, [r6, #0x14]                
00403db6  6f6e         ldr r7, [r5, #0x64]                
00403db8  466f         ldr r6, [r0, #0x74]                
00403dba  7244         add r2, lr                         
00403dbc  6576         strb r5, [r4, #0x19]               
00403dbe  6963         str r1, [r5, #0x34]                
00403dc0  6520         movs r0, #0x65                     
00403dc2  454e         ldr r6, [pc, #0x114]               
00403dc4  5445         cmp r4, sl                         
00403dc6  520a         lsrs r2, r2, #9                    
00403dc8  0000         movs r0, r0                        
00403dca  0000         movs r0, r0                        
00403dcc  414d         ldr r5, [pc, #0x104]               
00403dce  445f         ldrsh r4, [r0, r5]                 
00403dd0  5441         adcs r4, r2                        
00403dd2  5f47         bxns fp                            
00403dd4  4350         str r3, [r0, r1]                   
00403dd6  3a20         movs r0, #0x3a                     
00403dd8  4765         str r7, [r0, #0x54]                
00403dda  7420         movs r0, #0x74                     
00403ddc  6372         strb r3, [r4, #9]                  
00403dde  7970         strb r1, [r7, #1]                  
00403de0  746f         ldr r4, [r6, #0x74]                
00403de2  2073         strb r0, [r4, #0xc]                
00403de4  6573         strb r5, [r4, #0xd]                
00403de6  7369         ldr r3, [r6, #0x14]                
00403de8  6f6e         ldr r7, [r5, #0x64]                
00403dea  2066         str r0, [r4, #0x60]                
00403dec  6f72         strb r7, [r5, #9]                  
00403dee  2064         str r0, [r4, #0x40]                
00403df0  6563         str r5, [r4, #0x34]                
00403df2  6f64         str r7, [r5, #0x44]                
00403df4  6520         movs r0, #0x65                     
00403df6  6465         str r4, [r4, #0x54]                
00403df8  7669         ldr r6, [r6, #0x14]                
00403dfa  6365         str r3, [r4, #0x54]                
00403dfc  2063         str r0, [r4, #0x30]                
00403dfe  6f6d         ldr r7, [r5, #0x54]                
00403e00  706c         ldr r0, [r6, #0x44]                
00403e02  6574         strb r5, [r4, #0x11]               
00403e04  6564         str r5, [r4, #0x44]                
00403e06  0a00         movs r2, r1                        
00403e08  f86a         ldr r0, [r7, #0x2c]                
00403e0a  4000         lsls r0, r0, #1                    
00403e0c  2de9f043     push.w {r4, r5, r6, r7, r8, sb, lr} 
00403e0e  f043         mvns r0, r6                        
00403e10  91b0         sub sp, #0x44                      
00403e12  dff88891     ldr.w sb, [pc, #0x188]             
00403e14  8891         str r1, [sp, #0x220]               
00403e16  0c46         mov r4, r1                         
00403e18  0646         mov r6, r0                         
00403e1a  61a1         adr r1, #0x184                     
00403e1c  0027         movs r7, #0                        
00403e1e  d9f80000     ldr.w r0, [sb]                     
00403e20  0000         movs r0, r0                        
00403e22  1090         str r0, [sp, #0x40]                
00403e24  0020         movs r0, #0                        
00403e26  01f0adfb     bl #0x405584                       
00403e28  adfb         (undecodable)
00403e2a  2046         mov r0, r4                         
00403e2c  50f8101f     ldr r1, [r0, #0x10]!               
00403e2e  101f         subs r0, r2, #4                    
00403e30  b7eb917f     cmp.w r7, r1, lsr #30              
00403e32  917f         ldrb r1, [r2, #0x1e]               
00403e34  02d0         beq #0x403e3c                      
00403e36  4ff48075     mov.w r5, #0x100                   
00403e38  8075         strb r0, [r0, #0x16]               
00403e3a  84e0         b #0x403f46                        
00403e3c  0d0e         lsrs r5, r1, #0x18                 
00403e3e  5821         movs r1, #0x58                     
00403e40  15fb0161     smlabb r1, r5, r1, r6              
00403e42  0161         str r1, [r0, #0x10]                
00403e44  cde90677     strd r7, r7, [sp, #0x18]           
00403e46  0677         strb r6, [r0, #0x1c]               
00403e48  d1f82018     ldr.w r1, [r1, #0x820]             
00403e4a  2018         adds r0, r4, r0                    
00403e4c  0229         cmp r1, #2                         
00403e4e  06d1         bne #0x403e5e                      
00403e50  626b         ldr r2, [r4, #0x34]                
00403e52  511e         subs r1, r2, #1                    
00403e54  0f29         cmp r1, #0xf                       
00403e56  07d9         bls #0x403e68                      
00403e58  40f27135     movw r5, #0x371                    
00403e5a  7135         adds r5, #0x71                     
00403e5c  61e0         b #0x403f22                        
00403e5e  0025         movs r5, #0                        
00403e60  41f67010     movw r0, #0x1970                   
00403e62  7010         asrs r0, r6, #1                    
00403e64  2550         str r5, [r4, r0]                   
00403e66  5ce0         b #0x403f22                        
00403e68  00f10408     add.w r8, r0, #4                   
00403e6a  0408         lsrs r4, r0, #0x20                 
00403e6c  0021         movs r1, #0                        
00403e6e  08a8         add r0, sp, #0x20                  
00403e70  cde90e11     strd r1, r1, [sp, #0x38]           
00403e72  0e11         asrs r6, r1, #4                    
00403e74  1023         movs r3, #0x10                     
00403e76  cde90a11     strd r1, r1, [sp, #0x28]           
00403e78  0a11         asrs r2, r1, #4                    
00403e7a  cde90c11     strd r1, r1, [sp, #0x30]           
00403e7c  0c11         asrs r4, r1, #4                    
00403e7e  cde90811     strd r1, r1, [sp, #0x20]           
00403e80  0811         asrs r0, r1, #4                    
00403e82  4146         mov r1, r8                         
00403e84  0593         str r3, [sp, #0x14]                
00403e86  01f041fd     bl #0x40590c                       
00403e88  41fd40b3     stc2l p3, c11, [r1, #-0x100]       
00403e8a  40b3         cbz r0, #0x403ede                  
00403e8c  4f4f         ldr r7, [pc, #0x13c]               
00403e8e  07aa         add r2, sp, #0x1c                  
00403e90  8021         movs r1, #0x80                     
00403e92  07f11040     add.w r0, r7, #-0x70000000         
00403e94  1040         ands r0, r2                        
00403e96  01f00bfb     bl #0x4054b0                       
00403e98  0bfb         (undecodable)
00403e9a  e8b9         cbnz r0, #0x403ed8                 
00403e9c  1020         movs r0, #0x10                     
00403e9e  02a9         add r1, sp, #8                     
00403ea0  0490         str r0, [sp, #0x10]                
00403ea2  4ff04040     mov.w r0, #-0x40000000             
00403ea4  4040         eors r0, r0                        
00403ea6  0290         str r0, [sp, #8]                   
00403ea8  5820         movs r0, #0x58                     
00403eaa  15fb0060     smlabb r0, r5, r0, r6              
00403eac  0060         str r0, [r0]                       
00403eae  0122         movs r2, #1                        
00403eb0  00f62400     addw r0, r0, #0x824                
00403eb2  2400         movs r4, r4                        
00403eb4  0390         str r0, [sp, #0xc]                 
00403eb6  0798         ldr r0, [sp, #0x1c]                
00403eb8  01f048fc     bl #0x40574c                       
00403eba  48fc60b9     mcrr2 p9, #6, fp, r8, c0           
00403ebc  60b9         cbnz r0, #0x403ed8                 
00403ebe  06a8         add r0, sp, #0x18                  
00403ec0  3946         mov r1, r7                         
00403ec2  0122         movs r2, #1                        
00403ec4  8023         movs r3, #0x80                     
00403ec6  01f0d5fa     bl #0x405474                       
00403ec8  d5fa         (undecodable)
00403eca  28b9         cbnz r0, #0x403ed8                 
00403ecc  dde90601     ldrd r0, r1, [sp, #0x18]           
00403ece  0601         lsls r6, r0, #4                    
00403ed0  01f056fc     bl #0x405780                       
00403ed2  56fc0028     mrrc2 p8, #0, r2, r6, c0           
00403ed4  0028         cmp r0, #0                         
00403ed6  4ed0         beq #0x403f76                      
00403ed8  40f27235     movw r5, #0x372                    
00403eda  7235         adds r5, #0x72                     
00403edc  21e0         b #0x403f22                        
00403ede  5820         movs r0, #0x58                     
00403ee0  0ca9         add r1, sp, #0x30                  
00403ee2  15fb0060     smlabb r0, r5, r0, r6              
00403ee4  0060         str r0, [r0]                       
00403ee6  00f62400     addw r0, r0, #0x824                
00403ee8  2400         movs r4, r4                        
00403eea  90e86c00     ldm.w r0, {r2, r3, r5, r6}         
00403eec  6c00         lsls r4, r5, #1                    
00403eee  6cc1         stm r1!, {r2, r3, r5, r6}          
00403ef0  1021         movs r1, #0x10                     
00403ef2  606b         ldr r0, [r4, #0x34]                
00403ef4  41f67013     movw r3, #0x1970                   
00403ef6  7013         asrs r0, r6, #0xd                  
00403ef8  e050         str r0, [r4, r3]                   
00403efa  41f65010     movw r0, #0x1950                   
00403efc  5010         asrs r0, r2, #1                    
00403efe  2218         adds r2, r4, r0                    
00403f00  1c44         add r4, r3                         
00403f02  0ca8         add r0, sp, #0x30                  
00403f04  2346         mov r3, r4                         
00403f06  02f0a2f9     bl #0x40624e                       
00403f08  a2f910b1     vld2.8 {d11[0], d12[0]}, [r2:0x10], r0 
00403f0a  10b1         cbz r0, #0x403f12                  
00403f0c  4ff45c75     mov.w r5, #0x370                   
00403f0e  5c75         strb r4, [r3, #0x15]               
00403f10  07e0         b #0x403f22                        
00403f12  2068         ldr r0, [r4]                       
00403f14  2ea1         adr r1, #0xb8                      
00403f16  0025         movs r5, #0                        
00403f18  1030         adds r0, #0x10                     
00403f1a  2060         str r0, [r4]                       
00403f1c  0020         movs r0, #0                        
00403f1e  01f031fb     bl #0x405584                       
00403f20  31fb         (undecodable)
00403f22  3b49         ldr r1, [pc, #0xec]                
00403f24  0020         movs r0, #0                        
00403f26  2a46         mov r2, r5                         
00403f28  01f02cfb     bl #0x405584                       
00403f2a  2cfb0698     smlad r8, ip, r6, sb               
00403f2c  0698         ldr r0, [sp, #0x18]                
00403f2e  08b1         cbz r0, #0x403f34                  
00403f30  01f073fb     bl #0x40561a                       
00403f32  73fb0798     usada8 r8, r3, r7, sb              
00403f34  0798         ldr r0, [sp, #0x1c]                
00403f36  08b1         cbz r0, #0x403f3c                  
00403f38  01f081fb     bl #0x40563e                       
00403f3a  81fb         (undecodable)
00403f3c  3549         ldr r1, [pc, #0xd4]                
00403f3e  0020         movs r0, #0                        
00403f40  01f020fb     bl #0x405584                       
00403f42  20fb         (undecodable)
00403f44  adb1         cbz r5, #0x403f72                  
00403f46  fb4c         ldr r4, [pc, #0x3ec]               
00403f48  0320         movs r0, #3                        
00403f4a  4ff47041     mov.w r1, #0xf000                  
00403f4c  7041         adcs r0, r6                        
00403f4e  a047         blx r4                             
00403f50  0320         movs r0, #3                        
00403f52  0021         movs r1, #0                        
00403f54  a047         blx r4                             
00403f56  0320         movs r0, #3                        
00403f58  2946         mov r1, r5                         
00403f5a  a047         blx r4                             
00403f5c  d9f80000     ldr.w r0, [sb]                     
00403f5e  0000         movs r0, r0                        
00403f60  1099         ldr r1, [sp, #0x40]                
00403f62  401a         subs r0, r0, r1                    
00403f64  02bf         ittt eq                            
00403f66  2846         mov r0, r5                         
00403f68  11b0         add sp, #0x44                      
00403f6a  bde8f083     pop.w {r4, r5, r6, r7, r8, sb, pc} 
00403f6c  f083         strh r0, [r6, #0x1e]               
00403f6e  02f0f0e8     blx #0x406150                      
00403f70  f0e80025     ldrd r2, r5, [r0], #0              
00403f72  0025         movs r5, #0                        
00403f74  f2e7         b #0x403f5c                        
00403f76  0698         ldr r0, [sp, #0x18]                
00403f78  0021         movs r1, #0                        
00403f7a  0022         movs r2, #0                        
00403f7c  01f0eafa     bl #0x405554                       
00403f7e  eafa         (undecodable)
00403f80  626b         ldr r2, [r4, #0x34]                
00403f82  05a9         add r1, sp, #0x14                  
00403f84  0698         ldr r0, [sp, #0x18]                
00403f86  0cab         add r3, sp, #0x30                  
00403f88  0091         str r1, [sp]                       
00403f8a  4146         mov r1, r8                         
00403f8c  01f0c9fa     bl #0x405522                       
00403f8e  c9fa         (undecodable)
00403f90  10b1         cbz r0, #0x403f98                  
00403f92  40f27335     movw r5, #0x373                    
00403f94  7335         adds r5, #0x73                     
00403f96  c4e7         b #0x403f22                        
00403f98  0599         ldr r1, [sp, #0x14]                
00403f9a  aae7         b #0x403ef2                        
00403f9c  4c61         str r4, [r1, #0x14]                
00403f9e  4000         lsls r0, r0, #1                    
00403fa0  414d         ldr r5, [pc, #0x104]               
00403fa2  445f         ldrsh r4, [r0, r5]                 
00403fa4  5441         adcs r4, r2                        
00403fa6  5f47         bxns fp                            
00403fa8  4350         str r3, [r0, r1]                   
00403faa  3a20         movs r0, #0x3a                     
00403fac  4765         str r7, [r0, #0x54]                
00403fae  744f         ldr r7, [pc, #0x1d0]               
00403fb0  6266         str r2, [r4, #0x64]                
00403fb2  4b65         str r3, [r1, #0x54]                
00403fb4  7943         muls r1, r7, r1                    
00403fb6  7279         ldrb r2, [r6, #5]                  
00403fb8  7074         strb r0, [r6, #0x11]               
00403fba  6f53         strh r7, [r5, r5]                  
00403fbc  6573         strb r5, [r4, #0xd]                
00403fbe  7369         ldr r3, [r6, #0x14]                
00403fc0  6f6e         ldr r7, [r5, #0x64]                
00403fc2  2045         cmp r0, r4                         
00403fc4  4e54         strb r6, [r1, r1]                  
00403fc6  4552         strh r5, [r0, r1]                  
00403fc8  0a00         movs r2, r1                        
00403fca  0000         movs r0, r0                        
00403fcc  1000         movs r0, r2                        
00403fce  0010         asrs r0, r0, #0x20                 
00403fd0  414d         ldr r5, [pc, #0x104]               
00403fd2  445f         ldrsh r4, [r0, r5]                 
00403fd4  5441         adcs r4, r2                        
00403fd6  5f47         bxns fp                            
00403fd8  4350         str r3, [r0, r1]                   
00403fda  3a20         movs r0, #0x3a                     
00403fdc  4765         str r7, [r0, #0x54]                
00403fde  7420         movs r0, #0x74                     
00403fe0  6f62         str r7, [r5, #0x24]                
00403fe2  6675         strb r6, [r4, #0x15]               
00403fe4  7363         str r3, [r6, #0x34]                
00403fe6  6174         strb r1, [r4, #0x11]               
00403fe8  6564         str r5, [r4, #0x44]                
00403fea  206b         ldr r0, [r4, #0x30]                
00403fec  6579         ldrb r5, [r4, #5]                  
00403fee  2066         str r0, [r4, #0x60]                
00403ff0  6f72         strb r7, [r5, #9]                  
00403ff2  2063         str r0, [r4, #0x30]                
00403ff4  7279         ldrb r2, [r6, #5]                  
00403ff6  7074         strb r0, [r6, #0x11]               
00403ff8  6f20         movs r0, #0x6f                     
00403ffa  7365         str r3, [r6, #0x54]                
00403ffc  7373         strb r3, [r6, #0xd]                
00403ffe  696f         ldr r1, [r5, #0x74]                
00404000  6e20         movs r0, #0x6e                     
00404002  636f         ldr r3, [r4, #0x74]                
00404004  6d70         strb r5, [r5, #1]                  
00404006  6c65         str r4, [r5, #0x54]                
00404008  7465         str r4, [r6, #0x54]                
0040400a  640a         lsrs r4, r4, #9                    
0040400c  0000         movs r0, r0                        
0040400e  0000         movs r0, r0                        
00404010  5d6c         ldr r5, [r3, #0x44]                
00404012  4000         lsls r0, r0, #1                    
00404014  346c         ldr r4, [r6, #0x40]                
00404016  4000         lsls r0, r0, #1                    
00404018  b562         str r5, [r6, #0x28]                
0040401a  4000         lsls r0, r0, #1                    
0040401c  b0b5         push {r4, r5, r7, lr}              
0040401e  a0b0         sub sp, #0x80                      
00404020  0c4d         ldr r5, [pc, #0x30]                
00404022  2868         ldr r0, [r5]                       
00404024  a0b9         cbnz r0, #0x404050                 
00404026  6c46         mov r4, sp                         
00404028  04f10800     add.w r0, r4, #8                   
0040402a  0800         movs r0, r1                        
0040402c  2021         movs r1, #0x20                     
0040402e  fdf70df9     bl #0x40124c                       
00404030  0df941f2     vst1.16 {d15, d16, d17, d18}, [sp], r1 
00404032  41f23b00     movw r0, #0x103b                   
00404034  3b00         movs r3, r7                        
00404036  2146         mov r1, r4                         
00404038  0090         str r0, [sp]                       
0040403a  0220         movs r0, #2                        
0040403c  0190         str r0, [sp, #4]                   
0040403e  0120         movs r0, #1                        
00404040  f2df         svc #0xf2                          
00404042  0146         mov r1, r0                         
00404044  0122         movs r2, #1                        
00404046  0e98         ldr r0, [sp, #0x38]                
00404048  0029         cmp r1, #0                         
0040404a  18bf         it ne                              
0040404c  1046         mov r0, r2                         
0040404e  2860         str r0, [r5]                       
00404050  20b0         add sp, #0x80                      
00404052  b0bd         pop {r4, r5, r7, pc}               
00404054  606e         ldr r0, [r4, #0x64]                
00404056  4100         lsls r1, r0, #1                    
00404058  10b5         push {r4, lr}                      
0040405a  0446         mov r4, r0                         
0040405c  4ff48070     mov.w r0, #0x100                   
0040405e  8070         strb r0, [r0, #2]                  
00404060  44b1         cbz r4, #0x404074                  
00404062  39b1         cbz r1, #0x404074                  
00404064  2046         mov r0, r4                         
00404066  12b1         cbz r2, #0x40406e                  
00404068  00f066f8     bl #0x404138                       
0040406a  66f8         (undecodable)
0040406c  01e0         b #0x404072                        
0040406e  00f00bf8     bl #0x404088                       
00404070  0bf8         (undecodable)
00404072  00b1         cbz r0, #0x404076                  
00404074  10bd         pop {r4, pc}                       
00404076  2046         mov r0, r4                         
00404078  02f033f9     bl #0x4062e2                       
0040407a  33f9         (undecodable)
0040407c  0028         cmp r0, #0                         
0040407e  18bf         it ne                              
00404080  40f26320     movw r0, #0x263                    
00404082  6320         movs r0, #0x63                     
00404084  10bd         pop {r4, pc}                       
00404086  0000         movs r0, r0                        
00404088  b0b5         push {r4, r5, r7, lr}              
0040408a  8ab0         sub sp, #0x28                      
0040408c  0d46         mov r5, r1                         
0040408e  0446         mov r4, r0                         
00404090  6846         mov r0, sp                         
00404092  2821         movs r1, #0x28                     
00404094  fdf7daf8     bl #0x40124c                       
00404096  daf84ff4     ldr.w pc, [sl, #0x44f]             
00404098  4ff48070     mov.w r0, #0x100                   
0040409a  8070         strb r0, [r0, #2]                  
0040409c  002c         cmp r4, #0                         
0040409e  37d0         beq #0x404110                      
004040a0  002d         cmp r5, #0                         
004040a2  35d0         beq #0x404110                      
004040a4  6846         mov r0, sp                         
004040a6  02f0e5f8     bl #0x406274                       
004040a8  e5f8         (undecodable)
004040aa  0028         cmp r0, #0                         
004040ac  30d1         bne #0x404110                      
004040ae  0198         ldr r0, [sp, #4]                   
004040b0  421e         subs r2, r0, #1                    
004040b2  40f26320     movw r0, #0x263                    
004040b4  6320         movs r0, #0x63                     
004040b6  0a2a         cmp r2, #0xa                       
004040b8  2ad8         bhi #0x404110                      
004040ba  1649         ldr r1, [pc, #0x58]                
004040bc  dfe802f0     tbb [pc, r2]                       
004040be  02f01c06     and r6, r2, #0x1c                  
004040c0  1c06         lsls r4, r3, #0x18                 
004040c2  080a         lsrs r0, r1, #8                    
004040c4  0e10         asrs r6, r1, #0x20                 
004040c6  1219         adds r2, r2, r4                    
004040c8  2828         cmp r0, #0x28                      
004040ca  1b00         movs r3, r3                        
004040cc  1649         ldr r1, [pc, #0x58]                
004040ce  13e0         b #0x4040f8                        
004040d0  1649         ldr r1, [pc, #0x58]                
004040d2  11e0         b #0x4040f8                        
004040d4  0298         ldr r0, [sp, #8]                   
004040d6  174a         ldr r2, [pc, #0x5c]                
004040d8  0e49         ldr r1, [pc, #0x38]                
004040da  06e0         b #0x4040ea                        
004040dc  1449         ldr r1, [pc, #0x50]                
004040de  0be0         b #0x4040f8                        
004040e0  0f49         ldr r1, [pc, #0x3c]                
004040e2  09e0         b #0x4040f8                        
004040e4  0298         ldr r0, [sp, #8]                   
004040e6  0f4a         ldr r2, [pc, #0x3c]                
004040e8  0f49         ldr r1, [pc, #0x3c]                
004040ea  0228         cmp r0, #2                         
004040ec  08bf         it eq                              
004040ee  1146         mov r1, r2                         
004040f0  02e0         b #0x4040f8                        
004040f2  0949         ldr r1, [pc, #0x24]                
004040f4  00e0         b #0x4040f8                        
004040f6  0949         ldr r1, [pc, #0x24]                
004040f8  b5f5986f     cmp.w r5, #0x4c0                   
004040fa  986f         ldr r0, [r3, #0x78]                
004040fc  02d2         bhs #0x404104                      
004040fe  40f26320     movw r0, #0x263                    
00404100  6320         movs r0, #0x63                     
00404102  05e0         b #0x404110                        
00404104  2046         mov r0, r4                         
00404106  4ff49862     mov.w r2, #0x4c0                   
00404108  9862         str r0, [r3, #0x28]                
0040410a  fdf708e8     blx #0x40111c                      
0040410c  08e8         (undecodable)
0040410e  0020         movs r0, #0                        
00404110  0ab0         add sp, #0x28                      
00404112  b0bd         pop {r4, r5, r7, pc}               
00404114  a6a5         adr r5, #0x298                     
00404116  4000         lsls r0, r0, #1                    
00404118  a692         str r2, [sp, #0x298]               
0040411a  4000         lsls r0, r0, #1                    
0040411c  e68d         ldrh r6, [r4, #0x2e]               
0040411e  4000         lsls r0, r0, #1                    
00404120  2689         ldrh r6, [r4, #8]                  
00404122  4000         lsls r0, r0, #1                    
00404124  6697         str r7, [sp, #0x198]               
00404126  4000         lsls r0, r0, #1                    
00404128  269c         ldr r4, [sp, #0x98]                
0040412a  4000         lsls r0, r0, #1                    
0040412c  e6a0         adr r0, #0x398                     
0040412e  4000         lsls r0, r0, #1                    
00404130  26af         add r7, sp, #0x98                  
00404132  4000         lsls r0, r0, #1                    
00404134  66aa         add r2, sp, #0x198                 
00404136  4000         lsls r0, r0, #1                    
00404138  b0b5         push {r4, r5, r7, lr}              
0040413a  8ab0         sub sp, #0x28                      
0040413c  0d46         mov r5, r1                         
0040413e  0446         mov r4, r0                         
00404140  6846         mov r0, sp                         
00404142  2821         movs r1, #0x28                     
00404144  fdf782f8     bl #0x40124c                       
00404146  82f84ff4     strb.w pc, [r2, #0x44f]            
00404148  4ff48070     mov.w r0, #0x100                   
0040414a  8070         strb r0, [r0, #2]                  
0040414c  002c         cmp r4, #0                         
0040414e  00f08580     beq.w #0x40425c                    
00404150  8580         strh r5, [r0, #4]                  
00404152  002d         cmp r5, #0                         
00404154  00f08280     beq.w #0x40425c                    
00404156  8280         strh r2, [r0, #4]                  
00404158  6846         mov r0, sp                         
0040415a  02f08bf8     bl #0x406274                       
0040415c  8bf80028     strb.w r2, [fp, #0x800]            
0040415e  0028         cmp r0, #0                         
00404160  40f07c80     bne.w #0x40425c                    
00404162  7c80         strh r4, [r7, #2]                  
00404164  0198         ldr r0, [sp, #4]                   
00404166  421e         subs r2, r0, #1                    
00404168  40f26320     movw r0, #0x263                    
0040416a  6320         movs r0, #0x63                     
0040416c  262a         cmp r2, #0x26                      
0040416e  00f27580     bhi.w #0x40425c                    
00404170  7580         strh r5, [r6, #2]                  
00404172  3b49         ldr r1, [pc, #0xec]                
00404174  dfe802f0     tbb [pc, r2]                       
00404176  02f06614     and r4, r2, #0x660066              
00404178  6614         asrs r6, r4, #0x11                 
0040417a  1618         adds r6, r2, r0                    
0040417c  1c1e         subs r4, r3, #0                    
0040417e  2024         movs r4, #0x20                     
00404180  2672         strb r6, [r4, #8]                  
00404182  282a         cmp r2, #0x28                      
00404184  722c         cmp r4, #0x72                      
00404186  2e30         adds r0, #0x2e                     
00404188  3234         adds r4, #0x32                     
0040418a  383a         subs r2, #0x38                     
0040418c  3c3e         subs r6, #0x3c                     
0040418e  4547         bxns r8                            
00404190  494b         ldr r3, [pc, #0x124]               
00404192  4d4f         ldr r7, [pc, #0x134]               
00404194  5153         strh r1, [r2, r5]                  
00404196  5557         ldrsb r5, [r2, r5]                 
00404198  595b         ldrh r1, [r3, r5]                  
0040419a  5d5f         ldrsh r5, [r3, r5]                 
0040419c  6163         str r1, [r4, #0x34]                
0040419e  6500         lsls r5, r4, #1                    
004041a0  5149         ldr r1, [pc, #0x144]               
004041a2  4fe0         b #0x404244                        
004041a4  5149         ldr r1, [pc, #0x144]               
004041a6  4de0         b #0x404244                        
004041a8  0298         ldr r0, [sp, #8]                   
004041aa  524a         ldr r2, [pc, #0x148]               
004041ac  2c49         ldr r1, [pc, #0xb0]                
004041ae  24e0         b #0x4041fa                        
004041b0  4f49         ldr r1, [pc, #0x13c]               
004041b2  47e0         b #0x404244                        
004041b4  4a49         ldr r1, [pc, #0x128]               
004041b6  45e0         b #0x404244                        
004041b8  0298         ldr r0, [sp, #8]                   
004041ba  4a4a         ldr r2, [pc, #0x128]               
004041bc  4a49         ldr r1, [pc, #0x128]               
004041be  1ce0         b #0x4041fa                        
004041c0  4549         ldr r1, [pc, #0x114]               
004041c2  3fe0         b #0x404244                        
004041c4  3849         ldr r1, [pc, #0xe0]                
004041c6  3de0         b #0x404244                        
004041c8  4449         ldr r1, [pc, #0x110]               
004041ca  3be0         b #0x404244                        
004041cc  4149         ldr r1, [pc, #0x104]               
004041ce  39e0         b #0x404244                        
004041d0  2949         ldr r1, [pc, #0xa4]                
004041d2  37e0         b #0x404244                        
004041d4  3e49         ldr r1, [pc, #0xf8]                
004041d6  35e0         b #0x404244                        
004041d8  3249         ldr r1, [pc, #0xc8]                
004041da  33e0         b #0x404244                        
004041dc  3b49         ldr r1, [pc, #0xec]                
004041de  31e0         b #0x404244                        
004041e0  0298         ldr r0, [sp, #8]                   
004041e2  2e4a         ldr r2, [pc, #0xb8]                
004041e4  2e49         ldr r1, [pc, #0xb8]                
004041e6  08e0         b #0x4041fa                        
004041e8  3749         ldr r1, [pc, #0xdc]                
004041ea  2be0         b #0x404244                        
004041ec  3549         ldr r1, [pc, #0xd4]                
004041ee  29e0         b #0x404244                        
004041f0  2949         ldr r1, [pc, #0xa4]                
004041f2  27e0         b #0x404244                        
004041f4  0298         ldr r0, [sp, #8]                   
004041f6  254a         ldr r2, [pc, #0x94]                
004041f8  2549         ldr r1, [pc, #0x94]                
004041fa  0228         cmp r0, #2                         
004041fc  08bf         it eq                              
004041fe  1146         mov r1, r2                         
00404200  20e0         b #0x404244                        
00404202  2449         ldr r1, [pc, #0x90]                
00404204  1ee0         b #0x404244                        
00404206  2d49         ldr r1, [pc, #0xb4]                
00404208  1ce0         b #0x404244                        
0040420a  2d49         ldr r1, [pc, #0xb4]                
0040420c  1ae0         b #0x404244                        
0040420e  1d49         ldr r1, [pc, #0x74]                
00404210  18e0         b #0x404244                        
00404212  1e49         ldr r1, [pc, #0x78]                
00404214  16e0         b #0x404244                        
00404216  1c49         ldr r1, [pc, #0x70]                
00404218  14e0         b #0x404244                        
0040421a  2749         ldr r1, [pc, #0x9c]                
0040421c  12e0         b #0x404244                        
0040421e  2549         ldr r1, [pc, #0x94]                
00404220  10e0         b #0x404244                        
00404222  1749         ldr r1, [pc, #0x5c]                
00404224  0ee0         b #0x404244                        
00404226  1549         ldr r1, [pc, #0x54]                
00404228  0ce0         b #0x404244                        
0040422a  1249         ldr r1, [pc, #0x48]                
0040422c  0ae0         b #0x404244                        
0040422e  1049         ldr r1, [pc, #0x40]                
00404230  08e0         b #0x404244                        
00404232  0e49         ldr r1, [pc, #0x38]                
00404234  06e0         b #0x404244                        
00404236  0c49         ldr r1, [pc, #0x30]                
00404238  04e0         b #0x404244                        
0040423a  0a49         ldr r1, [pc, #0x28]                
0040423c  02e0         b #0x404244                        
0040423e  1b49         ldr r1, [pc, #0x6c]                
00404240  00e0         b #0x404244                        
00404242  1b49         ldr r1, [pc, #0x6c]                
00404244  b5f5986f     cmp.w r5, #0x4c0                   
00404246  986f         ldr r0, [r3, #0x78]                
00404248  02d2         bhs #0x404250                      
0040424a  40f26320     movw r0, #0x263                    
0040424c  6320         movs r0, #0x63                     
0040424e  05e0         b #0x40425c                        
00404250  2046         mov r0, r4                         
00404252  4ff49862     mov.w r2, #0x4c0                   
00404254  9862         str r0, [r3, #0x28]                
00404256  fcf762ef     blx #0x40111c                      
00404258  62ef0020     vhadd.s32 d18, d2, d0              
0040425a  0020         movs r0, #0                        
0040425c  0ab0         add sp, #0x28                      
0040425e  b0bd         pop {r4, r5, r7, pc}               
00404260  e64b         ldr r3, [pc, #0x398]               
00404262  4100         lsls r1, r0, #1                    
00404264  9c69         ldr r4, [r3, #0x18]                
00404266  4100         lsls r1, r0, #1                    
00404268  e6d9         bls #0x404238                      
0040426a  4000         lsls r0, r0, #1                    
0040426c  e6c6         stm r6!, {r1, r2, r5, r6, r7}      
0040426e  4000         lsls r0, r0, #1                    
00404270  26c2         stm r2!, {r1, r2, r5}              
00404272  4000         lsls r0, r0, #1                    
00404274  66d0         beq #0x404344                      
00404276  4000         lsls r0, r0, #1                    
00404278  e6b3         cbz r6, #0x4042f4                  
0040427a  4000         lsls r0, r0, #1                    
0040427c  a6cb         ldm r3!, {r1, r2, r5, r7}          
0040427e  4000         lsls r0, r0, #1                    
00404280  2647         bxns r4                            
00404282  4100         lsls r1, r0, #1                    
00404284  6642         rsbs r6, r4, #0                    
00404286  4100         lsls r1, r0, #1                    
00404288  66bd         pop {r1, r2, r5, r6, pc}           
0040428a  4000         lsls r0, r0, #1                    
0040428c  2621         movs r1, #0x26                     
0040428e  4100         lsls r1, r0, #1                    
00404290  661c         adds r6, r4, #1                    
00404292  4100         lsls r1, r0, #1                    
00404294  26d5         bpl #0x4042e4                      
00404296  4000         lsls r0, r0, #1                    
00404298  2634         adds r4, #0x26                     
0040429a  4100         lsls r1, r0, #1                    
0040429c  a62a         cmp r2, #0xa6                      
0040429e  4100         lsls r1, r0, #1                    
004042a0  e625         movs r5, #0xe6                     
004042a2  4100         lsls r1, r0, #1                    
004042a4  a6b8         (undecodable)
004042a6  4000         lsls r0, r0, #1                    
004042a8  662f         cmp r7, #0x66                      
004042aa  4100         lsls r1, r0, #1                    
004042ac  dc64         str r4, [r3, #0x4c]                
004042ae  4100         lsls r1, r0, #1                    
004042b0  1c60         str r4, [r3]                       
004042b2  4100         lsls r1, r0, #1                    
004042b4  e612         asrs r6, r4, #0xb                  
004042b6  4100         lsls r1, r0, #1                    
004042b8  260e         lsrs r6, r4, #0x18                 
004042ba  4100         lsls r1, r0, #1                    
004042bc  6609         lsrs r6, r4, #5                    
004042be  4100         lsls r1, r0, #1                    
004042c0  a604         lsls r6, r4, #0x12                 
004042c2  4100         lsls r1, r0, #1                    
004042c4  e6ff4000     vmla.i32 q8, q3, d0[0]             
004042c6  4000         lsls r0, r0, #1                    
004042c8  26fb         (undecodable)
004042ca  4000         lsls r0, r0, #1                    
004042cc  66f6         (undecodable)
004042ce  4000         lsls r0, r0, #1                    
004042d0  a6f14000     sub.w r0, r6, #0x40                
004042d2  4000         lsls r0, r0, #1                    
004042d4  e6ec4000     stcl p0, c0, [r6], #0x100          
004042d6  4000         lsls r0, r0, #1                    
004042d8  26e8         (undecodable)
004042da  4000         lsls r0, r0, #1                    
004042dc  66e3         b #0x4049ac                        
004042de  4000         lsls r0, r0, #1                    
004042e0  a6de         udf #0xa6                          
004042e2  4000         lsls r0, r0, #1                    
004042e4  a617         asrs r6, r4, #0x1e                 
004042e6  4100         lsls r1, r0, #1                    
004042e8  e638         subs r0, #0xe6                     
004042ea  4100         lsls r1, r0, #1                    
004042ec  a63d         subs r5, #0xa6                     
004042ee  4100         lsls r1, r0, #1                    
004042f0  6655         strb r6, [r4, r5]                  
004042f2  4100         lsls r1, r0, #1                    
004042f4  a650         str r6, [r4, r2]                   
004042f6  4100         lsls r1, r0, #1                    
004042f8  10b5         push {r4, lr}                      
004042fa  58b1         cbz r0, #0x404314                  
004042fc  00f5f051     add.w r1, r0, #0x1e00              
004042fe  f051         str r0, [r6, r7]                   
00404300  0122         movs r2, #1                        
00404302  0024         movs r4, #0                        
00404304  c1e90042     strd r4, r2, [r1]                  
00404306  0042         tst r0, r0                         
00404308  8a60         str r2, [r1, #8]                   
0040430a  4ff4f051     mov.w r1, #0x1e00                  
0040430c  f051         str r0, [r6, r7]                   
0040430e  fcf79dff     bl #0x40124c                       
00404310  9dff0ce0     vaddl.u16 q7, d13, d12             
00404312  0ce0         b #0x40432e                        
00404314  fb4c         ldr r4, [pc, #0x3ec]               
00404316  0320         movs r0, #3                        
00404318  4ff47041     mov.w r1, #0xf000                  
0040431a  7041         adcs r0, r6                        
0040431c  a047         blx r4                             
0040431e  0320         movs r0, #3                        
00404320  4ff6ff71     movw r1, #0xffff                   
00404322  ff71         strb r7, [r7, #7]                  
00404324  a047         blx r4                             
00404326  0320         movs r0, #3                        
00404328  0621         movs r1, #6                        
0040432a  a047         blx r4                             
0040432c  024c         ldr r4, [pc, #8]                   
0040432e  2046         mov r0, r4                         
00404330  10bd         pop {r4, pc}                       
00404332  00bf         nop                                
00404334  b562         str r5, [r6, #0x28]                
00404336  4000         lsls r0, r0, #1                    
00404338  0600         movs r6, r0                        
0040433a  ffffb0b5     vsli.64 d27, d16, #0x3f            
0040433c  b0b5         push {r4, r5, r7, lr}              
0040433e  c0b1         cbz r0, #0x404372                  
00404340  0c46         mov r4, r1                         
00404342  b1b1         cbz r1, #0x404372                  
00404344  0546         mov r5, r0                         
00404346  01f064ff     bl #0x406212                       
00404348  64ff0e28     vsub.i32 d18, d4, d14              
0040434a  0e28         cmp r0, #0xe                       
0040434c  20d1         bne #0x404390                      
0040434e  0e20         movs r0, #0xe                      
00404350  4ff47041     mov.w r1, #0xf000                  
00404352  7041         adcs r0, r6                        
00404354  a060         str r0, [r4, #8]                   
00404356  0320         movs r0, #3                        
00404358  ea4c         ldr r4, [pc, #0x3a8]               
0040435a  a047         blx r4                             
0040435c  0320         movs r0, #3                        
0040435e  4ff6ff71     movw r1, #0xffff                   
00404360  ff71         strb r7, [r7, #7]                  
00404362  a047         blx r4                             
00404364  0320         movs r0, #3                        
00404366  0a21         movs r1, #0xa                      
00404368  a047         blx r4                             
0040436a  4b48         ldr r0, [pc, #0x12c]               
0040436c  00f10a01     add.w r1, r0, #0xa                 
0040436e  0a01         lsls r2, r1, #4                    
00404370  90e0         b #0x404494                        
00404372  e44c         ldr r4, [pc, #0x390]               
00404374  0320         movs r0, #3                        
00404376  4ff47041     mov.w r1, #0xf000                  
00404378  7041         adcs r0, r6                        
0040437a  a047         blx r4                             
0040437c  0320         movs r0, #3                        
0040437e  4ff6ff71     movw r1, #0xffff                   
00404380  ff71         strb r7, [r7, #7]                  
00404382  a047         blx r4                             
00404384  0320         movs r0, #3                        
00404386  0621         movs r1, #6                        
00404388  a047         blx r4                             
0040438a  4348         ldr r0, [pc, #0x10c]               
0040438c  811d         adds r1, r0, #6                    
0040438e  81e0         b #0x404494                        
00404390  2168         ldr r1, [r4]                       
00404392  4ff60260     movw r0, #0xfe02                   
00404394  0260         str r2, [r0]                       
00404396  081a         subs r0, r1, r0                    
00404398  0f28         cmp r0, #0xf                       
0040439a  0ed8         bhi #0x4043ba                      
0040439c  dfe800f0     tbb [pc, r0]                       
0040439e  00f0081a     and sl, r0, #0x80008               
004043a0  081a         subs r0, r1, r0                    
004043a2  1a1a         subs r2, r3, r0                    
004043a4  1a2a         cmp r2, #0x1a                      
004043a6  2f34         adds r4, #0x2f                     
004043a8  393e         subs r6, #0x39                     
004043aa  4348         ldr r0, [pc, #0x10c]               
004043ac  4d52         strh r5, [r1, r1]                  
004043ae  575c         ldrb r7, [r2, r1]                  
004043b0  2846         mov r0, r5                         
004043b2  2146         mov r1, r4                         
004043b4  fff72afd     bl #0x403e0c                       
004043b6  2afd66e0     stc2 p0, c14, [sl, #-0x198]!       
004043b8  66e0         b #0x404488                        
004043ba  481e         subs r0, r1, #1                    
004043bc  0428         cmp r0, #4                         
004043be  09d8         bhi #0x4043d4                      
004043c0  dfe800f0     tbb [pc, r0]                       
004043c2  00f0035e     and lr, r0, #0x20c00000            
004043c4  035e         ldrsh r3, [r0, r0]                 
004043c6  4f54         strb r7, [r1, r1]                  
004043c8  5900         lsls r1, r3, #1                    
004043ca  2846         mov r0, r5                         
004043cc  2146         mov r1, r4                         
004043ce  fef7d7f9     bl #0x402780                       
004043d0  d7f9         (undecodable)
004043d2  59e0         b #0x404488                        
004043d4  cb4d         ldr r5, [pc, #0x32c]               
004043d6  0320         movs r0, #3                        
004043d8  4ff47041     mov.w r1, #0xf000                  
004043da  7041         adcs r0, r6                        
004043dc  a847         blx r5                             
004043de  0320         movs r0, #3                        
004043e0  4ff6ff71     movw r1, #0xffff                   
004043e2  ff71         strb r7, [r7, #7]                  
004043e4  a847         blx r5                             
004043e6  0320         movs r0, #3                        
004043e8  0021         movs r1, #0                        
004043ea  a847         blx r5                             
004043ec  2a49         ldr r1, [pc, #0xa8]                
004043ee  4ff48170     mov.w r0, #0x102                   
004043f0  8170         strb r1, [r0, #2]                  
004043f2  4ae0         b #0x40448a                        
004043f4  2846         mov r0, r5                         
004043f6  2146         mov r1, r4                         
004043f8  fef738fe     bl #0x40306c                       
004043fa  38fe44e0     cdp2 p0, #3, c14, c8, c4, #2       
004043fc  44e0         b #0x404488                        
004043fe  2846         mov r0, r5                         
00404400  2146         mov r1, r4                         
00404402  00f04bf8     bl #0x40449c                       
00404404  4bf83fe0     str.w lr, [fp, pc, lsl #3]         
00404406  3fe0         b #0x404488                        
00404408  2846         mov r0, r5                         
0040440a  2146         mov r1, r4                         
0040440c  fef750fb     bl #0x402ab0                       
0040440e  50fb         (undecodable)
00404410  3ae0         b #0x404488                        
00404412  2846         mov r0, r5                         
00404414  2146         mov r1, r4                         
00404416  00f007fa     bl #0x404828                       
00404418  07fa         (undecodable)
0040441a  35e0         b #0x404488                        
0040441c  2846         mov r0, r5                         
0040441e  2146         mov r1, r4                         
00404420  fef736ff     bl #0x403290                       
00404422  36ff30e0     vqadd.u64 d14, d6, d16             
00404424  30e0         b #0x404488                        
00404426  2846         mov r0, r5                         
00404428  2146         mov r1, r4                         
0040442a  fef7abfe     bl #0x403184                       
0040442c  abfe2be0     cdp2 p0, #0xa, c14, c11, c11, #1   
0040442e  2be0         b #0x404488                        
00404430  2846         mov r0, r5                         
00404432  2146         mov r1, r4                         
00404434  fef792ff     bl #0x40335c                       
00404436  92ff26e0     vaddl.u16 q7, d2, d22              
00404438  26e0         b #0x404488                        
0040443a  2846         mov r0, r5                         
0040443c  2146         mov r1, r4                         
0040443e  00f0d1f8     bl #0x4045e4                       
00404440  d1f821e0     ldr.w lr, [r1, #0x21]              
00404442  21e0         b #0x404488                        
00404444  2846         mov r0, r5                         
00404446  2146         mov r1, r4                         
00404448  fff76efc     bl #0x403d28                       
0040444a  6efc1ce0     stc2l p0, c14, [lr], #-0x70        
0040444c  1ce0         b #0x404488                        
0040444e  2846         mov r0, r5                         
00404450  2146         mov r1, r4                         
00404452  00f033ff     bl #0x4052bc                       
00404454  33ff17e0     vqadd.u64 d14, d3, d7              
00404456  17e0         b #0x404488                        
00404458  2846         mov r0, r5                         
0040445a  2146         mov r1, r4                         
0040445c  fff750f8     bl #0x403500                       
0040445e  50f812e0     ldr.w lr, [r0, r2, lsl #1]         
00404460  12e0         b #0x404488                        
00404462  2846         mov r0, r5                         
00404464  2146         mov r1, r4                         
00404466  fef7cff8     bl #0x402608                       
00404468  cff8         (undecodable)
0040446a  0de0         b #0x404488                        
0040446c  2846         mov r0, r5                         
0040446e  2146         mov r1, r4                         
00404470  fff77afa     bl #0x403968                       
00404472  7afa         (undecodable)
00404474  08e0         b #0x404488                        
00404476  2846         mov r0, r5                         
00404478  2146         mov r1, r4                         
0040447a  fef761fa     bl #0x402940                       
0040447c  61fa         (undecodable)
0040447e  03e0         b #0x404488                        
00404480  2846         mov r0, r5                         
00404482  2146         mov r1, r4                         
00404484  00f00afe     bl #0x40509c                       
00404486  0afe0021     cdp2 p1, #0, c2, c10, c0, #0       
00404488  0021         movs r1, #0                        
0040448a  2268         ldr r2, [r4]                       
0040448c  42f00042     orr r2, r2, #0x80000000            
0040448e  0042         tst r0, r0                         
00404490  c4e90120     strd r2, r0, [r4, #4]              
00404492  0120         movs r0, #1                        
00404494  0846         mov r0, r1                         
00404496  b0bd         pop {r4, r5, r7, pc}               
00404498  0000         movs r0, r0                        
0040449a  ffff2de9     vtbl.8 d30, {d15, d16}, d29        
0040449c  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
0040449e  f041         rors r0, r6                        
004044a0  c4b0         sub sp, #0x110                     
004044a2  384e         ldr r6, [pc, #0xe0]                
004044a4  0c46         mov r4, r1                         
004044a6  0546         mov r5, r0                         
004044a8  37a1         adr r1, #0xdc                      
004044aa  3068         ldr r0, [r6]                       
004044ac  4390         str r0, [sp, #0x10c]               
004044ae  0020         movs r0, #0                        
004044b0  01f068f8     bl #0x405584                       
004044b2  68f8         (undecodable)
004044b4  54f8100f     ldr r0, [r4, #0x10]!               
004044b6  100f         lsrs r0, r2, #0x1c                 
004044b8  b0f1805f     cmp.w r0, #0x10000000              
004044ba  805f         ldrsh r0, [r0, r6]                 
004044bc  0dd3         blo #0x4044da                      
004044be  d94d         ldr r5, [pc, #0x364]               
004044c0  0320         movs r0, #3                        
004044c2  4ff47041     mov.w r1, #0xf000                  
004044c4  7041         adcs r0, r6                        
004044c6  a847         blx r5                             
004044c8  0320         movs r0, #3                        
004044ca  0021         movs r1, #0                        
004044cc  a847         blx r5                             
004044ce  4ff48074     mov.w r4, #0x100                   
004044d0  8074         strb r0, [r0, #0x12]               
004044d2  0320         movs r0, #3                        
004044d4  4ff48071     mov.w r1, #0x100                   
004044d6  8071         strb r0, [r0, #6]                  
004044d8  35e0         b #0x404546                        
004044da  000e         lsrs r0, r0, #0x18                 
004044dc  00eb8000     add.w r0, r0, r0, lsl #2           
004044de  8000         lsls r0, r0, #2                    
004044e0  05eb0017     add.w r7, r5, r0, lsl #4           
004044e2  0017         asrs r0, r0, #0x1c                 
004044e4  d7f80403     ldr.w r0, [r7, #0x304]             
004044e6  0403         lsls r4, r0, #0xc                  
004044e8  0128         cmp r0, #1                         
004044ea  02d1         bne #0x4044f2                      
004044ec  40f26124     movw r4, #0x261                    
004044ee  6124         movs r4, #0x61                     
004044f0  1be0         b #0x40452a                        
004044f2  d7f81803     ldr.w r0, [r7, #0x318]             
004044f4  1803         lsls r0, r3, #0xc                  
004044f6  0128         cmp r0, #1                         
004044f8  15d1         bne #0x404526                      
004044fa  02ad         add r5, sp, #8                     
004044fc  4ff48071     mov.w r1, #0x100                   
004044fe  8071         strb r0, [r0, #6]                  
00404500  4ff48078     mov.w r8, #0x100                   
00404502  8078         ldrb r0, [r0, #2]                  
00404504  2846         mov r0, r5                         
00404506  fcf7a1fe     bl #0x40124c                       
00404508  a1fe0120     cdp2 p0, #0xa, c2, c1, c1, #0      
0040450a  0120         movs r0, #1                        
0040450c  01ab         add r3, sp, #4                     
0040450e  0090         str r0, [sp]                       
00404510  201d         adds r0, r4, #4                    
00404512  4ff48071     mov.w r1, #0x100                   
00404514  8071         strb r0, [r0, #6]                  
00404516  2a46         mov r2, r5                         
00404518  cdf80480     str.w r8, [sp, #4]                 
0040451a  0480         strh r4, [r0]                      
0040451c  fff784f8     bl #0x403628                       
0040451e  84f8e0b1     strb.w fp, [r4, #0x1e0]            
00404520  e0b1         cbz r0, #0x40455c                  
00404522  0446         mov r4, r0                         
00404524  01e0         b #0x40452a                        
00404526  40f26224     movw r4, #0x262                    
00404528  6224         movs r4, #0x62                     
0040452a  2449         ldr r1, [pc, #0x90]                
0040452c  0020         movs r0, #0                        
0040452e  01f029f8     bl #0x405584                       
00404530  29f8bc4d     strh r4, [sb, #-0xbc]!             
00404532  bc4d         ldr r5, [pc, #0x2f0]               
00404534  0320         movs r0, #3                        
00404536  4ff47041     mov.w r1, #0xf000                  
00404538  7041         adcs r0, r6                        
0040453a  a847         blx r5                             
0040453c  210c         lsrs r1, r4, #0x10                 
0040453e  0320         movs r0, #3                        
00404540  a847         blx r5                             
00404542  a1b2         uxth r1, r4                        
00404544  0320         movs r0, #3                        
00404546  a847         blx r5                             
00404548  3068         ldr r0, [r6]                       
0040454a  4399         ldr r1, [sp, #0x10c]               
0040454c  401a         subs r0, r0, r1                    
0040454e  02bf         ittt eq                            
00404550  2046         mov r0, r4                         
00404552  44b0         add sp, #0x110                     
00404554  bde8f081     pop.w {r4, r5, r6, r7, r8, pc}     
00404556  f081         strh r0, [r6, #0xe]                
00404558  01f0faed     blx #0x406150                      
0040455a  faed07f5     ldcl p5, c15, [sl, #0x1c]!         
0040455c  07f54670     add.w r0, r7, #0x318               
0040455e  4670         strb r6, [r0, #1]                  
00404560  07f54771     add.w r1, r7, #0x31c               
00404562  4771         strb r7, [r0, #5]                  
00404564  95e89c00     ldm.w r5, {r2, r3, r4, r7}         
00404566  9c00         lsls r4, r3, #2                    
00404568  9cc1         stm r1!, {r2, r3, r4, r7}          
0040456a  0221         movs r1, #2                        
0040456c  0024         movs r4, #0                        
0040456e  0160         str r1, [r0]                       
00404570  13a1         adr r1, #0x4c                      
00404572  0020         movs r0, #0                        
00404574  01f006f8     bl #0x405584                       
00404576  06f81049     strb r4, [r6], #-0x10              
00404578  1049         ldr r1, [pc, #0x40]                
0040457a  0020         movs r0, #0                        
0040457c  01f002f8     bl #0x405584                       
0040457e  02f8         (undecodable)
00404580  e2e7         b #0x404548                        
00404582  00bf         nop                                
00404584  4c61         str r4, [r1, #0x14]                
00404586  4000         lsls r0, r0, #1                    
00404588  414d         ldr r5, [pc, #0x104]               
0040458a  445f         ldrsh r4, [r0, r5]                 
0040458c  5441         adcs r4, r2                        
0040458e  5f47         bxns fp                            
00404590  4350         str r3, [r0, r1]                   
00404592  3a20         movs r0, #0x3a                     
00404594  4b65         str r3, [r1, #0x54]                
00404596  7945         cmp r1, pc                         
00404598  7863         str r0, [r7, #0x34]                
0040459a  6861         str r0, [r5, #0x14]                
0040459c  6e67         str r6, [r5, #0x74]                
0040459e  6541         adcs r5, r4                        
004045a0  7574         strb r5, [r6, #0x11]               
004045a2  6865         str r0, [r5, #0x54]                
004045a4  6e74         strb r6, [r5, #0x11]               
004045a6  6963         str r1, [r5, #0x34]                
004045a8  6174         strb r1, [r4, #0x11]               
004045aa  6564         str r5, [r4, #0x44]                
004045ac  5365         str r3, [r2, #0x54]                
004045ae  7373         strb r3, [r6, #0xd]                
004045b0  696f         ldr r1, [r5, #0x74]                
004045b2  6e20         movs r0, #0x6e                     
004045b4  454e         ldr r6, [pc, #0x114]               
004045b6  5445         cmp r4, sl                         
004045b8  520a         lsrs r2, r2, #9                    
004045ba  0000         movs r0, r0                        
004045bc  ba66         str r2, [r7, #0x68]                
004045be  4000         lsls r0, r0, #1                    
004045c0  414d         ldr r5, [pc, #0x104]               
004045c2  445f         ldrsh r4, [r0, r5]                 
004045c4  5441         adcs r4, r2                        
004045c6  5f47         bxns fp                            
004045c8  4350         str r3, [r0, r1]                   
004045ca  3a20         movs r0, #0x3a                     
004045cc  4b65         str r3, [r1, #0x54]                
004045ce  7920         movs r0, #0x79                     
004045d0  6578         ldrb r5, [r4, #1]                  
004045d2  6368         ldr r3, [r4, #4]                   
004045d4  616e         ldr r1, [r4, #0x64]                
004045d6  6765         str r7, [r4, #0x54]                
004045d8  2063         str r0, [r4, #0x30]                
004045da  6f6d         ldr r7, [r5, #0x54]                
004045dc  706c         ldr r0, [r6, #0x44]                
004045de  6574         strb r5, [r4, #0x11]               
004045e0  6564         str r5, [r4, #0x44]                
004045e2  0a00         movs r2, r1                        
004045e4  2de9f047     push.w {r4, r5, r6, r7, r8, sb, sl, lr} 
004045e6  f047         blx lr                             
004045e8  c4b0         sub sp, #0x110                     
004045ea  dff8e480     ldr.w r8, [pc, #0xe4]              
004045ec  e480         strh r4, [r4, #6]                  
004045ee  0c46         mov r4, r1                         
004045f0  0546         mov r5, r0                         
004045f2  38a1         adr r1, #0xe0                      
004045f4  d8f80000     ldr.w r0, [r8]                     
004045f6  0000         movs r0, r0                        
004045f8  4390         str r0, [sp, #0x10c]               
004045fa  0020         movs r0, #0                        
004045fc  00f0c2ff     bl #0x405584                       
004045fe  c2ff         (undecodable)
00404600  54f8100f     ldr r0, [r4, #0x10]!               
00404602  100f         lsrs r0, r2, #0x1c                 
00404604  b0f1804f     cmp.w r0, #0x40000000              
00404606  804f         ldr r7, [pc, #0x200]               
00404608  0dd3         blo #0x404626                      
0040460a  3e4d         ldr r5, [pc, #0xf8]                
0040460c  0320         movs r0, #3                        
0040460e  4ff47041     mov.w r1, #0xf000                  
00404610  7041         adcs r0, r6                        
00404612  a847         blx r5                             
00404614  0320         movs r0, #3                        
00404616  0021         movs r1, #0                        
00404618  a847         blx r5                             
0040461a  4ff48074     mov.w r4, #0x100                   
0040461c  8074         strb r0, [r0, #0x12]               
0040461e  0320         movs r0, #3                        
00404620  4ff48071     mov.w r1, #0x100                   
00404622  8071         strb r0, [r0, #6]                  
00404624  32e0         b #0x40468c                        
00404626  070e         lsrs r7, r0, #0x18                 
00404628  5820         movs r0, #0x58                     
0040462a  17fb0056     smlabb r6, r7, r0, r5              
0040462c  0056         ldrsb r0, [r0, r0]                 
0040462e  d6f82008     ldr.w r0, [r6, #0x820]             
00404630  2008         lsrs r0, r4, #0x20                 
00404632  0128         cmp r0, #1                         
00404634  1ad1         bne #0x40466c                      
00404636  0df10809     add.w sb, sp, #8                   
00404638  0809         lsrs r0, r1, #4                    
0040463a  4ff48071     mov.w r1, #0x100                   
0040463c  8071         strb r0, [r0, #6]                  
0040463e  4ff4807a     mov.w sl, #0x100                   
00404640  807a         ldrb r0, [r0, #0xa]                
00404642  4846         mov r0, sb                         
00404644  fcf702fe     bl #0x40124c                       
00404646  02fe0120     cdp2 p0, #0, c2, c2, c1, #0        
00404648  0120         movs r0, #1                        
0040464a  01ab         add r3, sp, #4                     
0040464c  0090         str r0, [sp]                       
0040464e  201d         adds r0, r4, #4                    
00404650  4ff48071     mov.w r1, #0x100                   
00404652  8071         strb r0, [r0, #6]                  
00404654  4a46         mov r2, sb                         
00404656  cdf804a0     str.w sl, [sp, #4]                 
00404658  04a0         adr r0, #0x10                      
0040465a  fef7e5ff     bl #0x403628                       
0040465c  e5ff         (undecodable)
0040465e  08b3         cbz r0, #0x4046a4                  
00404660  2749         ldr r1, [pc, #0x9c]                
00404662  0446         mov r4, r0                         
00404664  0020         movs r0, #0                        
00404666  00f08dff     bl #0x405584                       
00404668  8dff05e0     vaddl.u8 q7, d13, d5               
0040466a  05e0         b #0x404678                        
0040466c  2449         ldr r1, [pc, #0x90]                
0040466e  0020         movs r0, #0                        
00404670  00f088ff     bl #0x405584                       
00404672  88ff         (undecodable)
00404674  40f22134     movw r4, #0x321                    
00404676  2134         adds r4, #0x21                     
00404678  224d         ldr r5, [pc, #0x88]                
0040467a  0320         movs r0, #3                        
0040467c  4ff47041     mov.w r1, #0xf000                  
0040467e  7041         adcs r0, r6                        
00404680  a847         blx r5                             
00404682  210c         lsrs r1, r4, #0x10                 
00404684  0320         movs r0, #3                        
00404686  a847         blx r5                             
00404688  a1b2         uxth r1, r4                        
0040468a  0320         movs r0, #3                        
0040468c  a847         blx r5                             
0040468e  d8f80000     ldr.w r0, [r8]                     
00404690  0000         movs r0, r0                        
00404692  4399         ldr r1, [sp, #0x10c]               
00404694  401a         subs r0, r0, r1                    
00404696  02bf         ittt eq                            
00404698  2046         mov r0, r4                         
0040469a  44b0         add sp, #0x110                     
0040469c  bde8f087     pop.w {r4, r5, r6, r7, r8, sb, sl, pc} 
0040469e  f087         strh r0, [r6, #0x3e]               
004046a0  01f056ed     blx #0x406150                      
004046a2  56ed5821     ldcl p1, c2, [r6, #-0x160]         
004046a4  5821         movs r1, #0x58                     
004046a6  06f50260     add.w r0, r6, #0x820               
004046a8  0260         str r2, [r0]                       
004046aa  17fb0151     smlabb r1, r7, r1, r5              
004046ac  0151         str r1, [r0, r4]                   
004046ae  99e83c00     ldm.w sb, {r2, r3, r4, r5}         
004046b0  3c00         movs r4, r7                        
004046b2  01f62401     addw r1, r1, #0x824                
004046b4  2401         lsls r4, r4, #4                    
004046b6  3cc1         stm r1!, {r2, r3, r4, r5}          
004046b8  0221         movs r1, #2                        
004046ba  0024         movs r4, #0                        
004046bc  0160         str r1, [r0]                       
004046be  12a1         adr r1, #0x48                      
004046c0  0020         movs r0, #0                        
004046c2  00f05fff     bl #0x405584                       
004046c4  5fff0e49     vmls.i16 d20, d15, d14             
004046c6  0e49         ldr r1, [pc, #0x38]                
004046c8  0020         movs r0, #0                        
004046ca  00f05bff     bl #0x405584                       
004046cc  5bff         (undecodable)
004046ce  dee7         b #0x40468e                        
004046d0  4c61         str r4, [r1, #0x14]                
004046d2  4000         lsls r0, r0, #1                    
004046d4  414d         ldr r5, [pc, #0x104]               
004046d6  445f         ldrsh r4, [r0, r5]                 
004046d8  5441         adcs r4, r2                        
004046da  5f47         bxns fp                            
004046dc  4350         str r3, [r0, r1]                   
004046de  3a20         movs r0, #0x3a                     
004046e0  4b65         str r3, [r1, #0x54]                
004046e2  7945         cmp r1, pc                         
004046e4  7863         str r0, [r7, #0x34]                
004046e6  6861         str r0, [r5, #0x14]                
004046e8  6e67         str r6, [r5, #0x74]                
004046ea  6543         muls r5, r4, r5                    
004046ec  7279         ldrb r2, [r6, #5]                  
004046ee  7074         strb r0, [r6, #0x11]               
004046f0  6f53         strh r7, [r5, r5]                  
004046f2  6573         strb r5, [r4, #0xd]                
004046f4  7369         ldr r3, [r6, #0x14]                
004046f6  6f6e         ldr r7, [r5, #0x64]                
004046f8  2045         cmp r0, r4                         
004046fa  4e54         strb r6, [r1, r1]                  
004046fc  4552         strh r5, [r0, r1]                  
004046fe  0a00         movs r2, r1                        
00404700  846b         ldr r4, [r0, #0x38]                
00404702  4000         lsls r0, r0, #1                    
00404704  b562         str r5, [r6, #0x28]                
00404706  4000         lsls r0, r0, #1                    
00404708  414d         ldr r5, [pc, #0x104]               
0040470a  445f         ldrsh r4, [r0, r5]                 
0040470c  5441         adcs r4, r2                        
0040470e  5f47         bxns fp                            
00404710  4350         str r3, [r0, r1]                   
00404712  3a20         movs r0, #0x3a                     
00404714  4b65         str r3, [r1, #0x54]                
00404716  7920         movs r0, #0x79                     
00404718  6578         ldrb r5, [r4, #1]                  
0040471a  6368         ldr r3, [r4, #4]                   
0040471c  616e         ldr r1, [r4, #0x64]                
0040471e  6765         str r7, [r4, #0x54]                
00404720  2063         str r0, [r4, #0x30]                
00404722  6f6d         ldr r7, [r5, #0x54]                
00404724  706c         ldr r0, [r6, #0x44]                
00404726  6574         strb r5, [r4, #0x11]               
00404728  6564         str r5, [r4, #0x44]                
0040472a  0a00         movs r2, r1                        
0040472c  f0b5         push {r4, r5, r6, r7, lr}          
0040472e  8bb0         sub sp, #0x2c                      
00404730  0d46         mov r5, r1                         
00404732  2ea1         adr r1, #0xb8                      
00404734  0020         movs r0, #0                        
00404736  00f025ff     bl #0x405584                       
00404738  25ff         (undecodable)
0040473a  d5f84478     ldr.w r7, [r5, #0x844]             
0040473c  4478         ldrb r4, [r0, #1]                  
0040473e  d5f84868     ldr.w r6, [r5, #0x848]             
00404740  4868         ldr r0, [r1, #4]                   
00404742  17f1050f     cmn.w r7, #5                       
00404744  050f         lsrs r5, r0, #0x1c                 
00404746  07d8         bhi #0x404758                      
00404748  16f1050f     cmn.w r6, #5                       
0040474a  050f         lsrs r5, r0, #0x1c                 
0040474c  9cbf         itt ls                             
0040474e  d5f84c18     ldr.w r1, [r5, #0x84c]             
00404750  4c18         adds r4, r1, r1                    
00404752  11f1050f     cmn.w r1, #5                       
00404754  050f         lsrs r5, r0, #0x1c                 
00404756  0ed9         bls #0x404776                      
00404758  6c46         mov r4, sp                         
0040475a  2821         movs r1, #0x28                     
0040475c  2046         mov r0, r4                         
0040475e  fcf775fd     bl #0x40124c                       
00404760  75fd2046     ldc2l p6, c4, [r5, #-0x80]!        
00404762  2046         mov r0, r4                         
00404764  01f086fd     bl #0x406274                       
00404766  86fdf8b1     stc2 p1, c11, [r6, #0x3e0]         
00404768  f8b1         cbz r0, #0x4047aa                  
0040476a  2c49         ldr r1, [pc, #0xb0]                
0040476c  0446         mov r4, r0                         
0040476e  0020         movs r0, #0                        
00404770  00f008ff     bl #0x405584                       
00404772  08ff0de0     vhadd.u8 d14, d8, d13              
00404774  0de0         b #0x404792                        
00404776  d5f81808     ldr.w r0, [r5, #0x818]             
00404778  1808         lsrs r0, r3, #0x20                 
0040477a  0431         adds r1, #4                        
0040477c  8142         cmp r1, r0                         
0040477e  9cbf         itt ls                             
00404780  391d         adds r1, r7, #4                    
00404782  8142         cmp r1, r0                         
00404784  2dd9         bls #0x4047e2                      
00404786  2549         ldr r1, [pc, #0x94]                
00404788  0020         movs r0, #0                        
0040478a  00f0fbfe     bl #0x405584                       
0040478c  fbfe4ff4     cdp2 p4, #0xf, c15, c11, c15, #2   
0040478e  4ff48074     mov.w r4, #0x100                   
00404790  8074         strb r0, [r0, #0x12]               
00404792  f14d         ldr r5, [pc, #0x3c4]               
00404794  0320         movs r0, #3                        
00404796  4ff47041     mov.w r1, #0xf000                  
00404798  7041         adcs r0, r6                        
0040479a  a847         blx r5                             
0040479c  210c         lsrs r1, r4, #0x10                 
0040479e  0320         movs r0, #3                        
004047a0  a847         blx r5                             
004047a2  a1b2         uxth r1, r4                        
004047a4  0320         movs r0, #3                        
004047a6  a847         blx r5                             
004047a8  18e0         b #0x4047dc                        
004047aa  9df80000     ldrb.w r0, [sp]                    
004047ac  0000         movs r0, r0                        
004047ae  0024         movs r4, #0                        
004047b0  1b49         ldr r1, [pc, #0x6c]                
004047b2  0028         cmp r0, #0                         
004047b4  05f58360     add.w r0, r5, #0x418               
004047b6  8360         str r3, [r0, #8]                   
004047b8  08bf         it eq                              
004047ba  0321         movs r1, #3                        
004047bc  c219         adds r2, r0, r7                    
004047be  c155         strb r1, [r0, r7]                  
004047c0  090c         lsrs r1, r1, #0x10                 
004047c2  9170         strb r1, [r2, #2]                  
004047c4  0121         movs r1, #1                        
004047c6  d470         strb r4, [r2, #3]                  
004047c8  5470         strb r4, [r2, #1]                  
004047ca  8155         strb r1, [r0, r6]                  
004047cc  3044         add r0, r6                         
004047ce  1349         ldr r1, [pc, #0x4c]                
004047d0  8470         strb r4, [r0, #2]                  
004047d2  c470         strb r4, [r0, #3]                  
004047d4  4470         strb r4, [r0, #1]                  
004047d6  0020         movs r0, #0                        
004047d8  00f0d4fe     bl #0x405584                       
004047da  d4fe2046     cdp2 p6, #0xd, c4, c4, c0, #1      
004047dc  2046         mov r0, r4                         
004047de  0bb0         add sp, #0x2c                      
004047e0  f0bd         pop {r4, r5, r6, r7, pc}           
004047e2  311d         adds r1, r6, #4                    
004047e4  8142         cmp r1, r0                         
004047e6  b7d9         bls #0x404758                      
004047e8  cde7         b #0x404786                        
004047ea  00bf         nop                                
004047ec  414d         ldr r5, [pc, #0x104]               
004047ee  445f         ldrsh r4, [r0, r5]                 
004047f0  5441         adcs r4, r2                        
004047f2  5f47         bxns fp                            
004047f4  4350         str r3, [r0, r1]                   
004047f6  3a20         movs r0, #0x3a                     
004047f8  5175         strb r1, [r2, #0x15]               
004047fa  6572         strb r5, [r4, #9]                  
004047fc  7941         adcs r1, r7                        
004047fe  6363         str r3, [r4, #0x34]                
00404800  6573         strb r5, [r4, #0xd]                
00404802  7369         ldr r3, [r6, #0x14]                
00404804  6269         ldr r2, [r4, #0x14]                
00404806  6c69         ldr r4, [r5, #0x14]                
00404808  7479         ldrb r4, [r6, #5]                  
0040480a  4174         strb r1, [r0, #0x11]               
0040480c  7472         strb r4, [r6, #9]                  
0040480e  6962         str r1, [r5, #0x24]                
00404810  7574         strb r5, [r6, #0x11]               
00404812  6573         strb r5, [r4, #0xd]                
00404814  2045         cmp r0, r4                         
00404816  4e54         strb r6, [r1, r1]                  
00404818  4552         strh r5, [r0, r1]                  
0040481a  0a00         movs r2, r1                        
0040481c  f167         str r1, [r6, #0x7c]                
0040481e  4000         lsls r0, r0, #1                    
00404820  0300         movs r3, r0                        
00404822  0100         movs r1, r0                        
00404824  b562         str r5, [r6, #0x28]                
00404826  4000         lsls r0, r0, #1                    
00404828  2de9f047     push.w {r4, r5, r6, r7, r8, sb, sl, lr} 
0040482a  f047         blx lr                             
0040482c  0c46         mov r4, r1                         
0040482e  72a1         adr r1, #0x1c8                     
00404830  0746         mov r7, r0                         
00404832  0020         movs r0, #0                        
00404834  00f0a6fe     bl #0x405584                       
00404836  a6fe2146     cdp2 p6, #0xa, c4, c6, c1, #1      
00404838  2146         mov r1, r4                         
0040483a  51f8103f     ldr r3, [r1, #0x10]!               
0040483c  103f         subs r7, #0x10                     
0040483e  b3f1805f     cmp.w r3, #0x10000000              
00404840  805f         ldrsh r0, [r0, r6]                 
00404842  62d2         bhs #0x40490a                      
00404844  04f5026a     add.w sl, r4, #0x820               
00404846  026a         ldr r2, [r0, #0x20]                
00404848  d4f81898     ldr.w sb, [r4, #0x818]             
0040484a  1898         ldr r0, [sp, #0x60]                
0040484c  9ae80504     ldm.w sl, {r0, r2, sl}             
0040484e  0504         lsls r5, r0, #0x10                 
00404850  12f1050f     cmn.w r2, #5                       
00404852  050f         lsrs r5, r0, #0x1c                 
00404854  98bf         it ls                              
00404856  1af1050f     cmn.w sl, #5                       
00404858  050f         lsrs r5, r0, #0x1c                 
0040485a  47d9         bls #0x4048ec                      
0040485c  1b0e         lsrs r3, r3, #0x18                 
0040485e  03eb8303     add.w r3, r3, r3, lsl #2           
00404860  8303         lsls r3, r0, #0xe                  
00404862  07eb0315     add.w r5, r7, r3, lsl #4           
00404864  0315         asrs r3, r0, #0x14                 
00404866  d5f81833     ldr.w r3, [r5, #0x318]             
00404868  1833         adds r3, #0x18                     
0040486a  032b         cmp r3, #3                         
0040486c  2cd1         bne #0x4048c8                      
0040486e  1144         add r1, r2                         
00404870  11f8042f     ldrb r2, [r1, #4]!                 
00404872  042f         cmp r7, #4                         
00404874  4b78         ldrb r3, [r1, #1]                  
00404876  8e78         ldrb r6, [r1, #2]                  
00404878  c978         ldrb r1, [r1, #3]                  
0040487a  42ea0322     orr.w r2, r2, r3, lsl #8           
0040487c  0322         movs r2, #3                        
0040487e  46ea0121     orr.w r1, r6, r1, lsl #8           
00404880  0121         movs r1, #1                        
00404882  42ea0141     orr.w r1, r2, r1, lsl #16          
00404884  0141         asrs r1, r0                        
00404886  d5e9d023     ldrd r2, r3, [r5, #0x340]          
00404888  d023         movs r3, #0xd0                     
0040488a  521a         subs r2, r2, r1                    
0040488c  73f10002     sbcs r2, r3, #0                    
0040488e  0002         lsls r0, r0, #8                    
00404890  37d2         bhs #0x404902                      
00404892  0138         subs r0, #1                        
00404894  05f55072     add.w r2, r5, #0x340               
00404896  5072         strb r0, [r2, #9]                  
00404898  0023         movs r3, #0                        
0040489a  0e28         cmp r0, #0xe                       
0040489c  c2e90013     strd r1, r3, [r2]                  
0040489e  0013         asrs r0, r0, #0xc                  
004048a0  44d8         bhi #0x40492c                      
004048a2  05f54078     add.w r8, r5, #0x300               
004048a4  4078         ldrb r0, [r0, #1]                  
004048a6  40f24126     movw r6, #0x241                    
004048a8  4126         movs r6, #0x41                     
004048aa  dfe800f0     tbb [pc, r0]                       
004048ac  00f07108     and r8, r0, #0x71                  
004048ae  7108         lsrs r1, r6, #1                    
004048b0  464b         ldr r3, [pc, #0x118]               
004048b2  5053         strh r0, [r2, r5]                  
004048b4  5659         ldr r6, [r2, r5]                   
004048b6  5d61         str r5, [r3, #0x14]                
004048b8  9595         str r5, [sp, #0x254]               
004048ba  9571         strb r5, [r2, #6]                  
004048bc  6b00         lsls r3, r5, #1                    
004048be  3846         mov r0, r7                         
004048c0  2146         mov r1, r4                         
004048c2  00f0d7f8     bl #0x404a74                       
004048c4  d7f861e0     ldr.w lr, [r7, #0x61]              
004048c6  61e0         b #0x40498c                        
004048c8  5749         ldr r1, [pc, #0x15c]               
004048ca  0020         movs r0, #0                        
004048cc  00f05afe     bl #0x405584                       
004048ce  5afe564c     mrc2 p12, #2, r4, c10, c6, #2      
004048d0  564c         ldr r4, [pc, #0x158]               
004048d2  0320         movs r0, #3                        
004048d4  4ff47041     mov.w r1, #0xf000                  
004048d6  7041         adcs r0, r6                        
004048d8  a047         blx r4                             
004048da  0320         movs r0, #3                        
004048dc  0021         movs r1, #0                        
004048de  a047         blx r4                             
004048e0  0320         movs r0, #3                        
004048e2  40f26221     movw r1, #0x262                    
004048e4  6221         movs r1, #0x62                     
004048e6  40f26226     movw r6, #0x262                    
004048e8  6226         movs r6, #0x62                     
004048ea  1be0         b #0x404924                        
004048ec  0af10405     add.w r5, sl, #4                   
004048ee  0405         lsls r4, r0, #0x14                 
004048f0  4d45         cmp r5, sb                         
004048f2  9ebf         ittt ls                            
004048f4  d4f81454     ldr.w r5, [r4, #0x414]             
004048f6  1454         strb r4, [r2, r0]                  
004048f8  161d         adds r6, r2, #4                    
004048fa  ae42         cmp r6, r5                         
004048fc  aed9         bls #0x40485c                      
004048fe  5c49         ldr r1, [pc, #0x170]               
00404900  00e0         b #0x404904                        
00404902  4ba1         adr r1, #0x12c                     
00404904  0020         movs r0, #0                        
00404906  00f03dfe     bl #0x405584                       
00404908  3dfe484c     cdp2 p12, #3, c4, c13, c8, #2      
0040490a  484c         ldr r4, [pc, #0x120]               
0040490c  0320         movs r0, #3                        
0040490e  4ff47041     mov.w r1, #0xf000                  
00404910  7041         adcs r0, r6                        
00404912  a047         blx r4                             
00404914  0320         movs r0, #3                        
00404916  0021         movs r1, #0                        
00404918  a047         blx r4                             
0040491a  0320         movs r0, #3                        
0040491c  4ff48071     mov.w r1, #0x100                   
0040491e  8071         strb r0, [r0, #6]                  
00404920  4ff48076     mov.w r6, #0x100                   
00404922  8076         strb r0, [r0, #0x1a]               
00404924  a047         blx r4                             
00404926  3046         mov r0, r6                         
00404928  bde8f087     pop.w {r4, r5, r6, r7, r8, sb, sl, pc} 
0040492a  f087         strh r0, [r6, #0x3e]               
0040492c  4e49         ldr r1, [pc, #0x138]               
0040492e  0020         movs r0, #0                        
00404930  00f028fe     bl #0x405584                       
00404932  28fe4ff4     cdp2 p4, #2, c15, c8, c15, #2      
00404934  4ff41076     mov.w r6, #0x240                   
00404936  1076         strb r0, [r2, #0x18]               
00404938  4ee0         b #0x4049d8                        
0040493a  3846         mov r0, r7                         
0040493c  2146         mov r1, r4                         
0040493e  00f059fa     bl #0x404df4                       
00404940  59fa         (undecodable)
00404942  23e0         b #0x40498c                        
00404944  3846         mov r0, r7                         
00404946  2146         mov r1, r4                         
00404948  00f094f9     bl #0x404c74                       
0040494a  94f91ee0     ldrsb.w lr, [r4, #0x1e]            
0040494c  1ee0         b #0x40498c                        
0040494e  4046         mov r0, r8                         
00404950  0221         movs r1, #2                        
00404952  14e0         b #0x40497e                        
00404954  4046         mov r0, r8                         
00404956  0321         movs r1, #3                        
00404958  11e0         b #0x40497e                        
0040495a  4046         mov r0, r8                         
0040495c  0421         movs r1, #4                        
0040495e  0ee0         b #0x40497e                        
00404960  2146         mov r1, r4                         
00404962  00f041fb     bl #0x404fe8                       
00404964  41fb11e0     smlsdx r0, r1, r1, lr              
00404966  11e0         b #0x40498c                        
00404968  2146         mov r1, r4                         
0040496a  00f0bbfa     bl #0x404ee4                       
0040496c  bbfa         (undecodable)
0040496e  0de0         b #0x40498c                        
00404970  2146         mov r1, r4                         
00404972  fff7dbfe     bl #0x40472c                       
00404974  dbfe0646     cdp2 p6, #0xd, c4, c11, c6, #0     
00404976  0646         mov r6, r0                         
00404978  70bb         cbnz r0, #0x4049d8                 
0040497a  4046         mov r0, r8                         
0040497c  0121         movs r1, #1                        
0040497e  00f015ff     bl #0x4057ac                       
00404980  15ff03e0     vhadd.u16 d14, d5, d3              
00404982  03e0         b #0x40498c                        
00404984  3846         mov r0, r7                         
00404986  2146         mov r1, r4                         
00404988  00f0e8f8     bl #0x404b5c                       
0040498a  e8f8         (undecodable)
0040498c  0646         mov r6, r0                         
0040498e  18bb         cbnz r0, #0x4049d8                 
00404990  04f58361     add.w r1, r4, #0x418               
00404992  8361         str r3, [r0, #0x18]                
00404994  0026         movs r6, #0                        
00404996  01eb0a00     add.w r0, r1, sl                   
00404998  0a00         movs r2, r1                        
0040499a  05f54678     add.w r8, r5, #0x318               
0040499c  4678         ldrb r6, [r0, #1]                  
0040499e  01f80a60     strb.w r6, [r1, sl]                
004049a0  0a60         str r2, [r1]                       
004049a2  c670         strb r6, [r0, #3]                  
004049a4  8670         strb r6, [r0, #2]                  
004049a6  4670         strb r6, [r0, #1]                  
004049a8  41f65010     movw r0, #0x1950                   
004049aa  5010         asrs r0, r2, #1                    
004049ac  2718         adds r7, r4, r0                    
004049ae  d4f81828     ldr.w r2, [r4, #0x818]             
004049b0  1828         cmp r0, #0x18                      
004049b2  3846         mov r0, r7                         
004049b4  fcf7f6eb     blx #0x4011a4                      
004049b6  f6eb         (undecodable)
004049b8  41f65050     movw r0, #0x1d50                   
004049ba  5050         str r0, [r2, r1]                   
004049bc  3946         mov r1, r7                         
004049be  44f80090     str.w sb, [r4, r0]                 
004049c0  0090         str r0, [sp]                       
004049c2  4046         mov r0, r8                         
004049c4  4a46         mov r2, sb                         
004049c6  fef789ff     bl #0x4038dc                       
004049c8  89ff         (undecodable)
004049ca  80b1         cbz r0, #0x4049ee                  
004049cc  2549         ldr r1, [pc, #0x94]                
004049ce  0446         mov r4, r0                         
004049d0  0020         movs r0, #0                        
004049d2  00f0d7fd     bl #0x405584                       
004049d4  d7fd2646     ldc2l p6, c4, [r7, #0x98]          
004049d6  2646         mov r6, r4                         
004049d8  144c         ldr r4, [pc, #0x50]                
004049da  0320         movs r0, #3                        
004049dc  4ff47041     mov.w r1, #0xf000                  
004049de  7041         adcs r0, r6                        
004049e0  a047         blx r4                             
004049e2  310c         lsrs r1, r6, #0x10                 
004049e4  0320         movs r0, #3                        
004049e6  a047         blx r4                             
004049e8  b1b2         uxth r1, r6                        
004049ea  0320         movs r0, #3                        
004049ec  a047         blx r4                             
004049ee  1f49         ldr r1, [pc, #0x7c]                
004049f0  0020         movs r0, #0                        
004049f2  00f0c7fd     bl #0x405584                       
004049f4  c7fd96e7     stc2l p7, c14, [r7, #0x258]        
004049f6  96e7         b #0x404926                        
004049f8  414d         ldr r5, [pc, #0x104]               
004049fa  445f         ldrsh r4, [r0, r5]                 
004049fc  5441         adcs r4, r2                        
004049fe  5f47         bxns fp                            
00404a00  4350         str r3, [r0, r1]                   
00404a02  3a20         movs r0, #0x3a                     
00404a04  5175         strb r1, [r2, #0x15]               
00404a06  6572         strb r5, [r4, #9]                  
00404a08  7941         adcs r1, r7                        
00404a0a  7574         strb r5, [r6, #0x11]               
00404a0c  6865         str r0, [r5, #0x54]                
00404a0e  6e74         strb r6, [r5, #0x11]               
00404a10  6963         str r1, [r5, #0x34]                
00404a12  6174         strb r1, [r4, #0x11]               
00404a14  6564         str r5, [r4, #0x44]                
00404a16  5365         str r3, [r2, #0x54]                
00404a18  7373         strb r3, [r6, #0xd]                
00404a1a  696f         ldr r1, [r5, #0x74]                
00404a1c  6e20         movs r0, #0x6e                     
00404a1e  454e         ldr r6, [pc, #0x114]               
00404a20  5445         cmp r4, sl                         
00404a22  520a         lsrs r2, r2, #9                    
00404a24  0000         movs r0, r0                        
00404a26  0000         movs r0, r0                        
00404a28  2269         ldr r2, [r4, #0x10]                
00404a2a  4000         lsls r0, r0, #1                    
00404a2c  b562         str r5, [r6, #0x28]                
00404a2e  4000         lsls r0, r0, #1                    
00404a30  414d         ldr r5, [pc, #0x104]               
00404a32  445f         ldrsh r4, [r0, r5]                 
00404a34  5441         adcs r4, r2                        
00404a36  5f47         bxns fp                            
00404a38  4350         str r3, [r0, r1]                   
00404a3a  3a20         movs r0, #0x3a                     
00404a3c  4552         strh r5, [r0, r1]                  
00404a3e  524f         ldr r7, [pc, #0x148]               
00404a40  523a         subs r2, #0x52                     
00404a42  2049         ldr r1, [pc, #0x80]                
00404a44  6e76         strb r6, [r5, #0x19]               
00404a46  616c         ldr r1, [r4, #0x44]                
00404a48  6964         str r1, [r5, #0x44]                
00404a4a  2071         strb r0, [r4, #4]                  
00404a4c  7565         str r5, [r6, #0x54]                
00404a4e  7279         ldrb r2, [r6, #5]                  
00404a50  2073         strb r0, [r4, #0xc]                
00404a52  6571         strb r5, [r4, #5]                  
00404a54  7565         str r5, [r6, #0x54]                
00404a56  6e63         str r6, [r5, #0x34]                
00404a58  6520         movs r0, #0x65                     
00404a5a  6e75         strb r6, [r5, #0x15]               
00404a5c  6d62         str r5, [r5, #0x24]                
00404a5e  6572         strb r5, [r4, #9]                  
00404a60  0a00         movs r2, r1                        
00404a62  0000         movs r0, r0                        
00404a64  b468         ldr r4, [r6, #8]                   
00404a66  4000         lsls r0, r0, #1                    
00404a68  7a6a         ldr r2, [r7, #0x24]                
00404a6a  4000         lsls r0, r0, #1                    
00404a6c  7767         str r7, [r6, #0x74]                
00404a6e  4000         lsls r0, r0, #1                    
00404a70  5069         ldr r0, [r2, #0x14]                
00404a72  4000         lsls r0, r0, #1                    
00404a74  b0b5         push {r4, r5, r7, lr}              
00404a76  0d46         mov r5, r1                         
00404a78  21a1         adr r1, #0x84                      
00404a7a  0446         mov r4, r0                         
00404a7c  0020         movs r0, #0                        
00404a7e  00f081fd     bl #0x405584                       
00404a80  81fd2869     stc2 p9, c6, [r1, #0xa0]           
00404a82  2869         ldr r0, [r5, #0x10]                
00404a84  b0f1805f     cmp.w r0, #0x10000000              
00404a86  805f         ldrsh r0, [r0, r6]                 
00404a88  11d2         bhs #0x404aae                      
00404a8a  d5f82c18     ldr.w r1, [r5, #0x82c]             
00404a8c  2c18         adds r4, r5, r0                    
00404a8e  11f1050f     cmn.w r1, #5                       
00404a90  050f         lsrs r5, r0, #0x1c                 
00404a92  04d8         bhi #0x404a9e                      
00404a94  d5f81828     ldr.w r2, [r5, #0x818]             
00404a96  1828         cmp r0, #0x18                      
00404a98  0b1d         adds r3, r1, #4                    
00404a9a  9342         cmp r3, r2                         
00404a9c  17d9         bls #0x404ace                      
00404a9e  22a1         adr r1, #0x88                      
00404aa0  0020         movs r0, #0                        
00404aa2  00f06ffd     bl #0x405584                       
00404aa4  6ffd1f49     stc2l p9, c4, [pc, #-0x7c]!        
00404aa6  1f49         ldr r1, [pc, #0x7c]                
00404aa8  0020         movs r0, #0                        
00404aaa  00f06bfd     bl #0x405584                       
00404aac  6bfdd04d     stc2l p13, c4, [fp, #-0x340]!      
00404aae  d04d         ldr r5, [pc, #0x340]               
00404ab0  0320         movs r0, #3                        
00404ab2  4ff47041     mov.w r1, #0xf000                  
00404ab4  7041         adcs r0, r6                        
00404ab6  a847         blx r5                             
00404ab8  0320         movs r0, #3                        
00404aba  0021         movs r1, #0                        
00404abc  a847         blx r5                             
00404abe  0320         movs r0, #3                        
00404ac0  4ff48071     mov.w r1, #0x100                   
00404ac2  8071         strb r0, [r0, #6]                  
00404ac4  4ff48074     mov.w r4, #0x100                   
00404ac6  8074         strb r0, [r0, #0x12]               
00404ac8  a847         blx r5                             
00404aca  2046         mov r0, r4                         
00404acc  b0bd         pop {r4, r5, r7, pc}               
00404ace  000e         lsrs r0, r0, #0x18                 
00404ad0  2944         add r1, r5                         
00404ad2  00eb8000     add.w r0, r0, r0, lsl #2           
00404ad4  8000         lsls r0, r0, #2                    
00404ad6  01f58362     add.w r2, r1, #0x418               
00404ad8  8362         str r3, [r0, #0x28]                
00404ada  04eb0010     add.w r0, r4, r0, lsl #4           
00404adc  0010         asrs r0, r0, #0x20                 
00404ade  0024         movs r4, #0                        
00404ae0  d0f80403     ldr.w r0, [r0, #0x304]             
00404ae2  0403         lsls r4, r0, #0xc                  
00404ae4  02f8020b     strb r0, [r2], #2                  
00404ae6  020b         lsrs r2, r0, #0xc                  
00404ae8  030e         lsrs r3, r0, #0x18                 
00404aea  5370         strb r3, [r2, #1]                  
00404aec  030c         lsrs r3, r0, #0x10                 
00404aee  000a         lsrs r0, r0, #8                    
00404af0  1370         strb r3, [r2]                      
00404af2  81f81904     strb.w r0, [r1, #0x419]            
00404af4  1904         lsls r1, r3, #0x10                 
00404af6  0020         movs r0, #0                        
00404af8  0a49         ldr r1, [pc, #0x28]                
00404afa  00f043fd     bl #0x405584                       
00404afc  43fde4e7     stc2l p7, c14, [r3, #-0x390]       
00404afe  e4e7         b #0x404aca                        
00404b00  414d         ldr r5, [pc, #0x104]               
00404b02  445f         ldrsh r4, [r0, r5]                 
00404b04  5441         adcs r4, r2                        
00404b06  5f47         bxns fp                            
00404b08  4350         str r3, [r0, r1]                   
00404b0a  3a20         movs r0, #0x3a                     
00404b0c  5175         strb r1, [r2, #0x15]               
00404b0e  6572         strb r5, [r4, #9]                  
00404b10  7943         muls r1, r7, r1                    
00404b12  6861         str r0, [r5, #0x14]                
00404b14  6e6e         ldr r6, [r5, #0x64]                
00404b16  656c         ldr r5, [r4, #0x44]                
00404b18  5479         ldrb r4, [r2, #5]                  
00404b1a  7065         str r0, [r6, #0x54]                
00404b1c  2045         cmp r0, r4                         
00404b1e  4e54         strb r6, [r1, r1]                  
00404b20  4552         strh r5, [r0, r1]                  
00404b22  0a00         movs r2, r1                        
00404b24  9766         str r7, [r2, #0x68]                
00404b26  4000         lsls r0, r0, #1                    
00404b28  414d         ldr r5, [pc, #0x104]               
00404b2a  445f         ldrsh r4, [r0, r5]                 
00404b2c  5441         adcs r4, r2                        
00404b2e  5f47         bxns fp                            
00404b30  4350         str r3, [r0, r1]                   
00404b32  3a20         movs r0, #0x3a                     
00404b34  4552         strh r5, [r0, r1]                  
00404b36  524f         ldr r7, [pc, #0x148]               
00404b38  523a         subs r2, #0x52                     
00404b3a  2049         ldr r1, [pc, #0x80]                
00404b3c  6e76         strb r6, [r5, #0x19]               
00404b3e  616c         ldr r1, [r4, #0x44]                
00404b40  6964         str r1, [r5, #0x44]                
00404b42  2063         str r0, [r4, #0x30]                
00404b44  6861         str r0, [r5, #0x14]                
00404b46  6e6e         ldr r6, [r5, #0x64]                
00404b48  656c         ldr r5, [r4, #0x44]                
00404b4a  2074         strb r0, [r4, #0x10]               
00404b4c  7970         strb r1, [r7, #1]                  
00404b4e  6520         movs r0, #0x65                     
00404b50  6f66         str r7, [r5, #0x64]                
00404b52  6673         strb r6, [r4, #0xd]                
00404b54  6574         strb r5, [r4, #0x11]               
00404b56  0a00         movs r2, r1                        
00404b58  b562         str r5, [r6, #0x28]                
00404b5a  4000         lsls r0, r0, #1                    
00404b5c  f0b5         push {r4, r5, r6, r7, lr}          
00404b5e  bbb0         sub sp, #0xec                      
00404b60  354e         ldr r6, [pc, #0xd4]                
00404b62  0c46         mov r4, r1                         
00404b64  35a1         adr r1, #0xd4                      
00404b66  3068         ldr r0, [r6]                       
00404b68  3a90         str r0, [sp, #0xe8]                
00404b6a  0020         movs r0, #0                        
00404b6c  00f00afd     bl #0x405584                       
00404b6e  0afd2069     stc2 p9, c6, [sl, #-0x80]          
00404b70  2069         ldr r0, [r4, #0x10]                
00404b72  b0f1805f     cmp.w r0, #0x10000000              
00404b74  805f         ldrsh r0, [r0, r6]                 
00404b76  0dd3         blo #0x404b94                      
00404b78  d94c         ldr r4, [pc, #0x364]               
00404b7a  0320         movs r0, #3                        
00404b7c  4ff47041     mov.w r1, #0xf000                  
00404b7e  7041         adcs r0, r6                        
00404b80  a047         blx r4                             
00404b82  0320         movs r0, #3                        
00404b84  0021         movs r1, #0                        
00404b86  a047         blx r4                             
00404b88  4ff48075     mov.w r5, #0x100                   
00404b8a  8075         strb r0, [r0, #0x16]               
00404b8c  0320         movs r0, #3                        
00404b8e  4ff48071     mov.w r1, #0x100                   
00404b90  8071         strb r0, [r0, #6]                  
00404b92  22e0         b #0x404bda                        
00404b94  10ad         add r5, sp, #0x40                  
00404b96  2821         movs r1, #0x28                     
00404b98  d4f86c78     ldr.w r7, [r4, #0x86c]             
00404b9a  6c78         ldrb r4, [r5, #1]                  
00404b9c  2846         mov r0, r5                         
00404b9e  fcf755fb     bl #0x40124c                       
00404ba0  55fb08a8     smmla r8, r5, r8, sl               
00404ba2  08a8         add r0, sp, #0x20                  
00404ba4  2021         movs r1, #0x20                     
00404ba6  fcf751fb     bl #0x40124c                       
00404ba8  51fb         (undecodable)
00404baa  2846         mov r0, r5                         
00404bac  01f062fb     bl #0x406274                       
00404bae  62fb18b9     smmlsr sb, r2, r8, fp              
00404bb0  18b9         cbnz r0, #0x404bba                 
00404bb2  08a8         add r0, sp, #0x20                  
00404bb4  01f06efb     bl #0x406294                       
00404bb6  6efb         (undecodable)
00404bb8  c8b1         cbz r0, #0x404bee                  
00404bba  4ff41075     mov.w r5, #0x240                   
00404bbc  1075         strb r0, [r2, #0x14]               
00404bbe  2c49         ldr r1, [pc, #0xb0]                
00404bc0  0020         movs r0, #0                        
00404bc2  00f0dffc     bl #0x405584                       
00404bc4  dffcc64c     ldc2l p12, c4, [pc], {0xc6}        
00404bc6  c64c         ldr r4, [pc, #0x318]               
00404bc8  0320         movs r0, #3                        
00404bca  4ff47041     mov.w r1, #0xf000                  
00404bcc  7041         adcs r0, r6                        
00404bce  a047         blx r4                             
00404bd0  290c         lsrs r1, r5, #0x10                 
00404bd2  0320         movs r0, #3                        
00404bd4  a047         blx r4                             
00404bd6  a9b2         uxth r1, r5                        
00404bd8  0320         movs r0, #3                        
00404bda  a047         blx r4                             
00404bdc  3068         ldr r0, [r6]                       
00404bde  3a99         ldr r1, [sp, #0xe8]                
00404be0  401a         subs r0, r0, r1                    
00404be2  02bf         ittt eq                            
00404be4  2846         mov r0, r5                         
00404be6  3bb0         add sp, #0xec                      
00404be8  f0bd         pop {r4, r5, r6, r7, pc}           
00404bea  01f0b2ea     blx #0x406150                      
00404bec  b2ea         (undecodable)
00404bee  0020         movs r0, #0                        
00404bf0  08ab         add r3, sp, #0x20                  
00404bf2  0190         str r0, [sp, #4]                   
00404bf4  04ad         add r5, sp, #0x10                  
00404bf6  1198         ldr r0, [sp, #0x44]                
00404bf8  dde91412     ldrd r1, r2, [sp, #0x50]           
00404bfa  1412         asrs r4, r2, #8                    
00404bfc  0090         str r0, [sp]                       
00404bfe  cde90212     strd r1, r2, [sp, #8]              
00404c00  0212         asrs r2, r0, #8                    
00404c02  0fcb         ldm r3, {r0, r1, r2, r3}           
00404c04  0fc5         stm r5!, {r0, r1, r2, r3}          
00404c06  8021         movs r1, #0x80                     
00404c08  1aad         add r5, sp, #0x68                  
00404c0a  2846         mov r0, r5                         
00404c0c  fcf71efb     bl #0x40124c                       
00404c0e  1efb         (undecodable)
00404c10  6946         mov r1, sp                         
00404c12  2846         mov r0, r5                         
00404c14  fef706fe     bl #0x403824                       
00404c16  06fe08b1     cdp2 p1, #0, c11, c6, c8, #0       
00404c18  08b1         cbz r0, #0x404c1e                  
00404c1a  0546         mov r5, r0                         
00404c1c  cfe7         b #0x404bbe                        
00404c1e  e019         adds r0, r4, r7                    
00404c20  1aa9         add r1, sp, #0x68                  
00404c22  00f58360     add.w r0, r0, #0x418               
00404c24  8360         str r3, [r0, #8]                   
00404c26  8022         movs r2, #0x80                     
00404c28  fcf778ea     blx #0x40111c                      
00404c2a  78ea1049     orns sb, r8, r0, lsr #16           
00404c2c  1049         ldr r1, [pc, #0x40]                
00404c2e  0020         movs r0, #0                        
00404c30  0025         movs r5, #0                        
00404c32  00f0a7fc     bl #0x405584                       
00404c34  a7fcd1e7     stc2 p7, c14, [r7], #0x344         
00404c36  d1e7         b #0x404bdc                        
00404c38  4c61         str r4, [r1, #0x14]                
00404c3a  4000         lsls r0, r0, #1                    
00404c3c  414d         ldr r5, [pc, #0x104]               
00404c3e  445f         ldrsh r4, [r0, r5]                 
00404c40  5441         adcs r4, r2                        
00404c42  5f47         bxns fp                            
00404c44  4350         str r3, [r0, r1]                   
00404c46  3a20         movs r0, #0x3a                     
00404c48  5175         strb r1, [r2, #0x15]               
00404c4a  6572         strb r5, [r4, #9]                  
00404c4c  7943         muls r1, r7, r1                    
00404c4e  6f64         str r7, [r5, #0x44]                
00404c50  6563         str r5, [r4, #0x34]                
00404c52  546f         ldr r4, [r2, #0x74]                
00404c54  6b65         str r3, [r5, #0x54]                
00404c56  6e43         muls r6, r5, r6                    
00404c58  6861         str r0, [r5, #0x14]                
00404c5a  6c6c         ldr r4, [r5, #0x44]                
00404c5c  656e         ldr r5, [r4, #0x64]                
00404c5e  6765         str r7, [r4, #0x54]                
00404c60  4461         str r4, [r0, #0x14]                
00404c62  7461         str r4, [r6, #0x14]                
00404c64  426c         ldr r2, [r0, #0x44]                
00404c66  6f62         str r7, [r5, #0x24]                
00404c68  2045         cmp r0, r4                         
00404c6a  4e54         strb r6, [r1, r1]                  
00404c6c  4552         strh r5, [r0, r1]                  
00404c6e  0a00         movs r2, r1                        
00404c70  4066         str r0, [r0, #0x64]                
00404c72  4000         lsls r0, r0, #1                    
00404c74  2de9ff47     push.w {r0, r1, r2, r3, r4, r5, r6, r7, r8, sb, sl, lr} 
00404c76  ff47         blxns pc                           
00404c78  0e46         mov r6, r1                         
00404c7a  41a1         adr r1, #0x104                     
00404c7c  8046         mov r8, r0                         
00404c7e  0020         movs r0, #0                        
00404c80  00f080fc     bl #0x405584                       
00404c82  80fcd6f8     stc2 p8, c15, [r0], {0xd6}         
00404c84  d6f81c58     ldr.w r5, [r6, #0x81c]             
00404c86  1c58         ldr r4, [r3, r0]                   
00404c88  d6f83898     ldr.w sb, [r6, #0x838]             
00404c8a  3898         ldr r0, [sp, #0xe0]                
00404c8c  d6f83c08     ldr.w r0, [r6, #0x83c]             
00404c8e  3c08         lsrs r4, r7, #0x20                 
00404c90  402d         cmp r5, #0x40                      
00404c92  d6f840a8     ldr.w sl, [r6, #0x840]             
00404c94  40a8         add r0, sp, #0x100                 
00404c96  18bf         it ne                              
00404c98  202d         cmp r5, #0x20                      
00404c9a  17d1         bne #0x404ccc                      
00404c9c  4349         ldr r1, [pc, #0x10c]               
00404c9e  6fea0902     mvn.w r2, sb                       
00404ca0  0902         lsls r1, r1, #8                    
00404ca2  4ff48074     mov.w r4, #0x100                   
00404ca4  8074         strb r0, [r0, #0x12]               
00404ca6  b2ebd50f     cmp.w r2, r5, lsr #3               
00404ca8  d50f         lsrs r5, r2, #0x1f                 
00404caa  1fd3         blo #0x404cec                      
00404cac  c243         mvns r2, r0                        
00404cae  ef08         lsrs r7, r5, #3                    
00404cb0  9742         cmp r7, r2                         
00404cb2  9cbf         itt ls                             
00404cb4  6fea0a02     mvn.w r2, sl                       
00404cb6  0a02         lsls r2, r1, #8                    
00404cb8  9742         cmp r7, r2                         
00404cba  17d8         bhi #0x404cec                      
00404cbc  d6f81434     ldr.w r3, [r6, #0x414]             
00404cbe  1434         adds r4, #0x14                     
00404cc0  c219         adds r2, r0, r7                    
00404cc2  9a42         cmp r2, r3                         
00404cc4  06d9         bls #0x404cd4                      
00404cc6  4ff48074     mov.w r4, #0x100                   
00404cc8  8074         strb r0, [r0, #0x12]               
00404cca  0fe0         b #0x404cec                        
00404ccc  3649         ldr r1, [pc, #0xd8]                
00404cce  4ff48274     mov.w r4, #0x104                   
00404cd0  8274         strb r2, [r0, #0x12]               
00404cd2  0be0         b #0x404cec                        
00404cd4  d6f81828     ldr.w r2, [r6, #0x818]             
00404cd6  1828         cmp r0, #0x18                      
00404cd8  0aeb0703     add.w r3, sl, r7                   
00404cda  0703         lsls r7, r0, #0xc                  
00404cdc  4ff48074     mov.w r4, #0x100                   
00404cde  8074         strb r0, [r0, #0x12]               
00404ce0  9342         cmp r3, r2                         
00404ce2  9cbf         itt ls                             
00404ce4  09eb0703     add.w r3, sb, r7                   
00404ce6  0703         lsls r7, r0, #0xc                  
00404ce8  9342         cmp r3, r2                         
00404cea  16d9         bls #0x404d1a                      
00404cec  0020         movs r0, #0                        
00404cee  2a46         mov r2, r5                         
00404cf0  00f048fc     bl #0x405584                       
00404cf2  48fc3d49     mcrr2 p9, #3, r4, r8, c13          
00404cf4  3d49         ldr r1, [pc, #0xf4]                
00404cf6  0020         movs r0, #0                        
00404cf8  00f044fc     bl #0x405584                       
00404cfa  44fce64d     mcrr2 p13, #0xe, r4, r4, c6        
00404cfc  e64d         ldr r5, [pc, #0x398]               
00404cfe  0320         movs r0, #3                        
00404d00  4ff47041     mov.w r1, #0xf000                  
00404d02  7041         adcs r0, r6                        
00404d04  a847         blx r5                             
00404d06  0320         movs r0, #3                        
00404d08  0021         movs r1, #0                        
00404d0a  a847         blx r5                             
00404d0c  0320         movs r0, #3                        
00404d0e  2146         mov r1, r4                         
00404d10  a847         blx r5                             
00404d12  2046         mov r0, r4                         
00404d14  04b0         add sp, #0x10                      
00404d16  bde8f087     pop.w {r4, r5, r6, r7, r8, sb, sl, pc} 
00404d18  f087         strh r0, [r6, #0x3e]               
00404d1a  06f11001     add.w r1, r6, #0x10                
00404d1c  1001         lsls r0, r2, #4                    
00404d1e  0022         movs r2, #0                        
00404d20  0844         add r0, r1                         
00404d22  cde90222     strd r2, r2, [sp, #8]              
00404d24  0222         movs r2, #2                        
00404d26  011d         adds r1, r0, #4                    
00404d28  02a8         add r0, sp, #8                     
00404d2a  3a46         mov r2, r7                         
00404d2c  fcf7f6e9     blx #0x40111c                      
00404d2e  f6e9dde9     ldrd lr, sb, [r6, #0x374]!         
00404d30  dde90223     ldrd r2, r3, [sp, #8]              
00404d32  0223         movs r3, #2                        
00404d34  4046         mov r0, r8                         
00404d36  0095         str r5, [sp]                       
00404d38  fef71aff     bl #0x403b70                       
00404d3a  1aff90b1     vbsl d11, d26, d0                  
00404d3c  90b1         cbz r0, #0x404d64                  
00404d3e  06f58365     add.w r5, r6, #0x418               
00404d40  8365         str r3, [r0, #0x58]                
00404d42  0446         mov r4, r0                         
00404d44  05eb0a00     add.w r0, r5, sl                   
00404d46  0a00         movs r2, r1                        
00404d48  04f10801     add.w r1, r4, #8                   
00404d4a  0801         lsls r0, r1, #4                    
00404d4c  3a46         mov r2, r7                         
00404d4e  fcf7e6e9     blx #0x40111c                      
00404d50  e6e905eb     strd lr, fp, [r6, #0x14]!          
00404d52  05eb0900     add.w r0, r5, sb                   
00404d54  0900         movs r1, r1                        
00404d56  04f11001     add.w r1, r4, #0x10                
00404d58  1001         lsls r0, r2, #4                    
00404d5a  3a46         mov r2, r7                         
00404d5c  fcf7dee9     blx #0x40111c                      
00404d5e  dee90024     ldrd r2, r4, [lr]                  
00404d60  0024         movs r4, #0                        
00404d62  05e0         b #0x404d70                        
00404d64  12a1         adr r1, #0x48                      
00404d66  0020         movs r0, #0                        
00404d68  00f00cfc     bl #0x405584                       
00404d6a  0cfc         (undecodable)
00404d6c  40f23324     movw r4, #0x233                    
00404d6e  3324         movs r4, #0x33                     
00404d70  1e49         ldr r1, [pc, #0x78]                
00404d72  0020         movs r0, #0                        
00404d74  00f006fc     bl #0x405584                       
00404d76  06fc         (undecodable)
00404d78  002c         cmp r4, #0                         
00404d7a  bfd1         bne #0x404cfc                      
00404d7c  0024         movs r4, #0                        
00404d7e  c8e7         b #0x404d12                        
00404d80  414d         ldr r5, [pc, #0x104]               
00404d82  445f         ldrsh r4, [r0, r5]                 
00404d84  5441         adcs r4, r2                        
00404d86  5f47         bxns fp                            
00404d88  4350         str r3, [r0, r1]                   
00404d8a  3a20         movs r0, #0x3a                     
00404d8c  5175         strb r1, [r2, #0x15]               
00404d8e  6572         strb r5, [r4, #9]                  
00404d90  7943         muls r1, r7, r1                    
00404d92  7279         ldrb r2, [r6, #5]                  
00404d94  7074         strb r0, [r6, #0x11]               
00404d96  6f53         strh r7, [r5, r5]                  
00404d98  6573         strb r5, [r4, #0xd]                
00404d9a  7369         ldr r3, [r6, #0x14]                
00404d9c  6f6e         ldr r7, [r5, #0x64]                
00404d9e  2045         cmp r0, r4                         
00404da0  4e54         strb r6, [r1, r1]                  
00404da2  4552         strh r5, [r0, r1]                  
00404da4  0a00         movs r2, r1                        
00404da6  0000         movs r0, r0                        
00404da8  f465         str r4, [r6, #0x5c]                
00404daa  4000         lsls r0, r0, #1                    
00404dac  086a         ldr r0, [r1, #0x20]                
00404dae  4000         lsls r0, r0, #1                    
00404db0  414d         ldr r5, [pc, #0x104]               
00404db2  445f         ldrsh r4, [r0, r5]                 
00404db4  5441         adcs r4, r2                        
00404db6  5f47         bxns fp                            
00404db8  4350         str r3, [r0, r1]                   
00404dba  3a20         movs r0, #0x3a                     
00404dbc  4552         strh r5, [r0, r1]                  
00404dbe  524f         ldr r7, [pc, #0x148]               
00404dc0  523a         subs r2, #0x52                     
00404dc2  2047         bx r4                              
00404dc4  6574         strb r5, [r4, #0x11]               
00404dc6  4372         strb r3, [r0, #9]                  
00404dc8  7970         strb r1, [r7, #1]                  
00404dca  746f         ldr r4, [r6, #0x74]                
00404dcc  5365         str r3, [r2, #0x54]                
00404dce  7373         strb r3, [r6, #0xd]                
00404dd0  696f         ldr r1, [r5, #0x74]                
00404dd2  6e42         rsbs r6, r5, #0                    
00404dd4  7944         add r1, pc                         
00404dd6  6563         str r5, [r4, #0x34]                
00404dd8  6f64         str r7, [r5, #0x44]                
00404dda  6548         ldr r0, [pc, #0x194]               
00404ddc  616e         ldr r1, [r4, #0x64]                
00404dde  646c         ldr r4, [r4, #0x44]                
00404de0  6520         movs r0, #0x65                     
00404de2  6661         str r6, [r4, #0x14]                
00404de4  696c         ldr r1, [r5, #0x44]                
00404de6  6564         str r5, [r4, #0x44]                
00404de8  0a00         movs r2, r1                        
00404dea  0000         movs r0, r0                        
00404dec  cc67         str r4, [r1, #0x7c]                
00404dee  4000         lsls r0, r0, #1                    
00404df0  b562         str r5, [r6, #0x28]                
00404df2  4000         lsls r0, r0, #1                    
00404df4  f8b5         push {r3, r4, r5, r6, r7, lr}      
00404df6  0d46         mov r5, r1                         
00404df8  2ca1         adr r1, #0xb0                      
00404dfa  0446         mov r4, r0                         
00404dfc  0020         movs r0, #0                        
00404dfe  00f0c1fb     bl #0x405584                       
00404e00  c1fb         (undecodable)
00404e02  2869         ldr r0, [r5, #0x10]                
00404e04  b0f1805f     cmp.w r0, #0x10000000              
00404e06  805f         ldrsh r0, [r0, r6]                 
00404e08  0dd3         blo #0x404e26                      
00404e0a  d34d         ldr r5, [pc, #0x34c]               
00404e0c  0320         movs r0, #3                        
00404e0e  4ff47041     mov.w r1, #0xf000                  
00404e10  7041         adcs r0, r6                        
00404e12  a847         blx r5                             
00404e14  0320         movs r0, #3                        
00404e16  0021         movs r1, #0                        
00404e18  a847         blx r5                             
00404e1a  4ff48074     mov.w r4, #0x100                   
00404e1c  8074         strb r0, [r0, #0x12]               
00404e1e  0320         movs r0, #3                        
00404e20  4ff48071     mov.w r1, #0x100                   
00404e22  8071         strb r0, [r0, #6]                  
00404e24  2be0         b #0x404e7e                        
00404e26  d5f81c28     ldr.w r2, [r5, #0x81c]             
00404e28  1c28         cmp r0, #0x1c                      
00404e2a  d5f83868     ldr.w r6, [r5, #0x838]             
00404e2c  3868         ldr r0, [r7]                       
00404e2e  402a         cmp r2, #0x40                      
00404e30  18bf         it ne                              
00404e32  202a         cmp r2, #0x20                      
00404e34  0fd1         bne #0x404e56                      
00404e36  2849         ldr r1, [pc, #0xa0]                
00404e38  f343         mvns r3, r6                        
00404e3a  b3ebd20f     cmp.w r3, r2, lsr #3               
00404e3c  d20f         lsrs r2, r2, #0x1f                 
00404e3e  07d3         blo #0x404e50                      
00404e40  d5f81838     ldr.w r3, [r5, #0x818]             
00404e42  1838         subs r0, #0x18                     
00404e44  4fead20c     lsr.w ip, r2, #3                   
00404e46  d20c         lsrs r2, r2, #0x13                 
00404e48  06eb0c07     add.w r7, r6, ip                   
00404e4a  0c07         lsls r4, r1, #0x1c                 
00404e4c  9f42         cmp r7, r3                         
00404e4e  19d9         bls #0x404e84                      
00404e50  4ff48074     mov.w r4, #0x100                   
00404e52  8074         strb r0, [r0, #0x12]               
00404e54  02e0         b #0x404e5c                        
00404e56  1f49         ldr r1, [pc, #0x7c]                
00404e58  4ff48274     mov.w r4, #0x104                   
00404e5a  8274         strb r2, [r0, #0x12]               
00404e5c  0020         movs r0, #0                        
00404e5e  00f091fb     bl #0x405584                       
00404e60  91fb         (undecodable)
00404e62  1e49         ldr r1, [pc, #0x78]                
00404e64  0020         movs r0, #0                        
00404e66  00f08dfb     bl #0x405584                       
00404e68  8dfb         (undecodable)
00404e6a  bb4d         ldr r5, [pc, #0x2ec]               
00404e6c  0320         movs r0, #3                        
00404e6e  4ff47041     mov.w r1, #0xf000                  
00404e70  7041         adcs r0, r6                        
00404e72  a847         blx r5                             
00404e74  0320         movs r0, #3                        
00404e76  0021         movs r1, #0                        
00404e78  a847         blx r5                             
00404e7a  0320         movs r0, #3                        
00404e7c  2146         mov r1, r4                         
00404e7e  a847         blx r5                             
00404e80  2046         mov r0, r4                         
00404e82  f8bd         pop {r3, r4, r5, r6, r7, pc}       
00404e84  010e         lsrs r1, r0, #0x18                 
00404e86  a819         adds r0, r5, r6                    
00404e88  01eb8101     add.w r1, r1, r1, lsl #2           
00404e8a  8101         lsls r1, r0, #6                    
00404e8c  00f58360     add.w r0, r0, #0x418               
00404e8e  8360         str r3, [r0, #8]                   
00404e90  6246         mov r2, ip                         
00404e92  04eb0111     add.w r1, r4, r1, lsl #4           
00404e94  0111         asrs r1, r0, #4                    
00404e96  01f54471     add.w r1, r1, #0x310               
00404e98  4471         strb r4, [r0, #5]                  
00404e9a  fcf740e9     blx #0x40111c                      
00404e9c  40e90f49     strd r4, sb, [r0, #-0x3c]          
00404e9e  0f49         ldr r1, [pc, #0x3c]                
00404ea0  0020         movs r0, #0                        
00404ea2  0024         movs r4, #0                        
00404ea4  00f06efb     bl #0x405584                       
00404ea6  6efb         (undecodable)
00404ea8  eae7         b #0x404e80                        
00404eaa  00bf         nop                                
00404eac  414d         ldr r5, [pc, #0x104]               
00404eae  445f         ldrsh r4, [r0, r5]                 
00404eb0  5441         adcs r4, r2                        
00404eb2  5f47         bxns fp                            
00404eb4  4350         str r3, [r0, r1]                   
00404eb6  3a20         movs r0, #0x3a                     
00404eb8  5175         strb r1, [r2, #0x15]               
00404eba  6572         strb r5, [r4, #9]                  
00404ebc  7944         add r1, pc                         
00404ebe  6576         strb r5, [r4, #0x19]               
00404ec0  6963         str r1, [r5, #0x34]                
00404ec2  6548         ldr r0, [pc, #0x194]               
00404ec4  616e         ldr r1, [r4, #0x64]                
00404ec6  646c         ldr r4, [r4, #0x44]                
00404ec8  6520         movs r0, #0x65                     
00404eca  454e         ldr r6, [pc, #0x114]               
00404ecc  5445         cmp r4, sl                         
00404ece  520a         lsrs r2, r2, #9                    
00404ed0  0000         movs r0, r0                        
00404ed2  0000         movs r0, r0                        
00404ed4  f465         str r4, [r6, #0x5c]                
00404ed6  4000         lsls r0, r0, #1                    
00404ed8  3e6a         ldr r6, [r7, #0x20]                
00404eda  4000         lsls r0, r0, #1                    
00404edc  7366         str r3, [r6, #0x64]                
00404ede  4000         lsls r0, r0, #1                    
00404ee0  b562         str r5, [r6, #0x28]                
00404ee2  4000         lsls r0, r0, #1                    
00404ee4  7fb5         push {r0, r1, r2, r3, r4, r5, r6, lr} 
00404ee6  0d46         mov r5, r1                         
00404ee8  35a1         adr r1, #0xd4                      
00404eea  0020         movs r0, #0                        
00404eec  0024         movs r4, #0                        
00404eee  00f049fb     bl #0x405584                       
00404ef0  49fb         (undecodable)
00404ef2  d5f85008     ldr.w r0, [r5, #0x850]             
00404ef4  5008         lsrs r0, r2, #1                    
00404ef6  d5f85468     ldr.w r6, [r5, #0x854]             
00404ef8  5468         ldr r4, [r2, #4]                   
00404efa  10f1050f     cmn.w r0, #5                       
00404efc  050f         lsrs r5, r0, #0x1c                 
00404efe  98bf         it ls                              
00404f00  16f1090f     cmn.w r6, #9                       
00404f02  090f         lsrs r1, r1, #0x1c                 
00404f04  3cd9         bls #0x404f80                      
00404f06  05f11001     add.w r1, r5, #0x10                
00404f08  1001         lsls r0, r2, #4                    
00404f0a  0394         str r4, [sp, #0xc]                 
00404f0c  0844         add r0, r1                         
00404f0e  10f8041f     ldrb r1, [r0, #4]!                 
00404f10  041f         subs r4, r0, #4                    
00404f12  4278         ldrb r2, [r0, #1]                  
00404f14  8378         ldrb r3, [r0, #2]                  
00404f16  c078         ldrb r0, [r0, #3]                  
00404f18  41ea0221     orr.w r1, r1, r2, lsl #8           
00404f1a  0221         movs r1, #2                        
00404f1c  43ea0020     orr.w r0, r3, r0, lsl #8           
00404f1e  0020         movs r0, #0                        
00404f20  41ea0040     orr.w r0, r1, r0, lsl #16          
00404f22  0040         ands r0, r0                        
00404f24  03a9         add r1, sp, #0xc                   
00404f26  01f042f9     bl #0x4061ae                       
00404f28  42f90446     vst1.8 {d20, d21, d22}, [r2], r4   
00404f2a  0446         mov r4, r0                         
00404f2c  08bb         cbnz r0, #0x404f72                 
00404f2e  0020         movs r0, #0                        
00404f30  6946         mov r1, sp                         
00404f32  cde90000     strd r0, r0, [sp]                  
00404f34  0000         movs r0, r0                        
00404f36  0398         ldr r0, [sp, #0xc]                 
00404f38  01f05af9     bl #0x4061f0                       
00404f3a  5af9         (undecodable)
00404f3c  0446         mov r4, r0                         
00404f3e  c0b9         cbnz r0, #0x404f72                 
00404f40  dde90012     ldrd r1, r2, [sp]                  
00404f42  0012         asrs r0, r0, #8                    
00404f44  a819         adds r0, r5, r6                    
00404f46  130a         lsrs r3, r2, #8                    
00404f48  150e         lsrs r5, r2, #0x18                 
00404f4a  80f81d34     strb.w r3, [r0, #0x41d]            
00404f4c  1d34         adds r4, #0x1d                     
00404f4e  0b0a         lsrs r3, r1, #8                    
00404f50  80f81934     strb.w r3, [r0, #0x419]            
00404f52  1934         adds r4, #0x19                     
00404f54  00f21c43     addw r3, r0, #0x41c                
00404f56  1c43         orrs r4, r3                        
00404f58  00f58360     add.w r0, r0, #0x418               
00404f5a  8360         str r3, [r0, #8]                   
00404f5c  03f8022b     strb r2, [r3], #2                  
00404f5e  022b         cmp r3, #2                         
00404f60  120c         lsrs r2, r2, #0x10                 
00404f62  00f8021b     strb r1, [r0], #2                  
00404f64  021b         subs r2, r0, r4                    
00404f66  1a70         strb r2, [r3]                      
00404f68  0a0e         lsrs r2, r1, #0x18                 
00404f6a  090c         lsrs r1, r1, #0x10                 
00404f6c  5d70         strb r5, [r3, #1]                  
00404f6e  4270         strb r2, [r0, #1]                  
00404f70  0170         strb r1, [r0]                      
00404f72  1c49         ldr r1, [pc, #0x70]                
00404f74  0020         movs r0, #0                        
00404f76  00f005fb     bl #0x405584                       
00404f78  05fb         (undecodable)
00404f7a  94b9         cbnz r4, #0x404fa2                 
00404f7c  0024         movs r4, #0                        
00404f7e  1be0         b #0x404fb8                        
00404f80  d5f81818     ldr.w r1, [r5, #0x818]             
00404f82  1818         adds r0, r3, r0                    
00404f84  06f10802     add.w r2, r6, #8                   
00404f86  0802         lsls r0, r1, #8                    
00404f88  8a42         cmp r2, r1                         
00404f8a  04d8         bhi #0x404f96                      
00404f8c  d5f81414     ldr.w r1, [r5, #0x414]             
00404f8e  1414         asrs r4, r2, #0x10                 
00404f90  021d         adds r2, r0, #4                    
00404f92  8a42         cmp r2, r1                         
00404f94  b7d9         bls #0x404f06                      
00404f96  1349         ldr r1, [pc, #0x4c]                
00404f98  0020         movs r0, #0                        
00404f9a  00f0f3fa     bl #0x405584                       
00404f9c  f3fa         (undecodable)
00404f9e  4ff48074     mov.w r4, #0x100                   
00404fa0  8074         strb r0, [r0, #0x12]               
00404fa2  fc4d         ldr r5, [pc, #0x3f0]               
00404fa4  0320         movs r0, #3                        
00404fa6  4ff47041     mov.w r1, #0xf000                  
00404fa8  7041         adcs r0, r6                        
00404faa  a847         blx r5                             
00404fac  210c         lsrs r1, r4, #0x10                 
00404fae  0320         movs r0, #3                        
00404fb0  a847         blx r5                             
00404fb2  a1b2         uxth r1, r4                        
00404fb4  0320         movs r0, #3                        
00404fb6  a847         blx r5                             
00404fb8  2046         mov r0, r4                         
00404fba  04b0         add sp, #0x10                      
00404fbc  70bd         pop {r4, r5, r6, pc}               
00404fbe  00bf         nop                                
00404fc0  414d         ldr r5, [pc, #0x104]               
00404fc2  445f         ldrsh r4, [r0, r5]                 
00404fc4  5441         adcs r4, r2                        
00404fc6  5f47         bxns fp                            
00404fc8  4350         str r3, [r0, r1]                   
00404fca  3a20         movs r0, #0x3a                     
00404fcc  5175         strb r1, [r2, #0x15]               
00404fce  6572         strb r5, [r4, #9]                  
00404fd0  794f         ldr r7, [pc, #0x1e4]               
00404fd2  7574         strb r5, [r6, #0x11]               
00404fd4  7075         strb r0, [r6, #0x15]               
00404fd6  7449         ldr r1, [pc, #0x1d0]               
00404fd8  4420         movs r0, #0x44                     
00404fda  454e         ldr r6, [pc, #0x114]               
00404fdc  5445         cmp r4, sl                         
00404fde  520a         lsrs r2, r2, #9                    
00404fe0  0000         movs r0, r0                        
00404fe2  0000         movs r0, r0                        
00404fe4  2066         str r0, [r4, #0x60]                
00404fe6  4000         lsls r0, r0, #1                    
00404fe8  7cb5         push {r2, r3, r4, r5, r6, lr}      
00404fea  0d46         mov r5, r1                         
00404fec  1fa1         adr r1, #0x7c                      
00404fee  0020         movs r0, #0                        
00404ff0  0024         movs r4, #0                        
00404ff2  00f0c7fa     bl #0x405584                       
00404ff4  c7fa         (undecodable)
00404ff6  d5f83468     ldr.w r6, [r5, #0x834]             
00404ff8  3468         ldr r4, [r6]                       
00404ffa  16f1050f     cmn.w r6, #5                       
00404ffc  050f         lsrs r5, r0, #0x1c                 
00404ffe  0bd8         bhi #0x405018                      
00405000  d5f81808     ldr.w r0, [r5, #0x818]             
00405002  1808         lsrs r0, r3, #0x20                 
00405004  311d         adds r1, r6, #4                    
00405006  8142         cmp r1, r0                         
00405008  06d9         bls #0x405018                      
0040500a  2249         ldr r1, [pc, #0x88]                
0040500c  0020         movs r0, #0                        
0040500e  00f0b9fa     bl #0x405584                       
00405010  b9fa         (undecodable)
00405012  4ff48074     mov.w r4, #0x100                   
00405014  8074         strb r0, [r0, #0x12]               
00405016  09e0         b #0x40502c                        
00405018  01a8         add r0, sp, #4                     
0040501a  0194         str r4, [sp, #4]                   
0040501c  01f0d8f8     bl #0x4061d0                       
0040501e  d8f880b1     ldr.w fp, [r8, #0x180]             
00405020  80b1         cbz r0, #0x405044                  
00405022  1c49         ldr r1, [pc, #0x70]                
00405024  0446         mov r4, r0                         
00405026  0020         movs r0, #0                        
00405028  00f0acfa     bl #0x405584                       
0040502a  acfa         (undecodable)
0040502c  d94d         ldr r5, [pc, #0x364]               
0040502e  0320         movs r0, #3                        
00405030  4ff47041     mov.w r1, #0xf000                  
00405032  7041         adcs r0, r6                        
00405034  a847         blx r5                             
00405036  210c         lsrs r1, r4, #0x10                 
00405038  0320         movs r0, #3                        
0040503a  a847         blx r5                             
0040503c  a1b2         uxth r1, r4                        
0040503e  0320         movs r0, #3                        
00405040  a847         blx r5                             
00405042  11e0         b #0x405068                        
00405044  0199         ldr r1, [sp, #4]                   
00405046  a819         adds r0, r5, r6                    
00405048  0024         movs r4, #0                        
0040504a  0a0a         lsrs r2, r1, #8                    
0040504c  80f81924     strb.w r2, [r0, #0x419]            
0040504e  1924         movs r4, #0x19                     
00405050  00f58360     add.w r0, r0, #0x418               
00405052  8360         str r3, [r0, #8]                   
00405054  0a0e         lsrs r2, r1, #0x18                 
00405056  00f8021b     strb r1, [r0], #2                  
00405058  021b         subs r2, r0, r4                    
0040505a  090c         lsrs r1, r1, #0x10                 
0040505c  0170         strb r1, [r0]                      
0040505e  0d49         ldr r1, [pc, #0x34]                
00405060  4270         strb r2, [r0, #1]                  
00405062  0020         movs r0, #0                        
00405064  00f08efa     bl #0x405584                       
00405066  8efa         (undecodable)
00405068  2046         mov r0, r4                         
0040506a  7cbd         pop {r2, r3, r4, r5, r6, pc}       
0040506c  414d         ldr r5, [pc, #0x104]               
0040506e  445f         ldrsh r4, [r0, r5]                 
00405070  5441         adcs r4, r2                        
00405072  5f47         bxns fp                            
00405074  4350         str r3, [r0, r1]                   
00405076  3a20         movs r0, #0x3a                     
00405078  5175         strb r1, [r2, #0x15]               
0040507a  6572         strb r5, [r4, #9]                  
0040507c  794f         ldr r7, [pc, #0x1e4]               
0040507e  7574         strb r5, [r6, #0x11]               
00405080  7075         strb r0, [r6, #0x15]               
00405082  7449         ldr r1, [pc, #0x1d0]               
00405084  4443         muls r4, r0, r4                    
00405086  6f75         strb r7, [r5, #0x15]               
00405088  6e74         strb r6, [r5, #0x11]               
0040508a  2045         cmp r0, r4                         
0040508c  4e54         strb r6, [r1, r1]                  
0040508e  4552         strh r5, [r0, r1]                  
00405090  0a00         movs r2, r1                        
00405092  0000         movs r0, r0                        
00405094  2068         ldr r0, [r4]                       
00405096  4000         lsls r0, r0, #1                    
00405098  b562         str r5, [r6, #0x28]                
0040509a  4000         lsls r0, r0, #1                    
0040509c  f8b5         push {r3, r4, r5, r6, r7, lr}      
0040509e  0e46         mov r6, r1                         
004050a0  0d46         mov r5, r1                         
004050a2  22a1         adr r1, #0x88                      
004050a4  0446         mov r4, r0                         
004050a6  0020         movs r0, #0                        
004050a8  56f8107f     ldr r7, [r6, #0x10]!               
004050aa  107f         ldrb r0, [r2, #0x1c]               
004050ac  00f06afa     bl #0x405584                       
004050ae  6afa         (undecodable)
004050b0  202f         cmp r7, #0x20                      
004050b2  12d3         blo #0x4050da                      
004050b4  3449         ldr r1, [pc, #0xd0]                
004050b6  0020         movs r0, #0                        
004050b8  00f064fa     bl #0x405584                       
004050ba  64fa         (undecodable)
004050bc  264d         ldr r5, [pc, #0x98]                
004050be  0320         movs r0, #3                        
004050c0  4ff47041     mov.w r1, #0xf000                  
004050c2  7041         adcs r0, r6                        
004050c4  a847         blx r5                             
004050c6  0320         movs r0, #3                        
004050c8  0021         movs r1, #0                        
004050ca  a847         blx r5                             
004050cc  0320         movs r0, #3                        
004050ce  40f21341     movw r1, #0x413                    
004050d0  1341         asrs r3, r2                        
004050d2  40f21344     movw r4, #0x413                    
004050d4  1344         add r3, r2                         
004050d6  a847         blx r5                             
004050d8  25e0         b #0x405126                        
004050da  07eb4700     add.w r0, r7, r7, lsl #1           
004050dc  4700         lsls r7, r0, #1                    
004050de  04ebc000     add.w r0, r4, r0, lsl #3           
004050e0  c000         lsls r0, r0, #3                    
004050e2  4068         ldr r0, [r0, #4]                   
004050e4  441e         subs r4, r0, #1                    
004050e6  18bf         it ne                              
004050e8  40f21644     movw r4, #0x416                    
004050ea  1644         add r6, r2                         
004050ec  0128         cmp r0, #1                         
004050ee  0bd1         bne #0x405108                      
004050f0  1a49         ldr r1, [pc, #0x68]                
004050f2  301d         adds r0, r6, #4                    
004050f4  41f62612     movw r2, #0x1926                   
004050f6  2612         asrs r6, r4, #8                    
004050f8  41f62616     movw r6, #0x1926                   
004050fa  2616         asrs r6, r4, #0x18                 
004050fc  fcf70ee8     blx #0x40111c                      
004050fe  0ee8         (undecodable)
00405100  41f64810     movw r0, #0x1948                   
00405102  4810         asrs r0, r1, #1                    
00405104  2e50         str r6, [r5, r0]                   
00405106  0ae0         b #0x40511e                        
00405108  134d         ldr r5, [pc, #0x4c]                
0040510a  0320         movs r0, #3                        
0040510c  4ff47041     mov.w r1, #0xf000                  
0040510e  7041         adcs r0, r6                        
00405110  a847         blx r5                             
00405112  0320         movs r0, #3                        
00405114  0021         movs r1, #0                        
00405116  a847         blx r5                             
00405118  a1b2         uxth r1, r4                        
0040511a  0320         movs r0, #3                        
0040511c  a847         blx r5                             
0040511e  10a1         adr r1, #0x40                      
00405120  0020         movs r0, #0                        
00405122  00f02ffa     bl #0x405584                       
00405124  2ffa         (undecodable)
00405126  2046         mov r0, r4                         
00405128  f8bd         pop {r3, r4, r5, r6, r7, pc}       
0040512a  00bf         nop                                
0040512c  414d         ldr r5, [pc, #0x104]               
0040512e  445f         ldrsh r4, [r0, r5]                 
00405130  5441         adcs r4, r2                        
00405132  5f47         bxns fp                            
00405134  4350         str r3, [r0, r1]                   
00405136  3a20         movs r0, #0x3a                     
00405138  5365         str r3, [r2, #0x54]                
0040513a  6e64         str r6, [r5, #0x44]                
0040513c  4154         strb r1, [r0, r1]                  
0040513e  4944         add r1, sb                         
00405140  524d         ldr r5, [pc, #0x148]               
00405142  4365         str r3, [r0, #0x54]                
00405144  7274         strb r2, [r6, #0x11]               
00405146  6966         str r1, [r5, #0x64]                
00405148  6963         str r1, [r5, #0x34]                
0040514a  6174         strb r1, [r4, #0x11]               
0040514c  6520         movs r0, #0x65                     
0040514e  454e         ldr r6, [pc, #0x114]               
00405150  5445         cmp r4, sl                         
00405152  520a         lsrs r2, r2, #9                    
00405154  0000         movs r0, r0                        
00405156  0000         movs r0, r0                        
00405158  b562         str r5, [r6, #0x28]                
0040515a  4000         lsls r0, r0, #1                    
0040515c  0070         strb r0, [r0]                      
0040515e  4000         lsls r0, r0, #1                    
00405160  414d         ldr r5, [pc, #0x104]               
00405162  445f         ldrsh r4, [r0, r5]                 
00405164  5441         adcs r4, r2                        
00405166  5f47         bxns fp                            
00405168  4350         str r3, [r0, r1]                   
0040516a  3a20         movs r0, #0x3a                     
0040516c  5365         str r3, [r2, #0x54]                
0040516e  6e64         str r6, [r5, #0x44]                
00405170  4154         strb r1, [r0, r1]                  
00405172  4944         add r1, sb                         
00405174  524d         ldr r5, [pc, #0x148]               
00405176  4365         str r3, [r0, #0x54]                
00405178  7274         strb r2, [r6, #0x11]               
0040517a  6966         str r1, [r5, #0x64]                
0040517c  6963         str r1, [r5, #0x34]                
0040517e  6174         strb r1, [r4, #0x11]               
00405180  6520         movs r0, #0x65                     
00405182  4558         ldr r5, [r0, r1]                   
00405184  4954         strb r1, [r1, r1]                  
00405186  0a00         movs r2, r1                        
00405188  6064         str r0, [r4, #0x44]                
0040518a  4000         lsls r0, r0, #1                    
0040518c  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
0040518e  f041         rors r0, r6                        
00405190  9cb0         sub sp, #0x70                      
00405192  454e         ldr r6, [pc, #0x114]               
00405194  0446         mov r4, r0                         
00405196  454d         ldr r5, [pc, #0x114]               
00405198  2021         movs r1, #0x20                     
0040519a  2027         movs r7, #0x20                     
0040519c  3068         ldr r0, [r6]                       
0040519e  05f10052     add.w r2, r5, #0x20000000          
004051a0  0052         strh r0, [r0, r0]                  
004051a2  1b90         str r0, [sp, #0x6c]                
004051a4  13a8         add r0, sp, #0x4c                  
004051a6  fef789f9     bl #0x4034bc                       
004051a8  89f910b1     vst2.8 {d11[0], d12[0]}, [sb:0x10], r0 
004051aa  10b1         cbz r0, #0x4051b2                  
004051ac  40f21654     movw r4, #0x516                    
004051ae  1654         strb r6, [r2, r0]                  
004051b0  6fe0         b #0x405292                        
004051b2  0df12c08     add.w r8, sp, #0x2c                
004051b4  2c08         lsrs r4, r5, #0x20                 
004051b6  1021         movs r1, #0x10                     
004051b8  0220         movs r0, #2                        
004051ba  04f12003     add.w r3, r4, #0x20                
004051bc  2003         lsls r0, r4, #0xc                  
004051be  cde90018     strd r1, r8, [sp]                  
004051c0  0018         adds r0, r0, r0                    
004051c2  3ba2         adr r2, #0xec                      
004051c4  cde90270     strd r7, r0, [sp, #8]              
004051c6  0270         strb r2, [r0]                      
004051c8  13a8         add r0, sp, #0x4c                  
004051ca  2021         movs r1, #0x20                     
004051cc  fef740f9     bl #0x403450                       
004051ce  40f910b1     vst4.8 {d27, d29, d31, d1}, [r0:0x40], r0 
004051d0  10b1         cbz r0, #0x4051d8                  
004051d2  40f21754     movw r4, #0x517                    
004051d4  1754         strb r7, [r2, r0]                  
004051d6  5ce0         b #0x405292                        
004051d8  0020         movs r0, #0                        
004051da  06aa         add r2, sp, #0x18                  
004051dc  cde90600     strd r0, r0, [sp, #0x18]           
004051de  0600         movs r6, r0                        
004051e0  05f1e040     add.w r0, r5, #0x70000000          
004051e2  e040         lsrs r0, r4                        
004051e4  4ff48071     mov.w r1, #0x100                   
004051e6  8071         strb r0, [r0, #6]                  
004051e8  00f062f9     bl #0x4054b0                       
004051ea  62f910b1     vld4.8 {d27, d29, d31, d1}, [r2:0x40], r0 
004051ec  10b1         cbz r0, #0x4051f4                  
004051ee  4ff4a264     mov.w r4, #0x510                   
004051f0  a264         str r2, [r4, #0x48]                
004051f2  46e0         b #0x405282                        
004051f4  2020         movs r0, #0x20                     
004051f6  08a9         add r1, sp, #0x20                  
004051f8  cde90980     strd r8, r0, [sp, #0x24]           
004051fa  0980         strh r1, [r1]                      
004051fc  4ff04040     mov.w r0, #-0x40000000             
004051fe  4040         eors r0, r0                        
00405200  0890         str r0, [sp, #0x20]                
00405202  0122         movs r2, #1                        
00405204  0698         ldr r0, [sp, #0x18]                
00405206  00f0a1fa     bl #0x40574c                       
00405208  a1fa         (undecodable)
0040520a  10b1         cbz r0, #0x405212                  
0040520c  40f21154     movw r4, #0x511                    
0040520e  1154         strb r1, [r2, r0]                  
00405210  37e0         b #0x405282                        
00405212  07a8         add r0, sp, #0x1c                  
00405214  2946         mov r1, r5                         
00405216  0422         movs r2, #4                        
00405218  4ff48073     mov.w r3, #0x100                   
0040521a  8073         strb r0, [r0, #0xe]                
0040521c  00f02af9     bl #0x405474                       
0040521e  2af910b1     vld4.8 {d11, d13, d15, d17}, [sl:0x40], r0 
00405220  10b1         cbz r0, #0x405228                  
00405222  40f21254     movw r4, #0x512                    
00405224  1254         strb r2, [r2, r0]                  
00405226  2ce0         b #0x405282                        
00405228  dde90610     ldrd r1, r0, [sp, #0x18]           
0040522a  0610         asrs r6, r0, #0x20                 
0040522c  00f0a8fa     bl #0x405780                       
0040522e  a8fa         (undecodable)
00405230  10b1         cbz r0, #0x405238                  
00405232  40f21354     movw r4, #0x513                    
00405234  1354         strb r3, [r2, r0]                  
00405236  24e0         b #0x405282                        
00405238  0798         ldr r0, [sp, #0x1c]                
0040523a  0021         movs r1, #0                        
0040523c  0022         movs r2, #0                        
0040523e  00f040fa     bl #0x4056c2                       
00405240  40fa         (undecodable)
00405242  e578         ldrb r5, [r4, #3]                  
00405244  2020         movs r0, #0x20                     
00405246  a378         ldrb r3, [r4, #2]                  
00405248  05af         add r7, sp, #0x14                  
0040524a  6278         ldrb r2, [r4, #1]                  
0040524c  2178         ldrb r1, [r4]                      
0040524e  43ea0523     orr.w r3, r3, r5, lsl #8           
00405250  0523         movs r3, #5                        
00405252  0590         str r0, [sp, #0x14]                
00405254  41ea0221     orr.w r1, r1, r2, lsl #8           
00405256  0221         movs r1, #2                        
00405258  0798         ldr r0, [sp, #0x1c]                
0040525a  41ea0341     orr.w r1, r1, r3, lsl #16          
0040525c  0341         asrs r3, r0                        
0040525e  04f16003     add.w r3, r4, #0x60                
00405260  6003         lsls r0, r4, #0xd                  
00405262  a1f12002     sub.w r2, r1, #0x20                
00405264  2002         lsls r0, r4, #8                    
00405266  2146         mov r1, r4                         
00405268  0097         str r7, [sp]                       
0040526a  00f010fa     bl #0x40568e                       
0040526c  10fa         (undecodable)
0040526e  0599         ldr r1, [sp, #0x14]                
00405270  b1f12004     subs.w r4, r1, #0x20               
00405272  2004         lsls r0, r4, #0x10                 
00405274  18bf         it ne                              
00405276  4ff41974     mov.w r4, #0x264                   
00405278  1974         strb r1, [r3, #0x10]               
0040527a  0028         cmp r0, #0                         
0040527c  18bf         it ne                              
0040527e  40f21554     movw r4, #0x515                    
00405280  1554         strb r5, [r2, r0]                  
00405282  0798         ldr r0, [sp, #0x1c]                
00405284  08b1         cbz r0, #0x40528a                  
00405286  00f0c8f9     bl #0x40561a                       
00405288  c8f90698     vst1.32 {d25[0]}, [r8], r6         
0040528a  0698         ldr r0, [sp, #0x18]                
0040528c  08b1         cbz r0, #0x405292                  
0040528e  00f0d6f9     bl #0x40563e                       
00405290  d6f9         (undecodable)
00405292  3068         ldr r0, [r6]                       
00405294  1b99         ldr r1, [sp, #0x6c]                
00405296  401a         subs r0, r0, r1                    
00405298  02bf         ittt eq                            
0040529a  2046         mov r0, r4                         
0040529c  1cb0         add sp, #0x70                      
0040529e  bde8f081     pop.w {r4, r5, r6, r7, r8, pc}     
004052a0  f081         strh r0, [r6, #0xe]                
004052a2  00f056ef     blx #0x406150                      
004052a4  56ef00bf     vmax.f16 d27, d6, d0               
004052a6  00bf         nop                                
004052a8  4c61         str r4, [r1, #0x14]                
004052aa  4000         lsls r0, r0, #1                    
004052ac  0400         movs r4, r0                        
004052ae  0030         adds r0, #0                        
004052b0  5643         muls r6, r2, r6                    
004052b2  4343         muls r3, r0, r3                    
004052b4  5f43         muls r7, r3, r7                    
004052b6  4c49         ldr r1, [pc, #0x130]               
004052b8  454e         ldr r6, [pc, #0x114]               
004052ba  5400         lsls r4, r2, #1                    
004052bc  b0b5         push {r4, r5, r7, lr}              
004052be  0c46         mov r4, r1                         
004052c0  27a1         adr r1, #0x9c                      
004052c2  0546         mov r5, r0                         
004052c4  0020         movs r0, #0                        
004052c6  00f05df9     bl #0x405584                       
004052c8  5df9         (undecodable)
004052ca  2069         ldr r0, [r4, #0x10]                
004052cc  b0f1804f     cmp.w r0, #0x40000000              
004052ce  804f         ldr r7, [pc, #0x200]               
004052d0  0dd3         blo #0x4052ee                      
004052d2  304d         ldr r5, [pc, #0xc0]                
004052d4  0320         movs r0, #3                        
004052d6  4ff47041     mov.w r1, #0xf000                  
004052d8  7041         adcs r0, r6                        
004052da  a847         blx r5                             
004052dc  0320         movs r0, #3                        
004052de  0021         movs r1, #0                        
004052e0  a847         blx r5                             
004052e2  4ff48074     mov.w r4, #0x100                   
004052e4  8074         strb r0, [r0, #0x12]               
004052e6  0320         movs r0, #3                        
004052e8  4ff48071     mov.w r1, #0x100                   
004052ea  8071         strb r0, [r0, #6]                  
004052ec  1be0         b #0x405326                        
004052ee  000e         lsrs r0, r0, #0x18                 
004052f0  5821         movs r1, #0x58                     
004052f2  10fb0151     smlabb r1, r0, r1, r5              
004052f4  0151         str r1, [r0, r4]                   
004052f6  d1f82018     ldr.w r1, [r1, #0x820]             
004052f8  2018         adds r0, r4, r0                    
004052fa  0229         cmp r1, #2                         
004052fc  04bf         itt eq                             
004052fe  6169         ldr r1, [r4, #0x14]                
00405300  1029         cmp r1, #0x10                      
00405302  13d0         beq #0x40532c                      
00405304  2249         ldr r1, [pc, #0x88]                
00405306  0020         movs r0, #0                        
00405308  00f03cf9     bl #0x405584                       
0040530a  3cf9214d     ldrsh r4, [ip, #-0x21]!            
0040530c  214d         ldr r5, [pc, #0x84]                
0040530e  0320         movs r0, #3                        
00405310  4ff47041     mov.w r1, #0xf000                  
00405312  7041         adcs r0, r6                        
00405314  a847         blx r5                             
00405316  0320         movs r0, #3                        
00405318  0021         movs r1, #0                        
0040531a  a847         blx r5                             
0040531c  40f22134     movw r4, #0x321                    
0040531e  2134         adds r4, #0x21                     
00405320  0320         movs r0, #3                        
00405322  40f22131     movw r1, #0x321                    
00405324  2131         adds r1, #0x21                     
00405326  a847         blx r5                             
00405328  2046         mov r0, r4                         
0040532a  b0bd         pop {r4, r5, r7, pc}               
0040532c  5821         movs r1, #0x58                     
0040532e  10fb0150     smlabb r0, r0, r1, r5              
00405330  0150         str r1, [r0, r0]                   
00405332  1021         movs r1, #0x10                     
00405334  00f63405     addw r5, r0, #0x834                
00405336  3405         lsls r4, r6, #0x14                 
00405338  2846         mov r0, r5                         
0040533a  00f093f9     bl #0x405664                       
0040533c  93f941f6     pli [r3, #0x641]                   
0040533e  41f65010     movw r0, #0x1950                   
00405340  5010         asrs r0, r2, #1                    
00405342  2044         add r0, r4                         
00405344  95e81e00     ldm.w r5, {r1, r2, r3, r4}         
00405346  1e00         movs r6, r3                        
00405348  1ec0         stm r0!, {r1, r2, r3, r4}          
0040534a  13a1         adr r1, #0x4c                      
0040534c  0020         movs r0, #0                        
0040534e  0024         movs r4, #0                        
00405350  00f018f9     bl #0x405584                       
00405352  18f90e49     ldrsb r4, [r8], #-0xe              
00405354  0e49         ldr r1, [pc, #0x38]                
00405356  0020         movs r0, #0                        
00405358  00f014f9     bl #0x405584                       
0040535a  14f9         (undecodable)
0040535c  e4e7         b #0x405328                        
0040535e  00bf         nop                                
00405360  414d         ldr r5, [pc, #0x104]               
00405362  445f         ldrsh r4, [r0, r5]                 
00405364  5441         adcs r4, r2                        
00405366  5f47         bxns fp                            
00405368  4350         str r3, [r0, r1]                   
0040536a  3a20         movs r0, #0x3a                     
0040536c  5374         strb r3, [r2, #0x11]               
0040536e  6172         strb r1, [r4, #9]                  
00405370  744b         ldr r3, [pc, #0x1d0]               
00405372  6579         ldrb r5, [r4, #5]                  
00405374  5265         str r2, [r2, #0x54]                
00405376  6672         strb r6, [r4, #9]                  
00405378  6573         strb r5, [r4, #0xd]                
0040537a  6843         muls r0, r5, r0                    
0040537c  7279         ldrb r2, [r6, #5]                  
0040537e  7074         strb r0, [r6, #0x11]               
00405380  6f53         strh r7, [r5, r5]                  
00405382  6573         strb r5, [r4, #0xd]                
00405384  7369         ldr r3, [r6, #0x14]                
00405386  6f6e         ldr r7, [r5, #0x64]                
00405388  2045         cmp r0, r4                         
0040538a  4e54         strb r6, [r1, r1]                  
0040538c  4552         strh r5, [r0, r1]                  
0040538e  0a00         movs r2, r1                        
00405390  056c         ldr r5, [r0, #0x40]                
00405392  4000         lsls r0, r0, #1                    
00405394  b562         str r5, [r6, #0x28]                
00405396  4000         lsls r0, r0, #1                    
00405398  414d         ldr r5, [pc, #0x104]               
0040539a  445f         ldrsh r4, [r0, r5]                 
0040539c  5441         adcs r4, r2                        
0040539e  5f47         bxns fp                            
004053a0  4350         str r3, [r0, r1]                   
004053a2  3a20         movs r0, #0x3a                     
004053a4  5374         strb r3, [r2, #0x11]               
004053a6  6172         strb r1, [r4, #9]                  
004053a8  7420         movs r0, #0x74                     
004053aa  6372         strb r3, [r4, #9]                  
004053ac  7970         strb r1, [r7, #1]                  
004053ae  746f         ldr r4, [r6, #0x74]                
004053b0  2073         strb r0, [r4, #0xc]                
004053b2  6573         strb r5, [r4, #0xd]                
004053b4  7369         ldr r3, [r6, #0x14]                
004053b6  6f6e         ldr r7, [r5, #0x64]                
004053b8  206b         ldr r0, [r4, #0x30]                
004053ba  6579         ldrb r5, [r4, #5]                  
004053bc  2072         strb r0, [r4, #8]                  
004053be  6566         str r5, [r4, #0x64]                
004053c0  7265         str r2, [r6, #0x54]                
004053c2  7368         ldr r3, [r6, #4]                   
004053c4  2063         str r0, [r4, #0x30]                
004053c6  6f6d         ldr r7, [r5, #0x54]                
004053c8  706c         ldr r0, [r6, #0x44]                
004053ca  6574         strb r5, [r4, #0x11]               
004053cc  6564         str r5, [r4, #0x44]                
004053ce  0a00         movs r2, r1                        
004053d0  40b1         cbz r0, #0x4053e4                  
004053d2  10b5         push {r4, lr}                      
004053d4  0446         mov r4, r0                         
004053d6  fef792f8     bl #0x4034fe                       
004053d8  92f82046     ldrb.w r4, [r2, #0x620]            
004053da  2046         mov r0, r4                         
004053dc  bde81040     pop.w {r4, lr}                     
004053de  1040         ands r0, r2                        
004053e0  00f008b9     b.w #0x4055f4                      
004053e2  08b9         cbnz r0, #0x4053e8                 
004053e4  7047         bx lr                              
004053e6  0020         movs r0, #0                        
004053e8  7047         bx lr                              
004053ea  7047         bx lr                              
004053ec  b0b5         push {r4, r5, r7, lr}              
004053ee  114c         ldr r4, [pc, #0x44]                
004053f0  80b1         cbz r0, #0x405414                  
004053f2  02f00f01     and r1, r2, #0xf                   
004053f4  0f01         lsls r7, r1, #4                    
004053f6  0729         cmp r1, #7                         
004053f8  0cd1         bne #0x405414                      
004053fa  5bb1         cbz r3, #0x405414                  
004053fc  5968         ldr r1, [r3, #4]                   
004053fe  42f65812     movw r2, #0x2958                   
00405400  5812         asrs r0, r3, #9                    
00405402  9142         cmp r1, r2                         
00405404  01d2         bhs #0x40540a                      
00405406  0a34         adds r4, #0xa                      
00405408  04e0         b #0x405414                        
0040540a  1968         ldr r1, [r3]                       
0040540c  fef796ff     bl #0x40433c                       
0040540e  96ff0446     vrsubhn.i32 d4, q3, q2             
00405410  0446         mov r4, r0                         
00405412  60b1         cbz r0, #0x40542e                  
00405414  f74d         ldr r5, [pc, #0x3dc]               
00405416  0320         movs r0, #3                        
00405418  4ff47041     mov.w r1, #0xf000                  
0040541a  7041         adcs r0, r6                        
0040541c  a847         blx r5                             
0040541e  210c         lsrs r1, r4, #0x10                 
00405420  0320         movs r0, #3                        
00405422  a847         blx r5                             
00405424  a1b2         uxth r1, r4                        
00405426  0320         movs r0, #3                        
00405428  a847         blx r5                             
0040542a  2046         mov r0, r4                         
0040542c  b0bd         pop {r4, r5, r7, pc}               
0040542e  0024         movs r4, #0                        
00405430  fbe7         b #0x40542a                        
00405432  00bf         nop                                
00405434  0600         movs r6, r0                        
00405436  ffff10b5     vsli.32 d27, d0, #0x1f             
00405438  10b5         push {r4, lr}                      
0040543a  41f61060     movw r0, #0x1e10                   
0040543c  1060         str r0, [r2]                       
0040543e  0021         movs r1, #0                        
00405440  1446         mov r4, r2                         
00405442  00f055f9     bl #0x4056f0                       
00405444  55f9         (undecodable)
00405446  2060         str r0, [r4]                       
00405448  18b1         cbz r0, #0x405452                  
0040544a  fef755ff     bl #0x4042f8                       
0040544c  55ff0020     vhadd.u16 d18, d5, d0              
0040544e  0020         movs r0, #0                        
00405450  10bd         pop {r4, pc}                       
00405452  e84c         ldr r4, [pc, #0x3a0]               
00405454  0320         movs r0, #3                        
00405456  4ff47041     mov.w r1, #0xf000                  
00405458  7041         adcs r0, r6                        
0040545a  a047         blx r4                             
0040545c  0320         movs r0, #3                        
0040545e  4ff6ff71     movw r1, #0xffff                   
00405460  ff71         strb r7, [r7, #7]                  
00405462  a047         blx r4                             
00405464  0320         movs r0, #3                        
00405466  0c21         movs r1, #0xc                      
00405468  a047         blx r4                             
0040546a  0148         ldr r0, [pc, #4]                   
0040546c  10bd         pop {r4, pc}                       
0040546e  00bf         nop                                
00405470  0c00         movs r4, r1                        
00405472  ffff2de9     vtbl.8 d30, {d15, d16}, d29        
00405474  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
00405476  f041         rors r0, r6                        
00405478  a0b0         sub sp, #0x80                      
0040547a  8046         mov r8, r0                         
0040547c  6c46         mov r4, sp                         
0040547e  04f10800     add.w r0, r4, #8                   
00405480  0800         movs r0, r1                        
00405482  0f46         mov r7, r1                         
00405484  2021         movs r1, #0x20                     
00405486  1d46         mov r5, r3                         
00405488  1646         mov r6, r2                         
0040548a  fbf7dffe     bl #0x40124c                       
0040548c  dffe0220     cdp2 p0, #0xd, c2, c15, c2, #0     
0040548e  0220         movs r0, #2                        
00405490  1195         str r5, [sp, #0x44]                
00405492  cde90f76     strd r7, r6, [sp, #0x3c]           
00405494  0f76         strb r7, [r1, #0x18]               
00405496  2146         mov r1, r4                         
00405498  0190         str r0, [sp, #4]                   
0040549a  0120         movs r0, #1                        
0040549c  0090         str r0, [sp]                       
0040549e  0120         movs r0, #1                        
004054a0  f2df         svc #0xf2                          
004054a2  10b9         cbnz r0, #0x4054aa                 
004054a4  0e99         ldr r1, [sp, #0x38]                
004054a6  c8f80010     str.w r1, [r8]                     
004054a8  0010         asrs r0, r0, #0x20                 
004054aa  20b0         add sp, #0x80                      
004054ac  bde8f081     pop.w {r4, r5, r6, r7, r8, pc}     
004054ae  f081         strh r0, [r6, #0xe]                
004054b0  f0b5         push {r4, r5, r6, r7, lr}          
004054b2  9fb0         sub sp, #0x7c                      
004054b4  0646         mov r6, r0                         
004054b6  6f46         mov r7, sp                         
004054b8  07f10800     add.w r0, r7, #8                   
004054ba  0800         movs r0, r1                        
004054bc  0d46         mov r5, r1                         
004054be  2021         movs r1, #0x20                     
004054c0  1446         mov r4, r2                         
004054c2  fbf7c3fe     bl #0x40124c                       
004054c4  c3fe3020     mcr2 p0, #6, r2, c3, c0, #1        
004054c6  3020         movs r0, #0x30                     
004054c8  cde90e65     strd r6, r5, [sp, #0x38]           
004054ca  0e65         str r6, [r1, #0x50]                
004054cc  0090         str r0, [sp]                       
004054ce  0220         movs r0, #2                        
004054d0  0190         str r0, [sp, #4]                   
004054d2  0120         movs r0, #1                        
004054d4  3946         mov r1, r7                         
004054d6  f2df         svc #0xf2                          
004054d8  08b9         cbnz r0, #0x4054de                 
004054da  1099         ldr r1, [sp, #0x40]                
004054dc  2160         str r1, [r4]                       
004054de  1fb0         add sp, #0x7c                      
004054e0  f0bd         pop {r4, r5, r6, r7, pc}           
004054e2  b0b5         push {r4, r5, r7, lr}              
004054e4  9fb0         sub sp, #0x7c                      
004054e6  0024         movs r4, #0                        
004054e8  0225         movs r5, #2                        
004054ea  cde90844     strd r4, r4, [sp, #0x20]           
004054ec  0844         add r0, r1                         
004054ee  0195         str r5, [sp, #4]                   
004054f0  cde90e40     strd r4, r0, [sp, #0x38]           
004054f2  0e40         ands r6, r1                        
004054f4  0920         movs r0, #9                        
004054f6  0090         str r0, [sp]                       
004054f8  2498         ldr r0, [sp, #0x90]                
004054fa  0690         str r0, [sp, #0x18]                
004054fc  2398         ldr r0, [sp, #0x8c]                
004054fe  cde90430     strd r3, r0, [sp, #0x10]           
00405500  0430         adds r0, #4                        
00405502  259b         ldr r3, [sp, #0x94]                
00405504  0291         str r1, [sp, #8]                   
00405506  6946         mov r1, sp                         
00405508  1868         ldr r0, [r3]                       
0040550a  0790         str r0, [sp, #0x1c]                
0040550c  02eb4200     add.w r0, r2, r2, lsl #1           
0040550e  4200         lsls r2, r0, #1                    
00405510  8000         lsls r0, r0, #2                    
00405512  0390         str r0, [sp, #0xc]                 
00405514  0120         movs r0, #1                        
00405516  f2df         svc #0xf2                          
00405518  08b9         cbnz r0, #0x40551e                 
0040551a  0799         ldr r1, [sp, #0x1c]                
0040551c  1960         str r1, [r3]                       
0040551e  1fb0         add sp, #0x7c                      
00405520  b0bd         pop {r4, r5, r7, pc}               
00405522  10b5         push {r4, lr}                      
00405524  a0b0         sub sp, #0x80                      
00405526  0024         movs r4, #0                        
00405528  cde90844     strd r4, r4, [sp, #0x20]           
0040552a  0844         add r0, r1                         
0040552c  cde90644     strd r4, r4, [sp, #0x18]           
0040552e  0644         add r6, r0                         
00405530  0224         movs r4, #2                        
00405532  0e90         str r0, [sp, #0x38]                
00405534  0720         movs r0, #7                        
00405536  0090         str r0, [sp]                       
00405538  02a8         add r0, sp, #8                     
0040553a  0194         str r4, [sp, #4]                   
0040553c  0ec0         stm r0!, {r1, r2, r3}              
0040553e  6946         mov r1, sp                         
00405540  229a         ldr r2, [sp, #0x88]                
00405542  1068         ldr r0, [r2]                       
00405544  0590         str r0, [sp, #0x14]                
00405546  0120         movs r0, #1                        
00405548  f2df         svc #0xf2                          
0040554a  08b9         cbnz r0, #0x405550                 
0040554c  0599         ldr r1, [sp, #0x14]                
0040554e  1160         str r1, [r2]                       
00405550  20b0         add sp, #0x80                      
00405552  10bd         pop {r4, pc}                       
00405554  f0b5         push {r4, r5, r6, r7, lr}          
00405556  9fb0         sub sp, #0x7c                      
00405558  0646         mov r6, r0                         
0040555a  6f46         mov r7, sp                         
0040555c  07f11000     add.w r0, r7, #0x10                
0040555e  1000         movs r0, r2                        
00405560  0d46         mov r5, r1                         
00405562  1821         movs r1, #0x18                     
00405564  1446         mov r4, r2                         
00405566  fbf771fe     bl #0x40124c                       
00405568  71fe0520     cdp2 p0, #7, c2, c1, c5, #0        
0040556a  0520         movs r0, #5                        
0040556c  0e96         str r6, [sp, #0x38]                
0040556e  0090         str r0, [sp]                       
00405570  0220         movs r0, #2                        
00405572  0394         str r4, [sp, #0xc]                 
00405574  3946         mov r1, r7                         
00405576  cde90105     strd r0, r5, [sp, #4]              
00405578  0105         lsls r1, r0, #0x14                 
0040557a  0120         movs r0, #1                        
0040557c  f2df         svc #0xf2                          
0040557e  1fb0         add sp, #0x7c                      
00405580  f0bd         pop {r4, r5, r6, r7, pc}           
00405582  0000         movs r0, r0                        
00405584  82b0         sub sp, #8                         
00405586  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
00405588  f041         rors r0, r6                        
0040558a  e4b0         sub sp, #0x190                     
0040558c  bd4f         ldr r7, [pc, #0x2f4]               
0040558e  22ac         add r4, sp, #0x88                  
00405590  cde96a23     strd r2, r3, [sp, #0x1a8]          
00405592  6a23         movs r3, #0x6a                     
00405594  0646         mov r6, r0                         
00405596  0d46         mov r5, r1                         
00405598  4ff48071     mov.w r1, #0x100                   
0040559a  8071         strb r0, [r0, #6]                  
0040559c  3868         ldr r0, [r7]                       
0040559e  4ff48078     mov.w r8, #0x100                   
004055a0  8078         ldrb r0, [r0, #2]                  
004055a2  6390         str r0, [sp, #0x18c]               
004055a4  2046         mov r0, r4                         
004055a6  fbf751fe     bl #0x40124c                       
004055a8  51fe         (undecodable)
004055aa  6aab         add r3, sp, #0x1a8                 
004055ac  2046         mov r0, r4                         
004055ae  ff21         movs r1, #0xff                     
004055b0  2a46         mov r2, r5                         
004055b2  0193         str r3, [sp, #4]                   
004055b4  fbf76cfd     bl #0x401090                       
004055b6  6cfd02ad     stc2l p13, c10, [ip, #-8]!         
004055b8  02ad         add r5, sp, #8                     
004055ba  1821         movs r1, #0x18                     
004055bc  05f11000     add.w r0, r5, #0x10                
004055be  1000         movs r0, r2                        
004055c0  fbf744fe     bl #0x40124c                       
004055c2  44fe5320     mcr2 p0, #2, r2, c4, c3, #2        
004055c4  5320         movs r0, #0x53                     
004055c6  03a9         add r1, sp, #0xc                   
004055c8  0290         str r0, [sp, #8]                   
004055ca  0220         movs r0, #2                        
004055cc  1096         str r6, [sp, #0x40]                
004055ce  81e81101     stm.w r1, {r0, r4, r8}             
004055d0  1101         lsls r1, r2, #4                    
004055d2  0120         movs r0, #1                        
004055d4  2946         mov r1, r5                         
004055d6  f2df         svc #0xf2                          
004055d8  3868         ldr r0, [r7]                       
004055da  6399         ldr r1, [sp, #0x18c]               
004055dc  401a         subs r0, r0, r1                    
004055de  01bf         itttt eq                           
004055e0  0020         movs r0, #0                        
004055e2  64b0         add sp, #0x190                     
004055e4  bde8f041     pop.w {r4, r5, r6, r7, r8, lr}     
004055e6  f041         rors r0, r6                        
004055e8  02b0         add sp, #8                         
004055ea  08bf         it eq                              
004055ec  7047         bx lr                              
004055ee  00f0b0ed     blx #0x406150                      
004055f0  b0ed00bf     ldc p15, c11, [r0, #0]!            
004055f2  00bf         nop                                
004055f4  b0b5         push {r4, r5, r7, lr}              
004055f6  a0b0         sub sp, #0x80                      
004055f8  0446         mov r4, r0                         
004055fa  6d46         mov r5, sp                         
004055fc  05f10800     add.w r0, r5, #8                   
004055fe  0800         movs r0, r1                        
00405600  2021         movs r1, #0x20                     
00405602  fbf723fe     bl #0x40124c                       
00405604  23fe2220     cdp2 p0, #2, c2, c3, c2, #1        
00405606  2220         movs r0, #0x22                     
00405608  0e94         str r4, [sp, #0x38]                
0040560a  0090         str r0, [sp]                       
0040560c  0220         movs r0, #2                        
0040560e  0190         str r0, [sp, #4]                   
00405610  2846         mov r0, r5                         
00405612  fdf783f9     bl #0x40291c                       
00405614  83f920b0     vst1.8 {d11[1]}, [r3], r0          
00405616  20b0         add sp, #0x80                      
00405618  b0bd         pop {r4, r5, r7, pc}               
0040561a  b0b5         push {r4, r5, r7, lr}              
0040561c  a0b0         sub sp, #0x80                      
0040561e  0446         mov r4, r0                         
00405620  6d46         mov r5, sp                         
00405622  05f10800     add.w r0, r5, #8                   
00405624  0800         movs r0, r1                        
00405626  2021         movs r1, #0x20                     
00405628  fbf710fe     bl #0x40124c                       
0040562a  10fe0220     cdp2 p0, #1, c2, c0, c2, #0        
0040562c  0220         movs r0, #2                        
0040562e  0e94         str r4, [sp, #0x38]                
00405630  cde90000     strd r0, r0, [sp]                  
00405632  0000         movs r0, r0                        
00405634  0120         movs r0, #1                        
00405636  2946         mov r1, r5                         
00405638  f2df         svc #0xf2                          
0040563a  20b0         add sp, #0x80                      
0040563c  b0bd         pop {r4, r5, r7, pc}               
0040563e  b0b5         push {r4, r5, r7, lr}              
00405640  a0b0         sub sp, #0x80                      
00405642  0446         mov r4, r0                         
00405644  6d46         mov r5, sp                         
00405646  05f10800     add.w r0, r5, #8                   
00405648  0800         movs r0, r1                        
0040564a  2021         movs r1, #0x20                     
0040564c  fbf7fefd     bl #0x40124c                       
0040564e  fefd3120     ldc2l p0, c2, [lr, #0xc4]!         
00405650  3120         movs r0, #0x31                     
00405652  0e94         str r4, [sp, #0x38]                
00405654  0090         str r0, [sp]                       
00405656  0220         movs r0, #2                        
00405658  0190         str r0, [sp, #4]                   
0040565a  0120         movs r0, #1                        
0040565c  2946         mov r1, r5                         
0040565e  f2df         svc #0xf2                          
00405660  20b0         add sp, #0x80                      
00405662  b0bd         pop {r4, r5, r7, pc}               
00405664  70b5         push {r4, r5, r6, lr}              
00405666  a0b0         sub sp, #0x80                      
00405668  0546         mov r5, r0                         
0040566a  6e46         mov r6, sp                         
0040566c  06f11000     add.w r0, r6, #0x10                
0040566e  1000         movs r0, r2                        
00405670  0c46         mov r4, r1                         
00405672  1821         movs r1, #0x18                     
00405674  fbf7eafd     bl #0x40124c                       
00405676  eafd3520     stc2l p0, c2, [sl, #0xd4]!         
00405678  3520         movs r0, #0x35                     
0040567a  cde90254     strd r5, r4, [sp, #8]              
0040567c  0254         strb r2, [r0, r0]                  
0040567e  0090         str r0, [sp]                       
00405680  0220         movs r0, #2                        
00405682  0190         str r0, [sp, #4]                   
00405684  0120         movs r0, #1                        
00405686  3146         mov r1, r6                         
00405688  f2df         svc #0xf2                          
0040568a  20b0         add sp, #0x80                      
0040568c  70bd         pop {r4, r5, r6, pc}               
0040568e  b0b5         push {r4, r5, r7, lr}              
00405690  a0b0         sub sp, #0x80                      
00405692  0024         movs r4, #0                        
00405694  0225         movs r5, #2                        
00405696  cde90844     strd r4, r4, [sp, #0x20]           
00405698  0844         add r0, r1                         
0040569a  cde90644     strd r4, r4, [sp, #0x18]           
0040569c  0644         add r6, r0                         
0040569e  0f90         str r0, [sp, #0x3c]                
004056a0  1020         movs r0, #0x10                     
004056a2  0090         str r0, [sp]                       
004056a4  02a8         add r0, sp, #8                     
004056a6  0195         str r5, [sp, #4]                   
004056a8  0e94         str r4, [sp, #0x38]                
004056aa  0ec0         stm r0!, {r1, r2, r3}              
004056ac  6946         mov r1, sp                         
004056ae  249a         ldr r2, [sp, #0x90]                
004056b0  1068         ldr r0, [r2]                       
004056b2  0590         str r0, [sp, #0x14]                
004056b4  0120         movs r0, #1                        
004056b6  f2df         svc #0xf2                          
004056b8  08b9         cbnz r0, #0x4056be                 
004056ba  0599         ldr r1, [sp, #0x14]                
004056bc  1160         str r1, [r2]                       
004056be  20b0         add sp, #0x80                      
004056c0  b0bd         pop {r4, r5, r7, pc}               
004056c2  f0b5         push {r4, r5, r6, r7, lr}          
004056c4  9fb0         sub sp, #0x7c                      
004056c6  0646         mov r6, r0                         
004056c8  6f46         mov r7, sp                         
004056ca  07f11000     add.w r0, r7, #0x10                
004056cc  1000         movs r0, r2                        
004056ce  0d46         mov r5, r1                         
004056d0  1821         movs r1, #0x18                     
004056d2  1446         mov r4, r2                         
004056d4  fbf7bafd     bl #0x40124c                       
004056d6  bafd0e20     ldc2 p0, c2, [sl, #0x38]!          
004056d8  0e20         movs r0, #0xe                      
004056da  0e96         str r6, [sp, #0x38]                
004056dc  0090         str r0, [sp]                       
004056de  0220         movs r0, #2                        
004056e0  0394         str r4, [sp, #0xc]                 
004056e2  3946         mov r1, r7                         
004056e4  cde90105     strd r0, r5, [sp, #4]              
004056e6  0105         lsls r1, r0, #0x14                 
004056e8  0120         movs r0, #1                        
004056ea  f2df         svc #0xf2                          
004056ec  1fb0         add sp, #0x7c                      
004056ee  f0bd         pop {r4, r5, r6, r7, pc}           
004056f0  2de9f043     push.w {r4, r5, r6, r7, r8, sb, lr} 
004056f2  f043         mvns r0, r6                        
004056f4  9fb0         sub sp, #0x7c                      
004056f6  0d46         mov r5, r1                         
004056f8  1349         ldr r1, [pc, #0x4c]                
004056fa  8046         mov r8, r0                         
004056fc  0c68         ldr r4, [r1]                       
004056fe  0cb1         cbz r4, #0x405704                  
00405700  4e68         ldr r6, [r1, #4]                   
00405702  06e0         b #0x405712                        
00405704  f4df         svc #0xf4                          
00405706  0860         str r0, [r1]                       
00405708  f5df         svc #0xf5                          
0040570a  0c68         ldr r4, [r1]                       
0040570c  0646         mov r6, r0                         
0040570e  4860         str r0, [r1, #4]                   
00405710  c4b1         cbz r4, #0x405744                  
00405712  6f46         mov r7, sp                         
00405714  07f10800     add.w r0, r7, #8                   
00405716  0800         movs r0, r1                        
00405718  2021         movs r1, #0x20                     
0040571a  4ff02009     mov.w sb, #0x20                    
0040571c  2009         lsrs r0, r4, #4                    
0040571e  fbf795fd     bl #0x40124c                       
00405720  95fd0020     ldc2 p0, c2, [r5]                  
00405722  0020         movs r0, #0                        
00405724  cde91146     strd r4, r6, [sp, #0x44]           
00405726  1146         mov r1, r2                         
00405728  1090         str r0, [sp, #0x40]                
0040572a  0220         movs r0, #2                        
0040572c  cde90e85     strd r8, r5, [sp, #0x38]           
0040572e  0e85         strh r6, [r1, #0x28]               
00405730  0190         str r0, [sp, #4]                   
00405732  3846         mov r0, r7                         
00405734  cdf80090     str.w sb, [sp]                     
00405736  0090         str r0, [sp]                       
00405738  fdf7f0f8     bl #0x40291c                       
0040573a  f0f8         (undecodable)
0040573c  1098         ldr r0, [sp, #0x40]                
0040573e  1fb0         add sp, #0x7c                      
00405740  bde8f083     pop.w {r4, r5, r6, r7, r8, sb, pc} 
00405742  f083         strh r0, [r6, #0x1e]               
00405744  0020         movs r0, #0                        
00405746  fae7         b #0x40573e                        
00405748  1460         str r4, [r2]                       
0040574a  4100         lsls r1, r0, #1                    
0040574c  f0b5         push {r4, r5, r6, r7, lr}          
0040574e  9fb0         sub sp, #0x7c                      
00405750  0646         mov r6, r0                         
00405752  6f46         mov r7, sp                         
00405754  07f11000     add.w r0, r7, #0x10                
00405756  1000         movs r0, r2                        
00405758  0d46         mov r5, r1                         
0040575a  1821         movs r1, #0x18                     
0040575c  1446         mov r4, r2                         
0040575e  fbf775fd     bl #0x40124c                       
00405760  75fd3320     ldc2l p0, c2, [r5, #-0xcc]!        
00405762  3320         movs r0, #0x33                     
00405764  0e96         str r6, [sp, #0x38]                
00405766  0090         str r0, [sp]                       
00405768  0220         movs r0, #2                        
0040576a  0190         str r0, [sp, #4]                   
0040576c  04eb4400     add.w r0, r4, r4, lsl #1           
0040576e  4400         lsls r4, r0, #1                    
00405770  3946         mov r1, r7                         
00405772  8000         lsls r0, r0, #2                    
00405774  cde90250     strd r5, r0, [sp, #8]              
00405776  0250         str r2, [r0, r0]                   
00405778  0120         movs r0, #1                        
0040577a  f2df         svc #0xf2                          
0040577c  1fb0         add sp, #0x7c                      
0040577e  f0bd         pop {r4, r5, r6, r7, pc}           
00405780  70b5         push {r4, r5, r6, lr}              
00405782  a0b0         sub sp, #0x80                      
00405784  0546         mov r5, r0                         
00405786  6e46         mov r6, sp                         
00405788  06f10800     add.w r0, r6, #8                   
0040578a  0800         movs r0, r1                        
0040578c  0c46         mov r4, r1                         
0040578e  2021         movs r1, #0x20                     
00405790  fbf75cfd     bl #0x40124c                       
00405792  5cfd0320     ldc2l p0, c2, [ip, #-0xc]          
00405794  0320         movs r0, #3                        
00405796  cde90e54     strd r5, r4, [sp, #0x38]           
00405798  0e54         strb r6, [r1, r0]                  
0040579a  0090         str r0, [sp]                       
0040579c  0220         movs r0, #2                        
0040579e  0190         str r0, [sp, #4]                   
004057a0  0120         movs r0, #1                        
004057a2  3146         mov r1, r6                         
004057a4  f2df         svc #0xf2                          
004057a6  20b0         add sp, #0x80                      
004057a8  70bd         pop {r4, r5, r6, pc}               
004057aa  0000         movs r0, r0                        
004057ac  b0b5         push {r4, r5, r7, lr}              
004057ae  0129         cmp r1, #1                         
004057b0  03d1         bne #0x4057ba                      
004057b2  4068         ldr r0, [r0, #4]                   
004057b4  20f00100     bic r0, r0, #1                     
004057b6  0100         movs r1, r0                        
004057b8  02e0         b #0x4057c0                        
004057ba  4068         ldr r0, [r0, #4]                   
004057bc  0429         cmp r1, #4                         
004057be  03d1         bne #0x4057c8                      
004057c0  0228         cmp r0, #2                         
004057c2  07d1         bne #0x4057d4                      
004057c4  0024         movs r4, #0                        
004057c6  13e0         b #0x4057f0                        
004057c8  0128         cmp r0, #1                         
004057ca  4ff00004     mov.w r4, #0                       
004057cc  0004         lsls r0, r0, #0x10                 
004057ce  18bf         it ne                              
004057d0  0228         cmp r0, #2                         
004057d2  0dd0         beq #0x4057f0                      
004057d4  074d         ldr r5, [pc, #0x1c]                
004057d6  0320         movs r0, #3                        
004057d8  4ff47041     mov.w r1, #0xf000                  
004057da  7041         adcs r0, r6                        
004057dc  a847         blx r5                             
004057de  0320         movs r0, #3                        
004057e0  0021         movs r1, #0                        
004057e2  a847         blx r5                             
004057e4  0320         movs r0, #3                        
004057e6  4ff41071     mov.w r1, #0x240                   
004057e8  1071         strb r0, [r2, #4]                  
004057ea  4ff41074     mov.w r4, #0x240                   
004057ec  1074         strb r0, [r2, #0x10]               
004057ee  a847         blx r5                             
004057f0  2046         mov r0, r4                         
004057f2  b0bd         pop {r4, r5, r7, pc}               
004057f4  b562         str r5, [r6, #0x28]                
004057f6  4000         lsls r0, r0, #1                    
004057f8  2de9f041     push.w {r4, r5, r6, r7, r8, lr}    
004057fa  f041         rors r0, r6                        
004057fc  88b0         sub sp, #0x20                      
004057fe  dff88480     ldr.w r8, [pc, #0x84]              
00405800  8480         strh r4, [r0, #4]                  
00405802  0746         mov r7, r0                         
00405804  0d46         mov r5, r1                         
00405806  20a1         adr r1, #0x80                      
00405808  1646         mov r6, r2                         
0040580a  d8f80000     ldr.w r0, [r8]                     
0040580c  0000         movs r0, r0                        
0040580e  0790         str r0, [sp, #0x1c]                
00405810  0020         movs r0, #0                        
00405812  cde90400     strd r0, r0, [sp, #0x10]           
00405814  0400         movs r4, r0                        
00405816  cde90200     strd r0, r0, [sp, #8]              
00405818  0200         movs r2, r0                        
0040581a  0020         movs r0, #0                        
0040581c  fff7b2fe     bl #0x405584                       
0040581e  b2fe214c     cdp2 p12, #0xb, c4, c2, c1, #1     
00405820  214c         ldr r4, [pc, #0x84]                
00405822  112e         cmp r6, #0x11                      
00405824  11d3         blo #0x40584a                      
00405826  02a8         add r0, sp, #8                     
00405828  0090         str r0, [sp]                       
0040582a  05f11000     add.w r0, r5, #0x10                
0040582c  1000         movs r0, r2                        
0040582e  a6f11001     sub.w r1, r6, #0x10                
00405830  1001         lsls r0, r2, #4                    
00405832  3a1d         adds r2, r7, #4                    
00405834  1023         movs r3, #0x10                     
00405836  fcf775fe     bl #0x402524                       
00405838  75fe40b1     cdp2 p1, #7, c11, c5, c0, #2       
0040583a  40b1         cbz r0, #0x40584e                  
0040583c  1b49         ldr r1, [pc, #0x6c]                
0040583e  0020         movs r0, #0                        
00405840  2246         mov r2, r4                         
00405842  fff79ffe     bl #0x405584                       
00405844  9ffe2646     cdp2 p6, #9, c4, c15, c6, #1       
00405846  2646         mov r6, r4                         
00405848  0de0         b #0x405866                        
0040584a  2646         mov r6, r4                         
0040584c  00e0         b #0x405850                        
0040584e  0026         movs r6, #0                        
00405850  02a8         add r0, sp, #8                     
00405852  2946         mov r1, r5                         
00405854  1022         movs r2, #0x10                     
00405856  00f059f8     bl #0x40590c                       
00405858  59f8         (undecodable)
0040585a  20b1         cbz r0, #0x405866                  
0040585c  14a1         adr r1, #0x50                      
0040585e  0020         movs r0, #0                        
00405860  fff790fe     bl #0x405584                       
00405862  90fe261d     cdp2 p13, #9, c1, c0, c6, #1       
00405864  261d         adds r6, r4, #4                    
00405866  21a1         adr r1, #0x84                      
00405868  0020         movs r0, #0                        
0040586a  fff78bfe     bl #0x405584                       
0040586c  8bfed8f8     mcr2 p8, #4, pc, c11, c8, #6       
0040586e  d8f80000     ldr.w r0, [r8]                     
00405870  0000         movs r0, r0                        
00405872  0799         ldr r1, [sp, #0x1c]                
00405874  401a         subs r0, r0, r1                    
00405876  02bf         ittt eq                            
00405878  3046         mov r0, r6                         
0040587a  08b0         add sp, #0x20                      
0040587c  bde8f081     pop.w {r4, r5, r6, r7, r8, pc}     
0040587e  f081         strh r0, [r6, #0xe]                
00405880  00f066ec     blx #0x406150                      
00405882  66ec4c61     stcl p1, c6, [r6], #-0x130         
00405884  4c61         str r4, [r1, #0x14]                
00405886  4000         lsls r0, r0, #1                    
00405888  414d         ldr r5, [pc, #0x104]               
0040588a  445f         ldrsh r4, [r0, r5]                 
0040588c  5441         adcs r4, r2                        
0040588e  5f47         bxns fp                            
00405890  4350         str r3, [r0, r1]                   
00405892  3a20         movs r0, #0x3a                     
00405894  5665         str r6, [r2, #0x54]                
00405896  7269         ldr r2, [r6, #0x14]                
00405898  6679         ldrb r6, [r4, #5]                  
0040589a  4f4d         ldr r5, [pc, #0x13c]               
0040589c  4143         muls r1, r0, r1                    
0040589e  2045         cmp r0, r4                         
004058a0  4e54         strb r6, [r1, r1]                  
004058a2  4552         strh r5, [r0, r1]                  
004058a4  0a00         movs r2, r1                        
004058a6  0000         movs r0, r0                        
004058a8  0300         movs r3, r0                        
004058aa  0090         str r0, [sp]                       
004058ac  d36c         ldr r3, [r2, #0x4c]                
004058ae  4000         lsls r0, r0, #1                    
004058b0  414d         ldr r5, [pc, #0x104]               
004058b2  445f         ldrsh r4, [r0, r5]                 
004058b4  5441         adcs r4, r2                        
004058b6  5f47         bxns fp                            
004058b8  4350         str r3, [r0, r1]                   
004058ba  3a20         movs r0, #0x3a                     
004058bc  5072         strb r0, [r2, #9]                  
004058be  6f76         strb r7, [r5, #0x19]               
004058c0  6964         str r1, [r5, #0x44]                
004058c2  6564         str r5, [r4, #0x44]                
004058c4  204f         ldr r7, [pc, #0x80]                
004058c6  4d41         adcs r5, r1                        
004058c8  4320         movs r0, #0x43                     
004058ca  646f         ldr r4, [r4, #0x74]                
004058cc  6573         strb r5, [r4, #0xd]                
004058ce  206e         ldr r0, [r4, #0x60]                
004058d0  6f74         strb r7, [r5, #0x11]               
004058d2  206d         ldr r0, [r4, #0x50]                
004058d4  6174         strb r1, [r4, #0x11]               
004058d6  6368         ldr r3, [r4, #4]                   
004058d8  2063         str r0, [r4, #0x30]                
004058da  616c         ldr r1, [r4, #0x44]                
004058dc  6375         strb r3, [r4, #0x15]               
004058de  6c61         str r4, [r5, #0x14]                
004058e0  7465         str r4, [r6, #0x54]                
004058e2  6420         movs r0, #0x64                     
004058e4  4f4d         ldr r5, [pc, #0x13c]               
004058e6  4143         muls r1, r0, r1                    
004058e8  0a00         movs r2, r1                        
004058ea  0000         movs r0, r0                        
004058ec  414d         ldr r5, [pc, #0x104]               
004058ee  445f         ldrsh r4, [r0, r5]                 
004058f0  5441         adcs r4, r2                        
004058f2  5f47         bxns fp                            
004058f4  4350         str r3, [r0, r1]                   
004058f6  3a20         movs r0, #0x3a                     
004058f8  5665         str r6, [r2, #0x54]                
004058fa  7269         ldr r2, [r6, #0x14]                
004058fc  6679         ldrb r6, [r4, #5]                  
004058fe  4f4d         ldr r5, [pc, #0x13c]               
00405900  4143         muls r1, r0, r1                    
00405902  2045         cmp r0, r4                         
00405904  5849         ldr r1, [pc, #0x160]               
00405906  540a         lsrs r4, r2, #9                    
00405908  0000         movs r0, r0                        
0040590a  0000         movs r0, r0                        
0040590c  b0b5         push {r4, r5, r7, lr}              
0040590e  0023         movs r3, #0                        
00405910  3ab1         cbz r2, #0x405922                  
00405912  10f8014b     ldrb r4, [r0], #1                  
00405914  014b         ldr r3, [pc, #4]                   
00405916  013a         subs r2, #1                        
00405918  11f8015b     ldrb r5, [r1], #1                  
0040591a  015b         ldrh r1, [r0, r4]                  
0040591c  6c40         eors r4, r5                        
0040591e  2343         orrs r3, r4                        
00405920  f6e7         b #0x405910                        
00405922  d8b2         uxtb r0, r3                        
00405924  b0bd         pop {r4, r5, r7, pc}               
00405926  5fea400c     lsls.w ip, r0, #1                  
00405928  400c         lsrs r0, r0, #0x11                 
0040592a  08bf         it eq                              
0040592c  91f0000f     teq.w r1, #0                       
0040592e  000f         lsrs r0, r0, #0x1c                 
00405930  4fea8c23     lsl.w r3, ip, #0xa                 
00405932  8c23         movs r3, #0x8c                     
00405934  4feac122     lsl.w r2, r1, #0xb                 
00405936  c122         movs r2, #0xc1                     
00405938  43ea5151     orr.w r1, r3, r1, lsr #21          
0040593a  5151         str r1, [r2, r5]                   
0040593c  4fea1c50     lsr.w r0, ip, #0x14                
0040593e  1c50         str r4, [r3, r0]                   
00405940  18bf         it ne                              
00405942  00f5f040     add.w r0, r0, #0x7800              
00405944  f040         lsrs r0, r6                        
00405946  4fea3000     rrx r0, r0                         
00405948  3000         movs r0, r6                        
0040594a  18bf         it ne                              
0040594c  41f00041     orr r1, r1, #0x80000000            
0040594e  0041         asrs r0, r0                        
00405950  5fea6c5c     asrs.w ip, ip, #0x15               
00405952  6c5c         ldrb r4, [r5, r1]                  
00405954  00f02980     beq.w #0x4059aa                    
00405956  2980         strh r1, [r5]                      
00405958  bcf1ff3f     cmp.w ip, #-1                      
0040595a  ff3f         subs r7, #0xff                     
0040595c  08bf         it eq                              
0040595e  40f08040     orr r0, r0, #0x40000000            
00405960  8040         lsls r0, r0                        
00405962  7047         bx lr                              
00405964  130c         lsrs r3, r2, #0x10                 
00405966  06bf         itte eq                            
00405968  1204         lsls r2, r2, #0x10                 
0040596a  4ff0100c     mov.w ip, #0x10                    
0040596c  100c         lsrs r0, r2, #0x10                 
0040596e  4ff0000c     mov.w ip, #0                       
00405970  000c         lsrs r0, r0, #0x10                 
00405972  130e         lsrs r3, r2, #0x18                 
00405974  04bf         itt eq                             
00405976  1202         lsls r2, r2, #8                    
00405978  0cf1080c     add.w ip, ip, #8                   
0040597a  080c         lsrs r0, r1, #0x10                 
0040597c  130f         lsrs r3, r2, #0x1c                 
0040597e  04bf         itt eq                             
00405980  1201         lsls r2, r2, #4                    
00405982  0cf1040c     add.w ip, ip, #4                   
00405984  040c         lsrs r4, r0, #0x10                 
00405986  930f         lsrs r3, r2, #0x1e                 
00405988  04bf         itt eq                             
0040598a  9200         lsls r2, r2, #2                    
0040598c  0cf1020c     add.w ip, ip, #2                   
0040598e  020c         lsrs r2, r0, #0x10                 
00405990  d30f         lsrs r3, r2, #0x1f                 
00405992  04bf         itt eq                             
00405994  5200         lsls r2, r2, #1                    
00405996  0cf1010c     add.w ip, ip, #1                   
00405998  010c         lsrs r1, r0, #0x10                 
0040599a  1146         mov r1, r2                         
0040599c  4ff00002     mov.w r2, #0                       
0040599e  0002         lsls r0, r0, #8                    
004059a0  a0f11f00     sub.w r0, r0, #0x1f                
004059a2  1f00         movs r7, r3                        
004059a4  a0eb0c00     sub.w r0, r0, ip                   
004059a6  0c00         movs r4, r1                        
004059a8  7047         bx lr                              
004059aa  11f0004f     tst.w r1, #-0x80000000             
004059ac  004f         ldr r7, [pc, #0]                   
004059ae  08bf         it eq                              
004059b0  7047         bx lr                              
004059b2  31f00041     bics r1, r1, #0x80000000           
004059b4  0041         asrs r0, r0                        
004059b6  3ff4d5af     beq.w #0x405964                    
004059b8  d5af         add r7, sp, #0x354                 
004059ba  0b0c         lsrs r3, r1, #0x10                 
004059bc  06bf         itte eq                            
004059be  0904         lsls r1, r1, #0x10                 
004059c0  4ff0100c     mov.w ip, #0x10                    
004059c2  100c         lsrs r0, r2, #0x10                 
004059c4  4ff0000c     mov.w ip, #0                       
004059c6  000c         lsrs r0, r0, #0x10                 
004059c8  0b0e         lsrs r3, r1, #0x18                 
004059ca  04bf         itt eq                             
004059cc  0902         lsls r1, r1, #8                    
004059ce  0cf1080c     add.w ip, ip, #8                   
004059d0  080c         lsrs r0, r1, #0x10                 
004059d2  0b0f         lsrs r3, r1, #0x1c                 
004059d4  04bf         itt eq                             
004059d6  0901         lsls r1, r1, #4                    
004059d8  0cf1040c     add.w ip, ip, #4                   
004059da  040c         lsrs r4, r0, #0x10                 
004059dc  8b0f         lsrs r3, r1, #0x1e                 
004059de  04bf         itt eq                             
004059e0  8900         lsls r1, r1, #2                    
004059e2  0cf1020c     add.w ip, ip, #2                   
004059e4  020c         lsrs r2, r0, #0x10                 
004059e6  cb0f         lsrs r3, r1, #0x1f                 
004059e8  04bf         itt eq                             
004059ea  4900         lsls r1, r1, #1                    
004059ec  0cf1010c     add.w ip, ip, #1                   
004059ee  010c         lsrs r1, r0, #0x10                 
004059f0  ccf12003     rsb.w r3, ip, #0x20                
004059f2  2003         lsls r0, r4, #0xc                  
004059f4  22fa03f3     lsr.w r3, r2, r3                   
004059f6  03f3         (undecodable)
004059f8  41ea0301     orr.w r1, r1, r3                   
004059fa  0301         lsls r3, r0, #4                    
004059fc  02fa0cf2     lsl.w r2, r2, ip                   
004059fe  0cf2a0eb     blx #0x612140                      
00405a00  a0eb0c00     sub.w r0, r0, ip                   
00405a02  0c00         movs r4, r1                        
00405a04  00f10100     add.w r0, r0, #1                   
00405a06  0100         movs r1, r0                        
00405a08  7047         bx lr                              
00405a0a  23f07f47     bic r7, r3, #0xff000000            
00405a0c  7f47         bxns pc                            
00405a0e  20f07f4c     bic ip, r0, #0xff000000            
00405a10  7f4c         ldr r4, [pc, #0x1fc]               
00405a12  80ea0300     eor.w r0, r0, r3                   
00405a14  0300         movs r3, r0                        
00405a16  00f00040     and r0, r0, #0x80000000            
00405a18  0040         ands r0, r0                        
00405a1a  aceb0703     sub.w r3, ip, r7                   
00405a1c  0703         lsls r7, r0, #0xc                  
00405a1e  03f57c53     add.w r3, r3, #0x3f00              
00405a20  7c53         strh r4, [r7, r5]                  
00405a22  03f1ff03     add.w r3, r3, #0xff                
00405a24  ff03         lsls r7, r7, #0xf                  
00405a26  2de98049     push.w {r7, r8, fp, lr}            
00405a28  8049         ldr r1, [pc, #0x200]               
00405a2a  09b4         push {r0, r3}                      
00405a2c  4fea1443     lsr.w r3, r4, #0x10                
00405a2e  1443         orrs r4, r2                        
00405a30  24ea0348     bic.w r8, r4, r3, lsl #16          
00405a32  0348         ldr r0, [pc, #0xc]                 
00405a34  4fea154b     lsr.w fp, r5, #0x10                
00405a36  154b         ldr r3, [pc, #0x54]                
00405a38  25ea0b4e     bic.w lr, r5, fp, lsl #16          
00405a3a  0b4e         ldr r6, [pc, #0x2c]                
00405a3c  0ff20426     addw r6, pc, #0x204                
00405a3e  0426         movs r6, #4                        
00405a40  06eb1327     add.w r7, r6, r3, lsr #8           
00405a42  1327         movs r7, #0x13                     
00405a44  3e78         ldrb r6, [r7]                      
00405a46  03fb0667     mla r7, r3, r6, r6                 
00405a48  0667         str r6, [r0, #0x70]                
00405a4a  c7f50007     rsb.w r7, r7, #0x800000            
00405a4c  0007         lsls r0, r0, #0x1c                 
00405a4e  07fb06f6     mul r6, r7, r6                     
00405a50  06f6         (undecodable)
00405a52  4fead646     lsr.w r6, r6, #0x13                
00405a54  d646         mov lr, sl                         
00405a56  06f10206     add.w r6, r6, #2                   
00405a58  0206         lsls r2, r0, #0x18                 
00405a5a  4fea5437     lsr.w r7, r4, #0xd                 
00405a5c  5437         adds r7, #0x54                     
00405a5e  07fb066c     mla ip, r7, r6, r6                 
00405a60  066c         ldr r6, [r0, #0x40]                
00405a62  ccf1005c     rsb.w ip, ip, #0x20000000          
00405a64  005c         ldrb r0, [r0, r0]                  
00405a66  4fea1c47     lsr.w r7, ip, #0x10                
00405a68  1c47         bxns r3                            
00405a6a  2cea074c     bic.w ip, ip, r7, lsl #16          
00405a6c  074c         ldr r4, [pc, #0x1c]                
00405a6e  0cfb06f5     mul r5, ip, r6                     
00405a70  06f507fb     bl #0x10c082                       
00405a72  07fb06f4     mul r4, r7, r6                     
00405a74  06f404eb     blx #0xc080                        
00405a76  04eb1546     add.w r6, r4, r5, lsr #16          
00405a78  1546         mov r5, r2                         
00405a7a  4fea9616     lsr.w r6, r6, #6                   
00405a7c  9616         asrs r6, r2, #0x1a                 
00405a7e  4908         lsrs r1, r1, #1                    
00405a80  5fea3202     rrxs r2, r2                        
00405a82  3202         lsls r2, r6, #8                    
00405a84  34bf         ite lo                             
00405a86  0020         movs r0, #0                        
00405a88  4ff00040     mov.w r0, #-0x80000000             
00405a8a  0040         ands r0, r0                        
00405a8c  4fead137     lsr.w r7, r1, #0xf                 
00405a8e  d137         adds r7, #0xd1                     
00405a90  06fb07fc     mul ip, r6, r7                     
00405a92  07fc         (undecodable)
00405a94  4fea1c4c     lsr.w ip, ip, #0x10                
00405a96  1c4c         ldr r4, [pc, #0x70]                
00405a98  0cfb0bf7     mul r7, ip, fp                     
00405a9a  0bf7         (undecodable)
00405a9c  d21b         subs r2, r2, r7                    
00405a9e  03fb0cf7     mul r7, r3, ip                     
00405aa0  0cf7         (undecodable)
00405aa2  61eb0701     sbc.w r1, r1, r7                   
00405aa4  0701         lsls r7, r0, #4                    
00405aa6  0cfb0ef7     mul r7, ip, lr                     
00405aa8  0ef7b0eb     blx #0x31420c                      
00405aaa  b0eb0740     subs.w r0, r0, r7, lsl #16         
00405aac  0740         ands r7, r0                        
00405aae  72eb1742     sbcs.w r2, r2, r7, lsr #16         
00405ab0  1742         tst r7, r2                         
00405ab2  0cfb08f7     mul r7, ip, r8                     
00405ab4  08f734bf     b.w #0x30e920                      
00405ab6  34bf         ite lo                             
00405ab8  a2eb0742     sub.w r2, r2, r7, lsl #16          
00405aba  0742         tst r7, r0                         
00405abc  b2eb0742     subs.w r2, r2, r7, lsl #16         
00405abe  0742         tst r7, r0                         
00405ac0  61eb1741     sbc.w r1, r1, r7, lsr #16          
00405ac2  1741         asrs r7, r2                        
00405ac4  4fea0c44     lsl.w r4, ip, #0x10                
00405ac6  0c44         add r4, r1                         
00405ac8  4fea9107     lsr.w r7, r1, #2                   
00405aca  9107         lsls r1, r2, #0x1e                 
00405acc  06fb07fc     mul ip, r6, r7                     
00405ace  07fc         (undecodable)
00405ad0  4fea1c4c     lsr.w ip, ip, #0x10                
00405ad2  1c4c         ldr r4, [pc, #0x70]                
00405ad4  0cfb0bf7     mul r7, ip, fp                     
00405ad6  0bf7b0eb     blx #0x311238                      
00405ad8  b0ebc740     subs.w r0, r0, r7, lsl #19         
00405ada  c740         lsrs r7, r0                        
00405adc  72eb5732     sbcs.w r2, r2, r7, lsr #13         
00405ade  5732         adds r2, #0x57                     
00405ae0  03fb0cf7     mul r7, r3, ip                     
00405ae2  0cf734bf     b.w #0x31294e                      
00405ae4  34bf         ite lo                             
00405ae6  a2ebc742     sub.w r2, r2, r7, lsl #19          
00405ae8  c742         cmn r7, r0                         
00405aea  b2ebc742     subs.w r2, r2, r7, lsl #19         
00405aec  c742         cmn r7, r0                         
00405aee  61eb5731     sbc.w r1, r1, r7, lsr #13          
00405af0  5731         adds r1, #0x57                     
00405af2  0cfb0ef7     mul r7, ip, lr                     
00405af4  0ef7b0eb     blx #0x314258                      
00405af6  b0ebc700     subs.w r0, r0, r7, lsl #3          
00405af8  c700         lsls r7, r0, #3                    
00405afa  72eb5772     sbcs.w r2, r2, r7, lsr #29         
00405afc  5772         strb r7, [r2, #9]                  
00405afe  0cfb08f7     mul r7, ip, r8                     
00405b00  08f734bf     b.w #0x30e96c                      
00405b02  34bf         ite lo                             
00405b04  a2ebc702     sub.w r2, r2, r7, lsl #3           
00405b06  c702         lsls r7, r0, #0xb                  
00405b08  b2ebc702     subs.w r2, r2, r7, lsl #3          
00405b0a  c702         lsls r7, r0, #0xb                  
00405b0c  61eb5771     sbc.w r1, r1, r7, lsr #29          
00405b0e  5771         strb r7, [r2, #5]                  
00405b10  4fea8161     lsl.w r1, r1, #0x1a                
00405b12  8161         str r1, [r0, #0x18]                
00405b14  41ea9211     orr.w r1, r1, r2, lsr #6           
00405b16  9211         asrs r2, r2, #6                    
00405b18  4fea8262     lsl.w r2, r2, #0x1a                
00405b1a  8262         str r2, [r0, #0x28]                
00405b1c  42ea9012     orr.w r2, r2, r0, lsr #6           
00405b1e  9012         asrs r0, r2, #0xa                  
00405b20  4fea8060     lsl.w r0, r0, #0x1a                
00405b22  8060         str r0, [r0, #8]                   
00405b24  04ebcc04     add.w r4, r4, ip, lsl #3           
00405b26  cc04         lsls r4, r1, #0x13                 
00405b28  039f         ldr r7, [sp, #0xc]                 
00405b2a  4fead137     lsr.w r7, r1, #0xf                 
00405b2c  d137         adds r7, #0xd1                     
00405b2e  06fb07fc     mul ip, r6, r7                     
00405b30  07fc         (undecodable)
00405b32  4fea1c4c     lsr.w ip, ip, #0x10                
00405b34  1c4c         ldr r4, [pc, #0x70]                
00405b36  0cfb0bf7     mul r7, ip, fp                     
00405b38  0bf7         (undecodable)
00405b3a  d21b         subs r2, r2, r7                    
00405b3c  03fb0cf7     mul r7, r3, ip                     
00405b3e  0cf7         (undecodable)
00405b40  61eb0701     sbc.w r1, r1, r7                   
00405b42  0701         lsls r7, r0, #4                    
00405b44  0cfb0ef7     mul r7, ip, lr                     
00405b46  0ef7b0eb     blx #0x3142a8                      
00405b48  b0eb0740     subs.w r0, r0, r7, lsl #16         
00405b4a  0740         ands r7, r0                        
00405b4c  72eb1742     sbcs.w r2, r2, r7, lsr #16         
00405b4e  1742         tst r7, r2                         
00405b50  0cfb08f7     mul r7, ip, r8                     
00405b52  08f734bf     b.w #0x30e9be                      
00405b54  34bf         ite lo                             
00405b56  a2eb0742     sub.w r2, r2, r7, lsl #16          
00405b58  0742         tst r7, r0                         
00405b5a  b2eb0742     subs.w r2, r2, r7, lsl #16         
00405b5c  0742         tst r7, r0                         
00405b5e  61eb1741     sbc.w r1, r1, r7, lsr #16          
00405b60  1741         asrs r7, r2                        
00405b62  4fea8c55     lsl.w r5, ip, #0x16                
00405b64  8c55         strb r4, [r1, r6]                  
00405b66  04eb9c24     add.w r4, r4, ip, lsr #10          
00405b68  9c24         movs r4, #0x9c                     
00405b6a  4fea9107     lsr.w r7, r1, #2                   
00405b6c  9107         lsls r1, r2, #0x1e                 
00405b6e  06fb07fc     mul ip, r6, r7                     
00405b70  07fc         (undecodable)
00405b72  4fea1c4c     lsr.w ip, ip, #0x10                
00405b74  1c4c         ldr r4, [pc, #0x70]                
00405b76  0cfb0bf7     mul r7, ip, fp                     
00405b78  0bf7b0eb     blx #0x3112dc                      
00405b7a  b0ebc740     subs.w r0, r0, r7, lsl #19         
00405b7c  c740         lsrs r7, r0                        
00405b7e  72eb5732     sbcs.w r2, r2, r7, lsr #13         
00405b80  5732         adds r2, #0x57                     
00405b82  03fb0cf7     mul r7, r3, ip                     
00405b84  0cf734bf     b.w #0x3129f0                      
00405b86  34bf         ite lo                             
00405b88  a2ebc742     sub.w r2, r2, r7, lsl #19          
00405b8a  c742         cmn r7, r0                         
00405b8c  b2ebc742     subs.w r2, r2, r7, lsl #19         
00405b8e  c742         cmn r7, r0                         
00405b90  61eb5731     sbc.w r1, r1, r7, lsr #13          
00405b92  5731         adds r1, #0x57                     
00405b94  0cfb0ef7     mul r7, ip, lr                     
00405b96  0ef7b0eb     blx #0x3142f8                      
00405b98  b0ebc700     subs.w r0, r0, r7, lsl #3          
00405b9a  c700         lsls r7, r0, #3                    
00405b9c  72eb5772     sbcs.w r2, r2, r7, lsr #29         
00405b9e  5772         strb r7, [r2, #9]                  
00405ba0  0cfb08f7     mul r7, ip, r8                     
00405ba2  08f734bf     b.w #0x30ea0e                      
00405ba4  34bf         ite lo                             
00405ba6  a2ebc702     sub.w r2, r2, r7, lsl #3           
00405ba8  c702         lsls r7, r0, #0xb                  
00405baa  b2ebc702     subs.w r2, r2, r7, lsl #3          
00405bac  c702         lsls r7, r0, #0xb                  
00405bae  61eb5771     sbc.w r1, r1, r7, lsr #29          
00405bb0  5771         strb r7, [r2, #5]                  
00405bb2  4fea8161     lsl.w r1, r1, #0x1a                
00405bb4  8161         str r1, [r0, #0x18]                
00405bb6  41ea9211     orr.w r1, r1, r2, lsr #6           
00405bb8  9211         asrs r2, r2, #6                    
00405bba  4fea8262     lsl.w r2, r2, #0x1a                
00405bbc  8262         str r2, [r0, #0x28]                
00405bbe  42ea9012     orr.w r2, r2, r0, lsr #6           
00405bc0  9012         asrs r0, r2, #0xa                  
00405bc2  4fea8060     lsl.w r0, r0, #0x1a                
00405bc4  8060         str r0, [r0, #8]                   
00405bc6  15eb4c25     adds.w r5, r5, ip, lsl #9          
00405bc8  4c25         movs r5, #0x4c                     
00405bca  44f10004     adc r4, r4, #0                     
00405bcc  0004         lsls r0, r0, #0x10                 
00405bce  4fead137     lsr.w r7, r1, #0xf                 
00405bd0  d137         adds r7, #0xd1                     
00405bd2  06fb07fc     mul ip, r6, r7                     
00405bd4  07fc         (undecodable)
00405bd6  4fea1c4c     lsr.w ip, ip, #0x10                
00405bd8  1c4c         ldr r4, [pc, #0x70]                
00405bda  0cfb0bf7     mul r7, ip, fp                     
00405bdc  0bf7         (undecodable)
00405bde  d21b         subs r2, r2, r7                    
00405be0  03fb0cf7     mul r7, r3, ip                     
00405be2  0cf7         (undecodable)
00405be4  61eb0701     sbc.w r1, r1, r7                   
00405be6  0701         lsls r7, r0, #4                    
00405be8  0cfb0ef7     mul r7, ip, lr                     
00405bea  0ef7b0eb     blx #0x31434c                      
00405bec  b0eb0740     subs.w r0, r0, r7, lsl #16         
00405bee  0740         ands r7, r0                        
00405bf0  72eb1742     sbcs.w r2, r2, r7, lsr #16         
00405bf2  1742         tst r7, r2                         
00405bf4  0cfb08f7     mul r7, ip, r8                     
00405bf6  08f734bf     b.w #0x30ea62                      
00405bf8  34bf         ite lo                             
00405bfa  a2eb0742     sub.w r2, r2, r7, lsl #16          
00405bfc  0742         tst r7, r0                         
00405bfe  b2eb0742     subs.w r2, r2, r7, lsl #16         
00405c00  0742         tst r7, r0                         
00405c02  61eb1741     sbc.w r1, r1, r7, lsr #16          
00405c04  1741         asrs r7, r2                        
00405c06  4fea8131     lsl.w r1, r1, #0xe                 
00405c08  8131         adds r1, #0x81                     
00405c0a  41ea9241     orr.w r1, r1, r2, lsr #18          
00405c0c  9241         sbcs r2, r2                        
00405c0e  4fea8232     lsl.w r2, r2, #0xe                 
00405c10  8232         adds r2, #0x82                     
00405c12  42ea9042     orr.w r2, r2, r0, lsr #18          
00405c14  9042         cmp r0, r2                         
00405c16  4fea8030     lsl.w r0, r0, #0xe                 
00405c18  8030         adds r0, #0x80                     
00405c1a  4fea0c76     lsl.w r6, ip, #0x1c                
00405c1c  0c76         strb r4, [r1, #0x18]               
00405c1e  15eb1c15     adds.w r5, r5, ip, lsr #4          
00405c20  1c15         asrs r4, r3, #0x14                 
00405c22  44f10004     adc r4, r4, #0                     
00405c24  0004         lsls r0, r0, #0x10                 
00405c26  48ea0343     orr.w r3, r8, r3, lsl #16          
00405c28  0343         orrs r3, r0                        
00405c2a  4eea0b48     orr.w r8, lr, fp, lsl #16          
00405c2c  0b48         ldr r0, [pc, #0x2c]                
00405c2e  4ff0000e     mov.w lr, #0                       
00405c30  000e         lsrs r0, r0, #0x18                 
00405c32  b2eb080c     subs.w ip, r2, r8                  
00405c34  080c         lsrs r0, r1, #0x10                 
00405c36  71eb0307     sbcs.w r7, r1, r3                  
00405c38  0307         lsls r3, r0, #0x1c                 
00405c3a  24bf         itt hs                             
00405c3c  6246         mov r2, ip                         
00405c3e  3946         mov r1, r7                         
00405c40  4eeb0e0e     adc.w lr, lr, lr                   
00405c42  0e0e         lsrs r6, r1, #0x18                 
00405c44  4ff0000b     mov.w fp, #0                       
00405c46  000b         lsrs r0, r0, #0xc                  
00405c48  0018         adds r0, r0, r0                    
00405c4a  5241         adcs r2, r2                        
00405c4c  4941         adcs r1, r1                        
00405c4e  4beb0b0b     adc.w fp, fp, fp                   
00405c50  0b0b         lsrs r3, r1, #0xc                  
00405c52  b2eb080c     subs.w ip, r2, r8                  
00405c54  080c         lsrs r0, r1, #0x10                 
00405c56  71eb0307     sbcs.w r7, r1, r3                  
00405c58  0307         lsls r3, r0, #0x1c                 
00405c5a  7bf1000b     sbcs fp, fp, #0                    
00405c5c  000b         lsrs r0, r0, #0xc                  
00405c5e  24bf         itt hs                             
00405c60  6246         mov r2, ip                         
00405c62  3946         mov r1, r7                         
00405c64  4eeb0e0e     adc.w lr, lr, lr                   
00405c66  0e0e         lsrs r6, r1, #0x18                 
00405c68  4ff0000b     mov.w fp, #0                       
00405c6a  000b         lsrs r0, r0, #0xc                  
00405c6c  0018         adds r0, r0, r0                    
00405c6e  5241         adcs r2, r2                        
00405c70  4941         adcs r1, r1                        
00405c72  4beb0b0b     adc.w fp, fp, fp                   
00405c74  0b0b         lsrs r3, r1, #0xc                  
00405c76  b2eb080c     subs.w ip, r2, r8                  
00405c78  080c         lsrs r0, r1, #0x10                 
00405c7a  71eb0307     sbcs.w r7, r1, r3                  
00405c7c  0307         lsls r3, r0, #0x1c                 
00405c7e  7bf1000b     sbcs fp, fp, #0                    
00405c80  000b         lsrs r0, r0, #0xc                  
00405c82  24bf         itt hs                             
00405c84  6246         mov r2, ip                         
00405c86  3946         mov r1, r7                         
00405c88  4eeb0e0e     adc.w lr, lr, lr                   
00405c8a  0e0e         lsrs r6, r1, #0x18                 
00405c8c  51ea0207     orrs.w r7, r1, r2                  
00405c8e  0207         lsls r2, r0, #0x1c                 
00405c90  18bf         it ne                              
00405c92  46f00106     orr r6, r6, #1                     
00405c94  0106         lsls r1, r0, #0x18                 
00405c96  16eb0e76     adds.w r6, r6, lr, lsl #28         
00405c98  0e76         strb r6, [r1, #0x18]               
00405c9a  55f10002     adcs r2, r5, #0                    
00405c9c  0002         lsls r0, r0, #8                    
00405c9e  54f10001     adcs r1, r4, #0                    
00405ca0  0001         lsls r0, r0, #4                    
00405ca2  03d5         bpl #0x405cac                      
00405ca4  bde88901     pop.w {r0, r3, r7, r8}             
00405ca6  8901         lsls r1, r1, #6                    
00405ca8  bde80088     pop.w {fp, pc}                     
00405caa  0088         ldrh r0, [r0]                      
00405cac  bde88901     pop.w {r0, r3, r7, r8}             
00405cae  8901         lsls r1, r1, #6                    
00405cb0  bde80048     pop.w {fp, lr}                     
00405cb2  0048         ldr r0, [pc, #0]                   
00405cb4  b619         adds r6, r6, r6                    
00405cb6  5241         adcs r2, r2                        
00405cb8  41eb0101     adc.w r1, r1, r1                   
00405cba  0101         lsls r1, r0, #4                    
00405cbc  a3f10103     sub.w r3, r3, #1                   
00405cbe  0103         lsls r1, r0, #0xc                  
00405cc0  7047         bx lr                              
00405cc2  8080         strh r0, [r0, #4]                  
00405cc4  7f7e         ldrb r7, [r7, #0x19]               
00405cc6  7d7c         ldrb r5, [r7, #0x11]               
00405cc8  7b7a         ldrb r3, [r7, #9]                  
00405cca  7978         ldrb r1, [r7, #1]                  
00405ccc  7776         strb r7, [r6, #0x19]               
00405cce  7675         strb r6, [r6, #0x15]               
00405cd0  7473         strb r4, [r6, #0xd]                
00405cd2  7271         strb r2, [r6, #5]                  
00405cd4  7170         strb r1, [r6, #1]                  
00405cd6  6f6e         ldr r7, [r5, #0x64]                
00405cd8  6e6d         ldr r6, [r5, #0x54]                
00405cda  6c6c         ldr r4, [r5, #0x44]                
00405cdc  6b6a         ldr r3, [r5, #0x24]                
00405cde  6a69         ldr r2, [r5, #0x14]                
00405ce0  6868         ldr r0, [r5, #4]                   
00405ce2  6766         str r7, [r4, #0x64]                
00405ce4  6665         str r6, [r4, #0x54]                
00405ce6  6464         str r4, [r4, #0x44]                
00405ce8  6363         str r3, [r4, #0x34]                
00405cea  6261         str r2, [r4, #0x14]                
00405cec  6160         str r1, [r4, #4]                   
00405cee  605f         ldrsh r0, [r4, r5]                 
00405cf0  5f5e         ldrsh r7, [r3, r1]                 
00405cf2  5e5d         ldrb r6, [r3, r5]                  
00405cf4  5d5c         ldrb r5, [r3, r1]                  
00405cf6  5c5b         ldrh r4, [r3, r5]                  
00405cf8  5b5a         ldrh r3, [r3, r1]                  
00405cfa  5a59         ldr r2, [r3, r5]                   
00405cfc  5958         ldr r1, [r3, r1]                   
00405cfe  5857         ldrsb r0, [r3, r5]                 
00405d00  5756         ldrsb r7, [r2, r1]                 
00405d02  5655         strb r6, [r2, r5]                  
00405d04  5555         strb r5, [r2, r5]                  
00405d06  5454         strb r4, [r2, r1]                  
00405d08  5353         strh r3, [r2, r5]                  
00405d0a  5252         strh r2, [r2, r1]                  
00405d0c  5251         str r2, [r2, r5]                   
00405d0e  5150         str r1, [r2, r1]                   
00405d10  5050         str r0, [r2, r1]                   
00405d12  4f4f         ldr r7, [pc, #0x13c]               
00405d14  4f4e         ldr r6, [pc, #0x13c]               
00405d16  4e4d         ldr r5, [pc, #0x138]               
00405d18  4d4d         ldr r5, [pc, #0x134]               
00405d1a  4c4c         ldr r4, [pc, #0x130]               
00405d1c  4c4b         ldr r3, [pc, #0x130]               
00405d1e  4b4b         ldr r3, [pc, #0x12c]               
00405d20  4a4a         ldr r2, [pc, #0x128]               
00405d22  4a49         ldr r1, [pc, #0x128]               
00405d24  4949         ldr r1, [pc, #0x124]               
00405d26  4848         ldr r0, [pc, #0x120]               
00405d28  4847         bx sb                              
00405d2a  4747         bxns r8                            
00405d2c  4746         mov r7, r8                         
00405d2e  4646         mov r6, r8                         
00405d30  4545         cmp r5, r8                         
00405d32  4544         add r5, r8                         
00405d34  4444         add r4, r8                         
00405d36  4443         muls r4, r0, r4                    
00405d38  4343         muls r3, r0, r3                    
00405d3a  4342         rsbs r3, r0, #0                    
00405d3c  4242         rsbs r2, r0, #0                    
00405d3e  4241         adcs r2, r0                        
00405d40  4141         adcs r1, r0                        
00405d42  9c46         mov ip, r3                         
00405d44  002b         cmp r3, #0                         
00405d46  30d4         bmi #0x405daa                      
00405d48  7700         lsls r7, r6, #1                    
00405d4a  2bd0         beq #0x405da4                      
00405d4c  4fea3707     rrx r7, r7                         
00405d4e  3707         lsls r7, r6, #0x1c                 
00405d50  1cb5         push {r2, r3, r4, lr}              
00405d52  03b4         push {r0, r1}                      
00405d54  4ff01000     mov.w r0, #0x10                    
00405d56  1000         movs r0, r2                        
00405d58  4ff01001     mov.w r1, #0x10                    
00405d5a  1001         lsls r0, r2, #4                    
00405d5c  baf1000f     cmp.w sl, #0                       
00405d5e  000f         lsrs r0, r0, #0x1c                 
00405d60  06d0         beq #0x405d70                      
00405d62  bcf1000f     cmp.w ip, #0                       
00405d64  000f         lsrs r0, r0, #0x1c                 
00405d66  dcbf         itt le                             
00405d68  40f00800     orr r0, r0, #8                     
00405d6a  0800         movs r0, r1                        
00405d6c  40f00801     orr r1, r0, #8                     
00405d6e  0801         lsls r0, r1, #4                    
00405d70  4ff00000     mov.w r0, #0                       
00405d72  0000         movs r0, r0                        
00405d74  0fbc         pop {r0, r1, r2, r3}               
00405d76  bde81040     pop.w {r4, lr}                     
00405d78  1040         ands r0, r2                        
00405d7a  0bf1010b     add.w fp, fp, #1                   
00405d7c  010b         lsrs r1, r0, #0xc                  
00405d7e  bbf1010f     cmp.w fp, #1                       
00405d80  010f         lsrs r1, r0, #0x1c                 
00405d82  08bf         it eq                              
00405d84  5fea1707     lsrs.w r7, r7, #0x20               
00405d86  1707         lsls r7, r2, #0x1c                 
00405d88  22bf         ittt hs                            
00405d8a  12f10102     adds.w r2, r2, #1                  
00405d8c  0102         lsls r1, r0, #8                    
00405d8e  11f10101     adds.w r1, r1, #1                  
00405d90  0101         lsls r1, r0, #4                    
00405d92  4ff00041     mov.w r1, #-0x80000000             
00405d94  0041         asrs r0, r0                        
00405d96  43f10003     adc r3, r3, #0                     
00405d98  0003         lsls r0, r0, #0xc                  
00405d9a  00f00040     and r0, r0, #0x80000000            
00405d9c  0040         ands r0, r0                        
00405d9e  43ea0000     orr.w r0, r3, r0                   
00405da0  0000         movs r0, r0                        
00405da2  7047         bx lr                              
00405da4  f9d3         blo #0x405d9a                      
00405da6  5708         lsrs r7, r2, #1                    
00405da8  d0e7         b #0x405d4c                        
00405daa  46ea0646     orr.w r6, r6, r6, lsl #16          
00405dac  0646         mov r6, r0                         
00405dae  4fea1646     lsr.w r6, r6, #0x10                
00405db0  1646         mov r6, r2                         
00405db2  13f1400f     cmn.w r3, #0x40                    
00405db4  400f         lsrs r0, r0, #0x1d                 
00405db6  1fdd         ble #0x405df8                      
00405db8  13f1200f     cmn.w r3, #0x20                    
00405dba  200f         lsrs r0, r4, #0x1c                 
00405dbc  dfbf         itttt le                           
00405dbe  1643         orrs r6, r2                        
00405dc0  0a46         mov r2, r1                         
00405dc2  0021         movs r1, #0                        
00405dc4  2033         adds r3, #0x20                     
00405dc6  5b42         rsbs r3, r3, #0                    
00405dc8  bed0         beq #0x405d48                      
00405dca  c3f12007     rsb.w r7, r3, #0x20                
00405dcc  2007         lsls r0, r4, #0x1c                 
00405dce  46ea0646     orr.w r6, r6, r6, lsl #16          
00405dd0  0646         mov r6, r0                         
00405dd2  4fea1646     lsr.w r6, r6, #0x10                
00405dd4  1646         mov r6, r2                         
00405dd6  02fa07f7     lsl.w r7, r2, r7                   
00405dd8  07f746ea     blx #0x30d268                      
00405dda  46ea0706     orr.w r6, r6, r7                   
00405ddc  0706         lsls r7, r0, #0x18                 
00405dde  22fa03f2     lsr.w r2, r2, r3                   
00405de0  03f2c3f1     bl #0xa0916a                       
00405de2  c3f12007     rsb.w r7, r3, #0x20                
00405de4  2007         lsls r0, r4, #0x1c                 
00405de6  01fa07f7     lsl.w r7, r1, r7                   
00405de8  07f742ea     blx #0x30d270                      
00405dea  42ea0702     orr.w r2, r2, r7                   
00405dec  0702         lsls r7, r0, #8                    
00405dee  21fa03f1     lsr.w r1, r1, r3                   
00405df0  03f14ff0     bl #0x908e92                       
00405df2  4ff00003     mov.w r3, #0                       
00405df4  0003         lsls r0, r0, #0xc                  
00405df6  a7e7         b #0x405d48                        
00405df8  46ea0206     orr.w r6, r6, r2                   
00405dfa  0206         lsls r2, r0, #0x18                 
00405dfc  46ea0646     orr.w r6, r6, r6, lsl #16          
00405dfe  0646         mov r6, r0                         
00405e00  4fea1646     lsr.w r6, r6, #0x10                
00405e02  1646         mov r6, r2                         
00405e04  46ea0106     orr.w r6, r6, r1                   
00405e06  0106         lsls r1, r0, #0x18                 
00405e08  bcbf         itt lt                             
00405e0a  46ea0646     orr.w r6, r6, r6, lsl #16          
00405e0c  0646         mov r6, r0                         
00405e0e  360c         lsrs r6, r6, #0x10                 
00405e10  4ff00003     mov.w r3, #0                       
00405e12  0003         lsls r0, r0, #0xc                  
00405e14  4ff00002     mov.w r2, #0                       
00405e16  0002         lsls r0, r0, #8                    
00405e18  4ff00001     mov.w r1, #0                       
00405e1a  0001         lsls r0, r0, #4                    
00405e1c  94e7         b #0x405d48                        
00405e1e  2de9804c     push.w {r7, sl, fp, lr}            
00405e20  804c         ldr r4, [pc, #0x200]               
00405e22  70b4         push {r4, r5, r6}                  
00405e24  9a46         mov sl, r3                         
00405e26  9346         mov fp, r2                         
00405e28  91e83800     ldm.w r1, {r3, r4, r5}             
00405e2a  3800         movs r0, r7                        
00405e2c  07c8         ldm r0, {r0, r1, r2}               
00405e2e  31ea400c     bics.w ip, r1, r0, lsl #1          
00405e30  400c         lsrs r0, r0, #0x11                 
00405e32  48bf         it mi                              
00405e34  34ea430c     bics.w ip, r4, r3, lsl #1          
00405e36  430c         lsrs r3, r0, #0x11                 
00405e38  03d5         bpl #0x405e42                      
00405e3a  fff7e6fd     bl #0x405a0a                       
00405e3c  e6fdfff7     stc2l p7, c15, [r6, #0x3fc]!       
00405e3e  fff780ff     bl #0x405d42                       
00405e40  80ff         (undecodable)
00405e42  f0bc         pop {r4, r5, r6, r7}               
00405e44  bde8008c     pop.w {sl, fp, pc}                 
00405e46  008c         ldrh r0, [r0, #0x20]               
00405e48  2de9804c     push.w {r7, sl, fp, lr}            
00405e4a  804c         ldr r4, [pc, #0x200]               
00405e4c  70b4         push {r4, r5, r6}                  
00405e4e  9a46         mov sl, r3                         
00405e50  9346         mov fp, r2                         
00405e52  91e83800     ldm.w r1, {r3, r4, r5}             
00405e54  3800         movs r0, r7                        
00405e56  07c8         ldm r0, {r0, r1, r2}               
00405e58  10f0804f     tst.w r0, #0x40000000              
00405e5a  804f         ldr r7, [pc, #0x200]               
00405e5c  08bf         it eq                              
00405e5e  13f0804f     tst.w r3, #0x40000000              
00405e60  804f         ldr r7, [pc, #0x200]               
00405e62  03d1         bne #0x405e6c                      
00405e64  00f005f8     bl #0x405e72                       
00405e66  05f8         (undecodable)
00405e68  fff76bff     bl #0x405d42                       
00405e6a  6bff         (undecodable)
00405e6c  f0bc         pop {r4, r5, r6, r7}               
00405e6e  bde8008c     pop.w {sl, fp, pc}                 
00405e70  008c         ldrh r0, [r0, #0x20]               
00405e72  20f07f47     bic r7, r0, #0xff000000            
00405e74  7f47         bxns pc                            
00405e76  23f07f4c     bic ip, r3, #0xff000000            
00405e78  7f4c         ldr r4, [pc, #0x1fc]               
00405e7a  80ea0300     eor.w r0, r0, r3                   
00405e7c  0300         movs r3, r0                        
00405e7e  00f00040     and r0, r0, #0x80000000            
00405e80  0040         ands r0, r0                        
00405e82  07eb0c03     add.w r3, r7, ip                   
00405e84  0c03         lsls r4, r1, #0xc                  
00405e86  a3f57c53     sub.w r3, r3, #0x3f00              
00405e88  7c53         strh r4, [r7, r5]                  
00405e8a  a3f1fe03     sub.w r3, r3, #0xfe                
00405e8c  fe03         lsls r6, r7, #0xf                  
00405e8e  92f0000f     teq.w r2, #0                       
00405e90  000f         lsrs r0, r0, #0x1c                 
00405e92  00f0b380     beq.w #0x405ffc                    
00405e94  b380         strh r3, [r6, #4]                  
00405e96  95f0000f     teq.w r5, #0                       
00405e98  000f         lsrs r0, r0, #0x1c                 
00405e9a  00f07780     beq.w #0x405f8c                    
00405e9c  7780         strh r7, [r6, #2]                  
00405e9e  2de90149     push.w {r0, r8, fp, lr}            
00405ea0  0149         ldr r1, [pc, #4]                   
00405ea2  4fea1140     lsr.w r0, r1, #0x10                
00405ea4  1140         ands r1, r2                        
00405ea6  21ea0048     bic.w r8, r1, r0, lsl #16          
00405ea8  0048         ldr r0, [pc, #0]                   
00405eaa  4fea1446     lsr.w r6, r4, #0x10                
00405eac  1446         mov r4, r2                         
00405eae  24ea0647     bic.w r7, r4, r6, lsl #16          
00405eb0  0647         bxns r0                            
00405eb2  00fb06fc     mul ip, r0, r6                     
00405eb4  06fc         (undecodable)
00405eb6  08fb06f6     mul r6, r8, r6                     
00405eb8  06f607fb     bl #0x20c4ca                       
00405eba  07fb08f8     mul r8, r7, r8                     
00405ebc  08f818eb     strb lr, [r8], #0x18               
00405ebe  18eb0648     adds.w r8, r8, r6, lsl #16         
00405ec0  0648         ldr r0, [pc, #0x18]                
00405ec2  4ceb164c     adc.w ip, ip, r6, lsr #16          
00405ec4  164c         ldr r4, [pc, #0x58]                
00405ec6  00fb07f7     mul r7, r0, r7                     
00405ec8  07f718eb     blx #0x30d4fc                      
00405eca  18eb0748     adds.w r8, r8, r7, lsl #16         
00405ecc  0748         ldr r0, [pc, #0x1c]                
00405ece  4ceb1740     adc.w r0, ip, r7, lsr #16          
00405ed0  1740         ands r7, r2                        
00405ed2  4fea124b     lsr.w fp, r2, #0x10                
00405ed4  124b         ldr r3, [pc, #0x48]                
00405ed6  22ea0b4e     bic.w lr, r2, fp, lsl #16          
00405ed8  0b4e         ldr r6, [pc, #0x2c]                
00405eda  4fea1546     lsr.w r6, r5, #0x10                
00405edc  1546         mov r5, r2                         
00405ede  25ea0647     bic.w r7, r5, r6, lsl #16          
00405ee0  0647         bxns r0                            
00405ee2  0bfb06fc     mul ip, fp, r6                     
00405ee4  06fc         (undecodable)
00405ee6  0efb06f6     mul r6, lr, r6                     
00405ee8  06f607fb     bl #0x20c4fa                       
00405eea  07fb0efe     mul lr, r7, lr                     
00405eec  0efe         (undecodable)
00405eee  1eeb064e     adds.w lr, lr, r6, lsl #16         
00405ef0  064e         ldr r6, [pc, #0x18]                
00405ef2  4ceb164c     adc.w ip, ip, r6, lsr #16          
00405ef4  164c         ldr r4, [pc, #0x58]                
00405ef6  0bfb07f7     mul r7, fp, r7                     
00405ef8  07f71eeb     blx #0x30d538                      
00405efa  1eeb074e     adds.w lr, lr, r7, lsl #16         
00405efc  074e         ldr r6, [pc, #0x1c]                
00405efe  4ceb174b     adc.w fp, ip, r7, lsr #16          
00405f00  174b         ldr r3, [pc, #0x5c]                
00405f02  18eb0b08     adds.w r8, r8, fp                  
00405f04  0b08         lsrs r3, r1, #0x20                 
00405f06  40f10000     adc r0, r0, #0                     
00405f08  0000         movs r0, r0                        
00405f0a  18eb0e0b     adds.w fp, r8, lr                  
00405f0c  0e0b         lsrs r6, r1, #0xc                  
00405f0e  58eb0008     adcs.w r8, r8, r0                  
00405f10  0008         lsrs r0, r0, #0x20                 
00405f12  40f10000     adc r0, r0, #0                     
00405f14  0000         movs r0, r0                        
00405f16  8f1a         subs r7, r1, r2                    
00405f18  4ff00001     mov.w r1, #0                       
00405f1a  0001         lsls r0, r0, #4                    
00405f1c  4ff00006     mov.w r6, #0                       
00405f1e  0006         lsls r0, r0, #0x18                 
00405f20  3cbf         itt lo                             
00405f22  c943         mvns r1, r1                        
00405f24  661b         subs r6, r4, r5                    
00405f26  14bf         ite ne                             
00405f28  b5eb040c     subs.w ip, r5, r4                  
00405f2a  040c         lsrs r4, r0, #0x10                 
00405f2c  0021         movs r1, #0                        
00405f2e  3cbf         itt lo                             
00405f30  c943         mvns r1, r1                        
00405f32  f61b         subs r6, r6, r7                    
00405f34  4fea1744     lsr.w r4, r7, #0x10                
00405f36  1744         add r7, r2                         
00405f38  27ea0445     bic.w r5, r7, r4, lsl #16          
00405f3a  0445         cmp r4, r0                         
00405f3c  4fea1c47     lsr.w r7, ip, #0x10                
00405f3e  1c47         bxns r3                            
00405f40  2cea074c     bic.w ip, ip, r7, lsl #16          
00405f42  074c         ldr r4, [pc, #0x1c]                
00405f44  04fb0762     mla r2, r4, r7, r6                 
00405f46  0762         str r7, [r0, #0x20]                
00405f48  05fb07f7     mul r7, r5, r7                     
00405f4a  07f70cfb     bl #0x30d566                       
00405f4c  0cfb05f6     mul r6, ip, r5                     
00405f4e  05f616eb     blx #0x20b57c                      
00405f50  16eb0746     adds.w r6, r6, r7, lsl #16         
00405f52  0746         mov r7, r0                         
00405f54  42eb1742     adc.w r2, r2, r7, lsr #16          
00405f56  1742         tst r7, r2                         
00405f58  04fb0cfc     mul ip, r4, ip                     
00405f5a  0cfc         (undecodable)
00405f5c  16eb0c46     adds.w r6, r6, ip, lsl #16         
00405f5e  0c46         mov r4, r1                         
00405f60  42eb1c42     adc.w r2, r2, ip, lsr #16          
00405f62  1c42         tst r4, r3                         
00405f64  1beb0606     adds.w r6, fp, r6                  
00405f66  0606         lsls r6, r0, #0x18                 
00405f68  58eb0202     adcs.w r2, r8, r2                  
00405f6a  0202         lsls r2, r0, #8                    
00405f6c  4141         adcs r1, r0                        
00405f6e  4eea8e0e     orr.w lr, lr, lr, lsl #2           
00405f70  8e0e         lsrs r6, r1, #0x1a                 
00405f72  46ea9e06     orr.w r6, r6, lr, lsr #2           
00405f74  9e06         lsls r6, r3, #0x1a                 
00405f76  01d5         bpl #0x405f7c                      
00405f78  bde80189     pop.w {r0, r8, fp, pc}             
00405f7a  0189         ldrh r1, [r0, #8]                  
00405f7c  b619         adds r6, r6, r6                    
00405f7e  5241         adcs r2, r2                        
00405f80  41eb0101     adc.w r1, r1, r1                   
00405f82  0101         lsls r1, r0, #4                    
00405f84  a3f10103     sub.w r3, r3, #1                   
00405f86  0103         lsls r1, r0, #0xc                  
00405f88  bde80189     pop.w {r0, r8, fp, pc}             
00405f8a  0189         ldrh r1, [r0, #8]                  
00405f8c  4fea1445     lsr.w r5, r4, #0x10                
00405f8e  1445         cmp r4, r2                         
00405f90  24ea0546     bic.w r6, r4, r5, lsl #16          
00405f92  0546         mov r5, r0                         
00405f94  4fea1147     lsr.w r7, r1, #0x10                
00405f96  1147         bx r2                              
00405f98  21ea074c     bic.w ip, r1, r7, lsl #16          
00405f9a  074c         ldr r4, [pc, #0x1c]                
00405f9c  05fb07f4     mul r4, r5, r7                     
00405f9e  07f406fb     bl #0xd5ae                         
00405fa0  06fb07f7     mul r7, r6, r7                     
00405fa2  07f70cfb     bl #0x30d5be                       
00405fa4  0cfb06f1     mul r1, ip, r6                     
00405fa6  06f1         (undecodable)
00405fa8  11eb0741     adds.w r1, r1, r7, lsl #16         
00405faa  0741         asrs r7, r0                        
00405fac  44eb1744     adc.w r4, r4, r7, lsr #16          
00405fae  1744         add r7, r2                         
00405fb0  05fb0cfc     mul ip, r5, ip                     
00405fb2  0cfc         (undecodable)
00405fb4  11eb0c41     adds.w r1, r1, ip, lsl #16         
00405fb6  0c41         asrs r4, r1                        
00405fb8  44eb1c44     adc.w r4, r4, ip, lsr #16          
00405fba  1c44         add r4, r3                         
00405fbc  4fea1247     lsr.w r7, r2, #0x10                
00405fbe  1247         bx r2                              
00405fc0  22ea074c     bic.w ip, r2, r7, lsl #16          
00405fc2  074c         ldr r4, [pc, #0x1c]                
00405fc4  05fb07f2     mul r2, r5, r7                     
00405fc6  07f206fb     bl #0x60d5d6                       
00405fc8  06fb07f7     mul r7, r6, r7                     
00405fca  07f70cfb     bl #0x30d5e6                       
00405fcc  0cfb06f6     mul r6, ip, r6                     
00405fce  06f616eb     blx #0x20c5fc                      
00405fd0  16eb0746     adds.w r6, r6, r7, lsl #16         
00405fd2  0746         mov r7, r0                         
00405fd4  42eb1742     adc.w r2, r2, r7, lsr #16          
00405fd6  1742         tst r7, r2                         
00405fd8  05fb0cfc     mul ip, r5, ip                     
00405fda  0cfc         (undecodable)
00405fdc  16eb0c46     adds.w r6, r6, ip, lsl #16         
00405fde  0c46         mov r4, r1                         
00405fe0  42eb1c45     adc.w r5, r2, ip, lsr #16          
00405fe2  1c45         cmp r4, r3                         
00405fe4  6a18         adds r2, r5, r1                    
00405fe6  54f10001     adcs r1, r4, #0                    
00405fe8  0001         lsls r0, r0, #4                    
00405fea  48bf         it mi                              
00405fec  7047         bx lr                              
00405fee  b619         adds r6, r6, r6                    
00405ff0  5241         adcs r2, r2                        
00405ff2  41eb0101     adc.w r1, r1, r1                   
00405ff4  0101         lsls r1, r0, #4                    
00405ff6  a3f10103     sub.w r3, r3, #1                   
00405ff8  0103         lsls r1, r0, #0xc                  
00405ffa  7047         bx lr                              
00405ffc  95f0000f     teq.w r5, #0                       
00405ffe  000f         lsrs r0, r0, #0x1c                 
00406000  37d0         beq #0x406072                      
00406002  4fea1142     lsr.w r2, r1, #0x10                
00406004  1142         tst r1, r2                         
00406006  21ea0246     bic.w r6, r1, r2, lsl #16          
00406008  0246         mov r2, r0                         
0040600a  4fea1447     lsr.w r7, r4, #0x10                
0040600c  1447         bxns r2                            
0040600e  24ea074c     bic.w ip, r4, r7, lsl #16          
00406010  074c         ldr r4, [pc, #0x1c]                
00406012  02fb07f1     mul r1, r2, r7                     
00406014  07f106fb     bl #0x50d624                       
00406016  06fb07f7     mul r7, r6, r7                     
00406018  07f70cfb     bl #0x30d634                       
0040601a  0cfb06f4     mul r4, ip, r6                     
0040601c  06f414eb     blx #0xc648                        
0040601e  14eb0744     adds.w r4, r4, r7, lsl #16         
00406020  0744         add r7, r0                         
00406022  41eb1741     adc.w r1, r1, r7, lsr #16          
00406024  1741         asrs r7, r2                        
00406026  02fb0cfc     mul ip, r2, ip                     
00406028  0cfc         (undecodable)
0040602a  14eb0c44     adds.w r4, r4, ip, lsl #16         
0040602c  0c44         add r4, r1                         
0040602e  41eb1c41     adc.w r1, r1, ip, lsr #16          
00406030  1c41         asrs r4, r3                        
00406032  4fea1547     lsr.w r7, r5, #0x10                
00406034  1547         bxns r2                            
00406036  25ea074c     bic.w ip, r5, r7, lsl #16          
00406038  074c         ldr r4, [pc, #0x1c]                
0040603a  02fb07f5     mul r5, r2, r7                     
0040603c  07f506fb     bl #0x10d64c                       
0040603e  06fb07f7     mul r7, r6, r7                     
00406040  07f70cfb     bl #0x30d65c                       
00406042  0cfb06f6     mul r6, ip, r6                     
00406044  06f616eb     blx #0x20c674                      
00406046  16eb0746     adds.w r6, r6, r7, lsl #16         
00406048  0746         mov r7, r0                         
0040604a  45eb1745     adc.w r5, r5, r7, lsr #16          
0040604c  1745         cmp r7, r2                         
0040604e  02fb0cfc     mul ip, r2, ip                     
00406050  0cfc         (undecodable)
00406052  16eb0c46     adds.w r6, r6, ip, lsl #16         
00406054  0c46         mov r4, r1                         
00406056  45eb1c42     adc.w r2, r5, ip, lsr #16          
00406058  1c42         tst r4, r3                         
0040605a  1219         adds r2, r2, r4                    
0040605c  51f10001     adcs r1, r1, #0                    
0040605e  0001         lsls r0, r0, #4                    
00406060  48bf         it mi                              
00406062  7047         bx lr                              
00406064  b619         adds r6, r6, r6                    
00406066  5241         adcs r2, r2                        
00406068  41eb0101     adc.w r1, r1, r1                   
0040606a  0101         lsls r1, r0, #4                    
0040606c  a3f10103     sub.w r3, r3, #1                   
0040606e  0103         lsls r1, r0, #0xc                  
00406070  7047         bx lr                              
00406072  4fea1445     lsr.w r5, r4, #0x10                
00406074  1445         cmp r4, r2                         
00406076  24ea0546     bic.w r6, r4, r5, lsl #16          
00406078  0546         mov r5, r0                         
0040607a  4fea1147     lsr.w r7, r1, #0x10                
0040607c  1147         bx r2                              
0040607e  21ea074c     bic.w ip, r1, r7, lsl #16          
00406080  074c         ldr r4, [pc, #0x1c]                
00406082  05fb07f1     mul r1, r5, r7                     
00406084  07f106fb     bl #0x50d694                       
00406086  06fb07f7     mul r7, r6, r7                     
00406088  07f70cfb     bl #0x30d6a4                       
0040608a  0cfb06f2     mul r2, ip, r6                     
0040608c  06f212eb     blx #0x60c6b4                      
0040608e  12eb0742     adds.w r2, r2, r7, lsl #16         
00406090  0742         tst r7, r0                         
00406092  41eb1741     adc.w r1, r1, r7, lsr #16          
00406094  1741         asrs r7, r2                        
00406096  05fb0cfc     mul ip, r5, ip                     
00406098  0cfc         (undecodable)
0040609a  12eb0c42     adds.w r2, r2, ip, lsl #16         
0040609c  0c42         tst r4, r1                         
0040609e  51eb1c41     adcs.w r1, r1, ip, lsr #16         
004060a0  1c41         asrs r4, r3                        
004060a2  4ff00006     mov.w r6, #0                       
004060a4  0006         lsls r0, r0, #0x18                 
004060a6  48bf         it mi                              
004060a8  7047         bx lr                              
004060aa  9218         adds r2, r2, r2                    
004060ac  41eb0101     adc.w r1, r1, r1                   
004060ae  0101         lsls r1, r0, #4                    
004060b0  a3f10103     sub.w r3, r3, #1                   
004060b2  0103         lsls r1, r0, #0xc                  
004060b4  7047         bx lr                              
004060b6  0000         movs r0, r0                        
004060b8  0040         ands r0, r0                        
004060ba  a0e1         b #0x4063fe                        
004060bc  0000         movs r0, r0                        
004060be  e0e3         b #0x406882                        
004060c0  f000         lsls r0, r6, #3                    
004060c2  00ef0400     vhadd.s8 d0, d0, d4                
004060c4  0400         movs r4, r0                        
004060c6  a0e1         b #0x40640a                        
004060c8  0010         asrs r0, r0, #0x20                 
004060ca  90e5         b #0x405bee                        
004060cc  0100         movs r1, r0                        
004060ce  51e3         b #0x406774                        
004060d0  0100         movs r1, r0                        
004060d2  001a         subs r0, r0, r0                    
004060d4  7cc0         stm r0!, {r2, r3, r4, r5, r6}      
004060d6  9fe5         b #0x405c18                        
004060d8  1800         movs r0, r3                        
004060da  00ea0200     and.w r0, r0, r2                   
004060dc  0200         movs r2, r0                        
004060de  51e3         b #0x406784                        
004060e0  0100         movs r1, r0                        
004060e2  001a         subs r0, r0, r0                    
004060e4  70c0         stm r0!, {r4, r5, r6}              
004060e6  9fe5         b #0x405c28                        
004060e8  1400         movs r4, r2                        
004060ea  00ea0300     and.w r0, r0, r3                   
004060ec  0300         movs r3, r0                        
004060ee  51e3         b #0x406794                        
004060f0  0400         movs r4, r0                        
004060f2  001a         subs r0, r0, r0                    
004060f4  1010         asrs r0, r2, #0x20                 
004060f6  80e2         b #0x4065fa                        
004060f8  0820         movs r0, #8                        
004060fa  80e2         b #0x4065fe                        
004060fc  0c00         movs r4, r1                        
004060fe  90e5         b #0x405c22                        
00406100  58c0         stm r0!, {r3, r4, r6}              
00406102  9fe5         b #0x405c44                        
00406104  0d00         movs r5, r1                        
00406106  00ea0400     and.w r0, r0, r4                   
00406108  0400         movs r4, r0                        
0040610a  51e3         b #0x4067b0                        
0040610c  0200         movs r2, r0                        
0040610e  001a         subs r0, r0, r0                    
00406110  0800         movs r0, r1                        
00406112  90e5         b #0x405c36                        
00406114  48c0         stm r0!, {r3, r6}                  
00406116  9fe5         b #0x405c58                        
00406118  0800         movs r0, r1                        
0040611a  00ea0500     and.w r0, r0, r5                   
0040611c  0500         movs r5, r0                        
0040611e  51e3         b #0x4067c4                        
00406120  0500         movs r5, r0                        
00406122  001a         subs r0, r0, r0                    
00406124  0410         asrs r4, r0, #0x20                 
00406126  90e5         b #0x405c4a                        
00406128  0c20         movs r0, #0xc                      
0040612a  90e5         b #0x405c4e                        
0040612c  1030         adds r0, #0x10                     
0040612e  80e2         b #0x406632                        
00406130  0800         movs r0, r1                        
00406132  90e5         b #0x405c56                        
00406134  2cc0         stm r0!, {r2, r3, r5}              
00406136  9fe5         b #0x405c78                        
00406138  0000         movs r0, r0                        
0040613a  00eafeff     and.w pc, r0, lr, ror #31          
0040613c  feff         (undecodable)
0040613e  ffea         (undecodable)
00406140  3cff         (undecodable)
00406142  2fe1         b #0x4063a4                        
00406144  f100         lsls r1, r6, #3                    
00406146  00ef         (undecodable)
00406148  dbff         (undecodable)
0040614a  ffea         (undecodable)
0040614c  3333         adds r3, #0x33                     
0040614e  3333         adds r3, #0x33                     
00406150  1400         movs r4, r2                        
00406152  9fe5         b #0x405c94                        
00406154  0010         asrs r0, r0, #0x20                 
00406156  90e5         b #0x405c7a                        
00406158  e753         strh r7, [r4, r7]                  
0040615a  4000         lsls r0, r0, #1                    
0040615c  eb53         strh r3, [r5, r7]                  
0040615e  4000         lsls r0, r0, #1                    
00406160  3954         strb r1, [r7, r0]                  
00406162  4000         lsls r0, r0, #1                    
00406164  d153         strh r1, [r2, r7]                  
00406166  4000         lsls r0, r0, #1                    
00406168  ed53         strh r5, [r5, r7]                  
0040616a  4000         lsls r0, r0, #1                    
0040616c  efbe         bkpt #0xef                         
0040616e  adde         udf #0xad                          
00406170  03b4         push {r0, r1}                      
00406172  dde90001     ldrd r0, r1, [sp]                  
00406174  0001         lsls r0, r0, #4                    
00406176  4900         lsls r1, r1, #1                    
00406178  50eac120     orrs.w r0, r0, r1, lsl #11         
0040617a  c120         movs r0, #0xc1                     
0040617c  18bf         it ne                              
0040617e  0420         movs r0, #4                        
00406180  4a0d         lsrs r2, r1, #0x15                 
00406182  18bf         it ne                              
00406184  40f00100     orr r0, r0, #1                     
00406186  0100         movs r1, r0                        
00406188  40f2ff72     movw r2, #0x7ff                    
0040618a  ff72         strb r7, [r7, #0xb]                
0040618c  b2eb515f     cmp.w r2, r1, lsr #21              
0040618e  515f         ldrsh r1, [r2, r5]                 
00406190  08bf         it eq                              
00406192  40f00200     orr r0, r0, #2                     
00406194  0200         movs r2, r0                        
00406196  0128         cmp r0, #1                         
00406198  08bf         it eq                              
0040619a  0520         movs r0, #5                        
0040619c  02b0         add sp, #8                         
0040619e  7047         bx lr                              
004061a0  3038         subs r0, #0x30                     
004061a2  0a28         cmp r0, #0xa                       
004061a4  01d2         bhs #0x4061aa                      
004061a6  0120         movs r0, #1                        
004061a8  7047         bx lr                              
004061aa  0020         movs r0, #0                        
004061ac  7047         bx lr                              
004061ae  30b5         push {r4, r5, lr}                  
004061b0  87b0         sub sp, #0x1c                      
004061b2  0d46         mov r5, r1                         
004061b4  1821         movs r1, #0x18                     
004061b6  0446         mov r4, r0                         
004061b8  6846         mov r0, sp                         
004061ba  fbf747f8     bl #0x40124c                       
004061bc  47f8         (undecodable)
004061be  40f20812     movw r2, #0x108                    
004061c0  0812         asrs r0, r1, #8                    
004061c2  6946         mov r1, sp                         
004061c4  8de83400     stm.w sp, {r2, r4, r5}             
004061c6  3400         movs r4, r6                        
004061c8  0220         movs r0, #2                        
004061ca  f2df         svc #0xf2                          
004061cc  07b0         add sp, #0x1c                      
004061ce  30bd         pop {r4, r5, pc}                   
004061d0  10b5         push {r4, lr}                      
004061d2  86b0         sub sp, #0x18                      
004061d4  0446         mov r4, r0                         
004061d6  1821         movs r1, #0x18                     
004061d8  6846         mov r0, sp                         
004061da  fbf737f8     bl #0x40124c                       
004061dc  37f8         (undecodable)
004061de  40f20911     movw r1, #0x109                    
004061e0  0911         asrs r1, r1, #4                    
004061e2  0220         movs r0, #2                        
004061e4  cde90014     strd r1, r4, [sp]                  
004061e6  0014         asrs r0, r0, #0x10                 
004061e8  6946         mov r1, sp                         
004061ea  f2df         svc #0xf2                          
004061ec  06b0         add sp, #0x18                      
004061ee  10bd         pop {r4, pc}                       
004061f0  30b5         push {r4, r5, lr}                  
004061f2  87b0         sub sp, #0x1c                      
004061f4  0d46         mov r5, r1                         
004061f6  1821         movs r1, #0x18                     
004061f8  0446         mov r4, r0                         
004061fa  6846         mov r0, sp                         
004061fc  fbf726f8     bl #0x40124c                       
004061fe  26f8         (undecodable)
00406200  40f20712     movw r2, #0x107                    
00406202  0712         asrs r7, r0, #8                    
00406204  6946         mov r1, sp                         
00406206  8de83400     stm.w sp, {r2, r4, r5}             
00406208  3400         movs r4, r6                        
0040620a  0220         movs r0, #2                        
0040620c  f2df         svc #0xf2                          
0040620e  07b0         add sp, #0x1c                      
00406210  30bd         pop {r4, r5, pc}                   
00406212  00b5         push {lr}                          
00406214  87b0         sub sp, #0x1c                      
00406216  1821         movs r1, #0x18                     
00406218  6846         mov r0, sp                         
0040621a  fbf717f8     bl #0x40124c                       
0040621c  17f8         (undecodable)
0040621e  40f20430     movw r0, #0x304                    
00406220  0430         adds r0, #4                        
00406222  0090         str r0, [sp]                       
00406224  0220         movs r0, #2                        
00406226  6946         mov r1, sp                         
00406228  f2df         svc #0xf2                          
0040622a  07b0         add sp, #0x1c                      
0040622c  00bd         pop {pc}                           
0040622e  10b5         push {r4, lr}                      
00406230  86b0         sub sp, #0x18                      
00406232  0446         mov r4, r0                         
00406234  1821         movs r1, #0x18                     
00406236  6846         mov r0, sp                         
00406238  fbf708f8     bl #0x40124c                       
0040623a  08f8         (undecodable)
0040623c  40f20531     movw r1, #0x305                    
0040623e  0531         adds r1, #5                        
00406240  0220         movs r0, #2                        
00406242  cde90014     strd r1, r4, [sp]                  
00406244  0014         asrs r0, r0, #0x10                 
00406246  6946         mov r1, sp                         
00406248  f2df         svc #0xf2                          
0040624a  06b0         add sp, #0x18                      
0040624c  10bd         pop {r4, pc}                       
0040624e  f0b5         push {r4, r5, r6, r7, lr}          
00406250  87b0         sub sp, #0x1c                      
00406252  1f46         mov r7, r3                         
00406254  1646         mov r6, r2                         
00406256  0d46         mov r5, r1                         
00406258  1821         movs r1, #0x18                     
0040625a  0446         mov r4, r0                         
0040625c  6846         mov r0, sp                         
0040625e  faf7f5ff     bl #0x40124c                       
00406260  f5ff         (undecodable)
00406262  40f20220     movw r0, #0x202                    
00406264  0220         movs r0, #2                        
00406266  6946         mov r1, sp                         
00406268  8de8f100     stm.w sp, {r0, r4, r5, r6, r7}     
0040626a  f100         lsls r1, r6, #3                    
0040626c  0220         movs r0, #2                        
0040626e  f2df         svc #0xf2                          
00406270  07b0         add sp, #0x1c                      
00406272  f0bd         pop {r4, r5, r6, r7, pc}           
00406274  10b5         push {r4, lr}                      
00406276  86b0         sub sp, #0x18                      
00406278  0446         mov r4, r0                         
0040627a  1821         movs r1, #0x18                     
0040627c  6846         mov r0, sp                         
0040627e  faf7e5ff     bl #0x40124c                       
00406280  e5ff         (undecodable)
00406282  40f20021     movw r1, #0x200                    
00406284  0021         movs r1, #0                        
00406286  0220         movs r0, #2                        
00406288  cde90014     strd r1, r4, [sp]                  
0040628a  0014         asrs r0, r0, #0x10                 
0040628c  6946         mov r1, sp                         
0040628e  f2df         svc #0xf2                          
00406290  06b0         add sp, #0x18                      
00406292  10bd         pop {r4, pc}                       
00406294  10b5         push {r4, lr}                      
00406296  86b0         sub sp, #0x18                      
00406298  0446         mov r4, r0                         
0040629a  1821         movs r1, #0x18                     
0040629c  6846         mov r0, sp                         
0040629e  faf7d5ff     bl #0x40124c                       
004062a0  d5ff         (undecodable)
004062a2  40f20421     movw r1, #0x204                    
004062a4  0421         movs r1, #4                        
004062a6  0220         movs r0, #2                        
004062a8  cde90014     strd r1, r4, [sp]                  
004062aa  0014         asrs r0, r0, #0x10                 
004062ac  6946         mov r1, sp                         
004062ae  f2df         svc #0xf2                          
004062b0  06b0         add sp, #0x18                      
004062b2  10bd         pop {r4, pc}                       
004062b4  30b5         push {r4, r5, lr}                  
004062b6  87b0         sub sp, #0x1c                      
004062b8  0d46         mov r5, r1                         
004062ba  1821         movs r1, #0x18                     
004062bc  0446         mov r4, r0                         
004062be  6846         mov r0, sp                         
004062c0  faf7c4ff     bl #0x40124c                       
004062c2  c4ff         (undecodable)
004062c4  40f20822     movw r2, #0x208                    
004062c6  0822         movs r2, #8                        
004062c8  0092         str r2, [sp]                       
004062ca  e322         movs r2, #0xe3                     
004062cc  8df80420     strb.w r2, [sp, #4]                
004062ce  0420         movs r0, #4                        
004062d0  0220         movs r0, #2                        
004062d2  8df80540     strb.w r4, [sp, #5]                
004062d4  0540         ands r5, r0                        
004062d6  6946         mov r1, sp                         
004062d8  adf80650     strh.w r5, [sp, #6]                
004062da  0650         str r6, [r0, r0]                   
004062dc  f2df         svc #0xf2                          
004062de  07b0         add sp, #0x1c                      
004062e0  30bd         pop {r4, r5, pc}                   
004062e2  10b5         push {r4, lr}                      
004062e4  86b0         sub sp, #0x18                      
004062e6  0446         mov r4, r0                         
004062e8  1821         movs r1, #0x18                     
004062ea  6846         mov r0, sp                         
004062ec  faf7aeff     bl #0x40124c                       
004062ee  aeff         (undecodable)
004062f0  40f20121     movw r1, #0x201                    
004062f2  0121         movs r1, #1                        
004062f4  0220         movs r0, #2                        
004062f6  cde90014     strd r1, r4, [sp]                  
004062f8  0014         asrs r0, r0, #0x10                 
004062fa  6946         mov r1, sp                         
004062fc  f2df         svc #0xf2                          
004062fe  06b0         add sp, #0x18                      
00406300  10bd         pop {r4, pc}                       
00406302  0000         movs r0, r0                        
00406304  10b5         push {r4, lr}                      
00406306  0029         cmp r1, #0                         
00406308  0ad0         beq #0x406320                      
0040630a  0878         ldrb r0, [r1]                      
0040630c  0028         cmp r0, #0                         
0040630e  07d0         beq #0x406320                      
00406310  0548         ldr r0, [pc, #0x14]                
00406312  7844         add r0, pc                         
00406314  fcf78ce8     blx #0x402430                      
00406316  8ce8         (undecodable)
00406318  0028         cmp r0, #0                         
0040631a  01d0         beq #0x406320                      
0040631c  0020         movs r0, #0                        
0040631e  10bd         pop {r4, pc}                       
00406320  0248         ldr r0, [pc, #8]                   
00406322  7844         add r0, pc                         
00406324  10bd         pop {r4, pc}                       
00406326  0000         movs r0, r0                        
00406328  060a         lsrs r6, r0, #8                    
0040632a  0000         movs r0, r0                        
0040632c  fe09         lsrs r6, r7, #7                    
0040632e  0000         movs r0, r0                        
00406330  10b5         push {r4, lr}                      
00406332  0029         cmp r1, #0                         
00406334  0ad0         beq #0x40634c                      
00406336  0878         ldrb r0, [r1]                      
00406338  0028         cmp r0, #0                         
0040633a  07d0         beq #0x40634c                      
0040633c  0548         ldr r0, [pc, #0x14]                
0040633e  7844         add r0, pc                         
00406340  fcf776e8     blx #0x402430                      
00406342  76e80028     ldrd r2, r8, [r6], #-0             
00406344  0028         cmp r0, #0                         
00406346  01d0         beq #0x40634c                      
00406348  0020         movs r0, #0                        
0040634a  10bd         pop {r4, pc}                       
0040634c  0248         ldr r0, [pc, #8]                   
0040634e  7844         add r0, pc                         
00406350  10bd         pop {r4, pc}                       
00406352  0000         movs r0, r0                        
00406354  f609         lsrs r6, r6, #7                    
00406356  0000         movs r0, r0                        
00406358  ee09         lsrs r6, r5, #7                    
0040635a  0000         movs r0, r0                        
0040635c  fbf796bc     b.w #0x401c8c                      
0040635e  96bc         pop {r1, r2, r4, r7}               
00406360  fbf7c4bd     b.w #0x401eec                      
00406362  c4bd         pop {r2, r6, r7, pc}               
00406364  0000         movs r0, r0                        
00406366  0000         movs r0, r0                        
00406368  0000         movs r0, r0                        
0040636a  0000         movs r0, r0                        
0040636c  3031         adds r1, #0x30                     
0040636e  3233         adds r3, #0x32                     
00406370  3435         adds r5, #0x34                     
00406372  3637         adds r7, #0x36                     
00406374  3839         subs r1, #0x38                     
00406376  4142         rsbs r1, r0, #0                    
00406378  4344         add r3, r8                         
0040637a  4546         mov r5, r8                         
0040637c  4030         adds r0, #0x40                     
0040637e  5800         lsls r0, r3, #1                    
00406380  3031         adds r1, #0x30                     
00406382  3233         adds r3, #0x32                     
00406384  3435         adds r5, #0x34                     
00406386  3637         adds r7, #0x36                     
00406388  3839         subs r1, #0x38                     
0040638a  6162         str r1, [r4, #0x24]                
0040638c  6364         str r3, [r4, #0x44]                
0040638e  6566         str r5, [r4, #0x64]                
00406390  4030         adds r0, #0x40                     
00406392  7800         lsls r0, r7, #1                    
00406394  0400         movs r4, r0                        
00406396  0008         lsrs r0, r0, #0x20                 
00406398  0000         movs r0, r0                        
0040639a  0000         movs r0, r0                        
0040639c  0000         movs r0, r0                        
0040639e  0002         lsls r0, r0, #8                    
004063a0  0001         lsls r0, r0, #4                    
004063a2  0000         movs r0, r0                        
004063a4  1030         adds r0, #0x10                     
004063a6  3132         adds r2, #0x31                     
004063a8  3334         adds r4, #0x33                     
004063aa  3536         adds r6, #0x35                     
004063ac  3738         subs r0, #0x37                     
004063ae  3961         str r1, [r7, #0x10]                
004063b0  6263         str r2, [r4, #0x34]                
004063b2  6465         str r4, [r4, #0x54]                
004063b4  6678         ldrb r6, [r4, #1]                  
004063b6  7000         lsls r0, r6, #1                    
004063b8  3031         adds r1, #0x30                     
004063ba  3233         adds r3, #0x32                     
004063bc  3435         adds r5, #0x34                     
004063be  3637         adds r7, #0x36                     
004063c0  3839         subs r1, #0x38                     
004063c2  4142         rsbs r1, r0, #0                    
004063c4  4344         add r3, r8                         
004063c6  4546         mov r5, r8                         
004063c8  5850         str r0, [r3, r1]                   
004063ca  0000         movs r0, r0                        
004063cc  0240         ands r2, r0                        
004063ce  0000         movs r0, r0                        
004063d0  0000         movs r0, r0                        
004063d2  00a0         adr r0, #0                         
004063d4  0000         movs r0, r0                        
004063d6  0000         movs r0, r0                        
004063d8  0540         ands r5, r0                        
004063da  0000         movs r0, r0                        
004063dc  0000         movs r0, r0                        
004063de  00c8         (undecodable)
004063e0  0000         movs r0, r0                        
004063e2  0000         movs r0, r0                        
004063e4  0c40         ands r4, r1                        
004063e6  0000         movs r0, r0                        
004063e8  0000         movs r0, r0                        
004063ea  409c         ldr r4, [sp, #0x100]               
004063ec  0000         movs r0, r0                        
004063ee  0000         movs r0, r0                        
004063f0  1940         ands r1, r3                        
004063f2  0000         movs r0, r0                        
004063f4  0020         movs r0, #0                        
004063f6  bcbe         bkpt #0xbc                         
004063f8  0000         movs r0, r0                        
004063fa  0000         movs r0, r0                        
004063fc  3440         ands r4, r6                        
004063fe  0000         movs r0, r0                        
00406400  bfc9         ldm r1, {r0, r1, r2, r3, r4, r5, r7} 
00406402  1b8e         ldrh r3, [r3, #0x30]               
00406404  0000         movs r0, r0                        
00406406  0004         lsls r0, r0, #0x10                 
00406408  b540         lsls r5, r6                        
0040640a  0000         movs r0, r0                        
0040640c  504b         ldr r3, [pc, #0x140]               
0040640e  cfd0         beq #0x4063b0                      
00406410  6607         lsls r6, r4, #0x1d                 
00406412  e2cf         ldm r7, {r1, r5, r6, r7}           
00406414  0100         movs r1, r0                        
00406416  0000         movs r0, r0                        
00406418  6c41         adcs r4, r5                        
0040641a  0000         movs r0, r0                        
0040641c  3e82         strh r6, [r7, #0x10]               
0040641e  51aa         add r2, sp, #0x144                 
00406420  dfeea734     cdp p4, #0xd, c3, c15, c7, #5      
00406422  a734         adds r4, #0xa7                     
00406424  0100         movs r1, r0                        
00406426  0000         movs r0, r0                        
00406428  d942         cmn r1, r3                         
0040642a  0000         movs r0, r0                        
0040642c  dcb5         push {r2, r3, r4, r6, r7, lr}      
0040642e  a0e2         b #0x406972                        
00406430  3a30         adds r0, #0x3a                     
00406432  1f97         str r7, [sp, #0x7c]                
00406434  ffff         (undecodable)
00406436  ffffb445     vsli.64 d20, d20, #0x3f            
00406438  b445         cmp ip, r6                         
0040643a  0000         movs r0, r0                        
0040643c  fd25         movs r5, #0xfd                     
0040643e  a0c8         ldm r0!, {r5, r7}                  
00406440  e9a3         adr r3, #0x3a4                     
00406442  c14f         ldr r7, [pc, #0x304]               
00406444  ffff         (undecodable)
00406446  ffff         (undecodable)
00406448  ff3f         subs r7, #0xff                     
0040644a  0000         movs r0, r0                        
0040644c  0000         movs r0, r0                        
0040644e  0080         strh r0, [r0]                      
00406450  0000         movs r0, r0                        
00406452  0000         movs r0, r0                        
00406454  ff3f         subs r7, #0xff                     
00406456  0000         movs r0, r0                        
00406458  0000         movs r0, r0                        
0040645a  0080         strh r0, [r0]                      
0040645c  0000         movs r0, r0                        
0040645e  0000         movs r0, r0                        
00406460  414d         ldr r5, [pc, #0x104]               
00406462  445f         ldrsh r4, [r0, r5]                 
00406464  5441         adcs r4, r2                        
00406466  5f47         bxns fp                            
00406468  4350         str r3, [r0, r1]                   
0040646a  3a20         movs r0, #0x3a                     
0040646c  5365         str r3, [r2, #0x54]                
0040646e  6e64         str r6, [r5, #0x44]                
00406470  4154         strb r1, [r0, r1]                  
00406472  4944         add r1, sb                         
00406474  524d         ldr r5, [pc, #0x148]               
00406476  4365         str r3, [r0, #0x54]                
00406478  7274         strb r2, [r6, #0x11]               
0040647a  6966         str r1, [r5, #0x64]                
0040647c  6963         str r1, [r5, #0x34]                
0040647e  6174         strb r1, [r4, #0x11]               
00406480  6520         movs r0, #0x65                     
00406482  696e         ldr r1, [r5, #0x64]                
00406484  7661         str r6, [r6, #0x14]                
00406486  6c69         ldr r4, [r5, #0x14]                
00406488  6420         movs r0, #0x64                     
0040648a  7365         str r3, [r6, #0x54]                
0040648c  7373         strb r3, [r6, #0xd]                
0040648e  696f         ldr r1, [r5, #0x74]                
00406490  6e20         movs r0, #0x6e                     
00406492  4944         add r1, sb                         
00406494  0a00         movs r2, r1                        
00406496  414d         ldr r5, [pc, #0x104]               
00406498  445f         ldrsh r4, [r0, r5]                 
0040649a  5441         adcs r4, r2                        
0040649c  5f47         bxns fp                            
0040649e  4350         str r3, [r0, r1]                   
004064a0  3a20         movs r0, #0x3a                     
004064a2  436c         ldr r3, [r0, #0x44]                
004064a4  6f73         strb r7, [r5, #0xd]                
004064a6  6541         adcs r5, r4                        
004064a8  5449         ldr r1, [pc, #0x150]               
004064aa  4452         strh r4, [r0, r1]                  
004064ac  4d53         strh r5, [r1, r5]                  
004064ae  6573         strb r5, [r4, #0xd]                
004064b0  7369         ldr r3, [r6, #0x14]                
004064b2  6f6e         ldr r7, [r5, #0x64]                
004064b4  2069         ldr r0, [r4, #0x10]                
004064b6  6e76         strb r6, [r5, #0x19]               
004064b8  616c         ldr r1, [r4, #0x44]                
004064ba  6964         str r1, [r5, #0x44]                
004064bc  2073         strb r0, [r4, #0xc]                
004064be  6573         strb r5, [r4, #0xd]                
004064c0  7369         ldr r3, [r6, #0x14]                
004064c2  6f6e         ldr r7, [r5, #0x64]                
004064c4  2049         ldr r1, [pc, #0x80]                
004064c6  440a         lsrs r4, r0, #9                    
004064c8  0041         asrs r0, r0                        
004064ca  4d44         add r5, sb                         
004064cc  5f54         strb r7, [r3, r1]                  
004064ce  415f         ldrsh r1, [r0, r5]                 
004064d0  4743         muls r7, r0, r7                    
004064d2  503a         subs r2, #0x50                     
004064d4  2047         bx r4                              
004064d6  6574         strb r5, [r4, #0x11]               
004064d8  436f         ldr r3, [r0, #0x74]                
004064da  6e74         strb r6, [r5, #0x11]               
004064dc  656e         ldr r5, [r4, #0x64]                
004064de  744b         ldr r3, [pc, #0x1d0]               
004064e0  6579         ldrb r5, [r4, #5]                  
004064e2  2069         ldr r0, [r4, #0x10]                
004064e4  6e76         strb r6, [r5, #0x19]               
004064e6  616c         ldr r1, [r4, #0x44]                
004064e8  6964         str r1, [r5, #0x44]                
004064ea  2073         strb r0, [r4, #0xc]                
004064ec  6573         strb r5, [r4, #0xd]                
004064ee  7369         ldr r3, [r6, #0x14]                
004064f0  6f6e         ldr r7, [r5, #0x64]                
004064f2  2049         ldr r1, [pc, #0x80]                
004064f4  440a         lsrs r4, r0, #9                    
004064f6  0041         asrs r0, r0                        
004064f8  4d44         add r5, sb                         
004064fa  5f54         strb r7, [r3, r1]                  
004064fc  415f         ldrsh r1, [r0, r5]                 
004064fe  4743         muls r7, r0, r7                    
00406500  503a         subs r2, #0x50                     
00406502  2043         orrs r0, r4                        
00406504  6c6f         ldr r4, [r5, #0x74]                
00406506  7365         str r3, [r6, #0x54]                
00406508  4154         strb r1, [r0, r1]                  
0040650a  4944         add r1, sb                         
0040650c  524d         ldr r5, [pc, #0x148]               
0040650e  5365         str r3, [r2, #0x54]                
00406510  7373         strb r3, [r6, #0xd]                
00406512  696f         ldr r1, [r5, #0x74]                
00406514  6e20         movs r0, #0x6e                     
00406516  4558         ldr r5, [r0, r1]                   
00406518  4954         strb r1, [r1, r1]                  
0040651a  0a00         movs r2, r1                        
0040651c  414d         ldr r5, [pc, #0x104]               
0040651e  445f         ldrsh r4, [r0, r5]                 
00406520  5441         adcs r4, r2                        
00406522  5f47         bxns fp                            
00406524  4350         str r3, [r0, r1]                   
00406526  3a20         movs r0, #0x3a                     
00406528  4163         str r1, [r0, #0x34]                
0040652a  7469         ldr r4, [r6, #0x14]                
0040652c  7661         str r6, [r6, #0x14]                
0040652e  7465         str r4, [r6, #0x54]                
00406530  4154         strb r1, [r0, r1]                  
00406532  4944         add r1, sb                         
00406534  524d         ldr r5, [pc, #0x148]               
00406536  4365         str r3, [r0, #0x54]                
00406538  7274         strb r2, [r6, #0x11]               
0040653a  4175         strb r1, [r0, #0x15]               
0040653c  7468         ldr r4, [r6, #4]                   
0040653e  5365         str r3, [r2, #0x54]                
00406540  7373         strb r3, [r6, #0xd]                
00406542  696f         ldr r1, [r5, #0x74]                
00406544  6e20         movs r0, #0x6e                     
00406546  4558         ldr r5, [r0, r1]                   
00406548  4954         strb r1, [r1, r1]                  
0040654a  0a00         movs r2, r1                        
0040654c  414d         ldr r5, [pc, #0x104]               
0040654e  445f         ldrsh r4, [r0, r5]                 
00406550  5441         adcs r4, r2                        
00406552  5f47         bxns fp                            
00406554  4350         str r3, [r0, r1]                   
00406556  3a20         movs r0, #0x3a                     
00406558  416c         ldr r1, [r0, #0x44]                
0040655a  6c6f         ldr r4, [r5, #0x74]                
0040655c  6361         str r3, [r4, #0x14]                
0040655e  7465         str r4, [r6, #0x54]                
00406560  4154         strb r1, [r0, r1]                  
00406562  4944         add r1, sb                         
00406564  524d         ldr r5, [pc, #0x148]               
00406566  5365         str r3, [r2, #0x54]                
00406568  7373         strb r3, [r6, #0xd]                
0040656a  696f         ldr r1, [r5, #0x74]                
0040656c  6e20         movs r0, #0x6e                     
0040656e  4661         str r6, [r0, #0x14]                
00406570  696c         ldr r1, [r5, #0x44]                
00406572  2c20         movs r0, #0x2c                     
00406574  4153         strh r1, [r0, r5]                  
00406576  445f         ldrsh r4, [r0, r5]                 
00406578  5570         strb r5, [r2, #1]                  
0040657a  6461         str r4, [r4, #0x14]                
0040657c  7465         str r4, [r6, #0x54]                
0040657e  4154         strb r1, [r0, r1]                  
00406580  4963         str r1, [r1, #0x34]                
00406582  6f6e         ldr r7, [r5, #0x64]                
00406584  7465         str r4, [r6, #0x54]                
00406586  7874         strb r0, [r7, #0x11]               
00406588  2d3e         subs r6, #0x2d                     
0040658a  4472         strb r4, [r0, #9]                  
0040658c  6d53         strh r5, [r5, r5]                  
0040658e  6573         strb r5, [r4, #0xd]                
00406590  7369         ldr r3, [r6, #0x14]                
00406592  6f6e         ldr r7, [r5, #0x64]                
00406594  436f         ldr r3, [r0, #0x74]                
00406596  756e         ldr r5, [r6, #0x64]                
00406598  7465         str r4, [r6, #0x54]                
0040659a  7220         movs r0, #0x72                     
0040659c  5265         str r2, [r2, #0x54]                
0040659e  7420         movs r0, #0x74                     
004065a0  3d20         movs r0, #0x3d                     
004065a2  2558         ldr r5, [r4, r0]                   
004065a4  0a00         movs r2, r1                        
004065a6  414d         ldr r5, [pc, #0x104]               
004065a8  445f         ldrsh r4, [r0, r5]                 
004065aa  5441         adcs r4, r2                        
004065ac  5f47         bxns fp                            
004065ae  4350         str r3, [r0, r1]                   
004065b0  3a20         movs r0, #0x3a                     
004065b2  436c         ldr r3, [r0, #0x44]                
004065b4  6f73         strb r7, [r5, #0xd]                
004065b6  6541         adcs r5, r4                        
004065b8  5449         ldr r1, [pc, #0x150]               
004065ba  4452         strh r4, [r0, r1]                  
004065bc  4d53         strh r5, [r1, r5]                  
004065be  6573         strb r5, [r4, #0xd]                
004065c0  7369         ldr r3, [r6, #0x14]                
004065c2  6f6e         ldr r7, [r5, #0x64]                
004065c4  2046         mov r0, r4                         
004065c6  6169         ldr r1, [r4, #0x14]                
004065c8  6c2c         cmp r4, #0x6c                      
004065ca  2041         asrs r0, r4                        
004065cc  5344         add r3, sl                         
004065ce  5f55         strb r7, [r3, r5]                  
004065d0  7064         str r0, [r6, #0x44]                
004065d2  6174         strb r1, [r4, #0x11]               
004065d4  6541         adcs r5, r4                        
004065d6  5449         ldr r1, [pc, #0x150]               
004065d8  4472         strb r4, [r0, #9]                  
004065da  6d53         strh r5, [r5, r5]                  
004065dc  6573         strb r5, [r4, #0xd]                
004065de  7369         ldr r3, [r6, #0x14]                
004065e0  6f6e         ldr r7, [r5, #0x64]                
004065e2  436f         ldr r3, [r0, #0x74]                
004065e4  756e         ldr r5, [r6, #0x64]                
004065e6  7465         str r4, [r6, #0x54]                
004065e8  7220         movs r0, #0x72                     
004065ea  5265         str r2, [r2, #0x54]                
004065ec  7420         movs r0, #0x74                     
004065ee  3d20         movs r0, #0x3d                     
004065f0  2558         ldr r5, [r4, r0]                   
004065f2  0a00         movs r2, r1                        
004065f4  414d         ldr r5, [pc, #0x104]               
004065f6  445f         ldrsh r4, [r0, r5]                 
004065f8  5441         adcs r4, r2                        
004065fa  5f47         bxns fp                            
004065fc  4350         str r3, [r0, r1]                   
004065fe  3a20         movs r0, #0x3a                     
00406600  4552         strh r5, [r0, r1]                  
00406602  524f         ldr r7, [pc, #0x148]               
00406604  523a         subs r2, #0x52                     
00406606  2049         ldr r1, [pc, #0x80]                
00406608  6e76         strb r6, [r5, #0x19]               
0040660a  616c         ldr r1, [r4, #0x44]                
0040660c  6964         str r1, [r5, #0x44]                
0040660e  2048         ldr r0, [pc, #0x80]                
00406610  616e         ldr r1, [r4, #0x64]                
00406612  646c         ldr r4, [r4, #0x44]                
00406614  6553         strh r5, [r4, r5]                  
00406616  697a         ldrb r1, [r5, #9]                  
00406618  6520         movs r0, #0x65                     
0040661a  2825         movs r5, #0x28                     
0040661c  7529         cmp r1, #0x75                      
0040661e  0a00         movs r2, r1                        
00406620  414d         ldr r5, [pc, #0x104]               
00406622  445f         ldrsh r4, [r0, r5]                 
00406624  5441         adcs r4, r2                        
00406626  5f47         bxns fp                            
00406628  4350         str r3, [r0, r1]                   
0040662a  3a20         movs r0, #0x3a                     
0040662c  5175         strb r1, [r2, #0x15]               
0040662e  6572         strb r5, [r4, #9]                  
00406630  794f         ldr r7, [pc, #0x1e4]               
00406632  7574         strb r5, [r6, #0x11]               
00406634  7075         strb r0, [r6, #0x15]               
00406636  7449         ldr r1, [pc, #0x1d0]               
00406638  4420         movs r0, #0x44                     
0040663a  4558         ldr r5, [r0, r1]                   
0040663c  4954         strb r1, [r1, r1]                  
0040663e  0a00         movs r2, r1                        
00406640  414d         ldr r5, [pc, #0x104]               
00406642  445f         ldrsh r4, [r0, r5]                 
00406644  5441         adcs r4, r2                        
00406646  5f47         bxns fp                            
00406648  4350         str r3, [r0, r1]                   
0040664a  3a20         movs r0, #0x3a                     
0040664c  5175         strb r1, [r2, #0x15]               
0040664e  6572         strb r5, [r4, #9]                  
00406650  7943         muls r1, r7, r1                    
00406652  6f64         str r7, [r5, #0x44]                
00406654  6563         str r5, [r4, #0x34]                
00406656  546f         ldr r4, [r2, #0x74]                
00406658  6b65         str r3, [r5, #0x54]                
0040665a  6e43         muls r6, r5, r6                    
0040665c  6861         str r0, [r5, #0x14]                
0040665e  6c6c         ldr r4, [r5, #0x44]                
00406660  656e         ldr r5, [r4, #0x64]                
00406662  6765         str r7, [r4, #0x54]                
00406664  4461         str r4, [r0, #0x14]                
00406666  7461         str r4, [r6, #0x14]                
00406668  426c         ldr r2, [r0, #0x44]                
0040666a  6f62         str r7, [r5, #0x24]                
0040666c  2045         cmp r0, r4                         
0040666e  5849         ldr r1, [pc, #0x160]               
00406670  540a         lsrs r4, r2, #9                    
00406672  0041         asrs r0, r0                        
00406674  4d44         add r5, sb                         
00406676  5f54         strb r7, [r3, r1]                  
00406678  415f         ldrsh r1, [r0, r5]                 
0040667a  4743         muls r7, r0, r7                    
0040667c  503a         subs r2, #0x50                     
0040667e  2051         str r0, [r4, r4]                   
00406680  7565         str r5, [r6, #0x54]                
00406682  7279         ldrb r2, [r6, #5]                  
00406684  4465         str r4, [r0, #0x54]                
00406686  7669         ldr r6, [r6, #0x14]                
00406688  6365         str r3, [r4, #0x54]                
0040668a  4861         str r0, [r1, #0x14]                
0040668c  6e64         str r6, [r5, #0x44]                
0040668e  6c65         str r4, [r5, #0x54]                
00406690  2045         cmp r0, r4                         
00406692  5849         ldr r1, [pc, #0x160]               
00406694  540a         lsrs r4, r2, #9                    
00406696  0041         asrs r0, r0                        
00406698  4d44         add r5, sb                         
0040669a  5f54         strb r7, [r3, r1]                  
0040669c  415f         ldrsh r1, [r0, r5]                 
0040669e  4743         muls r7, r0, r7                    
004066a0  503a         subs r2, #0x50                     
004066a2  2051         str r0, [r4, r4]                   
004066a4  7565         str r5, [r6, #0x54]                
004066a6  7279         ldrb r2, [r6, #5]                  
004066a8  4368         ldr r3, [r0, #4]                   
004066aa  616e         ldr r1, [r4, #0x64]                
004066ac  6e65         str r6, [r5, #0x54]                
004066ae  6c54         strb r4, [r5, r1]                  
004066b0  7970         strb r1, [r7, #1]                  
004066b2  6520         movs r0, #0x65                     
004066b4  4558         ldr r5, [r0, r1]                   
004066b6  4954         strb r1, [r1, r1]                  
004066b8  0a00         movs r2, r1                        
004066ba  414d         ldr r5, [pc, #0x104]               
004066bc  445f         ldrsh r4, [r0, r5]                 
004066be  5441         adcs r4, r2                        
004066c0  5f47         bxns fp                            
004066c2  4350         str r3, [r0, r1]                   
004066c4  3a20         movs r0, #0x3a                     
004066c6  4b65         str r3, [r1, #0x54]                
004066c8  7945         cmp r1, pc                         
004066ca  7863         str r0, [r7, #0x34]                
004066cc  6861         str r0, [r5, #0x14]                
004066ce  6e67         str r6, [r5, #0x74]                
004066d0  6541         adcs r5, r4                        
004066d2  7574         strb r5, [r6, #0x11]               
004066d4  6865         str r0, [r5, #0x54]                
004066d6  6e74         strb r6, [r5, #0x11]               
004066d8  6963         str r1, [r5, #0x34]                
004066da  6174         strb r1, [r4, #0x11]               
004066dc  6564         str r5, [r4, #0x44]                
004066de  5365         str r3, [r2, #0x54]                
004066e0  7373         strb r3, [r6, #0xd]                
004066e2  696f         ldr r1, [r5, #0x74]                
004066e4  6e20         movs r0, #0x6e                     
004066e6  4558         ldr r5, [r0, r1]                   
004066e8  4954         strb r1, [r1, r1]                  
004066ea  0a00         movs r2, r1                        
004066ec  414d         ldr r5, [pc, #0x104]               
004066ee  445f         ldrsh r4, [r0, r5]                 
004066f0  5441         adcs r4, r2                        
004066f2  5f47         bxns fp                            
004066f4  4350         str r3, [r0, r1]                   
004066f6  3a20         movs r0, #0x3a                     
004066f8  436f         ldr r3, [r0, #0x74]                
004066fa  6e66         str r6, [r5, #0x64]                
004066fc  6967         str r1, [r5, #0x74]                
004066fe  7572         strb r5, [r6, #9]                  
00406700  6541         adcs r5, r4                        
00406702  7574         strb r5, [r6, #0x11]               
00406704  6865         str r0, [r5, #0x54]                
00406706  6e74         strb r6, [r5, #0x11]               
00406708  6963         str r1, [r5, #0x34]                
0040670a  6174         strb r1, [r4, #0x11]               
0040670c  6564         str r5, [r4, #0x44]                
0040670e  5365         str r3, [r2, #0x54]                
00406710  7373         strb r3, [r6, #0xd]                
00406712  696f         ldr r1, [r5, #0x74]                
00406714  6e20         movs r0, #0x6e                     
00406716  4558         ldr r5, [r0, r1]                   
00406718  4954         strb r1, [r1, r1]                  
0040671a  0a00         movs r2, r1                        
0040671c  414d         ldr r5, [pc, #0x104]               
0040671e  445f         ldrsh r4, [r0, r5]                 
00406720  5441         adcs r4, r2                        
00406722  5f47         bxns fp                            
00406724  4350         str r3, [r0, r1]                   
00406726  3a20         movs r0, #0x3a                     
00406728  4372         strb r3, [r0, #9]                  
0040672a  6561         str r5, [r4, #0x14]                
0040672c  7465         str r4, [r6, #0x54]                
0040672e  4175         strb r1, [r0, #0x15]               
00406730  7468         ldr r4, [r6, #4]                   
00406732  656e         ldr r5, [r4, #0x64]                
00406734  7469         ldr r4, [r6, #0x14]                
00406736  6361         str r3, [r4, #0x14]                
00406738  7465         str r4, [r6, #0x54]                
0040673a  6453         strh r4, [r4, r5]                  
0040673c  6573         strb r5, [r4, #0xd]                
0040673e  7369         ldr r3, [r6, #0x14]                
00406740  6f6e         ldr r7, [r5, #0x64]                
00406742  2045         cmp r0, r4                         
00406744  5849         ldr r1, [pc, #0x160]               
00406746  540a         lsrs r4, r2, #9                    
00406748  0041         asrs r0, r0                        
0040674a  4d44         add r5, sb                         
0040674c  5f54         strb r7, [r3, r1]                  
0040674e  415f         ldrsh r1, [r0, r5]                 
00406750  4743         muls r7, r0, r7                    
00406752  503a         subs r2, #0x50                     
00406754  2044         add r0, r4                         
00406756  6573         strb r5, [r4, #0xd]                
00406758  7472         strb r4, [r6, #9]                  
0040675a  6f79         ldrb r7, [r5, #5]                  
0040675c  4175         strb r1, [r0, #0x15]               
0040675e  7468         ldr r4, [r6, #4]                   
00406760  656e         ldr r5, [r4, #0x64]                
00406762  7469         ldr r4, [r6, #0x14]                
00406764  6361         str r3, [r4, #0x14]                
00406766  7465         str r4, [r6, #0x54]                
00406768  6453         strh r4, [r4, r5]                  
0040676a  6573         strb r5, [r4, #0xd]                
0040676c  7369         ldr r3, [r6, #0x14]                
0040676e  6f6e         ldr r7, [r5, #0x64]                
00406770  2045         cmp r0, r4                         
00406772  5849         ldr r1, [pc, #0x160]               
00406774  540a         lsrs r4, r2, #9                    
00406776  0041         asrs r0, r0                        
00406778  4d44         add r5, sb                         
0040677a  5f54         strb r7, [r3, r1]                  
0040677c  415f         ldrsh r1, [r0, r5]                 
0040677e  4743         muls r7, r0, r7                    
00406780  503a         subs r2, #0x50                     
00406782  2051         str r0, [r4, r4]                   
00406784  7565         str r5, [r6, #0x54]                
00406786  7279         ldrb r2, [r6, #5]                  
00406788  4175         strb r1, [r0, #0x15]               
0040678a  7468         ldr r4, [r6, #4]                   
0040678c  656e         ldr r5, [r4, #0x64]                
0040678e  7469         ldr r4, [r6, #0x14]                
00406790  6361         str r3, [r4, #0x14]                
00406792  7465         str r4, [r6, #0x54]                
00406794  6453         strh r4, [r4, r5]                  
00406796  6573         strb r5, [r4, #0xd]                
00406798  7369         ldr r3, [r6, #0x14]                
0040679a  6f6e         ldr r7, [r5, #0x64]                
0040679c  2045         cmp r0, r4                         
0040679e  5849         ldr r1, [pc, #0x160]               
004067a0  540a         lsrs r4, r2, #9                    
004067a2  0041         asrs r0, r0                        
004067a4  4d44         add r5, sb                         
004067a6  5f54         strb r7, [r3, r1]                  
004067a8  415f         ldrsh r1, [r0, r5]                 
004067aa  4743         muls r7, r0, r7                    
004067ac  503a         subs r2, #0x50                     
004067ae  2043         orrs r0, r4                        
004067b0  6f6e         ldr r7, [r5, #0x64]                
004067b2  6669         ldr r6, [r4, #0x14]                
004067b4  6775         strb r7, [r4, #0x15]               
004067b6  7265         str r2, [r6, #0x54]                
004067b8  4372         strb r3, [r0, #9]                  
004067ba  7970         strb r1, [r7, #1]                  
004067bc  746f         ldr r4, [r6, #0x74]                
004067be  5365         str r3, [r2, #0x54]                
004067c0  7373         strb r3, [r6, #0xd]                
004067c2  696f         ldr r1, [r5, #0x74]                
004067c4  6e20         movs r0, #0x6e                     
004067c6  4558         ldr r5, [r0, r1]                   
004067c8  4954         strb r1, [r1, r1]                  
004067ca  0a00         movs r2, r1                        
004067cc  414d         ldr r5, [pc, #0x104]               
004067ce  445f         ldrsh r4, [r0, r5]                 
004067d0  5441         adcs r4, r2                        
004067d2  5f47         bxns fp                            
004067d4  4350         str r3, [r0, r1]                   
004067d6  3a20         movs r0, #0x3a                     
004067d8  5175         strb r1, [r2, #0x15]               
004067da  6572         strb r5, [r4, #9]                  
004067dc  7943         muls r1, r7, r1                    
004067de  7279         ldrb r2, [r6, #5]                  
004067e0  7074         strb r0, [r6, #0x11]               
004067e2  6f53         strh r7, [r5, r5]                  
004067e4  6573         strb r5, [r4, #0xd]                
004067e6  7369         ldr r3, [r6, #0x14]                
004067e8  6f6e         ldr r7, [r5, #0x64]                
004067ea  2045         cmp r0, r4                         
004067ec  5849         ldr r1, [pc, #0x160]               
004067ee  540a         lsrs r4, r2, #9                    
004067f0  0041         asrs r0, r0                        
004067f2  4d44         add r5, sb                         
004067f4  5f54         strb r7, [r3, r1]                  
004067f6  415f         ldrsh r1, [r0, r5]                 
004067f8  4743         muls r7, r0, r7                    
004067fa  503a         subs r2, #0x50                     
004067fc  2051         str r0, [r4, r4]                   
004067fe  7565         str r5, [r6, #0x54]                
00406800  7279         ldrb r2, [r6, #5]                  
00406802  4163         str r1, [r0, #0x34]                
00406804  6365         str r3, [r4, #0x54]                
00406806  7373         strb r3, [r6, #0xd]                
00406808  6962         str r1, [r5, #0x24]                
0040680a  696c         ldr r1, [r5, #0x44]                
0040680c  6974         strb r1, [r5, #0x11]               
0040680e  7941         adcs r1, r7                        
00406810  7474         strb r4, [r6, #0x11]               
00406812  7269         ldr r2, [r6, #0x14]                
00406814  6275         strb r2, [r4, #0x15]               
00406816  7465         str r4, [r6, #0x54]                
00406818  7320         movs r0, #0x73                     
0040681a  4558         ldr r5, [r0, r1]                   
0040681c  4954         strb r1, [r1, r1]                  
0040681e  0a00         movs r2, r1                        
00406820  414d         ldr r5, [pc, #0x104]               
00406822  445f         ldrsh r4, [r0, r5]                 
00406824  5441         adcs r4, r2                        
00406826  5f47         bxns fp                            
00406828  4350         str r3, [r0, r1]                   
0040682a  3a20         movs r0, #0x3a                     
0040682c  5175         strb r1, [r2, #0x15]               
0040682e  6572         strb r5, [r4, #9]                  
00406830  794f         ldr r7, [pc, #0x1e4]               
00406832  7574         strb r5, [r6, #0x11]               
00406834  7075         strb r0, [r6, #0x15]               
00406836  7449         ldr r1, [pc, #0x1d0]               
00406838  4443         muls r4, r0, r4                    
0040683a  6f75         strb r7, [r5, #0x15]               
0040683c  6e74         strb r6, [r5, #0x11]               
0040683e  2045         cmp r0, r4                         
00406840  5849         ldr r1, [pc, #0x160]               
00406842  540a         lsrs r4, r2, #9                    
00406844  0041         asrs r0, r0                        
00406846  4d44         add r5, sb                         
00406848  5f54         strb r7, [r3, r1]                  
0040684a  415f         ldrsh r1, [r0, r5]                 
0040684c  4743         muls r7, r0, r7                    
0040684e  503a         subs r2, #0x50                     
00406850  2045         cmp r0, r4                         
00406852  5252         strh r2, [r2, r1]                  
00406854  4f52         strh r7, [r1, r1]                  
00406856  3a20         movs r0, #0x3a                     
00406858  4765         str r7, [r0, #0x54]                
0040685a  7443         muls r4, r6, r4                    
0040685c  7279         ldrb r2, [r6, #5]                  
0040685e  7074         strb r0, [r6, #0x11]               
00406860  6f53         strh r7, [r5, r5]                  
00406862  6573         strb r5, [r4, #0xd]                
00406864  7369         ldr r3, [r6, #0x14]                
00406866  6f6e         ldr r7, [r5, #0x64]                
00406868  4279         ldrb r2, [r0, #5]                  
0040686a  5541         adcs r5, r2                        
0040686c  5350         str r3, [r2, r1]                   
0040686e  4861         str r0, [r1, #0x14]                
00406870  6e64         str r6, [r5, #0x44]                
00406872  6c65         str r4, [r5, #0x54]                
00406874  2066         str r0, [r4, #0x60]                
00406876  6169         ldr r1, [r4, #0x14]                
00406878  6c65         str r4, [r5, #0x54]                
0040687a  640a         lsrs r4, r4, #9                    
0040687c  0041         asrs r0, r0                        
0040687e  4d44         add r5, sb                         
00406880  5f54         strb r7, [r3, r1]                  
00406882  415f         ldrsh r1, [r0, r5]                 
00406884  4743         muls r7, r0, r7                    
00406886  503a         subs r2, #0x50                     
00406888  2045         cmp r0, r4                         
0040688a  5252         strh r2, [r2, r1]                  
0040688c  4f52         strh r7, [r1, r1]                  
0040688e  3a20         movs r0, #0x3a                     
00406890  436f         ldr r3, [r0, #0x74]                
00406892  6e66         str r6, [r5, #0x64]                
00406894  6967         str r1, [r5, #0x74]                
00406896  7572         strb r5, [r6, #9]                  
00406898  6520         movs r0, #0x65                     
0040689a  4f4d         ldr r5, [pc, #0x13c]               
0040689c  4143         muls r1, r0, r1                    
0040689e  2076         strb r0, [r4, #0x18]               
004068a0  6572         strb r5, [r4, #9]                  
004068a2  6966         str r1, [r5, #0x64]                
004068a4  6963         str r1, [r5, #0x34]                
004068a6  6174         strb r1, [r4, #0x11]               
004068a8  696f         ldr r1, [r5, #0x74]                
004068aa  6e20         movs r0, #0x6e                     
004068ac  6661         str r6, [r4, #0x14]                
004068ae  696c         ldr r1, [r5, #0x44]                
004068b0  6564         str r5, [r4, #0x44]                
004068b2  0a00         movs r2, r1                        
004068b4  414d         ldr r5, [pc, #0x104]               
004068b6  445f         ldrsh r4, [r0, r5]                 
004068b8  5441         adcs r4, r2                        
004068ba  5f47         bxns fp                            
004068bc  4350         str r3, [r0, r1]                   
004068be  3a20         movs r0, #0x3a                     
004068c0  4552         strh r5, [r0, r1]                  
004068c2  524f         ldr r7, [pc, #0x148]               
004068c4  523a         subs r2, #0x52                     
004068c6  2051         str r0, [r4, r4]                   
004068c8  7565         str r5, [r6, #0x54]                
004068ca  7279         ldrb r2, [r6, #5]                  
004068cc  204f         ldr r7, [pc, #0x80]                
004068ce  4d41         adcs r5, r1                        
004068d0  4320         movs r0, #0x43                     
004068d2  6765         str r7, [r4, #0x54]                
004068d4  6e65         str r6, [r5, #0x54]                
004068d6  7261         str r2, [r6, #0x14]                
004068d8  7469         ldr r4, [r6, #0x14]                
004068da  6f6e         ldr r7, [r5, #0x64]                
004068dc  2066         str r0, [r4, #0x60]                
004068de  6169         ldr r1, [r4, #0x14]                
004068e0  6c65         str r4, [r5, #0x54]                
004068e2  640a         lsrs r4, r4, #9                    
004068e4  0041         asrs r0, r0                        
004068e6  4d44         add r5, sb                         
004068e8  5f54         strb r7, [r3, r1]                  
004068ea  415f         ldrsh r1, [r0, r5]                 
004068ec  4743         muls r7, r0, r7                    
004068ee  503a         subs r2, #0x50                     
004068f0  2045         cmp r0, r4                         
004068f2  5252         strh r2, [r2, r1]                  
004068f4  4f52         strh r7, [r1, r1]                  
004068f6  3a20         movs r0, #0x3a                     
004068f8  496e         ldr r1, [r1, #0x64]                
004068fa  7661         str r6, [r6, #0x14]                
004068fc  6c69         ldr r4, [r5, #0x14]                
004068fe  6420         movs r0, #0x64                     
00406900  6175         strb r1, [r4, #0x15]               
00406902  7468         ldr r4, [r6, #4]                   
00406904  656e         ldr r5, [r4, #0x64]                
00406906  7469         ldr r4, [r6, #0x14]                
00406908  6361         str r3, [r4, #0x14]                
0040690a  7469         ldr r4, [r6, #0x14]                
0040690c  6f6e         ldr r7, [r5, #0x64]                
0040690e  2063         str r0, [r4, #0x30]                
00406910  6f6e         ldr r7, [r5, #0x64]                
00406912  6669         ldr r6, [r4, #0x14]                
00406914  6775         strb r7, [r4, #0x15]               
00406916  7265         str r2, [r6, #0x54]                
00406918  2063         str r0, [r4, #0x30]                
0040691a  6f6d         ldr r7, [r5, #0x54]                
0040691c  6d61         str r5, [r5, #0x14]                
0040691e  6e64         str r6, [r5, #0x44]                
00406920  0a00         movs r2, r1                        
00406922  414d         ldr r5, [pc, #0x104]               
00406924  445f         ldrsh r4, [r0, r5]                 
00406926  5441         adcs r4, r2                        
00406928  5f47         bxns fp                            
0040692a  4350         str r3, [r0, r1]                   
0040692c  3a20         movs r0, #0x3a                     
0040692e  4552         strh r5, [r0, r1]                  
00406930  524f         ldr r7, [pc, #0x148]               
00406932  523a         subs r2, #0x52                     
00406934  2049         ldr r1, [pc, #0x80]                
00406936  6e76         strb r6, [r5, #0x19]               
00406938  616c         ldr r1, [r4, #0x44]                
0040693a  6964         str r1, [r5, #0x44]                
0040693c  2047         bx r4                              
0040693e  4350         str r3, [r0, r1]                   
00406940  2073         strb r0, [r4, #0xc]                
00406942  6573         strb r5, [r4, #0xd]                
00406944  7369         ldr r3, [r6, #0x14]                
00406946  6f6e         ldr r7, [r5, #0x64]                
00406948  2073         strb r0, [r4, #0xc]                
0040694a  7461         str r4, [r6, #0x14]                
0040694c  7465         str r4, [r6, #0x54]                
0040694e  0a00         movs r2, r1                        
00406950  414d         ldr r5, [pc, #0x104]               
00406952  445f         ldrsh r4, [r0, r5]                 
00406954  5441         adcs r4, r2                        
00406956  5f47         bxns fp                            
00406958  4350         str r3, [r0, r1]                   
0040695a  3a20         movs r0, #0x3a                     
0040695c  4552         strh r5, [r0, r1]                  
0040695e  524f         ldr r7, [pc, #0x148]               
00406960  523a         subs r2, #0x52                     
00406962  2049         ldr r1, [pc, #0x80]                
00406964  6e76         strb r6, [r5, #0x19]               
00406966  616c         ldr r1, [r4, #0x44]                
00406968  6964         str r1, [r5, #0x44]                
0040696a  2073         strb r0, [r4, #0xc]                
0040696c  6571         strb r5, [r4, #5]                  
0040696e  7565         str r5, [r6, #0x54]                
00406970  6e63         str r6, [r5, #0x34]                
00406972  6520         movs r0, #0x65                     
00406974  6e75         strb r6, [r5, #0x15]               
00406976  6d62         str r5, [r5, #0x24]                
00406978  6572         strb r5, [r4, #9]                  
0040697a  2061         str r0, [r4, #0x10]                
0040697c  6e64         str r6, [r5, #0x44]                
0040697e  2072         strb r0, [r4, #8]                  
00406980  6574         strb r5, [r4, #0x11]               
00406982  7572         strb r5, [r6, #9]                  
00406984  6e20         movs r0, #0x6e                     
00406986  636f         ldr r3, [r4, #0x74]                
00406988  6465         str r4, [r4, #0x54]                
0040698a  206f         ldr r0, [r4, #0x70]                
0040698c  6666         str r6, [r4, #0x64]                
0040698e  7365         str r3, [r6, #0x54]                
00406990  7473         strb r4, [r6, #0xd]                
00406992  0a00         movs r2, r1                        
00406994  414d         ldr r5, [pc, #0x104]               
00406996  445f         ldrsh r4, [r0, r5]                 
00406998  5441         adcs r4, r2                        
0040699a  5f47         bxns fp                            
0040699c  4350         str r3, [r0, r1]                   
0040699e  3a20         movs r0, #0x3a                     
004069a0  4552         strh r5, [r0, r1]                  
004069a2  524f         ldr r7, [pc, #0x148]               
004069a4  523a         subs r2, #0x52                     
004069a6  2049         ldr r1, [pc, #0x80]                
004069a8  6e76         strb r6, [r5, #0x19]               
004069aa  616c         ldr r1, [r4, #0x44]                
004069ac  6964         str r1, [r5, #0x44]                
004069ae  2073         strb r0, [r4, #0xc]                
004069b0  7461         str r4, [r6, #0x14]                
004069b2  7274         strb r2, [r6, #0x11]               
004069b4  2071         strb r0, [r4, #4]                  
004069b6  7565         str r5, [r6, #0x54]                
004069b8  7279         ldrb r2, [r6, #5]                  
004069ba  206f         ldr r0, [r4, #0x70]                
004069bc  7220         movs r0, #0x72                     
004069be  636f         ldr r3, [r4, #0x74]                
004069c0  6e66         str r6, [r5, #0x64]                
004069c2  6967         str r1, [r5, #0x74]                
004069c4  7572         strb r5, [r6, #9]                  
004069c6  6520         movs r0, #0x65                     
004069c8  7365         str r3, [r6, #0x54]                
004069ca  7175         strb r1, [r6, #0x15]               
004069cc  656e         ldr r5, [r4, #0x64]                
004069ce  6365         str r3, [r4, #0x54]                
004069d0  206f         ldr r0, [r4, #0x70]                
004069d2  6666         str r6, [r4, #0x64]                
004069d4  7365         str r3, [r6, #0x54]                
004069d6  740a         lsrs r4, r6, #9                    
004069d8  0041         asrs r0, r0                        
004069da  4d44         add r5, sb                         
004069dc  5f54         strb r7, [r3, r1]                  
004069de  415f         ldrsh r1, [r0, r5]                 
004069e0  4743         muls r7, r0, r7                    
004069e2  503a         subs r2, #0x50                     
004069e4  2045         cmp r0, r4                         
004069e6  5252         strh r2, [r2, r1]                  
004069e8  4f52         strh r7, [r1, r1]                  
004069ea  3a20         movs r0, #0x3a                     
004069ec  496e         ldr r1, [r1, #0x64]                
004069ee  7661         str r6, [r6, #0x14]                
004069f0  6c69         ldr r4, [r5, #0x14]                
004069f2  6420         movs r0, #0x64                     
004069f4  7265         str r2, [r6, #0x54]                
004069f6  7475         strb r4, [r6, #0x15]               
004069f8  726e         ldr r2, [r6, #0x64]                
004069fa  2063         str r0, [r4, #0x30]                
004069fc  6f64         str r7, [r5, #0x44]                
004069fe  6520         movs r0, #0x65                     
00406a00  6f66         str r7, [r5, #0x64]                
00406a02  6673         strb r6, [r4, #0xd]                
00406a04  6574         strb r5, [r4, #0x11]               
00406a06  0a00         movs r2, r1                        
00406a08  414d         ldr r5, [pc, #0x104]               
00406a0a  445f         ldrsh r4, [r0, r5]                 
00406a0c  5441         adcs r4, r2                        
00406a0e  5f47         bxns fp                            
00406a10  4350         str r3, [r0, r1]                   
00406a12  3a20         movs r0, #0x3a                     
00406a14  4552         strh r5, [r0, r1]                  
00406a16  524f         ldr r7, [pc, #0x148]               
00406a18  523a         subs r2, #0x52                     
00406a1a  2049         ldr r1, [pc, #0x80]                
00406a1c  6e76         strb r6, [r5, #0x19]               
00406a1e  616c         ldr r1, [r4, #0x44]                
00406a20  6964         str r1, [r5, #0x44]                
00406a22  2068         ldr r0, [r4]                       
00406a24  616e         ldr r1, [r4, #0x64]                
00406a26  646c         ldr r4, [r4, #0x44]                
00406a28  6520         movs r0, #0x65                     
00406a2a  6f66         str r7, [r5, #0x64]                
00406a2c  6673         strb r6, [r4, #0xd]                
00406a2e  6574         strb r5, [r4, #0x11]               
00406a30  7320         movs r0, #0x73                     
00406a32  666f         ldr r6, [r4, #0x74]                
00406a34  7220         movs r0, #0x72                     
00406a36  2575         strb r5, [r4, #0x14]               
00406a38  2d62         str r5, [r5, #0x20]                
00406a3a  6974         strb r1, [r5, #0x11]               
00406a3c  0a00         movs r2, r1                        
00406a3e  414d         ldr r5, [pc, #0x104]               
00406a40  445f         ldrsh r4, [r0, r5]                 
00406a42  5441         adcs r4, r2                        
00406a44  5f47         bxns fp                            
00406a46  4350         str r3, [r0, r1]                   
00406a48  3a20         movs r0, #0x3a                     
00406a4a  4552         strh r5, [r0, r1]                  
00406a4c  524f         ldr r7, [pc, #0x148]               
00406a4e  523a         subs r2, #0x52                     
00406a50  2049         ldr r1, [pc, #0x80]                
00406a52  6e76         strb r6, [r5, #0x19]               
00406a54  616c         ldr r1, [r4, #0x44]                
00406a56  6964         str r1, [r5, #0x44]                
00406a58  2064         str r0, [r4, #0x40]                
00406a5a  6576         strb r5, [r4, #0x19]               
00406a5c  6963         str r1, [r5, #0x34]                
00406a5e  6520         movs r0, #0x65                     
00406a60  6861         str r0, [r5, #0x14]                
00406a62  6e64         str r6, [r5, #0x44]                
00406a64  6c65         str r4, [r5, #0x54]                
00406a66  206f         ldr r0, [r4, #0x70]                
00406a68  6666         str r6, [r4, #0x64]                
00406a6a  7365         str r3, [r6, #0x54]                
00406a6c  7420         movs r0, #0x74                     
00406a6e  666f         ldr r6, [r4, #0x74]                
00406a70  7220         movs r0, #0x72                     
00406a72  2575         strb r5, [r4, #0x14]               
00406a74  2d62         str r5, [r5, #0x20]                
00406a76  6974         strb r1, [r5, #0x11]               
00406a78  0a00         movs r2, r1                        
00406a7a  414d         ldr r5, [pc, #0x104]               
00406a7c  445f         ldrsh r4, [r0, r5]                 
00406a7e  5441         adcs r4, r2                        
00406a80  5f47         bxns fp                            
00406a82  4350         str r3, [r0, r1]                   
00406a84  3a20         movs r0, #0x3a                     
00406a86  4552         strh r5, [r0, r1]                  
00406a88  524f         ldr r7, [pc, #0x148]               
00406a8a  523a         subs r2, #0x52                     
00406a8c  2049         ldr r1, [pc, #0x80]                
00406a8e  6e76         strb r6, [r5, #0x19]               
00406a90  616c         ldr r1, [r4, #0x44]                
00406a92  6964         str r1, [r5, #0x44]                
00406a94  2061         str r0, [r4, #0x10]                
00406a96  7574         strb r5, [r6, #0x11]               
00406a98  6865         str r0, [r5, #0x54]                
00406a9a  6e74         strb r6, [r5, #0x11]               
00406a9c  6963         str r1, [r5, #0x34]                
00406a9e  6174         strb r1, [r4, #0x11]               
00406aa0  6564         str r5, [r4, #0x44]                
00406aa2  2063         str r0, [r4, #0x30]                
00406aa4  6861         str r0, [r5, #0x14]                
00406aa6  6e6e         ldr r6, [r5, #0x64]                
00406aa8  656c         ldr r5, [r4, #0x44]                
00406aaa  2071         strb r0, [r4, #4]                  
00406aac  7565         str r5, [r6, #0x54]                
00406aae  7279         ldrb r2, [r6, #5]                  
00406ab0  0a00         movs r2, r1                        
00406ab2  414d         ldr r5, [pc, #0x104]               
00406ab4  445f         ldrsh r4, [r0, r5]                 
00406ab6  5441         adcs r4, r2                        
00406ab8  5f47         bxns fp                            
00406aba  4350         str r3, [r0, r1]                   
00406abc  3a20         movs r0, #0x3a                     
00406abe  5772         strb r7, [r2, #9]                  
00406ac0  6f6e         ldr r7, [r5, #0x64]                
00406ac2  6720         movs r0, #0x67                     
00406ac4  4861         str r0, [r1, #0x14]                
00406ac6  6e64         str r6, [r5, #0x44]                
00406ac8  6c65         str r4, [r5, #0x54]                
00406aca  5369         ldr r3, [r2, #0x14]                
00406acc  7a65         str r2, [r7, #0x54]                
00406ace  2028         cmp r0, #0x20                      
00406ad0  2575         strb r5, [r4, #0x14]               
00406ad2  290a         lsrs r1, r5, #8                    
00406ad4  0041         asrs r0, r0                        
00406ad6  4d44         add r5, sb                         
00406ad8  5f54         strb r7, [r3, r1]                  
00406ada  415f         ldrsh r1, [r0, r5]                 
00406adc  4743         muls r7, r0, r7                    
00406ade  503a         subs r2, #0x50                     
00406ae0  2048         ldr r0, [pc, #0x80]                
00406ae2  616e         ldr r1, [r4, #0x64]                
00406ae4  646c         ldr r4, [r4, #0x44]                
00406ae6  6553         strh r5, [r4, r5]                  
00406ae8  697a         ldrb r1, [r5, #9]                  
00406aea  6520         movs r0, #0x65                     
00406aec  6973         strb r1, [r5, #0xd]                
00406aee  2025         movs r5, #0x20                     
00406af0  752d         cmp r5, #0x75                      
00406af2  6269         ldr r2, [r4, #0x14]                
00406af4  743a         subs r2, #0x74                     
00406af6  0a00         movs r2, r1                        
00406af8  414d         ldr r5, [pc, #0x104]               
00406afa  445f         ldrsh r4, [r0, r5]                 
00406afc  5441         adcs r4, r2                        
00406afe  5f47         bxns fp                            
00406b00  4350         str r3, [r0, r1]                   
00406b02  3a20         movs r0, #0x3a                     
00406b04  4765         str r7, [r0, #0x54]                
00406b06  7443         muls r4, r6, r4                    
00406b08  7279         ldrb r2, [r6, #5]                  
00406b0a  7074         strb r0, [r6, #0x11]               
00406b0c  6f53         strh r7, [r5, r5]                  
00406b0e  6573         strb r5, [r4, #0xd]                
00406b10  7369         ldr r3, [r6, #0x14]                
00406b12  6f6e         ldr r7, [r5, #0x64]                
00406b14  466f         ldr r6, [r0, #0x74]                
00406b16  7244         add r2, lr                         
00406b18  6576         strb r5, [r4, #0x19]               
00406b1a  6963         str r1, [r5, #0x34]                
00406b1c  6520         movs r0, #0x65                     
00406b1e  4558         ldr r5, [r0, r1]                   
00406b20  4954         strb r1, [r1, r1]                  
00406b22  0a00         movs r2, r1                        
00406b24  414d         ldr r5, [pc, #0x104]               
00406b26  445f         ldrsh r4, [r0, r5]                 
00406b28  5441         adcs r4, r2                        
00406b2a  5f47         bxns fp                            
00406b2c  4350         str r3, [r0, r1]                   
00406b2e  3a20         movs r0, #0x3a                     
00406b30  4765         str r7, [r0, #0x54]                
00406b32  7443         muls r4, r6, r4                    
00406b34  7279         ldrb r2, [r6, #5]                  
00406b36  7074         strb r0, [r6, #0x11]               
00406b38  6f53         strh r7, [r5, r5]                  
00406b3a  6573         strb r5, [r4, #0xd]                
00406b3c  7369         ldr r3, [r6, #0x14]                
00406b3e  6f6e         ldr r7, [r5, #0x64]                
00406b40  4279         ldrb r2, [r0, #5]                  
00406b42  5541         adcs r5, r2                        
00406b44  5350         str r3, [r2, r1]                   
00406b46  4861         str r0, [r1, #0x14]                
00406b48  6e64         str r6, [r5, #0x44]                
00406b4a  6c65         str r4, [r5, #0x54]                
00406b4c  2045         cmp r0, r4                         
00406b4e  5849         ldr r1, [pc, #0x160]               
00406b50  540a         lsrs r4, r2, #9                    
00406b52  0041         asrs r0, r0                        
00406b54  4d44         add r5, sb                         
00406b56  5f54         strb r7, [r3, r1]                  
00406b58  415f         ldrsh r1, [r0, r5]                 
00406b5a  4743         muls r7, r0, r7                    
00406b5c  503a         subs r2, #0x50                     
00406b5e  2047         bx r4                              
00406b60  6574         strb r5, [r4, #0x11]               
00406b62  4372         strb r3, [r0, #9]                  
00406b64  7970         strb r1, [r7, #1]                  
00406b66  746f         ldr r4, [r6, #0x74]                
00406b68  5365         str r3, [r2, #0x54]                
00406b6a  7373         strb r3, [r6, #0xd]                
00406b6c  696f         ldr r1, [r5, #0x74]                
00406b6e  6e42         rsbs r6, r5, #0                    
00406b70  7944         add r1, pc                         
00406b72  6563         str r5, [r4, #0x34]                
00406b74  6f64         str r7, [r5, #0x44]                
00406b76  6548         ldr r0, [pc, #0x194]               
00406b78  616e         ldr r1, [r4, #0x64]                
00406b7a  646c         ldr r4, [r4, #0x44]                
00406b7c  6520         movs r0, #0x65                     
00406b7e  4558         ldr r5, [r0, r1]                   
00406b80  4954         strb r1, [r1, r1]                  
00406b82  0a00         movs r2, r1                        
00406b84  414d         ldr r5, [pc, #0x104]               
00406b86  445f         ldrsh r4, [r0, r5]                 
00406b88  5441         adcs r4, r2                        
00406b8a  5f47         bxns fp                            
00406b8c  4350         str r3, [r0, r1]                   
00406b8e  3a20         movs r0, #0x3a                     
00406b90  4b65         str r3, [r1, #0x54]                
00406b92  7945         cmp r1, pc                         
00406b94  7863         str r0, [r7, #0x34]                
00406b96  6861         str r0, [r5, #0x14]                
00406b98  6e67         str r6, [r5, #0x74]                
00406b9a  6543         muls r5, r4, r5                    
00406b9c  7279         ldrb r2, [r6, #5]                  
00406b9e  7074         strb r0, [r6, #0x11]               
00406ba0  6f53         strh r7, [r5, r5]                  
00406ba2  6573         strb r5, [r4, #0xd]                
00406ba4  7369         ldr r3, [r6, #0x14]                
00406ba6  6f6e         ldr r7, [r5, #0x64]                
00406ba8  2045         cmp r0, r4                         
00406baa  5849         ldr r1, [pc, #0x160]               
00406bac  540a         lsrs r4, r2, #9                    
00406bae  0041         asrs r0, r0                        
00406bb0  4d44         add r5, sb                         
00406bb2  5f54         strb r7, [r3, r1]                  
00406bb4  415f         ldrsh r1, [r0, r5]                 
00406bb6  4743         muls r7, r0, r7                    
00406bb8  503a         subs r2, #0x50                     
00406bba  2043         orrs r0, r4                        
00406bbc  7265         str r2, [r6, #0x54]                
00406bbe  6174         strb r1, [r4, #0x11]               
00406bc0  6543         muls r5, r4, r5                    
00406bc2  7279         ldrb r2, [r6, #5]                  
00406bc4  7074         strb r0, [r6, #0x11]               
00406bc6  6f53         strh r7, [r5, r5]                  
00406bc8  6573         strb r5, [r4, #0xd]                
00406bca  7369         ldr r3, [r6, #0x14]                
00406bcc  6f6e         ldr r7, [r5, #0x64]                
00406bce  2045         cmp r0, r4                         
00406bd0  5849         ldr r1, [pc, #0x160]               
00406bd2  540a         lsrs r4, r2, #9                    
00406bd4  0041         asrs r0, r0                        
00406bd6  4d44         add r5, sb                         
00406bd8  5f54         strb r7, [r3, r1]                  
00406bda  415f         ldrsh r1, [r0, r5]                 
00406bdc  4743         muls r7, r0, r7                    
00406bde  503a         subs r2, #0x50                     
00406be0  2046         mov r0, r4                         
00406be2  696e         ldr r1, [r5, #0x64]                
00406be4  6973         strb r1, [r5, #0xd]                
00406be6  684b         ldr r3, [pc, #0x1a0]               
00406be8  6579         ldrb r5, [r4, #5]                  
00406bea  5265         str r2, [r2, #0x54]                
00406bec  6672         strb r6, [r4, #9]                  
00406bee  6573         strb r5, [r4, #0xd]                
00406bf0  6843         muls r0, r5, r0                    
00406bf2  7279         ldrb r2, [r6, #5]                  
00406bf4  7074         strb r0, [r6, #0x11]               
00406bf6  6f53         strh r7, [r5, r5]                  
00406bf8  6573         strb r5, [r4, #0xd]                
00406bfa  7369         ldr r3, [r6, #0x14]                
00406bfc  6f6e         ldr r7, [r5, #0x64]                
00406bfe  2045         cmp r0, r4                         
00406c00  5849         ldr r1, [pc, #0x160]               
00406c02  540a         lsrs r4, r2, #9                    
00406c04  0041         asrs r0, r0                        
00406c06  4d44         add r5, sb                         
00406c08  5f54         strb r7, [r3, r1]                  
00406c0a  415f         ldrsh r1, [r0, r5]                 
00406c0c  4743         muls r7, r0, r7                    
00406c0e  503a         subs r2, #0x50                     
00406c10  2053         strh r0, [r4, r4]                  
00406c12  7461         str r4, [r6, #0x14]                
00406c14  7274         strb r2, [r6, #0x11]               
00406c16  4b65         str r3, [r1, #0x54]                
00406c18  7952         strh r1, [r7, r1]                  
00406c1a  6566         str r5, [r4, #0x64]                
00406c1c  7265         str r2, [r6, #0x54]                
00406c1e  7368         ldr r3, [r6, #4]                   
00406c20  4372         strb r3, [r0, #9]                  
00406c22  7970         strb r1, [r7, #1]                  
00406c24  746f         ldr r4, [r6, #0x74]                
00406c26  5365         str r3, [r2, #0x54]                
00406c28  7373         strb r3, [r6, #0xd]                
00406c2a  696f         ldr r1, [r5, #0x74]                
00406c2c  6e20         movs r0, #0x6e                     
00406c2e  4558         ldr r5, [r0, r1]                   
00406c30  4954         strb r1, [r1, r1]                  
00406c32  0a00         movs r2, r1                        
00406c34  414d         ldr r5, [pc, #0x104]               
00406c36  445f         ldrsh r4, [r0, r5]                 
00406c38  5441         adcs r4, r2                        
00406c3a  5f47         bxns fp                            
00406c3c  4350         str r3, [r0, r1]                   
00406c3e  3a20         movs r0, #0x3a                     
00406c40  4765         str r7, [r0, #0x54]                
00406c42  744f         ldr r7, [pc, #0x1d0]               
00406c44  6266         str r2, [r4, #0x64]                
00406c46  4b65         str r3, [r1, #0x54]                
00406c48  7943         muls r1, r7, r1                    
00406c4a  7279         ldrb r2, [r6, #5]                  
00406c4c  7074         strb r0, [r6, #0x11]               
00406c4e  6f53         strh r7, [r5, r5]                  
00406c50  6573         strb r5, [r4, #0xd]                
00406c52  7369         ldr r3, [r6, #0x14]                
00406c54  6f6e         ldr r7, [r5, #0x64]                
00406c56  2045         cmp r0, r4                         
00406c58  5849         ldr r1, [pc, #0x160]               
00406c5a  540a         lsrs r4, r2, #9                    
00406c5c  0041         asrs r0, r0                        
00406c5e  4d44         add r5, sb                         
00406c60  5f54         strb r7, [r3, r1]                  
00406c62  415f         ldrsh r1, [r0, r5]                 
00406c64  4743         muls r7, r0, r7                    
00406c66  503a         subs r2, #0x50                     
00406c68  2047         bx r4                              
00406c6a  6574         strb r5, [r4, #0x11]               
00406c6c  4f62         str r7, [r1, #0x24]                
00406c6e  664b         ldr r3, [pc, #0x198]               
00406c70  6579         ldrb r5, [r4, #5]                  
00406c72  4372         strb r3, [r0, #9]                  
00406c74  7970         strb r1, [r7, #1]                  
00406c76  746f         ldr r4, [r6, #0x74]                
00406c78  5365         str r3, [r2, #0x54]                
00406c7a  7373         strb r3, [r6, #0xd]                
00406c7c  696f         ldr r1, [r5, #0x74]                
00406c7e  6e20         movs r0, #0x6e                     
00406c80  7374         strb r3, [r6, #0x11]               
00406c82  6174         strb r1, [r4, #0x11]               
00406c84  7573         strb r5, [r6, #0xd]                
00406c86  203d         subs r5, #0x20                     
00406c88  2030         adds r0, #0x20                     
00406c8a  7825         movs r5, #0x78                     
00406c8c  780a         lsrs r0, r7, #9                    
00406c8e  0041         asrs r0, r0                        
00406c90  4d44         add r5, sb                         
00406c92  5f54         strb r7, [r3, r1]                  
00406c94  415f         ldrsh r1, [r0, r5]                 
00406c96  4743         muls r7, r0, r7                    
00406c98  503a         subs r2, #0x50                     
00406c9a  2047         bx r4                              
00406c9c  656e         ldr r5, [r4, #0x64]                
00406c9e  6572         strb r5, [r4, #9]                  
00406ca0  6174         strb r1, [r4, #0x11]               
00406ca2  654f         ldr r7, [pc, #0x194]               
00406ca4  4d41         adcs r5, r1                        
00406ca6  4320         movs r0, #0x43                     
00406ca8  746c         ldr r4, [r6, #0x44]                
00406caa  4472         strb r4, [r0, #9]                  
00406cac  6d41         adcs r5, r5                        
00406cae  7069         ldr r0, [r6, #0x14]                
00406cb0  4165         str r1, [r0, #0x54]                
00406cb2  7343         muls r3, r6, r3                    
00406cb4  6d61         str r5, [r5, #0x14]                
00406cb6  6320         movs r0, #0x63                     
00406cb8  6661         str r6, [r4, #0x14]                
00406cba  696c         ldr r1, [r5, #0x44]                
00406cbc  6564         str r5, [r4, #0x44]                
00406cbe  2077         strb r0, [r4, #0x1c]               
00406cc0  6974         strb r1, [r5, #0x11]               
00406cc2  6820         movs r0, #0x68                     
00406cc4  7374         strb r3, [r6, #0x11]               
00406cc6  6174         strb r1, [r4, #0x11]               
00406cc8  7573         strb r5, [r6, #0xd]                
00406cca  203d         subs r5, #0x20                     
00406ccc  2030         adds r0, #0x20                     
00406cce  7825         movs r5, #0x78                     
00406cd0  780a         lsrs r0, r7, #9                    
00406cd2  0041         asrs r0, r0                        
00406cd4  4d44         add r5, sb                         
00406cd6  5f54         strb r7, [r3, r1]                  
00406cd8  415f         ldrsh r1, [r0, r5]                 
00406cda  4743         muls r7, r0, r7                    
00406cdc  503a         subs r2, #0x50                     
00406cde  2056         ldrsb r0, [r4, r0]                 
00406ce0  6572         strb r5, [r4, #9]                  
00406ce2  6966         str r1, [r5, #0x64]                
00406ce4  794f         ldr r7, [pc, #0x1e4]               
00406ce6  4d41         adcs r5, r1                        
00406ce8  4320         movs r0, #0x43                     
00406cea  746c         ldr r4, [r6, #0x44]                
00406cec  4472         strb r4, [r0, #9]                  
00406cee  6d41         adcs r5, r5                        
00406cf0  7069         ldr r0, [r6, #0x14]                
00406cf2  4165         str r1, [r0, #0x54]                
00406cf4  7343         muls r3, r6, r3                    
00406cf6  6d61         str r5, [r5, #0x14]                
00406cf8  6320         movs r0, #0x63                     
00406cfa  6661         str r6, [r4, #0x14]                
00406cfc  696c         ldr r1, [r5, #0x44]                
00406cfe  6564         str r5, [r4, #0x44]                
00406d00  2077         strb r0, [r4, #0x1c]               
00406d02  6974         strb r1, [r5, #0x11]               
00406d04  6820         movs r0, #0x68                     
00406d06  7374         strb r3, [r6, #0x11]               
00406d08  6174         strb r1, [r4, #0x11]               
00406d0a  7573         strb r5, [r6, #0xd]                
00406d0c  203d         subs r5, #0x20                     
00406d0e  2030         adds r0, #0x20                     
00406d10  7825         movs r5, #0x78                     
00406d12  780a         lsrs r0, r7, #9                    
00406d14  0000         movs r0, r0                        
00406d16  0000         movs r0, r0                        
00406d18  1c00         movs r4, r3                        
00406d1a  0000         movs r0, r0                        
00406d1c  4300         lsls r3, r0, #1                    
00406d1e  0000         movs r0, r0                        
00406d20  f8ff         (undecodable)
00406d22  ffff         (undecodable)
00406d24  0c00         movs r4, r1                        
00406d26  0000         movs r0, r0                        
00406d28  0e00         movs r6, r1                        
00406d2a  0000         movs r0, r0                        
00406d2c  0f00         movs r7, r1                        
00406d2e  0000         movs r0, r0                        
00406d30  2e00         movs r6, r5                        
00406d32  0000         movs r0, r0                        
00406d34  1001         lsls r0, r2, #4                    
00406d36  0000         movs r0, r0                        
00406d38  4300         lsls r3, r0, #1                    
00406d3a  0000         movs r0, r0                        
00406d3c  f8ff         (undecodable)
00406d3e  ffff         (undecodable)
00406d40  0040         ands r0, r0                        
00406d42  4040         eors r0, r0                        
00406d44  4040         eors r0, r0                        
00406d46  4040         eors r0, r0                        
00406d48  4040         eors r0, r0                        
00406d4a  4141         adcs r1, r0                        
00406d4c  4141         adcs r1, r0                        
00406d4e  4140         eors r1, r0                        
00406d50  4040         eors r0, r0                        
00406d52  4040         eors r0, r0                        
00406d54  4040         eors r0, r0                        
00406d56  4040         eors r0, r0                        
00406d58  4040         eors r0, r0                        
00406d5a  4040         eors r0, r0                        
00406d5c  4040         eors r0, r0                        
00406d5e  4040         eors r0, r0                        
00406d60  4005         lsls r0, r0, #0x15                 
00406d62  0202         lsls r2, r0, #8                    
00406d64  0202         lsls r2, r0, #8                    
00406d66  0202         lsls r2, r0, #8                    
00406d68  0202         lsls r2, r0, #8                    
00406d6a  0202         lsls r2, r0, #8                    
00406d6c  0202         lsls r2, r0, #8                    
00406d6e  0202         lsls r2, r0, #8                    
00406d70  0220         movs r0, #2                        
00406d72  2020         movs r0, #0x20                     
00406d74  2020         movs r0, #0x20                     
00406d76  2020         movs r0, #0x20                     
00406d78  2020         movs r0, #0x20                     
00406d7a  2002         lsls r0, r4, #8                    
00406d7c  0202         lsls r2, r0, #8                    
00406d7e  0202         lsls r2, r0, #8                    
00406d80  0202         lsls r2, r0, #8                    
00406d82  9090         str r0, [sp, #0x240]               
00406d84  9090         str r0, [sp, #0x240]               
00406d86  9090         str r0, [sp, #0x240]               
00406d88  1010         asrs r0, r2, #0x20                 
00406d8a  1010         asrs r0, r2, #0x20                 
00406d8c  1010         asrs r0, r2, #0x20                 
00406d8e  1010         asrs r0, r2, #0x20                 
00406d90  1010         asrs r0, r2, #0x20                 
00406d92  1010         asrs r0, r2, #0x20                 
00406d94  1010         asrs r0, r2, #0x20                 
00406d96  1010         asrs r0, r2, #0x20                 
00406d98  1010         asrs r0, r2, #0x20                 
00406d9a  1010         asrs r0, r2, #0x20                 
00406d9c  0202         lsls r2, r0, #8                    
00406d9e  0202         lsls r2, r0, #8                    
00406da0  0202         lsls r2, r0, #8                    
00406da2  8888         ldrh r0, [r1, #4]                  
00406da4  8888         ldrh r0, [r1, #4]                  
00406da6  8888         ldrh r0, [r1, #4]                  
00406da8  0808         lsrs r0, r1, #0x20                 
00406daa  0808         lsrs r0, r1, #0x20                 
00406dac  0808         lsrs r0, r1, #0x20                 
00406dae  0808         lsrs r0, r1, #0x20                 
00406db0  0808         lsrs r0, r1, #0x20                 
00406db2  0808         lsrs r0, r1, #0x20                 
00406db4  0808         lsrs r0, r1, #0x20                 
00406db6  0808         lsrs r0, r1, #0x20                 
00406db8  0808         lsrs r0, r1, #0x20                 
00406dba  0808         lsrs r0, r1, #0x20                 
00406dbc  0202         lsls r2, r0, #8                    
00406dbe  0202         lsls r2, r0, #8                    
00406dc0  4000         lsls r0, r0, #1                    
00406dc2  0000         movs r0, r0                        
00406dc4  0000         movs r0, r0                        
00406dc6  0000         movs r0, r0                        
00406dc8  0000         movs r0, r0                        
00406dca  0000         movs r0, r0                        
00406dcc  0000         movs r0, r0                        
00406dce  0000         movs r0, r0                        
00406dd0  0000         movs r0, r0                        
00406dd2  0000         movs r0, r0                        
00406dd4  0000         movs r0, r0                        
00406dd6  0000         movs r0, r0                        
00406dd8  0000         movs r0, r0                        
00406dda  0000         movs r0, r0                        
00406ddc  0000         movs r0, r0                        
00406dde  0000         movs r0, r0                        
00406de0  0000         movs r0, r0                        
00406de2  0000         movs r0, r0                        
00406de4  0000         movs r0, r0                        
00406de6  0000         movs r0, r0                        
00406de8  0000         movs r0, r0                        
00406dea  0000         movs r0, r0                        
00406dec  0000         movs r0, r0                        
00406dee  0000         movs r0, r0                        
00406df0  0000         movs r0, r0                        
00406df2  0000         movs r0, r0                        
00406df4  0000         movs r0, r0                        
00406df6  0000         movs r0, r0                        
00406df8  0000         movs r0, r0                        
00406dfa  0000         movs r0, r0                        
00406dfc  0000         movs r0, r0                        
00406dfe  0000         movs r0, r0                        
00406e00  0000         movs r0, r0                        
00406e02  0000         movs r0, r0                        
00406e04  0000         movs r0, r0                        
00406e06  0000         movs r0, r0                        
00406e08  0000         movs r0, r0                        
00406e0a  0000         movs r0, r0                        
00406e0c  0000         movs r0, r0                        
00406e0e  0000         movs r0, r0                        
00406e10  0000         movs r0, r0                        
00406e12  0000         movs r0, r0                        
00406e14  0000         movs r0, r0                        
00406e16  0000         movs r0, r0                        
00406e18  0000         movs r0, r0                        
00406e1a  0000         movs r0, r0                        
00406e1c  0000         movs r0, r0                        
00406e1e  0000         movs r0, r0                        
00406e20  0000         movs r0, r0                        
00406e22  0000         movs r0, r0                        
00406e24  0000         movs r0, r0                        
00406e26  0000         movs r0, r0                        
00406e28  0000         movs r0, r0                        
00406e2a  0000         movs r0, r0                        
00406e2c  0000         movs r0, r0                        
00406e2e  0000         movs r0, r0                        
00406e30  0000         movs r0, r0                        
00406e32  0000         movs r0, r0                        
00406e34  0000         movs r0, r0                        
00406e36  0000         movs r0, r0                        
00406e38  0000         movs r0, r0                        
00406e3a  0000         movs r0, r0                        
00406e3c  0000         movs r0, r0                        
00406e3e  0000         movs r0, r0                        
00406e40  0000         movs r0, r0                        
00406e42  0000         movs r0, r0                        
00406e44  0000         movs r0, r0                        
00406e46  0000         movs r0, r0                        
00406e48  0000         movs r0, r0                        
00406e4a  0000         movs r0, r0                        
00406e4c  0000         movs r0, r0                        
00406e4e  0000         movs r0, r0                        
00406e50  0000         movs r0, r0                        
00406e52  0000         movs r0, r0                        
00406e54  0000         movs r0, r0                        
00406e56  0000         movs r0, r0                        
00406e58  0000         movs r0, r0                        
00406e5a  0000         movs r0, r0                        
00406e5c  0000         movs r0, r0                        
00406e5e  0000         movs r0, r0                        
00406e60  0000         movs r0, r0                        
00406e62  0000         movs r0, r0                        
00406e64  0000         movs r0, r0                        
00406e66  0000         movs r0, r0                        
00406e68  0000         movs r0, r0                        
00406e6a  0000         movs r0, r0                        
00406e6c  0000         movs r0, r0                        
00406e6e  0000         movs r0, r0                        
00406e70  0000         movs r0, r0                        
00406e72  0000         movs r0, r0                        
00406e74  0000         movs r0, r0                        
00406e76  0000         movs r0, r0                        
00406e78  0000         movs r0, r0                        
00406e7a  0000         movs r0, r0                        
00406e7c  0000         movs r0, r0                        
00406e7e  0000         movs r0, r0                        
00406e80  0000         movs r0, r0                        
00406e82  0000         movs r0, r0                        
00406e84  0000         movs r0, r0                        
00406e86  0000         movs r0, r0                        
00406e88  0000         movs r0, r0                        
00406e8a  0000         movs r0, r0                        
00406e8c  0000         movs r0, r0                        
00406e8e  0000         movs r0, r0                        
00406e90  0000         movs r0, r0                        
00406e92  0000         movs r0, r0                        
00406e94  0000         movs r0, r0                        
00406e96  0000         movs r0, r0                        
00406e98  0000         movs r0, r0                        
00406e9a  0000         movs r0, r0                        
00406e9c  0000         movs r0, r0                        
00406e9e  0000         movs r0, r0                        
00406ea0  0000         movs r0, r0                        
00406ea2  0000         movs r0, r0                        
00406ea4  0000         movs r0, r0                        
00406ea6  0000         movs r0, r0                        
00406ea8  0000         movs r0, r0                        
00406eaa  0000         movs r0, r0                        
00406eac  0000         movs r0, r0                        
00406eae  0000         movs r0, r0                        
00406eb0  0000         movs r0, r0                        
00406eb2  0000         movs r0, r0                        
00406eb4  0000         movs r0, r0                        
00406eb6  0000         movs r0, r0                        
00406eb8  0000         movs r0, r0                        
00406eba  0000         movs r0, r0                        
00406ebc  0000         movs r0, r0                        
00406ebe  0000         movs r0, r0                        
00406ec0  0000         movs r0, r0                        
00406ec2  0000         movs r0, r0                        
00406ec4  0000         movs r0, r0                        
00406ec6  0000         movs r0, r0                        
00406ec8  0000         movs r0, r0                        
00406eca  0000         movs r0, r0                        
00406ecc  0000         movs r0, r0                        
00406ece  0000         movs r0, r0                        
00406ed0  0000         movs r0, r0                        
00406ed2  0000         movs r0, r0                        
00406ed4  0000         movs r0, r0                        
00406ed6  0000         movs r0, r0                        
00406ed8  0000         movs r0, r0                        
00406eda  0000         movs r0, r0                        
00406edc  0000         movs r0, r0                        
00406ede  0000         movs r0, r0                        
00406ee0  0000         movs r0, r0                        
00406ee2  0000         movs r0, r0                        
00406ee4  0000         movs r0, r0                        
00406ee6  0000         movs r0, r0                        
00406ee8  0000         movs r0, r0                        
00406eea  0000         movs r0, r0                        
00406eec  0000         movs r0, r0                        
00406eee  0000         movs r0, r0                        
00406ef0  0000         movs r0, r0                        
00406ef2  0000         movs r0, r0                        
00406ef4  0000         movs r0, r0                        
00406ef6  0000         movs r0, r0                        
00406ef8  0000         movs r0, r0                        
00406efa  0000         movs r0, r0                        
00406efc  0000         movs r0, r0                        
00406efe  0000         movs r0, r0                        
00406f00  0000         movs r0, r0                        
00406f02  0000         movs r0, r0                        
00406f04  0000         movs r0, r0                        
00406f06  0000         movs r0, r0                        
00406f08  0000         movs r0, r0                        
00406f0a  0000         movs r0, r0                        
00406f0c  0000         movs r0, r0                        
00406f0e  0000         movs r0, r0                        
00406f10  0000         movs r0, r0                        
00406f12  0000         movs r0, r0                        
00406f14  0000         movs r0, r0                        
00406f16  0000         movs r0, r0                        
00406f18  0000         movs r0, r0                        
00406f1a  0000         movs r0, r0                        
00406f1c  0000         movs r0, r0                        
00406f1e  0000         movs r0, r0                        
00406f20  0000         movs r0, r0                        
00406f22  0000         movs r0, r0                        
00406f24  0000         movs r0, r0                        
00406f26  0000         movs r0, r0                        
00406f28  0000         movs r0, r0                        
00406f2a  0000         movs r0, r0                        
00406f2c  0000         movs r0, r0                        
00406f2e  0000         movs r0, r0                        
00406f30  0000         movs r0, r0                        
00406f32  0000         movs r0, r0                        
00406f34  0000         movs r0, r0                        
00406f36  0000         movs r0, r0                        
00406f38  0000         movs r0, r0                        
00406f3a  0000         movs r0, r0                        
00406f3c  0000         movs r0, r0                        
00406f3e  0000         movs r0, r0                        
00406f40  0000         movs r0, r0                        
00406f42  0000         movs r0, r0                        
00406f44  0000         movs r0, r0                        
00406f46  0000         movs r0, r0                        
00406f48  0000         movs r0, r0                        
00406f4a  0000         movs r0, r0                        
00406f4c  0000         movs r0, r0                        
00406f4e  0000         movs r0, r0                        
00406f50  0000         movs r0, r0                        
00406f52  0000         movs r0, r0                        
00406f54  0000         movs r0, r0                        
00406f56  0000         movs r0, r0                        
00406f58  0000         movs r0, r0                        
00406f5a  0000         movs r0, r0                        
00406f5c  0000         movs r0, r0                        
00406f5e  0000         movs r0, r0                        
00406f60  0000         movs r0, r0                        
00406f62  0000         movs r0, r0                        
00406f64  0000         movs r0, r0                        
00406f66  0000         movs r0, r0                        
00406f68  0000         movs r0, r0                        
00406f6a  0000         movs r0, r0                        
00406f6c  0000         movs r0, r0                        
00406f6e  0000         movs r0, r0                        
00406f70  0000         movs r0, r0                        
00406f72  0000         movs r0, r0                        
00406f74  0000         movs r0, r0                        
00406f76  0000         movs r0, r0                        
00406f78  0000         movs r0, r0                        
00406f7a  0000         movs r0, r0                        
00406f7c  0000         movs r0, r0                        
00406f7e  0000         movs r0, r0                        
00406f80  0000         movs r0, r0                        
00406f82  0000         movs r0, r0                        
00406f84  0000         movs r0, r0                        
00406f86  0000         movs r0, r0                        
00406f88  0000         movs r0, r0                        
00406f8a  0000         movs r0, r0                        
00406f8c  0000         movs r0, r0                        
00406f8e  0000         movs r0, r0                        
00406f90  0000         movs r0, r0                        
00406f92  0000         movs r0, r0                        
00406f94  0000         movs r0, r0                        
00406f96  0000         movs r0, r0                        
00406f98  0000         movs r0, r0                        
00406f9a  0000         movs r0, r0                        
00406f9c  0000         movs r0, r0                        
00406f9e  0000         movs r0, r0                        
00406fa0  0000         movs r0, r0                        
00406fa2  0000         movs r0, r0                        
00406fa4  0000         movs r0, r0                        
00406fa6  0000         movs r0, r0                        
00406fa8  0000         movs r0, r0                        
00406faa  0000         movs r0, r0                        
00406fac  0000         movs r0, r0                        
00406fae  0000         movs r0, r0                        
00406fb0  0000         movs r0, r0                        
00406fb2  0000         movs r0, r0                        
00406fb4  0000         movs r0, r0                        
00406fb6  0000         movs r0, r0                        
00406fb8  0000         movs r0, r0                        
00406fba  0000         movs r0, r0                        
00406fbc  0000         movs r0, r0                        
00406fbe  0000         movs r0, r0                        
00406fc0  0000         movs r0, r0                        
00406fc2  0000         movs r0, r0                        
00406fc4  0000         movs r0, r0                        
00406fc6  0000         movs r0, r0                        
00406fc8  0000         movs r0, r0                        
00406fca  0000         movs r0, r0                        
00406fcc  0000         movs r0, r0                        
00406fce  0000         movs r0, r0                        
00406fd0  0000         movs r0, r0                        
00406fd2  0000         movs r0, r0                        
00406fd4  0000         movs r0, r0                        
00406fd6  0000         movs r0, r0                        
00406fd8  0000         movs r0, r0                        
00406fda  0000         movs r0, r0                        
00406fdc  0000         movs r0, r0                        
00406fde  0000         movs r0, r0                        
00406fe0  0000         movs r0, r0                        
00406fe2  0000         movs r0, r0                        
00406fe4  0000         movs r0, r0                        
00406fe6  0000         movs r0, r0                        
00406fe8  0000         movs r0, r0                        
00406fea  0000         movs r0, r0                        
00406fec  0000         movs r0, r0                        
00406fee  0000         movs r0, r0                        
00406ff0  0000         movs r0, r0                        
00406ff2  0000         movs r0, r0                        
00406ff4  0000         movs r0, r0                        
00406ff6  0000         movs r0, r0                        
00406ff8  0000         movs r0, r0                        
00406ffa  0000         movs r0, r0                        
00406ffc  0000         movs r0, r0