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
|
.include "asm/macros.inc"
.include "global.inc"
.section .rodata
.global UNK_020F8074
UNK_020F8074: ; 0x020F8074
.byte 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x01, 0x01, 0x00, 0x01, 0x02, 0x02
.byte 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02
.byte 0x02, 0x02, 0x02, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x02, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02
.byte 0x02, 0x02, 0x00, 0x02, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02
.byte 0x02, 0x01, 0x02, 0x02, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02, 0x01, 0x02, 0x02, 0x01
.byte 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x02, 0x01, 0x00, 0x02
.byte 0x02, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02
.byte 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x01, 0x02
.byte 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x01
.byte 0x01, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x02, 0x02
.byte 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00
.byte 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x02, 0x02, 0x01, 0x01
.byte 0x01, 0x01, 0x01, 0x00, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x00, 0x02, 0x00, 0x02, 0x01, 0x01, 0x01
.byte 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x00, 0x01, 0x01, 0x02
.byte 0x02, 0x01, 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x02, 0x01, 0x02, 0x00, 0x00, 0x02, 0x02, 0x02
.byte 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x02, 0x00, 0x00
.byte 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00
.byte 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00
.byte 0x00, 0x01, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x02, 0x02, 0x00
.byte 0x01, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x02
.byte 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x01, 0x00
.byte 0x02, 0x00, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02
.byte 0x02, 0x01, 0x01, 0x00, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01
.byte 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x01, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x02, 0x02, 0x00
.byte 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x02
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01
.byte 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
.text
thumb_func_start FUN_0206B688
FUN_0206B688: ; 0x0206B688
push {r3-r7, lr}
add r5, r0, #0x0
bl AcquireBoxMonLock
add r7, r0, #0x0
add r0, r5, #0x0
mov r1, #0x5
mov r2, #0x0
bl GetBoxMonData
add r4, r0, #0x0
add r0, r5, #0x0
mov r1, #0x4c
mov r2, #0x0
bl GetBoxMonData
add r6, r0, #0x0
add r0, r5, #0x0
bl FUN_0206B754
add r2, r0, #0x0
add r0, r4, #0x0
add r1, r6, #0x0
bl FUN_0206B6D4
add r4, r0, #0x0
add r0, r5, #0x0
add r1, r7, #0x0
bl ReleaseBoxMonLock
add r0, r4, #0x0
pop {r3-r7, pc}
thumb_func_start FUN_0206B6C8
FUN_0206B6C8: ; 0x0206B6C8
push {r3, lr}
bl FUN_020690E4
bl FUN_0206B688
pop {r3, pc}
thumb_func_start FUN_0206B6D4
FUN_0206B6D4: ; 0x0206B6D4
cmp r1, #0x1
bne _0206B6E8
ldr r1, _0206B748 ; =0x000001EA
cmp r0, r1
bne _0206B6E2
add r1, #0xc
b _0206B6E4
_0206B6E2:
add r1, #0xb
_0206B6E4:
add r0, r1, #0x0
bx lr
_0206B6E8:
cmp r2, #0x0
beq _0206B73A
ldr r3, _0206B74C ; =0x00000182
cmp r0, r3
bne _0206B6F8
add r3, #0x74
add r0, r2, r3
bx lr
_0206B6F8:
cmp r0, #0xc9
bne _0206B702
add r3, #0x78
add r0, r2, r3
bx lr
_0206B702:
add r1, r3, #0x0
add r1, #0x1a
cmp r0, r1
bne _0206B710
add r3, #0x93
add r0, r2, r3
bx lr
_0206B710:
add r1, r3, #0x0
add r1, #0x1b
cmp r0, r1
bne _0206B71E
add r3, #0x95
add r0, r2, r3
bx lr
_0206B71E:
add r1, r3, #0x0
add r1, #0x24
cmp r0, r1
bne _0206B72C
add r3, #0x97
add r0, r2, r3
bx lr
_0206B72C:
add r1, r3, #0x0
add r1, #0x25
cmp r0, r1
bne _0206B73A
add r3, #0x98
add r0, r2, r3
bx lr
_0206B73A:
ldr r1, _0206B750 ; =0x000001ED
cmp r0, r1
bls _0206B742
mov r0, #0x0
_0206B742:
add r0, r0, #0x7
bx lr
nop
_0206B748: .word 0x000001EA
_0206B74C: .word 0x00000182
_0206B750: .word 0x000001ED
thumb_func_start FUN_0206B754
FUN_0206B754: ; 0x0206B754
push {r4, lr}
mov r1, #0xad
mov r2, #0x0
add r4, r0, #0x0
bl GetBoxMonData
ldr r2, _0206B7B8 ; =0x0000019D
cmp r0, r2
bhi _0206B784
sub r1, r2, #0x1
cmp r0, r1
blo _0206B774
beq _0206B7A4
cmp r0, r2
beq _0206B7A4
b _0206B7B4
_0206B774:
cmp r0, #0xc9
bhi _0206B77C
beq _0206B79C
b _0206B7B4
_0206B77C:
sub r2, #0x1b
cmp r0, r2
beq _0206B7A4
b _0206B7B4
_0206B784:
add r1, r2, #0x0
add r1, #0x9
cmp r0, r1
bhi _0206B794
add r2, #0x9
cmp r0, r2
beq _0206B7A4
b _0206B7B4
_0206B794:
add r2, #0xa
cmp r0, r2
beq _0206B7A4
b _0206B7B4
_0206B79C:
add r0, r4, #0x0
bl FUN_020690D4
pop {r4, pc}
_0206B7A4:
add r0, r4, #0x0
mov r1, #0x70
mov r2, #0x0
bl GetBoxMonData
lsl r0, r0, #0x10
lsr r0, r0, #0x10
pop {r4, pc}
_0206B7B4:
mov r0, #0x0
pop {r4, pc}
.balign 4
_0206B7B8: .word 0x0000019D
thumb_func_start FUN_0206B7BC
FUN_0206B7BC: ; 0x0206B7BC
cmp r2, #0x1
bne _0206B7CE
ldr r1, _0206B830 ; =0x000001EA
cmp r0, r1
bne _0206B7CA
add r0, r1, #0x5
b _0206B82A
_0206B7CA:
add r0, r1, #0x4
b _0206B82A
_0206B7CE:
ldr r3, _0206B834 ; =0x000001ED
cmp r0, r3
bls _0206B7D8
mov r0, #0x0
b _0206B82A
_0206B7D8:
cmp r1, #0x0
beq _0206B82A
add r2, r3, #0x0
sub r2, #0x6b
cmp r0, r2
bne _0206B7EA
add r0, r3, #0x2
add r0, r1, r0
b _0206B82A
_0206B7EA:
cmp r0, #0xc9
bne _0206B7F4
add r0, r3, #0x5
add r0, r1, r0
b _0206B82A
_0206B7F4:
add r2, r3, #0x0
sub r2, #0x51
cmp r0, r2
bne _0206B802
add r3, #0x21
add r0, r1, r3
b _0206B82A
_0206B802:
add r2, r3, #0x0
sub r2, #0x50
cmp r0, r2
bne _0206B810
add r3, #0x23
add r0, r1, r3
b _0206B82A
_0206B810:
add r2, r3, #0x0
sub r2, #0x47
cmp r0, r2
bne _0206B81E
add r3, #0x25
add r0, r1, r3
b _0206B82A
_0206B81E:
add r2, r3, #0x0
sub r2, #0x46
cmp r0, r2
bne _0206B82A
add r3, #0x26
add r0, r1, r3
_0206B82A:
ldr r1, _0206B838 ; =UNK_020F8074
ldrb r0, [r1, r0]
bx lr
.balign 4
_0206B830: .word 0x000001EA
_0206B834: .word 0x000001ED
_0206B838: .word UNK_020F8074
thumb_func_start FUN_0206B83C
FUN_0206B83C: ; 0x0206B83C
push {r3-r7, lr}
add r5, r0, #0x0
bl AcquireBoxMonLock
add r4, r0, #0x0
add r0, r5, #0x0
bl FUN_0206B754
add r6, r0, #0x0
add r0, r5, #0x0
mov r1, #0x5
mov r2, #0x0
bl GetBoxMonData
add r7, r0, #0x0
add r0, r5, #0x0
mov r1, #0x4c
mov r2, #0x0
bl GetBoxMonData
str r0, [sp, #0x0]
add r0, r5, #0x0
add r1, r4, #0x0
bl ReleaseBoxMonLock
ldr r2, [sp, #0x0]
add r0, r7, #0x0
add r1, r6, #0x0
bl FUN_0206B7BC
pop {r3-r7, pc}
.balign 4
thumb_func_start FUN_0206B87C
FUN_0206B87C: ; 0x0206B87C
push {r3, lr}
bl FUN_020690E4
bl FUN_0206B83C
pop {r3, pc}
thumb_func_start FUN_0206B888
FUN_0206B888: ; 0x0206B888
mov r0, #0x0
bx lr
thumb_func_start FUN_0206B88C
FUN_0206B88C: ; 0x0206B88C
mov r0, #0x2
bx lr
thumb_func_start FUN_0206B890
FUN_0206B890: ; 0x0206B890
mov r0, #0x4
bx lr
thumb_func_start FUN_0206B894
FUN_0206B894: ; 0x0206B894
mov r0, #0x6
bx lr
thumb_func_start FUN_0206B898
FUN_0206B898: ; 0x0206B898
mov r0, #0x1
bx lr
thumb_func_start FUN_0206B89C
FUN_0206B89C: ; 0x0206B89C
mov r0, #0x3
bx lr
thumb_func_start FUN_0206B8A0
FUN_0206B8A0: ; 0x0206B8A0
mov r0, #0x5
bx lr
|