summaryrefslogtreecommitdiff
path: root/asm/code_8038F1CC.s
blob: c40b5cd64090f14ff765b2f3a10ed48b8cae7909 (plain)
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
.include "macros.inc"

.section .text, "ax"  # 0x80006980 - 0x803E1E60

.global func_8038F1CC
func_8038F1CC:
/* 8038F1CC 0038AE2C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8038F1D0 0038AE30  7C 08 02 A6 */	mflr r0
/* 8038F1D4 0038AE34  90 01 00 24 */	stw r0, 0x24(r1)
/* 8038F1D8 0038AE38  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8038F1DC 0038AE3C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8038F1E0 0038AE40  3B C0 00 00 */	li r30, 0
/* 8038F1E4 0038AE44  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8038F1E8 0038AE48  7C 7D 1B 78 */	mr r29, r3
/* 8038F1EC 0038AE4C  48 00 00 3C */	b lbl_8038F228
lbl_8038F1F0:
/* 8038F1F0 0038AE50  7F C4 F3 78 */	mr r4, r30
/* 8038F1F4 0038AE54  38 7D 00 30 */	addi r3, r29, 0x30
/* 8038F1F8 0038AE58  48 00 68 E1 */	bl func_80395AD8
/* 8038F1FC 0038AE5C  7C 7F 1B 78 */	mr r31, r3
/* 8038F200 0038AE60  7F C4 F3 78 */	mr r4, r30
/* 8038F204 0038AE64  38 7D 00 30 */	addi r3, r29, 0x30
/* 8038F208 0038AE68  48 00 68 9D */	bl func_80395AA4
/* 8038F20C 0038AE6C  7C 63 F8 50 */	subf r3, r3, r31
/* 8038F210 0038AE70  7F C4 F3 78 */	mr r4, r30
/* 8038F214 0038AE74  38 03 00 01 */	addi r0, r3, 1
/* 8038F218 0038AE78  38 7D 00 30 */	addi r3, r29, 0x30
/* 8038F21C 0038AE7C  54 05 04 3E */	clrlwi r5, r0, 0x10
/* 8038F220 0038AE80  48 00 69 21 */	bl func_80395B40
/* 8038F224 0038AE84  3B DE 00 01 */	addi r30, r30, 1
lbl_8038F228:
/* 8038F228 0038AE88  38 7D 00 30 */	addi r3, r29, 0x30
/* 8038F22C 0038AE8C  48 00 68 5D */	bl func_80395A88
/* 8038F230 0038AE90  7C 1E 18 40 */	cmplw r30, r3
/* 8038F234 0038AE94  41 80 FF BC */	blt lbl_8038F1F0
/* 8038F238 0038AE98  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8038F23C 0038AE9C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8038F240 0038AEA0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8038F244 0038AEA4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8038F248 0038AEA8  7C 08 03 A6 */	mtlr r0
/* 8038F24C 0038AEAC  38 21 00 20 */	addi r1, r1, 0x20
/* 8038F250 0038AEB0  4E 80 00 20 */	blr 

