Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ARM9:0201DE74 ; u32 __fastcall readPkmPartyData(PartyPkm *pPkm, PkmField field, u32 data)
- ARM9:0201DE74 readPkmPartyData ; CODE XREF: getPkmStat+12p
- ARM9:0201DE74 08 B5 PUSH {R3,LR}
- ARM9:0201DE76 0B 1C MOVS R3, R1
- ARM9:0201DE78 9D 3B SUBS R3, #0x9D ; '¥'
- ARM9:0201DE7A 0B 2B CMP R3, #0xB
- ARM9:0201DE7C 37 D8 BHI box_data ; jumptable 0201DE88 default case
- ARM9:0201DE7E DB 18 ADDS R3, R3, R3
- ARM9:0201DE80 7B 44 ADD R3, PC
- ARM9:0201DE82 DB 88 LDRH R3, [R3,#6]
- ARM9:0201DE84 1B 04 LSLS R3, R3, #0x10
- ARM9:0201DE86 1B 14 ASRS R3, R3, #0x10
- ARM9:0201DE88 9F 44 ADD PC, R3 ; switch 12 cases
- ARM9:0201DE88 ; ---------------------------------------------------------------------------
- ARM9:0201DE8A 16 00 1C 00+off_201DE8A DCW poke_status_flags - (off_201DE8A+2) ; jump table for switch statement
- ARM9:0201DE8A 22 00 28 00+ DCW level - (off_201DE8A+2)
- ARM9:0201DE8A 2E 00 34 00+ DCW capsule_idx - (off_201DE8A+2)
- ARM9:0201DE8A 3A 00 40 00+ DCW curr_HP - (off_201DE8A+2)
- ARM9:0201DE8A 46 00 4C 00+ DCW max_HP - (off_201DE8A+2)
- ARM9:0201DE8A 52 00 5E 00 DCW stat_ATK - (off_201DE8A+2)
- ARM9:0201DE8A DCW stat_DEF - (off_201DE8A+2)
- ARM9:0201DE8A DCW stat_SPE - (off_201DE8A+2)
- ARM9:0201DE8A DCW stat_SPA - (off_201DE8A+2)
- ARM9:0201DE8A DCW stat_SPD - (off_201DE8A+2)
- ARM9:0201DE8A DCW mail_msg - (off_201DE8A+2)
- ARM9:0201DE8A DCW too_high - (off_201DE8A+2)
- ARM9:0201DEA2 ; ---------------------------------------------------------------------------
- ARM9:0201DEA2
- ARM9:0201DEA2 poke_status_flags ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DEA2 88 30 ADDS R0, #0x88 ; 'ê' ; jumptable 0201DE88 case 0
- ARM9:0201DEA4 00 68 LDR R0, [R0]
- ARM9:0201DEA6 08 BD POP {R3,PC}
- ARM9:0201DEA8 ; ---------------------------------------------------------------------------
- ARM9:0201DEA8
- ARM9:0201DEA8 level ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DEA8 8C 30 ADDS R0, #0x8C ; 'î' ; jumptable 0201DE88 case 1
- ARM9:0201DEAA 00 78 LDRB R0, [R0]
- ARM9:0201DEAC 08 BD POP {R3,PC}
- ARM9:0201DEAE ; ---------------------------------------------------------------------------
- ARM9:0201DEAE
- ARM9:0201DEAE capsule_idx ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DEAE 8D 30 ADDS R0, #0x8D ; 'ì' ; jumptable 0201DE88 case 2
- ARM9:0201DEB0 00 78 LDRB R0, [R0]
- ARM9:0201DEB2 08 BD POP {R3,PC}
- ARM9:0201DEB4 ; ---------------------------------------------------------------------------
- ARM9:0201DEB4
- ARM9:0201DEB4 curr_HP ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DEB4 8E 30 ADDS R0, #0x8E ; 'Ä' ; jumptable 0201DE88 case 3
- ARM9:0201DEB6 00 88 LDRH R0, [R0]
- ARM9:0201DEB8 08 BD POP {R3,PC}
- ARM9:0201DEBA ; ---------------------------------------------------------------------------
- ARM9:0201DEBA
- ARM9:0201DEBA max_HP ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DEBA 90 30 ADDS R0, #0x90 ; 'É' ; jumptable 0201DE88 case 4
- ARM9:0201DEBC 00 88 LDRH R0, [R0]
- ARM9:0201DEBE 08 BD POP {R3,PC}
- ARM9:0201DEC0 ; ---------------------------------------------------------------------------
- ARM9:0201DEC0
- ARM9:0201DEC0 stat_ATK ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DEC0 92 30 ADDS R0, #0x92 ; 'Æ' ; jumptable 0201DE88 case 5
- ARM9:0201DEC2 00 88 LDRH R0, [R0]
- ARM9:0201DEC4 08 BD POP {R3,PC}
- ARM9:0201DEC6 ; ---------------------------------------------------------------------------
- ARM9:0201DEC6
- ARM9:0201DEC6 stat_DEF ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DEC6 94 30 ADDS R0, #0x94 ; 'ö' ; jumptable 0201DE88 case 6
- ARM9:0201DEC8 00 88 LDRH R0, [R0]
- ARM9:0201DECA 08 BD POP {R3,PC}
- ARM9:0201DECC ; ---------------------------------------------------------------------------
- ARM9:0201DECC
- ARM9:0201DECC stat_SPE ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DECC 96 30 ADDS R0, #0x96 ; 'û' ; jumptable 0201DE88 case 7
- ARM9:0201DECE 00 88 LDRH R0, [R0]
- ARM9:0201DED0 08 BD POP {R3,PC}
- ARM9:0201DED2 ; ---------------------------------------------------------------------------
- ARM9:0201DED2
- ARM9:0201DED2 stat_SPA ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DED2 98 30 ADDS R0, #0x98 ; 'ÿ' ; jumptable 0201DE88 case 8
- ARM9:0201DED4 00 88 LDRH R0, [R0]
- ARM9:0201DED6 08 BD POP {R3,PC}
- ARM9:0201DED8 ; ---------------------------------------------------------------------------
- ARM9:0201DED8
- ARM9:0201DED8 stat_SPD ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DED8 9A 30 ADDS R0, #0x9A ; 'Ü' ; jumptable 0201DE88 case 9
- ARM9:0201DEDA 00 88 LDRH R0, [R0]
- ARM9:0201DEDC 08 BD POP {R3,PC}
- ARM9:0201DEDE ; ---------------------------------------------------------------------------
- ARM9:0201DEDE
- ARM9:0201DEDE mail_msg ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DEDE 9C 30 ADDS R0, #0x9C ; '£' ; jumptable 0201DE88 case 10
- ARM9:0201DEE0 11 1C MOVS R1, R2 ; pDst
- ARM9:0201DEE2 EB F7 03 FC BL copyMailMsg
- ARM9:0201DEE6 01 20 MOVS R0, #1
- ARM9:0201DEE8 08 BD POP {R3,PC}
- ARM9:0201DEEA ; ---------------------------------------------------------------------------
- ARM9:0201DEEA
- ARM9:0201DEEA too_high ; CODE XREF: readPkmPartyData+14j
- ARM9:0201DEEA 01 20 MOVS R0, #1 ; pPkm
- ARM9:0201DEEC 08 BD POP {R3,PC}
- ARM9:0201DEEE ; ---------------------------------------------------------------------------
- ARM9:0201DEEE
- ARM9:0201DEEE box_data ; CODE XREF: readPkmPartyData+8j
- ARM9:0201DEEE 00 F0 01 F8 BL readPkmBoxData ; jumptable 0201DE88 default case
- ARM9:0201DEF2 08 BD POP {R3,PC}
- ARM9:0201DEF2 ; End of function readPkmPartyData
- ARM9:0201DEF2
- ARM9:0201DEF4
- ARM9:0201DEF4 ; =============== S U B R O U T I N E =======================================
- ARM9:0201DEF4
- ARM9:0201DEF4
- ARM9:0201DEF4 ; u32 __fastcall readPkmBoxData(BoxPkm *pPkm, PkmField field, void *pStrbuf)
- ARM9:0201DEF4 readPkmBoxData ; CODE XREF: getPkmBoxData+12p
- ARM9:0201DEF4 ; readPkmPartyData:box_datap
- ARM9:0201DEF4
- ARM9:0201DEF4 field = -0x28
- ARM9:0201DEF4 dest = -0x24
- ARM9:0201DEF4 num = -0x20
- ARM9:0201DEF4
- ARM9:0201DEF4 F8 B5 PUSH {R3-R7,LR} ; for this function, in the switch:
- ARM9:0201DEF4 ; r7 is the unencrypted data
- ARM9:0201DEF4 ; r5 is the first block for the poke
- ARM9:0201DEF4 ; r6 is the second block for the poke
- ARM9:0201DEF4 ; SP + 12 is the third block for the poke
- ARM9:0201DEF4 ; r1 is the fourth block for the poke
- ARM9:0201DEF6 84 B0 SUB SP, SP, #0x10
- ARM9:0201DEF8 07 1C MOVS R7, R0
- ARM9:0201DEFA 00 91 STR R1, [SP,#0x28+field]
- ARM9:0201DEFC 01 92 STR R2, [SP,#0x28+dest]
- ARM9:0201DEFE 39 68 LDR R1, [R7] ; pid
- ARM9:0201DF00 00 22 MOVS R2, #0 ; blk_num
- ARM9:0201DF02 00 24 MOVS R4, #0
- ARM9:0201DF04 00 F0 F4 FF BL getPkmBlockShuffle
- ARM9:0201DF08 01 22 MOVS R2, #1
- ARM9:0201DF0A 05 1C MOVS R5, R0
- ARM9:0201DF0C 02 92 STR R2, [SP,#8]
- ARM9:0201DF0E 39 68 LDR R1, [R7] ; pid
- ARM9:0201DF10 38 1C MOVS R0, R7 ; pPkm
- ARM9:0201DF12 01 22 MOVS R2, #1 ; blk_num
- ARM9:0201DF14 00 F0 EC FF BL getPkmBlockShuffle
- ARM9:0201DF18 06 1C MOVS R6, R0
- ARM9:0201DF1A 39 68 LDR R1, [R7] ; pid
- ARM9:0201DF1C 38 1C MOVS R0, R7 ; pPkm
- ARM9:0201DF1E 02 22 MOVS R2, #2 ; blk_num
- ARM9:0201DF20 00 F0 E6 FF BL getPkmBlockShuffle
- ARM9:0201DF24 03 90 STR R0, [SP,#0xC]
- ARM9:0201DF26 39 68 LDR R1, [R7] ; pid
- ARM9:0201DF28 38 1C MOVS R0, R7 ; pPkm
- ARM9:0201DF2A 03 22 MOVS R2, #3 ; blk_num
- ARM9:0201DF2C 00 F0 E0 FF BL getPkmBlockShuffle
- ARM9:0201DF30 00 9A LDR R2, [SP,#0x28+field]
- ARM9:0201DF32 01 1C MOVS R1, R0
- ARM9:0201DF34 B3 2A CMP R2, #0xB3 ; '¦'
- ARM9:0201DF36 00 D9 BLS loc_201DF3A
- ARM9:0201DF38 B9 E0 B default_ret_0 ; jumptable 0201DF44 default case
- ARM9:0201DF3A ; ---------------------------------------------------------------------------
- ARM9:0201DF3A
- ARM9:0201DF3A loc_201DF3A ; CODE XREF: readPkmBoxData+42j
- ARM9:0201DF3A 92 18 ADDS R2, R2, R2
- ARM9:0201DF3C 7A 44 ADD R2, PC
- ARM9:0201DF3E D2 88 LDRH R2, [R2,#6]
- ARM9:0201DF40 12 04 LSLS R2, R2, #0x10
- ARM9:0201DF42 12 14 ASRS R2, R2, #0x10
- ARM9:0201DF44 97 44 ADD PC, R2 ; switch 180 cases
- ARM9:0201DF44 ; ---------------------------------------------------------------------------
- ARM9:0201DF46 6A 01 6E 01+off_201DF46 DCW pid - (off_201DF46+2), party_pkm_already_decrypted - (off_201DF46+2)
- ARM9:0201DF46 76 01 7A 01+ ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201DF46 80 01 C8 01+ ; readPkmBoxData:off_201DF46+2o
- ARM9:0201DF46 D6 01 E0 01+ ; readPkmBoxData:off_201DF46+4o
- ARM9:0201DF46 E4 01 E8 01+ ; readPkmBoxData:off_201DF46+6o ...
- ARM9:0201DF46 EC 01 F0 01+ DCW box_pkm_already_decrypted - (off_201DF46+2), is_species_egg - (off_201DF46+2) ; jump table for switch statement
- ARM9:0201DF46 F4 01 F8 01+ DCW checksum - (off_201DF46+2), species - (off_201DF46+2)
- ARM9:0201DF46 FC 01 00 02+ DCW item - (off_201DF46+2), sid_tid - (off_201DF46+2)
- ARM9:0201DF46 04 02 08 02+ DCW exp - (off_201DF46+2), happiness - (off_201DF46+2)
- ARM9:0201DF46 0C 02 10 02+ DCW ability - (off_201DF46+2), markings - (off_201DF46+2)
- ARM9:0201DF46 14 02 18 02+ DCW region - (off_201DF46+2), HP_EV - (off_201DF46+2)
- ARM9:0201DF46 1C 02 20 02+ DCW ATK_EV - (off_201DF46+2), DEF_EV - (off_201DF46+2)
- ARM9:0201DF46 24 02 28 02+ DCW SPE_EV - (off_201DF46+2), SPA_EV - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW SPD_EV - (off_201DF46+2), cool_contest - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW beauty_contest - (off_201DF46+2), cute_contest - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW smart_contest - (off_201DF46+2), tough_contest - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sheen_contest - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 28 02 28 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 50 02 50 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 50 02 50 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 5C 02 5C 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 5C 02 5C 02+ DCW sinnoh_ribbons - (off_201DF46+2), sinnoh_ribbons - (off_201DF46+2)
- ARM9:0201DF46 68 02 68 02+ DCW moves - (off_201DF46+2), moves - (off_201DF46+2), moves - (off_201DF46+2)
- ARM9:0201DF46 68 02 68 02+ DCW moves - (off_201DF46+2), move_cur_pp - (off_201DF46+2)
- ARM9:0201DF46 74 02 74 02+ DCW move_cur_pp - (off_201DF46+2), move_cur_pp - (off_201DF46+2)
- ARM9:0201DF46 74 02 74 02+ DCW move_cur_pp - (off_201DF46+2), move_ppup_count - (off_201DF46+2)
- ARM9:0201DF46 90 02 98 02+ DCW move_ppup_count - (off_201DF46+2), move_ppup_count - (off_201DF46+2)
- ARM9:0201DF46 9E 02 A4 02+ DCW move_ppup_count - (off_201DF46+2), move_max_pp - (off_201DF46+2)
- ARM9:0201DF46 AA 02 B0 02+ DCW move_max_pp - (off_201DF46+2), move_max_pp - (off_201DF46+2)
- ARM9:0201DF46 B6 02 CA 02+ DCW move_max_pp - (off_201DF46+2), hp_iv - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW atk_iv - (off_201DF46+2), def_iv - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW spe_iv - (off_201DF46+2), spa_iv - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW spd_iv - (off_201DF46+2), is_egg - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 CA 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 CA 02 F2 02+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 F6 02 26 03+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 2C 03 30 03+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 3A 03 3E 03+ DCW hoenn_unova_ribbons - (off_201DF46+2), hoenn_unova_ribbons - (off_201DF46+2)
- ARM9:0201DF46 5E 03 C6 02+ DCW fateful_encounter - (off_201DF46+2), gender - (off_201DF46+2)
- ARM9:0201DF46 82 03 88 03+ DCW get_form_bits - (off_201DF46+2), nature - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW has_dw_abil - (off_201DF46+2), get_unused_word - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW poke_curr_name - (off_201DF46+2), nickname - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW is_nicknamed - (off_201DF46+2), loc_201E2CA - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW origin_game - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 8E 03 8E 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 8E 03 BA 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 BE 03 C4 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 C8 03 CC 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 D0 03 D4 03+ DCW sinnoh_contest_ribbons - (off_201DF46+2), sinnoh_contest_ribbons - (off_201DF46+2)
- ARM9:0201DF46 D8 03 DC 03+ DCW ot_name_in - (off_201DF46+2), ot_name_out - (off_201DF46+2)
- ARM9:0201DF46 E0 03 E4 03+ DCW met_year - (off_201DF46+2), met_month - (off_201DF46+2)
- ARM9:0201DF46 E8 03 EC 03+ DCW met_day - (off_201DF46+2), egg_year - (off_201DF46+2)
- ARM9:0201DF46 F4 03 FA 03+ DCW egg_month - (off_201DF46+2), egg_day - (off_201DF46+2)
- ARM9:0201DF46 FE 03 66 01+ DCW catch_location - (off_201DF46+2), loc_201E328 - (off_201DF46+2)
- ARM9:0201DF46 B8 01 66 01+ DCW pokerus - (off_201DF46+2), poke_ball - (off_201DF46+2)
- ARM9:0201DF46 66 01 66 01+ DCW met_level - (off_201DF46+2), ot_gender - (off_201DF46+2)
- ARM9:0201DF46 66 01 66 01+ DCW loc_201E342 - (off_201DF46+2), loc_201E346 - (off_201DF46+2)
- ARM9:0201DF46 66 01 66 01+ DCW default_ret_0 - (off_201DF46+2), level - (off_201DF46+2)
- ARM9:0201DF46 66 01 66 01+ DCW default_ret_0 - (off_201DF46+2), default_ret_0 - (off_201DF46+2)
- ARM9:0201DF46 66 01 84 01+ DCW default_ret_0 - (off_201DF46+2), default_ret_0 - (off_201DF46+2)
- ARM9:0201DF46 92 01 9C 01+ DCW default_ret_0 - (off_201DF46+2), default_ret_0 - (off_201DF46+2)
- ARM9:0201DF46 02 04 34 04+ DCW default_ret_0 - (off_201DF46+2), default_ret_0 - (off_201DF46+2)
- ARM9:0201DF46 4A 04 4A 04+ DCW default_ret_0 - (off_201DF46+2), default_ret_0 - (off_201DF46+2)
- ARM9:0201DF46 66 01 66 01+ DCW is_slot_filled - (off_201DF46+2), is_egg_both_sanity_bits - (off_201DF46+2)
- ARM9:0201DF46 34 03 72 04 DCW get_species_if_filled_slot_is_egg - (off_201DF46+2)
- ARM9:0201DF46 DCW getIVsAsInt_no_isegg_no_isnick - (off_201DF46+2), is_species_NOT_nidoFM - (off_201DF46+2)
- ARM9:0201DF46 DCW pkm_type - (off_201DF46+2), pkm_type - (off_201DF46+2)
- ARM9:0201DF46 DCW default_ret_0 - (off_201DF46+2), default_ret_0 - (off_201DF46+2)
- ARM9:0201DF46 DCW N_poke - (off_201DF46+2), loc_201E3BA - (off_201DF46+2)
- ARM9:0201E0AE ; ---------------------------------------------------------------------------
- ARM9:0201E0AE
- ARM9:0201E0AE default_ret_0 ; CODE XREF: readPkmBoxData+44j
- ARM9:0201E0AE ; readPkmBoxData+50j
- ARM9:0201E0AE ; readPkmBoxData+232j
- ARM9:0201E0AE ; readPkmBoxData+498j
- ARM9:0201E0AE ; DATA XREF: ...
- ARM9:0201E0AE 00 24 MOVS R4, #0 ; jumptable 0201DF44 cases 157,159-168,176,177
- ARM9:0201E0B0 84 E1 B ret
- ARM9:0201E0B2 ; ---------------------------------------------------------------------------
- ARM9:0201E0B2
- ARM9:0201E0B2 pid ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E0B2 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E0B2 3C 68 LDR R4, [R7] ; jumptable 0201DF44 case 0
- ARM9:0201E0B4 82 E1 B ret
- ARM9:0201E0B6 ; ---------------------------------------------------------------------------
- ARM9:0201E0B6
- ARM9:0201E0B6 party_pkm_already_decrypted ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E0B6 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E0B6 B8 88 LDRH R0, [R7,#4] ; jumptable 0201DF44 case 1
- ARM9:0201E0B8
- ARM9:0201E0B8 loc_201E0B8 ; CODE XREF: readPkmBoxData+348j
- ARM9:0201E0B8 ; readPkmBoxData+386j
- ARM9:0201E0B8 C0 07 LSLS R0, R0, #0x1F
- ARM9:0201E0BA
- ARM9:0201E0BA loc_201E0BA ; CODE XREF: readPkmBoxData+1D2j
- ARM9:0201E0BA ; readPkmBoxData+318j
- ARM9:0201E0BA ; readPkmBoxData+31Cj
- ARM9:0201E0BA ; readPkmBoxData+38Cj ...
- ARM9:0201E0BA C4 0F LSRS R4, R0, #0x1F
- ARM9:0201E0BC 7E E1 B ret
- ARM9:0201E0BE ; ---------------------------------------------------------------------------
- ARM9:0201E0BE
- ARM9:0201E0BE box_pkm_already_decrypted ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E0BE ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E0BE B8 88 LDRH R0, [R7,#4] ; jumptable 0201DF44 case 2
- ARM9:0201E0C0 DD E0 B loc_201E27E
- ARM9:0201E0C2 ; ---------------------------------------------------------------------------
- ARM9:0201E0C2
- ARM9:0201E0C2 is_species_egg ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E0C2 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E0C2 B8 88 LDRH R0, [R7,#4] ; jumptable 0201DF44 case 3
- ARM9:0201E0C4 40 07 LSLS R0, R0, #0x1D
- ARM9:0201E0C6 F8 E7 B loc_201E0BA
- ARM9:0201E0C8 ; ---------------------------------------------------------------------------
- ARM9:0201E0C8
- ARM9:0201E0C8 checksum ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E0C8 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E0C8 FC 88 LDRH R4, [R7,#6] ; jumptable 0201DF44 case 4
- ARM9:0201E0CA 77 E1 B ret
- ARM9:0201E0CC ; ---------------------------------------------------------------------------
- ARM9:0201E0CC
- ARM9:0201E0CC is_slot_filled ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E0CC ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E0CC 28 88 LDRH R0, [R5] ; jumptable 0201DF44 case 169
- ARM9:0201E0CE 00 28 CMP R0, #0
- ARM9:0201E0D0 01 D1 BNE loc_201E0D6
- ARM9:0201E0D2 00 20 MOVS R0, #0
- ARM9:0201E0D4 02 90 STR R0, [SP,#0x28+num]
- ARM9:0201E0D6
- ARM9:0201E0D6 loc_201E0D6 ; CODE XREF: readPkmBoxData+1DCj
- ARM9:0201E0D6 ; readPkmBoxData:loc_201E196j
- ARM9:0201E0D6 ; readPkmBoxData:loc_201E238j
- ARM9:0201E0D6 ; readPkmBoxData:loc_201E300j
- ARM9:0201E0D6 02 9C LDR R4, [SP,#0x28+num]
- ARM9:0201E0D8 70 E1 B ret
- ARM9:0201E0DA ; ---------------------------------------------------------------------------
- ARM9:0201E0DA
- ARM9:0201E0DA is_egg_both_sanity_bits ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E0DA ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E0DA B8 88 LDRH R0, [R7,#4] ; jumptable 0201DF44 case 170
- ARM9:0201E0DC 40 07 LSLS R0, R0, #0x1D
- ARM9:0201E0DE C4 0F LSRS R4, R0, #0x1F ; if bit 2(starting at 0) is not set, then the pokemon is not an egg. if it is, return species 28A(egg).
- ARM9:0201E0E0 0B D1 BNE loc_201E0FA
- ARM9:0201E0E2 91 E0 B loc_201E208
- ARM9:0201E0E4 ; ---------------------------------------------------------------------------
- ARM9:0201E0E4
- ARM9:0201E0E4 get_species_if_filled_slot_is_egg ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E0E4 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E0E4 2C 88 LDRH R4, [R5] ; jumptable 0201DF44 case 171
- ARM9:0201E0E6 00 2C CMP R4, #0
- ARM9:0201E0E8 07 D0 BEQ loc_201E0FA
- ARM9:0201E0EA 30 69 LDR R0, [R6,#0x10]
- ARM9:0201E0EC 40 00 LSLS R0, R0, #1
- ARM9:0201E0EE C0 0F LSRS R0, R0, #0x1F ; this loads the isEgg bit
- ARM9:0201E0F0 04 D1 BNE egg_species
- ARM9:0201E0F2 B8 88 LDRH R0, [R7,#4]
- ARM9:0201E0F4 40 07 LSLS R0, R0, #0x1D
- ARM9:0201E0F6 C0 0F LSRS R0, R0, #0x1F ; if bit 2(starting at 0) is not set, then the pokemon is not an egg. if it is, return species 28A(egg).
- ARM9:0201E0F8 00 D1 BNE egg_species
- ARM9:0201E0FA
- ARM9:0201E0FA loc_201E0FA ; CODE XREF: readPkmBoxData+1ECj
- ARM9:0201E0FA ; readPkmBoxData+1F4j
- ARM9:0201E0FA 5F E1 B ret
- ARM9:0201E0FC ; ---------------------------------------------------------------------------
- ARM9:0201E0FC
- ARM9:0201E0FC egg_species ; CODE XREF: readPkmBoxData+1FCj
- ARM9:0201E0FC ; readPkmBoxData+204j
- ARM9:0201E0FC ; readPkmBoxData+224j
- ARM9:0201E0FC B1 4C LDR R4, =0x28A
- ARM9:0201E0FE 5D E1 B ret
- ARM9:0201E100 ; ---------------------------------------------------------------------------
- ARM9:0201E100
- ARM9:0201E100 level ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E100 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E100 31 7E LDRB R1, [R6,#0x18] ; jumptable 0201DF44 case 158
- ARM9:0201E102 28 88 LDRH R0, [R5] ; species
- ARM9:0201E104 AA 68 LDR R2, [R5,#8] ; experience
- ARM9:0201E106 09 06 LSLS R1, R1, #0x18
- ARM9:0201E108 C9 0E LSRS R1, R1, #0x1B
- ARM9:0201E10A FF F7 2D FA BL getLvBasedOnExp
- ARM9:0201E10E 61 E0 B loc_201E1D4
- ARM9:0201E110 ; ---------------------------------------------------------------------------
- ARM9:0201E110
- ARM9:0201E110 species ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E110 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E110 B8 88 LDRH R0, [R7,#4] ; jumptable 0201DF44 case 5
- ARM9:0201E112 40 07 LSLS R0, R0, #0x1D ; this is the species check for getPkmStat. +4 is the "unused" short
- ARM9:0201E114 C0 0F LSRS R0, R0, #0x1F ; if bit 2(starting at 0) is not set, then the pokemon is not an egg. if it is, return species 28A(egg).
- ARM9:0201E116 00 D0 BEQ load_species
- ARM9:0201E118 F0 E7 B egg_species
- ARM9:0201E11A ; ---------------------------------------------------------------------------
- ARM9:0201E11A
- ARM9:0201E11A load_species ; CODE XREF: readPkmBoxData+222j
- ARM9:0201E11A 2C 88 LDRH R4, [R5]
- ARM9:0201E11C 4E E1 B ret
- ARM9:0201E11E ; ---------------------------------------------------------------------------
- ARM9:0201E11E
- ARM9:0201E11E item ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E11E ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E11E 6C 88 LDRH R4, [R5,#2] ; jumptable 0201DF44 case 6
- ARM9:0201E120 A9 48 LDR R0, =0x27E ; is reflecting glass, last item
- ARM9:0201E122 84 42 CMP R4, R0
- ARM9:0201E124 6F D9 BLS loc_201E206
- ARM9:0201E126 C2 E7 B default_ret_0 ; jumptable 0201DF44 cases 157,159-168,176,177
- ARM9:0201E128 ; ---------------------------------------------------------------------------
- ARM9:0201E128
- ARM9:0201E128 sid_tid ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E128 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E128 6C 68 LDR R4, [R5,#4] ; jumptable 0201DF44 case 7
- ARM9:0201E12A 47 E1 B ret
- ARM9:0201E12C ; ---------------------------------------------------------------------------
- ARM9:0201E12C
- ARM9:0201E12C exp ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E12C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E12C AC 68 LDR R4, [R5,#8] ; jumptable 0201DF44 case 8
- ARM9:0201E12E 45 E1 B ret
- ARM9:0201E130 ; ---------------------------------------------------------------------------
- ARM9:0201E130
- ARM9:0201E130 happiness ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E130 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E130 2C 7B LDRB R4, [R5,#0xC] ; jumptable 0201DF44 case 9
- ARM9:0201E132 43 E1 B ret
- ARM9:0201E134 ; ---------------------------------------------------------------------------
- ARM9:0201E134
- ARM9:0201E134 ability ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E134 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E134 6C 7B LDRB R4, [R5,#0xD] ; jumptable 0201DF44 case 10
- ARM9:0201E136 41 E1 B ret
- ARM9:0201E138 ; ---------------------------------------------------------------------------
- ARM9:0201E138
- ARM9:0201E138 markings ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E138 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E138 AC 7B LDRB R4, [R5,#0xE] ; jumptable 0201DF44 case 11
- ARM9:0201E13A 3F E1 B ret
- ARM9:0201E13C ; ---------------------------------------------------------------------------
- ARM9:0201E13C
- ARM9:0201E13C region ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E13C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E13C EC 7B LDRB R4, [R5,#0xF] ; jumptable 0201DF44 case 12
- ARM9:0201E13E 3D E1 B ret
- ARM9:0201E140 ; ---------------------------------------------------------------------------
- ARM9:0201E140
- ARM9:0201E140 HP_EV ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E140 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E140 2C 7C LDRB R4, [R5,#0x10] ; jumptable 0201DF44 case 13
- ARM9:0201E142 3B E1 B ret
- ARM9:0201E144 ; ---------------------------------------------------------------------------
- ARM9:0201E144
- ARM9:0201E144 ATK_EV ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E144 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E144 6C 7C LDRB R4, [R5,#0x11] ; jumptable 0201DF44 case 14
- ARM9:0201E146 39 E1 B ret
- ARM9:0201E148 ; ---------------------------------------------------------------------------
- ARM9:0201E148
- ARM9:0201E148 DEF_EV ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E148 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E148 AC 7C LDRB R4, [R5,#0x12] ; jumptable 0201DF44 case 15
- ARM9:0201E14A 37 E1 B ret
- ARM9:0201E14C ; ---------------------------------------------------------------------------
- ARM9:0201E14C
- ARM9:0201E14C SPE_EV ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E14C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E14C EC 7C LDRB R4, [R5,#0x13] ; jumptable 0201DF44 case 16
- ARM9:0201E14E 35 E1 B ret
- ARM9:0201E150 ; ---------------------------------------------------------------------------
- ARM9:0201E150
- ARM9:0201E150 SPA_EV ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E150 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E150 2C 7D LDRB R4, [R5,#0x14] ; jumptable 0201DF44 case 17
- ARM9:0201E152 33 E1 B ret
- ARM9:0201E154 ; ---------------------------------------------------------------------------
- ARM9:0201E154
- ARM9:0201E154 SPD_EV ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E154 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E154 6C 7D LDRB R4, [R5,#0x15] ; jumptable 0201DF44 case 18
- ARM9:0201E156 31 E1 B ret
- ARM9:0201E158 ; ---------------------------------------------------------------------------
- ARM9:0201E158
- ARM9:0201E158 cool_contest ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E158 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E158 AC 7D LDRB R4, [R5,#0x16] ; jumptable 0201DF44 case 19
- ARM9:0201E15A 2F E1 B ret
- ARM9:0201E15C ; ---------------------------------------------------------------------------
- ARM9:0201E15C
- ARM9:0201E15C beauty_contest ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E15C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E15C EC 7D LDRB R4, [R5,#0x17] ; jumptable 0201DF44 case 20
- ARM9:0201E15E 2D E1 B ret
- ARM9:0201E160 ; ---------------------------------------------------------------------------
- ARM9:0201E160
- ARM9:0201E160 cute_contest ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E160 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E160 2C 7E LDRB R4, [R5,#0x18] ; jumptable 0201DF44 case 21
- ARM9:0201E162 2B E1 B ret
- ARM9:0201E164 ; ---------------------------------------------------------------------------
- ARM9:0201E164
- ARM9:0201E164 smart_contest ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E164 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E164 6C 7E LDRB R4, [R5,#0x19] ; jumptable 0201DF44 case 22
- ARM9:0201E166 29 E1 B ret
- ARM9:0201E168 ; ---------------------------------------------------------------------------
- ARM9:0201E168
- ARM9:0201E168 tough_contest ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E168 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E168 AC 7E LDRB R4, [R5,#0x1A] ; jumptable 0201DF44 case 23
- ARM9:0201E16A 27 E1 B ret
- ARM9:0201E16C ; ---------------------------------------------------------------------------
- ARM9:0201E16C
- ARM9:0201E16C sheen_contest ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E16C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E16C EC 7E LDRB R4, [R5,#0x1B] ; jumptable 0201DF44 case 24
- ARM9:0201E16E 25 E1 B ret
- ARM9:0201E170 ; ---------------------------------------------------------------------------
- ARM9:0201E170
- ARM9:0201E170 sinnoh_ribbons ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E170 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E170 00 9A LDR R2, [SP,#0x28+field] ; jumptable 0201DF44 cases 25-53
- ARM9:0201E172 02 98 LDR R0, [SP,#0x28+num] ; num
- ARM9:0201E174 19 3A SUBS R2, #0x19 ; shift
- ARM9:0201E176 00 21 MOVS R1, #0
- ARM9:0201E178 00 92 STR R2, [SP,#0x28+field]
- ARM9:0201E17A 6F F0 6E EA BLX lshift64
- ARM9:0201E17E EB 69 LDR R3, [R5,#0x1C]
- ARM9:0201E180 00 22 MOVS R2, #0
- ARM9:0201E182 0A 40 ANDS R2, R1
- ARM9:0201E184 03 40 ANDS R3, R0
- ARM9:0201E186 00 21 MOVS R1, #0
- ARM9:0201E188 00 20 MOVS R0, #0
- ARM9:0201E18A 51 40 EORS R1, R2
- ARM9:0201E18C 58 40 EORS R0, R3
- ARM9:0201E18E 08 43 ORRS R0, R1
- ARM9:0201E190 01 D1 BNE loc_201E196
- ARM9:0201E192 00 20 MOVS R0, #0
- ARM9:0201E194 02 90 STR R0, [SP,#0x28+num]
- ARM9:0201E196
- ARM9:0201E196 loc_201E196 ; CODE XREF: readPkmBoxData+29Cj
- ARM9:0201E196 9E E7 B loc_201E0D6
- ARM9:0201E198 ; ---------------------------------------------------------------------------
- ARM9:0201E198
- ARM9:0201E198 moves ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E198 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E198 00 98 LDR R0, [SP,#0x28+field] ; jumptable 0201DF44 cases 54-57
- ARM9:0201E19A 36 38 SUBS R0, #0x36 ; '6'
- ARM9:0201E19C 00 90 STR R0, [SP,#0x28+field]
- ARM9:0201E19E 40 00 LSLS R0, R0, #1
- ARM9:0201E1A0 34 5A LDRH R4, [R6,R0]
- ARM9:0201E1A2 0B E1 B ret
- ARM9:0201E1A4 ; ---------------------------------------------------------------------------
- ARM9:0201E1A4
- ARM9:0201E1A4 move_cur_pp ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1A4 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1A4 00 98 LDR R0, [SP,#0x28+field] ; jumptable 0201DF44 cases 58-61
- ARM9:0201E1A6 3A 38 SUBS R0, #0x3A ; ':'
- ARM9:0201E1A8 00 90 STR R0, [SP,#0x28+field]
- ARM9:0201E1AA 30 18 ADDS R0, R6, R0
- ARM9:0201E1AC 04 7A LDRB R4, [R0,#8]
- ARM9:0201E1AE 05 E1 B ret
- ARM9:0201E1B0 ; ---------------------------------------------------------------------------
- ARM9:0201E1B0
- ARM9:0201E1B0 move_ppup_count ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1B0 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1B0 00 98 LDR R0, [SP,#0x28+field] ; jumptable 0201DF44 cases 62-65
- ARM9:0201E1B2 3E 38 SUBS R0, #0x3E ; '>'
- ARM9:0201E1B4 00 90 STR R0, [SP,#0x28+field]
- ARM9:0201E1B6 30 18 ADDS R0, R6, R0
- ARM9:0201E1B8 04 7B LDRB R4, [R0,#0xC]
- ARM9:0201E1BA FF E0 B ret
- ARM9:0201E1BC ; ---------------------------------------------------------------------------
- ARM9:0201E1BC
- ARM9:0201E1BC move_max_pp ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1BC ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1BC 00 98 LDR R0, [SP,#0x28+field] ; jumptable 0201DF44 cases 66-69
- ARM9:0201E1BE 42 38 SUBS R0, #0x42 ; 'B'
- ARM9:0201E1C0 00 90 STR R0, [SP,#0x28+field]
- ARM9:0201E1C2 40 00 LSLS R0, R0, #1
- ARM9:0201E1C4 30 5A LDRH R0, [R6,R0]
- ARM9:0201E1C6 00 28 CMP R0, #0
- ARM9:0201E1C8 1D D0 BEQ loc_201E206
- ARM9:0201E1CA 00 99 LDR R1, [SP,#0x28+field]
- ARM9:0201E1CC 71 18 ADDS R1, R6, R1
- ARM9:0201E1CE 09 7B LDRB R1, [R1,#0xC]
- ARM9:0201E1D0 03 F0 84 FA BL getMoveTotalPPWithPPUps
- ARM9:0201E1D4
- ARM9:0201E1D4 loc_201E1D4 ; CODE XREF: readPkmBoxData+21Aj
- ARM9:0201E1D4 ; readPkmBoxData+4B2j
- ARM9:0201E1D4 ; readPkmBoxData+4C4j
- ARM9:0201E1D4 04 1C MOVS R4, R0
- ARM9:0201E1D6 F1 E0 B ret
- ARM9:0201E1D8 ; ---------------------------------------------------------------------------
- ARM9:0201E1D8
- ARM9:0201E1D8 hp_iv ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1D8 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1D8 30 69 LDR R0, [R6,#0x10] ; jumptable 0201DF44 case 70
- ARM9:0201E1DA C0 06 LSLS R0, R0, #0x1B
- ARM9:0201E1DC
- ARM9:0201E1DC loc_201E1DC ; CODE XREF: readPkmBoxData+2F0j
- ARM9:0201E1DC ; readPkmBoxData+2F6j
- ARM9:0201E1DC ; readPkmBoxData+2FCj
- ARM9:0201E1DC ; readPkmBoxData+302j ...
- ARM9:0201E1DC C4 0E LSRS R4, R0, #0x1B
- ARM9:0201E1DE ED E0 B ret
- ARM9:0201E1E0 ; ---------------------------------------------------------------------------
- ARM9:0201E1E0
- ARM9:0201E1E0 atk_iv ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1E0 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1E0 30 69 LDR R0, [R6,#0x10] ; jumptable 0201DF44 case 71
- ARM9:0201E1E2 80 05 LSLS R0, R0, #0x16
- ARM9:0201E1E4 FA E7 B loc_201E1DC
- ARM9:0201E1E6 ; ---------------------------------------------------------------------------
- ARM9:0201E1E6
- ARM9:0201E1E6 def_iv ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1E6 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1E6 30 69 LDR R0, [R6,#0x10] ; jumptable 0201DF44 case 72
- ARM9:0201E1E8 40 04 LSLS R0, R0, #0x11
- ARM9:0201E1EA F7 E7 B loc_201E1DC
- ARM9:0201E1EC ; ---------------------------------------------------------------------------
- ARM9:0201E1EC
- ARM9:0201E1EC spe_iv ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1EC ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1EC 30 69 LDR R0, [R6,#0x10] ; jumptable 0201DF44 case 73
- ARM9:0201E1EE 00 03 LSLS R0, R0, #0xC
- ARM9:0201E1F0 F4 E7 B loc_201E1DC
- ARM9:0201E1F2 ; ---------------------------------------------------------------------------
- ARM9:0201E1F2
- ARM9:0201E1F2 spa_iv ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1F2 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1F2 30 69 LDR R0, [R6,#0x10] ; jumptable 0201DF44 case 74
- ARM9:0201E1F4 C0 01 LSLS R0, R0, #7
- ARM9:0201E1F6 F1 E7 B loc_201E1DC
- ARM9:0201E1F8 ; ---------------------------------------------------------------------------
- ARM9:0201E1F8
- ARM9:0201E1F8 spd_iv ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1F8 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1F8 30 69 LDR R0, [R6,#0x10] ; jumptable 0201DF44 case 75
- ARM9:0201E1FA 80 00 LSLS R0, R0, #2
- ARM9:0201E1FC EE E7 B loc_201E1DC
- ARM9:0201E1FE ; ---------------------------------------------------------------------------
- ARM9:0201E1FE
- ARM9:0201E1FE is_egg ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E1FE ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E1FE B8 88 LDRH R0, [R7,#4] ; jumptable 0201DF44 case 76
- ARM9:0201E200 40 07 LSLS R0, R0, #0x1D
- ARM9:0201E202 C4 0F LSRS R4, R0, #0x1F
- ARM9:0201E204 00 D0 BEQ loc_201E208
- ARM9:0201E206
- ARM9:0201E206 loc_201E206 ; CODE XREF: readPkmBoxData+230j
- ARM9:0201E206 ; readPkmBoxData+2D4j
- ARM9:0201E206 D9 E0 B ret
- ARM9:0201E208 ; ---------------------------------------------------------------------------
- ARM9:0201E208
- ARM9:0201E208 loc_201E208 ; CODE XREF: readPkmBoxData+1EEj
- ARM9:0201E208 ; readPkmBoxData+310j
- ARM9:0201E208 30 69 LDR R0, [R6,#0x10]
- ARM9:0201E20A 40 00 LSLS R0, R0, #1
- ARM9:0201E20C 55 E7 B loc_201E0BA
- ARM9:0201E20E ; ---------------------------------------------------------------------------
- ARM9:0201E20E
- ARM9:0201E20E is_nicknamed ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E20E ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E20E 30 69 LDR R0, [R6,#0x10] ; jumptable 0201DF44 case 117
- ARM9:0201E210 53 E7 B loc_201E0BA
- ARM9:0201E212 ; ---------------------------------------------------------------------------
- ARM9:0201E212
- ARM9:0201E212 hoenn_unova_ribbons ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E212 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E212 00 9A LDR R2, [SP,#0x28+field] ; jumptable 0201DF44 cases 77-108
- ARM9:0201E214 02 98 LDR R0, [SP,#0x28+num] ; num
- ARM9:0201E216 4D 3A SUBS R2, #0x4D ; 'M' ; shift
- ARM9:0201E218 00 21 MOVS R1, #0
- ARM9:0201E21A 00 92 STR R2, [SP,#0x28+field]
- ARM9:0201E21C 6F F0 1C EA BLX lshift64
- ARM9:0201E220 73 69 LDR R3, [R6,#0x14]
- ARM9:0201E222 00 22 MOVS R2, #0
- ARM9:0201E224 0A 40 ANDS R2, R1
- ARM9:0201E226 03 40 ANDS R3, R0
- ARM9:0201E228 00 21 MOVS R1, #0
- ARM9:0201E22A 00 20 MOVS R0, #0
- ARM9:0201E22C 51 40 EORS R1, R2
- ARM9:0201E22E 58 40 EORS R0, R3
- ARM9:0201E230 08 43 ORRS R0, R1
- ARM9:0201E232 01 D1 BNE loc_201E238
- ARM9:0201E234 00 20 MOVS R0, #0
- ARM9:0201E236 02 90 STR R0, [SP,#0x28+num]
- ARM9:0201E238
- ARM9:0201E238 loc_201E238 ; CODE XREF: readPkmBoxData+33Ej
- ARM9:0201E238 4D E7 B loc_201E0D6
- ARM9:0201E23A ; ---------------------------------------------------------------------------
- ARM9:0201E23A
- ARM9:0201E23A fateful_encounter ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E23A ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E23A 30 7E LDRB R0, [R6,#0x18] ; jumptable 0201DF44 case 109
- ARM9:0201E23C 3C E7 B loc_201E0B8 ; lowest bit is form
- ARM9:0201E23E ; ---------------------------------------------------------------------------
- ARM9:0201E23E
- ARM9:0201E23E gender ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E23E ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E23E 31 7E LDRB R1, [R6,#0x18] ; jumptable 0201DF44 case 110
- ARM9:0201E240 28 88 LDRH R0, [R5] ; species
- ARM9:0201E242 3A 68 LDR R2, [R7] ; pid
- ARM9:0201E244 09 06 LSLS R1, R1, #0x18
- ARM9:0201E246 C9 0E LSRS R1, R1, #0x1B
- ARM9:0201E248 FE F7 72 FE BL reduceGenderType
- ARM9:0201E24C 04 1C MOVS R4, R0
- ARM9:0201E24E 30 7E LDRB R0, [R6,#0x18]
- ARM9:0201E250 06 21 MOVS R1, #6
- ARM9:0201E252 88 43 BICS R0, R1
- ARM9:0201E254 21 06 LSLS R1, R4, #0x18
- ARM9:0201E256 09 0E LSRS R1, R1, #0x18
- ARM9:0201E258 89 07 LSLS R1, R1, #0x1E
- ARM9:0201E25A 49 0F LSRS R1, R1, #0x1D
- ARM9:0201E25C 08 43 ORRS R0, R1
- ARM9:0201E25E 30 76 STRB R0, [R6,#0x18]
- ARM9:0201E260 38 1C MOVS R0, R7
- ARM9:0201E262 08 30 ADDS R0, #8 ; pPkm
- ARM9:0201E264 80 21 MOVS R1, #0x80 ; 'Ç' ; length
- ARM9:0201E266 00 F0 75 FD BL generatePkmChecksum
- ARM9:0201E26A F8 80 STRH R0, [R7,#6]
- ARM9:0201E26C A6 E0 B ret
- ARM9:0201E26E ; ---------------------------------------------------------------------------
- ARM9:0201E26E
- ARM9:0201E26E get_form_bits ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E26E ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E26E 30 7E LDRB R0, [R6,#0x18] ; jumptable 0201DF44 case 111
- ARM9:0201E270 00 06 LSLS R0, R0, #0x18
- ARM9:0201E272 B3 E7 B loc_201E1DC
- ARM9:0201E274 ; ---------------------------------------------------------------------------
- ARM9:0201E274
- ARM9:0201E274 nature ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E274 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E274 74 7E LDRB R4, [R6,#0x19] ; jumptable 0201DF44 case 112
- ARM9:0201E276 A1 E0 B ret
- ARM9:0201E278 ; ---------------------------------------------------------------------------
- ARM9:0201E278
- ARM9:0201E278 has_dw_abil ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E278 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E278 70 8B LDRH R0, [R6,#0x1A] ; jumptable 0201DF44 case 113
- ARM9:0201E27A 1D E7 B loc_201E0B8
- ARM9:0201E27C ; ---------------------------------------------------------------------------
- ARM9:0201E27C
- ARM9:0201E27C N_poke ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E27C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E27C 70 8B LDRH R0, [R6,#0x1A] ; jumptable 0201DF44 case 178
- ARM9:0201E27E
- ARM9:0201E27E loc_201E27E ; CODE XREF: readPkmBoxData+1CCj
- ARM9:0201E27E 80 07 LSLS R0, R0, #0x1E
- ARM9:0201E280 1B E7 B loc_201E0BA
- ARM9:0201E282 ; ---------------------------------------------------------------------------
- ARM9:0201E282
- ARM9:0201E282 get_unused_word ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E282 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E282 F4 69 LDR R4, [R6,#0x1C] ; jumptable 0201DF44 case 114
- ARM9:0201E284 9A E0 B ret
- ARM9:0201E286 ; ---------------------------------------------------------------------------
- ARM9:0201E286
- ARM9:0201E286 poke_curr_name ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E286 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E286 B8 88 LDRH R0, [R7,#4] ; jumptable 0201DF44 case 115
- ARM9:0201E288 40 07 LSLS R0, R0, #0x1D ; check if species is egg
- ARM9:0201E28A C0 0F LSRS R0, R0, #0x1F
- ARM9:0201E28C 06 D0 BEQ loc_201E29C ; if species is not egg, jump past
- ARM9:0201E28E 4F 48 LDR R0, =currentMsgdata
- ARM9:0201E290 4F 49 LDR R1, =0x28B ; msgID
- ARM9:0201E292 00 68 LDR R0, [R0] ; msgdata
- ARM9:0201E294 01 9A LDR R2, [SP,#0x28+dest] ; subStrBuf
- ARM9:0201E296 2A F0 E5 FA BL getTextFillStrbuf
- ARM9:0201E29A 8F E0 B ret
- ARM9:0201E29C ; ---------------------------------------------------------------------------
- ARM9:0201E29C
- ARM9:0201E29C loc_201E29C ; CODE XREF: readPkmBoxData+398j
- ARM9:0201E29C 01 98 LDR R0, [SP,#0x28+dest] ; dest
- ARM9:0201E29E 03 99 LDR R1, [SP,#0x28+num+4] ; src
- ARM9:0201E2A0
- ARM9:0201E2A0 loc_201E2A0 ; CODE XREF: readPkmBoxData+410j
- ARM9:0201E2A0 2A F0 CE F9 BL wcharscpy
- ARM9:0201E2A4 8A E0 B ret
- ARM9:0201E2A6 ; ---------------------------------------------------------------------------
- ARM9:0201E2A6
- ARM9:0201E2A6 nickname ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E2A6 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E2A6 B8 88 LDRH R0, [R7,#4] ; jumptable 0201DF44 case 116
- ARM9:0201E2A8 40 07 LSLS R0, R0, #0x1D
- ARM9:0201E2AA C0 0F LSRS R0, R0, #0x1F ; check to see if the species is egg
- ARM9:0201E2AC 07 D0 BEQ loc_201E2BE
- ARM9:0201E2AE 47 48 LDR R0, =currentMsgdata
- ARM9:0201E2B0 47 49 LDR R1, =0x28B ; msgID
- ARM9:0201E2B2 00 68 LDR R0, [R0] ; pMsgdata
- ARM9:0201E2B4 01 9A LDR R2, [SP,#0x28+dest] ; strbuf
- ARM9:0201E2B6 0B 23 MOVS R3, #0xB ; length
- ARM9:0201E2B8 2A F0 B0 FB BL fillStrbufFromFile
- ARM9:0201E2BC 7E E0 B ret
- ARM9:0201E2BE ; ---------------------------------------------------------------------------
- ARM9:0201E2BE
- ARM9:0201E2BE loc_201E2BE ; CODE XREF: readPkmBoxData+3B8j
- ARM9:0201E2BE 03 98 LDR R0, [SP,#0x28+num+4] ; if it's not, skip to here
- ARM9:0201E2C0 01 99 LDR R1, [SP,#0x28+dest] ; pDest
- ARM9:0201E2C2 0B 22 MOVS R2, #0xB ; length
- ARM9:0201E2C4
- ARM9:0201E2C4 loc_201E2C4 ; CODE XREF: readPkmBoxData+416j
- ARM9:0201E2C4 06 F0 1C FC BL wcharsncpy
- ARM9:0201E2C8 78 E0 B ret
- ARM9:0201E2CA ; ---------------------------------------------------------------------------
- ARM9:0201E2CA
- ARM9:0201E2CA loc_201E2CA ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E2CA ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E2CA 03 98 LDR R0, [SP,#0x28+num+4] ; jumptable 0201DF44 case 118
- ARM9:0201E2CC 84 7D LDRB R4, [R0,#0x16]
- ARM9:0201E2CE 75 E0 B ret
- ARM9:0201E2D0 ; ---------------------------------------------------------------------------
- ARM9:0201E2D0
- ARM9:0201E2D0 origin_game ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E2D0 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E2D0 03 98 LDR R0, [SP,#0x28+num+4]
- ARM9:0201E2D2 C4 7D LDRB R4, [R0,#0x17]
- ARM9:0201E2D4 72 E0 B ret
- ARM9:0201E2D6 ; ---------------------------------------------------------------------------
- ARM9:0201E2D6
- ARM9:0201E2D6 sinnoh_contest_ribbons ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E2D6 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E2D6 00 9A LDR R2, [SP,#0x28+field] ; jumptable 0201DF44 cases 120-140
- ARM9:0201E2D8 02 98 LDR R0, [SP,#0x28+num]
- ARM9:0201E2DA 78 3A SUBS R2, #0x78 ; 'x' ; shift
- ARM9:0201E2DC 00 21 MOVS R1, #0
- ARM9:0201E2DE 00 92 STR R2, [SP,#0x28+field]
- ARM9:0201E2E0 6F F0 BA E9 BLX lshift64
- ARM9:0201E2E4 03 9A LDR R2, [SP,#0x28+num+4]
- ARM9:0201E2E6 94 69 LDR R4, [R2,#0x18]
- ARM9:0201E2E8 D2 69 LDR R2, [R2,#0x1C]
- ARM9:0201E2EA 23 1C MOVS R3, R4
- ARM9:0201E2EC 0A 40 ANDS R2, R1
- ARM9:0201E2EE 03 40 ANDS R3, R0
- ARM9:0201E2F0 00 21 MOVS R1, #0
- ARM9:0201E2F2 00 20 MOVS R0, #0
- ARM9:0201E2F4 51 40 EORS R1, R2
- ARM9:0201E2F6 58 40 EORS R0, R3
- ARM9:0201E2F8 08 43 ORRS R0, R1
- ARM9:0201E2FA 01 D1 BNE loc_201E300
- ARM9:0201E2FC 00 20 MOVS R0, #0
- ARM9:0201E2FE 02 90 STR R0, [SP,#0x28+num]
- ARM9:0201E300
- ARM9:0201E300 loc_201E300 ; CODE XREF: readPkmBoxData+406j
- ARM9:0201E300 E9 E6 B loc_201E0D6
- ARM9:0201E302 ; ---------------------------------------------------------------------------
- ARM9:0201E302
- ARM9:0201E302 ot_name_in ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E302 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E302 01 98 LDR R0, [SP,#0x28+dest] ; jumptable 0201DF44 case 141
- ARM9:0201E304 CC E7 B loc_201E2A0 ; src
- ARM9:0201E306 ; ---------------------------------------------------------------------------
- ARM9:0201E306
- ARM9:0201E306 ot_name_out ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E306 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E306 01 99 LDR R1, [SP,#0x28+dest] ; jumptable 0201DF44 case 142
- ARM9:0201E308 08 22 MOVS R2, #8
- ARM9:0201E30A DB E7 B loc_201E2C4
- ARM9:0201E30C ; ---------------------------------------------------------------------------
- ARM9:0201E30C
- ARM9:0201E30C met_year ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E30C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E30C 0C 7C LDRB R4, [R1,#0x10] ; jumptable 0201DF44 case 143
- ARM9:0201E30E 55 E0 B ret
- ARM9:0201E310 ; ---------------------------------------------------------------------------
- ARM9:0201E310
- ARM9:0201E310 met_month ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E310 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E310 4C 7C LDRB R4, [R1,#0x11] ; jumptable 0201DF44 case 144
- ARM9:0201E312 53 E0 B ret
- ARM9:0201E314 ; ---------------------------------------------------------------------------
- ARM9:0201E314
- ARM9:0201E314 met_day ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E314 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E314 8C 7C LDRB R4, [R1,#0x12] ; jumptable 0201DF44 case 145
- ARM9:0201E316 51 E0 B ret
- ARM9:0201E318 ; ---------------------------------------------------------------------------
- ARM9:0201E318
- ARM9:0201E318 egg_year ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E318 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E318 CC 7C LDRB R4, [R1,#0x13] ; jumptable 0201DF44 case 146
- ARM9:0201E31A 4F E0 B ret
- ARM9:0201E31C ; ---------------------------------------------------------------------------
- ARM9:0201E31C
- ARM9:0201E31C egg_month ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E31C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E31C 0C 7D LDRB R4, [R1,#0x14] ; jumptable 0201DF44 case 147
- ARM9:0201E31E 4D E0 B ret
- ARM9:0201E320 ; ---------------------------------------------------------------------------
- ARM9:0201E320
- ARM9:0201E320 egg_day ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E320 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E320 4C 7D LDRB R4, [R1,#0x15] ; jumptable 0201DF44 case 148
- ARM9:0201E322 4B E0 B ret
- ARM9:0201E324 ; ---------------------------------------------------------------------------
- ARM9:0201E324
- ARM9:0201E324 catch_location ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E324 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E324 CC 8A LDRH R4, [R1,#0x16] ; jumptable 0201DF44 case 149
- ARM9:0201E326 49 E0 B ret
- ARM9:0201E328 ; ---------------------------------------------------------------------------
- ARM9:0201E328
- ARM9:0201E328 loc_201E328 ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E328 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E328 0C 8B LDRH R4, [R1,#0x18] ; jumptable 0201DF44 case 150
- ARM9:0201E32A 47 E0 B ret
- ARM9:0201E32C ; ---------------------------------------------------------------------------
- ARM9:0201E32C
- ARM9:0201E32C pokerus ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E32C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E32C 8C 7E LDRB R4, [R1,#0x1A] ; jumptable 0201DF44 case 151
- ARM9:0201E32E 45 E0 B ret
- ARM9:0201E330 ; ---------------------------------------------------------------------------
- ARM9:0201E330
- ARM9:0201E330 poke_ball ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E330 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E330 CC 7E LDRB R4, [R1,#0x1B] ; jumptable 0201DF44 case 152
- ARM9:0201E332 43 E0 B ret
- ARM9:0201E334 ; ---------------------------------------------------------------------------
- ARM9:0201E334
- ARM9:0201E334 met_level ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E334 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E334 08 7F LDRB R0, [R1,#0x1C] ; jumptable 0201DF44 case 153
- ARM9:0201E336 40 06 LSLS R0, R0, #0x19
- ARM9:0201E338 44 0E LSRS R4, R0, #0x19
- ARM9:0201E33A 3F E0 B ret
- ARM9:0201E33C ; ---------------------------------------------------------------------------
- ARM9:0201E33C
- ARM9:0201E33C ot_gender ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E33C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E33C 08 7F LDRB R0, [R1,#0x1C] ; jumptable 0201DF44 case 154
- ARM9:0201E33E 00 06 LSLS R0, R0, #0x18
- ARM9:0201E340 BB E6 B loc_201E0BA
- ARM9:0201E342 ; ---------------------------------------------------------------------------
- ARM9:0201E342
- ARM9:0201E342 loc_201E342 ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E342 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E342 4C 7F LDRB R4, [R1,#0x1D] ; jumptable 0201DF44 case 155
- ARM9:0201E344 3A E0 B ret
- ARM9:0201E346 ; ---------------------------------------------------------------------------
- ARM9:0201E346
- ARM9:0201E346 loc_201E346 ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E346 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E346 8C 7F LDRB R4, [R1,#0x1E] ; jumptable 0201DF44 case 156
- ARM9:0201E348 38 E0 B ret
- ARM9:0201E34A ; ---------------------------------------------------------------------------
- ARM9:0201E34A
- ARM9:0201E34A getIVsAsInt_no_isegg_no_isnick ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E34A ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E34A 34 69 LDR R4, [R6,#0x10] ; jumptable 0201DF44 case 172
- ARM9:0201E34C A0 00 LSLS R0, R4, #2 ; trim off is_egg and is_nicknamed
- ARM9:0201E34E C0 0E LSRS R0, R0, #0x1B ; spd in r0
- ARM9:0201E350 45 06 LSLS R5, R0, #0x19 ; put spd back @ pos 25 in r5
- ARM9:0201E352 E0 01 LSLS R0, R4, #7 ; trim off is_egg, is_nicknamed, and spd iv
- ARM9:0201E354 C0 0E LSRS R0, R0, #0x1B ; spa in r0
- ARM9:0201E356 03 05 LSLS R3, R0, #0x14 ; put spa back @ pos 20 in r3
- ARM9:0201E358 20 03 LSLS R0, R4, #0xC ; trim off is_egg, is_nicknamed, spd iv, and spa iv
- ARM9:0201E35A C0 0E LSRS R0, R0, #0x1B ; spe in r0
- ARM9:0201E35C C2 03 LSLS R2, R0, #0xF ; put spe back @ pos 15 in r2
- ARM9:0201E35E 60 04 LSLS R0, R4, #0x11 ; trim off is_egg, is_nicknamed, spd iv, spa iv, and spe iv
- ARM9:0201E360 C0 0E LSRS R0, R0, #0x1B ; def in r0
- ARM9:0201E362 81 02 LSLS R1, R0, #0xA ; put def back @ pos 10 in r1
- ARM9:0201E364 E0 06 LSLS R0, R4, #0x1B ; trim off is_egg, is_nicknamed, spd iv, spa iv, spe iv, def iv, and atk iv
- ARM9:0201E366 A4 05 LSLS R4, R4, #0x16 ; trim off is_egg, is_nicknamed, spd iv, spa iv, spe iv, and def iv
- ARM9:0201E368 E4 0E LSRS R4, R4, #0x1B ; atk in r4
- ARM9:0201E36A C0 0E LSRS R0, R0, #0x1B ; hp in r0
- ARM9:0201E36C 64 01 LSLS R4, R4, #5 ; put atk back @ pos 5 in r4
- ARM9:0201E36E 20 43 ORRS R0, R4 ; put IVs back together
- ARM9:0201E370 08 43 ORRS R0, R1
- ARM9:0201E372 10 43 ORRS R0, R2
- ARM9:0201E374 18 43 ORRS R0, R3
- ARM9:0201E376 2C 1C MOVS R4, R5
- ARM9:0201E378 04 43 ORRS R4, R0
- ARM9:0201E37A 1F E0 B ret
- ARM9:0201E37C ; ---------------------------------------------------------------------------
- ARM9:0201E37C
- ARM9:0201E37C is_species_NOT_nidoFM ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E37C ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E37C 28 88 LDRH R0, [R5] ; jumptable 0201DF44 case 173
- ARM9:0201E37E 1D 28 CMP R0, #0x1D ; is species nidoF
- ARM9:0201E380 01 D0 BEQ loc_201E386
- ARM9:0201E382 20 28 CMP R0, #0x20 ; ' ' ; is species nidoM
- ARM9:0201E384 03 D1 BNE loc_201E38E
- ARM9:0201E386
- ARM9:0201E386 loc_201E386 ; CODE XREF: readPkmBoxData+48Cj
- ARM9:0201E386 30 69 LDR R0, [R6,#0x10]
- ARM9:0201E388 C0 0F LSRS R0, R0, #0x1F
- ARM9:0201E38A 00 D1 BNE loc_201E38E
- ARM9:0201E38C 8F E6 B default_ret_0 ; jumptable 0201DF44 cases 157,159-168,176,177
- ARM9:0201E38E ; ---------------------------------------------------------------------------
- ARM9:0201E38E
- ARM9:0201E38E loc_201E38E ; CODE XREF: readPkmBoxData+490j
- ARM9:0201E38E ; readPkmBoxData+496j
- ARM9:0201E38E 01 24 MOVS R4, #1
- ARM9:0201E390 14 E0 B ret
- ARM9:0201E392 ; ---------------------------------------------------------------------------
- ARM9:0201E392
- ARM9:0201E392 pkm_type ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E392 ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E392 28 88 LDRH R0, [R5] ; jumptable 0201DF44 cases 174,175
- ARM9:0201E394 0F 49 LDR R1, =0x1ED ; if arceus
- ARM9:0201E396 88 42 CMP R0, R1
- ARM9:0201E398 06 D1 BNE loc_201E3A8
- ARM9:0201E39A 69 7B LDRB R1, [R5,#0xD]
- ARM9:0201E39C 79 29 CMP R1, #0x79 ; 'y' ; if ability is multitype
- ARM9:0201E39E 03 D1 BNE loc_201E3A8
- ARM9:0201E3A0 68 88 LDRH R0, [R5,#2] ; get poke's item
- ARM9:0201E3A2 00 F0 67 FD BL getTypeForPlate
- ARM9:0201E3A6 15 E7 B loc_201E1D4
- ARM9:0201E3A8 ; ---------------------------------------------------------------------------
- ARM9:0201E3A8
- ARM9:0201E3A8 loc_201E3A8 ; CODE XREF: readPkmBoxData+4A4j
- ARM9:0201E3A8 ; readPkmBoxData+4AAj
- ARM9:0201E3A8 31 7E LDRB R1, [R6,#0x18]
- ARM9:0201E3AA 00 9A LDR R2, [SP,#0x28+field]
- ARM9:0201E3AC 09 06 LSLS R1, R1, #0x18
- ARM9:0201E3AE A8 3A SUBS R2, #0xA8 ; '¿' ; field
- ARM9:0201E3B0 C9 0E LSRS R1, R1, #0x1B
- ARM9:0201E3B2 00 92 STR R2, [SP,#0x28+field]
- ARM9:0201E3B4 00 F0 C8 FD BL getPersonalField
- ARM9:0201E3B8 0C E7 B loc_201E1D4
- ARM9:0201E3BA ; ---------------------------------------------------------------------------
- ARM9:0201E3BA
- ARM9:0201E3BA loc_201E3BA ; CODE XREF: readPkmBoxData+50j
- ARM9:0201E3BA ; DATA XREF: readPkmBoxData:off_201DF46o
- ARM9:0201E3BA CC 7F LDRB R4, [R1,#0x1F] ; jumptable 0201DF44 case 179
- ARM9:0201E3BC
- ARM9:0201E3BC ret ; CODE XREF: readPkmBoxData+1BCj
- ARM9:0201E3BC ; readPkmBoxData+1C0j
- ARM9:0201E3BC ; readPkmBoxData+1C8j
- ARM9:0201E3BC ; readPkmBoxData+1D6j ...
- ARM9:0201E3BC 20 1C MOVS R0, R4
- ARM9:0201E3BE 04 B0 ADD SP, SP, #0x10
- ARM9:0201E3C0 F8 BD POP {R3-R7,PC}
- ARM9:0201E3C0 ; End of function readPkmBoxData
- ARM9:0201E3C0
- ARM9:0201E3C0 ; ---------------------------------------------------------------------------
- ARM9:0201E3C2 C0 DCB 0xC0 ; +
- ARM9:0201E3C3 46 DCB 0x46 ; F
- ARM9:0201E3C4 8A 02 00 00 dword_201E3C4 DCD 0x28A ; DATA XREF: readPkmBoxData:egg_speciesr
- ARM9:0201E3C8 7E 02 00 00 dword_201E3C8 DCD 0x27E ; DATA XREF: readPkmBoxData+22Cr
- ARM9:0201E3CC 74 A4 09 02 off_201E3CC DCD currentMsgdata ; DATA XREF: readPkmBoxData+39Ar
- ARM9:0201E3CC ; readPkmBoxData+3BAr
- ARM9:0201E3D0 ; int msgID
- ARM9:0201E3D0 8B 02 00 00 msgID DCD 0x28B ; DATA XREF: readPkmBoxData+39Cr
- ARM9:0201E3D0 ; readPkmBoxData+3BCr
- ARM9:0201E3D4 ED 01 00 00 dword_201E3D4 DCD 0x1ED ; DATA XREF: readPkmBoxData+4A0r
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement