.include "asm/macros.inc" .include "constants/constants.inc" .syntax unified .text thumb_func_start sub_81D1714 sub_81D1714: @ 81D1714 ldrb r0, [r0, 0x1] bx lr thumb_func_end sub_81D1714 thumb_func_start sub_81D1718 sub_81D1718: @ 81D1718 ldrb r0, [r0, 0x1] bx lr thumb_func_end sub_81D1718 thumb_func_start sub_81D171C sub_81D171C: @ 81D171C push {r4-r7,lr} adds r5, r0, 0 movs r6, 0 ldr r7, =0x0000ffff b _081D172E .pool _081D172C: adds r6, 0x1 _081D172E: ldr r0, [r5, 0x10] lsls r4, r6, 2 adds r1, r4, r0 ldrh r0, [r1] cmp r0, r7 beq _081D1744 bl FlagGet lsls r0, 24 cmp r0, 0 bne _081D172C _081D1744: ldr r0, [r5, 0x10] adds r0, r4, r0 ldrb r0, [r0, 0x2] pop {r4-r7} pop {r1} bx r1 thumb_func_end sub_81D171C thumb_func_start sub_81D1750 sub_81D1750: @ 81D1750 movs r0, 0xD5 bx lr thumb_func_end sub_81D1750 thumb_func_start sub_81D1754 sub_81D1754: @ 81D1754 movs r0, 0xD5 bx lr thumb_func_end sub_81D1754 thumb_func_start sub_81D1758 sub_81D1758: @ 81D1758 push {r4,lr} cmp r0, 0x14 bhi _081D1784 ldr r1, =gUnknown_086252A8 lsls r0, 2 adds r0, r1 ldr r4, [r0] adds r0, r4, 0 bl sub_81D1574 ldr r1, =gUnknown_08625324 lsls r0, 2 adds r0, r1 ldr r1, [r0] adds r0, r4, 0 bl _call_via_r1 b _081D1786 .pool _081D1784: movs r0, 0 _081D1786: pop {r4} pop {r1} bx r1 thumb_func_end sub_81D1758 thumb_func_start sub_81D178C sub_81D178C: @ 81D178C movs r0, 0 bx lr thumb_func_end sub_81D178C thumb_func_start sub_81D1790 sub_81D1790: @ 81D1790 push {lr} adds r1, r0, 0 ldrh r0, [r1, 0x4] cmp r0, 0x48 bhi _081D17B8 ldr r0, =gSaveBlock1Ptr ldr r0, [r0] ldr r2, =0x000009ca adds r0, r2 ldrh r1, [r1, 0x4] adds r0, r1 ldrb r1, [r0] negs r0, r1 orrs r0, r1 lsrs r0, 31 b _081D17BA .pool _081D17B8: movs r0, 0 _081D17BA: pop {r1} bx r1 thumb_func_end sub_81D1790 thumb_func_start sub_81D17C0 sub_81D17C0: @ 81D17C0 ldr r1, =gSaveBlock1Ptr ldr r1, [r1] ldr r2, =0x000009ca adds r1, r2 ldrh r0, [r0, 0x4] adds r1, r0 ldrb r1, [r1] negs r0, r1 orrs r0, r1 lsrs r0, 31 bx lr .pool thumb_func_end sub_81D17C0 thumb_func_start sub_81D17E0 sub_81D17E0: @ 81D17E0 movs r0, 0 bx lr thumb_func_end sub_81D17E0 thumb_func_start sub_81D17E4 sub_81D17E4: @ 81D17E4 movs r0, 0 bx lr thumb_func_end sub_81D17E4 thumb_func_start sub_81D17E8 sub_81D17E8: @ 81D17E8 push {r4,r5,lr} adds r5, r0, 0 cmp r5, 0x14 bhi _081D1832 ldr r1, =gUnknown_086252A8 lsls r0, r5, 2 adds r0, r1 ldr r4, [r0] adds r0, r4, 0 bl sub_81D1574 adds r2, r0, 0 ldr r1, =gUnknown_08625338 lsls r0, r2, 2 adds r0, r1 ldr r1, [r0] adds r0, r4, 0 bl _call_via_r1 cmp r0, 0 beq _081D1820 _081D1812: movs r0, 0x1 b _081D1834 .pool _081D1820: movs r2, 0 ldr r1, =gUnknown_08625388 _081D1824: ldrh r0, [r1] cmp r0, r5 beq _081D1812 adds r1, 0x18 adds r2, 0x1 cmp r2, 0x3 bls _081D1824 _081D1832: movs r0, 0 _081D1834: pop {r4,r5} pop {r1} bx r1 .pool thumb_func_end sub_81D17E8 thumb_func_start sub_81D1840 sub_81D1840: @ 81D1840 movs r0, 0 bx lr thumb_func_end sub_81D1840 thumb_func_start sub_81D1844 sub_81D1844: @ 81D1844 movs r0, 0x1 bx lr thumb_func_end sub_81D1844 thumb_func_start sub_81D1848 sub_81D1848: @ 81D1848 movs r0, 0x1 bx lr thumb_func_end sub_81D1848 thumb_func_start sub_81D184C sub_81D184C: @ 81D184C movs r0, 0 bx lr thumb_func_end sub_81D184C thumb_func_start sub_81D1850 sub_81D1850: @ 81D1850 movs r0, 0 bx lr thumb_func_end sub_81D1850 thumb_func_start sub_81D1854 sub_81D1854: @ 81D1854 push {r4,lr} cmp r0, 0x14 bhi _081D1880 ldr r1, =gUnknown_086252A8 lsls r0, 2 adds r0, r1 ldr r4, [r0] adds r0, r4, 0 bl sub_81D1574 ldr r1, =gUnknown_0862534C lsls r0, 2 adds r0, r1 ldr r1, [r0] adds r0, r4, 0 bl _call_via_r1 b _081D1882 .pool _081D1880: movs r0, 0x4E _081D1882: pop {r4} pop {r1} bx r1 thumb_func_end sub_81D1854 thumb_func_start sub_81D1888 sub_81D1888: @ 81D1888 movs r0, 0x4E bx lr thumb_func_end sub_81D1888 thumb_func_start sub_81D188C sub_81D188C: @ 81D188C ldrh r0, [r0, 0x4] bx lr thumb_func_end sub_81D188C thumb_func_start sub_81D1890 sub_81D1890: @ 81D1890 ldrh r0, [r0, 0x4] bx lr thumb_func_end sub_81D1890 thumb_func_start sub_81D1894 sub_81D1894: @ 81D1894 movs r0, 0x4E bx lr thumb_func_end sub_81D1894 thumb_func_start sub_81D1898 sub_81D1898: @ 81D1898 movs r0, 0x4E bx lr thumb_func_end sub_81D1898 thumb_func_start sub_81D189C sub_81D189C: @ 81D189C push {r4,r5,lr} adds r5, r1, 0 cmp r0, 0x14 bhi _081D18C2 ldr r1, =gUnknown_086252A8 lsls r0, 2 adds r0, r1 ldr r4, [r0] adds r0, r4, 0 bl sub_81D1574 ldr r1, =gUnknown_08625360 lsls r0, 2 adds r0, r1 ldr r2, [r0] adds r0, r4, 0 adds r1, r5, 0 bl _call_via_r2 _081D18C2: pop {r4,r5} pop {r0} bx r0 .pool thumb_func_end sub_81D189C thumb_func_start sub_81D18D0 sub_81D18D0: @ 81D18D0 push {lr} ldr r0, [r0, 0xC] bl sub_81D1920 pop {r0} bx r0 thumb_func_end sub_81D18D0 thumb_func_start sub_81D18DC sub_81D18DC: @ 81D18DC push {lr} adds r3, r0, 0 adds r2, r1, 0 ldrb r0, [r3] cmp r0, 0x5 beq _081D18F0 ldr r0, [r3, 0x10] bl sub_81D1920 b _081D18F8 _081D18F0: ldr r0, [r3, 0x10] ldrh r1, [r3, 0x4] bl sub_81D199C _081D18F8: pop {r0} bx r0 thumb_func_end sub_81D18DC thumb_func_start sub_81D18FC sub_81D18FC: @ 81D18FC push {lr} ldr r0, [r0, 0xC] bl sub_81D1920 pop {r0} bx r0 thumb_func_end sub_81D18FC thumb_func_start sub_81D1908 sub_81D1908: @ 81D1908 push {lr} ldr r0, [r0, 0xC] bl sub_81D1920 pop {r0} bx r0 thumb_func_end sub_81D1908 thumb_func_start sub_81D1914 sub_81D1914: @ 81D1914 push {lr} adds r0, r1, 0 bl sub_8197080 pop {r0} bx r0 thumb_func_end sub_81D1914 thumb_func_start sub_81D1920 sub_81D1920: @ 81D1920 push {r4-r7,lr} mov r7, r9 mov r6, r8 push {r6,r7} adds r6, r0, 0 mov r9, r1 movs r5, 0 ldr r0, [r6] cmp r0, 0 beq _081D1940 adds r1, r6, 0 _081D1936: adds r1, 0x8 adds r5, 0x1 ldr r0, [r1] cmp r0, 0 bne _081D1936 _081D1940: cmp r5, 0 beq _081D1946 subs r5, 0x1 _081D1946: ldr r0, =0x0000ffff mov r8, r0 lsls r0, r5, 3 adds r0, 0x4 adds r4, r0, r6 b _081D195C .pool _081D1958: subs r4, 0x8 subs r5, 0x1 _081D195C: lsls r7, r5, 3 cmp r5, 0 beq _081D1974 ldrh r0, [r4] cmp r0, r8 beq _081D1958 bl FlagGet lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 bne _081D1958 _081D1974: adds r4, r7, r6 ldrh r1, [r4, 0x6] ldr r0, =0x0000ffff cmp r1, r0 beq _081D1984 adds r0, r1, 0 bl FlagSet _081D1984: ldr r1, [r4] mov r0, r9 bl StringExpandPlaceholders pop {r3,r4} mov r8, r3 mov r9, r4 pop {r4-r7} pop {r0} bx r0 .pool thumb_func_end sub_81D1920 thumb_func_start sub_81D199C sub_81D199C: @ 81D199C push {r4-r7,lr} mov r7, r10 mov r6, r9 mov r5, r8 push {r5-r7} adds r6, r0, 0 mov r10, r2 lsls r1, 16 lsrs r7, r1, 16 movs r5, 0 ldr r0, [r6] cmp r0, 0 beq _081D19E6 ldrh r0, [r6, 0x4] ldr r1, =0x0000fffe cmp r0, r1 beq _081D1A24 ldr r0, =0x0000ffff mov r9, r0 mov r8, r1 adds r4, r6, 0 _081D19C6: ldrh r0, [r4, 0x4] cmp r0, r9 beq _081D19D6 bl FlagGet lsls r0, 24 cmp r0, 0 beq _081D19E6 _081D19D6: adds r4, 0x8 adds r5, 0x1 ldr r0, [r4] cmp r0, 0 beq _081D19E6 ldrh r0, [r4, 0x4] cmp r0, r8 bne _081D19C6 _081D19E6: lsls r0, r5, 3 adds r0, r6 ldrh r1, [r0, 0x4] ldr r0, =0x0000fffe cmp r1, r0 beq _081D1A24 cmp r5, 0 beq _081D19F8 subs r5, 0x1 _081D19F8: lsls r0, r5, 3 adds r4, r0, r6 ldrh r1, [r4, 0x6] ldr r0, =0x0000ffff cmp r1, r0 beq _081D1A0A adds r0, r1, 0 bl FlagSet _081D1A0A: ldr r1, [r4] mov r0, r10 bl StringExpandPlaceholders b _081D1A5C .pool _081D1A1C: adds r5, 0x2 b _081D1A50 _081D1A20: adds r5, 0x3 b _081D1A50 _081D1A24: ldr r0, =0x00000864 bl FlagGet lsls r0, 24 cmp r0, 0 beq _081D1A50 ldr r0, =gSaveBlock1Ptr ldr r0, [r0] ldr r1, =0x000009ca adds r0, r1 adds r0, r7 ldrb r0, [r0] cmp r0, 0 bne _081D1A1C adds r0, r7, 0 bl CountBattledRematchTeams lsls r0, 16 lsrs r0, 16 cmp r0, 0x1 bhi _081D1A20 adds r5, 0x1 _081D1A50: lsls r0, r5, 3 adds r0, r6 ldr r1, [r0] mov r0, r10 bl StringExpandPlaceholders _081D1A5C: pop {r3-r5} mov r8, r3 mov r9, r4 mov r10, r5 pop {r4-r7} pop {r0} bx r0 .pool thumb_func_end sub_81D199C thumb_func_start sub_81D1A78 sub_81D1A78: @ 81D1A78 push {r4-r6,lr} adds r5, r1, 0 adds r6, r2, 0 cmp r0, 0x14 bhi _081D1AA2 ldr r1, =gUnknown_086252A8 lsls r0, 2 adds r0, r1 ldr r4, [r0] adds r0, r4, 0 bl sub_81D1574 ldr r1, =gUnknown_08625374 lsls r0, 2 adds r0, r1 ldr r3, [r0] adds r0, r4, 0 adds r1, r5, 0 adds r2, r6, 0 bl _call_via_r3 _081D1AA2: pop {r4-r6} pop {r0} bx r0 .pool thumb_func_end sub_81D1A78 thumb_func_start sub_81D1AB0 sub_81D1AB0: @ 81D1AB0 ldr r3, [r0, 0x4] str r3, [r1] ldr r0, [r0, 0x8] str r0, [r2] bx lr thumb_func_end sub_81D1AB0 thumb_func_start sub_81D1ABC sub_81D1ABC: @ 81D1ABC push {r4,r5,lr} adds r5, r1, 0 adds r4, r0, 0 ldr r0, [r4, 0xC] cmp r0, 0 bne _081D1AD0 ldrh r0, [r4, 0x4] bl sub_81D1B0C b _081D1AD2 _081D1AD0: str r0, [r2] _081D1AD2: ldr r0, [r4, 0x8] str r0, [r5] pop {r4,r5} pop {r0} bx r0 thumb_func_end sub_81D1ABC thumb_func_start sub_81D1ADC sub_81D1ADC: @ 81D1ADC push {r4,r5,lr} adds r4, r0, 0 adds r5, r1, 0 ldrh r0, [r4, 0x4] bl sub_81D1B0C ldr r0, [r4, 0x8] str r0, [r5] pop {r4,r5} pop {r0} bx r0 thumb_func_end sub_81D1ADC thumb_func_start sub_81D1AF4 sub_81D1AF4: @ 81D1AF4 ldr r3, [r0, 0x4] str r3, [r1] ldr r0, [r0, 0x8] str r0, [r2] bx lr thumb_func_end sub_81D1AF4 thumb_func_start sub_81D1B00 sub_81D1B00: @ 81D1B00 ldr r3, [r0, 0x4] str r3, [r1] ldr r0, [r0, 0x8] str r0, [r2] bx lr thumb_func_end sub_81D1B00 thumb_func_start sub_81D1B0C sub_81D1B0C: @ 81D1B0C push {r4,r5,lr} adds r4, r1, 0 adds r5, r2, 0 bl sub_81D15BC lsls r1, r0, 2 adds r1, r0 lsls r1, 3 ldr r0, =gTrainers adds r1, r0 ldrb r2, [r1, 0x1] movs r0, 0xD muls r0, r2 ldr r2, =gTrainerClassNames adds r0, r2 str r0, [r4] adds r1, 0x4 str r1, [r5] pop {r4,r5} pop {r0} bx r0 .pool thumb_func_end sub_81D1B0C thumb_func_start sub_81D1B40 sub_81D1B40: @ 81D1B40 push {r4-r7,lr} mov r7, r9 mov r6, r8 push {r6,r7} adds r6, r0, 0 movs r5, 0 ldr r2, =gUnknown_08625388 movs r0, 0x8 adds r0, r2 mov r9, r0 _081D1B54: lsls r0, r5, 1 adds r0, r5 lsls r0, 3 adds r0, r2 ldrh r0, [r0] cmp r0, r6 bne _081D1BBC adds r4, r5, 0x1 lsls r1, 2 mov r8, r1 cmp r4, 0x3 bhi _081D1BA8 lsls r0, r4, 1 adds r0, r4 lsls r0, 3 adds r0, r2 ldrh r0, [r0] cmp r0, r6 bne _081D1BA8 ldr r7, =gUnknown_08625388 _081D1B7C: lsls r0, r4, 1 adds r0, r4 lsls r0, 3 adds r1, r7, 0x4 adds r0, r1 ldrh r0, [r0] bl FlagGet lsls r0, 24 cmp r0, 0 beq _081D1BA8 adds r5, r4, 0 adds r4, r5, 0x1 cmp r4, 0x3 bhi _081D1BA8 lsls r0, r4, 1 adds r0, r4 lsls r0, 3 adds r0, r7 ldrh r0, [r0] cmp r0, r6 beq _081D1B7C _081D1BA8: lsls r0, r5, 1 adds r0, r5 lsls r0, 3 add r0, r8 add r0, r9 ldr r0, [r0] b _081D1BC4 .pool _081D1BBC: adds r5, 0x1 cmp r5, 0x3 bls _081D1B54 movs r0, 0 _081D1BC4: pop {r3,r4} mov r8, r3 mov r9, r4 pop {r4-r7} pop {r1} bx r1 thumb_func_end sub_81D1B40 thumb_func_start sub_81D1BD0 sub_81D1BD0: @ 81D1BD0 push {lr} adds r3, r0, 0 movs r2, 0 ldr r1, =gUnknown_08625388 _081D1BD8: ldrh r0, [r1] cmp r0, r3 bne _081D1BE8 ldrh r0, [r1, 0x2] b _081D1BF4 .pool _081D1BE8: adds r1, 0x18 adds r2, 0x1 cmp r2, 0x3 bls _081D1BD8 movs r0, 0x1 negs r0, r0 _081D1BF4: pop {r1} bx r1 thumb_func_end sub_81D1BD0 thumb_func_start sub_81D1BF8 sub_81D1BF8: @ 81D1BF8 push {r4,r5,lr} adds r5, r0, 0 movs r4, 0 _081D1BFE: adds r0, r4, 0 bl sub_81D1854 cmp r0, 0x4E beq _081D1C10 cmp r0, r5 bne _081D1C10 movs r0, 0x1 b _081D1C18 _081D1C10: adds r4, 0x1 cmp r4, 0x14 ble _081D1BFE movs r0, 0 _081D1C18: pop {r4,r5} pop {r1} bx r1 thumb_func_end sub_81D1BF8 thumb_func_start SetMatchCallRegisteredFlag SetMatchCallRegisteredFlag: @ 81D1C20 push {lr} ldr r0, =gSpecialVar_0x8004 ldrh r0, [r0] bl sub_81D15CC cmp r0, 0 blt _081D1C3C movs r1, 0xAE lsls r1, 1 adds r0, r1 lsls r0, 16 lsrs r0, 16 bl FlagSet _081D1C3C: pop {r0} bx r0 .pool thumb_func_end SetMatchCallRegisteredFlag