through sub_8103A40

This commit is contained in:
PikalaxALT
2019-12-11 11:02:42 -05:00
parent 6645ad8ccf
commit f55abfddc5
7 changed files with 221 additions and 728 deletions
-716
View File
@@ -5,722 +5,6 @@
.text
thumb_func_start sub_8103518
sub_8103518: @ 8103518
push {r4-r7,lr}
mov r7, r10
mov r6, r9
mov r5, r8
push {r5-r7}
sub sp, 0x4
lsls r0, 24
lsrs r4, r0, 24
bl IsNationalPokedexEnabled
movs r1, 0x97
str r1, [sp]
cmp r0, 0
beq _0810353A
movs r2, 0xC1
lsls r2, 1
str r2, [sp]
_0810353A:
movs r0, 0
mov r10, r0
cmp r4, 0x5
bhi _08103568
lsls r0, r4, 2
ldr r1, _0810354C @ =_08103550
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
_0810354C: .4byte _08103550
.align 2, 0
_08103550:
.4byte _08103568
.4byte _08103604
.4byte _0810369C
.4byte _0810373C
.4byte _081037D8
.4byte _08103874
_08103568:
movs r1, 0
mov r8, r1
_0810356C:
mov r4, r8
adds r4, 0x1
lsls r0, r4, 16
lsrs r5, r0, 16
adds r0, r5, 0
movs r1, 0
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r7, r0, 24
adds r0, r5, 0
movs r1, 0x1
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r6, r0, 24
mov r9, r4
cmp r7, 0
beq _081035C4
adds r0, r5, 0
bl NationalPokedexNumToSpecies
ldr r2, _081035BC @ =gUnknown_203ACF0
ldr r1, [r2]
ldr r2, [r1, 0x44]
mov r1, r8
lsls r3, r1, 3
adds r2, r3, r2
lsls r0, 16
lsrs r0, 16
movs r1, 0xB
muls r0, r1
ldr r1, _081035C0 @ =gSpeciesNames
adds r0, r1
str r0, [r2]
mov r10, r5
adds r4, r3, 0
b _081035D6
.align 2, 0
_081035BC: .4byte gUnknown_203ACF0
_081035C0: .4byte gSpeciesNames
_081035C4:
ldr r2, _081035FC @ =gUnknown_203ACF0
ldr r0, [r2]
ldr r1, [r0, 0x44]
mov r0, r8
lsls r2, r0, 3
adds r1, r2, r1
ldr r0, _08103600 @ =gUnknown_8415F66
str r0, [r1]
adds r4, r2, 0
_081035D6:
adds r0, r5, 0
bl NationalPokedexNumToSpecies
ldr r2, _081035FC @ =gUnknown_203ACF0
ldr r1, [r2]
ldr r3, [r1, 0x44]
adds r3, r4, r3
lsls r2, r6, 17
lsls r1, r7, 16
adds r2, r1
lsls r0, 16
lsrs r0, 16
adds r2, r0
str r2, [r3, 0x4]
mov r8, r9
mov r0, r8
cmp r0, 0x96
ble _0810356C
b _08103906
.align 2, 0
_081035FC: .4byte gUnknown_203ACF0
_08103600: .4byte gUnknown_8415F66
_08103604:
movs r1, 0
mov r8, r1
ldr r2, _08103690 @ =gUnknown_203ACF0
mov r9, r2
_0810360C:
ldr r1, _08103694 @ =gUnknown_8443FC0
mov r2, r8
lsls r0, r2, 1
adds r0, r1
ldrh r5, [r0]
ldr r0, [sp]
cmp r5, r0
bgt _08103682
adds r0, r5, 0
movs r1, 0
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r7, r0, 24
adds r0, r5, 0
movs r1, 0x1
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r6, r0, 24
cmp r7, 0
beq _08103682
adds r0, r5, 0
bl NationalPokedexNumToSpecies
mov r2, r9
ldr r1, [r2]
ldr r2, [r1, 0x44]
mov r1, r10
lsls r4, r1, 3
adds r2, r4, r2
lsls r0, 16
lsrs r0, 16
movs r1, 0xB
muls r0, r1
ldr r1, _08103698 @ =gSpeciesNames
adds r0, r1
str r0, [r2]
adds r0, r5, 0
bl NationalPokedexNumToSpecies
mov r2, r9
ldr r1, [r2]
ldr r1, [r1, 0x44]
adds r4, r1
lsls r2, r6, 17
lsls r1, r7, 16
adds r2, r1
lsls r0, 16
lsrs r0, 16
adds r2, r0
str r2, [r4, 0x4]
mov r0, r10
adds r0, 0x1
lsls r0, 16
lsrs r0, 16
mov r10, r0
_08103682:
movs r0, 0x1
add r8, r0
movs r0, 0xCD
lsls r0, 1
cmp r8, r0
ble _0810360C
b _08103906
.align 2, 0
_08103690: .4byte gUnknown_203ACF0
_08103694: .4byte gUnknown_8443FC0
_08103698: .4byte gSpeciesNames
_0810369C:
movs r1, 0
mov r8, r1
ldr r2, _08103730 @ =gUnknown_203ACF0
mov r9, r2
_081036A4:
ldr r1, _08103734 @ =gUnknown_84448FE
mov r2, r8
lsls r0, r2, 1
adds r0, r1
ldrh r0, [r0]
bl SpeciesToNationalPokedexNum
lsls r0, 16
lsrs r5, r0, 16
ldr r0, [sp]
cmp r5, r0
bgt _08103722
adds r0, r5, 0
movs r1, 0
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r7, r0, 24
adds r0, r5, 0
movs r1, 0x1
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r6, r0, 24
cmp r6, 0
beq _08103722
adds r0, r5, 0
bl NationalPokedexNumToSpecies
mov r2, r9
ldr r1, [r2]
ldr r2, [r1, 0x44]
mov r1, r10
lsls r4, r1, 3
adds r2, r4, r2
lsls r0, 16
lsrs r0, 16
movs r1, 0xB
muls r0, r1
ldr r1, _08103738 @ =gSpeciesNames
adds r0, r1
str r0, [r2]
adds r0, r5, 0
bl NationalPokedexNumToSpecies
mov r2, r9
ldr r1, [r2]
ldr r1, [r1, 0x44]
adds r4, r1
lsls r2, r6, 17
lsls r1, r7, 16
adds r2, r1
lsls r0, 16
lsrs r0, 16
adds r2, r0
str r2, [r4, 0x4]
mov r0, r10
adds r0, 0x1
lsls r0, 16
lsrs r0, 16
mov r10, r0
_08103722:
movs r0, 0x1
add r8, r0
movs r0, 0xCD
lsls r0, 1
cmp r8, r0
ble _081036A4
b _08103906
.align 2, 0
_08103730: .4byte gUnknown_203ACF0
_08103734: .4byte gUnknown_84448FE
_08103738: .4byte gSpeciesNames
_0810373C:
movs r1, 0
mov r8, r1
ldr r2, _081037C8 @ =gUnknown_203ACF0
mov r9, r2
_08103744:
ldr r1, _081037CC @ =gUnknown_84442F6
mov r2, r8
lsls r0, r2, 1
adds r0, r1
ldrh r5, [r0]
ldr r0, [sp]
cmp r5, r0
bgt _081037BA
adds r0, r5, 0
movs r1, 0
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r7, r0, 24
adds r0, r5, 0
movs r1, 0x1
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r6, r0, 24
cmp r6, 0
beq _081037BA
adds r0, r5, 0
bl NationalPokedexNumToSpecies
mov r2, r9
ldr r1, [r2]
ldr r2, [r1, 0x44]
mov r1, r10
lsls r4, r1, 3
adds r2, r4, r2
lsls r0, 16
lsrs r0, 16
movs r1, 0xB
muls r0, r1
ldr r1, _081037D0 @ =gSpeciesNames
adds r0, r1
str r0, [r2]
adds r0, r5, 0
bl NationalPokedexNumToSpecies
mov r2, r9
ldr r1, [r2]
ldr r1, [r1, 0x44]
adds r4, r1
lsls r2, r6, 17
lsls r1, r7, 16
adds r2, r1
lsls r0, 16
lsrs r0, 16
adds r2, r0
str r2, [r4, 0x4]
mov r0, r10
adds r0, 0x1
lsls r0, 16
lsrs r0, 16
mov r10, r0
_081037BA:
movs r0, 0x1
add r8, r0
ldr r0, _081037D4 @ =0x00000181
cmp r8, r0
ble _08103744
b _08103906
.align 2, 0
_081037C8: .4byte gUnknown_203ACF0
_081037CC: .4byte gUnknown_84442F6
_081037D0: .4byte gSpeciesNames
_081037D4: .4byte 0x00000181
_081037D8:
movs r1, 0
mov r8, r1
ldr r2, _08103864 @ =gUnknown_203ACF0
mov r9, r2
_081037E0:
ldr r1, _08103868 @ =gUnknown_84445FA
mov r2, r8
lsls r0, r2, 1
adds r0, r1
ldrh r5, [r0]
ldr r0, [sp]
cmp r5, r0
bgt _08103856
adds r0, r5, 0
movs r1, 0
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r7, r0, 24
adds r0, r5, 0
movs r1, 0x1
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r6, r0, 24
cmp r6, 0
beq _08103856
adds r0, r5, 0
bl NationalPokedexNumToSpecies
mov r2, r9
ldr r1, [r2]
ldr r2, [r1, 0x44]
mov r1, r10
lsls r4, r1, 3
adds r2, r4, r2
lsls r0, 16
lsrs r0, 16
movs r1, 0xB
muls r0, r1
ldr r1, _0810386C @ =gSpeciesNames
adds r0, r1
str r0, [r2]
adds r0, r5, 0
bl NationalPokedexNumToSpecies
mov r2, r9
ldr r1, [r2]
ldr r1, [r1, 0x44]
adds r4, r1
lsls r2, r6, 17
lsls r1, r7, 16
adds r2, r1
lsls r0, 16
lsrs r0, 16
adds r2, r0
str r2, [r4, 0x4]
mov r0, r10
adds r0, 0x1
lsls r0, 16
lsrs r0, 16
mov r10, r0
_08103856:
movs r0, 0x1
add r8, r0
ldr r0, _08103870 @ =0x00000181
cmp r8, r0
ble _081037E0
b _08103906
.align 2, 0
_08103864: .4byte gUnknown_203ACF0
_08103868: .4byte gUnknown_84445FA
_0810386C: .4byte gSpeciesNames
_08103870: .4byte 0x00000181
_08103874:
movs r1, 0
mov r8, r1
_08103878:
mov r4, r8
adds r4, 0x1
lsls r0, r4, 16
lsrs r5, r0, 16
adds r0, r5, 0
movs r1, 0
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r7, r0, 24
adds r0, r5, 0
movs r1, 0x1
movs r2, 0
bl sub_8104AB0
lsls r0, 24
lsrs r6, r0, 24
mov r9, r4
cmp r7, 0
beq _081038D0
adds r0, r5, 0
bl NationalPokedexNumToSpecies
ldr r2, _081038C8 @ =gUnknown_203ACF0
ldr r1, [r2]
ldr r2, [r1, 0x44]
mov r1, r8
lsls r3, r1, 3
adds r2, r3, r2
lsls r0, 16
lsrs r0, 16
movs r1, 0xB
muls r0, r1
ldr r1, _081038CC @ =gSpeciesNames
adds r0, r1
str r0, [r2]
mov r10, r5
adds r4, r3, 0
b _081038E2
.align 2, 0
_081038C8: .4byte gUnknown_203ACF0
_081038CC: .4byte gSpeciesNames
_081038D0:
ldr r2, _08103918 @ =gUnknown_203ACF0
ldr r0, [r2]
ldr r1, [r0, 0x44]
mov r0, r8
lsls r2, r0, 3
adds r1, r2, r1
ldr r0, _0810391C @ =gUnknown_8415F66
str r0, [r1]
adds r4, r2, 0
_081038E2:
adds r0, r5, 0
bl NationalPokedexNumToSpecies
ldr r2, _08103918 @ =gUnknown_203ACF0
ldr r1, [r2]
ldr r3, [r1, 0x44]
adds r3, r4, r3
lsls r2, r6, 17
lsls r1, r7, 16
adds r2, r1
lsls r0, 16
lsrs r0, 16
adds r2, r0
str r2, [r3, 0x4]
mov r8, r9
ldr r0, _08103920 @ =0x00000181
cmp r8, r0
ble _08103878
_08103906:
mov r0, r10
add sp, 0x4
pop {r3-r5}
mov r8, r3
mov r9, r4
mov r10, r5
pop {r4-r7}
pop {r1}
bx r1
.align 2, 0
_08103918: .4byte gUnknown_203ACF0
_0810391C: .4byte gUnknown_8415F66
_08103920: .4byte 0x00000181
thumb_func_end sub_8103518
thumb_func_start sub_8103924
sub_8103924: @ 8103924
push {r4,r5,lr}
adds r5, r0, 0
lsls r1, 24
lsrs r1, 24
cmp r1, 0x4
bgt _08103936
cmp r1, 0x1
bge _08103950
b _0810393A
_08103936:
cmp r1, 0x5
beq _08103964
_0810393A:
ldr r1, _08103948 @ =gUnknown_845218C
ldr r4, _0810394C @ =gUnknown_203ACF0
ldr r0, [r4]
ldrh r2, [r0, 0x36]
ldrh r3, [r0, 0x34]
b _0810396E
.align 2, 0
_08103948: .4byte gUnknown_845218C
_0810394C: .4byte gUnknown_203ACF0
_08103950:
ldr r1, _0810395C @ =gUnknown_845218C
ldr r4, _08103960 @ =gUnknown_203ACF0
ldr r0, [r4]
ldrh r2, [r0, 0x3A]
ldrh r3, [r0, 0x38]
b _0810396E
.align 2, 0
_0810395C: .4byte gUnknown_845218C
_08103960: .4byte gUnknown_203ACF0
_08103964:
ldr r1, _08103980 @ =gUnknown_845218C
ldr r4, _08103984 @ =gUnknown_203ACF0
ldr r0, [r4]
ldrh r2, [r0, 0x3E]
ldrh r3, [r0, 0x3C]
_0810396E:
adds r0, r5, 0
bl ListMenuInitInRect
ldr r1, [r4]
adds r1, 0x41
strb r0, [r1]
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_08103980: .4byte gUnknown_845218C
_08103984: .4byte gUnknown_203ACF0
thumb_func_end sub_8103924
thumb_func_start sub_8103988
sub_8103988: @ 8103988
push {lr}
lsls r0, 24
lsrs r0, 24
cmp r0, 0x4
bgt _08103998
cmp r0, 0x1
bge _081039B8
b _0810399C
_08103998:
cmp r0, 0x5
beq _081039D4
_0810399C:
ldr r0, _081039B4 @ =gUnknown_203ACF0
ldr r2, [r0]
adds r0, r2, 0
adds r0, 0x41
ldrb r0, [r0]
adds r1, r2, 0
adds r1, 0x36
adds r2, 0x34
bl DestroyListMenuTask
b _081039E8
.align 2, 0
_081039B4: .4byte gUnknown_203ACF0
_081039B8:
ldr r0, _081039D0 @ =gUnknown_203ACF0
ldr r2, [r0]
adds r0, r2, 0
adds r0, 0x41
ldrb r0, [r0]
adds r1, r2, 0
adds r1, 0x3A
adds r2, 0x38
bl DestroyListMenuTask
b _081039E8
.align 2, 0
_081039D0: .4byte gUnknown_203ACF0
_081039D4:
ldr r0, _081039EC @ =gUnknown_203ACF0
ldr r2, [r0]
adds r0, r2, 0
adds r0, 0x41
ldrb r0, [r0]
adds r1, r2, 0
adds r1, 0x3E
adds r2, 0x3C
bl DestroyListMenuTask
_081039E8:
pop {r0}
bx r0
.align 2, 0
_081039EC: .4byte gUnknown_203ACF0
thumb_func_end sub_8103988
thumb_func_start sub_81039F0
sub_81039F0: @ 81039F0
push {r4,lr}
sub sp, 0x10
mov r1, sp
ldr r0, _08103A18 @ =gUnknown_84521B4
ldm r0!, {r2-r4}
stm r1!, {r2-r4}
ldr r0, [r0]
str r0, [r1]
ldr r2, _08103A1C @ =gUnknown_203ACF0
ldr r0, [r2]
adds r0, 0x48
ldr r1, _08103A20 @ =gUnknown_8452174
ldrh r3, [r0]
ldrh r0, [r1, 0xE]
cmp r3, r0
bls _08103A24
mov r1, sp
subs r0, r3, r0
b _08103A28
.align 2, 0
_08103A18: .4byte gUnknown_84521B4
_08103A1C: .4byte gUnknown_203ACF0
_08103A20: .4byte gUnknown_8452174
_08103A24:
mov r1, sp
movs r0, 0
_08103A28:
strh r0, [r1, 0x8]
ldr r1, [r2]
adds r1, 0x62
mov r0, sp
bl AddScrollIndicatorArrowPair
lsls r0, 24
lsrs r0, 24
add sp, 0x10
pop {r4}
pop {r1}
bx r1
thumb_func_end sub_81039F0
thumb_func_start sub_8103A40
sub_8103A40: @ 8103A40
push {r4-r7,lr}
sub sp, 0x4
adds r4, r1, 0
lsls r2, 24
lsrs r6, r2, 24
lsls r0, r4, 16
lsrs r5, r0, 16
movs r0, 0x1
lsrs r4, 17
ands r4, r0
ldr r7, _08103AC0 @ =gUnknown_203ACF0
ldr r0, [r7]
adds r0, 0x40
ldrb r0, [r0]
str r6, [sp]
movs r1, 0
adds r2, r5, 0
movs r3, 0xC
bl sub_8104A34
cmp r4, 0
beq _08103AB6
ldr r0, [r7]
adds r0, 0x40
ldrb r0, [r0]
movs r1, 0
movs r2, 0x28
adds r3, r6, 0
bl BlitMoveInfoIcon
ldr r0, _08103AC4 @ =gBaseStats
lsls r4, r5, 3
subs r4, r5
lsls r4, 2
adds r4, r0
ldrb r5, [r4, 0x6]
ldr r0, [r7]
adds r0, 0x40
ldrb r0, [r0]
adds r1, r5, 0x1
lsls r1, 24
lsrs r1, 24
movs r2, 0x78
adds r3, r6, 0
bl BlitMoveInfoIcon
ldrb r1, [r4, 0x7]
cmp r5, r1
beq _08103AB6
ldr r0, [r7]
adds r0, 0x40
ldrb r0, [r0]
adds r1, 0x1
lsls r1, 24
lsrs r1, 24
movs r2, 0x98
adds r3, r6, 0
bl BlitMoveInfoIcon
_08103AB6:
add sp, 0x4
pop {r4-r7}
pop {r0}
bx r0
.align 2, 0
_08103AC0: .4byte gUnknown_203ACF0
_08103AC4: .4byte gBaseStats
thumb_func_end sub_8103A40
thumb_func_start sub_8103AC8
sub_8103AC8: @ 8103AC8
push {r4,r5,lr}