mirror of
https://github.com/pret/pokepinballrs.git
synced 2026-03-21 17:24:13 -05:00
7284 lines
134 KiB
ArmAsm
Executable File
7284 lines
134 KiB
ArmAsm
Executable File
.include "asm/macros.inc"
|
|
|
|
.syntax unified
|
|
|
|
.text
|
|
|
|
thumb_func_start IntroMain
|
|
IntroMain: @ 0x0800927C
|
|
push {lr}
|
|
ldr r1, _08009294 @ =gUnknown_080792CC
|
|
ldr r0, _08009298 @ =gMain
|
|
ldrb r0, [r0, #3]
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r1
|
|
ldr r0, [r0]
|
|
bl _call_via_r0
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009294: .4byte gUnknown_080792CC
|
|
_08009298: .4byte gMain
|
|
|
|
thumb_func_start sub_929C
|
|
sub_929C: @ 0x0800929C
|
|
push {r4, lr}
|
|
bl sub_438
|
|
movs r3, #0x80
|
|
lsls r3, r3, #0x13
|
|
movs r0, #0x80
|
|
strh r0, [r3]
|
|
ldr r1, _08009318 @ =0x0400000A
|
|
movs r0, #5
|
|
strh r0, [r1]
|
|
ldrh r0, [r3]
|
|
movs r2, #0x80
|
|
lsls r2, r2, #2
|
|
adds r1, r2, #0
|
|
orrs r0, r1
|
|
strh r0, [r3]
|
|
ldr r1, _0800931C @ =0x040000D4
|
|
ldr r0, _08009320 @ =gUnknown_080798C0
|
|
str r0, [r1]
|
|
movs r0, #0xc0
|
|
lsls r0, r0, #0x13
|
|
str r0, [r1, #4]
|
|
ldr r2, _08009324 @ =0x80000400
|
|
str r2, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
ldr r0, _08009328 @ =gUnknown_0807A0C0
|
|
str r0, [r1]
|
|
ldr r0, _0800932C @ =0x06004000
|
|
str r0, [r1, #4]
|
|
str r2, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
ldr r0, _08009330 @ =gIntroCopyright_Pal
|
|
str r0, [r1]
|
|
movs r0, #0xa0
|
|
lsls r0, r0, #0x13
|
|
str r0, [r1, #4]
|
|
ldr r0, _08009334 @ =0x80000100
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
ldr r4, _08009338 @ =gMain
|
|
ldrh r0, [r3]
|
|
movs r2, #0
|
|
movs r1, #0
|
|
strh r0, [r4, #0x16]
|
|
ldr r0, _0800933C @ =0x0202BF10
|
|
strh r1, [r0]
|
|
ldr r0, _08009340 @ =0x0202C790
|
|
strb r2, [r0]
|
|
ldr r0, _08009344 @ =sub_93F8 + 1
|
|
bl sub_898
|
|
bl sub_CBC
|
|
bl sub_24C
|
|
ldrb r0, [r4, #3]
|
|
adds r0, #1
|
|
strb r0, [r4, #3]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009318: .4byte 0x0400000A
|
|
_0800931C: .4byte 0x040000D4
|
|
_08009320: .4byte gUnknown_080798C0
|
|
_08009324: .4byte 0x80000400
|
|
_08009328: .4byte gUnknown_0807A0C0
|
|
_0800932C: .4byte 0x06004000
|
|
_08009330: .4byte gIntroCopyright_Pal
|
|
_08009334: .4byte 0x80000100
|
|
_08009338: .4byte gMain
|
|
_0800933C: .4byte 0x0202BF10
|
|
_08009340: .4byte 0x0202C790
|
|
_08009344: .4byte sub_93F8 + 1
|
|
|
|
thumb_func_start sub_9348
|
|
sub_9348: @ 0x08009348
|
|
ldr r1, _08009368 @ =0x0202BF10
|
|
ldrh r0, [r1]
|
|
adds r0, #1
|
|
strh r0, [r1]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0x78
|
|
ble _08009364
|
|
movs r0, #0
|
|
strh r0, [r1]
|
|
ldr r1, _0800936C @ =gMain
|
|
ldrb r0, [r1, #3]
|
|
adds r0, #1
|
|
strb r0, [r1, #3]
|
|
_08009364:
|
|
bx lr
|
|
.align 2, 0
|
|
_08009368: .4byte 0x0202BF10
|
|
_0800936C: .4byte gMain
|
|
|
|
thumb_func_start sub_9370
|
|
sub_9370: @ 0x08009370
|
|
push {lr}
|
|
movs r0, #0
|
|
bl sub_FF74
|
|
bl sub_D10
|
|
ldr r1, _08009388 @ =gMain
|
|
ldrb r0, [r1, #3]
|
|
adds r0, #1
|
|
strb r0, [r1, #3]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009388: .4byte gMain
|
|
|
|
thumb_func_start sub_938C
|
|
sub_938C: @ 0x0800938C
|
|
push {lr}
|
|
ldr r1, _080093C0 @ =gUnknown_080792E0
|
|
ldr r0, _080093C4 @ =0x0202C790
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r1
|
|
ldr r0, [r0]
|
|
bl _call_via_r0
|
|
ldr r1, _080093C8 @ =0x0202BF10
|
|
ldrh r0, [r1]
|
|
adds r0, #1
|
|
strh r0, [r1]
|
|
ldr r2, _080093CC @ =gMain
|
|
ldrh r1, [r2, #0x18]
|
|
movs r0, #9
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _080093BA
|
|
movs r0, #4
|
|
strb r0, [r2, #3]
|
|
_080093BA:
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080093C0: .4byte gUnknown_080792E0
|
|
_080093C4: .4byte 0x0202C790
|
|
_080093C8: .4byte 0x0202BF10
|
|
_080093CC: .4byte gMain
|
|
|
|
thumb_func_start sub_93D0
|
|
sub_93D0: @ 0x080093D0
|
|
push {lr}
|
|
bl sub_2B4
|
|
bl m4aMPlayAllStop
|
|
bl sub_D10
|
|
bl sub_8BC
|
|
ldr r1, _080093F4 @ =gAutoDisplayTitlescreenMenu
|
|
movs r0, #0
|
|
strb r0, [r1]
|
|
movs r0, #1
|
|
bl SetMainGameState
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080093F4: .4byte gAutoDisplayTitlescreenMenu
|
|
|
|
thumb_func_start sub_93F8
|
|
sub_93F8: @ 0x080093F8
|
|
push {lr}
|
|
ldr r0, _08009480 @ =0x04000004
|
|
ldrh r1, [r0]
|
|
movs r0, #8
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _0800947C
|
|
bl m4aSoundMain
|
|
bl VBlankIntrWait
|
|
ldr r1, _08009484 @ =0x040000D4
|
|
ldr r0, _08009488 @ =gOamBuffer
|
|
str r0, [r1]
|
|
movs r0, #0xe0
|
|
lsls r0, r0, #0x13
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800948C @ =0x84000100
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
movs r2, #0x80
|
|
lsls r2, r2, #0x13
|
|
ldr r1, _08009490 @ =gMain
|
|
ldrh r0, [r1, #0x16]
|
|
strh r0, [r2]
|
|
adds r2, #0x10
|
|
movs r3, #0xba
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
ldrh r0, [r0]
|
|
strh r0, [r2]
|
|
adds r2, #2
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
ldrh r0, [r0]
|
|
strh r0, [r2]
|
|
adds r2, #2
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
ldrh r0, [r0]
|
|
strh r0, [r2]
|
|
adds r2, #2
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
ldrh r0, [r0]
|
|
strh r0, [r2]
|
|
adds r2, #2
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
ldrh r0, [r0]
|
|
strh r0, [r2]
|
|
adds r2, #2
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
ldrh r0, [r0]
|
|
strh r0, [r2]
|
|
adds r2, #2
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
ldrh r0, [r0]
|
|
strh r0, [r2]
|
|
adds r2, #2
|
|
ldr r0, _08009494 @ =0x000002F6
|
|
adds r1, r1, r0
|
|
ldrh r0, [r1]
|
|
strh r0, [r2]
|
|
_0800947C:
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009480: .4byte 0x04000004
|
|
_08009484: .4byte 0x040000D4
|
|
_08009488: .4byte gOamBuffer
|
|
_0800948C: .4byte 0x84000100
|
|
_08009490: .4byte gMain
|
|
_08009494: .4byte 0x000002F6
|
|
|
|
thumb_func_start sub_9498
|
|
sub_9498: @ 0x08009498
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sl
|
|
mov r6, sb
|
|
mov r5, r8
|
|
push {r5, r6, r7}
|
|
bl sub_490
|
|
bl sub_518
|
|
bl sub_578
|
|
movs r2, #0x80
|
|
lsls r2, r2, #0x13
|
|
movs r1, #0x80
|
|
lsls r1, r1, #5
|
|
adds r0, r1, #0
|
|
strh r0, [r2]
|
|
ldr r1, _0800961C @ =0x04000008
|
|
movs r3, #0xd0
|
|
lsls r3, r3, #5
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r7, #0x80
|
|
lsls r7, r7, #1
|
|
adds r1, r7, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _08009620 @ =0x0400000A
|
|
ldr r3, _08009624 @ =0x00005B01
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r7, #0x80
|
|
lsls r7, r7, #2
|
|
adds r1, r7, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _08009628 @ =0x0400000C
|
|
ldr r3, _0800962C @ =0x00005D02
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r7, #0x80
|
|
lsls r7, r7, #3
|
|
adds r1, r7, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _08009630 @ =0x0400000E
|
|
ldr r3, _08009634 @ =0x00001F03
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r7, #0x80
|
|
lsls r7, r7, #4
|
|
adds r1, r7, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r4, _08009638 @ =0x040000D4
|
|
ldr r0, _0800963C @ =gUnknown_080B9CC0
|
|
str r0, [r4]
|
|
ldr r0, _08009640 @ =0x0600D000
|
|
str r0, [r4, #4]
|
|
ldr r2, _08009644 @ =0x80000400
|
|
str r2, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
ldr r0, _08009648 @ =gUnknown_080BC4C0
|
|
str r0, [r4]
|
|
ldr r0, _0800964C @ =0x0600D800
|
|
str r0, [r4, #4]
|
|
ldr r1, _08009650 @ =0x80000800
|
|
str r1, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
ldr r0, _08009654 @ =gUnknown_080BB4C0
|
|
str r0, [r4]
|
|
ldr r0, _08009658 @ =0x0600E800
|
|
str r0, [r4, #4]
|
|
str r1, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
ldr r0, _0800965C @ =gUnknown_080B3CA0
|
|
str r0, [r4]
|
|
ldr r0, _08009660 @ =0x0600F800
|
|
str r0, [r4, #4]
|
|
str r2, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
ldr r0, _08009664 @ =gUnknown_080B44A0
|
|
str r0, [r4]
|
|
movs r0, #0xc0
|
|
lsls r0, r0, #0x13
|
|
str r0, [r4, #4]
|
|
ldr r0, _08009668 @ =0x80002C00
|
|
str r0, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
ldr r0, _0800966C @ =gUnknown_080BD4C0
|
|
str r0, [r4]
|
|
ldr r0, _08009670 @ =0x0201C1C0
|
|
str r0, [r4, #4]
|
|
ldr r0, _08009674 @ =0x80003400
|
|
str r0, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
ldr r6, _08009678 @ =gIntroScene1Sprites_Pals
|
|
movs r0, #0xa0
|
|
lsls r0, r0, #0x13
|
|
mov sl, r0
|
|
movs r2, #0x80
|
|
lsls r2, r2, #2
|
|
adds r0, r6, #0
|
|
mov r1, sl
|
|
movs r3, #0x20
|
|
bl sub_10170
|
|
ldr r0, _0800967C @ =gIntroScene1Sprites_Gfx
|
|
str r0, [r4]
|
|
ldr r0, _08009680 @ =0x06010000
|
|
str r0, [r4, #4]
|
|
ldr r0, _08009684 @ =0x80004000
|
|
str r0, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
str r6, [r4]
|
|
ldr r5, _08009688 @ =0x05000200
|
|
str r5, [r4, #4]
|
|
ldr r1, _0800968C @ =0x80000100
|
|
mov r8, r1
|
|
str r1, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
bl sub_96A8
|
|
ldr r1, _08009690 @ =gMain
|
|
ldr r2, _08009694 @ =0x0202ADA0
|
|
ldrh r3, [r2]
|
|
movs r7, #0xba
|
|
lsls r7, r7, #2
|
|
adds r0, r1, r7
|
|
movs r7, #0
|
|
mov sb, r7
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #2]
|
|
ldr r7, _08009698 @ =0x000002EA
|
|
adds r0, r1, r7
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x24]
|
|
adds r7, #2
|
|
adds r0, r1, r7
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x26]
|
|
adds r7, #2
|
|
adds r0, r1, r7
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0xc]
|
|
adds r7, #2
|
|
adds r0, r1, r7
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0xe]
|
|
adds r7, #2
|
|
adds r0, r1, r7
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x18]
|
|
adds r7, #2
|
|
adds r0, r1, r7
|
|
strh r3, [r0]
|
|
ldrh r0, [r2, #0x1a]
|
|
ldr r2, _0800969C @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
bl sub_CBC
|
|
mov r0, sl
|
|
adds r1, r6, #0
|
|
movs r2, #0
|
|
bl sub_FEB8
|
|
str r6, [r4]
|
|
str r5, [r4, #4]
|
|
mov r3, r8
|
|
str r3, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
mov r7, sb
|
|
str r7, [r4]
|
|
str r5, [r4, #4]
|
|
ldr r0, _080096A0 @ =0x80000010
|
|
str r0, [r4, #8]
|
|
ldr r0, [r4, #8]
|
|
ldr r1, _080096A4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r3, r4, r5}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
mov sl, r5
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800961C: .4byte 0x04000008
|
|
_08009620: .4byte 0x0400000A
|
|
_08009624: .4byte 0x00005B01
|
|
_08009628: .4byte 0x0400000C
|
|
_0800962C: .4byte 0x00005D02
|
|
_08009630: .4byte 0x0400000E
|
|
_08009634: .4byte 0x00001F03
|
|
_08009638: .4byte 0x040000D4
|
|
_0800963C: .4byte gUnknown_080B9CC0
|
|
_08009640: .4byte 0x0600D000
|
|
_08009644: .4byte 0x80000400
|
|
_08009648: .4byte gUnknown_080BC4C0
|
|
_0800964C: .4byte 0x0600D800
|
|
_08009650: .4byte 0x80000800
|
|
_08009654: .4byte gUnknown_080BB4C0
|
|
_08009658: .4byte 0x0600E800
|
|
_0800965C: .4byte gUnknown_080B3CA0
|
|
_08009660: .4byte 0x0600F800
|
|
_08009664: .4byte gUnknown_080B44A0
|
|
_08009668: .4byte 0x80002C00
|
|
_0800966C: .4byte gUnknown_080BD4C0
|
|
_08009670: .4byte 0x0201C1C0
|
|
_08009674: .4byte 0x80003400
|
|
_08009678: .4byte gIntroScene1Sprites_Pals
|
|
_0800967C: .4byte gIntroScene1Sprites_Gfx
|
|
_08009680: .4byte 0x06010000
|
|
_08009684: .4byte 0x80004000
|
|
_08009688: .4byte 0x05000200
|
|
_0800968C: .4byte 0x80000100
|
|
_08009690: .4byte gMain
|
|
_08009694: .4byte 0x0202ADA0
|
|
_08009698: .4byte 0x000002EA
|
|
_0800969C: .4byte 0x000002F6
|
|
_080096A0: .4byte 0x80000010
|
|
_080096A4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_96A8
|
|
sub_96A8: @ 0x080096A8
|
|
push {r4, r5, r6, lr}
|
|
mov r6, r8
|
|
push {r6}
|
|
ldr r0, _0800975C @ =0x0201A450
|
|
mov ip, r0
|
|
movs r5, #0
|
|
movs r2, #0
|
|
movs r1, #0x78
|
|
mov r8, r1
|
|
mov r1, r8
|
|
strh r1, [r0, #0x10]
|
|
movs r6, #0x50
|
|
strh r6, [r0, #0x12]
|
|
strh r2, [r0, #0x18]
|
|
movs r4, #1
|
|
strb r4, [r0, #0x1c]
|
|
movs r0, #0x9c
|
|
mov r1, ip
|
|
strh r0, [r1, #0x30]
|
|
movs r0, #0x92
|
|
strh r0, [r1, #0x32]
|
|
mov r0, ip
|
|
adds r0, #0x3c
|
|
strb r5, [r0]
|
|
strh r2, [r1, #0x3a]
|
|
movs r0, #0x9d
|
|
strh r0, [r1, #0x20]
|
|
movs r0, #0x93
|
|
strh r0, [r1, #0x22]
|
|
mov r0, ip
|
|
adds r0, #0x2c
|
|
strb r5, [r0]
|
|
adds r0, #0x14
|
|
movs r1, #0x80
|
|
strh r1, [r0]
|
|
adds r0, #2
|
|
strh r1, [r0]
|
|
adds r0, #0xa
|
|
strb r4, [r0]
|
|
ldr r0, _08009760 @ =0x0202ADA0
|
|
ldr r1, _08009764 @ =0x0000FFA8
|
|
strh r1, [r0]
|
|
adds r1, #0x22
|
|
strh r1, [r0, #2]
|
|
strh r2, [r0, #8]
|
|
strh r2, [r0, #0xa]
|
|
movs r3, #0x80
|
|
lsls r3, r3, #1
|
|
strh r3, [r0, #0xc]
|
|
strh r2, [r0, #0xe]
|
|
strh r2, [r0, #0x14]
|
|
movs r1, #0xfb
|
|
strh r1, [r0, #0x24]
|
|
strh r2, [r0, #0x26]
|
|
strh r2, [r0, #0x2c]
|
|
strh r2, [r0, #0x18]
|
|
strh r2, [r0, #0x1a]
|
|
mov r1, r8
|
|
mov r0, ip
|
|
strh r1, [r0]
|
|
strh r6, [r0, #2]
|
|
strh r2, [r0, #8]
|
|
strh r2, [r0, #0xa]
|
|
strb r4, [r0, #0xc]
|
|
ldr r0, _08009768 @ =0x0201C1B8
|
|
strb r5, [r0]
|
|
ldr r1, _0800976C @ =0x0202ADD4
|
|
movs r0, #0x10
|
|
strb r0, [r1]
|
|
ldr r0, _08009770 @ =0x0202C594
|
|
strh r2, [r0]
|
|
ldr r0, _08009774 @ =0x02019C30
|
|
str r3, [r0]
|
|
ldr r0, _08009778 @ =0x0201C188
|
|
str r3, [r0]
|
|
ldr r0, _0800977C @ =0x0202BF10
|
|
strh r2, [r0]
|
|
ldr r0, _08009780 @ =0x0202A578
|
|
strh r2, [r0]
|
|
ldr r1, _08009784 @ =0x0202BEF0
|
|
movs r0, #0x20
|
|
str r0, [r1]
|
|
ldr r1, _08009788 @ =0x0202C5A8
|
|
movs r0, #8
|
|
strb r0, [r1]
|
|
pop {r3}
|
|
mov r8, r3
|
|
pop {r4, r5, r6}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800975C: .4byte 0x0201A450
|
|
_08009760: .4byte 0x0202ADA0
|
|
_08009764: .4byte 0x0000FFA8
|
|
_08009768: .4byte 0x0201C1B8
|
|
_0800976C: .4byte 0x0202ADD4
|
|
_08009770: .4byte 0x0202C594
|
|
_08009774: .4byte 0x02019C30
|
|
_08009778: .4byte 0x0201C188
|
|
_0800977C: .4byte 0x0202BF10
|
|
_08009780: .4byte 0x0202A578
|
|
_08009784: .4byte 0x0202BEF0
|
|
_08009788: .4byte 0x0202C5A8
|
|
|
|
thumb_func_start sub_978C
|
|
sub_978C: @ 0x0800978C
|
|
push {r4, r5, r6, lr}
|
|
bl sub_9CB8
|
|
ldr r1, _080097C0 @ =0x0201A450
|
|
ldrh r2, [r1, #8]
|
|
movs r3, #8
|
|
ldrsh r0, [r1, r3]
|
|
cmp r0, #0x24
|
|
bne _080097CC
|
|
ldrh r0, [r1, #0xa]
|
|
adds r0, #1
|
|
movs r2, #0
|
|
strh r0, [r1, #0xa]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0x1b
|
|
ble _0800981A
|
|
strh r2, [r1, #0xa]
|
|
ldr r0, _080097C4 @ =0x0202A578
|
|
strh r2, [r0]
|
|
ldr r1, _080097C8 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
b _0800981A
|
|
.align 2, 0
|
|
_080097C0: .4byte 0x0201A450
|
|
_080097C4: .4byte 0x0202A578
|
|
_080097C8: .4byte 0x0202C790
|
|
_080097CC:
|
|
ldrh r0, [r1, #0xa]
|
|
adds r0, #1
|
|
strh r0, [r1, #0xa]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #1
|
|
ble _080097E2
|
|
movs r0, #0
|
|
strh r0, [r1, #0xa]
|
|
adds r0, r2, #1
|
|
strh r0, [r1, #8]
|
|
_080097E2:
|
|
ldr r3, _08009820 @ =0x0202BF10
|
|
ldr r5, _08009824 @ =gUnknown_086A77A8
|
|
ldr r4, _08009828 @ =0x0202A578
|
|
movs r6, #0
|
|
ldrsh r2, [r4, r6]
|
|
lsls r2, r2, #2
|
|
ldr r0, _0800982C @ =0x0202C5A8
|
|
movs r1, #0
|
|
ldrsb r1, [r0, r1]
|
|
lsls r0, r1, #2
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #3
|
|
adds r2, r2, r0
|
|
adds r0, r5, #2
|
|
adds r0, r2, r0
|
|
movs r6, #0
|
|
ldrsh r1, [r3, r6]
|
|
movs r3, #0
|
|
ldrsh r0, [r0, r3]
|
|
cmp r1, r0
|
|
blt _0800981A
|
|
adds r0, r2, r5
|
|
ldrh r0, [r0]
|
|
bl m4aSongNumStart
|
|
ldrh r0, [r4]
|
|
adds r0, #1
|
|
strh r0, [r4]
|
|
_0800981A:
|
|
pop {r4, r5, r6}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009820: .4byte 0x0202BF10
|
|
_08009824: .4byte gUnknown_086A77A8
|
|
_08009828: .4byte 0x0202A578
|
|
_0800982C: .4byte 0x0202C5A8
|
|
|
|
thumb_func_start sub_9830
|
|
sub_9830: @ 0x08009830
|
|
push {lr}
|
|
ldr r0, _08009868 @ =0x02019C30
|
|
ldr r2, [r0]
|
|
subs r2, #0x10
|
|
str r2, [r0]
|
|
ldr r1, _0800986C @ =0x0201C188
|
|
ldr r0, [r1]
|
|
subs r0, #0x10
|
|
str r0, [r1]
|
|
ldr r1, _08009870 @ =0x0201A450
|
|
ldrh r0, [r1]
|
|
subs r0, #1
|
|
strh r0, [r1]
|
|
cmp r2, #0x1f
|
|
bgt _0800985E
|
|
movs r0, #0
|
|
strh r0, [r1, #0xa]
|
|
movs r0, #0x25
|
|
strh r0, [r1, #8]
|
|
ldr r1, _08009874 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800985E:
|
|
bl sub_9D70
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009868: .4byte 0x02019C30
|
|
_0800986C: .4byte 0x0201C188
|
|
_08009870: .4byte 0x0201A450
|
|
_08009874: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_9878
|
|
sub_9878: @ 0x08009878
|
|
push {lr}
|
|
ldr r1, _080098AC @ =0x0201A450
|
|
ldrh r0, [r1, #0xa]
|
|
adds r0, #1
|
|
strh r0, [r1, #0xa]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #3
|
|
ble _080098A8
|
|
movs r0, #0
|
|
strh r0, [r1, #0xa]
|
|
movs r0, #0x78
|
|
strh r0, [r1]
|
|
movs r0, #0x58
|
|
strh r0, [r1, #2]
|
|
movs r0, #1
|
|
strb r0, [r1, #0xc]
|
|
movs r0, #0xd8
|
|
bl m4aSongNumStart
|
|
ldr r1, _080098B0 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_080098A8:
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_080098AC: .4byte 0x0201A450
|
|
_080098B0: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_98B4
|
|
sub_98B4: @ 0x080098B4
|
|
push {lr}
|
|
ldr r1, _080098F0 @ =0x0201A450
|
|
ldrh r2, [r1, #8]
|
|
movs r3, #8
|
|
ldrsh r0, [r1, r3]
|
|
cmp r0, #0x2b
|
|
bne _08009900
|
|
ldrh r0, [r1, #0xa]
|
|
adds r0, #1
|
|
strh r0, [r1, #0xa]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #1
|
|
ble _08009916
|
|
movs r0, #0
|
|
strb r0, [r1, #0xc]
|
|
ldr r0, _080098F4 @ =gUnknown_080B3C60
|
|
ldr r1, _080098F8 @ =0x050000E0
|
|
movs r2, #0x20
|
|
movs r3, #0
|
|
bl sub_10170
|
|
movs r0, #8
|
|
bl m4aSongNumStart
|
|
ldr r1, _080098FC @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
b _08009916
|
|
.align 2, 0
|
|
_080098F0: .4byte 0x0201A450
|
|
_080098F4: .4byte gUnknown_080B3C60
|
|
_080098F8: .4byte 0x050000E0
|
|
_080098FC: .4byte 0x0202C790
|
|
_08009900:
|
|
ldrh r0, [r1, #0xa]
|
|
adds r0, #1
|
|
strh r0, [r1, #0xa]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #1
|
|
ble _08009916
|
|
movs r0, #0
|
|
strh r0, [r1, #0xa]
|
|
adds r0, r2, #1
|
|
strh r0, [r1, #8]
|
|
_08009916:
|
|
bl sub_9CB8
|
|
pop {r0}
|
|
bx r0
|
|
|
|
thumb_func_start sub_9920
|
|
sub_9920: @ 0x08009920
|
|
push {lr}
|
|
ldr r0, _08009954 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r0, r1]
|
|
movs r1, #3
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _08009982
|
|
ldr r1, _08009958 @ =0x0202C594
|
|
ldrh r2, [r1]
|
|
movs r3, #0
|
|
ldrsh r0, [r1, r3]
|
|
cmp r0, #7
|
|
bgt _08009964
|
|
adds r0, r2, #1
|
|
strh r0, [r1]
|
|
ldr r1, _0800995C @ =0x0201C1B8
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
ldr r1, _08009960 @ =0x0202ADD4
|
|
ldrb r0, [r1]
|
|
subs r0, #1
|
|
b _08009976
|
|
.align 2, 0
|
|
_08009954: .4byte 0x0202BF10
|
|
_08009958: .4byte 0x0202C594
|
|
_0800995C: .4byte 0x0201C1B8
|
|
_08009960: .4byte 0x0202ADD4
|
|
_08009964:
|
|
ldr r0, _0800998C @ =0x0201C1C0
|
|
ldr r1, _08009990 @ =0x060036E0
|
|
movs r2, #8
|
|
movs r3, #8
|
|
bl sub_10708
|
|
ldr r1, _08009994 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
_08009976:
|
|
strb r0, [r1]
|
|
ldr r2, _08009998 @ =0x0201A450
|
|
ldrh r1, [r2, #0x18]
|
|
movs r0, #1
|
|
subs r0, r0, r1
|
|
strh r0, [r2, #0x18]
|
|
_08009982:
|
|
bl sub_9E90
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800998C: .4byte 0x0201C1C0
|
|
_08009990: .4byte 0x060036E0
|
|
_08009994: .4byte 0x0202C790
|
|
_08009998: .4byte 0x0201A450
|
|
|
|
thumb_func_start sub_999C
|
|
sub_999C: @ 0x0800999C
|
|
push {r4, r5, lr}
|
|
ldr r5, _08009A84 @ =0x0202BEF0
|
|
ldr r0, [r5]
|
|
cmp r0, #0
|
|
ble _080099D0
|
|
subs r0, #2
|
|
str r0, [r5]
|
|
cmp r0, #0
|
|
bgt _080099B2
|
|
movs r0, #0
|
|
str r0, [r5]
|
|
_080099B2:
|
|
ldr r4, _08009A88 @ =gIntroScene1Sprites_Pals
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
movs r2, #0x80
|
|
lsls r2, r2, #2
|
|
ldrh r3, [r5]
|
|
adds r0, r4, #0
|
|
bl sub_10170
|
|
ldr r1, _08009A8C @ =0x05000200
|
|
ldrh r3, [r5]
|
|
adds r0, r4, #0
|
|
movs r2, #0x20
|
|
bl sub_10170
|
|
_080099D0:
|
|
ldr r5, _08009A90 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r5, r1]
|
|
movs r1, #3
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _080099EC
|
|
ldr r2, _08009A94 @ =0x0201A450
|
|
ldrh r1, [r2, #0x18]
|
|
movs r0, #1
|
|
subs r0, r0, r1
|
|
strh r0, [r2, #0x18]
|
|
_080099EC:
|
|
ldr r4, _08009A98 @ =0x0202ADA0
|
|
ldrh r0, [r4]
|
|
subs r0, #1
|
|
strh r0, [r4]
|
|
ldrh r0, [r5]
|
|
movs r5, #1
|
|
ands r0, r5
|
|
cmp r0, #0
|
|
bne _08009A04
|
|
ldrh r0, [r4, #2]
|
|
subs r0, #1
|
|
strh r0, [r4, #2]
|
|
_08009A04:
|
|
ldr r1, _08009A9C @ =gMain
|
|
ldrh r2, [r4]
|
|
movs r3, #0xba
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #2]
|
|
ldr r2, _08009AA0 @ =0x000002EA
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
ldrh r0, [r4, #0xa]
|
|
adds r0, #1
|
|
strh r0, [r4, #0xa]
|
|
ldr r2, _08009AA4 @ =gUnknown_086A7768
|
|
movs r1, #8
|
|
ldrsh r3, [r4, r1]
|
|
lsls r1, r3, #2
|
|
adds r1, r1, r2
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
movs r2, #2
|
|
ldrsh r1, [r1, r2]
|
|
cmp r0, r1
|
|
ble _08009A78
|
|
ldr r1, _08009AA8 @ =gUnknown_086A7788
|
|
lsls r0, r3, #1
|
|
adds r0, r0, r1
|
|
movs r3, #0
|
|
ldrsh r0, [r0, r3]
|
|
lsls r0, r0, #1
|
|
ldr r1, _08009AAC @ =0x0201C1C0
|
|
adds r0, r0, r1
|
|
ldr r1, _08009AB0 @ =0x060036E0
|
|
movs r2, #8
|
|
movs r3, #8
|
|
bl sub_10708
|
|
ldrh r0, [r4, #8]
|
|
adds r0, #1
|
|
strh r0, [r4, #8]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #3
|
|
ble _08009A78
|
|
ldr r1, _08009A94 @ =0x0201A450
|
|
adds r0, r1, #0
|
|
adds r0, #0x3c
|
|
strb r5, [r0]
|
|
subs r0, #0x10
|
|
strb r5, [r0]
|
|
movs r0, #0
|
|
strb r0, [r1, #0x1c]
|
|
movs r0, #0
|
|
strh r0, [r4, #0x14]
|
|
ldr r1, _08009AB4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_08009A78:
|
|
bl sub_9E90
|
|
pop {r4, r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009A84: .4byte 0x0202BEF0
|
|
_08009A88: .4byte gIntroScene1Sprites_Pals
|
|
_08009A8C: .4byte 0x05000200
|
|
_08009A90: .4byte 0x0202BF10
|
|
_08009A94: .4byte 0x0201A450
|
|
_08009A98: .4byte 0x0202ADA0
|
|
_08009A9C: .4byte gMain
|
|
_08009AA0: .4byte 0x000002EA
|
|
_08009AA4: .4byte gUnknown_086A7768
|
|
_08009AA8: .4byte gUnknown_086A7788
|
|
_08009AAC: .4byte 0x0201C1C0
|
|
_08009AB0: .4byte 0x060036E0
|
|
_08009AB4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_9AB8
|
|
sub_9AB8: @ 0x08009AB8
|
|
push {r4, lr}
|
|
ldr r1, _08009B54 @ =0x0201A450
|
|
ldrh r0, [r1, #0x30]
|
|
subs r0, #0xe
|
|
strh r0, [r1, #0x30]
|
|
ldrh r0, [r1, #0x32]
|
|
subs r0, #0xd
|
|
strh r0, [r1, #0x32]
|
|
ldr r3, _08009B58 @ =0x0202ADA0
|
|
ldrh r0, [r3, #0x24]
|
|
subs r0, #0x10
|
|
strh r0, [r3, #0x24]
|
|
ldrh r0, [r3, #0x26]
|
|
adds r0, #1
|
|
strh r0, [r3, #0x26]
|
|
ldrh r0, [r3, #0xc]
|
|
subs r0, #0x10
|
|
strh r0, [r3, #0xc]
|
|
ldrh r0, [r1, #0x20]
|
|
subs r0, #0xe
|
|
strh r0, [r1, #0x20]
|
|
ldrh r0, [r1, #0x22]
|
|
subs r0, #0xd
|
|
strh r0, [r1, #0x22]
|
|
adds r2, r1, #0
|
|
adds r2, #0x40
|
|
ldrh r0, [r2]
|
|
adds r0, #0xb
|
|
strh r0, [r2]
|
|
adds r1, #0x42
|
|
ldrh r0, [r1]
|
|
subs r0, #2
|
|
strh r0, [r1]
|
|
ldr r0, _08009B5C @ =0x0202BF10
|
|
ldrh r0, [r0]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
adds r4, r3, #0
|
|
cmp r0, #0
|
|
bne _08009B14
|
|
ldrh r0, [r4]
|
|
subs r0, #1
|
|
strh r0, [r4]
|
|
ldrh r0, [r4, #2]
|
|
subs r0, #1
|
|
strh r0, [r4, #2]
|
|
_08009B14:
|
|
ldrh r0, [r4, #0xa]
|
|
adds r0, #1
|
|
strh r0, [r4, #0xa]
|
|
ldr r2, _08009B60 @ =gUnknown_086A7768
|
|
movs r1, #8
|
|
ldrsh r3, [r4, r1]
|
|
lsls r1, r3, #2
|
|
adds r1, r1, r2
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
movs r2, #2
|
|
ldrsh r1, [r1, r2]
|
|
cmp r0, r1
|
|
ble _08009B94
|
|
adds r0, r3, #0
|
|
cmp r0, #6
|
|
bgt _08009B70
|
|
ldr r1, _08009B64 @ =gUnknown_086A7788
|
|
lsls r0, r3, #1
|
|
adds r0, r0, r1
|
|
movs r2, #0
|
|
ldrsh r0, [r0, r2]
|
|
lsls r0, r0, #1
|
|
ldr r1, _08009B68 @ =0x0201C1C0
|
|
adds r0, r0, r1
|
|
ldr r1, _08009B6C @ =0x060036E0
|
|
movs r2, #8
|
|
movs r3, #8
|
|
bl sub_10708
|
|
b _08009B8A
|
|
.align 2, 0
|
|
_08009B54: .4byte 0x0201A450
|
|
_08009B58: .4byte 0x0202ADA0
|
|
_08009B5C: .4byte 0x0202BF10
|
|
_08009B60: .4byte gUnknown_086A7768
|
|
_08009B64: .4byte gUnknown_086A7788
|
|
_08009B68: .4byte 0x0201C1C0
|
|
_08009B6C: .4byte 0x060036E0
|
|
_08009B70:
|
|
ldr r1, _08009BF0 @ =gUnknown_086A7788
|
|
lsls r0, r3, #1
|
|
adds r0, r0, r1
|
|
movs r3, #0
|
|
ldrsh r0, [r0, r3]
|
|
lsls r0, r0, #1
|
|
ldr r1, _08009BF4 @ =0x0201C1C0
|
|
adds r0, r0, r1
|
|
ldr r1, _08009BF8 @ =0x060032C0
|
|
movs r2, #0xa
|
|
movs r3, #0xa
|
|
bl sub_10708
|
|
_08009B8A:
|
|
ldr r1, _08009BFC @ =0x0202ADA0
|
|
ldrh r0, [r1, #8]
|
|
adds r0, #1
|
|
strh r0, [r1, #8]
|
|
adds r4, r1, #0
|
|
_08009B94:
|
|
adds r1, r4, #0
|
|
ldrh r0, [r1, #0x14]
|
|
adds r0, #1
|
|
strh r0, [r1, #0x14]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #9
|
|
ble _08009BB0
|
|
movs r0, #0
|
|
strh r0, [r1, #0x14]
|
|
ldr r1, _08009C00 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #2
|
|
strb r0, [r1]
|
|
_08009BB0:
|
|
bl sub_9E90
|
|
ldr r1, _08009C04 @ =gMain
|
|
ldrh r2, [r4]
|
|
movs r3, #0xba
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #2]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x24]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x26]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xc]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #0xe]
|
|
ldr r2, _08009C08 @ =0x000002F2
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009BF0: .4byte gUnknown_086A7788
|
|
_08009BF4: .4byte 0x0201C1C0
|
|
_08009BF8: .4byte 0x060032C0
|
|
_08009BFC: .4byte 0x0202ADA0
|
|
_08009C00: .4byte 0x0202C790
|
|
_08009C04: .4byte gMain
|
|
_08009C08: .4byte 0x000002F2
|
|
|
|
thumb_func_start nullsub_4
|
|
nullsub_4: @ 0x08009C0C
|
|
bx lr
|
|
|
|
thumb_func_start sub_9C10
|
|
sub_9C10: @ 0x08009C10
|
|
push {r4, lr}
|
|
ldr r4, _08009C7C @ =0x0202ADA0
|
|
ldrh r0, [r4, #0x18]
|
|
adds r0, #1
|
|
strh r0, [r4, #0x18]
|
|
ldr r0, _08009C80 @ =0x0202BF10
|
|
ldrh r0, [r0]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _08009C40
|
|
ldr r1, _08009C84 @ =0x0201A450
|
|
ldrh r0, [r1, #0x30]
|
|
subs r0, #1
|
|
strh r0, [r1, #0x30]
|
|
ldrh r0, [r1, #0x32]
|
|
subs r0, #1
|
|
strh r0, [r1, #0x32]
|
|
ldrh r0, [r1, #0x20]
|
|
subs r0, #2
|
|
strh r0, [r1, #0x20]
|
|
ldrh r0, [r1, #0x22]
|
|
subs r0, #2
|
|
strh r0, [r1, #0x22]
|
|
_08009C40:
|
|
bl sub_9E90
|
|
ldr r1, _08009C88 @ =gMain
|
|
ldrh r2, [r4, #0x18]
|
|
movs r3, #0xbd
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #0x1a]
|
|
ldr r2, _08009C8C @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
ldr r1, _08009C84 @ =0x0201A450
|
|
ldrh r0, [r1, #0x3a]
|
|
adds r0, #1
|
|
strh r0, [r1, #0x3a]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0x14
|
|
ble _08009C74
|
|
movs r0, #0
|
|
strh r0, [r1, #0x3a]
|
|
ldr r1, _08009C90 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #3
|
|
strb r0, [r1]
|
|
_08009C74:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009C7C: .4byte 0x0202ADA0
|
|
_08009C80: .4byte 0x0202BF10
|
|
_08009C84: .4byte 0x0201A450
|
|
_08009C88: .4byte gMain
|
|
_08009C8C: .4byte 0x000002F6
|
|
_08009C90: .4byte 0x0202C790
|
|
|
|
thumb_func_start nullsub_5
|
|
nullsub_5: @ 0x08009C94
|
|
bx lr
|
|
|
|
thumb_func_start nullsub_17
|
|
nullsub_17: @ 0x08009C98
|
|
bx lr
|
|
|
|
thumb_func_start sub_9C9C
|
|
sub_9C9C: @ 0x08009C9C
|
|
push {lr}
|
|
bl sub_10480
|
|
bl sub_10544
|
|
ldr r1, _08009CB4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009CB4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_9CB8
|
|
sub_9CB8: @ 0x08009CB8
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, r8
|
|
push {r7}
|
|
ldr r4, _08009D54 @ =0x0201A450
|
|
movs r0, #8
|
|
ldrsh r1, [r4, r0]
|
|
movs r0, #0xb8
|
|
muls r0, r1, r0
|
|
ldr r2, _08009D58 @ =0x0200B698
|
|
adds r5, r0, r2
|
|
movs r0, #0xc
|
|
ldrsb r0, [r4, r0]
|
|
strh r0, [r5]
|
|
ldr r6, _08009D5C @ =gUnknown_086A769C
|
|
ldr r1, _08009D60 @ =0xFFFFFD20
|
|
adds r2, r2, r1
|
|
adds r0, r6, #0
|
|
movs r1, #0x31
|
|
bl LoadSpriteSets
|
|
ldrh r0, [r5]
|
|
cmp r0, #1
|
|
bne _08009D46
|
|
ldrh r0, [r4]
|
|
strh r0, [r5, #2]
|
|
ldrh r0, [r4, #2]
|
|
strh r0, [r5, #4]
|
|
movs r2, #8
|
|
ldrsh r0, [r4, r2]
|
|
adds r0, #4
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r6
|
|
ldr r7, [r0]
|
|
movs r6, #0
|
|
ldrh r0, [r7]
|
|
cmp r6, r0
|
|
bge _08009D46
|
|
ldr r1, _08009D64 @ =gOamBuffer
|
|
mov ip, r1
|
|
ldr r2, _08009D68 @ =0xFFFFFE00
|
|
mov r8, r2
|
|
adds r4, r5, #0
|
|
adds r4, #8
|
|
_08009D0E:
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
add r3, ip
|
|
movs r0, #2
|
|
ldrsh r1, [r4, r0]
|
|
movs r2, #2
|
|
ldrsh r0, [r5, r2]
|
|
adds r1, r1, r0
|
|
ldr r2, _08009D6C @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
mov r0, r8
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
add r1, ip
|
|
ldrb r0, [r5, #4]
|
|
ldrb r2, [r4, #4]
|
|
adds r0, r0, r2
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
adds r6, #1
|
|
ldrh r0, [r7]
|
|
cmp r6, r0
|
|
blt _08009D0E
|
|
_08009D46:
|
|
movs r0, #0
|
|
strh r0, [r5]
|
|
pop {r3}
|
|
mov r8, r3
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009D54: .4byte 0x0201A450
|
|
_08009D58: .4byte 0x0200B698
|
|
_08009D5C: .4byte gUnknown_086A769C
|
|
_08009D60: .4byte 0xFFFFFD20
|
|
_08009D64: .4byte gOamBuffer
|
|
_08009D68: .4byte 0xFFFFFE00
|
|
_08009D6C: .4byte 0x000001FF
|
|
|
|
thumb_func_start sub_9D70
|
|
sub_9D70: @ 0x08009D70
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sl
|
|
mov r6, sb
|
|
mov r5, r8
|
|
push {r5, r6, r7}
|
|
sub sp, #4
|
|
ldr r0, _08009E68 @ =0x0200D078
|
|
mov r8, r0
|
|
ldr r6, _08009E6C @ =0x0201A450
|
|
movs r0, #0xc
|
|
ldrsb r0, [r6, r0]
|
|
mov r1, r8
|
|
strh r0, [r1]
|
|
ldr r0, _08009E70 @ =gUnknown_086A769C
|
|
ldr r2, _08009E74 @ =0xFFFFE340
|
|
add r2, r8
|
|
movs r1, #0x31
|
|
bl LoadSpriteSets
|
|
mov r2, r8
|
|
ldrh r0, [r2]
|
|
cmp r0, #1
|
|
bne _08009E50
|
|
ldr r5, _08009E78 @ =0x02019C30
|
|
movs r3, #0
|
|
ldrsh r0, [r5, r3]
|
|
ldr r4, _08009E7C @ =0x0201C188
|
|
movs r2, #0
|
|
ldrsh r1, [r4, r2]
|
|
movs r2, #0
|
|
bl SetMatrixScale
|
|
ldrh r0, [r6]
|
|
mov r3, r8
|
|
strh r0, [r3, #2]
|
|
ldrh r0, [r6, #2]
|
|
strh r0, [r3, #4]
|
|
movs r7, #0
|
|
ldr r6, _08009E80 @ =gOamBuffer
|
|
mov sl, r5
|
|
mov sb, r4
|
|
mov r5, r8
|
|
adds r5, #8
|
|
movs r0, #0xf
|
|
rsbs r0, r0, #0
|
|
mov ip, r0
|
|
_08009DCC:
|
|
ldrh r0, [r5]
|
|
lsls r0, r0, #3
|
|
adds r3, r0, r6
|
|
lsls r0, r7, #2
|
|
ldr r1, _08009E84 @ =gUnknown_086A7798
|
|
adds r4, r0, r1
|
|
movs r2, #0
|
|
ldrsh r1, [r4, r2]
|
|
mov r2, sl
|
|
ldr r0, [r2]
|
|
muls r1, r0, r1
|
|
cmp r1, #0
|
|
bge _08009DE8
|
|
adds r1, #0xff
|
|
_08009DE8:
|
|
asrs r1, r1, #8
|
|
str r1, [sp]
|
|
mov r1, r8
|
|
movs r2, #2
|
|
ldrsh r0, [r1, r2]
|
|
ldr r2, [sp]
|
|
adds r1, r2, r0
|
|
ldr r2, _08009E88 @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
ldr r0, _08009E8C @ =0xFFFFFE00
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r0, [r5]
|
|
lsls r0, r0, #3
|
|
adds r2, r0, r6
|
|
movs r3, #2
|
|
ldrsh r1, [r4, r3]
|
|
mov r3, sb
|
|
ldr r0, [r3]
|
|
muls r0, r1, r0
|
|
cmp r0, #0
|
|
bge _08009E1C
|
|
adds r0, #0xff
|
|
_08009E1C:
|
|
asrs r0, r0, #8
|
|
mov r1, r8
|
|
ldrb r1, [r1, #4]
|
|
adds r0, r0, r1
|
|
strb r0, [r2]
|
|
ldrh r2, [r5]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r6
|
|
ldrb r1, [r2, #1]
|
|
movs r0, #4
|
|
rsbs r0, r0, #0
|
|
ands r0, r1
|
|
movs r1, #1
|
|
orrs r0, r1
|
|
strb r0, [r2, #1]
|
|
ldrh r1, [r5]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
ldrb r2, [r1, #3]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
strb r0, [r1, #3]
|
|
adds r5, #8
|
|
adds r7, #1
|
|
cmp r7, #3
|
|
ble _08009DCC
|
|
_08009E50:
|
|
movs r0, #0
|
|
mov r2, r8
|
|
strh r0, [r2]
|
|
add sp, #4
|
|
pop {r3, r4, r5}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
mov sl, r5
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_08009E68: .4byte 0x0200D078
|
|
_08009E6C: .4byte 0x0201A450
|
|
_08009E70: .4byte gUnknown_086A769C
|
|
_08009E74: .4byte 0xFFFFE340
|
|
_08009E78: .4byte 0x02019C30
|
|
_08009E7C: .4byte 0x0201C188
|
|
_08009E80: .4byte gOamBuffer
|
|
_08009E84: .4byte gUnknown_086A7798
|
|
_08009E88: .4byte 0x000001FF
|
|
_08009E8C: .4byte 0xFFFFFE00
|
|
|
|
thumb_func_start sub_9E90
|
|
sub_9E90: @ 0x08009E90
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sl
|
|
mov r6, sb
|
|
mov r5, r8
|
|
push {r5, r6, r7}
|
|
sub sp, #4
|
|
ldr r3, _0800A12C @ =gMain
|
|
ldrh r0, [r3, #0x38]
|
|
movs r0, #0xf1
|
|
lsls r0, r0, #4
|
|
strh r0, [r3, #0x38]
|
|
ldr r0, _0800A130 @ =0x0201C1B8
|
|
ldrb r1, [r0]
|
|
ldr r0, _0800A134 @ =0x0202ADD4
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #8
|
|
orrs r1, r0
|
|
ldrh r0, [r3, #0x3a]
|
|
strh r1, [r3, #0x3a]
|
|
ldr r1, _0800A138 @ =0x04000050
|
|
ldrh r0, [r3, #0x38]
|
|
strh r0, [r1]
|
|
adds r1, #2
|
|
ldrh r0, [r3, #0x3a]
|
|
strh r0, [r1]
|
|
ldr r4, _0800A13C @ =0x0201A450
|
|
movs r0, #0x18
|
|
ldrsh r1, [r4, r0]
|
|
movs r0, #0xb8
|
|
muls r0, r1, r0
|
|
movs r1, #0xbe
|
|
lsls r1, r1, #2
|
|
adds r2, r3, r1
|
|
adds r0, r0, r2
|
|
mov r8, r0
|
|
movs r6, #0xa4
|
|
lsls r6, r6, #3
|
|
adds r6, r6, r3
|
|
mov sb, r6
|
|
movs r7, #0x8d
|
|
lsls r7, r7, #3
|
|
adds r7, r7, r3
|
|
mov sl, r7
|
|
movs r0, #0x1c
|
|
ldrsb r0, [r4, r0]
|
|
mov r1, r8
|
|
strh r0, [r1]
|
|
adds r0, r4, #0
|
|
adds r0, #0x2c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r6]
|
|
adds r0, r4, #0
|
|
adds r0, #0x3c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r7]
|
|
adds r0, r4, #0
|
|
adds r0, #0x4c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
ldr r6, _0800A140 @ =0x0200D638
|
|
strh r0, [r6]
|
|
ldr r5, _0800A144 @ =gUnknown_086A769C
|
|
adds r0, r5, #0
|
|
movs r1, #0x31
|
|
bl LoadSpriteSets
|
|
mov r7, r8
|
|
ldrh r0, [r7]
|
|
cmp r0, #1
|
|
bne _08009F9E
|
|
ldrh r0, [r4, #0x10]
|
|
strh r0, [r7, #2]
|
|
ldrh r0, [r4, #0x12]
|
|
strh r0, [r7, #4]
|
|
movs r1, #0x18
|
|
ldrsh r0, [r4, r1]
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r5
|
|
ldr r0, [r0]
|
|
str r0, [sp]
|
|
movs r5, #0
|
|
ldrh r2, [r0]
|
|
cmp r5, r2
|
|
bge _08009F9E
|
|
ldr r7, _0800A148 @ =gOamBuffer
|
|
ldr r6, _0800A14C @ =0xFFFFFE00
|
|
mov ip, r6
|
|
mov r4, r8
|
|
adds r4, #8
|
|
_08009F4C:
|
|
ldrh r2, [r4]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r7
|
|
ldrb r1, [r2, #1]
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
ands r0, r1
|
|
movs r1, #4
|
|
orrs r0, r1
|
|
strb r0, [r2, #1]
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
adds r3, r3, r7
|
|
movs r0, #2
|
|
ldrsh r1, [r4, r0]
|
|
mov r2, r8
|
|
movs r6, #2
|
|
ldrsh r0, [r2, r6]
|
|
adds r1, r1, r0
|
|
ldr r2, _0800A150 @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r7
|
|
mov r6, r8
|
|
ldrb r0, [r6, #4]
|
|
ldrb r2, [r4, #4]
|
|
adds r0, r0, r2
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
adds r5, #1
|
|
ldr r6, [sp]
|
|
ldrh r6, [r6]
|
|
cmp r5, r6
|
|
blt _08009F4C
|
|
_08009F9E:
|
|
mov r7, sb
|
|
ldrh r0, [r7]
|
|
cmp r0, #1
|
|
bne _0800A01C
|
|
ldr r0, _0800A13C @ =0x0201A450
|
|
ldrh r1, [r0, #0x20]
|
|
strh r1, [r7, #2]
|
|
ldrh r0, [r0, #0x22]
|
|
strh r0, [r7, #4]
|
|
ldr r6, _0800A148 @ =gOamBuffer
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
mov ip, r0
|
|
mov r4, sb
|
|
adds r4, #8
|
|
movs r5, #3
|
|
_08009FBE:
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
ldrb r2, [r1, #1]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
movs r2, #4
|
|
orrs r0, r2
|
|
strb r0, [r1, #1]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
ldrb r2, [r1, #5]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
movs r7, #4
|
|
orrs r0, r7
|
|
strb r0, [r1, #5]
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
adds r3, r3, r6
|
|
movs r0, #2
|
|
ldrsh r1, [r4, r0]
|
|
mov r2, sb
|
|
movs r7, #2
|
|
ldrsh r0, [r2, r7]
|
|
adds r1, r1, r0
|
|
ldr r2, _0800A150 @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
ldr r0, _0800A14C @ =0xFFFFFE00
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
mov r7, sb
|
|
ldrb r0, [r7, #4]
|
|
ldrb r2, [r4, #4]
|
|
adds r0, r0, r2
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
subs r5, #1
|
|
cmp r5, #0
|
|
bge _08009FBE
|
|
_0800A01C:
|
|
mov r6, sl
|
|
ldrh r0, [r6]
|
|
cmp r0, #1
|
|
bne _0800A098
|
|
ldr r0, _0800A13C @ =0x0201A450
|
|
ldrh r1, [r0, #0x30]
|
|
strh r1, [r6, #2]
|
|
ldrh r0, [r0, #0x32]
|
|
strh r0, [r6, #4]
|
|
ldr r6, _0800A148 @ =gOamBuffer
|
|
ldr r7, _0800A14C @ =0xFFFFFE00
|
|
mov ip, r7
|
|
mov r4, sl
|
|
adds r4, #8
|
|
movs r5, #3
|
|
_0800A03A:
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
ldrb r2, [r1, #1]
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
ands r0, r2
|
|
strb r0, [r1, #1]
|
|
ldrh r2, [r4]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r6
|
|
ldrb r1, [r2, #5]
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
ands r0, r1
|
|
movs r1, #4
|
|
orrs r0, r1
|
|
strb r0, [r2, #5]
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
adds r3, r3, r6
|
|
movs r0, #2
|
|
ldrsh r1, [r4, r0]
|
|
mov r2, sl
|
|
movs r7, #2
|
|
ldrsh r0, [r2, r7]
|
|
adds r1, r1, r0
|
|
ldr r2, _0800A150 @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
mov r7, sl
|
|
ldrb r0, [r7, #4]
|
|
ldrb r2, [r4, #4]
|
|
adds r0, r0, r2
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
subs r5, #1
|
|
cmp r5, #0
|
|
bge _0800A03A
|
|
_0800A098:
|
|
ldr r6, _0800A140 @ =0x0200D638
|
|
ldrh r0, [r6]
|
|
cmp r0, #1
|
|
bne _0800A10A
|
|
ldr r0, _0800A13C @ =0x0201A450
|
|
adds r1, r0, #0
|
|
adds r1, #0x40
|
|
ldrh r1, [r1]
|
|
strh r1, [r6, #2]
|
|
adds r0, #0x42
|
|
ldrh r0, [r0]
|
|
strh r0, [r6, #4]
|
|
ldr r6, _0800A148 @ =gOamBuffer
|
|
movs r7, #0xd
|
|
rsbs r7, r7, #0
|
|
mov ip, r7
|
|
ldr r4, _0800A140 @ =0x0200D638
|
|
adds r4, #8
|
|
movs r5, #7
|
|
_0800A0BE:
|
|
ldrh r2, [r4]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r6
|
|
ldrb r1, [r2, #5]
|
|
mov r0, ip
|
|
ands r0, r1
|
|
movs r1, #8
|
|
orrs r0, r1
|
|
strb r0, [r2, #5]
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
adds r3, r3, r6
|
|
movs r0, #2
|
|
ldrsh r1, [r4, r0]
|
|
ldr r2, _0800A140 @ =0x0200D638
|
|
movs r7, #2
|
|
ldrsh r0, [r2, r7]
|
|
adds r1, r1, r0
|
|
ldr r2, _0800A150 @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
ldr r0, _0800A14C @ =0xFFFFFE00
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
ldr r7, _0800A140 @ =0x0200D638
|
|
ldrb r0, [r7, #4]
|
|
ldrb r2, [r4, #4]
|
|
adds r0, r0, r2
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
subs r5, #1
|
|
cmp r5, #0
|
|
bge _0800A0BE
|
|
_0800A10A:
|
|
movs r0, #0
|
|
mov r6, r8
|
|
strh r0, [r6]
|
|
mov r7, sb
|
|
strh r0, [r7]
|
|
mov r1, sl
|
|
strh r0, [r1]
|
|
ldr r2, _0800A140 @ =0x0200D638
|
|
strh r0, [r2]
|
|
add sp, #4
|
|
pop {r3, r4, r5}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
mov sl, r5
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A12C: .4byte gMain
|
|
_0800A130: .4byte 0x0201C1B8
|
|
_0800A134: .4byte 0x0202ADD4
|
|
_0800A138: .4byte 0x04000050
|
|
_0800A13C: .4byte 0x0201A450
|
|
_0800A140: .4byte 0x0200D638
|
|
_0800A144: .4byte gUnknown_086A769C
|
|
_0800A148: .4byte gOamBuffer
|
|
_0800A14C: .4byte 0xFFFFFE00
|
|
_0800A150: .4byte 0x000001FF
|
|
|
|
thumb_func_start sub_A154
|
|
sub_A154: @ 0x0800A154
|
|
push {lr}
|
|
bl sub_518
|
|
ldr r1, _0800A168 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A168: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_A16C
|
|
sub_A16C: @ 0x0800A16C
|
|
push {r4, lr}
|
|
movs r2, #0x80
|
|
lsls r2, r2, #0x13
|
|
movs r0, #0
|
|
strh r0, [r2]
|
|
ldr r1, _0800A250 @ =0x04000008
|
|
movs r3, #0xcc
|
|
lsls r3, r3, #8
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #1
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800A254 @ =0x0400000A
|
|
ldr r3, _0800A258 @ =0x0000DA01
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #2
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800A25C @ =0x0400000E
|
|
ldr r3, _0800A260 @ =0x00001E03
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #4
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r0, _0800A264 @ =0x040000D4
|
|
ldr r1, _0800A268 @ =gUnknown_080D0700
|
|
str r1, [r0]
|
|
ldr r1, _0800A26C @ =0x06006000
|
|
str r1, [r0, #4]
|
|
ldr r2, _0800A270 @ =0x80001000
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A274 @ =gUnknown_080D2700
|
|
str r1, [r0]
|
|
ldr r1, _0800A278 @ =0x0600D000
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A27C @ =gUnknown_080CBEE0
|
|
str r1, [r0]
|
|
ldr r1, _0800A280 @ =0x0600F000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800A284 @ =0x80000400
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A288 @ =gUnknown_080CC6E0
|
|
str r1, [r0]
|
|
movs r1, #0xc0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800A28C @ =0x80001E00
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A290 @ =gUnknown_080CBCE0
|
|
str r1, [r0]
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800A294 @ =0x80000040
|
|
str r1, [r0, #8]
|
|
ldr r0, [r0, #8]
|
|
bl sub_A2A8
|
|
ldr r1, _0800A298 @ =gMain
|
|
ldr r3, _0800A29C @ =0x0202ADA0
|
|
ldrh r2, [r3]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #2]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xc]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xe]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0x18]
|
|
adds r4, #6
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r0, [r3, #0x1a]
|
|
ldr r2, _0800A2A0 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
bl sub_CBC
|
|
bl sub_10424
|
|
ldr r1, _0800A2A4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #2
|
|
strb r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A250: .4byte 0x04000008
|
|
_0800A254: .4byte 0x0400000A
|
|
_0800A258: .4byte 0x0000DA01
|
|
_0800A25C: .4byte 0x0400000E
|
|
_0800A260: .4byte 0x00001E03
|
|
_0800A264: .4byte 0x040000D4
|
|
_0800A268: .4byte gUnknown_080D0700
|
|
_0800A26C: .4byte 0x06006000
|
|
_0800A270: .4byte 0x80001000
|
|
_0800A274: .4byte gUnknown_080D2700
|
|
_0800A278: .4byte 0x0600D000
|
|
_0800A27C: .4byte gUnknown_080CBEE0
|
|
_0800A280: .4byte 0x0600F000
|
|
_0800A284: .4byte 0x80000400
|
|
_0800A288: .4byte gUnknown_080CC6E0
|
|
_0800A28C: .4byte 0x80001E00
|
|
_0800A290: .4byte gUnknown_080CBCE0
|
|
_0800A294: .4byte 0x80000040
|
|
_0800A298: .4byte gMain
|
|
_0800A29C: .4byte 0x0202ADA0
|
|
_0800A2A0: .4byte 0x000002F6
|
|
_0800A2A4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_A2A8
|
|
sub_A2A8: @ 0x0800A2A8
|
|
ldr r0, _0800A2D8 @ =0x0202ADA0
|
|
movs r2, #0
|
|
movs r1, #0x1c
|
|
strh r1, [r0]
|
|
ldr r1, _0800A2DC @ =0x0000FF2C
|
|
strh r1, [r0, #2]
|
|
strh r2, [r0, #4]
|
|
movs r1, #0xe
|
|
strh r1, [r0, #6]
|
|
ldr r1, _0800A2E0 @ =0x0000FF5C
|
|
strh r1, [r0, #0xc]
|
|
subs r1, #0x54
|
|
strh r1, [r0, #0xe]
|
|
strh r2, [r0, #0x10]
|
|
movs r1, #0x10
|
|
strh r1, [r0, #0x12]
|
|
strh r2, [r0, #0x18]
|
|
strh r2, [r0, #0x1a]
|
|
strh r2, [r0, #0x20]
|
|
ldr r0, _0800A2E4 @ =0x0202BF10
|
|
strh r2, [r0]
|
|
ldr r0, _0800A2E8 @ =0x0202A578
|
|
strh r2, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
_0800A2D8: .4byte 0x0202ADA0
|
|
_0800A2DC: .4byte 0x0000FF2C
|
|
_0800A2E0: .4byte 0x0000FF5C
|
|
_0800A2E4: .4byte 0x0202BF10
|
|
_0800A2E8: .4byte 0x0202A578
|
|
|
|
thumb_func_start nullsub_6
|
|
nullsub_6: @ 0x0800A2EC
|
|
bx lr
|
|
|
|
thumb_func_start sub_A2F0
|
|
sub_A2F0: @ 0x0800A2F0
|
|
push {r4, lr}
|
|
ldr r3, _0800A384 @ =0x0202ADA0
|
|
ldrh r4, [r3, #6]
|
|
ldrh r1, [r3, #2]
|
|
adds r0, r4, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r2, [r3, #0x12]
|
|
ldrh r1, [r3, #0xe]
|
|
adds r0, r2, r1
|
|
strh r0, [r3, #0xe]
|
|
ldrh r0, [r3, #0x18]
|
|
subs r0, #1
|
|
strh r0, [r3, #0x18]
|
|
ldrh r0, [r3, #0x1a]
|
|
subs r0, #1
|
|
strh r0, [r3, #0x1a]
|
|
ldrh r0, [r3]
|
|
subs r0, #1
|
|
strh r0, [r3]
|
|
ldrh r0, [r3, #0xc]
|
|
adds r0, #1
|
|
strh r0, [r3, #0xc]
|
|
ldr r0, _0800A388 @ =0x0202BF10
|
|
ldrh r0, [r0]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800A330
|
|
subs r0, r4, #1
|
|
strh r0, [r3, #6]
|
|
subs r0, r2, #1
|
|
strh r0, [r3, #0x12]
|
|
_0800A330:
|
|
ldr r1, _0800A38C @ =gMain
|
|
ldrh r2, [r3]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #2]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xc]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xe]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0x18]
|
|
adds r4, #6
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r0, [r3, #0x1a]
|
|
ldr r2, _0800A390 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
ldrh r0, [r3, #0x20]
|
|
adds r0, #1
|
|
strh r0, [r3, #0x20]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0x27
|
|
ble _0800A37E
|
|
movs r0, #0
|
|
strh r0, [r3, #0x20]
|
|
ldr r1, _0800A394 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #2
|
|
strb r0, [r1]
|
|
_0800A37E:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A384: .4byte 0x0202ADA0
|
|
_0800A388: .4byte 0x0202BF10
|
|
_0800A38C: .4byte gMain
|
|
_0800A390: .4byte 0x000002F6
|
|
_0800A394: .4byte 0x0202C790
|
|
|
|
thumb_func_start nullsub_7
|
|
nullsub_7: @ 0x0800A398
|
|
bx lr
|
|
|
|
thumb_func_start sub_A39C
|
|
sub_A39C: @ 0x0800A39C
|
|
push {r4, lr}
|
|
ldr r3, _0800A428 @ =0x0202ADA0
|
|
ldrh r0, [r3, #2]
|
|
adds r0, #1
|
|
strh r0, [r3, #2]
|
|
ldrh r0, [r3, #0xe]
|
|
adds r0, #1
|
|
strh r0, [r3, #0xe]
|
|
ldrh r0, [r3, #0x18]
|
|
subs r0, #1
|
|
strh r0, [r3, #0x18]
|
|
ldrh r0, [r3, #0x1a]
|
|
subs r0, #1
|
|
strh r0, [r3, #0x1a]
|
|
ldrh r0, [r3]
|
|
subs r0, #1
|
|
strh r0, [r3]
|
|
ldrh r0, [r3, #0xc]
|
|
adds r0, #1
|
|
strh r0, [r3, #0xc]
|
|
ldr r0, _0800A42C @ =0x0202BF10
|
|
ldrh r0, [r0]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800A3DC
|
|
ldrh r0, [r3, #6]
|
|
subs r0, #1
|
|
strh r0, [r3, #6]
|
|
ldrh r0, [r3, #0x12]
|
|
subs r0, #1
|
|
strh r0, [r3, #0x12]
|
|
_0800A3DC:
|
|
ldr r1, _0800A430 @ =gMain
|
|
ldrh r2, [r3]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #2]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xc]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xe]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0x18]
|
|
adds r4, #6
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r0, [r3, #0x1a]
|
|
ldr r2, _0800A434 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
bl sub_10480
|
|
bl sub_10544
|
|
ldr r1, _0800A438 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A428: .4byte 0x0202ADA0
|
|
_0800A42C: .4byte 0x0202BF10
|
|
_0800A430: .4byte gMain
|
|
_0800A434: .4byte 0x000002F6
|
|
_0800A438: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_A43C
|
|
sub_A43C: @ 0x0800A43C
|
|
push {lr}
|
|
bl sub_518
|
|
ldr r1, _0800A450 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A450: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_A454
|
|
sub_A454: @ 0x0800A454
|
|
push {r4, lr}
|
|
movs r2, #0x80
|
|
lsls r2, r2, #0x13
|
|
movs r1, #0x80
|
|
lsls r1, r1, #5
|
|
adds r0, r1, #0
|
|
strh r0, [r2]
|
|
ldr r1, _0800A5A0 @ =0x04000008
|
|
movs r3, #0xb4
|
|
lsls r3, r3, #7
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #1
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800A5A4 @ =0x0400000A
|
|
ldr r3, _0800A5A8 @ =0x00001C01
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #2
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800A5AC @ =0x0400000C
|
|
ldr r3, _0800A5B0 @ =0x00005D02
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #3
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800A5B4 @ =0x0400000E
|
|
ldr r3, _0800A5B8 @ =0x00001F03
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #4
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r0, _0800A5BC @ =0x040000D4
|
|
ldr r1, _0800A5C0 @ =gUnknown_080DE520
|
|
str r1, [r0]
|
|
ldr r1, _0800A5C4 @ =0x0600D000
|
|
str r1, [r0, #4]
|
|
ldr r3, _0800A5C8 @ =0x80000800
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A5CC @ =gUnknown_080DCD20
|
|
str r1, [r0]
|
|
ldr r1, _0800A5D0 @ =0x0600E000
|
|
str r1, [r0, #4]
|
|
ldr r2, _0800A5D4 @ =0x80000400
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A5D8 @ =gUnknown_080D4900
|
|
str r1, [r0]
|
|
ldr r1, _0800A5DC @ =0x0600E800
|
|
str r1, [r0, #4]
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A5E0 @ =gUnknown_080D5900
|
|
str r1, [r0]
|
|
ldr r1, _0800A5E4 @ =0x0600F800
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A5E8 @ =gUnknown_080DD520
|
|
str r1, [r0]
|
|
ldr r1, _0800A5EC @ =0x03005C00
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A5F0 @ =gUnknown_080DDD20
|
|
str r1, [r0]
|
|
ldr r1, _0800A5F4 @ =0x0201B180
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A5F8 @ =gUnknown_080D6100
|
|
str r1, [r0]
|
|
movs r1, #0xc0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800A5FC @ =0x80003600
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r3, _0800A600 @ =gUnknown_080D4700
|
|
str r3, [r0]
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r2, _0800A604 @ =0x80000070
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800A608 @ =gUnknown_080DF520
|
|
str r1, [r0]
|
|
ldr r1, _0800A60C @ =0x06010000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800A610 @ =0x80001000
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
str r3, [r0]
|
|
ldr r1, _0800A614 @ =0x05000200
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r0, [r0, #8]
|
|
bl sub_A628
|
|
bl sub_A87C
|
|
ldr r1, _0800A618 @ =gMain
|
|
ldr r2, _0800A61C @ =0x0202ADA0
|
|
ldrh r3, [r2]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #2]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0xc]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0xe]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x18]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x1a]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x24]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r0, [r2, #0x26]
|
|
ldr r2, _0800A620 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
bl sub_CBC
|
|
bl sub_10424
|
|
ldr r1, _0800A624 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A5A0: .4byte 0x04000008
|
|
_0800A5A4: .4byte 0x0400000A
|
|
_0800A5A8: .4byte 0x00001C01
|
|
_0800A5AC: .4byte 0x0400000C
|
|
_0800A5B0: .4byte 0x00005D02
|
|
_0800A5B4: .4byte 0x0400000E
|
|
_0800A5B8: .4byte 0x00001F03
|
|
_0800A5BC: .4byte 0x040000D4
|
|
_0800A5C0: .4byte gUnknown_080DE520
|
|
_0800A5C4: .4byte 0x0600D000
|
|
_0800A5C8: .4byte 0x80000800
|
|
_0800A5CC: .4byte gUnknown_080DCD20
|
|
_0800A5D0: .4byte 0x0600E000
|
|
_0800A5D4: .4byte 0x80000400
|
|
_0800A5D8: .4byte gUnknown_080D4900
|
|
_0800A5DC: .4byte 0x0600E800
|
|
_0800A5E0: .4byte gUnknown_080D5900
|
|
_0800A5E4: .4byte 0x0600F800
|
|
_0800A5E8: .4byte gUnknown_080DD520
|
|
_0800A5EC: .4byte 0x03005C00
|
|
_0800A5F0: .4byte gUnknown_080DDD20
|
|
_0800A5F4: .4byte 0x0201B180
|
|
_0800A5F8: .4byte gUnknown_080D6100
|
|
_0800A5FC: .4byte 0x80003600
|
|
_0800A600: .4byte gUnknown_080D4700
|
|
_0800A604: .4byte 0x80000070
|
|
_0800A608: .4byte gUnknown_080DF520
|
|
_0800A60C: .4byte 0x06010000
|
|
_0800A610: .4byte 0x80001000
|
|
_0800A614: .4byte 0x05000200
|
|
_0800A618: .4byte gMain
|
|
_0800A61C: .4byte 0x0202ADA0
|
|
_0800A620: .4byte 0x000002F6
|
|
_0800A624: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_A628
|
|
sub_A628: @ 0x0800A628
|
|
ldr r1, _0800A65C @ =0x0202ADA0
|
|
movs r2, #0
|
|
movs r0, #0x2c
|
|
strh r0, [r1]
|
|
ldr r0, _0800A660 @ =0x0000FF8E
|
|
strh r0, [r1, #2]
|
|
ldr r3, _0800A664 @ =0x0201A450
|
|
adds r0, #0x46
|
|
strh r0, [r3]
|
|
movs r0, #0x72
|
|
strh r0, [r3, #2]
|
|
ldr r0, _0800A668 @ =0x0000FFCE
|
|
strh r0, [r1, #0xc]
|
|
movs r0, #0x1e
|
|
strh r0, [r1, #0xe]
|
|
strh r2, [r1, #0x18]
|
|
strh r2, [r1, #0x1a]
|
|
strh r2, [r1, #0x20]
|
|
strh r2, [r1, #0x24]
|
|
strh r2, [r1, #0x26]
|
|
ldr r0, _0800A66C @ =0x0202BF10
|
|
strh r2, [r0]
|
|
ldr r0, _0800A670 @ =0x0202A578
|
|
strh r2, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
_0800A65C: .4byte 0x0202ADA0
|
|
_0800A660: .4byte 0x0000FF8E
|
|
_0800A664: .4byte 0x0201A450
|
|
_0800A668: .4byte 0x0000FFCE
|
|
_0800A66C: .4byte 0x0202BF10
|
|
_0800A670: .4byte 0x0202A578
|
|
|
|
thumb_func_start sub_A674
|
|
sub_A674: @ 0x0800A674
|
|
push {r4, lr}
|
|
ldr r4, _0800A6FC @ =0x0202ADA0
|
|
ldrh r0, [r4]
|
|
subs r0, #0x11
|
|
strh r0, [r4]
|
|
ldrh r0, [r4, #2]
|
|
adds r0, #0xa
|
|
strh r0, [r4, #2]
|
|
ldr r1, _0800A700 @ =0x0201A450
|
|
ldrh r0, [r1]
|
|
adds r0, #0x11
|
|
strh r0, [r1]
|
|
ldrh r0, [r1, #2]
|
|
subs r0, #0xa
|
|
strh r0, [r1, #2]
|
|
ldrh r0, [r4, #0x18]
|
|
adds r0, #0x10
|
|
strh r0, [r4, #0x18]
|
|
ldrh r0, [r4, #0xc]
|
|
adds r0, #4
|
|
strh r0, [r4, #0xc]
|
|
ldrh r0, [r4, #0xe]
|
|
subs r0, #8
|
|
strh r0, [r4, #0xe]
|
|
ldrh r0, [r4, #0x20]
|
|
adds r0, #1
|
|
strh r0, [r4, #0x20]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #9
|
|
ble _0800A6BE
|
|
movs r0, #0
|
|
strh r0, [r4, #0x20]
|
|
ldr r1, _0800A704 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800A6BE:
|
|
bl sub_A87C
|
|
ldr r1, _0800A708 @ =gMain
|
|
ldrh r2, [r4]
|
|
movs r3, #0xba
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #2]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xc]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xe]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x18]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #0x1a]
|
|
ldr r2, _0800A70C @ =0x000002F2
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A6FC: .4byte 0x0202ADA0
|
|
_0800A700: .4byte 0x0201A450
|
|
_0800A704: .4byte 0x0202C790
|
|
_0800A708: .4byte gMain
|
|
_0800A70C: .4byte 0x000002F2
|
|
|
|
thumb_func_start sub_A710
|
|
sub_A710: @ 0x0800A710
|
|
push {r4, r5, r6, lr}
|
|
ldr r5, _0800A7C8 @ =0x0202ADA0
|
|
ldrh r0, [r5, #0x24]
|
|
subs r0, #1
|
|
movs r6, #0
|
|
strh r0, [r5, #0x24]
|
|
ldr r2, _0800A7CC @ =0x0202BF10
|
|
ldrh r0, [r2]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800A742
|
|
ldrh r0, [r5]
|
|
subs r0, #1
|
|
strh r0, [r5]
|
|
ldrh r0, [r5, #2]
|
|
adds r0, #1
|
|
strh r0, [r5, #2]
|
|
ldr r1, _0800A7D0 @ =0x0201A450
|
|
ldrh r0, [r1]
|
|
adds r0, #2
|
|
strh r0, [r1]
|
|
ldrh r0, [r1, #2]
|
|
subs r0, #2
|
|
strh r0, [r1, #2]
|
|
_0800A742:
|
|
movs r1, #0
|
|
ldrsh r0, [r2, r1]
|
|
movs r1, #3
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _0800A776
|
|
ldr r0, _0800A7D4 @ =0x040000D4
|
|
movs r3, #0xa0
|
|
lsls r3, r3, #0x13
|
|
str r3, [r0]
|
|
ldr r4, _0800A7D8 @ =0x0202BE70
|
|
str r4, [r0, #4]
|
|
ldr r1, _0800A7DC @ =0x80000010
|
|
str r1, [r0, #8]
|
|
ldr r2, [r0, #8]
|
|
ldr r2, _0800A7E0 @ =0x05000040
|
|
str r2, [r0]
|
|
str r3, [r0, #4]
|
|
str r1, [r0, #8]
|
|
ldr r3, [r0, #8]
|
|
str r4, [r0]
|
|
str r2, [r0, #4]
|
|
str r1, [r0, #8]
|
|
ldr r0, [r0, #8]
|
|
_0800A776:
|
|
ldr r4, _0800A7E4 @ =gMain
|
|
ldrh r1, [r5]
|
|
movs r2, #0xba
|
|
lsls r2, r2, #2
|
|
adds r0, r4, r2
|
|
strh r1, [r0]
|
|
ldrh r1, [r5, #2]
|
|
adds r2, #2
|
|
adds r0, r4, r2
|
|
strh r1, [r0]
|
|
ldrh r1, [r5, #0x24]
|
|
adds r2, #0xa
|
|
adds r0, r4, r2
|
|
strh r1, [r0]
|
|
ldrh r1, [r5, #0x26]
|
|
adds r2, #2
|
|
adds r0, r4, r2
|
|
strh r1, [r0]
|
|
bl sub_A87C
|
|
movs r1, #0x20
|
|
ldrsh r0, [r5, r1]
|
|
cmp r0, #2
|
|
bne _0800A7F4
|
|
ldr r1, _0800A7D4 @ =0x040000D4
|
|
ldr r0, _0800A7E8 @ =0x03005C00
|
|
str r0, [r1]
|
|
ldr r0, _0800A7EC @ =0x0600E000
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800A7F0 @ =0x80000400
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
strh r6, [r5, #0xc]
|
|
strh r6, [r5, #0xe]
|
|
movs r2, #0xbb
|
|
lsls r2, r2, #2
|
|
adds r0, r4, r2
|
|
strh r6, [r0]
|
|
movs r1, #0
|
|
adds r2, #2
|
|
b _0800A818
|
|
.align 2, 0
|
|
_0800A7C8: .4byte 0x0202ADA0
|
|
_0800A7CC: .4byte 0x0202BF10
|
|
_0800A7D0: .4byte 0x0201A450
|
|
_0800A7D4: .4byte 0x040000D4
|
|
_0800A7D8: .4byte 0x0202BE70
|
|
_0800A7DC: .4byte 0x80000010
|
|
_0800A7E0: .4byte 0x05000040
|
|
_0800A7E4: .4byte gMain
|
|
_0800A7E8: .4byte 0x03005C00
|
|
_0800A7EC: .4byte 0x0600E000
|
|
_0800A7F0: .4byte 0x80000400
|
|
_0800A7F4:
|
|
cmp r0, #4
|
|
bne _0800A81C
|
|
ldr r1, _0800A840 @ =0x040000D4
|
|
ldr r0, _0800A844 @ =0x0201B180
|
|
str r0, [r1]
|
|
ldr r0, _0800A848 @ =0x0600E000
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800A84C @ =0x80000400
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
strh r6, [r5, #0xc]
|
|
strh r6, [r5, #0xe]
|
|
movs r1, #0xbb
|
|
lsls r1, r1, #2
|
|
adds r0, r4, r1
|
|
strh r6, [r0]
|
|
movs r1, #0
|
|
ldr r2, _0800A850 @ =0x000002EE
|
|
_0800A818:
|
|
adds r0, r4, r2
|
|
strh r1, [r0]
|
|
_0800A81C:
|
|
ldr r1, _0800A854 @ =0x0202ADA0
|
|
ldrh r0, [r1, #0x20]
|
|
adds r0, #1
|
|
strh r0, [r1, #0x20]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0x1d
|
|
ble _0800A838
|
|
movs r0, #0
|
|
strh r0, [r1, #0x20]
|
|
ldr r1, _0800A858 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #2
|
|
strb r0, [r1]
|
|
_0800A838:
|
|
pop {r4, r5, r6}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A840: .4byte 0x040000D4
|
|
_0800A844: .4byte 0x0201B180
|
|
_0800A848: .4byte 0x0600E000
|
|
_0800A84C: .4byte 0x80000400
|
|
_0800A850: .4byte 0x000002EE
|
|
_0800A854: .4byte 0x0202ADA0
|
|
_0800A858: .4byte 0x0202C790
|
|
|
|
thumb_func_start nullsub_8
|
|
nullsub_8: @ 0x0800A85C
|
|
bx lr
|
|
|
|
thumb_func_start sub_A860
|
|
sub_A860: @ 0x0800A860
|
|
push {lr}
|
|
bl sub_10480
|
|
bl sub_10544
|
|
ldr r1, _0800A878 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A878: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_A87C
|
|
sub_A87C: @ 0x0800A87C
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, r8
|
|
push {r7}
|
|
ldr r4, _0800A92C @ =gMain
|
|
ldrh r0, [r4, #0x38]
|
|
ldr r0, _0800A930 @ =0x00001F50
|
|
strh r0, [r4, #0x38]
|
|
ldrh r0, [r4, #0x3a]
|
|
ldr r0, _0800A934 @ =0x00000808
|
|
strh r0, [r4, #0x3a]
|
|
ldr r1, _0800A938 @ =0x04000050
|
|
ldrh r0, [r4, #0x38]
|
|
strh r0, [r1]
|
|
adds r1, #2
|
|
ldrh r0, [r4, #0x3a]
|
|
strh r0, [r1]
|
|
movs r0, #0xbe
|
|
lsls r0, r0, #2
|
|
adds r5, r4, r0
|
|
movs r0, #1
|
|
strh r0, [r5]
|
|
ldr r0, _0800A93C @ =gUnknown_086A795C
|
|
movs r1, #1
|
|
adds r2, r5, #0
|
|
bl LoadSpriteSets
|
|
ldrh r0, [r5]
|
|
cmp r0, #1
|
|
bne _0800A91C
|
|
ldr r0, _0800A940 @ =0x0201A450
|
|
ldrh r1, [r0]
|
|
strh r1, [r5, #2]
|
|
ldrh r0, [r0, #2]
|
|
strh r0, [r5, #4]
|
|
ldr r7, _0800A944 @ =gOamBuffer
|
|
movs r2, #0xd
|
|
rsbs r2, r2, #0
|
|
mov r8, r2
|
|
ldr r0, _0800A948 @ =0xFFFFFE00
|
|
mov ip, r0
|
|
movs r2, #0xc0
|
|
lsls r2, r2, #2
|
|
adds r4, r4, r2
|
|
movs r6, #3
|
|
_0800A8D4:
|
|
ldrh r2, [r4]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r7
|
|
ldrb r1, [r2, #5]
|
|
mov r0, r8
|
|
ands r0, r1
|
|
movs r1, #4
|
|
orrs r0, r1
|
|
strb r0, [r2, #5]
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
adds r3, r3, r7
|
|
movs r0, #2
|
|
ldrsh r1, [r4, r0]
|
|
movs r2, #2
|
|
ldrsh r0, [r5, r2]
|
|
adds r1, r1, r0
|
|
ldr r2, _0800A94C @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r7
|
|
ldrb r0, [r5, #4]
|
|
ldrb r2, [r4, #4]
|
|
adds r0, r0, r2
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
subs r6, #1
|
|
cmp r6, #0
|
|
bge _0800A8D4
|
|
_0800A91C:
|
|
movs r0, #0
|
|
strh r0, [r5]
|
|
pop {r3}
|
|
mov r8, r3
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A92C: .4byte gMain
|
|
_0800A930: .4byte 0x00001F50
|
|
_0800A934: .4byte 0x00000808
|
|
_0800A938: .4byte 0x04000050
|
|
_0800A93C: .4byte gUnknown_086A795C
|
|
_0800A940: .4byte 0x0201A450
|
|
_0800A944: .4byte gOamBuffer
|
|
_0800A948: .4byte 0xFFFFFE00
|
|
_0800A94C: .4byte 0x000001FF
|
|
|
|
thumb_func_start sub_A950
|
|
sub_A950: @ 0x0800A950
|
|
push {lr}
|
|
bl sub_518
|
|
ldr r1, _0800A964 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800A964: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_A968
|
|
sub_A968: @ 0x0800A968
|
|
push {r4, lr}
|
|
movs r2, #0x80
|
|
lsls r2, r2, #0x13
|
|
movs r0, #0
|
|
strh r0, [r2]
|
|
ldr r1, _0800AA50 @ =0x04000008
|
|
movs r3, #0xcc
|
|
lsls r3, r3, #8
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r3, #0x80
|
|
lsls r3, r3, #1
|
|
adds r1, r3, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800AA54 @ =0x0400000A
|
|
ldr r3, _0800AA58 @ =0x0000DA01
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r3, #0x80
|
|
lsls r3, r3, #2
|
|
adds r1, r3, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800AA5C @ =0x0400000E
|
|
ldr r3, _0800AA60 @ =0x00001E03
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r3, #0x80
|
|
lsls r3, r3, #4
|
|
adds r1, r3, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r0, _0800AA64 @ =0x040000D4
|
|
ldr r1, _0800AA68 @ =gUnknown_080E5F60
|
|
str r1, [r0]
|
|
ldr r1, _0800AA6C @ =0x06006000
|
|
str r1, [r0, #4]
|
|
ldr r3, _0800AA70 @ =0x80001000
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800AA74 @ =gUnknown_080E7F60
|
|
str r1, [r0]
|
|
ldr r1, _0800AA78 @ =0x0600D000
|
|
str r1, [r0, #4]
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800AA7C @ =gUnknown_080E1740
|
|
str r1, [r0]
|
|
ldr r1, _0800AA80 @ =0x0600F000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800AA84 @ =0x80000400
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800AA88 @ =gUnknown_080E1F40
|
|
str r1, [r0]
|
|
movs r1, #0xc0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800AA8C @ =0x80002000
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800AA90 @ =gUnknown_080E1540
|
|
str r1, [r0]
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800AA94 @ =0x80000030
|
|
str r1, [r0, #8]
|
|
ldr r0, [r0, #8]
|
|
ldr r4, _0800AA98 @ =gMain
|
|
ldrh r0, [r2]
|
|
strh r0, [r4, #0x16]
|
|
bl sub_AAA8
|
|
ldr r2, _0800AA9C @ =0x0202ADA0
|
|
ldrh r1, [r2]
|
|
movs r3, #0xba
|
|
lsls r3, r3, #2
|
|
adds r0, r4, r3
|
|
strh r1, [r0]
|
|
ldrh r1, [r2, #2]
|
|
adds r3, #2
|
|
adds r0, r4, r3
|
|
strh r1, [r0]
|
|
ldrh r1, [r2, #0xc]
|
|
adds r3, #2
|
|
adds r0, r4, r3
|
|
strh r1, [r0]
|
|
ldrh r1, [r2, #0xe]
|
|
adds r3, #2
|
|
adds r0, r4, r3
|
|
strh r1, [r0]
|
|
ldrh r1, [r2, #0x18]
|
|
adds r3, #6
|
|
adds r0, r4, r3
|
|
strh r1, [r0]
|
|
ldrh r0, [r2, #0x1a]
|
|
ldr r1, _0800AAA0 @ =0x000002F6
|
|
adds r4, r4, r1
|
|
strh r0, [r4]
|
|
bl sub_CBC
|
|
bl sub_10424
|
|
ldr r1, _0800AAA4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #2
|
|
strb r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800AA50: .4byte 0x04000008
|
|
_0800AA54: .4byte 0x0400000A
|
|
_0800AA58: .4byte 0x0000DA01
|
|
_0800AA5C: .4byte 0x0400000E
|
|
_0800AA60: .4byte 0x00001E03
|
|
_0800AA64: .4byte 0x040000D4
|
|
_0800AA68: .4byte gUnknown_080E5F60
|
|
_0800AA6C: .4byte 0x06006000
|
|
_0800AA70: .4byte 0x80001000
|
|
_0800AA74: .4byte gUnknown_080E7F60
|
|
_0800AA78: .4byte 0x0600D000
|
|
_0800AA7C: .4byte gUnknown_080E1740
|
|
_0800AA80: .4byte 0x0600F000
|
|
_0800AA84: .4byte 0x80000400
|
|
_0800AA88: .4byte gUnknown_080E1F40
|
|
_0800AA8C: .4byte 0x80002000
|
|
_0800AA90: .4byte gUnknown_080E1540
|
|
_0800AA94: .4byte 0x80000030
|
|
_0800AA98: .4byte gMain
|
|
_0800AA9C: .4byte 0x0202ADA0
|
|
_0800AAA0: .4byte 0x000002F6
|
|
_0800AAA4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_AAA8
|
|
sub_AAA8: @ 0x0800AAA8
|
|
ldr r0, _0800AAD8 @ =0x0202ADA0
|
|
movs r2, #0
|
|
movs r1, #0x1c
|
|
strh r1, [r0]
|
|
ldr r1, _0800AADC @ =0x0000FF20
|
|
strh r1, [r0, #2]
|
|
strh r2, [r0, #4]
|
|
movs r1, #0xf
|
|
strh r1, [r0, #6]
|
|
ldr r1, _0800AAE0 @ =0x0000FF64
|
|
strh r1, [r0, #0xc]
|
|
movs r1, #0xe0
|
|
strh r1, [r0, #0xe]
|
|
strh r2, [r0, #0x10]
|
|
ldr r1, _0800AAE4 @ =0x0000FFF1
|
|
strh r1, [r0, #0x12]
|
|
strh r2, [r0, #0x18]
|
|
strh r2, [r0, #0x1a]
|
|
strh r2, [r0, #0x20]
|
|
ldr r0, _0800AAE8 @ =0x0202BF10
|
|
strh r2, [r0]
|
|
ldr r0, _0800AAEC @ =0x0202A578
|
|
strh r2, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
_0800AAD8: .4byte 0x0202ADA0
|
|
_0800AADC: .4byte 0x0000FF20
|
|
_0800AAE0: .4byte 0x0000FF64
|
|
_0800AAE4: .4byte 0x0000FFF1
|
|
_0800AAE8: .4byte 0x0202BF10
|
|
_0800AAEC: .4byte 0x0202A578
|
|
|
|
thumb_func_start nullsub_9
|
|
nullsub_9: @ 0x0800AAF0
|
|
bx lr
|
|
|
|
thumb_func_start sub_AAF4
|
|
sub_AAF4: @ 0x0800AAF4
|
|
push {r4, lr}
|
|
ldr r3, _0800AB7C @ =0x0202ADA0
|
|
ldrh r4, [r3, #6]
|
|
ldrh r1, [r3, #2]
|
|
adds r0, r4, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r2, [r3, #0x12]
|
|
ldrh r1, [r3, #0xe]
|
|
adds r0, r2, r1
|
|
strh r0, [r3, #0xe]
|
|
ldrh r0, [r3, #0x18]
|
|
subs r0, #1
|
|
strh r0, [r3, #0x18]
|
|
ldrh r0, [r3]
|
|
subs r0, #1
|
|
strh r0, [r3]
|
|
ldrh r0, [r3, #0xc]
|
|
adds r0, #1
|
|
strh r0, [r3, #0xc]
|
|
ldr r0, _0800AB80 @ =0x0202BF10
|
|
ldrh r0, [r0]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800AB2E
|
|
subs r0, r4, #1
|
|
strh r0, [r3, #6]
|
|
adds r0, r2, #1
|
|
strh r0, [r3, #0x12]
|
|
_0800AB2E:
|
|
ldr r1, _0800AB84 @ =gMain
|
|
ldrh r2, [r3]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #2]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xc]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xe]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r0, [r3, #0x18]
|
|
movs r2, #0xbd
|
|
lsls r2, r2, #2
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
ldrh r0, [r3, #0x20]
|
|
adds r0, #1
|
|
strh r0, [r3, #0x20]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0x27
|
|
ble _0800AB76
|
|
movs r0, #0
|
|
strh r0, [r3, #0x20]
|
|
ldr r1, _0800AB88 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #2
|
|
strb r0, [r1]
|
|
_0800AB76:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800AB7C: .4byte 0x0202ADA0
|
|
_0800AB80: .4byte 0x0202BF10
|
|
_0800AB84: .4byte gMain
|
|
_0800AB88: .4byte 0x0202C790
|
|
|
|
thumb_func_start nullsub_10
|
|
nullsub_10: @ 0x0800AB8C
|
|
bx lr
|
|
|
|
thumb_func_start sub_AB90
|
|
sub_AB90: @ 0x0800AB8E
|
|
push {r4, lr}
|
|
ldr r3, _0800AC10 @ =0x0202ADA0
|
|
ldrh r4, [r3, #6]
|
|
ldrh r1, [r3, #2]
|
|
adds r0, r4, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r2, [r3, #0x12]
|
|
ldrh r1, [r3, #0xe]
|
|
adds r0, r2, r1
|
|
strh r0, [r3, #0xe]
|
|
ldrh r0, [r3, #0x18]
|
|
subs r0, #1
|
|
strh r0, [r3, #0x18]
|
|
ldrh r0, [r3]
|
|
subs r0, #1
|
|
strh r0, [r3]
|
|
ldrh r0, [r3, #0xc]
|
|
adds r0, #1
|
|
strh r0, [r3, #0xc]
|
|
ldr r0, _0800AC14 @ =0x0202BF10
|
|
ldrh r0, [r0]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800ABCA
|
|
subs r0, r4, #1
|
|
strh r0, [r3, #6]
|
|
adds r0, r2, #1
|
|
strh r0, [r3, #0x12]
|
|
_0800ABCA:
|
|
ldr r1, _0800AC18 @ =gMain
|
|
ldrh r2, [r3]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #2]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xc]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xe]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r0, [r3, #0x18]
|
|
movs r2, #0xbd
|
|
lsls r2, r2, #2
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
bl sub_10480
|
|
bl sub_10544
|
|
ldr r1, _0800AC1C @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800AC10: .4byte 0x0202ADA0
|
|
_0800AC14: .4byte 0x0202BF10
|
|
_0800AC18: .4byte gMain
|
|
_0800AC1C: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_AC20
|
|
sub_AC20: @ 0x0800AC20
|
|
push {lr}
|
|
bl sub_518
|
|
ldr r1, _0800AC34 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800AC34: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_AC38
|
|
sub_AC38: @ 0x0800AC38
|
|
push {r4, lr}
|
|
movs r2, #0x80
|
|
lsls r2, r2, #0x13
|
|
movs r1, #0x80
|
|
lsls r1, r1, #5
|
|
adds r0, r1, #0
|
|
strh r0, [r2]
|
|
ldr r1, _0800AD78 @ =0x04000008
|
|
movs r3, #0xc0
|
|
lsls r3, r3, #4
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #1
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800AD7C @ =0x0400000A
|
|
ldr r3, _0800AD80 @ =0x00004E01
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #2
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800AD84 @ =0x0400000C
|
|
ldr r3, _0800AD88 @ =0x00005C02
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #3
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800AD8C @ =0x0400000E
|
|
ldr r3, _0800AD90 @ =0x00001E03
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #4
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r0, _0800AD94 @ =0x040000D4
|
|
ldr r1, _0800AD98 @ =gUnknown_080F1980
|
|
str r1, [r0]
|
|
ldr r1, _0800AD9C @ =0x06006000
|
|
str r1, [r0, #4]
|
|
ldr r3, _0800ADA0 @ =0x80000400
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800ADA4 @ =gUnknown_080EB160
|
|
str r1, [r0]
|
|
ldr r1, _0800ADA8 @ =0x06007000
|
|
str r1, [r0, #4]
|
|
ldr r2, _0800ADAC @ =0x80000800
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800ADB0 @ =gUnknown_080EA160
|
|
str r1, [r0]
|
|
ldr r1, _0800ADB4 @ =0x0600E000
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800ADB8 @ =gUnknown_080EC160
|
|
str r1, [r0]
|
|
ldr r1, _0800ADBC @ =0x0600F000
|
|
str r1, [r0, #4]
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800ADC0 @ =gUnknown_080EC960
|
|
str r1, [r0]
|
|
movs r1, #0xc0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800ADC4 @ =0x80001400
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800ADC8 @ =gUnknown_080BD4C0
|
|
str r1, [r0]
|
|
ldr r1, _0800ADCC @ =0x03000000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800ADD0 @ =0x80002000
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r3, _0800ADD4 @ =gUnknown_080E9F60
|
|
str r3, [r0]
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r2, _0800ADD8 @ =0x800000C0
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800ADDC @ =gUnknown_080F2180
|
|
str r1, [r0]
|
|
ldr r1, _0800ADE0 @ =0x06010000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800ADE4 @ =0x80001800
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
str r3, [r0]
|
|
ldr r1, _0800ADE8 @ =0x05000200
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r0, [r0, #8]
|
|
bl sub_ADFC
|
|
bl sub_B0E8
|
|
ldr r1, _0800ADEC @ =gMain
|
|
ldr r2, _0800ADF0 @ =0x0202ADA0
|
|
ldrh r3, [r2]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #2]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0xc]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0xe]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x18]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x1a]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x24]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r0, [r2, #0x26]
|
|
ldr r2, _0800ADF4 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
bl sub_CBC
|
|
bl sub_10424
|
|
ldr r1, _0800ADF8 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800AD78: .4byte 0x04000008
|
|
_0800AD7C: .4byte 0x0400000A
|
|
_0800AD80: .4byte 0x00004E01
|
|
_0800AD84: .4byte 0x0400000C
|
|
_0800AD88: .4byte 0x00005C02
|
|
_0800AD8C: .4byte 0x0400000E
|
|
_0800AD90: .4byte 0x00001E03
|
|
_0800AD94: .4byte 0x040000D4
|
|
_0800AD98: .4byte gUnknown_080F1980
|
|
_0800AD9C: .4byte 0x06006000
|
|
_0800ADA0: .4byte 0x80000400
|
|
_0800ADA4: .4byte gUnknown_080EB160
|
|
_0800ADA8: .4byte 0x06007000
|
|
_0800ADAC: .4byte 0x80000800
|
|
_0800ADB0: .4byte gUnknown_080EA160
|
|
_0800ADB4: .4byte 0x0600E000
|
|
_0800ADB8: .4byte gUnknown_080EC160
|
|
_0800ADBC: .4byte 0x0600F000
|
|
_0800ADC0: .4byte gUnknown_080EC960
|
|
_0800ADC4: .4byte 0x80001400
|
|
_0800ADC8: .4byte gUnknown_080BD4C0
|
|
_0800ADCC: .4byte 0x03000000
|
|
_0800ADD0: .4byte 0x80002000
|
|
_0800ADD4: .4byte gUnknown_080E9F60
|
|
_0800ADD8: .4byte 0x800000C0
|
|
_0800ADDC: .4byte gUnknown_080F2180
|
|
_0800ADE0: .4byte 0x06010000
|
|
_0800ADE4: .4byte 0x80001800
|
|
_0800ADE8: .4byte 0x05000200
|
|
_0800ADEC: .4byte gMain
|
|
_0800ADF0: .4byte 0x0202ADA0
|
|
_0800ADF4: .4byte 0x000002F6
|
|
_0800ADF8: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_ADFC
|
|
sub_ADFC: @ 0x0800ADFC
|
|
push {r4, r5, lr}
|
|
ldr r1, _0800AE54 @ =0x0201A450
|
|
movs r5, #0
|
|
movs r2, #0xb4
|
|
strh r2, [r1, #0x10]
|
|
ldr r0, _0800AE58 @ =0x0000FFBC
|
|
strh r0, [r1, #0x12]
|
|
strh r2, [r1]
|
|
strh r0, [r1, #2]
|
|
movs r0, #0x80
|
|
strh r0, [r1, #0x20]
|
|
movs r0, #0x88
|
|
strh r0, [r1, #0x22]
|
|
ldr r4, _0800AE5C @ =0x0202ADA0
|
|
ldr r0, _0800AE60 @ =0x0000FF58
|
|
strh r0, [r4]
|
|
adds r0, #0x40
|
|
strh r0, [r4, #2]
|
|
strh r5, [r4, #8]
|
|
strh r5, [r4, #0xa]
|
|
strh r5, [r4, #4]
|
|
ldr r0, _0800AE64 @ =0x03002300
|
|
ldr r1, _0800AE68 @ =0x06002EE0
|
|
movs r2, #8
|
|
movs r3, #8
|
|
bl sub_10708
|
|
movs r0, #0xa5
|
|
strh r0, [r4, #0xc]
|
|
strh r5, [r4, #0xe]
|
|
strh r5, [r4, #0x14]
|
|
movs r0, #0xa0
|
|
strh r0, [r4, #0x18]
|
|
strh r5, [r4, #0x1a]
|
|
strh r5, [r4, #0x20]
|
|
strh r5, [r4, #0x24]
|
|
strh r5, [r4, #0x26]
|
|
ldr r0, _0800AE6C @ =0x0202BF10
|
|
strh r5, [r0]
|
|
ldr r0, _0800AE70 @ =0x0202A578
|
|
strh r5, [r0]
|
|
pop {r4, r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800AE54: .4byte 0x0201A450
|
|
_0800AE58: .4byte 0x0000FFBC
|
|
_0800AE5C: .4byte 0x0202ADA0
|
|
_0800AE60: .4byte 0x0000FF58
|
|
_0800AE64: .4byte 0x03002300
|
|
_0800AE68: .4byte 0x06002EE0
|
|
_0800AE6C: .4byte 0x0202BF10
|
|
_0800AE70: .4byte 0x0202A578
|
|
|
|
thumb_func_start sub_AE74
|
|
sub_AE74: @ 0x0800AE74
|
|
push {r4, lr}
|
|
ldr r1, _0800AF5C @ =0x0201A450
|
|
ldrh r0, [r1, #0x10]
|
|
subs r0, #0x10
|
|
strh r0, [r1, #0x10]
|
|
ldrh r0, [r1, #0x12]
|
|
adds r0, #0xa
|
|
strh r0, [r1, #0x12]
|
|
ldrh r0, [r1]
|
|
subs r0, #0x10
|
|
strh r0, [r1]
|
|
ldrh r0, [r1, #2]
|
|
adds r0, #0xa
|
|
strh r0, [r1, #2]
|
|
ldrh r0, [r1, #0x20]
|
|
adds r0, #5
|
|
strh r0, [r1, #0x20]
|
|
ldrh r0, [r1, #0x22]
|
|
subs r0, #3
|
|
strh r0, [r1, #0x22]
|
|
ldr r4, _0800AF60 @ =0x0202ADA0
|
|
ldrh r0, [r4, #0xc]
|
|
subs r0, #0x10
|
|
strh r0, [r4, #0xc]
|
|
ldrh r0, [r4, #0xe]
|
|
adds r0, #1
|
|
strh r0, [r4, #0xe]
|
|
ldrh r0, [r4, #0x18]
|
|
subs r0, #0x10
|
|
strh r0, [r4, #0x18]
|
|
ldrh r1, [r4, #4]
|
|
ldrh r2, [r4]
|
|
adds r0, r1, r2
|
|
strh r0, [r4]
|
|
ldrh r0, [r4, #2]
|
|
adds r0, #9
|
|
strh r0, [r4, #2]
|
|
adds r1, #1
|
|
strh r1, [r4, #4]
|
|
ldrh r0, [r4, #0xa]
|
|
adds r0, #1
|
|
strh r0, [r4, #0xa]
|
|
ldr r2, _0800AF64 @ =gUnknown_086A79FC
|
|
movs r3, #8
|
|
ldrsh r1, [r4, r3]
|
|
lsls r1, r1, #2
|
|
adds r1, r1, r2
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
movs r2, #2
|
|
ldrsh r1, [r1, r2]
|
|
cmp r0, r1
|
|
ble _0800AF02
|
|
ldrh r0, [r4, #8]
|
|
adds r0, #1
|
|
strh r0, [r4, #8]
|
|
ldr r1, _0800AF68 @ =gUnknown_086A7A1C
|
|
movs r3, #8
|
|
ldrsh r0, [r4, r3]
|
|
lsls r0, r0, #1
|
|
adds r0, r0, r1
|
|
movs r1, #0
|
|
ldrsh r0, [r0, r1]
|
|
lsls r0, r0, #1
|
|
ldr r1, _0800AF6C @ =0x03000000
|
|
adds r0, r0, r1
|
|
ldr r1, _0800AF70 @ =0x06002EE0
|
|
movs r2, #8
|
|
movs r3, #8
|
|
bl sub_10708
|
|
_0800AF02:
|
|
bl sub_B0E8
|
|
ldr r1, _0800AF74 @ =gMain
|
|
ldrh r2, [r4]
|
|
movs r3, #0xba
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #2]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xc]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xe]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x18]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #0x1a]
|
|
ldr r2, _0800AF78 @ =0x000002F2
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
ldrh r0, [r4, #0x20]
|
|
adds r0, #1
|
|
strh r0, [r4, #0x20]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #9
|
|
ble _0800AF54
|
|
movs r0, #0
|
|
strh r0, [r4, #0x20]
|
|
ldr r1, _0800AF7C @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800AF54:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800AF5C: .4byte 0x0201A450
|
|
_0800AF60: .4byte 0x0202ADA0
|
|
_0800AF64: .4byte gUnknown_086A79FC
|
|
_0800AF68: .4byte gUnknown_086A7A1C
|
|
_0800AF6C: .4byte 0x03000000
|
|
_0800AF70: .4byte 0x06002EE0
|
|
_0800AF74: .4byte gMain
|
|
_0800AF78: .4byte 0x000002F2
|
|
_0800AF7C: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_AF80
|
|
sub_AF80: @ 0x0800AF80
|
|
push {r4, lr}
|
|
ldr r3, _0800B064 @ =0x0202ADA0
|
|
ldrh r0, [r3, #0xa]
|
|
adds r0, #1
|
|
strh r0, [r3, #0xa]
|
|
ldr r2, _0800B068 @ =gUnknown_086A79FC
|
|
movs r4, #8
|
|
ldrsh r1, [r3, r4]
|
|
lsls r1, r1, #2
|
|
adds r1, r1, r2
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
movs r2, #2
|
|
ldrsh r1, [r1, r2]
|
|
cmp r0, r1
|
|
ble _0800AFCC
|
|
ldrh r1, [r3, #8]
|
|
movs r4, #8
|
|
ldrsh r0, [r3, r4]
|
|
cmp r0, #6
|
|
bgt _0800AFCC
|
|
adds r0, r1, #1
|
|
strh r0, [r3, #8]
|
|
ldr r1, _0800B06C @ =gUnknown_086A7A1C
|
|
movs r2, #8
|
|
ldrsh r0, [r3, r2]
|
|
lsls r0, r0, #1
|
|
adds r0, r0, r1
|
|
movs r4, #0
|
|
ldrsh r0, [r0, r4]
|
|
lsls r0, r0, #1
|
|
ldr r1, _0800B070 @ =0x03000000
|
|
adds r0, r0, r1
|
|
ldr r1, _0800B074 @ =0x06002EE0
|
|
movs r2, #8
|
|
movs r3, #8
|
|
bl sub_10708
|
|
_0800AFCC:
|
|
bl sub_B0E8
|
|
ldr r3, _0800B064 @ =0x0202ADA0
|
|
ldrh r0, [r3, #0x24]
|
|
adds r0, #1
|
|
strh r0, [r3, #0x24]
|
|
ldr r0, _0800B078 @ =0x0202BF10
|
|
ldrh r0, [r0]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800AFFE
|
|
ldr r1, _0800B07C @ =0x0201A450
|
|
ldrh r0, [r1, #0x10]
|
|
subs r0, #1
|
|
strh r0, [r1, #0x10]
|
|
ldrh r0, [r1, #0x12]
|
|
adds r0, #1
|
|
strh r0, [r1, #0x12]
|
|
ldrh r0, [r1]
|
|
subs r0, #2
|
|
strh r0, [r1]
|
|
ldrh r0, [r1, #2]
|
|
adds r0, #2
|
|
strh r0, [r1, #2]
|
|
_0800AFFE:
|
|
ldr r1, _0800B080 @ =gMain
|
|
ldrh r2, [r3]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #2]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xc]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xe]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0x18]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0x1a]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0x24]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r0, [r3, #0x26]
|
|
ldr r2, _0800B084 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
ldrh r0, [r3, #0x2c]
|
|
adds r0, #1
|
|
strh r0, [r3, #0x2c]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0x1d
|
|
ble _0800B05C
|
|
movs r0, #0
|
|
strh r0, [r3, #0x2c]
|
|
ldr r1, _0800B088 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #2
|
|
strb r0, [r1]
|
|
_0800B05C:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800B064: .4byte 0x0202ADA0
|
|
_0800B068: .4byte gUnknown_086A79FC
|
|
_0800B06C: .4byte gUnknown_086A7A1C
|
|
_0800B070: .4byte 0x03000000
|
|
_0800B074: .4byte 0x06002EE0
|
|
_0800B078: .4byte 0x0202BF10
|
|
_0800B07C: .4byte 0x0201A450
|
|
_0800B080: .4byte gMain
|
|
_0800B084: .4byte 0x000002F6
|
|
_0800B088: .4byte 0x0202C790
|
|
|
|
thumb_func_start nullsub_11
|
|
nullsub_11: @ 0x0800B08C
|
|
bx lr
|
|
|
|
thumb_func_start sub_B090
|
|
sub_B090: @ 0x0800B090
|
|
push {lr}
|
|
sub sp, #8
|
|
bl sub_10480
|
|
bl sub_578
|
|
movs r2, #0
|
|
str r2, [sp]
|
|
ldr r1, _0800B0D4 @ =0x040000D4
|
|
mov r0, sp
|
|
str r0, [r1]
|
|
movs r0, #0xe0
|
|
lsls r0, r0, #0x13
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800B0D8 @ =0x85000100
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
add r0, sp, #4
|
|
strh r2, [r0]
|
|
str r0, [r1]
|
|
ldr r0, _0800B0DC @ =0x06010000
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800B0E0 @ =0x81002800
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
bl sub_10544
|
|
ldr r1, _0800B0E4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
add sp, #8
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800B0D4: .4byte 0x040000D4
|
|
_0800B0D8: .4byte 0x85000100
|
|
_0800B0DC: .4byte 0x06010000
|
|
_0800B0E0: .4byte 0x81002800
|
|
_0800B0E4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_B0E8
|
|
sub_B0E8: @ 0x0800B0E8
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sl
|
|
mov r6, sb
|
|
mov r5, r8
|
|
push {r5, r6, r7}
|
|
ldr r4, _0800B2C0 @ =gMain
|
|
ldrh r0, [r4, #0x38]
|
|
movs r0, #0xf1
|
|
lsls r0, r0, #4
|
|
strh r0, [r4, #0x38]
|
|
ldrh r0, [r4, #0x3a]
|
|
ldr r0, _0800B2C4 @ =0x00000808
|
|
strh r0, [r4, #0x3a]
|
|
ldr r1, _0800B2C8 @ =0x04000050
|
|
ldrh r0, [r4, #0x38]
|
|
strh r0, [r1]
|
|
adds r1, #2
|
|
ldrh r0, [r4, #0x3a]
|
|
strh r0, [r1]
|
|
movs r0, #0xec
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r4
|
|
mov sl, r0
|
|
movs r1, #0xbe
|
|
lsls r1, r1, #2
|
|
adds r1, r1, r4
|
|
mov r8, r1
|
|
movs r2, #0x8d
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r4
|
|
mov sb, r2
|
|
movs r0, #1
|
|
mov r7, sl
|
|
strh r0, [r7]
|
|
strh r0, [r1]
|
|
strh r0, [r2]
|
|
ldr r0, _0800B2CC @ =gUnknown_086A79EC
|
|
movs r1, #3
|
|
mov r2, r8
|
|
bl LoadSpriteSets
|
|
ldrh r0, [r7]
|
|
cmp r0, #1
|
|
bne _0800B1B8
|
|
ldr r0, _0800B2D0 @ =0x0201A450
|
|
ldrh r1, [r0]
|
|
strh r1, [r7, #2]
|
|
ldrh r0, [r0, #2]
|
|
strh r0, [r7, #4]
|
|
ldr r6, _0800B2D4 @ =gOamBuffer
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
mov ip, r0
|
|
movs r1, #0xee
|
|
lsls r1, r1, #2
|
|
adds r4, r4, r1
|
|
movs r5, #3
|
|
_0800B15A:
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
ldrb r2, [r1, #1]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
movs r2, #4
|
|
orrs r0, r2
|
|
strb r0, [r1, #1]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
ldrb r2, [r1, #5]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
movs r7, #4
|
|
orrs r0, r7
|
|
strb r0, [r1, #5]
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
adds r3, r3, r6
|
|
movs r0, #2
|
|
ldrsh r1, [r4, r0]
|
|
mov r2, sl
|
|
movs r7, #2
|
|
ldrsh r0, [r2, r7]
|
|
adds r1, r1, r0
|
|
ldr r2, _0800B2D8 @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
ldr r0, _0800B2DC @ =0xFFFFFE00
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
mov r7, sl
|
|
ldrb r0, [r7, #4]
|
|
ldrb r2, [r4, #4]
|
|
adds r0, r0, r2
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
subs r5, #1
|
|
cmp r5, #0
|
|
bge _0800B15A
|
|
_0800B1B8:
|
|
mov r7, r8
|
|
ldrh r0, [r7]
|
|
cmp r0, #1
|
|
bne _0800B234
|
|
ldr r0, _0800B2D0 @ =0x0201A450
|
|
ldrh r1, [r0, #0x10]
|
|
strh r1, [r7, #2]
|
|
ldrh r0, [r0, #0x12]
|
|
strh r0, [r7, #4]
|
|
ldr r6, _0800B2D4 @ =gOamBuffer
|
|
ldr r0, _0800B2DC @ =0xFFFFFE00
|
|
mov ip, r0
|
|
mov r4, r8
|
|
adds r4, #8
|
|
movs r5, #3
|
|
_0800B1D6:
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
ldrb r2, [r1, #1]
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
ands r0, r2
|
|
strb r0, [r1, #1]
|
|
ldrh r2, [r4]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r6
|
|
ldrb r1, [r2, #5]
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
ands r0, r1
|
|
movs r1, #4
|
|
orrs r0, r1
|
|
strb r0, [r2, #5]
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
adds r3, r3, r6
|
|
movs r2, #2
|
|
ldrsh r1, [r4, r2]
|
|
mov r7, r8
|
|
movs r2, #2
|
|
ldrsh r0, [r7, r2]
|
|
adds r1, r1, r0
|
|
ldr r7, _0800B2D8 @ =0x000001FF
|
|
adds r0, r7, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
mov r2, r8
|
|
ldrb r0, [r2, #4]
|
|
ldrb r7, [r4, #4]
|
|
adds r0, r0, r7
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
subs r5, #1
|
|
cmp r5, #0
|
|
bge _0800B1D6
|
|
_0800B234:
|
|
mov r1, sb
|
|
ldrh r0, [r1]
|
|
cmp r0, #1
|
|
bne _0800B2A2
|
|
ldr r0, _0800B2D0 @ =0x0201A450
|
|
ldrh r1, [r0, #0x20]
|
|
mov r2, sb
|
|
strh r1, [r2, #2]
|
|
ldrh r0, [r0, #0x22]
|
|
strh r0, [r2, #4]
|
|
ldr r6, _0800B2D4 @ =gOamBuffer
|
|
movs r7, #0xd
|
|
rsbs r7, r7, #0
|
|
mov ip, r7
|
|
mov r4, sb
|
|
adds r4, #8
|
|
movs r5, #7
|
|
_0800B256:
|
|
ldrh r2, [r4]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r6
|
|
ldrb r1, [r2, #5]
|
|
mov r0, ip
|
|
ands r0, r1
|
|
movs r1, #8
|
|
orrs r0, r1
|
|
strb r0, [r2, #5]
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
adds r3, r3, r6
|
|
movs r0, #2
|
|
ldrsh r1, [r4, r0]
|
|
mov r2, sb
|
|
movs r7, #2
|
|
ldrsh r0, [r2, r7]
|
|
adds r1, r1, r0
|
|
ldr r2, _0800B2D8 @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
ldr r0, _0800B2DC @ =0xFFFFFE00
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
mov r7, sb
|
|
ldrb r0, [r7, #4]
|
|
ldrb r2, [r4, #4]
|
|
adds r0, r0, r2
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
subs r5, #1
|
|
cmp r5, #0
|
|
bge _0800B256
|
|
_0800B2A2:
|
|
movs r0, #0
|
|
mov r7, sl
|
|
strh r0, [r7]
|
|
mov r1, r8
|
|
strh r0, [r1]
|
|
mov r2, sb
|
|
strh r0, [r2]
|
|
pop {r3, r4, r5}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
mov sl, r5
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800B2C0: .4byte gMain
|
|
_0800B2C4: .4byte 0x00000808
|
|
_0800B2C8: .4byte 0x04000050
|
|
_0800B2CC: .4byte gUnknown_086A79EC
|
|
_0800B2D0: .4byte 0x0201A450
|
|
_0800B2D4: .4byte gOamBuffer
|
|
_0800B2D8: .4byte 0x000001FF
|
|
_0800B2DC: .4byte 0xFFFFFE00
|
|
|
|
thumb_func_start sub_B2E0
|
|
sub_B2E0: @ 0x0800B2E0
|
|
push {lr}
|
|
bl sub_518
|
|
ldr r1, _0800B2F4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800B2F4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_B2F8
|
|
sub_B2F8: @ 0x0800B2F8
|
|
push {r4, lr}
|
|
movs r2, #0x80
|
|
lsls r2, r2, #0x13
|
|
movs r1, #0x80
|
|
lsls r1, r1, #5
|
|
adds r0, r1, #0
|
|
strh r0, [r2]
|
|
ldr r1, _0800B428 @ =0x04000008
|
|
movs r3, #0xf0
|
|
lsls r3, r3, #4
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #1
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800B42C @ =0x0400000A
|
|
ldr r3, _0800B430 @ =0x0000DA01
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #2
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800B434 @ =0x0400000C
|
|
ldr r3, _0800B438 @ =0x00001E02
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #3
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800B43C @ =0x0400000E
|
|
ldr r3, _0800B440 @ =0x00001F03
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r4, #0x80
|
|
lsls r4, r4, #4
|
|
adds r1, r4, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r0, _0800B444 @ =0x040000D4
|
|
ldr r1, _0800B448 @ =gUnknown_080FD7C0
|
|
str r1, [r0]
|
|
ldr r1, _0800B44C @ =0x06007800
|
|
str r1, [r0, #4]
|
|
ldr r2, _0800B450 @ =0x80000400
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800B454 @ =gUnknown_080FDFC0
|
|
str r1, [r0]
|
|
ldr r1, _0800B458 @ =0x0600D000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800B45C @ =0x80001000
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800B460 @ =gUnknown_080FCFC0
|
|
str r1, [r0]
|
|
ldr r1, _0800B464 @ =0x0600F000
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800B468 @ =gUnknown_080F63A0
|
|
str r1, [r0]
|
|
ldr r1, _0800B46C @ =0x0600F800
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800B470 @ =gUnknown_080F6BA0
|
|
str r1, [r0]
|
|
movs r1, #0xc0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800B474 @ =0x80003200
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r3, _0800B478 @ =gUnknown_080F61A0
|
|
str r3, [r0]
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r2, _0800B47C @ =0x80000040
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800B480 @ =gUnknown_080FFFC0
|
|
str r1, [r0]
|
|
ldr r1, _0800B484 @ =0x06010000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800B488 @ =0x80000800
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
str r3, [r0]
|
|
ldr r1, _0800B48C @ =0x05000200
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r0, [r0, #8]
|
|
bl sub_B4A0
|
|
ldr r1, _0800B490 @ =gMain
|
|
ldr r2, _0800B494 @ =0x0202ADA0
|
|
ldrh r3, [r2]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #2]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0xc]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0xe]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x18]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x1a]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r3, [r2, #0x24]
|
|
adds r4, #2
|
|
adds r0, r1, r4
|
|
strh r3, [r0]
|
|
ldrh r0, [r2, #0x26]
|
|
ldr r2, _0800B498 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
bl sub_CBC
|
|
bl sub_10424
|
|
ldr r1, _0800B49C @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800B428: .4byte 0x04000008
|
|
_0800B42C: .4byte 0x0400000A
|
|
_0800B430: .4byte 0x0000DA01
|
|
_0800B434: .4byte 0x0400000C
|
|
_0800B438: .4byte 0x00001E02
|
|
_0800B43C: .4byte 0x0400000E
|
|
_0800B440: .4byte 0x00001F03
|
|
_0800B444: .4byte 0x040000D4
|
|
_0800B448: .4byte gUnknown_080FD7C0
|
|
_0800B44C: .4byte 0x06007800
|
|
_0800B450: .4byte 0x80000400
|
|
_0800B454: .4byte gUnknown_080FDFC0
|
|
_0800B458: .4byte 0x0600D000
|
|
_0800B45C: .4byte 0x80001000
|
|
_0800B460: .4byte gUnknown_080FCFC0
|
|
_0800B464: .4byte 0x0600F000
|
|
_0800B468: .4byte gUnknown_080F63A0
|
|
_0800B46C: .4byte 0x0600F800
|
|
_0800B470: .4byte gUnknown_080F6BA0
|
|
_0800B474: .4byte 0x80003200
|
|
_0800B478: .4byte gUnknown_080F61A0
|
|
_0800B47C: .4byte 0x80000040
|
|
_0800B480: .4byte gUnknown_080FFFC0
|
|
_0800B484: .4byte 0x06010000
|
|
_0800B488: .4byte 0x80000800
|
|
_0800B48C: .4byte 0x05000200
|
|
_0800B490: .4byte gMain
|
|
_0800B494: .4byte 0x0202ADA0
|
|
_0800B498: .4byte 0x000002F6
|
|
_0800B49C: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_B4A0
|
|
sub_B4A0: @ 0x0800B4A0
|
|
push {r4, r5, r6, r7, lr}
|
|
ldr r1, _0800B540 @ =0x0202ADA0
|
|
movs r3, #0
|
|
movs r4, #0x1e
|
|
strh r4, [r1, #0xc]
|
|
ldr r0, _0800B544 @ =0x0000FF6A
|
|
strh r0, [r1, #0xe]
|
|
movs r0, #1
|
|
strh r0, [r1, #0x14]
|
|
ldr r0, _0800B548 @ =0x0000FFFE
|
|
strh r0, [r1]
|
|
subs r0, #3
|
|
strh r0, [r1, #2]
|
|
strh r3, [r1, #4]
|
|
movs r2, #8
|
|
strh r2, [r1, #6]
|
|
subs r0, #0x6b
|
|
strh r0, [r1, #0x18]
|
|
adds r0, #0x44
|
|
strh r0, [r1, #0x1a]
|
|
strh r2, [r1, #0x1c]
|
|
strh r3, [r1, #0x1e]
|
|
strh r3, [r1, #0x24]
|
|
strh r3, [r1, #0x26]
|
|
ldr r3, _0800B54C @ =0x0201A450
|
|
movs r0, #0x32
|
|
strh r0, [r3]
|
|
movs r1, #0x3c
|
|
strh r1, [r3, #2]
|
|
movs r0, #0x50
|
|
strh r0, [r3, #0x10]
|
|
strh r1, [r3, #0x12]
|
|
movs r0, #0x8c
|
|
strh r0, [r3, #0x20]
|
|
movs r2, #0x64
|
|
strh r2, [r3, #0x22]
|
|
movs r0, #0xc8
|
|
strh r0, [r3, #0x30]
|
|
movs r0, #0x5a
|
|
strh r0, [r3, #0x32]
|
|
adds r0, r3, #0
|
|
adds r0, #0x40
|
|
strh r1, [r0]
|
|
adds r0, #2
|
|
strh r4, [r0]
|
|
adds r1, r3, #0
|
|
adds r1, #0x50
|
|
movs r0, #0x96
|
|
strh r0, [r1]
|
|
adds r0, r3, #0
|
|
adds r0, #0x52
|
|
strh r2, [r0]
|
|
ldr r5, _0800B550 @ =0x0202C548
|
|
ldr r6, _0800B554 @ =0x0202BF10
|
|
ldr r7, _0800B558 @ =0x0202A578
|
|
ldr r0, _0800B55C @ =0x0202BEB4
|
|
mov ip, r0
|
|
movs r4, #0
|
|
movs r2, #0
|
|
adds r0, r3, #0
|
|
adds r0, #8
|
|
movs r1, #5
|
|
_0800B51C:
|
|
strh r2, [r0]
|
|
strh r2, [r0, #2]
|
|
strb r4, [r0, #4]
|
|
adds r0, #0x10
|
|
subs r1, #1
|
|
cmp r1, #0
|
|
bge _0800B51C
|
|
movs r0, #0
|
|
strb r0, [r5]
|
|
movs r0, #0
|
|
strh r0, [r6]
|
|
strh r0, [r7]
|
|
mov r1, ip
|
|
strb r0, [r1]
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800B540: .4byte 0x0202ADA0
|
|
_0800B544: .4byte 0x0000FF6A
|
|
_0800B548: .4byte 0x0000FFFE
|
|
_0800B54C: .4byte 0x0201A450
|
|
_0800B550: .4byte 0x0202C548
|
|
_0800B554: .4byte 0x0202BF10
|
|
_0800B558: .4byte 0x0202A578
|
|
_0800B55C: .4byte 0x0202BEB4
|
|
|
|
thumb_func_start sub_B560
|
|
sub_B560: @ 0x0800B560
|
|
push {r4, r5, lr}
|
|
ldr r2, _0800B694 @ =0x0202ADA0
|
|
ldr r3, _0800B698 @ =gUnknown_086A7AC0
|
|
ldr r1, _0800B69C @ =0x0202C548
|
|
movs r0, #0
|
|
ldrsb r0, [r1, r0]
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r3
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
ldrh r4, [r2, #0xc]
|
|
adds r0, r0, r4
|
|
strh r0, [r2, #0xc]
|
|
movs r0, #0
|
|
ldrsb r0, [r1, r0]
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r3
|
|
ldrb r0, [r0, #1]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
ldrh r5, [r2, #0xe]
|
|
adds r0, r0, r5
|
|
strh r0, [r2, #0xe]
|
|
ldr r3, _0800B6A0 @ =gUnknown_086A7AE4
|
|
ldr r4, _0800B6A4 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r4, r1]
|
|
adds r0, r0, r3
|
|
ldrb r1, [r0]
|
|
movs r0, #0x10
|
|
ands r0, r1
|
|
adds r5, r2, #0
|
|
cmp r0, #0
|
|
beq _0800B5C2
|
|
ldrh r0, [r5, #6]
|
|
ldrh r2, [r5, #2]
|
|
adds r1, r0, r2
|
|
strh r1, [r5, #2]
|
|
subs r0, #2
|
|
strh r0, [r5, #6]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
movs r1, #0xa
|
|
rsbs r1, r1, #0
|
|
cmp r0, r1
|
|
bgt _0800B5C2
|
|
movs r0, #8
|
|
strh r0, [r5, #6]
|
|
_0800B5C2:
|
|
movs r1, #0
|
|
ldrsh r0, [r4, r1]
|
|
adds r0, r0, r3
|
|
ldrb r1, [r0]
|
|
movs r0, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _0800B5EE
|
|
ldrh r0, [r5, #0x1c]
|
|
ldrh r2, [r5, #0x18]
|
|
adds r1, r0, r2
|
|
strh r1, [r5, #0x18]
|
|
subs r0, #2
|
|
strh r0, [r5, #0x1c]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
movs r1, #0xa
|
|
rsbs r1, r1, #0
|
|
cmp r0, r1
|
|
bgt _0800B5EE
|
|
movs r0, #8
|
|
strh r0, [r5, #0x1c]
|
|
_0800B5EE:
|
|
ldr r1, _0800B6A8 @ =gMain
|
|
ldrh r2, [r5]
|
|
movs r3, #0xba
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r5, #2]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r5, #0xc]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r5, #0xe]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r5, #0x18]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r5, #0x1a]
|
|
ldr r5, _0800B6AC @ =0x000002F2
|
|
adds r1, r1, r5
|
|
strh r0, [r1]
|
|
ldr r1, _0800B6B0 @ =gUnknown_086A7B34
|
|
ldr r3, _0800B6B4 @ =0x0202BEB4
|
|
movs r2, #0
|
|
ldrsb r2, [r3, r2]
|
|
lsls r0, r2, #2
|
|
adds r0, r0, r1
|
|
movs r5, #0
|
|
ldrsh r1, [r4, r5]
|
|
ldrb r0, [r0, #2]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
cmp r1, r0
|
|
bne _0800B64C
|
|
ldr r1, _0800B6B8 @ =0x0201A450
|
|
lsls r0, r2, #4
|
|
adds r0, r0, r1
|
|
movs r1, #1
|
|
strb r1, [r0, #0xc]
|
|
ldrb r0, [r3]
|
|
adds r0, #1
|
|
strb r0, [r3]
|
|
_0800B64C:
|
|
bl sub_B7F8
|
|
ldr r4, _0800B6BC @ =0x0202A578
|
|
ldrh r0, [r4]
|
|
adds r0, #1
|
|
strh r0, [r4]
|
|
ldr r2, _0800B698 @ =gUnknown_086A7AC0
|
|
ldr r3, _0800B69C @ =0x0202C548
|
|
movs r1, #0
|
|
ldrsb r1, [r3, r1]
|
|
lsls r1, r1, #2
|
|
adds r1, r1, r2
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
ldrb r1, [r1, #2]
|
|
lsls r1, r1, #0x18
|
|
asrs r1, r1, #0x18
|
|
cmp r0, r1
|
|
ble _0800B68C
|
|
movs r0, #0
|
|
strh r0, [r4]
|
|
ldrb r0, [r3]
|
|
adds r0, #1
|
|
strb r0, [r3]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
cmp r0, #8
|
|
ble _0800B68C
|
|
ldr r1, _0800B6C0 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800B68C:
|
|
pop {r4, r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800B694: .4byte 0x0202ADA0
|
|
_0800B698: .4byte gUnknown_086A7AC0
|
|
_0800B69C: .4byte 0x0202C548
|
|
_0800B6A0: .4byte gUnknown_086A7AE4
|
|
_0800B6A4: .4byte 0x0202BF10
|
|
_0800B6A8: .4byte gMain
|
|
_0800B6AC: .4byte 0x000002F2
|
|
_0800B6B0: .4byte gUnknown_086A7B34
|
|
_0800B6B4: .4byte 0x0202BEB4
|
|
_0800B6B8: .4byte 0x0201A450
|
|
_0800B6BC: .4byte 0x0202A578
|
|
_0800B6C0: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_B6C4
|
|
sub_B6C4: @ 0x0800B6C4
|
|
push {r4, r5, lr}
|
|
ldr r2, _0800B784 @ =gUnknown_086A7AE4
|
|
ldr r3, _0800B788 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r3, r1]
|
|
adds r0, r0, r2
|
|
ldrb r1, [r0]
|
|
movs r0, #0x10
|
|
ands r0, r1
|
|
adds r4, r2, #0
|
|
adds r2, r3, #0
|
|
ldr r3, _0800B78C @ =0x0202ADA0
|
|
cmp r0, #0
|
|
beq _0800B6FC
|
|
ldrh r0, [r3, #6]
|
|
ldrh r5, [r3, #2]
|
|
adds r1, r0, r5
|
|
strh r1, [r3, #2]
|
|
subs r0, #2
|
|
strh r0, [r3, #6]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
movs r1, #0xa
|
|
rsbs r1, r1, #0
|
|
cmp r0, r1
|
|
bgt _0800B6FC
|
|
movs r0, #8
|
|
strh r0, [r3, #6]
|
|
_0800B6FC:
|
|
movs r1, #0
|
|
ldrsh r0, [r2, r1]
|
|
adds r0, r0, r4
|
|
ldrb r1, [r0]
|
|
movs r0, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
beq _0800B728
|
|
ldrh r0, [r3, #0x1c]
|
|
ldrh r2, [r3, #0x18]
|
|
adds r1, r0, r2
|
|
strh r1, [r3, #0x18]
|
|
subs r0, #2
|
|
strh r0, [r3, #0x1c]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
movs r1, #0xa
|
|
rsbs r1, r1, #0
|
|
cmp r0, r1
|
|
bgt _0800B728
|
|
movs r0, #8
|
|
strh r0, [r3, #0x1c]
|
|
_0800B728:
|
|
ldr r1, _0800B790 @ =gMain
|
|
ldrh r2, [r3]
|
|
movs r4, #0xba
|
|
lsls r4, r4, #2
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #2]
|
|
ldr r5, _0800B794 @ =0x000002EA
|
|
adds r0, r1, r5
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xc]
|
|
adds r4, #4
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0xe]
|
|
adds r5, #4
|
|
adds r0, r1, r5
|
|
strh r2, [r0]
|
|
ldrh r2, [r3, #0x18]
|
|
adds r4, #4
|
|
adds r0, r1, r4
|
|
strh r2, [r0]
|
|
ldrh r0, [r3, #0x1a]
|
|
adds r5, #4
|
|
adds r1, r1, r5
|
|
strh r0, [r1]
|
|
bl sub_B7F8
|
|
ldr r1, _0800B798 @ =0x0202A578
|
|
ldrh r0, [r1]
|
|
adds r0, #1
|
|
strh r0, [r1]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0x10
|
|
ble _0800B77C
|
|
movs r0, #0
|
|
strh r0, [r1]
|
|
ldr r1, _0800B79C @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800B77C:
|
|
pop {r4, r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800B784: .4byte gUnknown_086A7AE4
|
|
_0800B788: .4byte 0x0202BF10
|
|
_0800B78C: .4byte 0x0202ADA0
|
|
_0800B790: .4byte gMain
|
|
_0800B794: .4byte 0x000002EA
|
|
_0800B798: .4byte 0x0202A578
|
|
_0800B79C: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_B7A0
|
|
sub_B7A0: @ 0x0800B7A0
|
|
push {lr}
|
|
sub sp, #8
|
|
bl sub_578
|
|
movs r2, #0
|
|
str r2, [sp]
|
|
ldr r1, _0800B7E4 @ =0x040000D4
|
|
mov r0, sp
|
|
str r0, [r1]
|
|
movs r0, #0xe0
|
|
lsls r0, r0, #0x13
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800B7E8 @ =0x85000100
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
add r0, sp, #4
|
|
strh r2, [r0]
|
|
str r0, [r1]
|
|
ldr r0, _0800B7EC @ =0x06010000
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800B7F0 @ =0x81002800
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
bl sub_10480
|
|
bl sub_10544
|
|
ldr r1, _0800B7F4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
add sp, #8
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800B7E4: .4byte 0x040000D4
|
|
_0800B7E8: .4byte 0x85000100
|
|
_0800B7EC: .4byte 0x06010000
|
|
_0800B7F0: .4byte 0x81002800
|
|
_0800B7F4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_B7F8
|
|
sub_B7F8: @ 0x0800B7F8
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sl
|
|
mov r6, sb
|
|
mov r5, r8
|
|
push {r5, r6, r7}
|
|
sub sp, #0x24
|
|
ldr r6, _0800BA0C @ =0x0201A450
|
|
movs r1, #8
|
|
ldrsh r0, [r6, r1]
|
|
lsls r2, r0, #4
|
|
adds r2, r2, r0
|
|
lsls r2, r2, #2
|
|
adds r2, r2, r0
|
|
lsls r2, r2, #4
|
|
ldr r3, _0800BA10 @ =0x0200B3B8
|
|
adds r2, r2, r3
|
|
str r2, [sp]
|
|
movs r4, #0x18
|
|
ldrsh r1, [r6, r4]
|
|
lsls r0, r1, #4
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #4
|
|
adds r1, r3, #0
|
|
adds r1, #0xb8
|
|
adds r0, r0, r1
|
|
str r0, [sp, #4]
|
|
movs r0, #0x28
|
|
ldrsh r1, [r6, r0]
|
|
lsls r0, r1, #4
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #4
|
|
movs r4, #0xb8
|
|
lsls r4, r4, #1
|
|
adds r1, r3, r4
|
|
adds r0, r0, r1
|
|
str r0, [sp, #8]
|
|
movs r0, #0x38
|
|
ldrsh r1, [r6, r0]
|
|
lsls r0, r1, #4
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #4
|
|
adds r4, #0xb8
|
|
adds r1, r3, r4
|
|
adds r0, r0, r1
|
|
str r0, [sp, #0xc]
|
|
adds r0, r6, #0
|
|
adds r0, #0x48
|
|
movs r4, #0
|
|
ldrsh r1, [r0, r4]
|
|
lsls r0, r1, #4
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #4
|
|
movs r4, #0xb8
|
|
lsls r4, r4, #2
|
|
adds r1, r3, r4
|
|
adds r0, r0, r1
|
|
str r0, [sp, #0x10]
|
|
adds r0, r6, #0
|
|
adds r0, #0x58
|
|
movs r4, #0
|
|
ldrsh r1, [r0, r4]
|
|
lsls r0, r1, #4
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #2
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #4
|
|
movs r4, #0xe6
|
|
lsls r4, r4, #2
|
|
adds r1, r3, r4
|
|
adds r0, r0, r1
|
|
str r0, [sp, #0x14]
|
|
movs r0, #0xc
|
|
ldrsb r0, [r6, r0]
|
|
strh r0, [r2]
|
|
ldr r1, [sp, #4]
|
|
movs r0, #0x1c
|
|
ldrsb r0, [r6, r0]
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #8]
|
|
adds r0, r6, #0
|
|
adds r0, #0x2c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #0xc]
|
|
adds r0, r6, #0
|
|
adds r0, #0x3c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #0x10]
|
|
adds r0, r6, #0
|
|
adds r0, #0x4c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #0x14]
|
|
adds r0, r6, #0
|
|
adds r0, #0x5c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r1]
|
|
ldr r4, _0800BA14 @ =gUnknown_086A7A78
|
|
adds r0, r4, #0
|
|
movs r1, #0x12
|
|
adds r2, r3, #0
|
|
bl LoadSpriteSets
|
|
movs r5, #0
|
|
str r6, [sp, #0x18]
|
|
_0800B8EC:
|
|
lsls r0, r5, #2
|
|
mov r6, sp
|
|
adds r4, r6, r0
|
|
ldr r1, [r4]
|
|
ldrh r1, [r1]
|
|
str r0, [sp, #0x20]
|
|
adds r0, r5, #1
|
|
str r0, [sp, #0x1c]
|
|
cmp r1, #1
|
|
bne _0800B9DA
|
|
lsls r3, r5, #4
|
|
ldr r1, [sp, #0x18]
|
|
adds r2, r3, r1
|
|
ldr r6, [sp, #0x20]
|
|
ldr r1, _0800BA18 @ =gUnknown_086A7B34
|
|
adds r0, r6, r1
|
|
movs r1, #0
|
|
ldrsb r1, [r0, r1]
|
|
ldrh r6, [r2]
|
|
adds r1, r1, r6
|
|
strh r1, [r2]
|
|
ldrb r0, [r0, #1]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
ldrh r6, [r2, #2]
|
|
adds r0, r0, r6
|
|
strh r0, [r2, #2]
|
|
ldr r0, [r4]
|
|
strh r1, [r0, #2]
|
|
ldr r1, [r4]
|
|
ldrh r0, [r2, #2]
|
|
strh r0, [r1, #4]
|
|
movs r0, #8
|
|
ldrsh r1, [r2, r0]
|
|
lsls r0, r1, #1
|
|
adds r0, r0, r1
|
|
lsls r0, r0, #1
|
|
adds r0, r5, r0
|
|
lsls r0, r0, #2
|
|
ldr r1, _0800BA14 @ =gUnknown_086A7A78
|
|
adds r0, r0, r1
|
|
ldr r0, [r0]
|
|
mov r8, r0
|
|
movs r7, #0
|
|
mov sb, r3
|
|
ldrh r2, [r0]
|
|
cmp r7, r2
|
|
bge _0800B998
|
|
adds r5, r4, #0
|
|
ldr r3, _0800BA1C @ =gOamBuffer
|
|
mov ip, r3
|
|
ldr r4, _0800BA20 @ =0xFFFFFE00
|
|
mov sl, r4
|
|
movs r6, #8
|
|
_0800B958:
|
|
ldr r0, [r5]
|
|
adds r4, r0, r6
|
|
ldrh r2, [r4]
|
|
lsls r2, r2, #3
|
|
add r2, ip
|
|
movs r3, #2
|
|
ldrsh r1, [r4, r3]
|
|
movs r3, #2
|
|
ldrsh r0, [r0, r3]
|
|
adds r1, r1, r0
|
|
ldr r3, _0800BA24 @ =0x000001FF
|
|
adds r0, r3, #0
|
|
ands r1, r0
|
|
ldrh r3, [r2, #2]
|
|
mov r0, sl
|
|
ands r0, r3
|
|
orrs r0, r1
|
|
strh r0, [r2, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
add r1, ip
|
|
ldr r0, [r5]
|
|
ldrb r0, [r0, #4]
|
|
ldrb r4, [r4, #4]
|
|
adds r0, r0, r4
|
|
strb r0, [r1]
|
|
adds r6, #8
|
|
adds r7, #1
|
|
mov r4, r8
|
|
ldrh r4, [r4]
|
|
cmp r7, r4
|
|
blt _0800B958
|
|
_0800B998:
|
|
ldr r1, [sp, #0x18]
|
|
add r1, sb
|
|
ldrh r0, [r1, #0xa]
|
|
adds r0, #1
|
|
movs r2, #0
|
|
strh r0, [r1, #0xa]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #4
|
|
ble _0800B9BC
|
|
strh r2, [r1, #0xa]
|
|
ldrh r2, [r1, #8]
|
|
movs r6, #8
|
|
ldrsh r0, [r1, r6]
|
|
cmp r0, #1
|
|
bgt _0800B9BC
|
|
adds r0, r2, #1
|
|
strh r0, [r1, #8]
|
|
_0800B9BC:
|
|
ldr r1, [sp, #0x20]
|
|
ldr r2, _0800BA18 @ =gUnknown_086A7B34
|
|
adds r0, r1, r2
|
|
ldr r3, _0800BA28 @ =0x0202BF10
|
|
movs r4, #0
|
|
ldrsh r1, [r3, r4]
|
|
ldrb r0, [r0, #3]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
cmp r1, r0
|
|
bne _0800B9DA
|
|
ldr r1, [sp, #0x18]
|
|
add r1, sb
|
|
movs r0, #0
|
|
strb r0, [r1, #0xc]
|
|
_0800B9DA:
|
|
ldr r5, [sp, #0x1c]
|
|
cmp r5, #5
|
|
ble _0800B8EC
|
|
ldr r0, [sp]
|
|
movs r1, #0
|
|
strh r1, [r0]
|
|
ldr r0, [sp, #4]
|
|
strh r1, [r0]
|
|
ldr r0, [sp, #8]
|
|
strh r1, [r0]
|
|
ldr r0, [sp, #0xc]
|
|
strh r1, [r0]
|
|
ldr r0, [sp, #0x10]
|
|
strh r1, [r0]
|
|
ldr r0, [sp, #0x14]
|
|
strh r1, [r0]
|
|
add sp, #0x24
|
|
pop {r3, r4, r5}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
mov sl, r5
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800BA0C: .4byte 0x0201A450
|
|
_0800BA10: .4byte 0x0200B3B8
|
|
_0800BA14: .4byte gUnknown_086A7A78
|
|
_0800BA18: .4byte gUnknown_086A7B34
|
|
_0800BA1C: .4byte gOamBuffer
|
|
_0800BA20: .4byte 0xFFFFFE00
|
|
_0800BA24: .4byte 0x000001FF
|
|
_0800BA28: .4byte 0x0202BF10
|
|
|
|
thumb_func_start sub_BA2C
|
|
sub_BA2C: @ 0x0800BA2C
|
|
ldr r1, _0800BA38 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
bx lr
|
|
.align 2, 0
|
|
_0800BA38: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_BA3C
|
|
sub_BA3C: @ 0x0800BA3C
|
|
push {r4, r5, lr}
|
|
movs r2, #0x80
|
|
lsls r2, r2, #0x13
|
|
movs r1, #0x80
|
|
lsls r1, r1, #5
|
|
adds r0, r1, #0
|
|
strh r0, [r2]
|
|
ldr r1, _0800BB6C @ =0x04000008
|
|
movs r3, #0xd4
|
|
lsls r3, r3, #8
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r3, #0x80
|
|
lsls r3, r3, #1
|
|
adds r1, r3, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800BB70 @ =0x0400000A
|
|
ldr r3, _0800BB74 @ =0x0000D801
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r3, #0x80
|
|
lsls r3, r3, #2
|
|
adds r1, r3, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800BB78 @ =0x0400000C
|
|
ldr r3, _0800BB7C @ =0x0000DC02
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r3, #0x80
|
|
lsls r3, r3, #3
|
|
adds r1, r3, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r1, _0800BB80 @ =0x0400000E
|
|
ldr r3, _0800BB84 @ =0x00000F03
|
|
adds r0, r3, #0
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r3, #0x80
|
|
lsls r3, r3, #4
|
|
adds r1, r3, #0
|
|
orrs r0, r1
|
|
strh r0, [r2]
|
|
ldr r0, _0800BB88 @ =0x040000D4
|
|
ldr r1, _0800BB8C @ =gUnknown_08108A00
|
|
str r1, [r0]
|
|
ldr r1, _0800BB90 @ =0x0600A000
|
|
str r1, [r0, #4]
|
|
ldr r3, _0800BB94 @ =0x80001000
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800BB98 @ =gUnknown_0810AA00
|
|
str r1, [r0]
|
|
ldr r1, _0800BB9C @ =0x0600C000
|
|
str r1, [r0, #4]
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800BBA0 @ =gUnknown_08106A00
|
|
str r1, [r0]
|
|
ldr r1, _0800BBA4 @ =0x0600E000
|
|
str r1, [r0, #4]
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800BBA8 @ =gUnknown_081011E0
|
|
str r1, [r0]
|
|
ldr r1, _0800BBAC @ =0x06007800
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800BBB0 @ =0x80000400
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800BBB4 @ =gUnknown_081019E0
|
|
str r1, [r0]
|
|
movs r1, #0xc0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800BBB8 @ =0x80002800
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r5, _0800BBBC @ =gUnknown_08100FE0
|
|
str r5, [r0]
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r4, _0800BBC0 @ =0x800000B0
|
|
str r4, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800BBC4 @ =gUnknown_0810CA00
|
|
str r1, [r0]
|
|
ldr r1, _0800BBC8 @ =0x06010000
|
|
str r1, [r0, #4]
|
|
str r3, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
str r5, [r0]
|
|
ldr r1, _0800BBCC @ =0x05000200
|
|
str r1, [r0, #4]
|
|
str r4, [r0, #8]
|
|
ldr r0, [r0, #8]
|
|
ldr r4, _0800BBD0 @ =gMain
|
|
ldrh r0, [r2]
|
|
strh r0, [r4, #0x16]
|
|
bl sub_BBE0
|
|
ldr r1, _0800BBD4 @ =0x0202ADA0
|
|
ldrh r2, [r1]
|
|
movs r3, #0xba
|
|
lsls r3, r3, #2
|
|
adds r0, r4, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r1, #2]
|
|
adds r3, #2
|
|
adds r0, r4, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r1, #0xc]
|
|
adds r3, #2
|
|
adds r0, r4, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r1, #0xe]
|
|
adds r3, #2
|
|
adds r0, r4, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r1, #0x18]
|
|
adds r3, #2
|
|
adds r0, r4, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r1, #0x1a]
|
|
adds r3, #2
|
|
adds r0, r4, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r1, #0x24]
|
|
adds r3, #2
|
|
adds r0, r4, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r1, #0x26]
|
|
ldr r1, _0800BBD8 @ =0x000002F6
|
|
adds r4, r4, r1
|
|
strh r0, [r4]
|
|
bl sub_CBC
|
|
bl sub_10424
|
|
ldr r1, _0800BBDC @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r4, r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800BB6C: .4byte 0x04000008
|
|
_0800BB70: .4byte 0x0400000A
|
|
_0800BB74: .4byte 0x0000D801
|
|
_0800BB78: .4byte 0x0400000C
|
|
_0800BB7C: .4byte 0x0000DC02
|
|
_0800BB80: .4byte 0x0400000E
|
|
_0800BB84: .4byte 0x00000F03
|
|
_0800BB88: .4byte 0x040000D4
|
|
_0800BB8C: .4byte gUnknown_08108A00
|
|
_0800BB90: .4byte 0x0600A000
|
|
_0800BB94: .4byte 0x80001000
|
|
_0800BB98: .4byte gUnknown_0810AA00
|
|
_0800BB9C: .4byte 0x0600C000
|
|
_0800BBA0: .4byte gUnknown_08106A00
|
|
_0800BBA4: .4byte 0x0600E000
|
|
_0800BBA8: .4byte gUnknown_081011E0
|
|
_0800BBAC: .4byte 0x06007800
|
|
_0800BBB0: .4byte 0x80000400
|
|
_0800BBB4: .4byte gUnknown_081019E0
|
|
_0800BBB8: .4byte 0x80002800
|
|
_0800BBBC: .4byte gUnknown_08100FE0
|
|
_0800BBC0: .4byte 0x800000B0
|
|
_0800BBC4: .4byte gUnknown_0810CA00
|
|
_0800BBC8: .4byte 0x06010000
|
|
_0800BBCC: .4byte 0x05000200
|
|
_0800BBD0: .4byte gMain
|
|
_0800BBD4: .4byte 0x0202ADA0
|
|
_0800BBD8: .4byte 0x000002F6
|
|
_0800BBDC: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_BBE0
|
|
sub_BBE0: @ 0x0800BBE0
|
|
ldr r1, _0800BC30 @ =0x0202ADA0
|
|
movs r2, #0
|
|
ldr r0, _0800BC34 @ =0x0000FEFC
|
|
strh r0, [r1]
|
|
movs r0, #0x46
|
|
strh r0, [r1, #2]
|
|
strh r2, [r1, #6]
|
|
ldr r0, _0800BC38 @ =0x0000FEE8
|
|
strh r0, [r1, #0xc]
|
|
movs r0, #0x5a
|
|
strh r0, [r1, #0xe]
|
|
strh r2, [r1, #0x12]
|
|
ldr r0, _0800BC3C @ =0x0000FF10
|
|
strh r0, [r1, #0x18]
|
|
adds r0, #0xbe
|
|
strh r0, [r1, #0x1a]
|
|
adds r0, #0x2f
|
|
strh r0, [r1, #0x1e]
|
|
strh r2, [r1, #0x24]
|
|
strh r2, [r1, #0x26]
|
|
ldr r1, _0800BC40 @ =0x0201A450
|
|
movs r0, #0x94
|
|
lsls r0, r0, #1
|
|
strh r0, [r1]
|
|
movs r0, #0x2c
|
|
strh r0, [r1, #2]
|
|
strh r2, [r1, #4]
|
|
strh r2, [r1, #6]
|
|
ldr r0, _0800BC44 @ =0x0202BF10
|
|
strh r2, [r0]
|
|
ldr r0, _0800BC48 @ =0x0202A578
|
|
strh r2, [r0]
|
|
ldr r0, _0800BC4C @ =0x0202C5E4
|
|
movs r2, #0x80
|
|
lsls r2, r2, #1
|
|
adds r1, r2, #0
|
|
strh r1, [r0]
|
|
ldr r0, _0800BC50 @ =0x0202ADD8
|
|
strh r1, [r0]
|
|
bx lr
|
|
.align 2, 0
|
|
_0800BC30: .4byte 0x0202ADA0
|
|
_0800BC34: .4byte 0x0000FEFC
|
|
_0800BC38: .4byte 0x0000FEE8
|
|
_0800BC3C: .4byte 0x0000FF10
|
|
_0800BC40: .4byte 0x0201A450
|
|
_0800BC44: .4byte 0x0202BF10
|
|
_0800BC48: .4byte 0x0202A578
|
|
_0800BC4C: .4byte 0x0202C5E4
|
|
_0800BC50: .4byte 0x0202ADD8
|
|
|
|
thumb_func_start sub_BC54
|
|
sub_BC54: @ 0x0800BC54
|
|
push {r4, r5, r6, lr}
|
|
ldr r4, _0800BCD0 @ =0x0202ADA0
|
|
ldrh r0, [r4, #0x18]
|
|
adds r0, #2
|
|
strh r0, [r4, #0x18]
|
|
ldrh r0, [r4, #0x1a]
|
|
ldrh r6, [r4, #0x1e]
|
|
subs r0, r0, r6
|
|
strh r0, [r4, #0x1a]
|
|
ldr r5, _0800BCD4 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r5, r1]
|
|
movs r1, #3
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _0800BC88
|
|
adds r0, r6, #1
|
|
strh r0, [r4, #0x1e]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #4
|
|
ble _0800BC88
|
|
ldr r0, _0800BCD8 @ =0x0000FFFD
|
|
strh r0, [r4, #0x1e]
|
|
_0800BC88:
|
|
ldrh r0, [r4, #0x24]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x24]
|
|
ldrh r0, [r4, #0x26]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x26]
|
|
ldr r1, _0800BCDC @ =gMain
|
|
ldrh r2, [r4, #0x18]
|
|
movs r3, #0xbc
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x1a]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x24]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #0x26]
|
|
ldr r2, _0800BCE0 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
movs r3, #0
|
|
ldrsh r0, [r5, r3]
|
|
cmp r0, #0x20
|
|
ble _0800BCC8
|
|
ldr r1, _0800BCE4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800BCC8:
|
|
pop {r4, r5, r6}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800BCD0: .4byte 0x0202ADA0
|
|
_0800BCD4: .4byte 0x0202BF10
|
|
_0800BCD8: .4byte 0x0000FFFD
|
|
_0800BCDC: .4byte gMain
|
|
_0800BCE0: .4byte 0x000002F6
|
|
_0800BCE4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_BCE8
|
|
sub_BCE8: @ 0x0800BCE8
|
|
push {r4, r5, r6, r7, lr}
|
|
ldr r4, _0800BDA4 @ =0x0202ADA0
|
|
ldrh r0, [r4, #0x18]
|
|
adds r0, #2
|
|
strh r0, [r4, #0x18]
|
|
ldrh r0, [r4, #0x1a]
|
|
ldrh r6, [r4, #0x1e]
|
|
subs r0, r0, r6
|
|
strh r0, [r4, #0x1a]
|
|
ldr r5, _0800BDA8 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r5, r1]
|
|
movs r1, #3
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
adds r7, r5, #0
|
|
cmp r0, #0
|
|
bne _0800BD1E
|
|
adds r0, r6, #1
|
|
strh r0, [r4, #0x1e]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #4
|
|
ble _0800BD1E
|
|
ldr r0, _0800BDAC @ =0x0000FFFD
|
|
strh r0, [r4, #0x1e]
|
|
_0800BD1E:
|
|
ldrh r0, [r4, #0xc]
|
|
adds r0, #3
|
|
strh r0, [r4, #0xc]
|
|
ldrh r0, [r4, #0xe]
|
|
ldrh r5, [r4, #0x12]
|
|
subs r0, r0, r5
|
|
strh r0, [r4, #0xe]
|
|
movs r2, #0
|
|
ldrsh r0, [r7, r2]
|
|
movs r1, #5
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _0800BD4C
|
|
adds r0, r5, #1
|
|
strh r0, [r4, #0x12]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #7
|
|
ble _0800BD4C
|
|
ldr r0, _0800BDB0 @ =0x0000FFFA
|
|
strh r0, [r4, #0x12]
|
|
_0800BD4C:
|
|
ldrh r0, [r4, #0x24]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x24]
|
|
ldrh r0, [r4, #0x26]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x26]
|
|
ldr r1, _0800BDB4 @ =gMain
|
|
ldrh r2, [r4, #0x18]
|
|
movs r3, #0xbc
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x1a]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xc]
|
|
subs r3, #6
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xe]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x24]
|
|
adds r3, #6
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #0x26]
|
|
ldr r2, _0800BDB8 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
movs r3, #0
|
|
ldrsh r0, [r7, r3]
|
|
cmp r0, #0x50
|
|
ble _0800BD9C
|
|
ldr r1, _0800BDBC @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800BD9C:
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800BDA4: .4byte 0x0202ADA0
|
|
_0800BDA8: .4byte 0x0202BF10
|
|
_0800BDAC: .4byte 0x0000FFFD
|
|
_0800BDB0: .4byte 0x0000FFFA
|
|
_0800BDB4: .4byte gMain
|
|
_0800BDB8: .4byte 0x000002F6
|
|
_0800BDBC: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_BDC0
|
|
sub_BDC0: @ 0x0800BDC0
|
|
push {r4, r5, r6, r7, lr}
|
|
ldr r4, _0800BEB4 @ =0x0202ADA0
|
|
ldrh r0, [r4, #0x18]
|
|
adds r0, #2
|
|
strh r0, [r4, #0x18]
|
|
ldrh r0, [r4, #0x1a]
|
|
ldrh r6, [r4, #0x1e]
|
|
subs r0, r0, r6
|
|
strh r0, [r4, #0x1a]
|
|
ldr r5, _0800BEB8 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r5, r1]
|
|
movs r1, #3
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
adds r7, r5, #0
|
|
cmp r0, #0
|
|
bne _0800BDF6
|
|
adds r0, r6, #1
|
|
strh r0, [r4, #0x1e]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #4
|
|
ble _0800BDF6
|
|
ldr r0, _0800BEBC @ =0x0000FFFD
|
|
strh r0, [r4, #0x1e]
|
|
_0800BDF6:
|
|
ldrh r0, [r4, #0xc]
|
|
adds r0, #3
|
|
strh r0, [r4, #0xc]
|
|
ldrh r0, [r4, #0xe]
|
|
ldrh r5, [r4, #0x12]
|
|
subs r0, r0, r5
|
|
strh r0, [r4, #0xe]
|
|
movs r2, #0
|
|
ldrsh r0, [r7, r2]
|
|
movs r1, #5
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _0800BE24
|
|
adds r0, r5, #1
|
|
strh r0, [r4, #0x12]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #7
|
|
ble _0800BE24
|
|
ldr r0, _0800BEC0 @ =0x0000FFFA
|
|
strh r0, [r4, #0x12]
|
|
_0800BE24:
|
|
ldrh r0, [r4]
|
|
adds r0, #4
|
|
strh r0, [r4]
|
|
ldrh r0, [r4, #2]
|
|
ldrh r2, [r4, #6]
|
|
subs r0, r0, r2
|
|
strh r0, [r4, #2]
|
|
ldrh r0, [r7]
|
|
movs r1, #3
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800BE4C
|
|
adds r0, r2, #1
|
|
strh r0, [r4, #6]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #7
|
|
ble _0800BE4C
|
|
ldr r0, _0800BEBC @ =0x0000FFFD
|
|
strh r0, [r4, #6]
|
|
_0800BE4C:
|
|
ldrh r0, [r4, #0x24]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x24]
|
|
ldrh r0, [r4, #0x26]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x26]
|
|
ldr r1, _0800BEC4 @ =gMain
|
|
ldrh r2, [r4, #0x18]
|
|
movs r3, #0xbc
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x1a]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xc]
|
|
subs r3, #6
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xe]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4]
|
|
subs r3, #6
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #2]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x24]
|
|
adds r3, #0xa
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #0x26]
|
|
ldr r2, _0800BEC8 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
movs r3, #0
|
|
ldrsh r0, [r7, r3]
|
|
cmp r0, #0x64
|
|
ble _0800BEAC
|
|
ldr r1, _0800BECC @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800BEAC:
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800BEB4: .4byte 0x0202ADA0
|
|
_0800BEB8: .4byte 0x0202BF10
|
|
_0800BEBC: .4byte 0x0000FFFD
|
|
_0800BEC0: .4byte 0x0000FFFA
|
|
_0800BEC4: .4byte gMain
|
|
_0800BEC8: .4byte 0x000002F6
|
|
_0800BECC: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_BED0
|
|
sub_BED0: @ 0x0800BED0
|
|
push {r4, r5, r6, r7, lr}
|
|
ldr r4, _0800BFF4 @ =0x0202ADA0
|
|
ldrh r0, [r4, #0x18]
|
|
adds r0, #2
|
|
strh r0, [r4, #0x18]
|
|
ldrh r0, [r4, #0x1a]
|
|
ldrh r6, [r4, #0x1e]
|
|
subs r0, r0, r6
|
|
strh r0, [r4, #0x1a]
|
|
ldr r5, _0800BFF8 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r5, r1]
|
|
movs r1, #3
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
adds r7, r5, #0
|
|
cmp r0, #0
|
|
bne _0800BF06
|
|
adds r0, r6, #1
|
|
strh r0, [r4, #0x1e]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #4
|
|
ble _0800BF06
|
|
ldr r0, _0800BFFC @ =0x0000FFFD
|
|
strh r0, [r4, #0x1e]
|
|
_0800BF06:
|
|
ldrh r0, [r4, #0xc]
|
|
adds r0, #3
|
|
strh r0, [r4, #0xc]
|
|
ldrh r0, [r4, #0xe]
|
|
ldrh r5, [r4, #0x12]
|
|
subs r0, r0, r5
|
|
strh r0, [r4, #0xe]
|
|
movs r2, #0
|
|
ldrsh r0, [r7, r2]
|
|
movs r1, #5
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _0800BF34
|
|
adds r0, r5, #1
|
|
strh r0, [r4, #0x12]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #7
|
|
ble _0800BF34
|
|
ldr r0, _0800C000 @ =0x0000FFFA
|
|
strh r0, [r4, #0x12]
|
|
_0800BF34:
|
|
ldrh r0, [r4]
|
|
adds r0, #4
|
|
strh r0, [r4]
|
|
ldrh r0, [r4, #2]
|
|
ldrh r2, [r4, #6]
|
|
subs r0, r0, r2
|
|
strh r0, [r4, #2]
|
|
ldrh r0, [r7]
|
|
movs r1, #3
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800BF5C
|
|
adds r0, r2, #1
|
|
strh r0, [r4, #6]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #7
|
|
ble _0800BF5C
|
|
ldr r0, _0800BFFC @ =0x0000FFFD
|
|
strh r0, [r4, #6]
|
|
_0800BF5C:
|
|
ldr r2, _0800C004 @ =0x0201A450
|
|
ldrh r0, [r2]
|
|
subs r0, #2
|
|
strh r0, [r2]
|
|
ldrh r3, [r2, #6]
|
|
ldrh r1, [r2, #2]
|
|
adds r0, r3, r1
|
|
strh r0, [r2, #2]
|
|
ldrh r0, [r7]
|
|
movs r1, #3
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800BF86
|
|
adds r0, r3, #1
|
|
strh r0, [r2, #6]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #4
|
|
ble _0800BF86
|
|
ldr r0, _0800C008 @ =0x0000FFFC
|
|
strh r0, [r2, #6]
|
|
_0800BF86:
|
|
ldrh r0, [r4, #0x24]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x24]
|
|
ldrh r0, [r4, #0x26]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x26]
|
|
ldr r1, _0800C00C @ =gMain
|
|
ldrh r2, [r4, #0x18]
|
|
movs r3, #0xbc
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x1a]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xc]
|
|
subs r3, #6
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0xe]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4]
|
|
subs r3, #6
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #2]
|
|
adds r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r2, [r4, #0x24]
|
|
adds r3, #0xa
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #0x26]
|
|
ldr r2, _0800C010 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
bl sub_C0D8
|
|
ldr r0, _0800BFF8 @ =0x0202BF10
|
|
movs r3, #0
|
|
ldrsh r0, [r0, r3]
|
|
cmp r0, #0xc0
|
|
ble _0800BFEC
|
|
ldr r1, _0800C014 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800BFEC:
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800BFF4: .4byte 0x0202ADA0
|
|
_0800BFF8: .4byte 0x0202BF10
|
|
_0800BFFC: .4byte 0x0000FFFD
|
|
_0800C000: .4byte 0x0000FFFA
|
|
_0800C004: .4byte 0x0201A450
|
|
_0800C008: .4byte 0x0000FFFC
|
|
_0800C00C: .4byte gMain
|
|
_0800C010: .4byte 0x000002F6
|
|
_0800C014: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_C018
|
|
sub_C018: @ 0x0800C018
|
|
push {r4, r5, lr}
|
|
ldr r4, _0800C044 @ =0x0202ADA0
|
|
ldrh r0, [r4, #0x24]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x24]
|
|
ldrh r0, [r4, #0x26]
|
|
subs r0, #1
|
|
strh r0, [r4, #0x26]
|
|
ldr r5, _0800C048 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r5, r1]
|
|
movs r1, #6
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _0800C050
|
|
ldr r1, _0800C04C @ =0x0201A450
|
|
ldrh r0, [r1]
|
|
subs r0, #3
|
|
b _0800C05A
|
|
.align 2, 0
|
|
_0800C044: .4byte 0x0202ADA0
|
|
_0800C048: .4byte 0x0202BF10
|
|
_0800C04C: .4byte 0x0201A450
|
|
_0800C050:
|
|
cmp r0, #3
|
|
bne _0800C05C
|
|
ldr r1, _0800C0A4 @ =0x0201A450
|
|
ldrh r0, [r1]
|
|
adds r0, #3
|
|
_0800C05A:
|
|
strh r0, [r1]
|
|
_0800C05C:
|
|
movs r2, #0
|
|
ldrsh r0, [r5, r2]
|
|
cmp r0, #0xca
|
|
ble _0800C074
|
|
ldr r1, _0800C0A8 @ =0x0202C5E4
|
|
ldrh r0, [r1]
|
|
subs r0, #1
|
|
strh r0, [r1]
|
|
ldr r1, _0800C0AC @ =0x0202ADD8
|
|
ldrh r0, [r1]
|
|
subs r0, #1
|
|
strh r0, [r1]
|
|
_0800C074:
|
|
ldr r1, _0800C0B0 @ =gMain
|
|
ldrh r2, [r4, #0x24]
|
|
movs r3, #0xbd
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r2, [r0]
|
|
ldrh r0, [r4, #0x26]
|
|
ldr r2, _0800C0B4 @ =0x000002F6
|
|
adds r1, r1, r2
|
|
strh r0, [r1]
|
|
bl sub_C0D8
|
|
movs r3, #0
|
|
ldrsh r0, [r5, r3]
|
|
cmp r0, #0xde
|
|
ble _0800C09C
|
|
ldr r1, _0800C0B8 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800C09C:
|
|
pop {r4, r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C0A4: .4byte 0x0201A450
|
|
_0800C0A8: .4byte 0x0202C5E4
|
|
_0800C0AC: .4byte 0x0202ADD8
|
|
_0800C0B0: .4byte gMain
|
|
_0800C0B4: .4byte 0x000002F6
|
|
_0800C0B8: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_C0BC
|
|
sub_C0BC: @ 0x0800C0BC
|
|
push {lr}
|
|
bl sub_10480
|
|
bl sub_10544
|
|
ldr r1, _0800C0D4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C0D4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_C0D8
|
|
sub_C0D8: @ 0x0800C0D8
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sl
|
|
mov r6, sb
|
|
mov r5, r8
|
|
push {r5, r6, r7}
|
|
sub sp, #4
|
|
ldr r0, _0800C1EC @ =0x0200B3B8
|
|
mov r8, r0
|
|
movs r0, #1
|
|
mov r1, r8
|
|
strh r0, [r1]
|
|
ldr r0, _0800C1F0 @ =gUnknown_086A7B74
|
|
movs r1, #1
|
|
mov r2, r8
|
|
bl LoadSpriteSets
|
|
mov r2, r8
|
|
ldrh r0, [r2]
|
|
cmp r0, #1
|
|
bne _0800C1D4
|
|
ldr r5, _0800C1F4 @ =0x0202C5E4
|
|
movs r3, #0
|
|
ldrsh r0, [r5, r3]
|
|
ldr r4, _0800C1F8 @ =0x0202ADD8
|
|
movs r2, #0
|
|
ldrsh r1, [r4, r2]
|
|
movs r2, #0
|
|
bl SetMatrixScale
|
|
ldr r1, _0800C1FC @ =0x0201A450
|
|
ldrh r0, [r1]
|
|
mov r3, r8
|
|
strh r0, [r3, #2]
|
|
ldrh r0, [r1, #2]
|
|
strh r0, [r3, #4]
|
|
movs r7, #0
|
|
ldr r6, _0800C200 @ =gOamBuffer
|
|
mov sl, r4
|
|
mov r5, r8
|
|
adds r5, #8
|
|
ldr r4, _0800C204 @ =0xFFFFFE00
|
|
mov sb, r4
|
|
movs r0, #4
|
|
rsbs r0, r0, #0
|
|
mov ip, r0
|
|
_0800C132:
|
|
ldrh r2, [r5]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r6
|
|
ldrb r1, [r2, #5]
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
ands r0, r1
|
|
movs r1, #4
|
|
orrs r0, r1
|
|
strb r0, [r2, #5]
|
|
ldrh r0, [r5]
|
|
lsls r0, r0, #3
|
|
adds r3, r0, r6
|
|
lsls r0, r7, #2
|
|
ldr r1, _0800C208 @ =gUnknown_086A7B7C
|
|
adds r4, r0, r1
|
|
movs r0, #0
|
|
ldrsh r2, [r4, r0]
|
|
str r2, [sp]
|
|
ldr r1, _0800C1F4 @ =0x0202C5E4
|
|
movs r2, #0
|
|
ldrsh r0, [r1, r2]
|
|
ldr r2, [sp]
|
|
adds r1, r2, #0
|
|
muls r1, r0, r1
|
|
cmp r1, #0
|
|
bge _0800C16A
|
|
adds r1, #0xff
|
|
_0800C16A:
|
|
asrs r1, r1, #8
|
|
str r1, [sp]
|
|
mov r1, r8
|
|
movs r2, #2
|
|
ldrsh r0, [r1, r2]
|
|
ldr r2, [sp]
|
|
adds r1, r2, r0
|
|
ldr r2, _0800C20C @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
mov r0, sb
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r0, [r5]
|
|
lsls r0, r0, #3
|
|
adds r2, r0, r6
|
|
movs r3, #2
|
|
ldrsh r1, [r4, r3]
|
|
mov r4, sl
|
|
movs r3, #0
|
|
ldrsh r0, [r4, r3]
|
|
muls r0, r1, r0
|
|
cmp r0, #0
|
|
bge _0800C1A0
|
|
adds r0, #0xff
|
|
_0800C1A0:
|
|
asrs r0, r0, #8
|
|
mov r4, r8
|
|
ldrb r4, [r4, #4]
|
|
adds r0, r0, r4
|
|
strb r0, [r2]
|
|
ldrh r2, [r5]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r6
|
|
ldrb r1, [r2, #1]
|
|
mov r0, ip
|
|
ands r0, r1
|
|
movs r1, #1
|
|
orrs r0, r1
|
|
strb r0, [r2, #1]
|
|
ldrh r1, [r5]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r6
|
|
ldrb r2, [r1, #3]
|
|
movs r0, #0xf
|
|
rsbs r0, r0, #0
|
|
ands r0, r2
|
|
strb r0, [r1, #3]
|
|
adds r5, #8
|
|
adds r7, #1
|
|
cmp r7, #3
|
|
ble _0800C132
|
|
_0800C1D4:
|
|
movs r0, #0
|
|
mov r1, r8
|
|
strh r0, [r1]
|
|
add sp, #4
|
|
pop {r3, r4, r5}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
mov sl, r5
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C1EC: .4byte 0x0200B3B8
|
|
_0800C1F0: .4byte gUnknown_086A7B74
|
|
_0800C1F4: .4byte 0x0202C5E4
|
|
_0800C1F8: .4byte 0x0202ADD8
|
|
_0800C1FC: .4byte 0x0201A450
|
|
_0800C200: .4byte gOamBuffer
|
|
_0800C204: .4byte 0xFFFFFE00
|
|
_0800C208: .4byte gUnknown_086A7B7C
|
|
_0800C20C: .4byte 0x000001FF
|
|
|
|
thumb_func_start sub_C210
|
|
sub_C210: @ 0x0800C210
|
|
push {lr}
|
|
bl sub_518
|
|
ldr r1, _0800C224 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C224: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_C228
|
|
sub_C228: @ 0x0800C228
|
|
push {r4, lr}
|
|
movs r3, #0x80
|
|
lsls r3, r3, #0x13
|
|
movs r1, #0x80
|
|
lsls r1, r1, #5
|
|
adds r0, r1, #0
|
|
strh r0, [r3]
|
|
ldr r1, _0800C2B4 @ =0x0400000C
|
|
movs r0, #7
|
|
strh r0, [r1]
|
|
ldrh r0, [r3]
|
|
movs r2, #0x80
|
|
lsls r2, r2, #3
|
|
adds r1, r2, #0
|
|
orrs r0, r1
|
|
strh r0, [r3]
|
|
ldr r0, _0800C2B8 @ =0x040000D4
|
|
ldr r1, _0800C2BC @ =gUnknown_0810EC20
|
|
str r1, [r0]
|
|
movs r1, #0xc0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800C2C0 @ =0x80000400
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800C2C4 @ =gUnknown_0810F420
|
|
str r1, [r0]
|
|
ldr r1, _0800C2C8 @ =0x06004000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800C2CC @ =0x80001A00
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r4, _0800C2D0 @ =gUnknown_0810EA20
|
|
str r4, [r0]
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r2, _0800C2D4 @ =0x800000A0
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800C2D8 @ =gUnknown_08112840
|
|
str r1, [r0]
|
|
ldr r1, _0800C2DC @ =0x06010000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800C2E0 @ =0x80001600
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
str r4, [r0]
|
|
ldr r1, _0800C2E4 @ =0x05000200
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r0, [r0, #8]
|
|
ldr r1, _0800C2E8 @ =gMain
|
|
ldrh r0, [r3]
|
|
strh r0, [r1, #0x16]
|
|
bl sub_C2F0
|
|
bl sub_C4F0
|
|
bl sub_CBC
|
|
bl sub_10424
|
|
ldr r1, _0800C2EC @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C2B4: .4byte 0x0400000C
|
|
_0800C2B8: .4byte 0x040000D4
|
|
_0800C2BC: .4byte gUnknown_0810EC20
|
|
_0800C2C0: .4byte 0x80000400
|
|
_0800C2C4: .4byte gUnknown_0810F420
|
|
_0800C2C8: .4byte 0x06004000
|
|
_0800C2CC: .4byte 0x80001A00
|
|
_0800C2D0: .4byte gUnknown_0810EA20
|
|
_0800C2D4: .4byte 0x800000A0
|
|
_0800C2D8: .4byte gUnknown_08112840
|
|
_0800C2DC: .4byte 0x06010000
|
|
_0800C2E0: .4byte 0x80001600
|
|
_0800C2E4: .4byte 0x05000200
|
|
_0800C2E8: .4byte gMain
|
|
_0800C2EC: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_C2F0
|
|
sub_C2F0: @ 0x0800C2F0
|
|
push {r4, r5, r6, lr}
|
|
ldr r0, _0800C380 @ =0x0201A450
|
|
mov ip, r0
|
|
movs r4, #0
|
|
movs r1, #0
|
|
movs r5, #0x78
|
|
strh r5, [r0, #0x10]
|
|
movs r2, #0x50
|
|
strh r2, [r0, #0x12]
|
|
movs r0, #4
|
|
mov r3, ip
|
|
strh r0, [r3, #0x14]
|
|
strh r0, [r3, #0x16]
|
|
strh r1, [r3, #0x18]
|
|
strh r5, [r3]
|
|
strh r2, [r3, #2]
|
|
strb r4, [r3, #0xc]
|
|
movs r2, #0x80
|
|
strh r2, [r3, #0x20]
|
|
movs r3, #0x58
|
|
mov r0, ip
|
|
strh r3, [r0, #0x22]
|
|
strh r1, [r0, #0x28]
|
|
strh r1, [r0, #0x2a]
|
|
adds r0, #0x2c
|
|
strb r4, [r0]
|
|
mov r0, ip
|
|
strh r2, [r0, #0x30]
|
|
movs r6, #0x48
|
|
strh r6, [r0, #0x32]
|
|
strh r1, [r0, #0x38]
|
|
strh r1, [r0, #0x3a]
|
|
adds r0, #0x3c
|
|
strb r4, [r0]
|
|
adds r0, #4
|
|
movs r2, #0x70
|
|
strh r2, [r0]
|
|
adds r0, #2
|
|
strh r3, [r0]
|
|
adds r0, #6
|
|
strh r1, [r0]
|
|
adds r0, #2
|
|
strh r1, [r0]
|
|
adds r0, #2
|
|
strb r4, [r0]
|
|
adds r0, #4
|
|
strh r5, [r0]
|
|
adds r0, #2
|
|
strh r3, [r0]
|
|
adds r0, #6
|
|
strh r1, [r0]
|
|
adds r0, #2
|
|
strh r1, [r0]
|
|
adds r0, #2
|
|
strb r4, [r0]
|
|
adds r0, #4
|
|
strh r2, [r0]
|
|
adds r0, #2
|
|
strh r6, [r0]
|
|
adds r0, #6
|
|
strh r1, [r0]
|
|
adds r0, #2
|
|
strh r1, [r0]
|
|
adds r0, #2
|
|
strb r4, [r0]
|
|
ldr r0, _0800C384 @ =0x0202BF10
|
|
strh r1, [r0]
|
|
ldr r0, _0800C388 @ =0x0202A578
|
|
strh r1, [r0]
|
|
pop {r4, r5, r6}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C380: .4byte 0x0201A450
|
|
_0800C384: .4byte 0x0202BF10
|
|
_0800C388: .4byte 0x0202A578
|
|
|
|
thumb_func_start sub_C38C
|
|
sub_C38C: @ 0x0800C38C
|
|
push {lr}
|
|
bl sub_C4F0
|
|
ldr r0, _0800C3C4 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r0, r1]
|
|
cmp r0, #1
|
|
ble _0800C3C0
|
|
ldr r2, _0800C3C8 @ =0x0201A450
|
|
movs r1, #1
|
|
strb r1, [r2, #0xc]
|
|
adds r0, r2, #0
|
|
adds r0, #0x2c
|
|
strb r1, [r0]
|
|
adds r0, #0x10
|
|
strb r1, [r0]
|
|
adds r0, #0x10
|
|
strb r1, [r0]
|
|
adds r0, #0x10
|
|
strb r1, [r0]
|
|
adds r0, #0x10
|
|
strb r1, [r0]
|
|
ldr r1, _0800C3CC @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800C3C0:
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C3C4: .4byte 0x0202BF10
|
|
_0800C3C8: .4byte 0x0201A450
|
|
_0800C3CC: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_C3D0
|
|
sub_C3D0: @ 0x0800C3D0
|
|
push {r4, lr}
|
|
ldr r3, _0800C408 @ =0x0201A450
|
|
ldrh r0, [r3]
|
|
subs r0, #9
|
|
strh r0, [r3]
|
|
ldrh r0, [r3, #2]
|
|
subs r0, #6
|
|
strh r0, [r3, #2]
|
|
ldrh r0, [r3, #0x18]
|
|
adds r0, #1
|
|
strh r0, [r3, #0x18]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #3
|
|
bgt _0800C40C
|
|
ldrh r2, [r3, #0x14]
|
|
ldrh r1, [r3, #0x10]
|
|
adds r0, r2, r1
|
|
strh r0, [r3, #0x10]
|
|
ldrh r1, [r3, #0x16]
|
|
ldrh r4, [r3, #0x12]
|
|
adds r0, r1, r4
|
|
strh r0, [r3, #0x12]
|
|
subs r2, #1
|
|
strh r2, [r3, #0x14]
|
|
subs r1, #1
|
|
strh r1, [r3, #0x16]
|
|
b _0800C424
|
|
.align 2, 0
|
|
_0800C408: .4byte 0x0201A450
|
|
_0800C40C:
|
|
ldr r0, _0800C444 @ =0x0202BF10
|
|
ldrh r0, [r0]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800C424
|
|
ldrh r0, [r3, #0x10]
|
|
adds r0, #1
|
|
strh r0, [r3, #0x10]
|
|
ldrh r0, [r3, #0x12]
|
|
adds r0, #1
|
|
strh r0, [r3, #0x12]
|
|
_0800C424:
|
|
bl sub_C4F0
|
|
ldr r0, _0800C448 @ =0x0201A450
|
|
movs r2, #2
|
|
ldrsh r1, [r0, r2]
|
|
movs r0, #0x20
|
|
rsbs r0, r0, #0
|
|
cmp r1, r0
|
|
bge _0800C43E
|
|
ldr r1, _0800C44C @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800C43E:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C444: .4byte 0x0202BF10
|
|
_0800C448: .4byte 0x0201A450
|
|
_0800C44C: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_C450
|
|
sub_C450: @ 0x0800C450
|
|
push {lr}
|
|
bl sub_C4F0
|
|
ldr r2, _0800C484 @ =0x0202BF10
|
|
ldrh r0, [r2]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800C470
|
|
ldr r0, _0800C488 @ =0x0201A450
|
|
ldrh r1, [r0, #0x10]
|
|
adds r1, #1
|
|
strh r1, [r0, #0x10]
|
|
ldrh r1, [r0, #0x12]
|
|
adds r1, #1
|
|
strh r1, [r0, #0x12]
|
|
_0800C470:
|
|
movs r1, #0
|
|
ldrsh r0, [r2, r1]
|
|
cmp r0, #0x14
|
|
ble _0800C480
|
|
ldr r1, _0800C48C @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #3
|
|
strb r0, [r1]
|
|
_0800C480:
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C484: .4byte 0x0202BF10
|
|
_0800C488: .4byte 0x0201A450
|
|
_0800C48C: .4byte 0x0202C790
|
|
|
|
thumb_func_start nullsub_12
|
|
nullsub_12: @ 0x0800C490
|
|
bx lr
|
|
|
|
thumb_func_start nullsub_13
|
|
nullsub_13: @ 0x0800C494
|
|
bx lr
|
|
|
|
thumb_func_start sub_C498
|
|
sub_C498: @ 0x0800C498
|
|
push {lr}
|
|
sub sp, #8
|
|
bl sub_10480
|
|
bl sub_578
|
|
movs r2, #0
|
|
str r2, [sp]
|
|
ldr r1, _0800C4DC @ =0x040000D4
|
|
mov r0, sp
|
|
str r0, [r1]
|
|
movs r0, #0xe0
|
|
lsls r0, r0, #0x13
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800C4E0 @ =0x85000100
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
add r0, sp, #4
|
|
strh r2, [r0]
|
|
str r0, [r1]
|
|
ldr r0, _0800C4E4 @ =0x06010000
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800C4E8 @ =0x81002800
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
bl sub_10544
|
|
ldr r1, _0800C4EC @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
add sp, #8
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C4DC: .4byte 0x040000D4
|
|
_0800C4E0: .4byte 0x85000100
|
|
_0800C4E4: .4byte 0x06010000
|
|
_0800C4E8: .4byte 0x81002800
|
|
_0800C4EC: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_C4F0
|
|
sub_C4F0: @ 0x0800C4F0
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sl
|
|
mov r6, sb
|
|
mov r5, r8
|
|
push {r5, r6, r7}
|
|
sub sp, #0x20
|
|
ldr r0, _0800C64C @ =0x0200B3B8
|
|
mov r8, r0
|
|
ldr r6, _0800C650 @ =0x0201A450
|
|
movs r1, #0x28
|
|
ldrsh r0, [r6, r1]
|
|
movs r2, #0xe6
|
|
lsls r2, r2, #2
|
|
adds r3, r0, #0
|
|
muls r3, r2, r3
|
|
movs r0, #0xb8
|
|
lsls r0, r0, #1
|
|
add r0, r8
|
|
adds r3, r3, r0
|
|
str r3, [sp]
|
|
movs r7, #0x38
|
|
ldrsh r0, [r6, r7]
|
|
muls r0, r2, r0
|
|
movs r1, #0x8a
|
|
lsls r1, r1, #2
|
|
add r1, r8
|
|
adds r0, r0, r1
|
|
str r0, [sp, #4]
|
|
adds r0, r6, #0
|
|
adds r0, #0x48
|
|
movs r1, #0
|
|
ldrsh r0, [r0, r1]
|
|
muls r0, r2, r0
|
|
movs r1, #0xb8
|
|
lsls r1, r1, #2
|
|
add r1, r8
|
|
adds r0, r0, r1
|
|
str r0, [sp, #8]
|
|
adds r0, r6, #0
|
|
adds r0, #0x58
|
|
movs r7, #0
|
|
ldrsh r0, [r0, r7]
|
|
muls r0, r2, r0
|
|
adds r1, r2, #0
|
|
add r1, r8
|
|
adds r0, r0, r1
|
|
str r0, [sp, #0xc]
|
|
adds r0, r6, #0
|
|
adds r0, #0x68
|
|
movs r1, #0
|
|
ldrsh r0, [r0, r1]
|
|
muls r0, r2, r0
|
|
movs r1, #0x8a
|
|
lsls r1, r1, #3
|
|
add r1, r8
|
|
adds r0, r0, r1
|
|
str r0, [sp, #0x10]
|
|
movs r0, #0xc
|
|
ldrsb r0, [r6, r0]
|
|
mov r2, r8
|
|
strh r0, [r2]
|
|
movs r0, #1
|
|
ldr r7, _0800C654 @ =0x0200B470
|
|
strh r0, [r7]
|
|
adds r0, r6, #0
|
|
adds r0, #0x2c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r3]
|
|
ldr r1, [sp, #4]
|
|
adds r0, r6, #0
|
|
adds r0, #0x3c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #8]
|
|
adds r0, r6, #0
|
|
adds r0, #0x4c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #0xc]
|
|
adds r0, r6, #0
|
|
adds r0, #0x5c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #0x10]
|
|
adds r0, r6, #0
|
|
adds r0, #0x6c
|
|
ldrb r0, [r0]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
strh r0, [r1]
|
|
ldr r0, _0800C658 @ =gUnknown_086A7C24
|
|
movs r1, #0x11
|
|
bl LoadSpriteSets
|
|
mov r1, r8
|
|
ldrh r0, [r1]
|
|
cmp r0, #1
|
|
bne _0800C614
|
|
ldrh r0, [r6]
|
|
strh r0, [r1, #2]
|
|
ldrh r0, [r6, #2]
|
|
strh r0, [r1, #4]
|
|
mov r5, r8
|
|
adds r5, #8
|
|
ldr r4, _0800C65C @ =gOamBuffer
|
|
ldrh r1, [r1, #8]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r4
|
|
ldrb r2, [r1, #5]
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
ands r0, r2
|
|
strb r0, [r1, #5]
|
|
mov r3, r8
|
|
ldrh r2, [r3, #8]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r4
|
|
movs r7, #2
|
|
ldrsh r1, [r5, r7]
|
|
movs r7, #2
|
|
ldrsh r0, [r3, r7]
|
|
adds r1, r1, r0
|
|
ldr r3, _0800C660 @ =0x000001FF
|
|
adds r0, r3, #0
|
|
ands r1, r0
|
|
ldrh r3, [r2, #2]
|
|
ldr r0, _0800C664 @ =0xFFFFFE00
|
|
ands r0, r3
|
|
orrs r0, r1
|
|
strh r0, [r2, #2]
|
|
mov r7, r8
|
|
ldrh r1, [r7, #8]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r4
|
|
ldrb r0, [r7, #4]
|
|
ldrb r5, [r5, #4]
|
|
adds r0, r0, r5
|
|
strb r0, [r1]
|
|
_0800C614:
|
|
movs r5, #0
|
|
str r6, [sp, #0x14]
|
|
_0800C618:
|
|
lsls r1, r5, #2
|
|
mov r2, sp
|
|
adds r0, r2, r1
|
|
ldr r0, [r0]
|
|
ldrh r0, [r0]
|
|
adds r4, r1, #0
|
|
adds r3, r5, #1
|
|
str r3, [sp, #0x18]
|
|
cmp r0, #1
|
|
beq _0800C62E
|
|
b _0800C75A
|
|
_0800C62E:
|
|
ldr r1, _0800C668 @ =0x0202A578
|
|
ldrh r0, [r1]
|
|
adds r0, #1
|
|
strh r0, [r1]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #5
|
|
ble _0800C670
|
|
lsls r1, r5, #3
|
|
ldr r6, _0800C66C @ =gUnknown_086A7C68
|
|
adds r0, r1, r6
|
|
ldrb r2, [r0, #2]
|
|
ldrb r0, [r0, #3]
|
|
b _0800C67A
|
|
.align 2, 0
|
|
_0800C64C: .4byte 0x0200B3B8
|
|
_0800C650: .4byte 0x0201A450
|
|
_0800C654: .4byte 0x0200B470
|
|
_0800C658: .4byte gUnknown_086A7C24
|
|
_0800C65C: .4byte gOamBuffer
|
|
_0800C660: .4byte 0x000001FF
|
|
_0800C664: .4byte 0xFFFFFE00
|
|
_0800C668: .4byte 0x0202A578
|
|
_0800C66C: .4byte gUnknown_086A7C68
|
|
_0800C670:
|
|
lsls r1, r5, #3
|
|
ldr r7, _0800C7F8 @ =gUnknown_086A7C68
|
|
adds r0, r1, r7
|
|
ldrb r2, [r0]
|
|
ldrb r0, [r0, #1]
|
|
_0800C67A:
|
|
adds r7, r1, #0
|
|
adds r3, r5, #2
|
|
lsls r1, r3, #4
|
|
ldr r6, [sp, #0x14]
|
|
adds r1, r1, r6
|
|
lsls r2, r2, #0x18
|
|
asrs r2, r2, #0x18
|
|
ldrh r6, [r1]
|
|
adds r2, r2, r6
|
|
strh r2, [r1]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
ldrh r6, [r1, #2]
|
|
adds r0, r0, r6
|
|
strh r0, [r1, #2]
|
|
add r4, sp
|
|
ldr r0, [r4]
|
|
strh r2, [r0, #2]
|
|
ldr r2, [r4]
|
|
ldrh r0, [r1, #2]
|
|
strh r0, [r2, #4]
|
|
movs r0, #8
|
|
ldrsh r1, [r1, r0]
|
|
lsls r0, r1, #2
|
|
adds r0, r0, r1
|
|
adds r0, #2
|
|
adds r0, r5, r0
|
|
lsls r0, r0, #2
|
|
ldr r1, _0800C7FC @ =gUnknown_086A7C24
|
|
adds r0, r0, r1
|
|
ldr r0, [r0]
|
|
mov sb, r0
|
|
movs r6, #0
|
|
str r3, [sp, #0x1c]
|
|
adds r5, #1
|
|
str r5, [sp, #0x18]
|
|
ldrh r2, [r0]
|
|
cmp r6, r2
|
|
bge _0800C732
|
|
ldr r3, _0800C800 @ =gOamBuffer
|
|
mov ip, r3
|
|
ldr r0, _0800C7F8 @ =gUnknown_086A7C68
|
|
adds r7, r7, r0
|
|
mov sl, r7
|
|
movs r7, #8
|
|
_0800C6D4:
|
|
ldr r0, [r4]
|
|
adds r5, r0, r7
|
|
ldrh r2, [r5]
|
|
lsls r2, r2, #3
|
|
add r2, ip
|
|
mov r0, sl
|
|
ldrb r1, [r0, #5]
|
|
movs r3, #3
|
|
ands r1, r3
|
|
lsls r1, r1, #2
|
|
ldrb r3, [r2, #5]
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
ands r0, r3
|
|
orrs r0, r1
|
|
strb r0, [r2, #5]
|
|
ldrh r2, [r5]
|
|
lsls r2, r2, #3
|
|
add r2, ip
|
|
movs r0, #2
|
|
ldrsh r1, [r5, r0]
|
|
ldr r0, [r4]
|
|
movs r3, #2
|
|
ldrsh r0, [r0, r3]
|
|
adds r1, r1, r0
|
|
ldr r3, _0800C804 @ =0x000001FF
|
|
adds r0, r3, #0
|
|
ands r1, r0
|
|
ldrh r3, [r2, #2]
|
|
ldr r0, _0800C808 @ =0xFFFFFE00
|
|
ands r0, r3
|
|
orrs r0, r1
|
|
strh r0, [r2, #2]
|
|
ldrh r1, [r5]
|
|
lsls r1, r1, #3
|
|
add r1, ip
|
|
ldr r0, [r4]
|
|
ldrb r0, [r0, #4]
|
|
ldrb r5, [r5, #4]
|
|
adds r0, r0, r5
|
|
strb r0, [r1]
|
|
adds r7, #8
|
|
adds r6, #1
|
|
mov r0, sb
|
|
ldrh r0, [r0]
|
|
cmp r6, r0
|
|
blt _0800C6D4
|
|
_0800C732:
|
|
ldr r1, [sp, #0x1c]
|
|
lsls r0, r1, #4
|
|
ldr r2, [sp, #0x14]
|
|
adds r3, r0, r2
|
|
ldrh r0, [r3, #0xa]
|
|
adds r0, #1
|
|
movs r1, #0
|
|
strh r0, [r3, #0xa]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #4
|
|
ble _0800C75A
|
|
strh r1, [r3, #0xa]
|
|
ldrh r1, [r3, #8]
|
|
movs r6, #8
|
|
ldrsh r0, [r3, r6]
|
|
cmp r0, #1
|
|
bgt _0800C75A
|
|
adds r0, r1, #1
|
|
strh r0, [r3, #8]
|
|
_0800C75A:
|
|
ldr r5, [sp, #0x18]
|
|
cmp r5, #4
|
|
bgt _0800C762
|
|
b _0800C618
|
|
_0800C762:
|
|
ldr r7, _0800C80C @ =0x0200B470
|
|
ldrh r0, [r7]
|
|
cmp r0, #1
|
|
bne _0800C7C8
|
|
ldr r0, _0800C810 @ =0x0201A450
|
|
ldrh r1, [r0, #0x10]
|
|
strh r1, [r7, #2]
|
|
ldrh r0, [r0, #0x12]
|
|
strh r0, [r7, #4]
|
|
ldr r5, _0800C800 @ =gOamBuffer
|
|
ldr r0, _0800C808 @ =0xFFFFFE00
|
|
mov sb, r0
|
|
adds r4, r7, #0
|
|
adds r4, #8
|
|
movs r6, #3
|
|
_0800C780:
|
|
ldrh r2, [r4]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r5
|
|
ldrb r0, [r2, #5]
|
|
movs r1, #0xc
|
|
orrs r0, r1
|
|
strb r0, [r2, #5]
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
adds r3, r3, r5
|
|
movs r2, #2
|
|
ldrsh r1, [r4, r2]
|
|
ldr r7, _0800C80C @ =0x0200B470
|
|
movs r2, #2
|
|
ldrsh r0, [r7, r2]
|
|
adds r1, r1, r0
|
|
ldr r7, _0800C804 @ =0x000001FF
|
|
adds r0, r7, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
mov r0, sb
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r5
|
|
ldr r2, _0800C80C @ =0x0200B470
|
|
ldrb r0, [r2, #4]
|
|
ldrb r3, [r4, #4]
|
|
adds r0, r0, r3
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
subs r6, #1
|
|
cmp r6, #0
|
|
bge _0800C780
|
|
_0800C7C8:
|
|
movs r0, #0
|
|
ldr r6, _0800C80C @ =0x0200B470
|
|
strh r0, [r6]
|
|
mov r7, r8
|
|
strh r0, [r7]
|
|
ldr r1, [sp]
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #4]
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #8]
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #0xc]
|
|
strh r0, [r1]
|
|
ldr r1, [sp, #0x10]
|
|
strh r0, [r1]
|
|
add sp, #0x20
|
|
pop {r3, r4, r5}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
mov sl, r5
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C7F8: .4byte gUnknown_086A7C68
|
|
_0800C7FC: .4byte gUnknown_086A7C24
|
|
_0800C800: .4byte gOamBuffer
|
|
_0800C804: .4byte 0x000001FF
|
|
_0800C808: .4byte 0xFFFFFE00
|
|
_0800C80C: .4byte 0x0200B470
|
|
_0800C810: .4byte 0x0201A450
|
|
|
|
thumb_func_start sub_C814
|
|
sub_C814: @ 0x0800C814
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sl
|
|
mov r6, sb
|
|
mov r5, r8
|
|
push {r5, r6, r7}
|
|
sub sp, #4
|
|
bl sub_518
|
|
movs r0, #0
|
|
str r0, [sp]
|
|
ldr r1, _0800C924 @ =0x040000D4
|
|
mov r0, sp
|
|
str r0, [r1]
|
|
movs r0, #0xe0
|
|
lsls r0, r0, #0x13
|
|
str r0, [r1, #4]
|
|
ldr r0, _0800C928 @ =0x85000100
|
|
str r0, [r1, #8]
|
|
ldr r0, [r1, #8]
|
|
movs r5, #0
|
|
ldr r6, _0800C92C @ =gMain
|
|
movs r1, #0xb8
|
|
mov sb, r1
|
|
movs r4, #0
|
|
movs r3, #0xc0
|
|
lsls r3, r3, #2
|
|
mov r8, r3
|
|
ldr r7, _0800C930 @ =0x00000302
|
|
mov ip, r7
|
|
movs r0, #0xc1
|
|
lsls r0, r0, #2
|
|
mov sl, r0
|
|
_0800C854:
|
|
mov r2, sb
|
|
muls r2, r5, r2
|
|
adds r1, r2, r6
|
|
movs r3, #0xbe
|
|
lsls r3, r3, #2
|
|
adds r0, r1, r3
|
|
strh r4, [r0]
|
|
ldr r7, _0800C934 @ =0x000002FA
|
|
adds r0, r1, r7
|
|
strh r4, [r0]
|
|
movs r0, #0xbf
|
|
lsls r0, r0, #2
|
|
adds r1, r1, r0
|
|
strh r4, [r1]
|
|
movs r3, #0
|
|
_0800C872:
|
|
lsls r0, r3, #3
|
|
adds r0, r0, r2
|
|
adds r0, r0, r6
|
|
mov r7, r8
|
|
adds r1, r0, r7
|
|
strh r4, [r1]
|
|
mov r7, ip
|
|
adds r1, r0, r7
|
|
strh r4, [r1]
|
|
add r0, sl
|
|
strh r4, [r0]
|
|
adds r0, r3, #1
|
|
lsls r0, r0, #0x10
|
|
lsrs r3, r0, #0x10
|
|
cmp r3, #0x15
|
|
bls _0800C872
|
|
adds r0, r5, #1
|
|
lsls r0, r0, #0x10
|
|
lsrs r5, r0, #0x10
|
|
cmp r5, #0x13
|
|
bls _0800C854
|
|
movs r5, #0
|
|
mov sl, r5
|
|
movs r0, #0xd
|
|
rsbs r0, r0, #0
|
|
mov ip, r0
|
|
movs r1, #0x11
|
|
rsbs r1, r1, #0
|
|
mov sb, r1
|
|
movs r3, #0x21
|
|
rsbs r3, r3, #0
|
|
mov r8, r3
|
|
movs r4, #0x3f
|
|
ldr r6, _0800C938 @ =0xFFFFFE00
|
|
adds r3, #0x12
|
|
_0800C8B8:
|
|
lsls r2, r5, #3
|
|
ldr r7, _0800C93C @ =gOamBuffer
|
|
adds r2, r2, r7
|
|
movs r0, #0xf4
|
|
strb r0, [r2]
|
|
movs r0, #0
|
|
strb r0, [r2, #1]
|
|
ldrh r1, [r2, #2]
|
|
adds r0, r6, #0
|
|
ands r0, r1
|
|
movs r7, #0xfa
|
|
lsls r7, r7, #1
|
|
adds r1, r7, #0
|
|
orrs r0, r1
|
|
strh r0, [r2, #2]
|
|
ldrb r1, [r2, #3]
|
|
adds r0, r3, #0
|
|
ands r0, r1
|
|
mov r1, sb
|
|
ands r0, r1
|
|
mov r7, r8
|
|
ands r0, r7
|
|
ands r0, r4
|
|
strb r0, [r2, #3]
|
|
ldrh r1, [r2, #4]
|
|
ldr r0, _0800C940 @ =0xFFFFFC00
|
|
ands r0, r1
|
|
strh r0, [r2, #4]
|
|
ldrb r1, [r2, #5]
|
|
mov r0, ip
|
|
ands r0, r1
|
|
movs r1, #0xf
|
|
ands r0, r1
|
|
strb r0, [r2, #5]
|
|
mov r0, sl
|
|
strh r0, [r2, #6]
|
|
adds r0, r5, #1
|
|
lsls r0, r0, #0x10
|
|
lsrs r5, r0, #0x10
|
|
cmp r5, #0x13
|
|
bls _0800C8B8
|
|
ldr r1, _0800C944 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
add sp, #4
|
|
pop {r3, r4, r5}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
mov sl, r5
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C924: .4byte 0x040000D4
|
|
_0800C928: .4byte 0x85000100
|
|
_0800C92C: .4byte gMain
|
|
_0800C930: .4byte 0x00000302
|
|
_0800C934: .4byte 0x000002FA
|
|
_0800C938: .4byte 0xFFFFFE00
|
|
_0800C93C: .4byte gOamBuffer
|
|
_0800C940: .4byte 0xFFFFFC00
|
|
_0800C944: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_C948
|
|
sub_C948: @ 0x0800C948
|
|
push {r4, lr}
|
|
movs r3, #0x80
|
|
lsls r3, r3, #0x13
|
|
movs r1, #0x80
|
|
lsls r1, r1, #5
|
|
adds r0, r1, #0
|
|
strh r0, [r3]
|
|
ldr r1, _0800C9E4 @ =0x0400000E
|
|
movs r0, #7
|
|
strh r0, [r1]
|
|
ldrh r0, [r3]
|
|
movs r2, #0x80
|
|
lsls r2, r2, #4
|
|
adds r1, r2, #0
|
|
orrs r0, r1
|
|
strh r0, [r3]
|
|
ldr r0, _0800C9E8 @ =0x040000D4
|
|
ldr r1, _0800C9EC @ =gUnknown_08115A60
|
|
str r1, [r0]
|
|
movs r1, #0xc0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800C9F0 @ =0x80000400
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800C9F4 @ =gUnknown_08116260
|
|
str r1, [r0]
|
|
ldr r1, _0800C9F8 @ =0x06004000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800C9FC @ =0x80001200
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r4, _0800CA00 @ =gUnknown_08115860
|
|
str r4, [r0]
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
str r1, [r0, #4]
|
|
ldr r2, _0800CA04 @ =0x80000020
|
|
str r2, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
ldr r1, _0800CA08 @ =gUnknown_08118680
|
|
str r1, [r0]
|
|
ldr r1, _0800CA0C @ =0x06010000
|
|
str r1, [r0, #4]
|
|
ldr r1, _0800CA10 @ =0x80003800
|
|
str r1, [r0, #8]
|
|
ldr r1, [r0, #8]
|
|
str r4, [r0]
|
|
ldr r1, _0800CA14 @ =0x05000200
|
|
str r1, [r0, #4]
|
|
str r2, [r0, #8]
|
|
ldr r0, [r0, #8]
|
|
ldr r4, _0800CA18 @ =gMain
|
|
ldrh r0, [r3]
|
|
strh r0, [r4, #0x16]
|
|
bl sub_CA28
|
|
ldr r2, _0800CA1C @ =0x0202ADA0
|
|
ldrh r1, [r2]
|
|
movs r3, #0xbd
|
|
lsls r3, r3, #2
|
|
adds r0, r4, r3
|
|
strh r1, [r0]
|
|
ldrh r0, [r2, #2]
|
|
ldr r1, _0800CA20 @ =0x000002F6
|
|
adds r4, r4, r1
|
|
strh r0, [r4]
|
|
bl sub_CBC
|
|
bl sub_10424
|
|
ldr r1, _0800CA24 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800C9E4: .4byte 0x0400000E
|
|
_0800C9E8: .4byte 0x040000D4
|
|
_0800C9EC: .4byte gUnknown_08115A60
|
|
_0800C9F0: .4byte 0x80000400
|
|
_0800C9F4: .4byte gUnknown_08116260
|
|
_0800C9F8: .4byte 0x06004000
|
|
_0800C9FC: .4byte 0x80001200
|
|
_0800CA00: .4byte gUnknown_08115860
|
|
_0800CA04: .4byte 0x80000020
|
|
_0800CA08: .4byte gUnknown_08118680
|
|
_0800CA0C: .4byte 0x06010000
|
|
_0800CA10: .4byte 0x80003800
|
|
_0800CA14: .4byte 0x05000200
|
|
_0800CA18: .4byte gMain
|
|
_0800CA1C: .4byte 0x0202ADA0
|
|
_0800CA20: .4byte 0x000002F6
|
|
_0800CA24: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_CA28
|
|
sub_CA28: @ 0x0800CA28
|
|
push {r4, lr}
|
|
ldr r0, _0800CA80 @ =0x0202ADA0
|
|
movs r4, #0
|
|
movs r3, #0
|
|
strh r3, [r0]
|
|
strh r3, [r0, #2]
|
|
ldr r1, _0800CA84 @ =0x0201A450
|
|
movs r0, #0xf0
|
|
strh r0, [r1]
|
|
movs r0, #0x1e
|
|
strh r0, [r1, #2]
|
|
movs r0, #0xe
|
|
strh r0, [r1, #4]
|
|
movs r2, #1
|
|
movs r0, #1
|
|
strh r0, [r1, #8]
|
|
strb r2, [r1, #0xc]
|
|
movs r0, #0x84
|
|
lsls r0, r0, #1
|
|
strh r0, [r1, #0x10]
|
|
movs r0, #0x50
|
|
strh r0, [r1, #0x12]
|
|
movs r0, #6
|
|
strh r0, [r1, #0x14]
|
|
strb r4, [r1, #0x1c]
|
|
ldr r0, _0800CA88 @ =0x0202BF10
|
|
strh r3, [r0]
|
|
ldr r0, _0800CA8C @ =0x0202A578
|
|
strh r3, [r0]
|
|
ldr r0, _0800CA90 @ =0x0202C5E4
|
|
movs r2, #0x80
|
|
lsls r2, r2, #1
|
|
adds r1, r2, #0
|
|
strh r1, [r0]
|
|
ldr r0, _0800CA94 @ =0x0202ADD8
|
|
strh r1, [r0]
|
|
ldr r0, _0800CA98 @ =0x0202BEDC
|
|
strb r4, [r0]
|
|
ldr r0, _0800CA9C @ =0x0202A56C
|
|
strb r4, [r0]
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800CA80: .4byte 0x0202ADA0
|
|
_0800CA84: .4byte 0x0201A450
|
|
_0800CA88: .4byte 0x0202BF10
|
|
_0800CA8C: .4byte 0x0202A578
|
|
_0800CA90: .4byte 0x0202C5E4
|
|
_0800CA94: .4byte 0x0202ADD8
|
|
_0800CA98: .4byte 0x0202BEDC
|
|
_0800CA9C: .4byte 0x0202A56C
|
|
|
|
thumb_func_start sub_CAA0
|
|
sub_CAA0: @ 0x0800CAA0
|
|
push {r4, r5, lr}
|
|
ldr r4, _0800CB48 @ =0x0202ADA0
|
|
ldrh r0, [r4]
|
|
subs r0, #0x24
|
|
strh r0, [r4]
|
|
ldr r5, _0800CB4C @ =0x0201A450
|
|
ldr r1, _0800CB50 @ =gUnknown_086A7D4C
|
|
ldr r2, _0800CB54 @ =0x0202A578
|
|
movs r3, #0
|
|
ldrsh r0, [r2, r3]
|
|
adds r0, r0, r1
|
|
movs r1, #0
|
|
ldrsb r1, [r0, r1]
|
|
ldrh r0, [r5]
|
|
subs r0, r0, r1
|
|
strh r0, [r5]
|
|
ldrh r0, [r2]
|
|
adds r0, #1
|
|
strh r0, [r2]
|
|
ldr r0, _0800CB58 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r0, r1]
|
|
movs r1, #5
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _0800CAEA
|
|
ldrh r0, [r5, #8]
|
|
adds r0, #1
|
|
strh r0, [r5, #8]
|
|
lsls r0, r0, #0x10
|
|
asrs r0, r0, #0x10
|
|
cmp r0, #0xa
|
|
ble _0800CAEA
|
|
movs r0, #1
|
|
strh r0, [r5, #8]
|
|
_0800CAEA:
|
|
ldr r0, _0800CB5C @ =gMain
|
|
ldrh r1, [r4]
|
|
movs r2, #0xbd
|
|
lsls r2, r2, #2
|
|
adds r0, r0, r2
|
|
strh r1, [r0]
|
|
bl sub_CD18
|
|
ldr r2, _0800CB58 @ =0x0202BF10
|
|
movs r3, #0
|
|
ldrsh r0, [r2, r3]
|
|
cmp r0, #0x28
|
|
ble _0800CB26
|
|
ldr r1, _0800CB60 @ =0x0202C5E4
|
|
ldrh r0, [r1]
|
|
adds r0, #6
|
|
strh r0, [r1]
|
|
ldr r1, _0800CB64 @ =0x0202ADD8
|
|
ldrh r0, [r1]
|
|
adds r0, #6
|
|
strh r0, [r1]
|
|
ldrh r0, [r2]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
cmp r0, #0
|
|
bne _0800CB26
|
|
ldr r1, _0800CB4C @ =0x0201A450
|
|
ldrh r0, [r1, #2]
|
|
adds r0, #1
|
|
strh r0, [r1, #2]
|
|
_0800CB26:
|
|
ldr r0, _0800CB58 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r0, r1]
|
|
cmp r0, #0x5a
|
|
ble _0800CB42
|
|
ldr r1, _0800CB4C @ =0x0201A450
|
|
movs r0, #0
|
|
strb r0, [r1, #0xc]
|
|
movs r0, #1
|
|
strb r0, [r1, #0x1c]
|
|
ldr r1, _0800CB68 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800CB42:
|
|
pop {r4, r5}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800CB48: .4byte 0x0202ADA0
|
|
_0800CB4C: .4byte 0x0201A450
|
|
_0800CB50: .4byte gUnknown_086A7D4C
|
|
_0800CB54: .4byte 0x0202A578
|
|
_0800CB58: .4byte 0x0202BF10
|
|
_0800CB5C: .4byte gMain
|
|
_0800CB60: .4byte 0x0202C5E4
|
|
_0800CB64: .4byte 0x0202ADD8
|
|
_0800CB68: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_CB6C
|
|
sub_CB6C: @ 0x0800CB6C
|
|
ldr r0, _0800CB94 @ =0x0202ADA0
|
|
ldrh r1, [r0]
|
|
subs r1, #0x24
|
|
strh r1, [r0]
|
|
ldr r0, _0800CB98 @ =gMain
|
|
movs r2, #0xbd
|
|
lsls r2, r2, #2
|
|
adds r0, r0, r2
|
|
strh r1, [r0]
|
|
ldr r0, _0800CB9C @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r0, r1]
|
|
cmp r0, #0x78
|
|
ble _0800CB90
|
|
ldr r1, _0800CBA0 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800CB90:
|
|
bx lr
|
|
.align 2, 0
|
|
_0800CB94: .4byte 0x0202ADA0
|
|
_0800CB98: .4byte gMain
|
|
_0800CB9C: .4byte 0x0202BF10
|
|
_0800CBA0: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_CBA4
|
|
sub_CBA4: @ 0x0800CBA4
|
|
push {r4, lr}
|
|
ldr r0, _0800CBBC @ =0x0202BF10
|
|
movs r2, #0
|
|
ldrsh r1, [r0, r2]
|
|
adds r2, r0, #0
|
|
cmp r1, #0x86
|
|
bgt _0800CBC4
|
|
ldr r1, _0800CBC0 @ =0x0201A450
|
|
ldrh r0, [r1, #0x10]
|
|
subs r0, #0xc
|
|
b _0800CBCA
|
|
.align 2, 0
|
|
_0800CBBC: .4byte 0x0202BF10
|
|
_0800CBC0: .4byte 0x0201A450
|
|
_0800CBC4:
|
|
ldr r1, _0800CC68 @ =0x0201A450
|
|
ldrh r0, [r1, #0x10]
|
|
subs r0, #1
|
|
_0800CBCA:
|
|
strh r0, [r1, #0x10]
|
|
ldrh r0, [r2]
|
|
movs r1, #1
|
|
ands r0, r1
|
|
ldr r2, _0800CC6C @ =0x0202BEDC
|
|
cmp r0, #0
|
|
bne _0800CBEA
|
|
ldrb r0, [r2]
|
|
adds r0, #3
|
|
strb r0, [r2]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
cmp r0, #0x20
|
|
ble _0800CBEA
|
|
movs r0, #0x20
|
|
strb r0, [r2]
|
|
_0800CBEA:
|
|
ldr r4, _0800CC70 @ =gUnknown_08115860
|
|
ldr r1, _0800CC74 @ =0x05000200
|
|
movs r3, #0
|
|
ldrsb r3, [r2, r3]
|
|
lsls r3, r3, #0x10
|
|
lsrs r3, r3, #0x10
|
|
adds r0, r4, #0
|
|
movs r2, #0x20
|
|
bl sub_102A8
|
|
ldr r0, _0800CC78 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r0, r1]
|
|
cmp r0, #0x88
|
|
ble _0800CC30
|
|
ldr r2, _0800CC7C @ =0x0202A56C
|
|
ldrb r0, [r2]
|
|
adds r0, #2
|
|
strb r0, [r2]
|
|
lsls r0, r0, #0x18
|
|
asrs r0, r0, #0x18
|
|
cmp r0, #0x20
|
|
ble _0800CC1C
|
|
movs r0, #0x20
|
|
strb r0, [r2]
|
|
_0800CC1C:
|
|
movs r1, #0xa0
|
|
lsls r1, r1, #0x13
|
|
movs r3, #0
|
|
ldrsb r3, [r2, r3]
|
|
lsls r3, r3, #0x10
|
|
lsrs r3, r3, #0x10
|
|
adds r0, r4, #0
|
|
movs r2, #0x40
|
|
bl sub_102A8
|
|
_0800CC30:
|
|
ldr r0, _0800CC80 @ =0x0202ADA0
|
|
ldrh r1, [r0]
|
|
subs r1, #0x24
|
|
strh r1, [r0]
|
|
ldr r0, _0800CC84 @ =gMain
|
|
movs r2, #0xbd
|
|
lsls r2, r2, #2
|
|
adds r0, r0, r2
|
|
strh r1, [r0]
|
|
bl sub_CD18
|
|
ldr r1, _0800CC78 @ =0x0202BF10
|
|
movs r2, #0
|
|
ldrsh r0, [r1, r2]
|
|
cmp r0, #0x98
|
|
ble _0800CC62
|
|
movs r0, #0
|
|
strh r0, [r1]
|
|
ldr r1, _0800CC88 @ =0x0202A578
|
|
movs r0, #1
|
|
strh r0, [r1]
|
|
ldr r1, _0800CC8C @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #2
|
|
strb r0, [r1]
|
|
_0800CC62:
|
|
pop {r4}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800CC68: .4byte 0x0201A450
|
|
_0800CC6C: .4byte 0x0202BEDC
|
|
_0800CC70: .4byte gUnknown_08115860
|
|
_0800CC74: .4byte 0x05000200
|
|
_0800CC78: .4byte 0x0202BF10
|
|
_0800CC7C: .4byte 0x0202A56C
|
|
_0800CC80: .4byte 0x0202ADA0
|
|
_0800CC84: .4byte gMain
|
|
_0800CC88: .4byte 0x0202A578
|
|
_0800CC8C: .4byte 0x0202C790
|
|
|
|
thumb_func_start nullsub_14
|
|
nullsub_14: @ 0x0800CC90
|
|
bx lr
|
|
|
|
thumb_func_start sub_CC94
|
|
sub_CC94: @ 0x0800CC94
|
|
push {r4, r5, r6, lr}
|
|
ldr r6, _0800CCE4 @ =0x0202BF10
|
|
movs r1, #0
|
|
ldrsh r0, [r6, r1]
|
|
movs r1, #0xa
|
|
bl __modsi3
|
|
lsls r0, r0, #0x10
|
|
cmp r0, #0
|
|
bne _0800CCCE
|
|
ldr r1, _0800CCE8 @ =0x0202A578
|
|
ldrh r0, [r1]
|
|
adds r0, #1
|
|
strh r0, [r1]
|
|
ldr r4, _0800CCEC @ =0x02032EE0
|
|
ldr r5, _0800CCF0 @ =0x0000FFFF
|
|
movs r0, #0
|
|
ldrsh r1, [r1, r0]
|
|
movs r0, #0x80
|
|
lsls r0, r0, #1
|
|
bl __divsi3
|
|
adds r2, r0, #0
|
|
lsls r2, r2, #0x10
|
|
lsrs r2, r2, #0x10
|
|
adds r0, r4, #0
|
|
adds r1, r5, #0
|
|
bl m4aMPlayVolumeControl
|
|
_0800CCCE:
|
|
movs r1, #0
|
|
ldrsh r0, [r6, r1]
|
|
cmp r0, #0x2d
|
|
ble _0800CCDE
|
|
ldr r1, _0800CCF4 @ =0x0202C790
|
|
ldrb r0, [r1]
|
|
adds r0, #1
|
|
strb r0, [r1]
|
|
_0800CCDE:
|
|
pop {r4, r5, r6}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800CCE4: .4byte 0x0202BF10
|
|
_0800CCE8: .4byte 0x0202A578
|
|
_0800CCEC: .4byte 0x02032EE0
|
|
_0800CCF0: .4byte 0x0000FFFF
|
|
_0800CCF4: .4byte 0x0202C790
|
|
|
|
thumb_func_start sub_CCF8
|
|
sub_CCF8: @ 0x0800CCF8
|
|
push {lr}
|
|
bl sub_2B4
|
|
bl m4aMPlayAllStop
|
|
bl sub_D10
|
|
ldr r1, _0800CD14 @ =gMain
|
|
ldrb r0, [r1, #3]
|
|
adds r0, #1
|
|
strb r0, [r1, #3]
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800CD14: .4byte gMain
|
|
|
|
thumb_func_start sub_CD18
|
|
sub_CD18: @ 0x0800CD18
|
|
push {r4, r5, r6, r7, lr}
|
|
mov r7, sb
|
|
mov r6, r8
|
|
push {r6, r7}
|
|
ldr r7, _0800CE28 @ =0x0201A450
|
|
movs r0, #8
|
|
ldrsh r1, [r7, r0]
|
|
movs r0, #0xb8
|
|
muls r1, r0, r1
|
|
ldr r0, _0800CE2C @ =0x0200B3B8
|
|
adds r6, r1, r0
|
|
mov r8, r0
|
|
movs r0, #0xc
|
|
ldrsb r0, [r7, r0]
|
|
strh r0, [r6]
|
|
movs r0, #0x1c
|
|
ldrsb r0, [r7, r0]
|
|
mov r1, r8
|
|
strh r0, [r1]
|
|
ldr r0, _0800CE30 @ =gUnknown_086A7D20
|
|
movs r1, #0xb
|
|
mov r2, r8
|
|
bl LoadSpriteSets
|
|
ldrh r0, [r6]
|
|
cmp r0, #1
|
|
bne _0800CDBA
|
|
ldr r0, _0800CE34 @ =0x0202C5E4
|
|
movs r2, #0
|
|
ldrsh r0, [r0, r2]
|
|
ldr r1, _0800CE38 @ =0x0202ADD8
|
|
movs r3, #0
|
|
ldrsh r1, [r1, r3]
|
|
movs r2, #0
|
|
bl SetMatrixScale
|
|
ldrh r0, [r7]
|
|
strh r0, [r6, #2]
|
|
ldrh r0, [r7, #2]
|
|
strh r0, [r6, #4]
|
|
adds r5, r6, #0
|
|
adds r5, #8
|
|
ldr r4, _0800CE3C @ =gOamBuffer
|
|
ldrh r2, [r6, #8]
|
|
lsls r2, r2, #3
|
|
adds r2, r2, r4
|
|
movs r0, #2
|
|
ldrsh r1, [r5, r0]
|
|
movs r3, #2
|
|
ldrsh r0, [r6, r3]
|
|
adds r1, r1, r0
|
|
ldr r3, _0800CE40 @ =0x000001FF
|
|
adds r0, r3, #0
|
|
ands r1, r0
|
|
ldrh r3, [r2, #2]
|
|
ldr r0, _0800CE44 @ =0xFFFFFE00
|
|
ands r0, r3
|
|
orrs r0, r1
|
|
strh r0, [r2, #2]
|
|
ldrh r1, [r6, #8]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r4
|
|
ldrb r0, [r6, #4]
|
|
ldrb r5, [r5, #4]
|
|
adds r0, r0, r5
|
|
strb r0, [r1]
|
|
ldrh r1, [r6, #8]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r4
|
|
ldrb r0, [r1, #1]
|
|
movs r2, #3
|
|
orrs r0, r2
|
|
strb r0, [r1, #1]
|
|
ldrh r1, [r6, #8]
|
|
lsls r1, r1, #3
|
|
adds r1, r1, r4
|
|
ldrb r2, [r1, #3]
|
|
movs r0, #0xf
|
|
rsbs r0, r0, #0
|
|
ands r0, r2
|
|
strb r0, [r1, #3]
|
|
_0800CDBA:
|
|
mov r1, r8
|
|
ldrh r0, [r1]
|
|
cmp r0, #1
|
|
bne _0800CE12
|
|
ldrh r0, [r7, #0x10]
|
|
strh r0, [r1, #2]
|
|
ldrh r0, [r7, #0x12]
|
|
strh r0, [r1, #4]
|
|
ldr r2, _0800CE3C @ =gOamBuffer
|
|
mov sb, r2
|
|
ldr r3, _0800CE44 @ =0xFFFFFE00
|
|
mov ip, r3
|
|
mov r4, r8
|
|
adds r4, #8
|
|
movs r5, #3
|
|
_0800CDD8:
|
|
ldrh r3, [r4]
|
|
lsls r3, r3, #3
|
|
add r3, sb
|
|
movs r7, #2
|
|
ldrsh r1, [r4, r7]
|
|
mov r2, r8
|
|
movs r7, #2
|
|
ldrsh r0, [r2, r7]
|
|
adds r1, r1, r0
|
|
ldr r2, _0800CE40 @ =0x000001FF
|
|
adds r0, r2, #0
|
|
ands r1, r0
|
|
ldrh r2, [r3, #2]
|
|
mov r0, ip
|
|
ands r0, r2
|
|
orrs r0, r1
|
|
strh r0, [r3, #2]
|
|
ldrh r1, [r4]
|
|
lsls r1, r1, #3
|
|
add r1, sb
|
|
mov r3, r8
|
|
ldrb r0, [r3, #4]
|
|
ldrb r7, [r4, #4]
|
|
adds r0, r0, r7
|
|
strb r0, [r1]
|
|
adds r4, #8
|
|
subs r5, #1
|
|
cmp r5, #0
|
|
bge _0800CDD8
|
|
_0800CE12:
|
|
movs r0, #0
|
|
strh r0, [r6]
|
|
mov r1, r8
|
|
strh r0, [r1]
|
|
pop {r3, r4}
|
|
mov r8, r3
|
|
mov sb, r4
|
|
pop {r4, r5, r6, r7}
|
|
pop {r0}
|
|
bx r0
|
|
.align 2, 0
|
|
_0800CE28: .4byte 0x0201A450
|
|
_0800CE2C: .4byte 0x0200B3B8
|
|
_0800CE30: .4byte gUnknown_086A7D20
|
|
_0800CE34: .4byte 0x0202C5E4
|
|
_0800CE38: .4byte 0x0202ADD8
|
|
_0800CE3C: .4byte gOamBuffer
|
|
_0800CE40: .4byte 0x000001FF
|
|
_0800CE44: .4byte 0xFFFFFE00
|