Files
Pokemon-Firered/asm/mystery_gift_menu.s
T
sceptillion 670fef77ac first commit
2017-12-16 23:54:22 -08:00

411 lines
6.7 KiB
ArmAsm

.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_8142078
sub_8142078: @ 8142078
push {lr}
bl sub_8007610
bl sub_8007320
bl sub_8070474
pop {r0}
bx r0
thumb_func_end sub_8142078
thumb_func_start sub_814208C
sub_814208C: @ 814208C
push {lr}
bl sub_8077578
bl sub_8002DE8
bl sub_8006B5C
bl sub_8006BA8
pop {r0}
bx r0
thumb_func_end sub_814208C
thumb_func_start sub_81420A4
sub_81420A4: @ 81420A4
push {r4-r7,lr}
sub sp, 0xC
adds r7, r0, 0
ldr r0, _081420C4 @ =gUnknown_30030F0
movs r1, 0x87
lsls r1, 3
adds r6, r0, r1
ldrb r5, [r6]
cmp r5, 0x1
bne _081420BA
b _081421EC
_081420BA:
cmp r5, 0x1
bgt _081420C8
cmp r5, 0
beq _081420D6
b _081422A0
.align 2, 0
_081420C4: .4byte gUnknown_30030F0
_081420C8:
cmp r5, 0x2
bne _081420CE
b _08142254
_081420CE:
cmp r5, 0x3
bne _081420D4
b _08142274
_081420D4:
b _081422A0
_081420D6:
movs r0, 0
bl sub_80006F4
bl sub_8070528
bl sub_8006B10
bl sub_80088F0
bl sub_80773BC
bl sub_8087E64
movs r0, 0x1
bl sub_8001618
ldr r1, _081421E0 @ =gUnknown_8466D60
movs r0, 0
movs r2, 0x4
bl sub_8001658
movs r0, 0
movs r1, 0
movs r2, 0
bl sub_8001B90
movs r0, 0
movs r1, 0
movs r2, 0
bl sub_8001D08
movs r0, 0x1
movs r1, 0
movs r2, 0
bl sub_8001B90
movs r0, 0x1
movs r1, 0
movs r2, 0
bl sub_8001D08
movs r0, 0x2
movs r1, 0
movs r2, 0
bl sub_8001B90
movs r0, 0x2
movs r1, 0
movs r2, 0
bl sub_8001D08
movs r0, 0x3
movs r1, 0
movs r2, 0
bl sub_8001B90
movs r0, 0x3
movs r1, 0
movs r2, 0
bl sub_8001D08
movs r4, 0x80
lsls r4, 4
adds r0, r4, 0
bl sub_8002B9C
adds r1, r0, 0
movs r0, 0x3
bl sub_8001FA0
adds r0, r4, 0
bl sub_8002B9C
adds r1, r0, 0
movs r0, 0x2
bl sub_8001FA0
adds r0, r4, 0
bl sub_8002B9C
adds r1, r0, 0
movs r0, 0x1
bl sub_8001FA0
adds r0, r4, 0
bl sub_8002B9C
adds r1, r0, 0
movs r0, 0
bl sub_8001FA0
movs r0, 0
movs r1, 0xA
movs r2, 0xE0
bl sub_814FE40
movs r0, 0
movs r1, 0x1
movs r2, 0xF0
bl sub_814FDA0
ldr r1, _081421E4 @ =gUnknown_8466D30
movs r2, 0x80
lsls r2, 1
str r5, [sp]
movs r0, 0x3
movs r3, 0
bl sub_80F696C
ldr r0, _081421E8 @ =gUnknown_8466D70
bl sub_8003B24
bl sub_8002C28
movs r1, 0xC0
lsls r1, 7
movs r0, 0
bl sub_8000B14
movs r0, 0x50
movs r1, 0
bl sub_8000A38
movs r0, 0x52
movs r1, 0
bl sub_8000A38
movs r0, 0x54
movs r1, 0
bl sub_8000A38
b _0814226C
.align 2, 0
_081421E0: .4byte gUnknown_8466D60
_081421E4: .4byte gUnknown_8466D30
_081421E8: .4byte gUnknown_8466D70
_081421EC:
ldr r0, _08142250 @ =gUnknown_8466D10
movs r1, 0
movs r2, 0x20
bl sub_80703EC
movs r0, 0x2
bl sub_8150408
movs r1, 0xD0
movs r2, 0x20
bl sub_80703EC
movs r4, 0x20
str r4, [sp]
str r4, [sp, 0x4]
movs r5, 0x11
str r5, [sp, 0x8]
movs r0, 0
movs r1, 0
movs r2, 0
movs r3, 0
bl sub_8002554
str r4, [sp]
str r4, [sp, 0x4]
str r5, [sp, 0x8]
movs r0, 0x1
movs r1, 0
movs r2, 0
movs r3, 0
bl sub_8002554
str r4, [sp]
str r4, [sp, 0x4]
str r5, [sp, 0x8]
movs r0, 0x2
movs r1, 0
movs r2, 0
movs r3, 0
bl sub_8002554
bl sub_8142420
lsls r0, r7, 24
lsrs r0, 24
movs r1, 0
bl sub_8142344
b _0814226C
.align 2, 0
_08142250: .4byte gUnknown_8466D10
_08142254:
movs r0, 0x3
bl sub_80020BC
movs r0, 0x2
bl sub_80020BC
movs r0, 0x1
bl sub_80020BC
movs r0, 0
bl sub_80020BC
_0814226C:
ldrb r0, [r6]
adds r0, 0x1
strb r0, [r6]
b _081422A0
_08142274:
movs r0, 0
bl sub_80019BC
movs r0, 0x3
bl sub_80019BC
ldr r0, _08142298 @ =0x00000149
bl sub_80722A0
ldr r0, _0814229C @ =sub_8142078
bl sub_80006F4
movs r0, 0xC5
bl sub_8000B68
movs r0, 0x1
b _081422A2
.align 2, 0
_08142298: .4byte 0x00000149
_0814229C: .4byte sub_8142078
_081422A0:
movs r0, 0
_081422A2:
add sp, 0xC
pop {r4-r7}
pop {r1}
bx r1
thumb_func_end sub_81420A4
thumb_func_start sub_81422AC
sub_81422AC: @ 81422AC
push {lr}
movs r0, 0
bl sub_81420A4
cmp r0, 0
beq _081422C8
ldr r0, _081422CC @ =sub_814208C
bl sub_8000544
ldr r1, _081422D0 @ =gUnknown_203F3B8
movs r0, 0
strb r0, [r1]
bl sub_8142E58
_081422C8:
pop {r0}
bx r0
.align 2, 0
_081422CC: .4byte sub_814208C
_081422D0: .4byte gUnknown_203F3B8
thumb_func_end sub_81422AC
thumb_func_start sub_81422D4
sub_81422D4: @ 81422D4
push {lr}
movs r0, 0x1
bl sub_81420A4
cmp r0, 0
beq _081422F0
ldr r0, _081422F4 @ =sub_814208C
bl sub_8000544
ldr r1, _081422F8 @ =gUnknown_203F3B8
movs r0, 0x1
strb r0, [r1]
bl sub_81438A0
_081422F0:
pop {r0}
bx r0
.align 2, 0
_081422F4: .4byte sub_814208C
_081422F8: .4byte gUnknown_203F3B8
thumb_func_end sub_81422D4
thumb_func_start sub_81422FC
sub_81422FC: @ 81422FC
push {lr}
ldr r1, _0814233C @ =gUnknown_203F3B8
movs r0, 0
strb r0, [r1]
bl sub_8003ECC
movs r0, 0
bl sub_8002008
bl sub_8002BC4
movs r0, 0x1
bl sub_8002008
bl sub_8002BC4
movs r0, 0x2
bl sub_8002008
bl sub_8002BC4
movs r0, 0x3
bl sub_8002008
bl sub_8002BC4
ldr r0, _08142340 @ =sub_8078914
bl sub_8000544
pop {r0}
bx r0
.align 2, 0
_0814233C: .4byte gUnknown_203F3B8
_08142340: .4byte sub_8078914
thumb_func_end sub_81422FC
thumb_func_start sub_8142344
sub_8142344: @ 8142344
push {r4-r6,lr}
sub sp, 0x14
adds r4, r1, 0
lsls r0, 24
lsrs r5, r0, 24
movs r0, 0
movs r1, 0
bl sub_800445C
cmp r5, 0
bne _081423B4
ldr r6, _081423A4 @ =gUnknown_841EDCA
cmp r4, 0x1
bne _08142362
ldr r6, _081423A8 @ =gUnknown_8415F51
_08142362:
str r5, [sp]
str r5, [sp, 0x4]
ldr r4, _081423AC @ =gUnknown_8466EE8
str r4, [sp, 0x8]
str r5, [sp, 0xC]
ldr r0, _081423B0 @ =gUnknown_841EDBD
str r0, [sp, 0x10]
movs r0, 0
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl sub_812E5A4
movs r0, 0
adds r1, r6, 0
movs r2, 0
bl sub_8005ED4
movs r2, 0xDE
subs r2, r0
lsls r2, 24
lsrs r2, 24
str r5, [sp]
str r5, [sp, 0x4]
str r4, [sp, 0x8]
str r5, [sp, 0xC]
str r6, [sp, 0x10]
movs r0, 0
movs r1, 0
movs r3, 0x2
bl sub_812E5A4
b _081423E8
.align 2, 0
_081423A4: .4byte gUnknown_841EDCA
_081423A8: .4byte gUnknown_8415F51
_081423AC: .4byte gUnknown_8466EE8
_081423B0: .4byte gUnknown_841EDBD
_081423B4:
movs r4, 0
str r4, [sp]
str r4, [sp, 0x4]
ldr r5, _08142400 @ =gUnknown_8466EE8
str r5, [sp, 0x8]
str r4, [sp, 0xC]
ldr r0, _08142404 @ =gUnknown_841DE50
str r0, [sp, 0x10]
movs r0, 0
movs r1, 0x2
movs r2, 0x2
movs r3, 0x2
bl sub_812E5A4
str r4, [sp]
str r4, [sp, 0x4]
str r5, [sp, 0x8]
str r4, [sp, 0xC]
ldr r0, _08142408 @ =gUnknown_841DE51
str r0, [sp, 0x10]
movs r0, 0
movs r1, 0
movs r2, 0x78
movs r3, 0x2
bl sub_812E5A4
_081423E8:
movs r0, 0
movs r1, 0x2
bl sub_8003F20
movs r0, 0
bl sub_8003FA0
add sp, 0x14
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_08142400: .4byte gUnknown_8466EE8
_08142404: .4byte gUnknown_841DE50
_08142408: .4byte gUnknown_841DE51
thumb_func_end sub_8142344
.align 2, 0 @ Don't pad with nop.