diff options
Diffstat (limited to 'asm/gulpin_shop.s')
-rw-r--r-- | asm/gulpin_shop.s | 1799 |
1 files changed, 16 insertions, 1783 deletions
diff --git a/asm/gulpin_shop.s b/asm/gulpin_shop.s index 04a143b..62b17a4 100644 --- a/asm/gulpin_shop.s +++ b/asm/gulpin_shop.s @@ -5,284 +5,6 @@ .text - thumb_func_start DisplayGulpinDialogueSprite -DisplayGulpinDialogueSprite: - push {r4-r6,lr} - mov r6, r8 - push {r6} - mov r8, r0 - adds r4, r1, 0 - adds r6, r2, 0 - lsls r4, 16 - asrs r4, 16 - ldr r5, _0801E84C - movs r0, 0xC6 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - adds r2, r0, 0 - str r2, [r5] - mov r0, r8 - str r0, [r2] - strh r4, [r2, 0xC] - str r6, [r2, 0x10] - ldrh r0, [r6, 0x22] - strh r0, [r2, 0x1C] - mov r1, r8 - cmp r1, 0 - bne _0801E850 - movs r3, 0x94 - lsls r3, 1 - adds r1, r2, r3 - movs r4, 0x8C - lsls r4, 1 - adds r0, r2, r4 - b _0801E858 - .align 2, 0 -_0801E84C: .4byte gUnknown_203B26C -_0801E850: - movs r0, 0x94 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0 -_0801E858: - str r0, [r1] - ldr r0, _0801E8B4 - bl GetDialogueSpriteDataPtr - ldr r2, _0801E8B8 - ldr r3, [r2] - movs r4, 0x8C - lsls r4, 1 - adds r1, r3, r4 - str r0, [r1] - adds r4, 0x4 - adds r1, r3, r4 - ldr r0, [r0, 0x4] - str r0, [r1] - movs r1, 0x92 - lsls r1, 1 - adds r0, r3, r1 - movs r1, 0 - strb r1, [r0] - ldr r0, [r2] - ldr r3, _0801E8BC - adds r0, r3 - strb r1, [r0] - ldr r0, [r2] - adds r4, 0xA - adds r0, r4 - strb r1, [r0] - ldr r2, [r2] - movs r0, 0x90 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x2 - strh r0, [r1] - subs r3, 0x3 - adds r1, r2, r3 - movs r0, 0x8 - strh r0, [r1] - movs r0, 0 - bl sub_801E968 - movs r0, 0x1 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0801E8B4: .4byte 0x00000155 -_0801E8B8: .4byte gUnknown_203B26C -_0801E8BC: .4byte 0x00000125 - thumb_func_end DisplayGulpinDialogueSprite - - thumb_func_start sub_801E8C0 -sub_801E8C0: - push {lr} - ldr r0, _0801E8D8 - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0x6 - bhi _0801E928 - lsls r0, 2 - ldr r1, _0801E8DC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0801E8D8: .4byte gUnknown_203B26C -_0801E8DC: .4byte _0801E8E0 - .align 2, 0 -_0801E8E0: - .4byte _0801E8FC - .4byte _0801E8FC - .4byte _0801E902 - .4byte _0801E908 - .4byte _0801E90E - .4byte _0801E91C - .4byte _0801E924 -_0801E8FC: - bl sub_801ECBC - b _0801E928 -_0801E902: - bl sub_801ED28 - b _0801E928 -_0801E908: - bl sub_801EDA4 - b _0801E928 -_0801E90E: - bl sub_801EDC0 - ldr r0, _0801E920 - ldr r0, [r0] - ldr r0, [r0, 0x4] - cmp r0, 0x5 - bne _0801E928 -_0801E91C: - movs r0, 0x3 - b _0801E92A - .align 2, 0 -_0801E920: .4byte gUnknown_203B26C -_0801E924: - movs r0, 0x2 - b _0801E92A -_0801E928: - movs r0, 0 -_0801E92A: - pop {r1} - bx r1 - thumb_func_end sub_801E8C0 - - thumb_func_start sub_801E930 -sub_801E930: - ldr r0, _0801E938 - ldr r0, [r0] - ldrb r0, [r0, 0xE] - bx lr - .align 2, 0 -_0801E938: .4byte gUnknown_203B26C - thumb_func_end sub_801E930 - - thumb_func_start sub_801E93C -sub_801E93C: - push {r4,lr} - ldr r4, _0801E964 - ldr r0, [r4] - cmp r0, 0 - beq _0801E95C - movs r1, 0x8C - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - bl CloseFile - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0801E95C: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801E964: .4byte gUnknown_203B26C - thumb_func_end sub_801E93C - - thumb_func_start sub_801E968 -sub_801E968: - push {lr} - ldr r1, _0801E97C - ldr r1, [r1] - str r0, [r1, 0x4] - bl sub_801E980 - bl sub_801EA28 - pop {r0} - bx r0 - .align 2, 0 -_0801E97C: .4byte gUnknown_203B26C - thumb_func_end sub_801E968 - - thumb_func_start sub_801E980 -sub_801E980: - push {r4-r7,lr} - mov r7, r8 - push {r7} - ldr r4, _0801E9D0 - ldr r0, [r4] - movs r5, 0x96 - lsls r5, 1 - adds r0, r5 - bl sub_8006518 - ldr r0, [r4] - ldr r0, [r0, 0x4] - cmp r0, 0x2 - bne _0801E9DC - bl sub_801EBC4 - ldr r1, [r4] - movs r0, 0xA2 - lsls r0, 1 - adds r1, r0 - ldr r0, _0801E9D4 - ldm r0!, {r2,r3,r5} - stm r1!, {r2,r3,r5} - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - ldr r2, [r4] - movs r0, 0xAE - lsls r0, 1 - adds r2, r0 - ldr r1, _0801E9D8 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - adds r1, 0x28 - bl sub_8012CAC - b _0801EA00 - .align 2, 0 -_0801E9D0: .4byte gUnknown_203B26C -_0801E9D4: .4byte gUnknown_80DC11C -_0801E9D8: .4byte gUnknown_80DC134 -_0801E9DC: - mov r12, r4 - mov r8, r5 - ldr r4, _0801EA20 - movs r2, 0 - movs r3, 0x3 -_0801E9E6: - mov r6, r12 - ldr r1, [r6] - adds r1, r2 - add r1, r8 - adds r0, r4, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - adds r2, 0x18 - subs r3, 0x1 - cmp r3, 0 - bge _0801E9E6 -_0801EA00: - bl ResetUnusedInputStruct - ldr r0, _0801EA24 - ldr r0, [r0] - movs r7, 0x96 - lsls r7, 1 - adds r0, r7 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801EA20: .4byte gUnknown_80DC11C -_0801EA24: .4byte gUnknown_203B26C - thumb_func_end sub_801E980 - thumb_func_start sub_801EA28 sub_801EA28: push {r4,r5,lr} @@ -639,7 +361,7 @@ _0801ECD8: ldrh r0, [r1, 0x2] strh r0, [r2, 0x1E] movs r0, 0x2 - bl sub_801E968 + bl UpdateGulpinShopState b _0801ED22 .align 2, 0 _0801ECF4: .4byte gUnknown_203B26C @@ -654,14 +376,14 @@ _0801ECF8: ldrh r0, [r1, 0x2] strh r0, [r2, 0x1E] movs r0, 0x3 - bl sub_801E968 + bl UpdateGulpinShopState b _0801ED22 .align 2, 0 _0801ED14: .4byte gUnknown_203B26C _0801ED18: bl sub_801F214 movs r0, 0x6 - bl sub_801E968 + bl UpdateGulpinShopState _0801ED22: pop {r0} bx r0 @@ -703,7 +425,7 @@ _0801ED64: bne _0801ED9A _0801ED6C: movs r0, 0x1 - bl sub_801E968 + bl UpdateGulpinShopState b _0801ED9A _0801ED74: ldr r0, _0801ED90 @@ -715,13 +437,13 @@ _0801ED74: ldr r1, [r4] strb r0, [r1, 0xE] movs r0, 0x4 - bl sub_801E968 + bl UpdateGulpinShopState b _0801ED9A .align 2, 0 _0801ED90: .4byte 0x00000133 _0801ED94: movs r0, 0x3 - bl sub_801E968 + bl UpdateGulpinShopState _0801ED9A: add sp, 0x4 pop {r4} @@ -739,7 +461,7 @@ sub_801EDA4: bhi _0801EDBC bl sub_801F8D0 movs r0, 0x1 - bl sub_801E968 + bl UpdateGulpinShopState _0801EDBC: pop {r0} bx r0 @@ -780,7 +502,7 @@ _0801EDE4: _0801EDFC: .4byte gUnknown_203B26C _0801EE00: movs r0, 0x1 - bl sub_801E968 + bl UpdateGulpinShopState _0801EE06: add sp, 0x4 pop {r4} @@ -1943,7 +1665,7 @@ sub_801F700: movs r7, 0 ldrsh r3, [r0, r7] adds r0, r5, 0 - bl sub_800D158 + bl ExpandPlaceholdersBuffer ldr r0, [r6] adds r0, r4 ldr r3, [r0] @@ -5703,7 +5425,7 @@ _08021574: mov r0, r10 ldr r1, _08021598 add r2, sp, 0x8 - bl sub_800D158 + bl ExpandPlaceholdersBuffer mov r3, r8 ldr r0, [r3] adds r0, 0x40 @@ -5751,7 +5473,7 @@ _080215D8: adds r2, r0, 0 mov r0, r10 ldr r1, _08021608 - bl sub_800D158 + bl ExpandPlaceholdersBuffer mov r2, r8 ldr r0, [r2] adds r0, 0x40 @@ -6302,7 +6024,7 @@ _08021A16: add r0, sp, 0x4 ldr r1, _08021A58 adds r2, r7, 0 - bl sub_800D158 + bl ExpandPlaceholdersBuffer mov r1, r8 ldr r0, [r1] ldr r3, [r0, 0x74] @@ -9804,7 +9526,7 @@ _08023628: ldr r1, _080236A0 adds r2, r7, 0 adds r3, r4, 0 - bl sub_800D158 + bl ExpandPlaceholdersBuffer ldr r6, _0802368C ldr r0, [r6] movs r1, 0xE4 @@ -10953,7 +10675,7 @@ _08023F02: ldr r1, _08023F80 adds r2, r6, 0 mov r3, r9 - bl sub_800D158 + bl ExpandPlaceholdersBuffer mov r1, r8 ldr r0, [r1] movs r2, 0xD6 @@ -11657,7 +11379,7 @@ sub_80243E8: ldr r1, _08024454 mov r0, sp adds r2, r5, 0 - bl sub_800D158 + bl ExpandPlaceholdersBuffer adds r0, r4, 0 add sp, 0x3C pop {r4,r5} @@ -16865,7 +16587,7 @@ sub_8026E08: ldr r1, _08026E80 add r0, sp, 0x4 adds r2, r6, 0 - bl sub_800D158 + bl ExpandPlaceholdersBuffer add r0, sp, 0x4 bl sub_8008ED0 adds r1, r0, 0 @@ -17156,1493 +16878,4 @@ _0802706E: bx r0 thumb_func_end sub_8026FA4 - thumb_func_start sub_8027074 -sub_8027074: - push {r4,lr} - movs r0, 0 - bl ResetSprites - ldr r4, _080270A0 - movs r0, 0xF0 - lsls r0, 1 - movs r1, 0x8 - bl MemoryAlloc - str r0, [r4] - movs r1, 0 - str r1, [r0, 0x70] - str r1, [r0, 0x74] - str r1, [r0, 0x78] - movs r0, 0 - bl sub_8027184 - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080270A0: .4byte gUnknown_203B2BC - thumb_func_end sub_8027074 - - thumb_func_start sub_80270A4 -sub_80270A4: - push {lr} - ldr r0, _080270BC - ldr r0, [r0] - ldr r0, [r0] - cmp r0, 0x11 - bhi _08027156 - lsls r0, 2 - ldr r1, _080270C0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080270BC: .4byte gUnknown_203B2BC -_080270C0: .4byte _080270C4 - .align 2, 0 -_080270C4: - .4byte _0802710C - .4byte _08027114 - .4byte _08027114 - .4byte _0802711A - .4byte _08027120 - .4byte _08027126 - .4byte _08027156 - .4byte _08027156 - .4byte _0802712C - .4byte _08027132 - .4byte _08027138 - .4byte _08027138 - .4byte _0802713E - .4byte _08027144 - .4byte _0802714A - .4byte _0802714A - .4byte _08027150 - .4byte _0802715C -_0802710C: - movs r0, 0x1 - bl sub_8027184 - b _08027160 -_08027114: - bl sub_80277FC - b _08027160 -_0802711A: - bl sub_80278B4 - b _08027160 -_08027120: - bl sub_8027A40 - b _08027160 -_08027126: - bl sub_8027A5C - b _08027160 -_0802712C: - bl sub_8027A78 - b _08027160 -_08027132: - bl sub_8027AE4 - b _08027160 -_08027138: - bl sub_8027B28 - b _08027160 -_0802713E: - bl sub_8027BD8 - b _08027160 -_08027144: - bl sub_8027C84 - b _08027160 -_0802714A: - bl sub_8027CA0 - b _08027160 -_08027150: - bl sub_8027D00 - b _08027160 -_08027156: - bl sub_8027D1C - b _08027160 -_0802715C: - movs r0, 0x3 - b _08027162 -_08027160: - movs r0, 0 -_08027162: - pop {r1} - bx r1 - thumb_func_end sub_80270A4 - - thumb_func_start sub_8027168 -sub_8027168: - push {r4,lr} - ldr r4, _08027180 - ldr r0, [r4] - cmp r0, 0 - beq _0802717A - bl MemoryFree - movs r0, 0 - str r0, [r4] -_0802717A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08027180: .4byte gUnknown_203B2BC - thumb_func_end sub_8027168 - - thumb_func_start sub_8027184 -sub_8027184: - push {lr} - ldr r1, _08027198 - ldr r1, [r1] - str r0, [r1] - bl sub_802719C - bl sub_8027274 - pop {r0} - bx r0 - .align 2, 0 -_08027198: .4byte gUnknown_203B2BC - thumb_func_end sub_8027184 - - thumb_func_start sub_802719C -sub_802719C: - push {r4-r7,lr} - ldr r4, _080271C0 - ldr r0, [r4] - movs r1, 0xC0 - lsls r1, 1 - adds r0, r1 - bl sub_8006518 - ldr r1, [r4] - ldr r0, [r1] - cmp r0, 0x3 - beq _080271C8 - cmp r0, 0xC - beq _08027208 - movs r2, 0 - ldr r3, _080271C4 - b _08027234 - .align 2, 0 -_080271C0: .4byte gUnknown_203B2BC -_080271C4: .4byte gUnknown_80DD6EC -_080271C8: - movs r2, 0xE4 - lsls r2, 1 - adds r1, r2 - ldr r0, _08027200 - ldm r0!, {r3,r5,r6} - stm r1!, {r3,r5,r6} - ldm r0!, {r2,r3,r7} - stm r1!, {r2,r3,r7} - bl CreateFriendActionMenu - ldr r2, [r4] - movs r0, 0xD8 - lsls r0, 1 - adds r2, r0 - ldr r1, _08027204 - ldm r1!, {r5-r7} - stm r2!, {r5-r7} - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldr r1, [r4] - adds r0, r1, r0 - movs r7, 0x8E - lsls r7, 1 - adds r1, r7 - bl sub_8012CAC - b _08027254 - .align 2, 0 -_08027200: .4byte gUnknown_80DD74C -_08027204: .4byte gUnknown_80DD704 -_08027208: - bl sub_80276A8 - ldr r2, [r4] - movs r0, 0xD8 - lsls r0, 1 - adds r2, r0 - ldr r1, _08027230 - ldm r1!, {r3,r5,r6} - stm r2!, {r3,r5,r6} - ldm r1!, {r3,r5,r7} - stm r2!, {r3,r5,r7} - ldr r1, [r4] - adds r0, r1, r0 - movs r6, 0x8E - lsls r6, 1 - adds r1, r6 - bl sub_8012CAC - b _08027254 - .align 2, 0 -_08027230: .4byte gUnknown_80DD71C -_08027234: - ldr r0, [r4] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 3 - adds r0, r1 - movs r7, 0xC0 - lsls r7, 1 - adds r0, r7 - adds r1, r3, 0 - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - ldm r1!, {r5-r7} - stm r0!, {r5-r7} - adds r2, 0x1 - cmp r2, 0x3 - ble _08027234 -_08027254: - bl ResetUnusedInputStruct - ldr r0, _08027270 - ldr r0, [r0] - movs r1, 0xC0 - lsls r1, 1 - adds r0, r1 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08027270: .4byte gUnknown_203B2BC - thumb_func_end sub_802719C - - thumb_func_start sub_8027274 -sub_8027274: - push {r4,lr} - sub sp, 0x18 - ldr r1, _08027290 - ldr r0, [r1] - ldr r0, [r0] - adds r4, r1, 0 - cmp r0, 0x11 - bls _08027286 - b _0802744A -_08027286: - lsls r0, 2 - ldr r1, _08027294 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08027290: .4byte gUnknown_203B2BC -_08027294: .4byte _08027298 - .align 2, 0 -_08027298: - .4byte _0802744A - .4byte _080272E0 - .4byte _080272EE - .4byte _080272F6 - .4byte _0802731A - .4byte _08027328 - .4byte _0802741C - .4byte _08027438 - .4byte _080273B6 - .4byte _080273D0 - .4byte _08027334 - .4byte _08027342 - .4byte _0802734A - .4byte _08027374 - .4byte _08027386 - .4byte _080273AC - .4byte _08027404 - .4byte _0802744A -_080272E0: - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0x7 - bl sub_8023868 - b _0802744A -_080272EE: - movs r0, 0x1 - bl sub_8023B7C - b _0802744A -_080272F6: - ldr r1, [r4] - adds r1, 0x14 - movs r0, 0x3 - bl sub_8027D40 - bl sub_8023DA4 - ldr r2, [r4] - adds r0, r2, 0 - adds r0, 0x7C - movs r3, 0x8E - lsls r3, 1 - adds r1, r2, r3 - movs r4, 0xB6 - lsls r4, 1 - adds r3, r2, r4 - ldr r2, [r2, 0x70] - b _08027362 -_0802731A: - ldr r0, [r4] - movs r1, 0x8 - ldrsh r0, [r0, r1] - movs r1, 0x2 - bl sub_8024458 - b _0802744A -_08027328: - ldr r0, [r4] - movs r3, 0x8 - ldrsh r0, [r0, r3] - bl sub_801BEEC - b _0802744A -_08027334: - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0xA - bl sub_801A5D8 - b _0802744A -_08027342: - movs r0, 0x1 - bl sub_801A8D0 - b _0802744A -_0802734A: - bl sub_801A9E0 - ldr r0, _08027370 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x7C - movs r4, 0x8E - lsls r4, 1 - adds r1, r2, r4 - adds r4, 0x50 - adds r3, r2, r4 - ldr r2, [r2, 0x74] -_08027362: - str r2, [sp] - movs r2, 0x2 - str r2, [sp, 0x4] - movs r2, 0 - bl sub_8012D60 - b _0802744A - .align 2, 0 -_08027370: .4byte gUnknown_203B2BC -_08027374: - ldr r1, [r4] - adds r1, 0x10 - add r0, sp, 0x14 - bl sub_8090B64 - add r0, sp, 0x14 - bl sub_801B3C0 - b _0802744A -_08027386: - ldr r1, [r4] - adds r0, r1, 0 - adds r0, 0x28 - ldr r1, [r1, 0x18] - adds r1, 0x2C - bl sub_809401C - ldr r2, [r4] - movs r0, 0x8 - ldrsh r1, [r2, r0] - adds r2, 0x28 - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - movs r0, 0x3 - movs r3, 0 - bl sub_801EE10 - b _0802744A -_080273AC: - movs r0, 0x1 - movs r1, 0 - bl sub_801F1B0 - b _0802744A -_080273B6: - bl sub_8027794 - ldr r0, _080273C8 - ldr r1, _080273CC - ldr r3, [r1] - movs r1, 0x8E - lsls r1, 1 - adds r3, r1 - b _080273E0 - .align 2, 0 -_080273C8: .4byte gUnknown_80DD764 -_080273CC: .4byte gUnknown_203B2BC -_080273D0: - bl sub_8027794 - ldr r0, _080273FC - ldr r1, _08027400 - ldr r3, [r1] - movs r4, 0x8E - lsls r4, 1 - adds r3, r4 -_080273E0: - movs r2, 0 - str r2, [sp] - movs r1, 0x4 - str r1, [sp, 0x4] - str r2, [sp, 0x8] - str r2, [sp, 0xC] - adds r1, 0xFD - str r1, [sp, 0x10] - movs r1, 0 - movs r2, 0x3 - bl sub_8014248 - b _0802744A - .align 2, 0 -_080273FC: .4byte gUnknown_80DD7FC -_08027400: .4byte gUnknown_203B2BC -_08027404: - ldr r2, [r4] - ldr r0, [r2, 0x20] - adds r1, r2, 0 - adds r1, 0x28 - adds r2, 0x68 - bl sub_8093560 - ldr r0, [r4] - adds r0, 0x68 - bl sub_801F808 - b _0802744A -_0802741C: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _08027430 - ldr r3, _08027434 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 - b _0802744A - .align 2, 0 -_08027430: .4byte gUnknown_80DD8A0 -_08027434: .4byte 0x00000101 -_08027438: - ldr r1, [r4] - movs r0, 0x2 - str r0, [r1, 0x4] - ldr r0, _08027454 - ldr r3, _08027458 - movs r1, 0 - movs r2, 0 - bl sub_80141B4 -_0802744A: - add sp, 0x18 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08027454: .4byte gUnknown_80DD8D0 -_08027458: .4byte 0x00000101 - thumb_func_end sub_8027274 - - @ Menu that gets created when you talk to friend - thumb_func_start CreateFriendActionMenu -CreateFriendActionMenu: - push {r4-r7,lr} - ldr r3, _080274E4 - ldr r4, _080274E8 - ldr r0, [r4] - movs r1, 0x8 - ldrsh r2, [r0, r1] - movs r1, 0x58 - muls r2, r1 - ldr r1, [r3] - adds r5, r1, r2 - movs r2, 0xB6 - lsls r2, 1 - adds r0, r2 - movs r1, 0 - movs r2, 0x14 - bl MemoryFill16 - ldrh r0, [r5] - lsrs r0, 1 - movs r6, 0x1 - ands r0, r6 - cmp r0, 0 - beq _080274F4 - ldr r2, [r4] - movs r3, 0x8E - lsls r3, 1 - adds r1, r2, r3 - ldr r0, _080274EC - str r0, [r1] - movs r0, 0x90 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x7 - str r0, [r1] - adds r0, r5, 0 - bl sub_8027D9C - lsls r0, 24 - cmp r0, 0 - bne _080274B6 - ldr r0, [r4] - movs r1, 0xB6 - lsls r1, 1 - adds r0, r1 - strh r6, [r0] -_080274B6: - movs r7, 0x1 - movs r0, 0x8 - bl sub_80023E4 - lsls r0, 24 - cmp r0, 0 - beq _08027552 - ldrb r0, [r5, 0x2] - cmp r0, 0 - bne _08027552 - ldr r3, [r4] - movs r2, 0x8 - movs r4, 0x92 - lsls r4, 1 - adds r1, r3, r4 - ldr r0, _080274F0 - str r0, [r1] - movs r1, 0x94 - lsls r1, 1 - adds r0, r3, r1 - str r2, [r0] - b _08027550 - .align 2, 0 -_080274E4: .4byte gRecruitedPokemonRef -_080274E8: .4byte gUnknown_203B2BC -_080274EC: .4byte gFriendActionStandby -_080274F0: .4byte gFriendActionMakeLeader -_080274F4: - ldr r2, [r4] - movs r3, 0x8E - lsls r3, 1 - adds r1, r2, r3 - ldr r0, _08027658 - str r0, [r1] - movs r0, 0x90 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x6 - str r0, [r1] - movs r1, 0x8 - ldrsh r0, [r2, r1] - bl sub_808D750 - lsls r0, 24 - cmp r0, 0 - bne _08027522 - ldr r0, [r4] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r2 - strh r6, [r0] -_08027522: - movs r7, 0x1 - ldr r2, [r4] - movs r3, 0x92 - lsls r3, 1 - adds r1, r2, r3 - ldr r0, _0802765C - str r0, [r1] - movs r0, 0x94 - lsls r0, 1 - adds r1, r2, r0 - movs r0, 0x9 - str r0, [r1] - adds r0, r5, 0 - bl sub_8027DCC - lsls r0, 24 - cmp r0, 0 - bne _08027550 - ldr r0, [r4] - movs r1, 0xB7 - lsls r1, 1 - adds r0, r1 - strh r7, [r0] -_08027550: - movs r7, 0x2 -_08027552: - ldr r4, _08027660 - ldr r2, [r4] - lsls r3, r7, 3 - movs r6, 0x8E - lsls r6, 1 - adds r0, r2, r6 - adds r0, r3 - ldr r1, _08027664 - str r1, [r0] - movs r5, 0x90 - lsls r5, 1 - adds r2, r5 - adds r2, r3 - movs r0, 0xA - str r0, [r2] - bl sub_8090A34 - cmp r0, 0 - bne _08027588 - ldr r0, [r4] - lsls r1, r7, 1 - movs r2, 0xB6 - lsls r2, 1 - adds r0, r2 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] -_08027588: - adds r7, 0x1 - ldr r2, [r4] - lsls r3, r7, 3 - adds r0, r2, r6 - adds r0, r3 - ldr r1, _08027668 - str r1, [r0] - adds r2, r5 - adds r2, r3 - movs r0, 0xB - str r0, [r2] - bl sub_8090A34 - cmp r0, 0x13 - bgt _080275AE - ldr r0, [r4] - ldrb r0, [r0, 0x14] - cmp r0, 0 - bne _080275BE -_080275AE: - ldr r0, [r4] - lsls r1, r7, 1 - movs r3, 0xB6 - lsls r3, 1 - adds r0, r3 - adds r0, r1 - movs r1, 0x1 - strh r1, [r0] -_080275BE: - adds r7, 0x1 - ldr r4, _08027660 - ldr r5, [r4] - lsls r1, r7, 3 - movs r0, 0x8E - lsls r0, 1 - adds r3, r5, r0 - adds r2, r3, r1 - ldr r0, _0802766C - str r0, [r2] - movs r2, 0x90 - lsls r2, 1 - adds r6, r5, r2 - adds r1, r6, r1 - movs r0, 0x4 - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r2, r3, r1 - ldr r0, _08027670 - str r0, [r2] - adds r1, r6, r1 - movs r0, 0xC - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r2, r3, r1 - ldr r0, _08027674 - str r0, [r2] - adds r1, r6, r1 - movs r0, 0x5 - str r0, [r1] - adds r7, 0x1 - lsls r1, r7, 3 - adds r3, r1 - movs r0, 0 - str r0, [r3] - adds r1, r6, r1 - movs r0, 0x1 - str r0, [r1] - movs r3, 0 - mov r12, r4 - cmp r3, r7 - bge _08027636 - adds r4, r6, 0 - movs r0, 0xB6 - lsls r0, 1 - adds r2, r5, r0 -_0802761E: - ldrh r0, [r2] - cmp r0, 0 - bne _0802762C - ldr r1, [r4] - ldr r0, [r5, 0x70] - cmp r1, r0 - beq _080276A0 -_0802762C: - adds r4, 0x8 - adds r2, 0x2 - adds r3, 0x1 - cmp r3, r7 - blt _0802761E -_08027636: - movs r3, 0 - cmp r3, r7 - bge _080276A0 - mov r2, r12 - ldr r1, [r2] - movs r4, 0xB6 - lsls r4, 1 - adds r0, r1, r4 - ldrh r0, [r0] - cmp r0, 0 - bne _08027678 - movs r2, 0x90 - lsls r2, 1 - adds r0, r1, r2 - ldr r0, [r0] - str r0, [r1, 0x70] - b _080276A0 - .align 2, 0 -_08027658: .4byte gFriendActionJoinTeam -_0802765C: .4byte gFriendActionSayFarewell -_08027660: .4byte gUnknown_203B2BC -_08027664: .4byte gFriendActionGive -_08027668: .4byte gFriendActionTake -_0802766C: .4byte gFriendActionSummary -_08027670: .4byte gFriendActionMoves -_08027674: .4byte gFriendActionCheckIQ -_08027678: - adds r3, 0x1 - cmp r3, r7 - bge _080276A0 - mov r4, r12 - ldr r2, [r4] - lsls r0, r3, 1 - movs r4, 0xB6 - lsls r4, 1 - adds r1, r2, r4 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08027678 - lsls r0, r3, 3 - movs r3, 0x90 - lsls r3, 1 - adds r1, r2, r3 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x70] -_080276A0: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end CreateFriendActionMenu - - thumb_func_start sub_80276A8 -sub_80276A8: - push {r4-r7,lr} - ldr r5, _0802775C - ldr r0, [r5] - movs r7, 0xB6 - lsls r7, 1 - adds r0, r7 - movs r1, 0 - movs r2, 0x14 - bl MemoryFill16 - ldr r2, [r5] - movs r0, 0x8E - lsls r0, 1 - adds r1, r2, r0 - ldr r0, _08027760 - str r0, [r1] - movs r3, 0x90 - lsls r3, 1 - adds r1, r2, r3 - movs r0, 0xA - str r0, [r1] - bl sub_8090A34 - cmp r0, 0 - bne _080276E4 - ldr r0, [r5] - adds r4, r7, 0 - adds r0, r4 - movs r1, 0x1 - strh r1, [r0] -_080276E4: - ldr r4, [r5] - movs r2, 0x1 - movs r0, 0x92 - lsls r0, 1 - adds r1, r4, r0 - ldr r0, _08027764 - ldr r0, [r0] - str r0, [r1] - movs r3, 0x94 - lsls r3, 1 - adds r1, r4, r3 - movs r0, 0x4 - str r0, [r1] - movs r6, 0x2 - movs r0, 0x96 - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0 - str r0, [r1] - movs r1, 0x98 - lsls r1, 1 - adds r0, r4, r1 - str r2, [r0] - movs r3, 0 - mov r12, r4 - movs r4, 0x90 - lsls r4, 1 - add r4, r12 - mov r0, r12 - adds r2, r0, r7 -_08027720: - ldrh r0, [r2] - cmp r0, 0 - bne _08027730 - ldr r1, [r4] - mov r7, r12 - ldr r0, [r7, 0x74] - cmp r1, r0 - beq _0802778E -_08027730: - adds r4, 0x8 - adds r2, 0x2 - adds r3, 0x1 - cmp r3, r6 - blt _08027720 - movs r3, 0 - cmp r3, r6 - bge _0802778E - ldr r1, [r5] - movs r2, 0xB6 - lsls r2, 1 - adds r0, r1, r2 - ldrh r0, [r0] - cmp r0, 0 - bne _08027768 - movs r3, 0x90 - lsls r3, 1 - adds r0, r1, r3 - ldr r0, [r0] - str r0, [r1, 0x74] - b _0802778E - .align 2, 0 -_0802775C: .4byte gUnknown_203B2BC -_08027760: .4byte gFriendActionGive -_08027764: .4byte gUnknown_80D4970 -_08027768: - adds r3, 0x1 - cmp r3, r6 - bge _0802778E - ldr r2, [r5] - lsls r0, r3, 1 - movs r4, 0xB6 - lsls r4, 1 - adds r1, r2, r4 - adds r1, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _08027768 - lsls r0, r3, 3 - movs r7, 0x90 - lsls r7, 1 - adds r1, r2, r7 - adds r1, r0 - ldr r0, [r1] - str r0, [r2, 0x74] -_0802778E: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80276A8 - - thumb_func_start sub_8027794 -sub_8027794: - push {r4,lr} - ldr r4, _080277F0 - ldr r0, [r4] - movs r1, 0xB6 - lsls r1, 1 - adds r0, r1 - movs r1, 0 - movs r2, 0x14 - bl MemoryFill16 - ldr r4, [r4] - movs r3, 0 - movs r0, 0x8E - lsls r0, 1 - adds r1, r4, r0 - ldr r0, _080277F4 - ldr r0, [r0] - str r0, [r1] - movs r0, 0x90 - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0x2 - str r0, [r1] - movs r2, 0x1 - movs r0, 0x92 - lsls r0, 1 - adds r1, r4, r0 - ldr r0, _080277F8 - ldr r0, [r0] - str r0, [r1] - movs r0, 0x94 - lsls r0, 1 - adds r1, r4, r0 - movs r0, 0x3 - str r0, [r1] - movs r1, 0x96 - lsls r1, 1 - adds r0, r4, r1 - str r3, [r0] - adds r1, 0x4 - adds r0, r4, r1 - str r2, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080277F0: .4byte gUnknown_203B2BC -_080277F4: .4byte gUnknown_80D4920 -_080277F8: .4byte gUnknown_80D4928 - thumb_func_end sub_8027794 - - thumb_func_start sub_80277FC -sub_80277FC: - push {r4,lr} - movs r0, 0x1 - bl sub_8023A94 - cmp r0, 0x4 - bhi _080278AE - lsls r0, 2 - ldr r1, _08027814 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08027814: .4byte _08027818 - .align 2, 0 -_08027818: - .4byte _080278AE - .4byte _080278AE - .4byte _080278A4 - .4byte _0802782C - .4byte _08027868 -_0802782C: - bl sub_8023B44 - ldr r4, _08027860 - ldr r1, [r4] - strh r0, [r1, 0x8] - ldr r3, _08027864 - movs r0, 0x8 - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x18] - ldrb r0, [r0, 0x2] - strb r0, [r1, 0x1C] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D7DC - movs r0, 0x3 - bl sub_8027184 - b _080278AE - .align 2, 0 -_08027860: .4byte gUnknown_203B2BC -_08027864: .4byte gRecruitedPokemonRef -_08027868: - bl sub_8023B44 - ldr r4, _0802789C - ldr r1, [r4] - strh r0, [r1, 0x8] - ldr r3, _080278A0 - movs r0, 0x8 - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x18] - ldrb r0, [r0, 0x2] - strb r0, [r1, 0x1C] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D7DC - movs r0, 0x4 - bl sub_8027184 - b _080278AE - .align 2, 0 -_0802789C: .4byte gUnknown_203B2BC -_080278A0: .4byte gRecruitedPokemonRef -_080278A4: - bl sub_8023C60 - movs r0, 0x11 - bl sub_8027184 -_080278AE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80277FC - - thumb_func_start sub_80278B4 -sub_80278B4: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_8023A94 - ldr r4, _080278F8 - ldr r0, [r4] - adds r0, 0x7C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080278E4 - ldr r0, [r4] - adds r0, 0x7C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _080278E4 - ldr r0, [r4] - str r1, [r0, 0x70] -_080278E4: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0xB - bls _080278EE - b _08027A36 -_080278EE: - lsls r0, 2 - ldr r1, _080278FC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080278F8: .4byte gUnknown_203B2BC -_080278FC: .4byte _08027900 - .align 2, 0 -_08027900: - .4byte _08027A30 - .4byte _08027A36 - .4byte _08027A36 - .4byte _08027A20 - .4byte _08027A28 - .4byte _08027930 - .4byte _0802796C - .4byte _0802798C - .4byte _080279C0 - .4byte _080279D0 - .4byte _080279D8 - .4byte _080279C8 -_08027930: - ldr r4, _08027964 - ldr r0, [r4] - movs r1, 0x8 - ldrsh r0, [r0, r1] - bl sub_808D750 - lsls r0, 24 - cmp r0, 0 - beq _0802795E - ldr r0, [r4] - movs r2, 0x8 - ldrsh r1, [r0, r2] - movs r0, 0x58 - muls r1, r0 - ldr r0, _08027968 - ldr r0, [r0] - adds r1, r0 - ldrh r2, [r1] - movs r0, 0x2 - orrs r0, r2 - strh r0, [r1] - bl nullsub_104 -_0802795E: - bl sub_808ED00 - b _08027A0E - .align 2, 0 -_08027964: .4byte gUnknown_203B2BC -_08027968: .4byte gRecruitedPokemonRef -_0802796C: - ldr r0, _08027984 - ldr r0, [r0] - ldr r2, [r0, 0x18] - ldrh r1, [r2] - ldr r0, _08027988 - ands r0, r1 - strh r0, [r2] - bl nullsub_104 - bl sub_808ED00 - b _08027A0E - .align 2, 0 -_08027984: .4byte gUnknown_203B2BC -_08027988: .4byte 0x0000fffd -_0802798C: - ldr r2, _080279B8 - ldr r0, _080279BC - ldr r0, [r0] - movs r3, 0x8 - ldrsh r1, [r0, r3] - movs r0, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - bl sub_808D33C - ldrb r1, [r4, 0x2] - cmp r1, 0 - bne _080279B2 - strb r1, [r0, 0x2] - movs r0, 0x1 - strb r0, [r4, 0x2] - bl nullsub_104 -_080279B2: - bl sub_808ED00 - b _08027A0E - .align 2, 0 -_080279B8: .4byte gRecruitedPokemonRef -_080279BC: .4byte gUnknown_203B2BC -_080279C0: - movs r0, 0x8 - bl sub_8027184 - b _08027A36 -_080279C8: - movs r0, 0xE - bl sub_8027184 - b _08027A36 -_080279D0: - movs r0, 0xA - bl sub_8027184 - b _08027A36 -_080279D8: - ldr r0, _08027A18 - bl PlaySound - ldr r4, _08027A1C - ldr r1, [r4] - ldrb r0, [r1, 0x14] - cmp r0, 0 - beq _080279F0 - adds r0, r1, 0 - adds r0, 0x14 - bl sub_8091274 -_080279F0: - bl sub_80910B4 - ldr r0, [r4] - movs r1, 0 - strb r1, [r0, 0x14] - ldr r0, [r4] - strb r1, [r0, 0x15] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl sub_808D800 - bl nullsub_104 -_08027A0E: - movs r0, 0x2 - bl sub_8027184 - b _08027A36 - .align 2, 0 -_08027A18: .4byte 0x0000014d -_08027A1C: .4byte gUnknown_203B2BC -_08027A20: - movs r0, 0x4 - bl sub_8027184 - b _08027A36 -_08027A28: - movs r0, 0x5 - bl sub_8027184 - b _08027A36 -_08027A30: - movs r0, 0x2 - bl sub_8027184 -_08027A36: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80278B4 - - thumb_func_start sub_8027A40 -sub_8027A40: - push {lr} - bl sub_80244E4 - cmp r0, 0x1 - bls _08027A58 - cmp r0, 0x3 - bhi _08027A58 - bl sub_802453C - movs r0, 0x2 - bl sub_8027184 -_08027A58: - pop {r0} - bx r0 - thumb_func_end sub_8027A40 - - thumb_func_start sub_8027A5C -sub_8027A5C: - push {lr} - bl sub_801BF48 - cmp r0, 0x1 - bls _08027A74 - cmp r0, 0x3 - bhi _08027A74 - bl sub_801BF98 - movs r0, 0x2 - bl sub_8027184 -_08027A74: - pop {r0} - bx r0 - thumb_func_end sub_8027A5C - - thumb_func_start sub_8027A78 -sub_8027A78: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08027AD8 - ldr r0, [sp] - cmp r0, 0x2 - beq _08027AA2 - cmp r0, 0x2 - bgt _08027A96 - cmp r0, 0x1 - beq _08027A9A - b _08027AD8 -_08027A96: - cmp r0, 0x3 - bne _08027AD8 -_08027A9A: - movs r0, 0x2 - bl sub_8027184 - b _08027AD8 -_08027AA2: - ldr r0, _08027AB8 - ldr r0, [r0] - ldr r0, [r0, 0x18] - ldrb r0, [r0, 0x4] - subs r0, 0x44 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08027ABC - movs r0, 0x1 - b _08027ABE - .align 2, 0 -_08027AB8: .4byte gUnknown_203B2BC -_08027ABC: - movs r0, 0 -_08027ABE: - cmp r0, 0 - beq _08027ACA - movs r0, 0x9 - bl sub_8027184 - b _08027AD8 -_08027ACA: - bl sub_8027EB8 - ldr r0, _08027AE0 - ldr r0, [r0] - ldr r0, [r0, 0x18] - bl sub_808D31C -_08027AD8: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08027AE0: .4byte gUnknown_203B2BC - thumb_func_end sub_8027A78 - - thumb_func_start sub_8027AE4 -sub_8027AE4: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _08027B1C - ldr r0, [sp] - cmp r0, 0x2 - beq _08027B0E - cmp r0, 0x2 - bgt _08027B02 - cmp r0, 0x1 - beq _08027B06 - b _08027B1C -_08027B02: - cmp r0, 0x3 - bne _08027B1C -_08027B06: - movs r0, 0x2 - bl sub_8027184 - b _08027B1C -_08027B0E: - bl sub_8027EB8 - ldr r0, _08027B24 - ldr r0, [r0] - ldr r0, [r0, 0x18] - bl sub_808D31C -_08027B1C: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08027B24: .4byte gUnknown_203B2BC - thumb_func_end sub_8027AE4 - - thumb_func_start sub_8027B28 -sub_8027B28: - push {r4,lr} - movs r0, 0x1 - bl sub_801A6E8 - cmp r0, 0x4 - bhi _08027BD2 - lsls r0, 2 - ldr r1, _08027B40 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08027B40: .4byte _08027B44 - .align 2, 0 -_08027B44: - .4byte _08027BD2 - .4byte _08027BD2 - .4byte _08027BC8 - .4byte _08027B58 - .4byte _08027B8C -_08027B58: - bl sub_801A8AC - ldr r4, _08027B84 - ldr r2, [r4] - str r0, [r2, 0xC] - ldr r3, _08027B88 - ldr r1, [r3] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x2] - strb r0, [r2, 0x10] - ldr r2, [r4] - ldr r1, [r3] - ldr r0, [r2, 0xC] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - strb r0, [r2, 0x11] - movs r0, 0xC - bl sub_8027184 - b _08027BD2 - .align 2, 0 -_08027B84: .4byte gUnknown_203B2BC -_08027B88: .4byte gUnknown_203B460 -_08027B8C: - bl sub_801A8AC - ldr r4, _08027BC0 - ldr r2, [r4] - str r0, [r2, 0xC] - ldr r3, _08027BC4 - ldr r1, [r3] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x2] - strb r0, [r2, 0x10] - ldr r2, [r4] - ldr r1, [r3] - ldr r0, [r2, 0xC] - lsls r0, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - strb r0, [r2, 0x11] - movs r0, 0 - bl sub_8099690 - movs r0, 0xD - bl sub_8027184 - b _08027BD2 - .align 2, 0 -_08027BC0: .4byte gUnknown_203B2BC -_08027BC4: .4byte gUnknown_203B460 -_08027BC8: - bl sub_801A928 - movs r0, 0x2 - bl sub_8027184 -_08027BD2: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8027B28 - - thumb_func_start sub_8027BD8 -sub_8027BD8: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_801A6E8 - ldr r4, _08027C18 - ldr r0, [r4] - adds r0, 0x7C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _08027C08 - ldr r0, [r4] - adds r0, 0x7C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _08027C08 - ldr r0, [r4] - str r1, [r0, 0x74] -_08027C08: - ldr r0, [sp] - cmp r0, 0x4 - beq _08027C68 - cmp r0, 0x4 - bgt _08027C1C - cmp r0, 0x1 - beq _08027C76 - b _08027C7C - .align 2, 0 -_08027C18: .4byte gUnknown_203B2BC -_08027C1C: - cmp r0, 0xA - bne _08027C7C - ldr r0, _08027C60 - bl PlaySound - ldr r4, _08027C64 - ldr r0, [r4] - ldr r0, [r0, 0xC] - bl sub_80911F8 - bl sub_80910B4 - ldr r1, [r4] - ldrb r0, [r1, 0x14] - cmp r0, 0 - beq _08027C44 - adds r0, r1, 0 - adds r0, 0x14 - bl sub_8091274 -_08027C44: - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x10 - bl sub_808D800 - bl sub_801A928 - bl nullsub_104 - movs r0, 0x2 - bl sub_8027184 - b _08027C7C - .align 2, 0 -_08027C60: .4byte 0x0000014d -_08027C64: .4byte gUnknown_203B2BC -_08027C68: - movs r0, 0 - bl sub_8099690 - movs r0, 0xD - bl sub_8027184 - b _08027C7C -_08027C76: - movs r0, 0xB - bl sub_8027184 -_08027C7C: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8027BD8 - .align 2,0 |