.global func_8038F254
func_8038F254:
/* 8038F254 0038AEB4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038F258 0038AEB8  7C 08 02 A6 */	mflr r0
/* 8038F25C 0038AEBC  38 80 00 00 */	li r4, 0
/* 8038F260 0038AEC0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038F264 0038AEC4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038F268 0038AEC8  3F E0 80 64 */	lis r31, lbl_8063CE34@ha
/* 8038F26C 0038AECC  3B FF CE 34 */	addi r31, r31, lbl_8063CE34@l
/* 8038F270 0038AED0  7F E3 FB 78 */	mr r3, r31
/* 8038F274 0038AED4  48 00 1C 9D */	bl func_80390F10
/* 8038F278 0038AED8  38 7F 00 04 */	addi r3, r31, 4
/* 8038F27C 0038AEDC  38 80 00 00 */	li r4, 0
/* 8038F280 0038AEE0  48 00 14 31 */	bl func_803906B0
/* 8038F284 0038AEE4  38 7F 00 08 */	addi r3, r31, 8
/* 8038F288 0038AEE8  38 80 00 00 */	li r4, 0
/* 8038F28C 0038AEEC  48 00 03 75 */	bl func_8038F600
/* 8038F290 0038AEF0  38 7F 00 0C */	addi r3, r31, 0xc
/* 8038F294 0038AEF4  38 80 00 00 */	li r4, 0
/* 8038F298 0038AEF8  48 00 08 41 */	bl func_8038FAD8
/* 8038F29C 0038AEFC  38 7F 00 10 */	addi r3, r31, 0x10
/* 8038F2A0 0038AF00  38 80 00 00 */	li r4, 0
/* 8038F2A4 0038AF04  48 00 23 7D */	bl func_80391620
/* 8038F2A8 0038AF08  38 7F 00 14 */	addi r3, r31, 0x14
/* 8038F2AC 0038AF0C  38 80 00 00 */	li r4, 0
/* 8038F2B0 0038AF10  48 00 2D 81 */	bl func_80392030
/* 8038F2B4 0038AF14  38 7F 00 18 */	addi r3, r31, 0x18
/* 8038F2B8 0038AF18  38 80 00 00 */	li r4, 0
/* 8038F2BC 0038AF1C  48 00 36 11 */	bl func_803928CC
/* 8038F2C0 0038AF20  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8038F2C4 0038AF24  38 80 00 00 */	li r4, 0
/* 8038F2C8 0038AF28  48 00 30 2D */	bl func_803922F4
/* 8038F2CC 0038AF2C  38 7F 00 20 */	addi r3, r31, 0x20
/* 8038F2D0 0038AF30  38 80 00 00 */	li r4, 0
/* 8038F2D4 0038AF34  48 00 0E 4D */	bl func_80390120
/* 8038F2D8 0038AF38  38 7F 00 24 */	addi r3, r31, 0x24
/* 8038F2DC 0038AF3C  38 80 00 00 */	li r4, 0
/* 8038F2E0 0038AF40  48 00 11 15 */	bl func_803903F4
/* 8038F2E4 0038AF44  38 7F 00 28 */	addi r3, r31, 0x28
/* 8038F2E8 0038AF48  38 80 00 00 */	li r4, 0
/* 8038F2EC 0038AF4C  48 00 68 8D */	bl func_80395B78
/* 8038F2F0 0038AF50  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8038F2F4 0038AF54  38 80 00 00 */	li r4, 0
/* 8038F2F8 0038AF58  48 00 5C 95 */	bl func_80394F8C
/* 8038F2FC 0038AF5C  38 7F 00 30 */	addi r3, r31, 0x30
/* 8038F300 0038AF60  38 80 00 00 */	li r4, 0
/* 8038F304 0038AF64  48 00 65 19 */	bl func_8039581C
/* 8038F308 0038AF68  38 7F 00 34 */	addi r3, r31, 0x34
/* 8038F30C 0038AF6C  38 80 00 00 */	li r4, 0
/* 8038F310 0038AF70  48 00 16 B1 */	bl func_803909C0
/* 8038F314 0038AF74  38 7F 00 38 */	addi r3, r31, 0x38
/* 8038F318 0038AF78  38 80 00 00 */	li r4, 0
/* 8038F31C 0038AF7C  48 00 6E 1D */	bl func_80396138
/* 8038F320 0038AF80  38 7F 00 3C */	addi r3, r31, 0x3c
/* 8038F324 0038AF84  38 80 00 00 */	li r4, 0
/* 8038F328 0038AF88  48 00 20 C1 */	bl func_803913E8
/* 8038F32C 0038AF8C  38 7F 00 40 */	addi r3, r31, 0x40
/* 8038F330 0038AF90  38 80 00 00 */	li r4, 0
/* 8038F334 0038AF94  48 00 05 6D */	bl func_8038F8A0
/* 8038F338 0038AF98  38 7F 00 44 */	addi r3, r31, 0x44
/* 8038F33C 0038AF9C  38 80 00 00 */	li r4, 0
/* 8038F340 0038AFA0  48 00 70 F1 */	bl func_80396430
/* 8038F344 0038AFA4  38 7F 00 48 */	addi r3, r31, 0x48
/* 8038F348 0038AFA8  38 80 00 00 */	li r4, 0
/* 8038F34C 0038AFAC  48 00 32 69 */	bl func_803925B4
/* 8038F350 0038AFB0  38 7F 00 4C */	addi r3, r31, 0x4c
/* 8038F354 0038AFB4  38 80 00 00 */	li r4, 0
/* 8038F358 0038AFB8  48 00 74 69 */	bl func_803967C0
/* 8038F35C 0038AFBC  38 7F 00 50 */	addi r3, r31, 0x50
/* 8038F360 0038AFC0  38 80 00 00 */	li r4, 0
/* 8038F364 0038AFC4  48 00 77 31 */	bl func_80396A94
/* 8038F368 0038AFC8  38 7F 00 54 */	addi r3, r31, 0x54
/* 8038F36C 0038AFCC  38 80 00 00 */	li r4, 0
/* 8038F370 0038AFD0  48 00 7B 31 */	bl func_80396EA0
/* 8038F374 0038AFD4  38 7F 00 58 */	addi r3, r31, 0x58
/* 8038F378 0038AFD8  38 80 00 00 */	li r4, 0
/* 8038F37C 0038AFDC  48 00 7F CD */	bl func_80397348
/* 8038F380 0038AFE0  38 7F 00 5C */	addi r3, r31, 0x5c
/* 8038F384 0038AFE4  38 80 00 00 */	li r4, 0
/* 8038F388 0038AFE8  48 00 82 E9 */	bl func_80397670
/* 8038F38C 0038AFEC  38 7F 00 60 */	addi r3, r31, 0x60
/* 8038F390 0038AFF0  38 80 00 00 */	li r4, 0
/* 8038F394 0038AFF4  48 00 88 79 */	bl func_80397C0C
/* 8038F398 0038AFF8  38 7F 00 64 */	addi r3, r31, 0x64
/* 8038F39C 0038AFFC  38 80 00 00 */	li r4, 0
/* 8038F3A0 0038B000  48 00 8F D5 */	bl func_80398374
/* 8038F3A4 0038B004  38 7F 00 68 */	addi r3, r31, 0x68
/* 8038F3A8 0038B008  38 80 00 00 */	li r4, 0
/* 8038F3AC 0038B00C  48 00 93 05 */	bl func_803986B0
/* 8038F3B0 0038B010  38 7F 00 6C */	addi r3, r31, 0x6c
/* 8038F3B4 0038B014  38 80 00 00 */	li r4, 0
/* 8038F3B8 0038B018  48 00 95 E9 */	bl func_803989A0
/* 8038F3BC 0038B01C  38 7F 00 70 */	addi r3, r31, 0x70
/* 8038F3C0 0038B020  38 80 00 00 */	li r4, 0
/* 8038F3C4 0038B024  48 00 99 35 */	bl func_80398CF8
/* 8038F3C8 0038B028  38 7F 00 74 */	addi r3, r31, 0x74
/* 8038F3CC 0038B02C  38 80 00 00 */	li r4, 0
/* 8038F3D0 0038B030  48 00 9E E9 */	bl func_803992B8
/* 8038F3D4 0038B034  38 7F 00 78 */	addi r3, r31, 0x78
/* 8038F3D8 0038B038  38 80 00 00 */	li r4, 0
/* 8038F3DC 0038B03C  48 00 A1 D1 */	bl func_803995AC
/* 8038F3E0 0038B040  38 7F 00 7C */	addi r3, r31, 0x7c
/* 8038F3E4 0038B044  38 80 00 00 */	li r4, 0
/* 8038F3E8 0038B048  48 00 A6 05 */	bl func_803999EC
/* 8038F3EC 0038B04C  38 7F 00 80 */	addi r3, r31, 0x80
/* 8038F3F0 0038B050  38 80 00 00 */	li r4, 0
/* 8038F3F4 0038B054  48 00 A8 B5 */	bl func_80399CA8
/* 8038F3F8 0038B058  3C 80 80 39 */	lis r4, lbl_8038F424@ha
/* 8038F3FC 0038B05C  3C A0 80 64 */	lis r5, lbl_8063CE28@ha
/* 8038F400 0038B060  7F E3 FB 78 */	mr r3, r31
/* 8038F404 0038B064  38 84 F4 24 */	addi r4, r4, lbl_8038F424@l
/* 8038F408 0038B068  38 A5 CE 28 */	addi r5, r5, lbl_8063CE28@l
/* 8038F40C 0038B06C  4B E3 78 3D */	bl __register_global_object_tmp
/* 8038F410 0038B070  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038F414 0038B074  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038F418 0038B078  7C 08 03 A6 */	mtlr r0
/* 8038F41C 0038B07C  38 21 00 10 */	addi r1, r1, 0x10
/* 8038F420 0038B080  4E 80 00 20 */	blr