.include "asm/macros.inc" .include "constants/constants.inc" .syntax unified .text thumb_func_start sub_819A344 sub_819A344: @ 819A344 push {r4-r7,lr} lsls r0, 24 lsrs r3, r0, 24 lsls r2, 24 lsrs r2, 24 adds r5, r1, 0 movs r1, 0xFC strb r1, [r5] adds r5, 0x1 movs r0, 0x1 strb r0, [r5] adds r5, 0x1 strb r2, [r5] adds r5, 0x1 strb r1, [r5] adds r5, 0x1 movs r0, 0x3 strb r0, [r5] adds r5, 0x1 adds r2, 0x1 strb r2, [r5] adds r5, 0x1 cmp r3, 0x4 bhi _0819A43C lsls r0, r3, 2 ldr r1, =_0819A384 adds r0, r1 ldr r0, [r0] mov pc, r0 .pool .align 2, 0 _0819A384: .4byte _0819A398 .4byte _0819A3A8 .4byte _0819A3D6 .4byte _0819A404 .4byte _0819A414 _0819A398: ldr r0, =gSaveBlock2Ptr ldr r1, [r0] adds r0, r5, 0 bl StringCopy b _0819A43C .pool _0819A3A8: bl IsNationalPokedexEnabled cmp r0, 0 beq _0819A3B8 movs r0, 0x1 bl pokedex_count b _0819A3BE _0819A3B8: movs r0, 0x1 bl sub_80C0844 _0819A3BE: adds r1, r0, 0 lsls r1, 16 lsrs r1, 16 adds r0, r5, 0 movs r2, 0 movs r3, 0x3 bl ConvertIntToDecimalStringN adds r5, r0, 0 movs r0, 0xFF strb r0, [r5] b _0819A43C _0819A3D6: ldr r4, =gSaveBlock2Ptr ldr r0, [r4] ldrh r1, [r0, 0xE] adds r0, r5, 0 movs r2, 0 movs r3, 0x3 bl ConvertIntToDecimalStringN adds r5, r0, 0 movs r0, 0xF0 strb r0, [r5] adds r5, 0x1 ldr r0, [r4] ldrb r1, [r0, 0x10] adds r0, r5, 0 movs r2, 0x2 movs r3, 0x2 bl ConvertIntToDecimalStringN b _0819A43C .pool _0819A404: ldr r0, =gMapHeader ldrb r1, [r0, 0x14] adds r0, r5, 0 bl sub_81245DC b _0819A43C .pool _0819A414: ldr r4, =0x00000867 movs r6, 0 adds r7, r5, 0x1 _0819A41A: lsls r0, r4, 16 lsrs r0, 16 bl FlagGet lsls r0, 24 cmp r0, 0 beq _0819A42A adds r6, 0x1 _0819A42A: adds r4, 0x1 ldr r0, =0x0000086e cmp r4, r0 ble _0819A41A adds r0, r6, 0 subs r0, 0x5F strb r0, [r5] movs r0, 0xFF strb r0, [r7] _0819A43C: pop {r4-r7} pop {r0} bx r0 .pool thumb_func_end sub_819A344 thumb_func_start sub_819A44C sub_819A44C: @ 819A44C push {r4,r5,lr} adds r5, r0, 0 ldrb r4, [r5, 0x5] lsrs r4, 4 movs r0, 0x65 bl IndexOfSpritePaletteTag lsls r0, 24 lsls r4, 16 lsrs r4, 16 lsrs r0, 24 cmp r4, r0 bne _0819A4BA adds r0, r5, 0 adds r0, 0x3F ldrb r1, [r0] movs r0, 0x10 ands r0, r1 cmp r0, 0 beq _0819A4B0 ldrh r1, [r5, 0x2E] movs r2, 0x2E ldrsh r0, [r5, r2] cmp r0, 0 beq _0819A484 subs r0, r1, 0x1 strh r0, [r5, 0x2E] b _0819A4C2 _0819A484: bl Random lsls r0, 16 lsrs r0, 16 movs r1, 0x5 bl __umodsi3 lsls r0, 16 cmp r0, 0 bne _0819A4A6 adds r0, r5, 0 movs r1, 0 bl StartSpriteAnim movs r0, 0x20 strh r0, [r5, 0x2E] b _0819A4C2 _0819A4A6: adds r0, r5, 0 movs r1, 0x1 bl StartSpriteAnim b _0819A4C2 _0819A4B0: adds r0, r5, 0 movs r1, 0x1 bl StartSpriteAnimIfDifferent b _0819A4C2 _0819A4BA: adds r0, r5, 0 movs r1, 0 bl StartSpriteAnimIfDifferent _0819A4C2: pop {r4,r5} pop {r0} bx r0 thumb_func_end sub_819A44C .align 2, 0 @ Don't pad with nop.