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
|
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_8088E20
sub_8088E20: @ 8088E20
adds r1, r0, 0
lsls r1, 16
lsrs r1, 16
lsls r0, r1, 3
adds r0, r1
lsls r0, 2
ldr r1, _08088E34 @ =gUnknown_844E850
adds r0, r1
bx lr
.align 2, 0
_08088E34: .4byte gUnknown_844E850
thumb_func_end sub_8088E20
thumb_func_start sub_8088E38
sub_8088E38: @ 8088E38
push {lr}
lsls r0, 16
lsrs r2, r0, 16
lsls r1, 24
lsrs r1, 24
cmp r1, 0
beq _08088E4E
cmp r1, 0x1
beq _08088E60
movs r0, 0x1
b _08088E6C
_08088E4E:
ldr r0, _08088E5C @ =gUnknown_844E850
lsls r1, r2, 3
adds r1, r2
lsls r1, 2
adds r1, r0
ldrh r0, [r1, 0xC]
b _08088E6C
.align 2, 0
_08088E5C: .4byte gUnknown_844E850
_08088E60:
ldr r0, _08088E70 @ =gUnknown_844E850
lsls r1, r2, 3
adds r1, r2
lsls r1, 2
adds r1, r0
ldrh r0, [r1, 0xE]
_08088E6C:
pop {r1}
bx r1
.align 2, 0
_08088E70: .4byte gUnknown_844E850
thumb_func_end sub_8088E38
thumb_func_start GetSetPokedexFlag
GetSetPokedexFlag: @ 8088E74
push {lr}
lsls r0, 16
lsrs r0, 16
lsls r1, 24
lsrs r1, 24
movs r2, 0
bl sub_8104AB0
lsls r0, 24
asrs r0, 24
pop {r1}
bx r1
thumb_func_end GetSetPokedexFlag
thumb_func_start pokedex_count
pokedex_count: @ 8088E8C
push {r4-r7,lr}
lsls r0, 24
lsrs r6, r0, 24
movs r5, 0
movs r0, 0
ldr r7, _08088EA4 @ =0x00000181
_08088E98:
cmp r6, 0
beq _08088EA8
cmp r6, 0x1
beq _08088EB2
adds r4, r0, 0x1
b _08088ECA
.align 2, 0
_08088EA4: .4byte 0x00000181
_08088EA8:
adds r4, r0, 0x1
lsls r0, r4, 16
lsrs r0, 16
movs r1, 0
b _08088EBA
_08088EB2:
adds r4, r0, 0x1
lsls r0, r4, 16
lsrs r0, 16
movs r1, 0x1
_08088EBA:
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _08088ECA
adds r0, r5, 0x1
lsls r0, 16
lsrs r5, r0, 16
_08088ECA:
lsls r0, r4, 16
lsrs r0, 16
cmp r0, r7
bls _08088E98
adds r0, r5, 0
pop {r4-r7}
pop {r1}
bx r1
thumb_func_end pokedex_count
thumb_func_start sub_8088EDC
sub_8088EDC: @ 8088EDC
push {r4-r6,lr}
lsls r0, 24
lsrs r6, r0, 24
movs r5, 0
movs r0, 0
_08088EE6:
cmp r6, 0
beq _08088EF2
cmp r6, 0x1
beq _08088EFC
adds r4, r0, 0x1
b _08088F14
_08088EF2:
adds r4, r0, 0x1
lsls r0, r4, 16
lsrs r0, 16
movs r1, 0
b _08088F04
_08088EFC:
adds r4, r0, 0x1
lsls r0, r4, 16
lsrs r0, 16
movs r1, 0x1
_08088F04:
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _08088F14
adds r0, r5, 0x1
lsls r0, 16
lsrs r5, r0, 16
_08088F14:
lsls r0, r4, 16
lsrs r0, 16
cmp r0, 0x96
bls _08088EE6
adds r0, r5, 0
pop {r4-r6}
pop {r1}
bx r1
thumb_func_end sub_8088EDC
thumb_func_start sub_8088F24
sub_8088F24: @ 8088F24
push {r4,lr}
movs r0, 0
_08088F28:
adds r0, 0x1
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
bl HoennToNationalOrder
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _08088F48
movs r0, 0
b _08088F50
_08088F48:
adds r0, r4, 0
cmp r0, 0xC7
bls _08088F28
movs r0, 0x1
_08088F50:
pop {r4}
pop {r1}
bx r1
thumb_func_end sub_8088F24
thumb_func_start sub_8088F58
sub_8088F58: @ 8088F58
push {r4,lr}
movs r0, 0
_08088F5C:
adds r0, 0x1
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
movs r1, 0x1
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _08088F74
movs r0, 0
b _08088F7C
_08088F74:
adds r0, r4, 0
cmp r0, 0x95
bls _08088F5C
movs r0, 0x1
_08088F7C:
pop {r4}
pop {r1}
bx r1
thumb_func_end sub_8088F58
thumb_func_start sub_8088F84
sub_8088F84: @ 8088F84
push {r4,r5,lr}
movs r0, 0
_08088F88:
adds r0, 0x1
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
movs r1, 0x1
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _08088FD6
adds r0, r4, 0
cmp r0, 0x95
bls _08088F88
movs r0, 0x97
_08088FA4:
adds r0, 0x1
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
movs r1, 0x1
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
beq _08088FD6
adds r0, r4, 0
cmp r0, 0xF7
bls _08088FA4
movs r0, 0xFB
ldr r5, _08088FDC @ =0x0000017f
_08088FC2:
adds r0, 0x1
lsls r0, 16
lsrs r4, r0, 16
adds r0, r4, 0
movs r1, 0x1
bl GetSetPokedexFlag
lsls r0, 24
cmp r0, 0
bne _08088FE0
_08088FD6:
movs r0, 0
b _08088FE8
.align 2, 0
_08088FDC: .4byte 0x0000017f
_08088FE0:
adds r0, r4, 0
cmp r0, r5
bls _08088FC2
movs r0, 0x1
_08088FE8:
pop {r4,r5}
pop {r1}
bx r1
thumb_func_end sub_8088F84
.align 2, 0 @ Don't pad with nop.
|