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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global __construct_new_array
__construct_new_array:
/* 801C6CA8 001C2908 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 801C6CAC 001C290C 7C 08 02 A6 */ mflr r0
/* 801C6CB0 001C2910 2C 03 00 00 */ cmpwi r3, 0
/* 801C6CB4 001C2914 90 01 00 44 */ stw r0, 0x44(r1)
/* 801C6CB8 001C2918 BF 61 00 2C */ stmw r27, 0x2c(r1)
/* 801C6CBC 001C291C 7C 7E 1B 78 */ mr r30, r3
/* 801C6CC0 001C2920 7C 9B 23 78 */ mr r27, r4
/* 801C6CC4 001C2924 7C DC 33 78 */ mr r28, r6
/* 801C6CC8 001C2928 7C FD 3B 78 */ mr r29, r7
/* 801C6CCC 001C292C 41 82 00 C8 */ beq lbl_801C6D94
/* 801C6CD0 001C2930 2C 04 00 00 */ cmpwi r4, 0
/* 801C6CD4 001C2934 90 C3 00 00 */ stw r6, 0(r3)
/* 801C6CD8 001C2938 3B C3 00 10 */ addi r30, r3, 0x10
/* 801C6CDC 001C293C 90 E3 00 04 */ stw r7, 4(r3)
/* 801C6CE0 001C2940 41 82 00 B4 */ beq lbl_801C6D94
/* 801C6CE4 001C2944 38 00 00 00 */ li r0, 0
/* 801C6CE8 001C2948 93 C1 00 08 */ stw r30, 8(r1)
/* 801C6CEC 001C294C 7F DF F3 78 */ mr r31, r30
/* 801C6CF0 001C2950 90 C1 00 0C */ stw r6, 0xc(r1)
/* 801C6CF4 001C2954 90 E1 00 10 */ stw r7, 0x10(r1)
/* 801C6CF8 001C2958 90 A1 00 14 */ stw r5, 0x14(r1)
/* 801C6CFC 001C295C 90 01 00 18 */ stw r0, 0x18(r1)
/* 801C6D00 001C2960 48 00 00 28 */ b lbl_801C6D28
lbl_801C6D04:
/* 801C6D04 001C2964 7F 6C DB 78 */ mr r12, r27
/* 801C6D08 001C2968 7F E3 FB 78 */ mr r3, r31
/* 801C6D0C 001C296C 38 80 00 01 */ li r4, 1
/* 801C6D10 001C2970 7D 89 03 A6 */ mtctr r12
/* 801C6D14 001C2974 4E 80 04 21 */ bctrl
/* 801C6D18 001C2978 80 61 00 18 */ lwz r3, 0x18(r1)
/* 801C6D1C 001C297C 7F FF E2 14 */ add r31, r31, r28
/* 801C6D20 001C2980 38 03 00 01 */ addi r0, r3, 1
/* 801C6D24 001C2984 90 01 00 18 */ stw r0, 0x18(r1)
lbl_801C6D28:
/* 801C6D28 001C2988 80 81 00 18 */ lwz r4, 0x18(r1)
/* 801C6D2C 001C298C 7C 04 E8 40 */ cmplw r4, r29
/* 801C6D30 001C2990 41 80 FF D4 */ blt lbl_801C6D04
/* 801C6D34 001C2994 80 01 00 10 */ lwz r0, 0x10(r1)
/* 801C6D38 001C2998 7C 04 00 40 */ cmplw r4, r0
/* 801C6D3C 001C299C 40 80 00 58 */ bge lbl_801C6D94
/* 801C6D40 001C29A0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801C6D44 001C29A4 2C 00 00 00 */ cmpwi r0, 0
/* 801C6D48 001C29A8 41 82 00 4C */ beq lbl_801C6D94
/* 801C6D4C 001C29AC 80 01 00 0C */ lwz r0, 0xc(r1)
/* 801C6D50 001C29B0 80 61 00 08 */ lwz r3, 8(r1)
/* 801C6D54 001C29B4 7C 00 21 D6 */ mullw r0, r0, r4
/* 801C6D58 001C29B8 7F E3 02 14 */ add r31, r3, r0
/* 801C6D5C 001C29BC 48 00 00 2C */ b lbl_801C6D88
lbl_801C6D60:
/* 801C6D60 001C29C0 80 01 00 0C */ lwz r0, 0xc(r1)
/* 801C6D64 001C29C4 38 80 FF FF */ li r4, -1
/* 801C6D68 001C29C8 81 81 00 14 */ lwz r12, 0x14(r1)
/* 801C6D6C 001C29CC 7F E0 F8 50 */ subf r31, r0, r31
/* 801C6D70 001C29D0 7F E3 FB 78 */ mr r3, r31
/* 801C6D74 001C29D4 7D 89 03 A6 */ mtctr r12
/* 801C6D78 001C29D8 4E 80 04 21 */ bctrl
/* 801C6D7C 001C29DC 80 61 00 18 */ lwz r3, 0x18(r1)
/* 801C6D80 001C29E0 38 03 FF FF */ addi r0, r3, -1
/* 801C6D84 001C29E4 90 01 00 18 */ stw r0, 0x18(r1)
lbl_801C6D88:
/* 801C6D88 001C29E8 80 01 00 18 */ lwz r0, 0x18(r1)
/* 801C6D8C 001C29EC 2C 00 00 00 */ cmpwi r0, 0
/* 801C6D90 001C29F0 40 82 FF D0 */ bne lbl_801C6D60
lbl_801C6D94:
/* 801C6D94 001C29F4 7F C3 F3 78 */ mr r3, r30
/* 801C6D98 001C29F8 BB 61 00 2C */ lmw r27, 0x2c(r1)
/* 801C6D9C 001C29FC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 801C6DA0 001C2A00 7C 08 03 A6 */ mtlr r0
/* 801C6DA4 001C2A04 38 21 00 40 */ addi r1, r1, 0x40
/* 801C6DA8 001C2A08 4E 80 00 20 */ blr
.global __dt__26__partial_array_destructorFv
__dt__26__partial_array_destructorFv:
/* 801C6DAC 001C2A0C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801C6DB0 001C2A10 7C 08 02 A6 */ mflr r0
/* 801C6DB4 001C2A14 2C 03 00 00 */ cmpwi r3, 0
/* 801C6DB8 001C2A18 90 01 00 24 */ stw r0, 0x24(r1)
/* 801C6DBC 001C2A1C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801C6DC0 001C2A20 93 C1 00 18 */ stw r30, 0x18(r1)
/* 801C6DC4 001C2A24 7C 9E 23 78 */ mr r30, r4
/* 801C6DC8 001C2A28 93 A1 00 14 */ stw r29, 0x14(r1)
/* 801C6DCC 001C2A2C 7C 7D 1B 78 */ mr r29, r3
/* 801C6DD0 001C2A30 41 82 00 78 */ beq lbl_801C6E48
/* 801C6DD4 001C2A34 80 83 00 10 */ lwz r4, 0x10(r3)
/* 801C6DD8 001C2A38 80 03 00 08 */ lwz r0, 8(r3)
/* 801C6DDC 001C2A3C 7C 04 00 40 */ cmplw r4, r0
/* 801C6DE0 001C2A40 40 80 00 58 */ bge lbl_801C6E38
/* 801C6DE4 001C2A44 80 03 00 0C */ lwz r0, 0xc(r3)
/* 801C6DE8 001C2A48 2C 00 00 00 */ cmpwi r0, 0
/* 801C6DEC 001C2A4C 41 82 00 4C */ beq lbl_801C6E38
/* 801C6DF0 001C2A50 80 03 00 04 */ lwz r0, 4(r3)
/* 801C6DF4 001C2A54 80 63 00 00 */ lwz r3, 0(r3)
/* 801C6DF8 001C2A58 7C 00 21 D6 */ mullw r0, r0, r4
/* 801C6DFC 001C2A5C 7F E3 02 14 */ add r31, r3, r0
/* 801C6E00 001C2A60 48 00 00 2C */ b lbl_801C6E2C
lbl_801C6E04:
/* 801C6E04 001C2A64 80 1D 00 04 */ lwz r0, 4(r29)
/* 801C6E08 001C2A68 38 80 FF FF */ li r4, -1
/* 801C6E0C 001C2A6C 81 9D 00 0C */ lwz r12, 0xc(r29)
/* 801C6E10 001C2A70 7F E0 F8 50 */ subf r31, r0, r31
/* 801C6E14 001C2A74 7F E3 FB 78 */ mr r3, r31
/* 801C6E18 001C2A78 7D 89 03 A6 */ mtctr r12
/* 801C6E1C 001C2A7C 4E 80 04 21 */ bctrl
/* 801C6E20 001C2A80 80 7D 00 10 */ lwz r3, 0x10(r29)
/* 801C6E24 001C2A84 38 03 FF FF */ addi r0, r3, -1
/* 801C6E28 001C2A88 90 1D 00 10 */ stw r0, 0x10(r29)
lbl_801C6E2C:
/* 801C6E2C 001C2A8C 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 801C6E30 001C2A90 2C 00 00 00 */ cmpwi r0, 0
/* 801C6E34 001C2A94 40 82 FF D0 */ bne lbl_801C6E04
lbl_801C6E38:
/* 801C6E38 001C2A98 2C 1E 00 00 */ cmpwi r30, 0
/* 801C6E3C 001C2A9C 40 81 00 0C */ ble lbl_801C6E48
/* 801C6E40 001C2AA0 7F A3 EB 78 */ mr r3, r29
/* 801C6E44 001C2AA4 48 01 3C 75 */ bl __dl__FPv
lbl_801C6E48:
/* 801C6E48 001C2AA8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 801C6E4C 001C2AAC 7F A3 EB 78 */ mr r3, r29
/* 801C6E50 001C2AB0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 801C6E54 001C2AB4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 801C6E58 001C2AB8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 801C6E5C 001C2ABC 7C 08 03 A6 */ mtlr r0
/* 801C6E60 001C2AC0 38 21 00 20 */ addi r1, r1, 0x20
/* 801C6E64 001C2AC4 4E 80 00 20 */ blr
.global __construct_array
__construct_array:
/* 801C6E68 001C2AC8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 801C6E6C 001C2ACC 7C 08 02 A6 */ mflr r0
/* 801C6E70 001C2AD0 90 01 00 34 */ stw r0, 0x34(r1)
/* 801C6E74 001C2AD4 38 00 00 00 */ li r0, 0
/* 801C6E78 001C2AD8 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 801C6E7C 001C2ADC 7C 7F 1B 78 */ mr r31, r3
/* 801C6E80 001C2AE0 93 C1 00 28 */ stw r30, 0x28(r1)
/* 801C6E84 001C2AE4 7C FE 3B 78 */ mr r30, r7
/* 801C6E88 001C2AE8 93 A1 00 24 */ stw r29, 0x24(r1)
/* 801C6E8C 001C2AEC 7C DD 33 78 */ mr r29, r6
/* 801C6E90 001C2AF0 93 81 00 20 */ stw r28, 0x20(r1)
/* 801C6E94 001C2AF4 7C 9C 23 78 */ mr r28, r4
/* 801C6E98 001C2AF8 90 61 00 08 */ stw r3, 8(r1)
/* 801C6E9C 001C2AFC 90 C1 00 0C */ stw r6, 0xc(r1)
/* 801C6EA0 001C2B00 90 E1 00 10 */ stw r7, 0x10(r1)
/* 801C6EA4 001C2B04 90 A1 00 14 */ stw r5, 0x14(r1)
/* 801C6EA8 001C2B08 90 01 00 18 */ stw r0, 0x18(r1)
/* 801C6EAC 001C2B0C 48 00 00 28 */ b lbl_801C6ED4
lbl_801C6EB0:
/* 801C6EB0 001C2B10 7F 8C E3 78 */ mr r12, r28
/* 801C6EB4 001C2B14 7F E3 FB 78 */ mr r3, r31
/* 801C6EB8 001C2B18 38 80 00 01 */ li r4, 1
/* 801C6EBC 001C2B1C 7D 89 03 A6 */ mtctr r12
/* 801C6EC0 001C2B20 4E 80 04 21 */ bctrl
/* 801C6EC4 001C2B24 80 61 00 18 */ lwz r3, 0x18(r1)
/* 801C6EC8 001C2B28 7F FF EA 14 */ add r31, r31, r29
/* 801C6ECC 001C2B2C 38 03 00 01 */ addi r0, r3, 1
/* 801C6ED0 001C2B30 90 01 00 18 */ stw r0, 0x18(r1)
lbl_801C6ED4:
/* 801C6ED4 001C2B34 80 81 00 18 */ lwz r4, 0x18(r1)
/* 801C6ED8 001C2B38 7C 04 F0 40 */ cmplw r4, r30
/* 801C6EDC 001C2B3C 41 80 FF D4 */ blt lbl_801C6EB0
/* 801C6EE0 001C2B40 80 01 00 10 */ lwz r0, 0x10(r1)
/* 801C6EE4 001C2B44 7C 04 00 40 */ cmplw r4, r0
/* 801C6EE8 001C2B48 40 80 00 58 */ bge lbl_801C6F40
/* 801C6EEC 001C2B4C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801C6EF0 001C2B50 2C 00 00 00 */ cmpwi r0, 0
/* 801C6EF4 001C2B54 41 82 00 4C */ beq lbl_801C6F40
/* 801C6EF8 001C2B58 80 01 00 0C */ lwz r0, 0xc(r1)
/* 801C6EFC 001C2B5C 80 61 00 08 */ lwz r3, 8(r1)
/* 801C6F00 001C2B60 7C 00 21 D6 */ mullw r0, r0, r4
/* 801C6F04 001C2B64 7F E3 02 14 */ add r31, r3, r0
/* 801C6F08 001C2B68 48 00 00 2C */ b lbl_801C6F34
lbl_801C6F0C:
/* 801C6F0C 001C2B6C 80 01 00 0C */ lwz r0, 0xc(r1)
/* 801C6F10 001C2B70 38 80 FF FF */ li r4, -1
/* 801C6F14 001C2B74 81 81 00 14 */ lwz r12, 0x14(r1)
/* 801C6F18 001C2B78 7F E0 F8 50 */ subf r31, r0, r31
/* 801C6F1C 001C2B7C 7F E3 FB 78 */ mr r3, r31
/* 801C6F20 001C2B80 7D 89 03 A6 */ mtctr r12
/* 801C6F24 001C2B84 4E 80 04 21 */ bctrl
/* 801C6F28 001C2B88 80 61 00 18 */ lwz r3, 0x18(r1)
/* 801C6F2C 001C2B8C 38 03 FF FF */ addi r0, r3, -1
/* 801C6F30 001C2B90 90 01 00 18 */ stw r0, 0x18(r1)
lbl_801C6F34:
/* 801C6F34 001C2B94 80 01 00 18 */ lwz r0, 0x18(r1)
/* 801C6F38 001C2B98 2C 00 00 00 */ cmpwi r0, 0
/* 801C6F3C 001C2B9C 40 82 FF D0 */ bne lbl_801C6F0C
lbl_801C6F40:
/* 801C6F40 001C2BA0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 801C6F44 001C2BA4 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 801C6F48 001C2BA8 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 801C6F4C 001C2BAC 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 801C6F50 001C2BB0 83 81 00 20 */ lwz r28, 0x20(r1)
/* 801C6F54 001C2BB4 7C 08 03 A6 */ mtlr r0
/* 801C6F58 001C2BB8 38 21 00 30 */ addi r1, r1, 0x30
/* 801C6F5C 001C2BBC 4E 80 00 20 */ blr
.global __destroy_arr
__destroy_arr:
/* 801C6F60 001C2BC0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801C6F64 001C2BC4 7C 08 02 A6 */ mflr r0
/* 801C6F68 001C2BC8 90 01 00 24 */ stw r0, 0x24(r1)
/* 801C6F6C 001C2BCC 7C 05 31 D6 */ mullw r0, r5, r6
/* 801C6F70 001C2BD0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801C6F74 001C2BD4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 801C6F78 001C2BD8 7C DE 33 78 */ mr r30, r6
/* 801C6F7C 001C2BDC 7F E3 02 14 */ add r31, r3, r0
/* 801C6F80 001C2BE0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 801C6F84 001C2BE4 7C BD 2B 78 */ mr r29, r5
/* 801C6F88 001C2BE8 93 81 00 10 */ stw r28, 0x10(r1)
/* 801C6F8C 001C2BEC 7C 9C 23 78 */ mr r28, r4
/* 801C6F90 001C2BF0 48 00 00 20 */ b lbl_801C6FB0
lbl_801C6F94:
/* 801C6F94 001C2BF4 7F FD F8 50 */ subf r31, r29, r31
/* 801C6F98 001C2BF8 7F 8C E3 78 */ mr r12, r28
/* 801C6F9C 001C2BFC 7F E3 FB 78 */ mr r3, r31
/* 801C6FA0 001C2C00 38 80 FF FF */ li r4, -1
/* 801C6FA4 001C2C04 7D 89 03 A6 */ mtctr r12
/* 801C6FA8 001C2C08 4E 80 04 21 */ bctrl
/* 801C6FAC 001C2C0C 3B DE FF FF */ addi r30, r30, -1
lbl_801C6FB0:
/* 801C6FB0 001C2C10 2C 1E 00 00 */ cmpwi r30, 0
/* 801C6FB4 001C2C14 40 82 FF E0 */ bne lbl_801C6F94
/* 801C6FB8 001C2C18 80 01 00 24 */ lwz r0, 0x24(r1)
/* 801C6FBC 001C2C1C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 801C6FC0 001C2C20 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 801C6FC4 001C2C24 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 801C6FC8 001C2C28 83 81 00 10 */ lwz r28, 0x10(r1)
/* 801C6FCC 001C2C2C 7C 08 03 A6 */ mtlr r0
/* 801C6FD0 001C2C30 38 21 00 20 */ addi r1, r1, 0x20
/* 801C6FD4 001C2C34 4E 80 00 20 */ blr
|