Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- RAM_ARM9:0201D724 ; =============== S U B R O U T I N E =======================================
- RAM_ARM9:0201D724
- RAM_ARM9:0201D724
- RAM_ARM9:0201D724 ; u32 __fastcall makePID(unsigned int idSet, int speciesValue, bool isGenderLocked, int generationType, int abilityLock, int shinyPrevent)
- RAM_ARM9:0201D724 makePID ; CODE XREF: sub_21531A0+192p
- RAM_ARM9:0201D724 ; sub_21531A0+1BAp ...
- RAM_ARM9:0201D724
- RAM_ARM9:0201D724 var_18 = -0x18
- RAM_ARM9:0201D724 abilityLock = 0
- RAM_ARM9:0201D724 shinyPrevent = 4
- RAM_ARM9:0201D724
- RAM_ARM9:0201D724 F8 B5 PUSH {R3-R7,LR}
- RAM_ARM9:0201D726 1D 1C MOVS R5, R3
- RAM_ARM9:0201D728 06 1C MOVS R6, R0
- RAM_ARM9:0201D72A 0C 1C MOVS R4, R1
- RAM_ARM9:0201D72C 00 92 STR R2, [SP,#0x18+var_18]
- RAM_ARM9:0201D72E 02 2D CMP R5, #2
- RAM_ARM9:0201D730 04 D1 BNE loc_201D73C
- RAM_ARM9:0201D732 00 20 MOVS R0, #0 ; max
- RAM_ARM9:0201D734 E8 F7 08 F8 BL mainRand64
- RAM_ARM9:0201D738 04 1C MOVS R4, R0
- RAM_ARM9:0201D73A 24 E0 B loc_201D786
- RAM_ARM9:0201D73C ; ---------------------------------------------------------------------------
- RAM_ARM9:0201D73C
- RAM_ARM9:0201D73C loc_201D73C ; CODE XREF: makePID+Cj
- RAM_ARM9:0201D73C 00 20 MOVS R0, #0 ; max
- RAM_ARM9:0201D73E E8 F7 03 F8 BL mainRand64
- RAM_ARM9:0201D742 07 1C MOVS R7, R0
- RAM_ARM9:0201D744 FF 21 MOVS R1, #0xFF
- RAM_ARM9:0201D746 8F 43 BICS R7, R1
- RAM_ARM9:0201D748 2A 06 LSLS R2, R5, #0x18
- RAM_ARM9:0201D74A 00 99 LDR R1, [SP,#0x18+var_18]
- RAM_ARM9:0201D74C 20 1C MOVS R0, R4
- RAM_ARM9:0201D74E 12 0E LSRS R2, R2, #0x18
- RAM_ARM9:0201D750 FF F7 80 FF BL sub_201D654
- RAM_ARM9:0201D754 04 1C MOVS R4, R0
- RAM_ARM9:0201D756 00 2D CMP R5, #0
- RAM_ARM9:0201D758 09 D1 BNE loc_201D76E
- RAM_ARM9:0201D75A 02 F0 71 FE BL isGenderless
- RAM_ARM9:0201D75E 00 28 CMP R0, #0
- RAM_ARM9:0201D760 05 D1 BNE loc_201D76E
- RAM_ARM9:0201D762 FE 20 MOVS R0, #0xFE ; '¦'
- RAM_ARM9:0201D764 00 1B SUBS R0, R0, R4 ; max
- RAM_ARM9:0201D766 E7 F7 EF FF BL mainRand64
- RAM_ARM9:0201D76A 24 18 ADDS R4, R4, R0
- RAM_ARM9:0201D76C 0A E0 B loc_201D784
- RAM_ARM9:0201D76E ; ---------------------------------------------------------------------------
- RAM_ARM9:0201D76E
- RAM_ARM9:0201D76E loc_201D76E ; CODE XREF: makePID+34j
- RAM_ARM9:0201D76E ; makePID+3Cj
- RAM_ARM9:0201D76E 01 2D CMP R5, #1
- RAM_ARM9:0201D770 08 D1 BNE loc_201D784
- RAM_ARM9:0201D772 20 1C MOVS R0, R4 ; gender_rate
- RAM_ARM9:0201D774 02 F0 64 FE BL isGenderless
- RAM_ARM9:0201D778 00 28 CMP R0, #0
- RAM_ARM9:0201D77A 03 D1 BNE loc_201D784
- RAM_ARM9:0201D77C 20 1C MOVS R0, R4 ; max
- RAM_ARM9:0201D77E E7 F7 E3 FF BL mainRand64
- RAM_ARM9:0201D782 44 1C ADDS R4, R0, #1
- RAM_ARM9:0201D784
- RAM_ARM9:0201D784 loc_201D784 ; CODE XREF: makePID+48j
- RAM_ARM9:0201D784 ; makePID+4Cj ...
- RAM_ARM9:0201D784 3C 43 ORRS R4, R7
- RAM_ARM9:0201D786
- RAM_ARM9:0201D786 loc_201D786 ; CODE XREF: makePID+16j
- RAM_ARM9:0201D786 07 98 LDR R0, [SP,#0x18+shinyPrevent]
- RAM_ARM9:0201D788 00 28 CMP R0, #0
- RAM_ARM9:0201D78A 19 D0 BEQ loc_201D7C0
- RAM_ARM9:0201D78C 01 28 CMP R0, #1
- RAM_ARM9:0201D78E 02 D0 BEQ loc_201D796
- RAM_ARM9:0201D790 02 28 CMP R0, #2
- RAM_ARM9:0201D792 1E D0 BEQ loc_201D7D2
- RAM_ARM9:0201D794 26 E0 B loc_201D7E4
- RAM_ARM9:0201D796 ; ---------------------------------------------------------------------------
- RAM_ARM9:0201D796
- RAM_ARM9:0201D796 loc_201D796 ; CODE XREF: makePID+6Aj
- RAM_ARM9:0201D796 14 49 LDR R1, =0xFFFF0000
- RAM_ARM9:0201D798 20 06 LSLS R0, R4, #0x18
- RAM_ARM9:0201D79A 31 40 ANDS R1, R6
- RAM_ARM9:0201D79C 0A 0C LSRS R2, R1, #0x10
- RAM_ARM9:0201D79E 31 04 LSLS R1, R6, #0x10
- RAM_ARM9:0201D7A0 09 0C LSRS R1, R1, #0x10
- RAM_ARM9:0201D7A2 00 0E LSRS R0, R0, #0x18
- RAM_ARM9:0201D7A4 51 40 EORS R1, R2
- RAM_ARM9:0201D7A6 41 40 EORS R1, R0
- RAM_ARM9:0201D7A8 04 1C MOVS R4, R0
- RAM_ARM9:0201D7AA 09 04 LSLS R1, R1, #0x10
- RAM_ARM9:0201D7AC 0C 43 ORRS R4, R1
- RAM_ARM9:0201D7AE 01 20 MOVS R0, #1
- RAM_ARM9:0201D7B0 06 99 LDR R1, [SP,#0x18+abilityLock]
- RAM_ARM9:0201D7B2 00 04 LSLS R0, R0, #0x10
- RAM_ARM9:0201D7B4 22 1C MOVS R2, R4
- RAM_ARM9:0201D7B6 02 40 ANDS R2, R0
- RAM_ARM9:0201D7B8 09 04 LSLS R1, R1, #0x10
- RAM_ARM9:0201D7BA 8A 42 CMP R2, R1
- RAM_ARM9:0201D7BC 12 D0 BEQ loc_201D7E4
- RAM_ARM9:0201D7BE 10 E0 B loc_201D7E2
- RAM_ARM9:0201D7C0 ; ---------------------------------------------------------------------------
- RAM_ARM9:0201D7C0
- RAM_ARM9:0201D7C0 loc_201D7C0 ; CODE XREF: makePID+66j
- RAM_ARM9:0201D7C0 30 1C MOVS R0, R6 ; idSet
- RAM_ARM9:0201D7C2 21 1C MOVS R1, R4 ; pid
- RAM_ARM9:0201D7C4 FF F7 1E FB BL isShiny
- RAM_ARM9:0201D7C8 01 28 CMP R0, #1
- RAM_ARM9:0201D7CA 02 D1 BNE loc_201D7D2
- RAM_ARM9:0201D7CC 01 20 00 07 MOVS R0, 0x10000000
- RAM_ARM9:0201D7D0 44 40 EORS R4, R0
- RAM_ARM9:0201D7D2
- RAM_ARM9:0201D7D2 loc_201D7D2 ; CODE XREF: makePID+6Ej
- RAM_ARM9:0201D7D2 ; makePID+A6j
- RAM_ARM9:0201D7D2 01 20 MOVS R0, #1
- RAM_ARM9:0201D7D4 06 99 LDR R1, [SP,#0x18+abilityLock]
- RAM_ARM9:0201D7D6 00 04 LSLS R0, R0, #0x10
- RAM_ARM9:0201D7D8 22 1C MOVS R2, R4
- RAM_ARM9:0201D7DA 02 40 ANDS R2, R0
- RAM_ARM9:0201D7DC 09 04 LSLS R1, R1, #0x10
- RAM_ARM9:0201D7DE 8A 42 CMP R2, R1
- RAM_ARM9:0201D7E0 00 D0 BEQ loc_201D7E4
- RAM_ARM9:0201D7E2
- RAM_ARM9:0201D7E2 loc_201D7E2 ; CODE XREF: makePID+9Aj
- RAM_ARM9:0201D7E2 44 40 EORS R4, R0
- RAM_ARM9:0201D7E4
- RAM_ARM9:0201D7E4 loc_201D7E4 ; CODE XREF: makePID+70j
- RAM_ARM9:0201D7E4 ; makePID+98j ...
- RAM_ARM9:0201D7E4 20 1C MOVS R0, R4
- RAM_ARM9:0201D7E6 F8 BD POP {R3-R7,PC}
- RAM_ARM9:0201D7E6 ; End of function makePID
- RAM_ARM9:0201D7E6
- RAM_ARM9:0201D7E6 ; ---------------------------------------------------------------------------
- RAM_ARM9:0201D7E8 00 00 FF FF dword_201D7E8 DCD 0xFFFF0000 ; DATA XREF: makePID:loc_201D796r
Advertisement