Merge pull request #8 from AnonymousRandomPerson/main

Decomped EntityIsValid dupes
This commit is contained in:
AnonymousRandomPerson
2023-08-28 00:01:03 -04:00
committed by GitHub
224 changed files with 135051 additions and 130898 deletions

View File

@@ -1,223 +1,75 @@
#pragma once
.public sub_0201C000
.public GetMonsterGenderVeneer
.public sub_0202F918
.public ov10_022BF45C
.public ov10_022C1DE0
.public sub_02006BFC
.public ov29_02339CE8
.public ov29_022DE15C
.public ov29_023372A4
.public sub_02009454
.public HasDropeyeStatus
.public sub_020483D8
.public IsMoneyAllowed
.public sub_020091CC
.public NeedsItemToSpawn
.public ov29_022F9408
.public ov29_022DE5D8
.public HandleSir0Translation
.public GetSpriteFileSize
.public RandIntSafe
.public ov29_0234914C
.public sub_020063F4
.public sub_020094C4
.public ov10_022C22A0
.public MemFree
.public LogMessageByIdWithPopupCheckUser
.public ov29_02335774
.public GetSleepAnimationId
.public ov29_022EAE14
.public ov10_022BFD20
.public sub_0201D034
.public sub_02006564
.public ov29_0234C738
.public GetNbPrecedingFloors
.public GetSecondFormIfValid
.public sub_0200B3D4
.public HasHeldItem
.public ov29_023049A8
.public ov29_022DE854
.public IsDestinationFloorWithFixedRoom
.public sub_020483B8
.public ov29_022DC728
.public sub_0204AE80
.public ov29_023386D8
.public ov29_02336204
.public ov29_02339148
.public ov29_022DC778
.public ov29_02336F4C
.public ov10_022BDC68
.public DungeonFloorToGroupFloor
.public sub_0204AF58
.public sub_0200B330
.public sub_0204AEA0
.public SetMoneyCarried
.public ov29_022FDDC0
.public EntityIsValid__022E0354
.public ov29_022DC694
.public ov29_022EACE4
.public ov29_022DDEF8
.public ov29_022DE134
.public ov29_02335804
.public sub_0201CF90
.public ov10_022BF9CC
.public GetMonsterLevelFromSpawnEntry
.public Memset32
.public CalcSpeedStageWrapper
.public ov29_0233A0E8
.public ov29_022DC684
.public ov29_02338AC4
.public ov29_0234F25C
.public IsExperienceLocked
.public ov29_0234B4F4
.public sub_02009194
.public ov29_02300164
.public SetMonsterId
.public GetNbFloorsPlusOne
.public IsJirachiChallengeFloor
.public MonsterIsType
.public sub_02027AF0
.public ov29_022ED0F4
.public ov10_022BEC94
.public IsDojoDungeon
.public IsBlinded
.public HandleFaint
.public DungeonRngSetPrimary
.public ov29_0233A248
.public ov29_02300818
.public ov29_022ED800
.public ov29_022DC738
.public ov29_02343E20
.public GetItemCategoryVeneer
.public ov29_0230175C
.public sub_0202F8C4
.public ov29_023457C8
.public CanMonsterSpawn
.public TeamMemberHasEnabledIqSkill
.public ov29_02303F18
.public ov29_0233A290
.public ov29_02344BA8
.public ov29_022F42D8
.public Strcpy
.public RemoveAllItems
.public ov29_0230D618
.public DivideInt
.public GetSpriteIndex__022F7388
.public ov29_02304954
.public LogMessageByIdWithPopup
.public MemAlloc
.public ov29_022DC6DC
.public ov29_0234B4E0
.public DungeonRngSetSecondary
.public GetNbRecruited
.public ov10_022C1E50
.public GetBgRegionArea
.public ov29_022ED82C
.public ov29_02339A24
.public Memcpy32
.public ov29_022DC6E8
.public InitPreprocessorArgs
.public ov10_022C1E80
.public sub_020091B0
.public GetForcedLossReason
.public sub_0201E380
.public ov29_022EDF7C
.public sub_0201F598
.public ov29_022DC76C
.public ov29_022DC77C
.public ov29_022ED9D0
.public LoadFileFromRom__02008C3C
.public sub_0201BFF0
.public ov29_0234C70C
.public AnimationHasMoreFrames
.public ov29_022DEA10
.public ov29_0231B3FC
.public ov29_0230027C
.public IsItemForSpecialSpawnInBag
.public ov10_022BF2B4
.public ov29_0234C668
.public IsDestinationFloorWithMonster
.public sub_0201C0CC
.public ov10_022C21D8
.public ov29_0233A1BC
.public sub_02026214
.public sub_0201BAC8
.public GetReleasedStylus
.public ov10_022BEFD8
.public GetScenarioBalance__0204CB94
.public ov29_0234B1A4
.public GetKecleonIdToSpawnByFloor
.public IsFloorOver
.public sub_0201B9F8
.public GetSpriteSize
.public ov29_02335F40
.public Abs
.public sub_020090A0
.public ov29_0234B854
.public ov29_022DE11C
.public LoadWteFromFileDirectory
.public ov29_0234B0B4
.public ov29_02335760
.public GetTile
.public ov10_022C2278
.public ov29_0233711C
.public CanSeeInvisibleMonsters
.public ov10_022BF274
.public GetMonsterIdFromSpawnEntry
.public ov29_022DE5F0
.public GetHeldButtons
.public ov10_022BDE50
.public sub_0204AEC0
.public ov10_022BFB6C
.public ov29_0234B034
.public sub_0201B43C
.public ov29_0234F290
.public GetEffectAnimationField0x19
.public ov29_0230473C
.public ov29_02339FF4
.public GetTileSafe
.public ov29_02339D7C
.public SetMinimapDataE447
.public DungeonGoesUp
.public ov29_02335A10
.public ov29_022DE638
.public DisplayMessage2
.public ov29_023356C0
.public SetMinimapDataE448
.public ov29_023391EC
.public ov29_022DEA1C
.public ov29_022F7068
.public ov10_022BF8E8
.public GetMaxPpWrapper
.public ov29_0234F2B8
.public ov29_02304830
.public ov29_0234F278
.public ov29_0230040C
.public ov29_023361D4
.public ov29_02349378
.public StringFromMessageId
.public ov29_022DD7D8
.public ov29_022DE9F8
.public IsCurrentMissionType
.public FloorNumberIsEven
.public ov29_022FB5EC
.public UnloadWte
.public AbilityIsActive2
.public AllocAndLoadFileInPack
.public sub_02008F3C
.public ov29_022DE954
.public UnloadFile
.public ov29_023046E8
.public MemZero
.public sub_02051E20
.public ov29_022DD8B4
.public sub_02048400
.public ov10_022BEC08
.public ov29_02339138
.public GetPressedButtons
.public sub_02048384
.public ov29_022EACCC
.public ov29_022DC6D0
.public ov29_023047DC
.public CalcSpeedStageWrapper
.public DisplayMessage2
.public DungeonGoesUp
.public EntityIsValid__022E0354
.public EntityIsValid__022E1A1C
.public GetBgRegionArea
.public GetForcedLossReason
.public GetHeldButtons
.public GetLeader
.public GetMaxItemsAllowed
.public GetMaxPpWrapper
.public GetPressedButtons
.public GetReleasedStylus
.public GetScenarioBalance__0204CB94
.public GetTileSafe
.public HandleFaint
.public HandleSir0Translation
.public IsExperienceLocked
.public IsFloorOver
.public IsJirachiChallengeFloor
.public IsMoneyAllowed
.public LoadWteFromFileDirectory
.public Memcpy32
.public Memset32
.public RemoveAllItems
.public SetMinimapDataE447
.public SetMoneyCarried
.public UnloadFile
.public UnloadWte
.public ov29_022DD7D8
.public ov29_022DE15C
.public ov29_022DE854
.public ov29_022E34B0
.public ov29_022E38E0
.public ov29_022E3A40
.public ov29_022E68BC
.public ov29_022E8270
.public ov29_022E8778
.public ov29_022E8BFC
.public ov29_022E9FD0
.public ov29_022EA370
.public ov29_022ED9D0
.public ov29_022FDDC0
.public ov29_02303F18
.public ov29_023046E8
.public ov29_023356C0
.public ov29_02335760
.public ov29_02335774
.public ov29_02335804
.public ov29_02336204
.public ov29_0233A248
.public ov29_023457C8
.public ov29_0234B034
.public ov29_0234B0B4
.public ov29_0234B1A4
.public ov29_0234C668
.public ov29_0234C738
.public sub_020063F4
.public sub_02006564
.public sub_02006BFC
.public sub_02008F3C
.public sub_020090A0
.public sub_02009194
.public sub_020091B0
.public sub_020091CC
.public sub_02009454
.public sub_020094C4
.public sub_0201B43C
.public sub_0201BFF0
.public sub_0201C0CC
.public sub_0201E380
.public sub_0201F598
.public sub_0204AE80

View File

@@ -0,0 +1,42 @@
#pragma once
.public Abs
.public CanSeeInvisibleMonsters
.public EntityIsValid__022E1A1C
.public EntityIsValid__022E32E8
.public GetSleepAnimationId
.public GetSpriteIndex__022F7388
.public GetSpriteSize
.public GetTileSafe
.public HasDropeyeStatus
.public IsBlinded
.public IsPositionInSight
.public ItemIsActive__022E330C
.public Strcpy
.public StringFromMessageId
.public TeamMemberHasEnabledIqSkill
.public ov29_022DE954
.public ov29_022DE9F8
.public ov29_022DEA10
.public ov29_022DEA1C
.public ov29_022E34C8
.public ov29_022E3534
.public ov29_022E3A58
.public ov29_022E90CC
.public ov29_022ED82C
.public ov29_022EDF7C
.public ov29_022F9408
.public ov29_02300164
.public ov29_0230040C
.public ov29_023047DC
.public ov29_02304830
.public ov29_02304954
.public ov29_02336F4C
.public ov29_0233711C
.public ov29_023372A4
.public ov29_023386D8
.public ov29_023391EC
.public ov29_02339CE8
.public ov29_02344BA8
.public ov29_0234B034
.public sub_02009194
.public sub_020091B0

View File

@@ -0,0 +1,22 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public AnimationHasMoreFrames
.public EntityIsValid__022E37B8
.public GetEffectAnimationField0x19
.public GetTileSafe
.public HasHeldItem
.public LogMessageByIdWithPopupCheckUser
.public ov10_022BF274
.public ov10_022BF2B4
.public ov10_022BF8E8
.public ov10_022BFD20
.public ov29_022E2C6C
.public ov29_022E2EC4
.public ov29_022E38E0
.public ov29_022E5ED0
.public ov29_02335A10
.public ov29_02336F4C
.public ov29_02339CE8
.public sub_0201C000
.public sub_0201CF90

View File

@@ -0,0 +1,131 @@
#pragma once
.public Abs
.public AdvanceFrame
.public AnimationHasMoreFrames
.public CanMonsterSpawn
.public DungeonFloorToGroupFloor
.public DungeonGoesUp
.public DungeonRandInt
.public DungeonRngSetPrimary
.public DungeonRngSetSecondary
.public EntityIsValid__022E37B8
.public EntityIsValid__022E95F4
.public FloorNumberIsEven
.public GetEffectAnimationField0x19
.public GetFloorType
.public GetItemCategoryVeneer
.public GetKecleonIdToSpawnByFloor
.public GetMonsterGenderVeneer
.public GetMonsterIdFromSpawnEntry
.public GetMonsterLevelFromSpawnEntry
.public GetNbFloorsPlusOne
.public GetNbPrecedingFloors
.public GetNbRecruited
.public GetSecondFormIfValid
.public GetSleepAnimationId
.public GetSpriteFileSize
.public GetSpriteIndex__022F7388
.public GetSpriteSize
.public GetTile
.public HandleSir0Translation
.public InitPreprocessorArgs
.public IsCurrentMissionType
.public IsDestinationFloorWithFixedRoom
.public IsDestinationFloorWithMonster
.public IsDojoDungeon
.public IsItemForSpecialSpawnInBag
.public LoadFileFromRom__02008C3C
.public LogMessageByIdWithPopup
.public MemAlloc
.public MemFree
.public MemZero
.public MonsterIsType
.public NeedsItemToSpawn
.public RandIntSafe
.public SetMinimapDataE447
.public SetMinimapDataE448
.public SetMonsterId
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public UnloadFile
.public ov10_022BDC68
.public ov10_022BDE50
.public ov10_022BEC08
.public ov10_022BEC94
.public ov10_022BEFD8
.public ov10_022BF274
.public ov10_022BF2B4
.public ov10_022BF45C
.public ov10_022BF9CC
.public ov10_022BFB6C
.public ov10_022C1DE0
.public ov10_022C1E50
.public ov10_022C1E80
.public ov10_022C21D8
.public ov10_022C2278
.public ov10_022C22A0
.public ov29_022DC684
.public ov29_022DC694
.public ov29_022DC6D0
.public ov29_022DC6DC
.public ov29_022DC6E8
.public ov29_022DC728
.public ov29_022DC738
.public ov29_022DC76C
.public ov29_022DC778
.public ov29_022DC77C
.public ov29_022DE5D8
.public ov29_022DE5F0
.public ov29_022E0864
.public ov29_022E0880
.public ov29_022E272C
.public ov29_022E2CA0
.public ov29_022E333C
.public ov29_022E35E4
.public ov29_022EA370
.public ov29_022EA718
.public ov29_022EACCC
.public ov29_022EACE4
.public ov29_022EAE14
.public ov29_022ED0F4
.public ov29_022F42D8
.public ov29_022F7068
.public ov29_022FB5EC
.public ov29_0230027C
.public ov29_023049A8
.public ov29_0230D618
.public ov29_0231B3FC
.public ov29_023361D4
.public ov29_02339138
.public ov29_02339148
.public ov29_02339CE8
.public ov29_02339D7C
.public ov29_0233A0E8
.public ov29_0233A1BC
.public ov29_02343E20
.public ov29_0234914C
.public ov29_02349378
.public ov29_0234B1A4
.public ov29_0234B4E0
.public ov29_0234C668
.public ov29_0234C70C
.public ov29_0234F25C
.public ov29_0234F278
.public ov29_0234F290
.public ov29_0234F2B8
.public sub_0200B330
.public sub_0200B3D4
.public sub_0201B9F8
.public sub_0201C000
.public sub_0201CF90
.public sub_0201D034
.public sub_02026214
.public sub_02027AF0
.public sub_0202F8C4
.public sub_0202F918
.public sub_02048384
.public sub_020483B8
.public sub_020483D8
.public sub_02048400
.public sub_0204AEA0
.public sub_0204AF58

View File

@@ -0,0 +1,37 @@
#pragma once
.public Abs
.public DivideInt
.public EntityIsValid__022E95F4
.public GetLeader
.public GetTile
.public MemAlloc
.public MemFree
.public ov29_022DD8B4
.public ov29_022DDEF8
.public ov29_022DE11C
.public ov29_022DE134
.public ov29_022DE638
.public ov29_022E1854
.public ov29_022E2EC4
.public ov29_022E335C
.public ov29_022E886C
.public ov29_022E8C10
.public ov29_022ED800
.public ov29_02300818
.public ov29_0230175C
.public ov29_0230473C
.public ov29_02335A10
.public ov29_02335F40
.public ov29_02338AC4
.public ov29_02339A24
.public ov29_02339CE8
.public ov29_02339FF4
.public ov29_0233A248
.public ov29_0233A290
.public ov29_0234B1A4
.public ov29_0234B4F4
.public ov29_0234B854
.public sub_0201BAC8
.public sub_0204AEA0
.public sub_0204AEC0
.public sub_02051E20

View File

@@ -1,873 +1,69 @@
#pragma once
.public ov29_022E9A9C
.public sub_02026268
.public ov29_022E4C84
.public GetMoveType
.public SetBothScreensWindowsColor
.public ov10_022BF7D4
.public sub_02008F88
.public ov10_022BFD8C
.public GetBaseHp
.public GetShadowSize
.public ov29_022E47C0
.public ov29_022E3FCC
.public AddMoneyCarried
.public sub_0200FBE0
.public GetMonsterIdFromSpawnEntry
.public sub_0204AED0
.public sub_02026214
.public sub_02003990
.public sub_020038D8
.public ov29_022E68D8
.public sub_02055D7C
.public FixedPoint64ToInt
.public GetOutlawMinionLevel
.public ov29_022E647C
.public ov29_022E5BD8
.public ov29_022E3590
.public GetFileLengthInPackWithPackNb
.public Memcpy32
.public sub_020038E8
.public sub_0200CC38
.public sub_02048360
.public ov29_022E3580
.public ov29_022E44CC
.public GetSpriteFileSize
.public ov29_022E576C
.public ov30_023838E4
.public IsOneHitKoMove
.public GetNameString
.public ov29_022E3570
.public sub_0202F23C
.public sub_0202ABB0
.public GetNameRaw
.public GetEvolutions
.public sub_0204E114
.public sub_02027B1C
.public ov31_02387660
.public sub_02056698
.public sub_0201551C
.public ClearItem
.public FormatMoveStringMore
.public ov29_022E40B8
.public GetMonsterGenderVeneer
.public DungeonAlloc
.public ov10_022BF01C
.public sub_02058EB0
.public sub_02056264
.public Rand16Bit
.public GendersEqualNotGenderless
.public ov29_022EA370
.public ov29_022E6214
.public ov29_022E5650
.public ov10_022BF764
.public ov29_022E60E4
.public sub_02053250
.public sub_02001AB0
.public GetBgRegionArea
.public IsItemInBag
.public sub_0201405C
.public ov29_022E1608
.public sub_02030214
.public sub_02050FF8
.public ov29_022E4B3C
.public sub_0202AB80
.public ov29_022E9A6C
.public ov29_022EA718
.public DivideFixedPoint64
.public IsUnown
.public sub_02054FB8
.public sub_02055CCC
.public sub_0200FAEC
.public ov29_022E0C64
.public ov10_022BFD20
.public ov29_022DE300
.public GetMoveAnimation
.public AddItemToBagNoHeld
.public ov29_022E3F78
.public GetSize
.public sub_0201C0CC
.public IqSkillFlagTest
.public ZInit8
.public DungeonGoesUp
.public ov29_022E4108
.public sub_01FFBDF4
.public sub_02017A00
.public ov29_022DE0EC
.public ov29_022E46D0
.public JoinedAtRangeCheck
.public GetExp
.public GetItemSpriteId
.public sub_02015588
.public sub_020282F4
.public sub_0204AEE0
.public ov29_022E7C60
.public sub_02051DD0
.public ov29_022E6D68
.public GetOutlawLeaderLevel
.public GetMoveBasePp
.public GetInfoMoveCheckId
.public ov30_02382C68
.public sub_0204AEB0
.public IsExpEnabledInDungeon
.public sub_0202AAE8
.public sub_0202A5CC
.public EnableIqSkill
.public LoadFileFromRom__02008C3C
.public IsEdible
.public sub_020348E4
.public sub_020017EC
.public ov01_0233103C
.public sub_0203083C
.public ov29_022E28D4
.public Strncpy
.public sub_02017BEC
.public ov10_022BED90
.public GetBaseForm
.public CanTargetEntity
.public sub_02048134
.public GetExplorerMazeMonster
.public ov29_022E2A38
.public ov29_022E4AF0
.public SetPortraitUnknownAttr
.public ov29_022E42E0
.public GetDungeonTipShown
.public SetItemAcquired
.public ov29_022E4C00
.public ov29_022E57D4
.public ov29_022E406C
.public ov29_022E4CD4
.public GetMoveCritChance
.public sub_0201BF4C
.public ov29_022E5068
.public IsHM
.public GetTreasureBoxChances
.public ov29_022E0DF0
.public GetKeyboardStringResult
.public RemoveEmptyItemsInBag
.public sub_02054FEC
.public sub_020018A4
.public ov29_022DD828
.public SetAdventureLogDungeonFloor
.public ov29_022DDFFC
.public ov29_022E9618
.public AllocAndLoadFileInPack
.public IsMonsterIdInNormalRange__02056294
.public ov29_022DDD50
.public sub_02017ACC
.public sub_0201E080
.public ov29_022E46D4
.public LoadWtuFromBin
.public ov29_022E41DC
.public ov29_022E476C
.public sub_0200B3D4
.public sub_0202F954
.public ov29_022DE608
.public ov31_0238704C
.public DungeonRandInt
.public IsDBoxActive
.public ov30_023851C0
.public ov31_0238878C
.public ov29_022E3ED0
.public ov29_022E5478
.public RetrieveFromItemList1
.public IsAffectedByTaunt
.public UpdateMapSurveyorFlag
.public GetAcceptedMission
.public sub_0201BE28
.public CanMonsterSpawn
.public sub_02057CE8
.public ov29_022E4668
.public ov29_022E0B60
.public GetMovesetLevelUpPtr
.public ov29_022E43D8
.public IsRecoilMove
.public sub_0201116C
.public IsCopyingMove
.public sub_0203909C
.public sub_0202F334
.public sub_02051DFC
.public RunDungeon
.public ov30_023829CC
.public ov29_022DE0CC
.public FreeDBox
.public UnloadOverlay
.public IsCherrim
.public ov29_022E6510
.public sub_02028E40
.public sub_02006B70
.public sub_0204833C
.public ov29_022E45B8
.public ov29_022E2418
.public ov29_022E6644
.public ov29_022E2978
.public ov29_022E4AA4
.public ov29_022E0F14
.public ov29_022E8104
.public InitPreprocessorArgs
.public ov29_022E4290
.public sub_02052E2C
.public ov29_022E0CFC
.public DebugPrint0__0200C1FC
.public ov10_022BFD58
.public sub_02006EC4
.public IsNotMoney
.public ov29_022DDFF0
.public TestItemAiFlag
.public CanThrowItems
.public Strcat
.public HasPlayedOldGame
.public sub_0204AF20
.public sub_020149C0
.public sub_0205B77C
.public sub_0204AF30
.public SubFixedPoint
.public ov31_02388714
.public ov29_022E0DD8
.public AnimationHasMoreFrames
.public ov29_022E3DD8
.public ov29_022E1A40
.public ov29_022E3E74
.public sub_02009120
.public ov29_022E2314
.public sub_02039218
.public ov29_022E47C8
.public ov31_023860A4
.public sub_0205BAB0
.public DungeonZInit
.public FixedPoint64IsZero
.public Arm9LoadUnkFieldNa0x2029EC8
.public ov29_022E2470
.public sub_02053904
.public sub_0200F9B4
.public ov29_022E65F4
.public FixedPoint32To64
.public ov29_022E1D2C
.public ov29_022E7BE8
.public ov29_022E4430
.public sub_0204F7A8
.public sub_02025314
.public ov30_0238298C
.public ov29_022E1C84
.public ov10_022C2574
.public GetTileAtEntity
.public sub_0204AEF0
.public ov29_022E5E84
.public GetLeader
.public sub_02058C3C
.public ShowKeyboard
.public MemFree
.public sub_02050964
.public ov29_022E87FC
.public ov29_022E7A8C
.public GetRecruitRate1
.public ov29_022E456C
.public sub_02055020
.public ov29_022E410C
.public ov10_022BFC5C
.public GetHero
.public sub_02051EB8
.public UnloadFile
.public sub_02028E2C
.public RandInt
.public IsReflectedByMagicCoat
.public ov29_022DC61C
.public GetOutlawLevel
.public SetMonsterFlag2
.public ov29_022E3F20
.public sub_0204F1B4
.public sub_0201C458
.public ov29_022E3F7C
.public sub_0200D894
.public PreprocessString
.public ov29_022E4BB4
.public DivideInt
.public ov29_022E6338
.public RandIntSafe
.public ov29_022E1C0C
.public IsBagFull
.public ov29_022E4E74
.public sub_02003A40
.public ov29_022E3E24
.public ov01_023310E4
.public GetMonsterLevelFromSpawnEntry
.public GetLowKickMultiplier
.public PointsToZero
.public ov31_02388E88
.public sub_0201DE10
.public CheckTeamMemberIdx__02056228
.public ov31_023886DC
.public GetChebyshevDistance
.public IsMoveRangeString19
.public sub_02017C74
.public ov10_022BEB2C
.public ov29_022E5D68
.public ov29_022E9FD0
.public sub_0201E730
.public ov10_022C26A0
.public sub_0201D7E0
.public CanEnemyEvolve
.public StringFromMessageId
.public sub_0205858C
.public sub_02027148
.public ov29_022DE498
.public ov30_023853E0
.public ov29_022E1B28
.public ov29_022DDB68
.public ov29_022E486C
.public FixedPoint64CmpLt
.public StrncpySimple
.public ov29_022E38E0
.public sub_0201CF90
.public ov29_022E64C4
.public ov31_0238647C
.public GetMonsterGender
.public ov29_022E555C
.public ov29_022E2930
.public sub_02017A68
.public ov29_022E4480
.public ov29_022E5864
.public ov10_022BF160
.public sub_0201C418
.public ShuffleHiddenPower
.public ov29_022DDCA0
.public SubstitutePlaceholderStringTags
.public GetMoveTargetAndRange
.public sub_0201BE5C
.public sub_02050F78
.public ov29_022E8848
.public ov29_022E0C80
.public GetPressedButtons
.public IsTrappingMove
.public FailsWhileMuzzled
.public sub_02058674
.public sub_020480CC
.public RoundUpDiv256
.public sub_0201D804
.public SetDungeonTipShown
.public ov29_022E62A8
.public ov10_022BF0F4
.public IsFutureDungeon
.public ov29_022E40BC
.public ov00_022BFDEC
.public sub_020178A8
.public GetGameMode
.public ov29_022DC65C
.public sub_02050EBC
.public sub_02051D8C
.public ov29_022E7BD0
.public ov30_02382E18
.public ov29_022E1610
.public ov29_022E2E54
.public ov29_022E4BA0
.public HidePortraitBox
.public MemZero
.public DungeonFree
.public ov29_022E4B8C
.public GetMoveNbStrikes
.public ov29_022E7BB8
.public ov29_022E3F74
.public ov30_02382874
.public sub_020039E4
.public ov29_022E3430
.public IsItemValidVeneer
.public ov29_022E1F34
.public ov29_022E1A84
.public ov29_022E2498
.public ov29_022E81F8
.public sub_0201D198
.public ov29_022E5728
.public ov29_022E66C4
.public ov29_022DE0A0
.public ClampedLn
.public ov29_022E4674
.public GetBaseOffensiveStat
.public SetPokemonJoined
.public ov29_022DDA54
.public sub_0204AFF8
.public ov29_022E4338
.public ov29_022E08A0
.public ov29_022E471C
.public ReplaceWanFromBinFile
.public sub_0201F464
.public sub_0200D1FC
.public RemoveItem
.public sub_02017B18
.public ov29_022E4110
.public GetCurrentBagCapacity
.public sub_0201B9F8
.public ov29_022E3A40
.public sub_0201F2A0
.public sub_02008F84
.public ov30_023853BC
.public sub_0200FA68
.public ov29_022E4294
.public sub_02017B58
.public StoryRestrictionsEnabled
.public ov29_022DEA10
.public sub_0202AB94
.public IsRecruitingAllowed
.public sub_01FFB62C
.public ov29_022E272C
.public ov29_022E37DC
.public IsCastform
.public sub_02061DC8
.public sub_02001888
.public GetMoveAnimationSpeed
.public IsTreasureBox
.public JoinedAtRangeCheck2
.public RemoveEquivItem
.public ov29_022E415C
.public NeedsItemToSpawn
.public sub_0202F474
.public sub_02008ED0
.public ov29_022E3FC8
.public ov29_022E55F0
.public ov29_022DDE24
.public ov01_023315F4
.public sub_02030044
.public GetCanMoveFlag
.public ov29_022E543C
.public ov29_022E510C
.public Strlen
.public ov29_022E0C3C
.public sub_0202FFB0
.public sub_02001808
.public ov31_02388534
.public GetExclusiveItem
.public ov29_022E333C
.public CanLearnIqSkill
.public ov31_02386204
.public ov10_022C25EC
.public ov29_022E68F0
.public sub_0200CF6C
.public CeilFixedPoint
.public ov31_02386308
.public GetVictoriesOnOneFloor
.public GetStringFromFileVeneer
.public ov29_022DE620
.public sub_02009514
.public ov29_022E563C
.public ov10_022C2654
.public ov29_022E4914
.public IntToFixedPoint64
.public ov29_022E1EF8
.public DungeonRequestsDoneWrapper
.public ov29_022E41B0
.public ov29_022E4D24
.public sub_0205A450
.public sub_0208FC8C
.public TryForcedLoss
.public TreasureBoxDropsEnabled
.public ov29_022E8834
.public GetMonsterEvoStatus
.public sub_020305E4
.public sub_0204F9CC
.public sub_020091CC
.public GetMonsterLevelToSpawn
.public ov29_022DDB98
.public ov29_022E0E44
.public GetType
.public ov29_022E4964
.public ov29_022E53F0
.public GetRegenSpeed
.public ov10_022BFAA8
.public sub_02017C80
.public ov29_022E53EC
.public sub_0203931C
.public RemoveHeldItemNoHole
.public ov29_022E9A0C
.public ov29_022DE868
.public sub_0201D034
.public sub_0201BF64
.public GetEffectAnimation
.public LoadWteFromFileDirectory
.public DisableIqSkill
.public sub_02017B7C
.public ov29_022E66D8
.public ov29_022E2018
.public ov29_022E4388
.public GetName
.public ov10_022BDE50
.public ov29_022E5FE8
.public GetItemIndex
.public GroundToDungeonMoveset
.public GetDungeonPtrMaster
.public CheckAcceptedMissionByTypeAndDungeon
.public ov29_022E0A64
.public ov29_022E6130
.public ov30_023829A0
.public GetKeyboardStatus
.public ov29_022E5DBC
.public ov29_022E9628
.public ov29_022E9A28
.public sub_020091F8
.public GetSpriteIndex__020526EC
.public ov29_022E6770
.public ov30_0238367C
.public ov29_022E4DCC
.public ov29_022E4C4C
.public sub_0201C0E8
.public Vsprintf
.public ov29_022DDDA4
.public ov29_022E68BC
.public ov10_022BFD6C
.public ov29_022E6784
.public ChooseAiMove
.public sub_02027AF0
.public ov29_022E3A58
.public ov29_022E3F24
.public LightningRodStormDrainCheck
.public sub_0200B3FC
.public sub_0200C008
.public ov29_022E466C
.public ov29_022E3560
.public ov29_022E2260
.public ov29_022E6260
.public Strcmp
.public ov29_022E7A30
.public sub_02017C50
.public ov10_022C2588
.public AiMovement
.public IsSpecialEpisodeDungeon
.public IsSkyExclusiveDungeon
.public FormatMoveString
.public GetDirectionTowardsPosition
.public ov30_02382C30
.public sub_02034710
.public Strcpy
.public sub_0200FB54
.public GetFloorType
.public ov10_022BF964
.public AddItemToBag
.public ov29_022E48B8
.public ov31_02386C6C
.public ov29_022E40C0
.public sub_02053038
.public ov29_022E4670
.public ov10_022BFDCC
.public DecrementStackItem
.public GetTalkLine
.public ov29_022E465C
.public ov10_022C2720
.public sub_02058534
.public sub_0200B330
.public sub_0200D8AC
.public sub_02009194
.public ov29_022E6724
.public IsSoundMove
.public ov29_022E1AAC
.public ov29_022E45D0
.public GetMoveMaxGinsengBoost
.public sub_02024FB8
.public sub_02051E60
.public SetVictoriesOnOneFloor
.public sub_02017B64
.public ov30_02385FE0
.public ov29_022EA428
.public GetMoveMessageFromId
.public ov29_022E20C0
.public sub_0200CCE0
.public ov29_022DE418
.public sub_0202715C
.public TickStatusTurnCounter
.public ov29_022E6E80
.public sub_0201DDFC
.public ov29_022E35E4
.public DungeonRandRange
.public ov29_022E41AC
.public ov29_022E52F8
.public sub_0201D1B0
.public ov29_022E5A00
.public sub_0200F910
.public ov10_022BDC68
.public BinToDecFixedPoint
.public ov29_022E4428
.public sub_02034A80
.public ov29_022E6DD0
.public sub_020534BC
.public ov29_022E0DE4
.public IsHealingWishOrLunarDance
.public ov29_022E274C
.public ov29_022DDE00
.public ov29_022E4068
.public sub_0201D1D4
.public MultiplyByFixedPoint
.public sub_0201E020
.public LoadScriptVariableValue
.public ov29_022E9FC0
.public sub_02047FFC
.public sub_020778D0
.public sub_0202AABC
.public GetMoveAccuracyOrAiChance
.public ov29_022E5560
.public Strncmp
.public ov30_023833D8
.public sub_0201CF5C
.public sub_02024FC8
.public ov29_022E6694
.public GetTurnLimit
.public sub_020308A0
.public IsAuraBow
.public sub_020566C4
.public ov29_022E0C2C
.public ov29_022E56A0
.public GetSpeedStatus
.public ov10_022C26BC
.public ov29_022DE288
.public ov29_022E9F9C
.public ov29_022E690C
.public ov29_022E273C
.public sub_02056084
.public GetEquivItemIndex
.public ov29_022E87DC
.public GetMoveCategory
.public ov29_022E51B0
.public OverlayIsLoaded
.public sub_020258E4
.public UnloadCurrentWazaP
.public ov31_0238941C
.public MultiplyFixedPoint64
.public GetMobilityType
.public GetPerformanceFlagWithChecks
.public sub_0205384C
.public ov29_022DC670
.public MemAlloc
.public ov29_022E451C
.public sub_02017C68
.public ov29_022DEBA4
.public ov29_022E4664
.public ov29_022DE47C
.public UpdateStatusIconFlags
.public ov00_022BFDAC
.public sub_020093BC
.public IsSameMove
.public SetPokemonBattled
.public sub_02025888
.public Is2TurnsMove
.public GetSpawnThreshold
.public ov29_022E47CC
.public ov29_022E0DFC
.public DeleteWanTableEntryVeneer
.public GetSecondFormIfValid
.public ov29_022E47C4
.public sub_02028A64
.public ov29_022E57A0
.public sub_0204AEC0
.public ov29_022E2EC4
.public ov10_022BE9E8
.public ov29_022E6928
.public ov30_02382A34
.public GetActiveTeamMember
.public sub_0205349C
.public ShowPortraitBox
.public sub_02028848
.public ov29_022E1EC4
.public ov29_022E7AC4
.public ov29_022E99F0
.public sub_02058C9C
.public SetScreenWindowsColor
.public ov30_02383434
.public ov29_022E0A04
.public sub_02028E88
.public sub_02048240
.public ov29_022E4014
.public ov29_022E2A78
.public sub_0202836C
.public ov29_022E41F0
.public sub_02015328
.public ov31_023886D4
.public ov29_022E8810
.public GetDungeonMode
.public IsMonsterOnTeam
.public ExclusiveItemEffectFlagTest
.public ov29_022E1A90
.public sub_02017C10
.public ov29_022E0CB8
.public ov29_022E46C0
.public ov29_022E8244
.public sub_0204F10C
.public ov10_022BF1FC
.public GetAbility
.public ov29_022E442C
.public CreateDBox
.public sub_02017B70
.public ov31_023877EC
.public ov29_022E0378
.public ov29_022E5474
.public GetRecruitRate2
.public sub_02056830
.public ov29_022E42E8
.public sub_02056880
.public IsRegularAttackOrProjectile
.public sub_02011220
.public sub_020091B0
.public sub_02048150
.public ov29_022E0E8C
.public ov29_022E8768
.public ov29_022E2DFC
.public ov29_022E47BC
.public sub_02017A80
.public AbilityIsActive2
.public Abs
.public GetScenarioBalance__0204CB94
.public GetEvoParameters
.public sub_02056754
.public ov10_022C2638
.public GetActualSellPrice
.public ov29_022DDEF8
.public sub_0200D208
.public ov29_022E4714
.public GetLearnableIqSkills
.public sub_0204AF78
.public ov29_022E45CC
.public ov29_022E5ED0
.public GetMissionRank
.public sub_02017A20
.public GetRandomMovementChance
.public ov29_022EA3B4
.public GetLanguage
.public sub_0200A174
.public ov30_02382E08
.public sub_02054EC8
.public ov29_022E61C8
.public SetMonsterLevelAndId
.public sub_02025784
.public FemaleToMaleForm
.public AdvanceFrame
.public ov29_022E0C4C
.public IsLevelResetDungeon
.public sub_0200F940
.public ov29_022E0B44
.public sub_0204AF00
.public ov29_022E63D8
.public GetNbItemsInBag
.public ov29_022E1AD4
.public sub_020584FC
.public sub_0202F8C4
.public GetEquippedThrowableItem
.public InitPortraitBox
.public sub_02008F3C
.public ProcessWte
.public ov29_022E550C
.public sub_02024FE8
.public GetMaxPp
.public ov29_022E56D4
.public sub_02001980
.public sub_0204F610
.public IsItemWithFlagsInBag
.public ov29_022E655C
.public sub_02061F44
.public GetBaseDefensiveStat
.public ov29_022E4D28
.public ov29_022E4FC0
.public ov29_022E4F1C
.public ov29_022E4240
.public ov29_022DE5D8
.public ov31_02388114
.public ov29_022E0880
.public ov29_022E7F7C
.public sub_0201D484
.public GetSpeciesIqSkill
.public sub_0201D110
.public sub_02053D1C
.public InitStandardItem
.public ov29_022E4A04
.public ov29_022E65A8
.public DungeonRand16Bit
.public Arm9StoreUnkFieldNa0x2029ED8
.public ov31_02388444
.public ov29_022E617C
.public ov29_022E4868
.public GetChanceAsleep
.public ov31_02387688
.public ov29_022E9F80
.public ov29_022DE5F0
.public GetBodySize
.public ov29_022E6388
.public GetScenarioBalance__022E095C
.public ov29_022E42E4
.public InitMove
.public ov29_022E6798
.public sub_020018D0
.public sub_0201DA80
.public sub_0204D894
.public sub_0200383C
.public ov29_022E8708
.public ov29_022E62F0
.public ov29_022E4018
.public ov29_022E58B0
.public sub_020585B4
.public sub_0201CF80
.public GetActualBuyPrice
.public sub_0202AB40
.public IsShaymin
.public GetSpriteIndex__02052708
.public sub_0204AEA0
.public ov29_022E4A54
.public StrncpySimpleNoPad
.public GetItemMoveId16
.public GetMonsterIdToSpawn
.public sub_02017D80
.public GetItemCategoryVeneer
.public ov29_022E5258
.public sub_0201BE84
.public ItemZInit
.public GetLvlStats
.public ov29_022E4704
.public LoadOverlay
.public sub_0201D590
.public GetMonsterPreEvolution
.public sub_0202F8FC
.public ov29_022E539C
.public CanBeSnatched
.public LoadWazaP2
.public ov29_022DD7D8
.public sub_0204804C
.public ov30_02382820
.public ov29_022E2CA0
.public ov29_022EA008
.public ov29_022E47B8
.public sub_0203010C
.public GetGold
.public GetMoveBasePower
.public ov29_022E0C9C
.public HandleSir0Translation
.public ov29_022E6424
.public ov10_022BFA3C
.public ov29_022E5AE4
.public sub_02037468
.public ov29_022E41CC
.public GetNameWithGender
.public StrncpySimpleNoPadSafe
.public ov29_022E4160
.public FixedRoomIsSubstituteRoom
.public ov29_022E9298
.public RemoveEquivItemNoHole
.public IsOnMonsterSpawnList
.public GetFirstEmptyMemberIdx
.public sub_020301F4
.public ov29_022EA408
.public ov29_022E4718
.public sub_02020880
.public GetDamageSource
.public ov29_022E09E8
.public ov29_022DEBB0
.public AddFixedPoint64
.public ov29_022E9488
.public Memset
.public sub_0204AF10
.public CalcSpeedStageWrapper
.public DecrementWindCounter
.public DisplayActions
.public DivideInt
.public DungeonRandInt
.public DungeonRandRange
.public EnemyEvolution
.public EntityIsValid__022EC608
.public ExecuteMonsterAction
.public GetCanMoveFlag
.public GetEquivItemIndex
.public GetFloorType
.public GetItemAtIdx
.public ov30_023842F4
.public IsThawingMove
.public sub_02048DC4
.public sub_02017CCC
.public ov29_022E49B4
.public sub_0201E13C
.public ov29_022DDC00
.public ov29_022E4660
.public ov31_0238619C
.public FreePortraitBox
.public CreatePortraitBox
.public IsPunchMove
.public DungeonRandOutcome__022EAB20
.public DungeonRandOutcome__022EAB50
.public GetItemCategoryVeneer
.public GetLeader
.public GetTile
.public IqSkillIsEnabled
.public IsFloorOver
.public IsHM
.public ItemZInit
.public LogMessageByIdWithPopupCheckUserTarget
.public RemoveEquivItemNoHole
.public RemoveItem
.public RoundUpDiv256
.public RunMonsterAi
.public SetItemAcquired
.public Strcmp
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public TickStatusAndHealthRegen
.public TryActivateArtificialWeatherAbilities
.public TryForcedLoss
.public TrySpawnMonsterAndActivatePlusMinus
.public ov29_022E0880
.public ov29_022E1610
.public ov29_022E1A40
.public ov29_022E272C
.public ov29_022E555C
.public ov29_022E81F8
.public ov29_022E9618
.public ov29_022EF9C8
.public ov29_022F0EDC
.public ov29_022F3934
.public ov29_022F85F0
.public ov29_02307D54
.public ov29_0230FC24
.public ov29_02321260
.public ov29_023354C4
.public ov29_02345538
.public ov29_023456BC
.public ov29_02347030
.public ov29_02347040
.public ov29_02348FD8
.public sub_01FFBDF4
.public sub_0200D208
.public sub_02017ACC
.public sub_02017B18
.public sub_02017B58
.public sub_02017B64
.public sub_02017B70
.public sub_02017B7C
.public sub_02017C50
.public sub_02017C68
.public sub_02017C74
.public sub_02017D80

View File

@@ -0,0 +1,22 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public DisplayActions
.public DivideInt
.public EntityIsValid__022EC608
.public EntityIsValid__022ECDC0
.public ExecuteMonsterAction
.public GetForcedLossReason
.public GetLeader
.public HandleFaint
.public LogMessageByIdWithPopupCheckUser
.public RunMonsterAi
.public TryForcedLoss
.public TrySpawnMonsterAndTickSpawnCounter
.public ov29_022E5DBC
.public ov29_022EAE14
.public ov29_022EAEF0
.public ov29_022EF9C8
.public ov29_022F2FE4
.public ov29_022F98B4
.public ov29_02300164

View File

@@ -0,0 +1,44 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public EnemyEvolution
.public EntityIsValid__022ECDC0
.public EntityIsValid__022EE348
.public GetStringFromFileVeneer
.public GetTile
.public GetTileSafe
.public HasHeldItem
.public IqSkillIsEnabled
.public LoadWteFromFileDirectory
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public LogMessageByIdWithPopupCheckUserUnknown
.public MemZero
.public Memset
.public ProcessWte
.public Strcpy
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public ov29_022E1608
.public ov29_022E2260
.public ov29_022E2CA0
.public ov29_022E56A0
.public ov29_022E58B0
.public ov29_022E7A30
.public ov29_022EF154
.public ov29_022F89CC
.public ov29_022F9840
.public ov29_02300164
.public ov29_0230D47C
.public ov29_023361D4
.public ov29_02336F4C
.public ov29_023391EC
.public ov29_02344148
.public ov29_0234B034
.public sub_0201B9F8
.public sub_0201E080
.public sub_0201E730
.public sub_0201F2A0
.public sub_02024FC8

View File

@@ -0,0 +1,69 @@
#pragma once
.public AbilityIsActive2
.public CalcStatusDuration
.public DungeonRandInt
.public EntityIsValid__022EE348
.public FemaleToMaleForm
.public GetFloorType
.public GetItemCategoryVeneer
.public GetKecleonIdToSpawnByFloor
.public GetMonsterIdToSpawn
.public GetTile
.public HandleFaint
.public HasDropeyeStatus
.public IsExperienceLocked
.public IsNotMoney
.public ItemIsActive__022EE318
.public LogMessageByIdWithPopup
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public LowerDefensiveStat
.public LowerOffensiveStat
.public LowerSpeed
.public MewSpawnCheck
.public MultiplyByFixedPoint
.public RemoveHeldItemNoHole
.public SpawnMonster
.public SubstitutePlaceholderStringTags
.public TryBlowAway
.public TryInflictConfusedStatus
.public TryInflictPoisonedStatus
.public TryInflictSleepStatus
.public TrySealMove
.public TryWarp
.public ov29_022E1608
.public ov29_022E1610
.public ov29_022E272C
.public ov29_022E333C
.public ov29_022E38E0
.public ov29_022E56A0
.public ov29_022E56D4
.public ov29_022E58B0
.public ov29_022E7A8C
.public ov29_022E8104
.public ov29_022E81F8
.public ov29_022EA370
.public ov29_022FA574
.public ov29_022FB920
.public ov29_022FBD80
.public ov29_02301EAC
.public ov29_023049A8
.public ov29_02304A48
.public ov29_0230D11C
.public ov29_02314EB8
.public ov29_02319624
.public ov29_02320448
.public ov29_023361D4
.public ov29_02336F4C
.public ov29_023391EC
.public ov29_02339CE8
.public ov29_02344148
.public ov29_02344B44
.public ov29_02344BD0
.public ov29_023456BC
.public ov29_02346344
.public ov29_02347030
.public ov29_0234B084
.public sub_02001888
.public sub_0200FA68
.public sub_0200FAEC

View File

@@ -0,0 +1,19 @@
#pragma once
.public EntityIsValid__022EF7A0
.public EntityIsValid__022F0590
.public IsFloorOver
.public ov29_022DE5F0
.public ov29_022E1A40
.public ov29_022EA370
.public ov29_022EAE14
.public ov29_022F85F0
.public ov29_022FA144
.public ov29_022FA360
.public ov29_0230F798
.public ov29_023444D4
.public ov29_02348F20
.public ov29_0234B1A4
.public ov29_0234BA54
.public ov29_0234D630
.public ov29_0234D8A0
.public sub_0201D198

View File

@@ -0,0 +1,188 @@
#pragma once
.public Abs
.public AddItemToBag
.public AddItemToBagNoHeld
.public AddMoneyCarried
.public AdvanceFrame
.public CeilFixedPoint
.public CheckTeamMemberIdx__022F9C34
.public DivideInt
.public DungeonRandInt
.public EntityIsValid__022F0590
.public ExecuteMoveEffect
.public GetActiveTeamMember
.public GetDirectionTowardsPosition
.public GetEntityMoveTargetAndRange
.public GetEquippedThrowableItem
.public GetGold
.public GetHero
.public GetItemCategoryVeneer
.public GetItemIndex
.public GetLeader
.public GetMonsterGenderVeneer
.public GetPressedButtons
.public GetSleepAnimationId
.public GetTile
.public GetTileAtEntity
.public GetTileSafe
.public HasHeldItem
.public InitMove
.public InitPreprocessorArgs
.public IqSkillIsEnabled
.public IsBlinded
.public IsExperienceLocked
.public IsFloorOver
.public IsGoldenChamber
.public ItemZInit
.public LogMessageByIdWithPopup
.public LogMessageByIdWithPopupCheckUser
.public MemAlloc
.public MemFree
.public MemZero
.public OpenMessageLog
.public PreprocessString
.public RemoveEquivItemNoHole
.public SetMonsterActionFields
.public ShouldMonsterRunAway
.public ShouldMonsterRunAwayVariation
.public SubstitutePlaceholderStringTags
.public UpdateAiTargetPos
.public ov29_022DE608
.public ov29_022E0B44
.public ov29_022E0C2C
.public ov29_022E0C3C
.public ov29_022E0C4C
.public ov29_022E0C64
.public ov29_022E0C80
.public ov29_022E0C9C
.public ov29_022E0CB8
.public ov29_022E0DD8
.public ov29_022E0DF0
.public ov29_022E1608
.public ov29_022E1610
.public ov29_022E274C
.public ov29_022E28D4
.public ov29_022E2A38
.public ov29_022E2CA0
.public ov29_022E2E54
.public ov29_022E38E0
.public ov29_022E3DD8
.public ov29_022E3E24
.public ov29_022E8104
.public ov29_022E81F8
.public ov29_022E9618
.public ov29_022EA370
.public ov29_022EA3B4
.public ov29_022EA428
.public ov29_022EACCC
.public ov29_022EB398
.public ov29_022EB3C8
.public ov29_022EB54C
.public ov29_022EB568
.public ov29_022EB594
.public ov29_022EB944
.public ov29_022EBC98
.public ov29_022EDFA0
.public ov29_022F04F0
.public ov29_022F0518
.public ov29_022F59C4
.public ov29_022F62CC
.public ov29_022F670C
.public ov29_022F87C0
.public ov29_022F89AC
.public ov29_022F98B4
.public ov29_022F9C4C
.public ov29_022F9EA0
.public ov29_022FA2F0
.public ov29_022FA360
.public ov29_022FB538
.public ov29_022FB920
.public ov29_022FBAB4
.public ov29_022FBDF0
.public ov29_022FF3F4
.public ov29_022FF958
.public ov29_022FFA94
.public ov29_023009CC
.public ov29_02300E78
.public ov29_02300FCC
.public ov29_0230105C
.public ov29_02301158
.public ov29_0230175C
.public ov29_023049A8
.public ov29_023055B0
.public ov29_02307F4C
.public ov29_023186CC
.public ov29_02318700
.public ov29_02321164
.public ov29_02322DDC
.public ov29_0232461C
.public ov29_02336F4C
.public ov29_02337428
.public ov29_0233779C
.public ov29_02337B68
.public ov29_02337D68
.public ov29_02338794
.public ov29_02338F58
.public ov29_02339190
.public ov29_023391C0
.public ov29_02339CD4
.public ov29_02339CE8
.public ov29_02339D7C
.public ov29_0233A0E8
.public ov29_0233A248
.public ov29_02344B44
.public ov29_02345058
.public ov29_02345538
.public ov29_023456BC
.public ov29_02346BD8
.public ov29_02346E5C
.public ov29_02346F14
.public ov29_02346FB8
.public ov29_02347030
.public ov29_02348D3C
.public ov29_02348ECC
.public ov29_023491B8
.public ov29_0234A980
.public ov29_0234B034
.public ov29_0234B0CC
.public ov29_0234B104
.public ov29_0234B118
.public ov29_0234B1A4
.public ov29_0234B4CC
.public ov29_0234BA54
.public ov29_0234BAC0
.public ov29_0234BB38
.public ov29_0234D518
.public ov29_0234D650
.public ov29_0234D65C
.public ov29_0234D668
.public ov29_0234D690
.public ov29_0234D838
.public ov29_0234D860
.public ov29_0234D878
.public ov29_0234D88C
.public ov29_0234DDF4
.public ov29_0234E8F8
.public ov29_0234FC50
.public ov29_0234FCA8
.public sub_02001AB0
.public sub_02006B70
.public sub_0200FB54
.public sub_0200FBE0
.public sub_02017C80
.public sub_02017CCC
.public sub_0201B9F8
.public sub_0201CF90
.public sub_02026214
.public sub_02026268
.public sub_02027AF0
.public sub_02027B1C
.public sub_0202F8C4
.public sub_0202F8FC
.public sub_0204AEA0
.public sub_0204AEB0
.public sub_0204AEC0
.public sub_0204AF10
.public sub_0204AF20
.public sub_0204AF78
.public sub_02056754

View File

@@ -0,0 +1,99 @@
#pragma once
.public AbilityIsActive2
.public ApplyItemEffect
.public DecrementStackItem
.public DisplayMessage
.public DisplayMessage2
.public DivideInt
.public DungeonRandInt
.public EnemyEvolution
.public EntityIsValid__022F528C
.public EntityIsValid__022F62A8
.public ExclusiveItemEffectFlagTest
.public GetActiveTeamMember
.public GetDirectionTowardsPosition
.public GetItemCategoryVeneer
.public GetLeader
.public GetNumberOfAttacks
.public GetStringFromFileVeneer
.public GetTalkLine
.public HandleFaint
.public HasHeldItem
.public HasLowHealth
.public InitMove
.public IqSkillIsEnabled
.public IsFloorOver
.public IsMonsterIdInNormalRange__022F9C68
.public ItemZInit
.public LogMessageByIdWithPopupCheckUser
.public RemoveEquivItemNoHole
.public ShouldMonsterRunAwayVariation
.public Strcpy
.public Strncpy
.public SubstitutePlaceholderStringTags
.public TryActivateTruant
.public UpdateMapSurveyorFlag
.public UpdateMovePp
.public ov29_022E08A0
.public ov29_022E272C
.public ov29_022E56A0
.public ov29_022E5728
.public ov29_022E690C
.public ov29_022E8104
.public ov29_022E81F8
.public ov29_022E9A9C
.public ov29_022EA370
.public ov29_022EB378
.public ov29_022EB54C
.public ov29_022EB60C
.public ov29_022EFB04
.public ov29_022F3B8C
.public ov29_022F6748
.public ov29_022F87C0
.public ov29_022F9C40
.public ov29_022FA574
.public ov29_0230040C
.public ov29_02300818
.public ov29_023009CC
.public ov29_0230175C
.public ov29_023049A8
.public ov29_02304A48
.public ov29_02304AFC
.public ov29_02307BDC
.public ov29_02307F4C
.public ov29_0230F9A4
.public ov29_023186CC
.public ov29_02318700
.public ov29_0231A7A0
.public ov29_0231AE3C
.public ov29_0231D4A4
.public ov29_0232145C
.public ov29_02322374
.public ov29_02338430
.public ov29_0233A248
.public ov29_02343D30
.public ov29_02344160
.public ov29_02344544
.public ov29_02344B44
.public ov29_02344B70
.public ov29_02345538
.public ov29_023456BC
.public ov29_02346FB8
.public ov29_02347000
.public ov29_02347030
.public ov29_02347518
.public ov29_02347BC8
.public ov29_02348C64
.public ov29_023491A4
.public ov29_0234A2D4
.public ov29_0234A5E4
.public ov29_0234B034
.public ov29_0234B0B4
.public ov29_0234BAC0
.public ov29_0234CFA0
.public ov29_0234CFEC
.public ov29_0234D304
.public ov29_0234D518
.public sub_02020880
.public sub_02024FB8
.public sub_02025888

View File

@@ -0,0 +1,49 @@
#pragma once
.public Abs
.public AddMoneyCarried
.public CalcSpeedStageWrapper
.public DeleteWanTableEntryVeneer
.public DisplayMessage2
.public EntityIsValid__022F62A8
.public EntityIsValid__022F7364
.public GetActiveTeamMember
.public GetDirectionTowardsPosition
.public GetExplorerMazeMonster
.public GetGold
.public GetKecleonIdToSpawnByFloor
.public GetLeader
.public GetMonsterIdFromSpawnEntry
.public GetSpriteFileSize
.public GetTile
.public GetTileAtEntity
.public IsCastform
.public IsCherrim
.public IsFloorOver
.public IsShaymin
.public LoadMissionMonsterSprites
.public LoadMonsterSprite
.public LogMessageByIdWithPopupCheckUser
.public MemAlloc
.public MemFree
.public MemZero
.public TeamLeaderIqSkillIsEnabled
.public TryWarp
.public ov29_022E1610
.public ov29_022E38E0
.public ov29_022EACCC
.public ov29_022F6210
.public ov29_022FF764
.public ov29_023009CC
.public ov29_02304A00
.public ov29_02304A48
.public ov29_0231B490
.public ov29_0231B4AC
.public ov29_02345538
.public ov29_023456BC
.public ov29_0234B09C
.public ov29_0234BAC0
.public ov29_0234D518
.public sub_020018A4
.public sub_0200CCE0
.public sub_0201D590
.public sub_0208FC8C

View File

@@ -0,0 +1,210 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public AiMovement
.public ApplyItemEffect
.public CanAttackInDirection
.public CanMonsterSpawn
.public CeilFixedPoint
.public CheckTeamMemberIdx__02056228
.public Conversion2IsActive
.public DeleteWanTableEntryVeneer
.public DisplayMessage
.public DisplayMessage2
.public DivideInt
.public DungeonRandInt
.public DungeonRngSetPrimary
.public DungeonRngSetSecondary
.public EnableIqSkill
.public EndCringeClassStatus
.public EndFrozenClassStatus
.public EntityIsValid__022F7364
.public EntityIsValid__022FC99C
.public ExclusiveItemEffectFlagTest
.public FreeOtherWrappedMonsters
.public GendersEqualNotGenderless
.public GetAbility
.public GetActiveTeamMember
.public GetApparentWeather
.public GetBodySize
.public GetChebyshevDistance
.public GetDirectionTowardsPosition
.public GetExp
.public GetExplorerMazeMonster
.public GetFileLengthInPackWithPackNb
.public GetFloorType
.public GetForcedLossReason
.public GetInfoMoveCheckId
.public GetLeader
.public GetLearnableIqSkills
.public GetLvlStats
.public GetMaxPp
.public GetMaxPpWrapper
.public GetMobilityType
.public GetMonsterEvoStatus
.public GetMonsterGender
.public GetMonsterIdFromSpawnEntry
.public GetMonsterLevelFromSpawnEntry
.public GetMoveBasePp
.public GetMoveType
.public GetMoveTypeForMonster
.public GetNbItemsInBag
.public GetNumberOfAttacks
.public GetScenarioBalance__0204CB94
.public GetScenarioBalance__022E095C
.public GetSleepAnimationId
.public GetSpawnThreshold
.public GetSpriteFileSize
.public GetSpriteIndex__020526EC
.public GetStairsRoom
.public GetTile
.public GetTileAtEntity
.public GetTileSafe
.public GetTurnLimit
.public GetType
.public GroundToDungeonMoveset
.public HasHeldItem
.public InitTeamMember
.public IqSkillIsEnabled
.public IsCurrentMissionType
.public IsDestinationFloorWithFixedRoom
.public IsDestinationFloorWithMonster
.public IsLevelResetDungeon
.public IsMonsterIdInNormalRange__02056294
.public IsOneHitKoMove
.public IsOutlawOrChallengeRequestFloor
.public IsRecruitingAllowed
.public IsSecretFloor
.public IsShaymin
.public ItemZInit
.public JoinedAtRangeCheck
.public JoinedAtRangeCheck2
.public LoadWazaP2
.public LogMessageByIdWithPopup
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public LowerSpeed
.public MemAlloc
.public MemFree
.public MonsterIsType
.public OpenMessageLog
.public RandInt
.public RemoveEquivItem
.public ReplaceWanFromBinFile
.public RestoreMovePP
.public SetActionPassTurnOrWalk
.public SetForcedLossReason
.public SetMissionTargetEnemyDefeated
.public SetMonsterLevelAndId
.public ShouldMonsterRunAway
.public StoryRestrictionsEnabled
.public SubFixedPoint
.public SubstitutePlaceholderStringTags
.public TryIncreaseHp
.public TryInflictBurnStatus
.public TryInflictPausedStatus
.public UnloadCurrentWazaP
.public UpdateStatusIconFlags
.public ov29_022DDA54
.public ov29_022DDB68
.public ov29_022E0880
.public ov29_022E0A04
.public ov29_022E1C0C
.public ov29_022E2470
.public ov29_022E272C
.public ov29_022E274C
.public ov29_022E2978
.public ov29_022E2A78
.public ov29_022E2E54
.public ov29_022E2EC4
.public ov29_022E38E0
.public ov29_022E4160
.public ov29_022E4964
.public ov29_022E576C
.public ov29_022E6260
.public ov29_022E647C
.public ov29_022E68BC
.public ov29_022E68D8
.public ov29_022E6928
.public ov29_022E7BE8
.public ov29_022E8104
.public ov29_022E81F8
.public ov29_022EA370
.public ov29_022EA718
.public ov29_022ECDE4
.public ov29_022EF7C4
.public ov29_022EF938
.public ov29_022EFAE8
.public ov29_022EFB04
.public ov29_022FCD04
.public ov29_022FE048
.public ov29_022FE2FC
.public ov29_022FE350
.public ov29_022FE3B8
.public ov29_022FE420
.public ov29_022FF6C4
.public ov29_022FFB90
.public ov29_02300164
.public ov29_0230040C
.public ov29_023007A8
.public ov29_02300818
.public ov29_02300CB0
.public ov29_0230175C
.public ov29_023018AC
.public ov29_023021F0
.public ov29_02303B18
.public ov29_02304830
.public ov29_023049A8
.public ov29_02304A48
.public ov29_02304BAC
.public ov29_02305FDC
.public ov29_023061A8
.public ov29_023064F4
.public ov29_02307CE0
.public ov29_02307DD0
.public ov29_0230AA8C
.public ov29_0230F654
.public ov29_0230F9A4
.public ov29_023159D4
.public ov29_0231D4A4
.public ov29_0231E990
.public ov29_02324798
.public ov29_023361D4
.public ov29_023363C0
.public ov29_02337A3C
.public ov29_02337EC0
.public ov29_02338F24
.public ov29_023391EC
.public ov29_02339CE8
.public ov29_02344B44
.public ov29_02348100
.public ov29_02349688
.public ov29_0234B010
.public ov29_0234B034
.public ov29_0234B06C
.public ov29_0234B084
.public ov29_0234B09C
.public ov29_0234B0B4
.public ov29_0234B1A4
.public ov29_0234D518
.public ov29_0234EF24
.public sub_0200F9B4
.public sub_0200FB54
.public sub_0201405C
.public sub_02017C50
.public sub_0201C0CC
.public sub_0201C0E8
.public sub_0201D484
.public sub_0201D590
.public sub_0204AEF0
.public sub_02050964
.public sub_02050FF8
.public sub_02052E2C
.public sub_02053250
.public sub_0205349C
.public sub_02056264
.public sub_020566C4
.public sub_020585B4
.public sub_02058674
.public sub_02058EB0
.public sub_0205A450

View File

@@ -0,0 +1,150 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public CalcSpeedStageWrapper
.public DisplayActions
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public DungeonRngSetPrimary
.public DungeonRngSetSecondary
.public EnemyEvolution
.public EntityIsValid__022FC99C
.public EntityIsValid__022FED98
.public ExclusiveItemEffectFlagTest
.public FreeOtherWrappedMonsters
.public GetAbility
.public GetActiveTeamMember
.public GetApparentWeather
.public GetBaseDefensiveStat
.public GetBaseForm
.public GetBaseHp
.public GetBaseOffensiveStat
.public GetChanceAsleep
.public GetCurrentBagCapacity
.public GetItemToRetrieve
.public GetLeader
.public GetLvlStats
.public GetMissionRank
.public GetMonsterIdToSpawn
.public GetMonsterLevelToSpawn
.public GetSpriteIndex__022F7388
.public GetTile
.public GetType
.public HasHeldItem
.public InflictSleepStatusSingle
.public InitStandardItem
.public IqSkillIsEnabled
.public IsBagFull
.public IsCurrentMissionType
.public IsDestinationFloorWithFixedRoom
.public IsDestinationFloorWithFleeingOutlaw
.public IsDestinationFloorWithHiddenOutlaw
.public IsDestinationFloorWithMonster
.public IsFloorOver
.public IsOutlawMonsterHouseFloor
.public ItemZInit
.public LogMessageByIdWithPopupCheckUser
.public MemZero
.public MewSpawnCheck
.public MultiplyByFixedPoint
.public SetTargetMonsterNotFoundFlag
.public ShuffleHiddenPower
.public SubstitutePlaceholderStringTags
.public UpdateStatusIconFlags
.public ov29_022DDA54
.public ov29_022DDB68
.public ov29_022DEA10
.public ov29_022E0880
.public ov29_022E1A40
.public ov29_022E1AAC
.public ov29_022E1AD4
.public ov29_022E1C0C
.public ov29_022E1C84
.public ov29_022E1D2C
.public ov29_022E1EC4
.public ov29_022E1F34
.public ov29_022E2018
.public ov29_022E20C0
.public ov29_022E2DFC
.public ov29_022E38E0
.public ov29_022E3A58
.public ov29_022E5D68
.public ov29_022E6644
.public ov29_022E7AC4
.public ov29_022E81F8
.public ov29_022E9628
.public ov29_022E99F0
.public ov29_022E9A0C
.public ov29_022EB944
.public ov29_022EC85C
.public ov29_022EDDD4
.public ov29_022EDFA0
.public ov29_022EF9BC
.public ov29_022EFAE8
.public ov29_022EFB04
.public ov29_022F3890
.public ov29_022F4350
.public ov29_022F4370
.public ov29_022F44F0
.public ov29_022F45CC
.public ov29_022F48D8
.public ov29_022F49E0
.public ov29_022F4BDC
.public ov29_022F4BF8
.public ov29_022F4DAC
.public ov29_022F505C
.public ov29_022F52B0
.public ov29_022F52CC
.public ov29_022F54BC
.public ov29_022F59C4
.public ov29_022F5F18
.public ov29_022F6058
.public ov29_022F85F0
.public ov29_022F9408
.public ov29_022F9840
.public ov29_022F996C
.public ov29_022F9EA0
.public ov29_022FA1D8
.public ov29_022FB83C
.public ov29_022FBA70
.public ov29_022FBC4C
.public ov29_022FBD08
.public ov29_022FBF08
.public ov29_022FBF30
.public ov29_022FC234
.public ov29_022FC468
.public ov29_022FEDBC
.public ov29_022FEFC8
.public ov29_022FF168
.public ov29_022FF6C4
.public ov29_022FFC9C
.public ov29_02300DCC
.public ov29_02300E78
.public ov29_023021F0
.public ov29_02302368
.public ov29_02304A48
.public ov29_02304D20
.public ov29_02307DC0
.public ov29_023085DC
.public ov29_0230F140
.public ov29_0230F14C
.public ov29_0230F158
.public ov29_0230FC24
.public ov29_02318D58
.public ov29_0231A8A0
.public ov29_0231A9F8
.public ov29_02321104
.public ov29_0232461C
.public ov29_02337CCC
.public ov29_02338708
.public ov29_02338850
.public ov29_02338898
.public ov29_02346888
.public ov29_02346F14
.public ov29_023491A4
.public ov29_0234B024
.public ov29_0234BA54
.public sub_02050FF8
.public sub_02054FEC
.public sub_02055020
.public sub_02058EB0

View File

@@ -0,0 +1,37 @@
#pragma once
.public AbilityIsActive
.public CanMonsterUseMove
.public ChooseAiMove
.public DungeonRandInt
.public EntityIsValid__022FED98
.public EntityIsValid__023000E4
.public ExclusiveItemEffectFlagTest
.public GetApparentWeather
.public GetMobilityType
.public GetSpeedStatus
.public GetTile
.public HasConditionalGroundImmunity
.public HasHeldItem
.public IqSkillIsEnabled
.public IsBlinded
.public LogMessageByIdWithPopupCheckUser
.public MonsterIsType
.public SetActionPassTurnOrWalk
.public SetMonsterActionFields
.public SubstitutePlaceholderStringTags
.public TickStatusTurnCounter
.public ov29_022E56A0
.public ov29_022E655C
.public ov29_022EBC98
.public ov29_022FAA04
.public ov29_023007A8
.public ov29_02300DCC
.public ov29_02300E78
.public ov29_023023C0
.public ov29_0230F654
.public ov29_02313CE4
.public ov29_02318D58
.public ov29_02322374
.public ov29_023245A4
.public ov29_02336204
.public ov29_02344B44

View File

@@ -0,0 +1,71 @@
#pragma once
.public CanLearnIqSkill
.public CanThrowItems
.public DisableIqSkill
.public DivideInt
.public DungeonRandInt
.public EnableIqSkill
.public EntityIsValid__023000E4
.public EntityIsValid__02302A38
.public EvolveMonster
.public ExclusiveItemEffectFlagTest
.public ExclusiveItemEffectIsActive__022FFF28
.public GetActiveTeamMember
.public GetApparentWeather
.public GetEvolutions
.public GetExplorerMazeMonster
.public GetForcedLossReason
.public GetMoveBasePower
.public GetMoveType
.public GetName
.public GetNameRaw
.public GetNameWithGender
.public GetPerformanceFlagWithChecks
.public GetSpeciesIqSkill
.public GetSpriteIndex__022F7388
.public GetTile
.public GravityIsActive
.public HasHeldItem
.public IqSkillFlagTest
.public IsBlinded
.public IsExpEnabledInDungeon
.public IsExperienceLocked
.public IsOnMonsterSpawnList
.public IsRegularAttackOrProjectile
.public ItemIsActive__022FF898
.public LogMessageByIdWithPopup
.public LogMessageByIdWithPopupCheckUserTarget
.public MultiplyByFixedPoint
.public Strcpy
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public Vsprintf
.public ov29_022E2470
.public ov29_022E274C
.public ov29_022E62A8
.public ov29_022FAFD4
.public ov29_022FBDE0
.public ov29_022FF674
.public ov29_02302C04
.public ov29_02302CC8
.public ov29_0230303C
.public ov29_0230F654
.public ov29_02314DC4
.public ov29_023197CC
.public ov29_0231AE90
.public ov29_0231AF0C
.public ov29_0232461C
.public ov29_02324BE8
.public ov29_02336204
.public ov29_02344B44
.public ov29_0234B034
.public ov29_0234B09C
.public ov29_0234B0B4
.public sub_02024FB8
.public sub_02025888
.public sub_020258E4
.public sub_02056084
.public sub_02058534
.public sub_0205858C
.public sub_020585B4
.public sub_02058C9C

View File

@@ -0,0 +1,86 @@
#pragma once
.public DisplayMessage
.public DisplayMessage2
.public DungeonRandInt
.public EntityIsValid__02302A38
.public EntityIsValid__023047B8
.public FormatMoveString
.public GetLeader
.public GetLvlStats
.public GetMovesetLevelUpPtr
.public GetSleepAnimationId
.public GetSpriteIndex__022F7388
.public GetStringFromFileVeneer
.public GetTalkLine
.public GetTile
.public IsExperienceLocked
.public IsOnMonsterSpawnList
.public IsSpecialEpisodeDungeon
.public LogMessageByIdWithPopup
.public LogMessageByIdWithPopupCheckUserTarget
.public NeedsItemToSpawn
.public Rand16Bit
.public SpawnMonster
.public Strcat
.public Strcpy
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public ov29_022DD7D8
.public ov29_022DDB98
.public ov29_022E273C
.public ov29_022E3570
.public ov29_022E3580
.public ov29_022E3A40
.public ov29_022E56A0
.public ov29_022E6724
.public ov29_022E6E80
.public ov29_022EA370
.public ov29_022EAC7C
.public ov29_022EAC9C
.public ov29_022EBCE8
.public ov29_022ECB38
.public ov29_022F7050
.public ov29_022F9194
.public ov29_022F98B4
.public ov29_022FB6E4
.public ov29_022FDDC0
.public ov29_022FF6C4
.public ov29_02300164
.public ov29_0230040C
.public ov29_023009CC
.public ov29_023021F0
.public ov29_02304830
.public ov29_023049A8
.public ov29_02318D58
.public ov29_0231EA04
.public ov29_02338988
.public ov29_0234B034
.public ov29_0234B06C
.public ov29_0234B084
.public ov29_0234B09C
.public ov29_0234B4E0
.public ov29_0234BAC0
.public ov29_0234CFA0
.public ov29_0234CFEC
.public ov29_0234D234
.public ov29_0234D304
.public ov29_0234D484
.public ov29_0234FAEC
.public sub_020149C0
.public sub_0201B9F8
.public sub_0201C0E8
.public sub_0201C418
.public sub_0201C458
.public sub_0201CF5C
.public sub_0201D034
.public sub_0201D110
.public sub_0201D198
.public sub_0201D1B0
.public sub_02025888
.public sub_0204F610
.public sub_0205384C
.public sub_02053904
.public sub_02054FB8
.public sub_02054FEC
.public sub_02055020
.public sub_02058C9C

View File

@@ -0,0 +1,39 @@
#pragma once
.public AdvanceFrame
.public DivideInt
.public EnemyEvolution
.public EntityIsValid__023047B8
.public EntityIsValid__0230558C
.public GetDirectionTowardsPosition
.public GetShadowSize
.public GetSpriteIndex__022F7388
.public GetTileAtEntity
.public IsFloorOver
.public Rand16Bit
.public TryForcedLoss
.public ov29_022E1A40
.public ov29_022E1A90
.public ov29_022E272C
.public ov29_022E8104
.public ov29_022EA370
.public ov29_022EF9BC
.public ov29_022EF9C8
.public ov29_022F3634
.public ov29_022F62CC
.public ov29_022F9C74
.public ov29_02300818
.public ov29_02300CB0
.public ov29_02305694
.public ov29_02305814
.public ov29_02307DD0
.public ov29_0230FC24
.public ov29_02321104
.public ov29_02337A3C
.public ov29_02337E94
.public ov29_02346888
.public ov29_0234AD10
.public ov29_0234BA18
.public sub_0201C0E8
.public sub_0201C418
.public sub_0204AEE0
.public sub_02053038

View File

@@ -0,0 +1,50 @@
#pragma once
.public AbilityIsActive2
.public CalcSpeedStageWrapper
.public EndCringeClassStatus
.public EndFrozenClassStatus
.public EntityIsValid__0230558C
.public EntityIsValid__02305C04
.public GetDirectionTowardsPosition
.public GetLeader
.public GetSleepAnimationId
.public GetTileAtEntity
.public HasHeldItem
.public IqSkillIsEnabled
.public IsFloorOver
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public SubstitutePlaceholderStringTags
.public UpdateStatusIconFlags
.public ov29_022E1608
.public ov29_022E2CA0
.public ov29_022E3A58
.public ov29_022E543C
.public ov29_022EA370
.public ov29_022EDFA0
.public ov29_022FBE04
.public ov29_023004B0
.public ov29_023004E4
.public ov29_02300500
.public ov29_02300520
.public ov29_0230053C
.public ov29_02300588
.public ov29_023005A4
.public ov29_023005C0
.public ov29_023005FC
.public ov29_02300618
.public ov29_02300634
.public ov29_02300818
.public ov29_023049A8
.public ov29_02305FDC
.public ov29_023061A8
.public ov29_02306728
.public ov29_023068C4
.public ov29_02306950
.public ov29_02306B28
.public ov29_02306BF8
.public ov29_02306C64
.public ov29_02307F4C
.public ov29_0230F164
.public ov29_02336F4C
.public ov29_02337D68

View File

@@ -0,0 +1,64 @@
#pragma once
.public Abs
.public AdvanceFrame
.public CalcSpeedStageWrapper
.public CalcStatusDuration
.public EntityIsValid__02305C04
.public EntityIsValid__02307EF8
.public FreeOtherWrappedMonsters
.public GetSleepAnimationId
.public GetSpriteIndex__022F7388
.public GetType
.public ItemIsActive__02307F1C
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public SubstitutePlaceholderStringTags
.public TryIncreaseHp
.public TryInflictBadlyPoisonedStatus
.public TryInflictBurnStatus
.public TryInflictConfusedStatus
.public TryInflictConstrictionStatus
.public TryInflictCoweringStatus
.public TryInflictCringeStatus
.public TryInflictInfatuatedStatus
.public TryInflictLeechSeedStatus
.public TryInflictParalysisStatus
.public TryInflictPausedStatus
.public TryInflictPoisonedStatus
.public TryInflictShadowHoldStatus
.public TryInflictSleepStatus
.public UpdateStatusIconFlags
.public ov29_022E543C
.public ov29_022E65F4
.public ov29_022E6798
.public ov29_022F62CC
.public ov29_022F9408
.public ov29_022FA1D8
.public ov29_022FB984
.public ov29_022FDDC0
.public ov29_02300634
.public ov29_02301940
.public ov29_02302430
.public ov29_02304830
.public ov29_02304A48
.public ov29_023058C4
.public ov29_0230D11C
.public ov29_02311C28
.public ov29_02315C00
.public ov29_02315E24
.public ov29_023163A8
.public ov29_0231662C
.public ov29_02316720
.public ov29_02317124
.public ov29_023174C8
.public ov29_023176CC
.public ov29_02317844
.public ov29_02317AF4
.public ov29_0231827C
.public ov29_023185A8
.public ov29_0231872C
.public ov29_02318850
.public ov29_02321104
.public ov29_02321134
.public ov29_02336F4C
.public ov29_02339CE8

View File

@@ -0,0 +1,14 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public DungeonRandInt
.public DungeonRandRange
.public EntityIsValid__02307EF8
.public GetMonsterIdToSpawn
.public GetTileAtEntity
.public GetTileSafe
.public HasHeldItem
.public MewSpawnCheck
.public MultiplyByFixedPoint
.public SpawnMonster
.public ov29_022E38E0

View File

@@ -0,0 +1,47 @@
#pragma once
.public Abs
.public AiMovement
.public ApplyDamage
.public BoostOffensiveStat
.public CanTargetEntity
.public ChooseAiMove
.public ClearMonsterActionFields
.public DefenderAbilityIsActive__0230A940
.public DungeonRandInt
.public EndFrozenClassStatus
.public EntityIsValid__02308FBC
.public ExclusiveItemEffectIsActive__0230A9B8
.public GetCanMoveFlag
.public GetLeader
.public GravityIsActive
.public HasLowHealth
.public HasStatusThatPreventsActing
.public IqSkillIsEnabled
.public LevitateIsActive
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public MonsterIsType
.public ResetDamageDesc
.public SetActionPassTurnOrWalk
.public SubstitutePlaceholderStringTags
.public UpdateAiTargetPos
.public ov29_022E3F24
.public ov29_022E40C0
.public ov29_022E45D0
.public ov29_022E57D4
.public ov29_022E5E84
.public ov29_022EF9EC
.public ov29_022FB538
.public ov29_02300B40
.public ov29_02300D50
.public ov29_0230175C
.public ov29_02301EAC
.public ov29_0230D11C
.public ov29_0230D654
.public ov29_0230E914
.public ov29_0230F728
.public ov29_0231EA30
.public ov29_0231EDFC
.public ov29_023380FC
.public sub_02054EC8
.public sub_02058C3C

View File

@@ -0,0 +1,207 @@
#pragma once
.public AbilityIsActive2
.public Abs
.public AddExpSpecial
.public AddFixedPoint64
.public AdvanceFrame
.public AuraBowIsActive
.public CanEnemyEvolve
.public CeilFixedPoint
.public ClampedLn
.public DebugPrint0__0200C1FC
.public DivideFixedPoint64
.public DivideInt
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public EntityIsValid__02308FBC
.public EntityIsValid__0230E8F0
.public ExclusiveItemDefenseBoost
.public ExclusiveItemEffectFlagTest
.public ExclusiveItemOffenseBoost
.public FixedPoint32To64
.public FixedPoint64CmpLt
.public FixedPoint64IsZero
.public FixedPoint64ToInt
.public FixedRoomIsSubstituteRoom
.public FreeOtherWrappedMonsters
.public GendersEqualNotGenderless
.public GetActiveTeamMember
.public GetApparentWeather
.public GetDirectionTowardsPosition
.public GetEquivItemIndex
.public GetExp
.public GetFirstEmptyMemberIdx
.public GetItemAtIdx
.public GetKecleonIdToSpawnByFloor
.public GetMonsterGenderVeneer
.public GetMonsterIdToSpawn
.public GetMonsterLevelToSpawn
.public GetMoveCategory
.public GetNameString
.public GetRandomMovementChance
.public GetRecruitRate1
.public GetRecruitRate2
.public GetSleepAnimationId
.public GetTile
.public GetTileAtEntity
.public GravityIsActive
.public HandleFaint
.public HasConditionalGroundImmunity
.public HasHeldItem
.public HasPlayedOldGame
.public InitTeamMember
.public IntToFixedPoint64
.public IqSkillIsEnabled
.public IsBlinded
.public IsCurrentMissionType
.public IsCurrentMissionTypeExact
.public IsExperienceLocked
.public IsLegendaryChallengeFloor
.public IsMonsterIdInNormalRange__022F9C68
.public IsMonsterOnTeam
.public IsPunchMove
.public IsRecoilMove
.public IsRecruitingAllowed
.public IsRegularAttackOrProjectile
.public IsSpecialStoryAlly
.public ItemZInit
.public JoinedAtRangeCheck2Veneer
.public LevitateIsActive
.public LogMessageByIdWithPopup
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public MemZero
.public MewSpawnCheck
.public MonsterIsType
.public MoveIsNotPhysical
.public MultiplyByFixedPoint
.public MultiplyFixedPoint64
.public PreprocessString
.public ResetDamageDesc
.public RestorePpAllMovesSetFlags
.public RoundUpDiv256
.public SetItemAcquired
.public SetMonsterFlag2
.public SetPokemonBattled
.public SetPokemonJoined
.public SpawnMonster
.public StringFromMessageId
.public StrncpySimpleNoPad
.public SubstitutePlaceholderStringTags
.public TryIncreaseHp
.public UpdateAiTargetPos
.public UpdateStatusIconFlags
.public ov10_022BDC68
.public ov10_022BDE50
.public ov10_022BF964
.public ov29_022E1A40
.public ov29_022E1B28
.public ov29_022E2470
.public ov29_022E272C
.public ov29_022E274C
.public ov29_022E2E54
.public ov29_022E35E4
.public ov29_022E4018
.public ov29_022E406C
.public ov29_022E5478
.public ov29_022E550C
.public ov29_022E576C
.public ov29_022E57A0
.public ov29_022E6130
.public ov29_022E617C
.public ov29_022E61C8
.public ov29_022E6214
.public ov29_022E62F0
.public ov29_022E63D8
.public ov29_022E64C4
.public ov29_022E6510
.public ov29_022E66D8
.public ov29_022E68BC
.public ov29_022E8104
.public ov29_022E81F8
.public ov29_022E9628
.public ov29_022EA370
.public ov29_022EA718
.public ov29_022EACAC
.public ov29_022EAD00
.public ov29_022EAE14
.public ov29_022EAF20
.public ov29_022EAF34
.public ov29_022ECD84
.public ov29_022EFA6C
.public ov29_022EFB04
.public ov29_022EFB20
.public ov29_022EFB84
.public ov29_022F0518
.public ov29_022F0534
.public ov29_022F05E4
.public ov29_022F0604
.public ov29_022F0780
.public ov29_022F85F0
.public ov29_022F9058
.public ov29_022F9AF4
.public ov29_022FB98C
.public ov29_022FBC94
.public ov29_022FBD24
.public ov29_022FBDE0
.public ov29_022FD318
.public ov29_022FDDC0
.public ov29_0230040C
.public ov29_02300634
.public ov29_02301D84
.public ov29_023023C0
.public ov29_02303E0C
.public ov29_02304830
.public ov29_023049A8
.public ov29_02304A48
.public ov29_02305F60
.public ov29_02306728
.public ov29_02306A00
.public ov29_02307BDC
.public ov29_02307C48
.public ov29_0230863C
.public ov29_0230F9D8
.public ov29_02313C74
.public ov29_02314D40
.public ov29_023159D4
.public ov29_02317E88
.public ov29_0231B060
.public ov29_02320788
.public ov29_02321104
.public ov29_023361D4
.public ov29_02336F4C
.public ov29_02337EC0
.public ov29_02338288
.public ov29_0233847C
.public ov29_02344B9C
.public ov29_02344BD0
.public ov29_02345A3C
.public ov29_0234969C
.public ov29_0234B034
.public ov29_0234B084
.public ov29_0234B09C
.public ov29_0234B0B4
.public ov29_0234B1A4
.public ov29_0234B250
.public ov29_0234BA54
.public ov29_0234BB50
.public ov29_0234D630
.public ov29_0234D6C8
.public ov29_0234D7C0
.public ov29_0234D838
.public ov29_0234D8A0
.public ov29_0234EE10
.public ov29_0234F008
.public sub_0200FB54
.public sub_02025314
.public sub_02025888
.public sub_0204AF00
.public sub_020534BC
.public sub_02054EC8
.public sub_02055CCC
.public sub_02055D7C
.public sub_02056698
.public sub_02056830
.public sub_020584FC
.public sub_020585B4
.public sub_02058EB0

View File

@@ -0,0 +1,19 @@
#pragma once
.public Abs
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public EntityIsValid__0230F008
.public GetDirectionTowardsPosition
.public GetItemCategoryVeneer
.public GetTile
.public IqSkillIsEnabled
.public IsTargetInRange
.public SetMonsterActionFields
.public TestItemAiFlag
.public ov29_022E1610
.public ov29_022E274C
.public ov29_02300B40
.public ov29_0230175C
.public ov29_02302368
.public ov29_0230F02C
.public ov29_0231E05C

View File

@@ -0,0 +1,91 @@
#pragma once
.public AbilityIsActive2
.public Abs
.public AddMoneyCarried
.public BinToDecFixedPoint
.public BoostSpeedOneStage
.public CeilFixedPoint
.public DisplayActions
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public EntityIsValid__0230F008
.public EntityIsValid__02311010
.public ExclusiveItemEffectFlagTest
.public ExclusiveItemEffectIsActive__02311064
.public GetApparentWeather
.public GetCurrentBagCapacity
.public GetItemCategoryVeneer
.public GetTile
.public GetTileAtEntity
.public GravityIsActive
.public HasConditionalGroundImmunity
.public HasHeldItem
.public InitMove
.public IqSkillIsEnabled
.public IsAuraBow
.public IsExperienceLocked
.public IsFloorOver
.public ItemIsActive__02311034
.public LogMessageByIdWithPopup
.public LogMessageByIdWithPopupCheckUser
.public MonsterIsType
.public MultiplyFixedPoint64
.public ShouldMonsterRunAwayVariation
.public SubFixedPoint
.public SubstitutePlaceholderStringTags
.public TickStatusTurnCounter
.public TreasureBoxDropsEnabled
.public TryIncreaseHp
.public TryWarp
.public TryWeatherFormChange
.public ov29_022E1610
.public ov29_022E274C
.public ov29_022E42E8
.public ov29_022E53F0
.public ov29_022E543C
.public ov29_022EA370
.public ov29_022EACCC
.public ov29_022EC62C
.public ov29_022F2FE4
.public ov29_022F42F8
.public ov29_022F52BC
.public ov29_022F54BC
.public ov29_022F9EA0
.public ov29_022FB718
.public ov29_02300634
.public ov29_02300818
.public ov29_02300CB0
.public ov29_02300DCC
.public ov29_0230175C
.public ov29_023058C4
.public ov29_02305C28
.public ov29_023061A8
.public ov29_02306CD0
.public ov29_02307BDC
.public ov29_0230D11C
.public ov29_02314D40
.public ov29_0231B1B8
.public ov29_0231E05C
.public ov29_02321104
.public ov29_02322374
.public ov29_02337E2C
.public ov29_02344B44
.public ov29_02344B9C
.public ov29_02344BD0
.public ov29_02345004
.public ov29_023456BC
.public ov29_02345A3C
.public ov29_02346060
.public ov29_023460DC
.public ov29_02347040
.public ov29_02347184
.public ov29_02348D00
.public ov29_02348D3C
.public ov29_02348DD8
.public ov29_02348ECC
.public ov29_0234908C
.public ov29_0234B084
.public ov29_0234B294
.public sub_0200D8AC
.public sub_0201116C
.public sub_02050FF8

View File

@@ -0,0 +1,31 @@
#pragma once
.public AbilityIsActive2
.public CalcSpeedStageWrapper
.public DisplayActions
.public EndCringeClassStatus
.public EndFrozenClassStatus
.public EntityIsValid__02311010
.public EntityIsValid__023118B4
.public ExclusiveItemEffectFlagTest
.public GetApparentWeather
.public GetRegenSpeed
.public HasHeldItem
.public IqSkillIsEnabled
.public IsFloorOver
.public LogMessageByIdWithPopupCheckUser
.public SubstitutePlaceholderStringTags
.public TickStatusTurnCounter
.public UpdateStatusIconFlags
.public ov29_02305FDC
.public ov29_023061A8
.public ov29_023064F4
.public ov29_02306728
.public ov29_023068C4
.public ov29_02306950
.public ov29_02306A00
.public ov29_02306B28
.public ov29_02306BF8
.public ov29_02306C64
.public ov29_02306CD0
.public ov29_023183E8
.public ov29_0234B294

View File

@@ -0,0 +1,71 @@
#pragma once
.public AbilityIsActive2
.public CalcSpeedStage
.public CalcSpeedStageWrapper
.public CalcStatusDuration
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public EntityIsValid__023118B4
.public EntityIsValid__02315118
.public ExclusiveItemEffectFlagTest
.public GetTile
.public GetTileAtEntity
.public HasHeldItem
.public InflictSleepStatusSingle
.public IqSkillIsEnabled
.public ItemIsActive__0231513C
.public LogMessageByIdWithPopupCheckUserTarget
.public MonsterIsType
.public MultiplyByFixedPoint
.public SubstitutePlaceholderStringTags
.public UpdateStatusIconFlags
.public ov29_022E3E74
.public ov29_022E41CC
.public ov29_022E41F0
.public ov29_022E4240
.public ov29_022E4290
.public ov29_022E4294
.public ov29_022E42E0
.public ov29_022E42E4
.public ov29_022E4338
.public ov29_022E4388
.public ov29_022E43D8
.public ov29_022E4428
.public ov29_022E44CC
.public ov29_022E451C
.public ov29_022E4B8C
.public ov29_022E4BA0
.public ov29_022E4BB4
.public ov29_022E4C00
.public ov29_022E4C4C
.public ov29_022E4D24
.public ov29_022E4D28
.public ov29_022E4DCC
.public ov29_022E4E74
.public ov29_022E4F1C
.public ov29_022E4FC0
.public ov29_022E5068
.public ov29_022E510C
.public ov29_022E51B0
.public ov29_022E5258
.public ov29_022E52F8
.public ov29_022E539C
.public ov29_022E53EC
.public ov29_022E543C
.public ov29_022E60E4
.public ov29_0230040C
.public ov29_023018AC
.public ov29_02301940
.public ov29_02301B2C
.public ov29_02302430
.public ov29_02304A48
.public ov29_02304A84
.public ov29_0230F654
.public ov29_0231B364
.public ov29_0231B4EC
.public ov29_02344B44
.public ov29_0234B034
.public ov29_0234B084
.public ov29_0234B0B4
.public sub_02025888
.public sub_020258E4

View File

@@ -0,0 +1,105 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public AiMovement
.public BoostDefensiveStat
.public BoostOffensiveStat
.public CalcStatusDuration
.public CeilFixedPoint
.public DivideInt
.public DungeonRandInt
.public EntityIsValid__02315118
.public EntityIsValid__02318D34
.public GetFloorType
.public GetMaxPp
.public GetMaxPpWrapper
.public GetMobilityType
.public GetMonsterIdFromSpawnEntry
.public GetNameWithGender
.public GetSleepAnimationId
.public GetSpriteIndex__022F7388
.public GravityIsActive
.public HasHeldItem
.public IqSkillIsEnabled
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public LogMessageWithPopupCheckUserTarget
.public LowerSpeed
.public MewSpawnCheck
.public MonsterIsType
.public MultiplyByFixedPoint
.public Strcpy
.public SubFixedPoint
.public SubstitutePlaceholderStringTags
.public TryActivateQuickFeet
.public UpdateStatusIconFlags
.public ov29_022E272C
.public ov29_022E2EC4
.public ov29_022E38E0
.public ov29_022E41B0
.public ov29_022E41DC
.public ov29_022E442C
.public ov29_022E4430
.public ov29_022E4480
.public ov29_022E456C
.public ov29_022E45B8
.public ov29_022E45CC
.public ov29_022E465C
.public ov29_022E4660
.public ov29_022E4664
.public ov29_022E4668
.public ov29_022E466C
.public ov29_022E4670
.public ov29_022E4674
.public ov29_022E46C0
.public ov29_022E46D0
.public ov29_022E46D4
.public ov29_022E4704
.public ov29_022E4714
.public ov29_022E4718
.public ov29_022E471C
.public ov29_022E476C
.public ov29_022E47B8
.public ov29_022E47BC
.public ov29_022E47C0
.public ov29_022E47C4
.public ov29_022E47C8
.public ov29_022E47CC
.public ov29_022E4868
.public ov29_022E486C
.public ov29_022E48B8
.public ov29_022E4914
.public ov29_022E4964
.public ov29_022E49B4
.public ov29_022E4A04
.public ov29_022E4A54
.public ov29_022E4AA4
.public ov29_022E4AF0
.public ov29_022E4B3C
.public ov29_022E7C60
.public ov29_022E81F8
.public ov29_022EA718
.public ov29_022EACCC
.public ov29_022F9408
.public ov29_022FB984
.public ov29_02301940
.public ov29_02301EAC
.public ov29_02302430
.public ov29_02304830
.public ov29_02304BAC
.public ov29_023066D8
.public ov29_02306728
.public ov29_02306A00
.public ov29_02314D40
.public ov29_0231B364
.public ov29_02336F4C
.public ov29_02338794
.public ov29_02339CE8
.public ov29_0234B09C
.public ov29_0234B0B4
.public sub_01FFB62C
.public sub_02001888
.public sub_02024FB8
.public sub_02050EBC
.public sub_02050F78
.public sub_02050FF8

View File

@@ -0,0 +1,8 @@
#pragma once
.public CalcStatusDuration
.public EntityIsValid__02318D34
.public EntityIsValid__02318E4C
.public LogMessageByIdWithPopupCheckUserTarget
.public SubstitutePlaceholderStringTags
.public UpdateStatusIconFlags
.public ov29_022E3F20

View File

@@ -0,0 +1,40 @@
#pragma once
.public AbilityIsActive2
.public Abs
.public CalcStatusDuration
.public CanAttackInDirection
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public EntityIsValid__02318E4C
.public EntityIsValid__02319F8C
.public ExclusiveItemEffectFlagTest
.public GetDirectionTowardsPosition
.public GetEntityMoveTargetAndRange
.public GetMoveTargetAndRange
.public GetMoveTypeForMonster
.public GetTile
.public IqSkillIsEnabled
.public IsAffectedByTaunt
.public IsAiTargetEligible
.public IsBlinded
.public IsTargetInRange
.public LogMessageByIdWithPopupCheckUserTarget
.public StatusCheckerCheck
.public SubstitutePlaceholderStringTags
.public TryAddTargetToAiTargetList
.public UpdateStatusIconFlags
.public ov29_022E274C
.public ov29_022E3F74
.public ov29_022E3F78
.public ov29_022E3F7C
.public ov29_022E3FC8
.public ov29_022E4014
.public ov29_022E4068
.public ov29_022E40B8
.public ov29_022E40BC
.public ov29_022E4108
.public ov29_022E410C
.public ov29_022E415C
.public ov29_022E41AC
.public ov29_022E543C
.public ov29_0231A364

View File

@@ -0,0 +1,59 @@
#pragma once
.public AbilityIsActive2
.public Abs
.public AiConsiderMove
.public BoostSpeedOneStage
.public CanAttackInDirection
.public DivideInt
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public EnemyEvolution
.public EntityIsValid__02319F8C
.public EntityIsValid__0231B194
.public ExclusiveItemEffectFlagTest
.public GetApparentWeather
.public GetDirectionTowardsPosition
.public GetItemMoveId16
.public GetMoveAccuracyOrAiChance
.public GetMoveTargetAndRange
.public GetMoveTypeForMonster
.public GetNumberOfAttacks
.public GetTile
.public GetTreasureBoxChances
.public HasHeldItem
.public InitMove
.public IqSkillIsEnabled
.public IsBlinded
.public IsFloorOver
.public IsMoveRangeString19
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public MonsterIsType
.public SetActionUseMoveAi
.public SubstitutePlaceholderStringTags
.public TryActivateTruant
.public UpdateAiTargetPos
.public UpdateMovePp
.public ov29_022E3ED0
.public ov29_022E4110
.public ov29_022EB4E8
.public ov29_022EB54C
.public ov29_022EB60C
.public ov29_022FA574
.public ov29_022FB9E0
.public ov29_022FBAB4
.public ov29_02300634
.public ov29_023007A8
.public ov29_023007DC
.public ov29_0230175C
.public ov29_0230B7D4
.public ov29_0230F8D0
.public ov29_02321274
.public ov29_0232145C
.public ov29_02322374
.public ov29_0232E80C
.public ov29_02333FD0
.public ov29_023440AC
.public ov29_02344160
.public ov29_02344B44
.public ov29_0234B250

View File

@@ -0,0 +1,92 @@
#pragma once
.public AbilityIsActive2
.public ApplyGummiBoostsDungeonMode
.public BoostSpeedOneStage
.public CalcDamageFixedNoCategory
.public CalcDamageProjectile
.public CalcStatusDuration
.public EnemyEvolution
.public EntityIsValid__0231B194
.public EntityIsValid__0231CBC8
.public ExclusiveItemEffectFlagTest
.public FemaleToMaleForm
.public GetActiveTeamMember
.public GetItemCategoryVeneer
.public GetSleepAnimationId
.public GetSpriteIndex__022F7388
.public InitMove
.public IqSkillIsEnabled
.public IsBagFull
.public IsShaymin
.public IsSkyExclusiveDungeon
.public LogMessageByIdWithPopupCheckUserTarget
.public RestoreMovePP
.public SubstitutePlaceholderStringTags
.public TryIncreaseHp
.public TryInflictConfusedStatus
.public TryInflictPetrifiedStatus
.public TryInflictSleepStatus
.public TryInflictSleeplessStatus
.public TryWarp
.public ViolentSeedBoost
.public ov29_022E28D4
.public ov29_022E3590
.public ov29_022E38E0
.public ov29_022E5A00
.public ov29_022E5AE4
.public ov29_022E60E4
.public ov29_022E81F8
.public ov29_022E9FD0
.public ov29_022EA370
.public ov29_022EACCC
.public ov29_022F04F0
.public ov29_022F0518
.public ov29_022F75D4
.public ov29_022F9194
.public ov29_022F9EA0
.public ov29_022FA144
.public ov29_022FB9BC
.public ov29_023007A8
.public ov29_02300B40
.public ov29_02302A5C
.public ov29_02302F88
.public ov29_02304830
.public ov29_02304BAC
.public ov29_02305C28
.public ov29_02307BDC
.public ov29_0230D11C
.public ov29_0230D440
.public ov29_0230F9A4
.public ov29_0231657C
.public ov29_02316BB0
.public ov29_023176CC
.public ov29_02317844
.public ov29_0231795C
.public ov29_02317A0C
.public ov29_02317AF4
.public ov29_02317F50
.public ov29_02317FE4
.public ov29_02318078
.public ov29_0231810C
.public ov29_0231CBEC
.public ov29_0231CC18
.public ov29_0231CC4C
.public ov29_0231CC94
.public ov29_0231CD80
.public ov29_0231CE68
.public ov29_0231CF84
.public ov29_0231D534
.public ov29_0231D680
.public ov29_0231D6E0
.public ov29_0231D74C
.public ov29_0231D7C0
.public ov29_0231D838
.public ov29_0231D9C0
.public ov29_02343CD8
.public ov29_02344B44
.public ov29_02345A3C
.public ov29_02346F14
.public ov29_0234B084
.public ov29_0234BA54
.public sub_020017EC
.public sub_0201CF80

View File

@@ -0,0 +1,120 @@
#pragma once
.public AbilityIsActive2
.public AllocAndLoadFileInPack
.public BoostOffensiveStat
.public CalcDamageFixedNoCategory
.public CanSeeInvisibleMonsters
.public CeilFixedPoint
.public CheckTeamMemberIdx__022F9C34
.public ClearMonsterActionFields
.public DisplayMessage2
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public EndFrozenClassStatus
.public EntityIsValid__0231CBC8
.public EntityIsValid__0231EDD8
.public FemaleToMaleForm
.public GetActiveTeamMember
.public GetApparentWeather
.public GetItemMoveId16
.public GetMaxPp
.public GetMobilityType
.public GetMoveBasePower
.public GetMoveCategory
.public GetMoveMaxGinsengBoost
.public GetPerformanceFlagWithChecks
.public GetTile
.public GetTileSafe
.public HandleSir0Translation
.public InitMove
.public IqSkillIsEnabled
.public IsBlinded
.public IsEdible
.public IsExperienceLocked
.public IsHM
.public IsItemValidVeneer
.public LogMessageByIdWithPopup
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public LowerDefensiveStat
.public LowerOffensiveStat
.public RestoreMovePP
.public SetMonsterActionFields
.public StairsAlwaysReachable
.public SubstitutePlaceholderStringTags
.public TryInflictBurnStatus
.public TryInflictParalysisStatus
.public TryInflictPoisonedStatus
.public TryInflictShadowHoldStatus
.public TryWarp
.public UnloadFile
.public ov29_022DD828
.public ov29_022DE47C
.public ov29_022DE608
.public ov29_022DE620
.public ov29_022E0378
.public ov29_022E0880
.public ov29_022E272C
.public ov29_022E5AE4
.public ov29_022E5BD8
.public ov29_022EA370
.public ov29_022EA428
.public ov29_022EAD00
.public ov29_022EAE14
.public ov29_022EAF20
.public ov29_022EAF34
.public ov29_022EB398
.public ov29_022EB60C
.public ov29_022EB668
.public ov29_022EFB20
.public ov29_022EFB84
.public ov29_022F04F0
.public ov29_022F0518
.public ov29_022F05E4
.public ov29_022F0780
.public ov29_022F085C
.public ov29_022F8830
.public ov29_022F9C74
.public ov29_022FA02C
.public ov29_022FA144
.public ov29_022FBA54
.public ov29_02300634
.public ov29_02300818
.public ov29_023008DC
.public ov29_023009A0
.public ov29_0230175C
.public ov29_023021F0
.public ov29_023038D4
.public ov29_02304B64
.public ov29_02305814
.public ov29_023061A8
.public ov29_023168D8
.public ov29_02316BB0
.public ov29_02319378
.public ov29_0231B4EC
.public ov29_02321104
.public ov29_023361D4
.public ov29_0233665C
.public ov29_02336A84
.public ov29_02336F4C
.public ov29_0233785C
.public ov29_02338530
.public ov29_02338548
.public ov29_02339CE8
.public ov29_02339FF4
.public ov29_0233FB1C
.public ov29_02344B44
.public ov29_0234B084
.public ov29_0234B09C
.public ov29_0234BA54
.public ov29_0234D518
.public ov30_023853BC
.public ov30_023853E0
.public ov30_02385FE0
.public ov31_023860A4
.public ov31_0238619C
.public ov31_02386204
.public ov31_02386308
.public ov31_023877EC
.public sub_02050FF8
.public sub_02053D1C

View File

@@ -0,0 +1,30 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public CalcDamageFixedNoCategory
.public DivideInt
.public DungeonRandInt
.public DungeonRandRange
.public EntityIsValid__0231F570
.public GetDirectionTowardsPosition
.public GetTile
.public HasDropeyeStatus
.public InitMove
.public LogMessageByIdWithPopupCheckUserTarget
.public SubstitutePlaceholderStringTags
.public TryWarp
.public ov29_022E1A40
.public ov29_022E272C
.public ov29_022E274C
.public ov29_022E9298
.public ov29_022EA370
.public ov29_022EACCC
.public ov29_022F85F0
.public ov29_022FF764
.public ov29_0230175C
.public ov29_023049A8
.public ov29_02304A48
.public ov29_0232033C
.public ov29_02321238
.public ov29_02324854
.public sub_020018D0

View File

@@ -0,0 +1,28 @@
#pragma once
.public Abs
.public AdvanceFrame
.public DivideInt
.public EntityIsValid__0231FBFC
.public GetTile
.public GetTileSafe
.public LogMessageByIdWithPopupCheckUser
.public MemAlloc
.public MemFree
.public ov29_022E1610
.public ov29_022E1A84
.public ov29_022E1A90
.public ov29_022E56A0
.public ov29_022F62CC
.public ov29_02304B64
.public ov29_02336694
.public ov29_02336A84
.public ov29_02336F4C
.public ov29_02337E94
.public ov29_023391EC
.public ov29_02339CE8
.public ov29_0234410C
.public ov29_0234413C
.public ov29_02345538
.public ov29_023456BC
.public ov29_023457C8
.public sub_020018D0

View File

@@ -0,0 +1,25 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public CalcDamageFixedNoCategory
.public EntityIsValid__0232017C
.public GetTile
.public InitMove
.public IsFloorOver
.public LogMessageByIdWithPopupCheckUserTarget
.public SubstitutePlaceholderStringTags
.public ov29_022E1A40
.public ov29_022E1A90
.public ov29_022E272C
.public ov29_022E56A0
.public ov29_022F85F0
.public ov29_022F9C74
.public ov29_022FFB90
.public ov29_023049A8
.public ov29_02307BDC
.public ov29_0232033C
.public ov29_02321104
.public ov29_02321238
.public ov29_0232124C
.public ov29_02324854
.public ov29_023440DC

View File

@@ -0,0 +1,32 @@
#pragma once
.public AbilityIsActive2
.public Abs
.public AdvanceFrame
.public DivideInt
.public EntityIsValid__0232017C
.public EntityIsValid__02320764
.public GetApparentWeather
.public GetTile
.public GetTileSafe
.public IsFloorOver
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public SubstitutePlaceholderStringTags
.public ov29_022E1A40
.public ov29_022E1A90
.public ov29_022E272C
.public ov29_022E5560
.public ov29_022E55F0
.public ov29_022E56A0
.public ov29_022F85F0
.public ov29_022F9C74
.public ov29_022FFB90
.public ov29_02320AA4
.public ov29_02321104
.public ov29_02321238
.public ov29_02336694
.public ov29_02336A84
.public ov29_02336F4C
.public ov29_02339CE8
.public ov29_023456BC
.public sub_020018D0

View File

@@ -0,0 +1,51 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public CalcDamageFixedNoCategory
.public CanMonsterUseMove
.public EntityIsValid__02320764
.public EntityIsValid__02321438
.public GetApparentWeather
.public GetLeader
.public GetTileSafe
.public InitMove
.public IsFloorOver
.public LogMessageByIdWithPopupCheckUserTarget
.public MonsterIsType
.public SubstitutePlaceholderStringTags
.public TryInflictPetrifiedStatus
.public UpdateMovePp
.public ov29_022E1A40
.public ov29_022E272C
.public ov29_022E2EC4
.public ov29_022E4C84
.public ov29_022E4CD4
.public ov29_022E5560
.public ov29_022E55F0
.public ov29_022E5650
.public ov29_022E9628
.public ov29_022E99F0
.public ov29_022E9A28
.public ov29_022F42F8
.public ov29_022F62CC
.public ov29_022F85F0
.public ov29_022F87C0
.public ov29_022F9C74
.public ov29_022FAA04
.public ov29_022FF958
.public ov29_022FFC9C
.public ov29_02304A48
.public ov29_02305814
.public ov29_02307BDC
.public ov29_02314D40
.public ov29_02322374
.public ov29_023247B4
.public ov29_02324854
.public ov29_02336694
.public ov29_02336A84
.public ov29_02336F4C
.public ov29_02337A3C
.public ov29_02339CE8
.public ov29_023440DC
.public ov29_023456BC
.public sub_01FFB62C

View File

@@ -0,0 +1,139 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public AnimationHasMoreFrames
.public BoostSpeedOneStage
.public CalcStatusDuration
.public DivideInt
.public DungeonRandInt
.public DungeonRandOutcome__022EAB50
.public DungeonRandRange
.public EndFrozenClassStatus
.public EnemyEvolution
.public EntityIsValid__02321438
.public EntityIsValid__02325620
.public ExclusiveItemEffectFlagTest
.public ExecuteMoveEffect
.public FailsWhileMuzzled
.public FormatMoveStringMore
.public GetApparentWeather
.public GetBodySize
.public GetDamageSource
.public GetEntityMoveTargetAndRange
.public GetInfoMoveCheckId
.public GetMonsterGenderVeneer
.public GetMoveAccuracyOrAiChance
.public GetMoveAnimation
.public GetMoveAnimationId
.public GetMoveAnimationSpeed
.public GetMoveMaxGinsengBoost
.public GetMoveMessageFromId
.public GetMoveNbStrikes
.public GetSpriteIndex__02052708
.public GetTile
.public GravityIsActive
.public HasHeldItem
.public InitMove
.public IqSkillIsEnabled
.public Is2TurnsMove
.public IsAffectedByTaunt
.public IsCopyingMove
.public IsFloorOver
.public IsTrappingMove
.public LogMessageByIdWithPopupCheckUser
.public LogMessageQuiet
.public LogMessageWithPopup
.public LogMessageWithPopupCheckUser
.public LowerSpeed
.public MoveIsNotPhysical
.public ShouldMovePlayAlternativeAnimation
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public TryInflictBurnStatus
.public TryInflictConfusedStatus
.public TryInflictConstrictionStatus
.public TryInflictCringeStatus
.public TryInflictFrozenStatus
.public TryInflictInfatuatedStatus
.public TryInflictNightmareStatus
.public TryInflictParalysisStatus
.public TryInflictPausedStatus
.public TryInflictPoisonedStatus
.public TryInflictShadowHoldStatus
.public TryInflictSleepStatus
.public TrySealMove
.public TryWarp
.public UpdateAiTargetPos
.public ov00_022BFDAC
.public ov00_022BFDEC
.public ov10_022BDE50
.public ov10_022BE9E8
.public ov10_022BEB2C
.public ov10_022BF01C
.public ov10_022BF0F4
.public ov10_022BF1FC
.public ov10_022BFA3C
.public ov10_022BFAA8
.public ov10_022BFD58
.public ov10_022BFD6C
.public ov10_022BFD8C
.public ov10_022BFDCC
.public ov29_022DE5D8
.public ov29_022DE5F0
.public ov29_022E272C
.public ov29_022E28D4
.public ov29_022E2CA0
.public ov29_022E3560
.public ov29_022E38E0
.public ov29_022E56A0
.public ov29_022E5864
.public ov29_022E5ED0
.public ov29_022E65A8
.public ov29_022E6D68
.public ov29_022EA370
.public ov29_022EACCC
.public ov29_022ED0C4
.public ov29_022ED0D4
.public ov29_022ED868
.public ov29_022F6F68
.public ov29_022F87C0
.public ov29_022F8830
.public ov29_022F88C0
.public ov29_022F9840
.public ov29_022FAA04
.public ov29_022FAFD4
.public ov29_022FB678
.public ov29_022FBAB4
.public ov29_0230040C
.public ov29_023007A8
.public ov29_02300DCC
.public ov29_0230175C
.public ov29_023024E0
.public ov29_023049A8
.public ov29_02304A48
.public ov29_02304B14
.public ov29_023068C4
.public ov29_0231657C
.public ov29_0231662C
.public ov29_023176CC
.public ov29_02318D58
.public ov29_0231B33C
.public ov29_02321288
.public ov29_02325644
.public ov29_023256B4
.public ov29_02325D20
.public ov29_02325D7C
.public ov29_023280D4
.public ov29_02337B68
.public ov29_023383A8
.public ov29_02344B9C
.public ov29_0234B034
.public ov29_0234B084
.public ov29_0234B09C
.public ov29_0234B4CC
.public sub_020018D0
.public sub_02001980
.public sub_0201CF90
.public sub_0201D1B0
.public sub_0201D1D4
.public sub_0201DA80

View File

@@ -0,0 +1,86 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public AnimationHasMoreFrames
.public ApplyDefensiveStatMultiplier
.public ApplyOffensiveStatMultiplier
.public BoostDefensiveStat
.public BoostHitChanceStat
.public BoostOffensiveStat
.public BoostSpeedOneStage
.public CalcDamageFixedWrapper
.public CalcRecoilDamageFixed
.public CalcStatusDuration
.public DealDamage
.public DungeonRandOutcomeUserAction
.public DungeonRandOutcomeUserTargetInteraction
.public DungeonRandRange
.public EntityIsValid__02325620
.public EntityIsValid__0232800C
.public ExclusiveItemEffectFlagTest
.public FormatMoveStringMore
.public GetApparentWeather
.public GetEffectAnimation
.public GetLowKickMultiplier
.public GetMoveAnimation
.public GetMoveCategory
.public GetMoveType
.public GetTileAtEntity
.public InitMove
.public LogMessageByIdWithPopupCheckUserTarget
.public LowerDefensiveStat
.public LowerHitChanceStat
.public LowerOffensiveStat
.public LowerSpeed
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public TryIncreaseHp
.public TryInflictBurnStatus
.public TryInflictConfusedStatus
.public TryInflictConstrictionStatus
.public TryInflictCringeStatus
.public TryInflictFrozenStatus
.public TryInflictNightmareStatus
.public TryInflictParalysisStatus
.public TryInflictShadowHoldStatus
.public TryInflictSleepStatus
.public TryInflictSleeplessStatus
.public TryInflictYawningStatus
.public ov10_022BED90
.public ov10_022BF160
.public ov10_022BFC5C
.public ov29_022E2CA0
.public ov29_022E5474
.public ov29_022E5ED0
.public ov29_022E6D68
.public ov29_022EA428
.public ov29_023007A8
.public ov29_02305C28
.public ov29_023061A8
.public ov29_023064F4
.public ov29_02307C78
.public ov29_0230D11C
.public ov29_02313C74
.public ov29_02314EB8
.public ov29_02315B70
.public ov29_02315C00
.public ov29_02315D84
.public ov29_02316720
.public ov29_023174C8
.public ov29_02318BBC
.public ov29_02318D58
.public ov29_02318D98
.public ov29_02319378
.public ov29_02319418
.public ov29_02319584
.public ov29_02319624
.public ov29_02319748
.public ov29_023245A4
.public ov29_02324E44
.public ov29_02332CDC
.public ov29_02332F18
.public ov29_023354C4
.public ov29_02337E2C
.public ov29_0234B034
.public ov29_0234BA54
.public sub_0201CF90

View File

@@ -0,0 +1,80 @@
#pragma once
.public AbilityIsActive2
.public BoostDefensiveStat
.public BoostHitChanceStat
.public BoostOffensiveStat
.public CalcDamage
.public CalcDamageFixedWrapper
.public CalcRecoilDamageFixed
.public DealDamage
.public DungeonRandInt
.public DungeonRandOutcomeUserAction
.public DungeonRandOutcomeUserTargetInteraction
.public EntityIsValid__0232800C
.public EntityIsValid__0232A3D8
.public ExclusiveItemEffectFlagTest
.public GetApparentWeather
.public GetMoveCategory
.public GetMoveCritChance
.public GetMovePower
.public GetMoveType
.public GetMoveTypeForMonster
.public GetTileAtEntity
.public InitMove
.public IsSameMove
.public LevitateIsActive
.public LogMessageByIdWithPopupCheckUserTarget
.public LowerDefensiveStat
.public LowerHitChanceStat
.public LowerOffensiveStat
.public RemoveEquivItemNoHole
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public TryIncreaseHp
.public TryInflictBadlyPoisonedStatus
.public TryInflictBurnStatus
.public TryInflictConfusedStatus
.public TryInflictCringeStatus
.public TryInflictFrozenStatus
.public TryInflictParalysisStatus
.public TryInflictPoisonedStatus
.public TryInflictShadowHoldStatus
.public TryWarp
.public ov29_022E56A0
.public ov29_022E5ED0
.public ov29_022EA370
.public ov29_022ECAFC
.public ov29_022F9EA0
.public ov29_022FA7DC
.public ov29_0230040C
.public ov29_023049A8
.public ov29_02307C78
.public ov29_0230D11C
.public ov29_0230D4A4
.public ov29_023163A8
.public ov29_023164D8
.public ov29_02318A90
.public ov29_02318AD4
.public ov29_02318B48
.public ov29_02318BBC
.public ov29_02318D58
.public ov29_02318E70
.public ov29_02318F10
.public ov29_02318FAC
.public ov29_023194B8
.public ov29_0231B060
.public ov29_02320448
.public ov29_023245A4
.public ov29_02324E44
.public ov29_0232A834
.public ov29_0232C310
.public ov29_0233544C
.public ov29_023354C4
.public ov29_02337E2C
.public ov29_02344BD0
.public ov29_02346F14
.public ov29_02347030
.public ov29_0234B034
.public ov29_0234B084
.public ov29_0234C668
.public ov29_0234C738

View File

@@ -0,0 +1,99 @@
#pragma once
.public AbilityIsActive2
.public AdvanceFrame
.public BoostDefensiveStat
.public BoostOffensiveStat
.public BoostSpeedOneStage
.public CalcDamageFixedWrapper
.public CalcStatusDuration
.public CeilFixedPoint
.public DealDamage
.public DefenderAbilityIsActive__02329F14
.public DivideInt
.public DungeonRandInt
.public DungeonRandOutcomeUserAction
.public DungeonRandOutcomeUserTargetInteraction
.public DungeonRandOutcome__022EAB20
.public EntityIsValid__0232A3D8
.public EntityIsValid__0232C500
.public GetMoveCategory
.public GetMoveType
.public GetTileSafe
.public InitMove
.public InitStandardItem
.public IsBagFull
.public IsExperienceLocked
.public IsFloorOver
.public ItemZInit
.public LogMessageByIdWithPopupCheckUserTarget
.public LowerDefensiveStat
.public LowerHitChanceStat
.public LowerOffensiveStat
.public LowerSpeed
.public RemoveEquivItem
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public TryBlowAway
.public TryIncreaseHp
.public TryInflictBurnStatus
.public TryInflictConfusedStatus
.public TryInflictConstrictionStatus
.public TryInflictCringeStatus
.public TryInflictDestinyBond
.public TryInflictFrozenStatus
.public TryInflictInfatuatedStatus
.public TryInflictIngrainStatus
.public TryInflictLeechSeedStatus
.public TryInflictNappingStatus
.public TryInflictParalysisStatus
.public TryInflictPausedStatus
.public TryInflictPoisonedStatus
.public TryInflictSleepStatus
.public TryInflictWrappedStatus
.public TryWarp
.public ov29_022E1A40
.public ov29_022E1A84
.public ov29_022E1A90
.public ov29_022E2CA0
.public ov29_022E38E0
.public ov29_022ED868
.public ov29_022EDCBC
.public ov29_022EF5D8
.public ov29_022F85F0
.public ov29_022F8FF8
.public ov29_022F9EA0
.public ov29_022FFB90
.public ov29_023007A8
.public ov29_0230175C
.public ov29_023049A8
.public ov29_02307C78
.public ov29_0230D11C
.public ov29_02315CE8
.public ov29_02315E24
.public ov29_023160DC
.public ov29_02316280
.public ov29_0231662C
.public ov29_0231721C
.public ov29_02318BBC
.public ov29_02318D58
.public ov29_0231904C
.public ov29_023190EC
.public ov29_0231918C
.public ov29_0231922C
.public ov29_023192DC
.public ov29_02321164
.public ov29_02321260
.public ov29_023245A4
.public ov29_02324854
.public ov29_02324D60
.public ov29_02324E44
.public ov29_02332F18
.public ov29_023361D4
.public ov29_02336F4C
.public ov29_02337B9C
.public ov29_02345AD8
.public ov29_02346F14
.public ov29_0234B084
.public sub_02025888
.public sub_02050FF8
.public sub_02054EC8

View File

@@ -0,0 +1,124 @@
#pragma once
.public AbilityIsActive2
.public BoostDefensiveStat
.public BoostOffensiveStat
.public BoostOrLowerSpeed
.public CalcDamageFixedWrapper
.public CalcRecoilDamageFixed
.public CalcStatusDuration
.public DealDamage
.public DivideInt
.public DungeonRandInt
.public DungeonRandOutcomeUserTargetInteraction
.public EntityIsValid__0232C500
.public EntityIsValid__0232E250
.public FixedRoomIsSubstituteRoom
.public GetApparentWeather
.public GetBodySize
.public GetMaxPp
.public GetMonsterIdToSpawn
.public GetMoveCategory
.public GetMoveType
.public GetNameWithGender
.public GetSize
.public GetTileAtEntity
.public GetTileSafe
.public HandleFaint
.public HasDropeyeStatus
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public LowerDefensiveStat
.public LowerHitChanceStat
.public LowerSpeed
.public MewSpawnCheck
.public StringFromMessageId
.public SubstitutePlaceholderStringTags
.public TryIncreaseHp
.public TryInflictBurnStatus
.public TryInflictCoweringStatus
.public TryInflictCringeStatus
.public TryInflictFrozenStatus
.public TryInflictParalysisStatus
.public TryInflictPetrifiedStatus
.public TryInflictSleepStatus
.public TryInflictSleeplessStatus
.public TryPounce
.public TrySwitchPlace
.public TryWarp
.public ov29_022E0880
.public ov29_022E09E8
.public ov29_022E1608
.public ov29_022E1AAC
.public ov29_022E1AD4
.public ov29_022E1EF8
.public ov29_022E333C
.public ov29_022E3430
.public ov29_022E6770
.public ov29_022E6784
.public ov29_022E7AC4
.public ov29_022E8104
.public ov29_022E81F8
.public ov29_022ED868
.public ov29_022EDBD4
.public ov29_022EDCBC
.public ov29_022EDE7C
.public ov29_022FB0A8
.public ov29_022FB214
.public ov29_022FBDE0
.public ov29_022FBDF0
.public ov29_022FD7A0
.public ov29_0230175C
.public ov29_02304B64
.public ov29_02305C28
.public ov29_02305C3C
.public ov29_023064F4
.public ov29_02307C78
.public ov29_02307D18
.public ov29_0230D874
.public ov29_0230D8E8
.public ov29_0230D95C
.public ov29_0230D9D0
.public ov29_0230DA44
.public ov29_0230DAB8
.public ov29_02315610
.public ov29_023156A0
.public ov29_0231575C
.public ov29_0231657C
.public ov29_023168D8
.public ov29_02317124
.public ov29_0231740C
.public ov29_02317648
.public ov29_023181A0
.public ov29_02318210
.public ov29_0231827C
.public ov29_0231845C
.public ov29_02318508
.public ov29_023185A8
.public ov29_0231872C
.public ov29_02318984
.public ov29_02318BBC
.public ov29_02318D58
.public ov29_02318D98
.public ov29_023197CC
.public ov29_0231AE90
.public ov29_0231EA40
.public ov29_0231EDFC
.public ov29_0231F594
.public ov29_0231F6E4
.public ov29_023245A4
.public ov29_02324E44
.public ov29_02332BB8
.public ov29_02332F18
.public ov29_023354C4
.public ov29_023361D4
.public ov29_02336694
.public ov29_02336A84
.public ov29_02336F4C
.public ov29_023383BC
.public ov29_02339CE8
.public ov29_02344BD0
.public ov29_02345A3C
.public ov29_0234B084
.public ov29_0234B0B4
.public ov29_0234BA54
.public sub_02024FB8

View File

@@ -0,0 +1,30 @@
#pragma once
.public AbilityIsActive2
.public BoostDefensiveStat
.public BoostOffensiveStat
.public BoostSpeedOneStage
.public CalcRecoilDamageFixed
.public DealDamage
.public DefenderAbilityIsActive__0232DE20
.public DungeonRandOutcomeUserTargetInteraction
.public EntityIsValid__0232E250
.public EntityIsValid__0232E840
.public LogMessageByIdWithPopupCheckUserTarget
.public LowerOffensiveStat
.public ResetHitChanceStat
.public RestoreMovePP
.public SubstitutePlaceholderStringTags
.public TryIncreaseHp
.public TryInflictBurnStatus
.public TryInflictCringeStatus
.public ov29_02305C28
.public ov29_02305FDC
.public ov29_02307C78
.public ov29_02314E60
.public ov29_0231526C
.public ov29_02318850
.public ov29_02318D98
.public ov29_0232C578
.public ov29_0232CA70
.public ov29_0234AFFC
.public sub_02054EC8

View File

@@ -0,0 +1,419 @@
#pragma once
.public AbilityIsActive2
.public Abs
.public CalcDamage
.public CanAttackInDirection
.public CanBeSnatched
.public CeilFixedPoint
.public Conversion2IsActive
.public DealDamageWithRecoil
.public DungeonRandInt
.public DungeonRandOutcomeUserAction
.public DungeonRandOutcome__022EAB20
.public EntityIsValid__0232E840
.public EntityIsValid__02333FAC
.public ExclusiveItemEffectFlagTest
.public GetApparentWeather
.public GetDirectionTowardsPosition
.public GetEntityMoveTargetAndRange
.public GetMoveCategory
.public GetMoveCritChance
.public GetMovePower
.public GetMoveTypeForMonster
.public GetTile
.public GetTileAtEntity
.public HasHeldItem
.public HasLowHealth
.public IqSkillIsEnabled
.public IsFloorOver
.public IsHealingWishOrLunarDance
.public IsReflectedByMagicCoat
.public IsSoundMove
.public LightningRodStormDrainCheck
.public LogMessageByIdQuietCheckUserTarget
.public LogMessageByIdWithPopupCheckUserTarget
.public LowerOffensiveStat
.public MonsterIsType
.public MoveHitCheck
.public SubFixedPoint
.public SubstitutePlaceholderStringTags
.public TryWarp
.public ov01_0232A078
.public ov01_0233103C
.public ov01_023310E4
.public ov01_023315F4
.public ov10_022BFD6C
.public ov29_022E0880
.public ov29_022E272C
.public ov29_022E274C
.public ov29_022E38E0
.public ov29_022E3FCC
.public ov29_022E4110
.public ov29_022E56A0
.public ov29_022E576C
.public ov29_022E6338
.public ov29_022E6388
.public ov29_022E6424
.public ov29_022EA370
.public ov29_022EA718
.public ov29_022EDC30
.public ov29_022F94F0
.public ov29_022F9744
.public ov29_022F9840
.public ov29_022FB10C
.public ov29_022FB1A8
.public ov29_022FB678
.public ov29_0230040C
.public ov29_02300634
.public ov29_023007DC
.public ov29_02300D50
.public ov29_02300DC0
.public ov29_02300DCC
.public ov29_0230175C
.public ov29_02301C2C
.public ov29_02304A48
.public ov29_02304C3C
.public ov29_02307BDC
.public ov29_0230863C
.public ov29_0230D088
.public ov29_0230D11C
.public ov29_0230D440
.public ov29_0230F654
.public ov29_02314DC4
.public ov29_02319748
.public ov29_023197CC
.public ov29_0231AD38
.public ov29_0231B0A4
.public ov29_023201D0
.public ov29_02321A78
.public ov29_02321CF0
.public ov29_0232393C
.public ov29_02324534
.public ov29_023245A4
.public ov29_0232461C
.public ov29_02324854
.public ov29_02324D60
.public ov29_02324E44
.public ov29_023256B4
.public ov29_023258EC
.public ov29_02325DC0
.public ov29_02325DE4
.public ov29_02325E64
.public ov29_02325EC4
.public ov29_02325F00
.public ov29_02325F3C
.public ov29_02325F74
.public ov29_02325FB4
.public ov29_02325FC4
.public ov29_02326088
.public ov29_023260A8
.public ov29_023260D0
.public ov29_0232612C
.public ov29_02326188
.public ov29_023261A0
.public ov29_0232620C
.public ov29_02326220
.public ov29_02326264
.public ov29_0232631C
.public ov29_02326408
.public ov29_02326550
.public ov29_02326568
.public ov29_023265A4
.public ov29_02326648
.public ov29_02326670
.public ov29_023266DC
.public ov29_02326750
.public ov29_023267D8
.public ov29_0232680C
.public ov29_023268BC
.public ov29_023268CC
.public ov29_02326908
.public ov29_0232692C
.public ov29_02326990
.public ov29_02326A0C
.public ov29_02326A74
.public ov29_02326AE8
.public ov29_02326B24
.public ov29_02326BC0
.public ov29_02326CA4
.public ov29_02326CB4
.public ov29_02326CC8
.public ov29_02326D50
.public ov29_02326DD8
.public ov29_02326E04
.public ov29_02326E20
.public ov29_02326E60
.public ov29_02326E80
.public ov29_02326E98
.public ov29_02326EB8
.public ov29_02326F48
.public ov29_02326F8C
.public ov29_02327034
.public ov29_023270B4
.public ov29_02327120
.public ov29_0232718C
.public ov29_0232724C
.public ov29_0232728C
.public ov29_023272F8
.public ov29_02327368
.public ov29_023273CC
.public ov29_02327458
.public ov29_02327598
.public ov29_0232764C
.public ov29_023276B4
.public ov29_023276E8
.public ov29_02327744
.public ov29_02327758
.public ov29_0232776C
.public ov29_023277B8
.public ov29_02327804
.public ov29_023278E8
.public ov29_02327928
.public ov29_02327940
.public ov29_023279AC
.public ov29_023279E4
.public ov29_02327A28
.public ov29_02327AF4
.public ov29_02327B5C
.public ov29_02327BE0
.public ov29_02327BF0
.public ov29_02327C08
.public ov29_02327C74
.public ov29_02327CD8
.public ov29_02327D60
.public ov29_02327DD0
.public ov29_02327DE0
.public ov29_02327E94
.public ov29_02328030
.public ov29_02328074
.public ov29_02328110
.public ov29_0232816C
.public ov29_023281D8
.public ov29_02328230
.public ov29_02328248
.public ov29_023282C8
.public ov29_02328328
.public ov29_02328394
.public ov29_023283A4
.public ov29_023284BC
.public ov29_02328528
.public ov29_02328538
.public ov29_02328698
.public ov29_02328794
.public ov29_023288C4
.public ov29_02328930
.public ov29_023289F8
.public ov29_02328A54
.public ov29_02328A74
.public ov29_02328AE0
.public ov29_02328B00
.public ov29_02328B88
.public ov29_02328C74
.public ov29_02328D44
.public ov29_02328DE4
.public ov29_02328E74
.public ov29_02328ECC
.public ov29_02328F94
.public ov29_02329000
.public ov29_02329074
.public ov29_023290CC
.public ov29_0232915C
.public ov29_023291F4
.public ov29_0232923C
.public ov29_02329258
.public ov29_023293CC
.public ov29_023293E4
.public ov29_023293F8
.public ov29_02329438
.public ov29_02329534
.public ov29_02329554
.public ov29_02329664
.public ov29_02329674
.public ov29_023296D8
.public ov29_023296F8
.public ov29_02329710
.public ov29_0232977C
.public ov29_023297F0
.public ov29_02329854
.public ov29_02329868
.public ov29_02329880
.public ov29_02329898
.public ov29_02329904
.public ov29_02329970
.public ov29_02329A9C
.public ov29_02329B68
.public ov29_02329C94
.public ov29_02329D50
.public ov29_02329F78
.public ov29_02329FB4
.public ov29_02329FE0
.public ov29_0232A04C
.public ov29_0232A058
.public ov29_0232A118
.public ov29_0232A148
.public ov29_0232A188
.public ov29_0232A220
.public ov29_0232A27C
.public ov29_0232A2AC
.public ov29_0232A2BC
.public ov29_0232A328
.public ov29_0232A340
.public ov29_0232A3FC
.public ov29_0232A414
.public ov29_0232A480
.public ov29_0232A490
.public ov29_0232A4E8
.public ov29_0232A500
.public ov29_0232A524
.public ov29_0232A5AC
.public ov29_0232A640
.public ov29_0232A688
.public ov29_0232A6EC
.public ov29_0232A8EC
.public ov29_0232AC44
.public ov29_0232AC54
.public ov29_0232AD08
.public ov29_0232AD18
.public ov29_0232AEF0
.public ov29_0232AF5C
.public ov29_0232AFA0
.public ov29_0232AFF0
.public ov29_0232B024
.public ov29_0232B118
.public ov29_0232B164
.public ov29_0232B1E4
.public ov29_0232B26C
.public ov29_0232B368
.public ov29_0232B434
.public ov29_0232B44C
.public ov29_0232B494
.public ov29_0232B500
.public ov29_0232B518
.public ov29_0232B5C8
.public ov29_0232B5E8
.public ov29_0232B6A4
.public ov29_0232B6B8
.public ov29_0232B6C8
.public ov29_0232B738
.public ov29_0232B7C0
.public ov29_0232B7D0
.public ov29_0232B7E0
.public ov29_0232B800
.public ov29_0232B820
.public ov29_0232B8A0
.public ov29_0232B8B0
.public ov29_0232B8D4
.public ov29_0232B8E4
.public ov29_0232B928
.public ov29_0232B940
.public ov29_0232B9D0
.public ov29_0232BA44
.public ov29_0232BB4C
.public ov29_0232BC34
.public ov29_0232BC64
.public ov29_0232BCC4
.public ov29_0232BE34
.public ov29_0232BE44
.public ov29_0232BF78
.public ov29_0232BF88
.public ov29_0232C028
.public ov29_0232C064
.public ov29_0232C0F4
.public ov29_0232C1A4
.public ov29_0232C27C
.public ov29_0232C300
.public ov29_0232C310
.public ov29_0232C524
.public ov29_0232C538
.public ov29_0232C560
.public ov29_0232C578
.public ov29_0232C6B4
.public ov29_0232C6F0
.public ov29_0232C818
.public ov29_0232C82C
.public ov29_0232C83C
.public ov29_0232C84C
.public ov29_0232CA14
.public ov29_0232CA2C
.public ov29_0232CA3C
.public ov29_0232CA4C
.public ov29_0232CA60
.public ov29_0232CA70
.public ov29_0232CB08
.public ov29_0232CB18
.public ov29_0232CCC4
.public ov29_0232CD90
.public ov29_0232CDA4
.public ov29_0232CE40
.public ov29_0232CE50
.public ov29_0232CE7C
.public ov29_0232CE94
.public ov29_0232CEAC
.public ov29_0232CF54
.public ov29_0232CF74
.public ov29_0232CF84
.public ov29_0232D0F0
.public ov29_0232D148
.public ov29_0232D1DC
.public ov29_0232D1EC
.public ov29_0232D1FC
.public ov29_0232D20C
.public ov29_0232D21C
.public ov29_0232D22C
.public ov29_0232D270
.public ov29_0232D280
.public ov29_0232D298
.public ov29_0232D2E8
.public ov29_0232D368
.public ov29_0232D378
.public ov29_0232D3D8
.public ov29_0232D400
.public ov29_0232D418
.public ov29_0232D4AC
.public ov29_0232D560
.public ov29_0232D620
.public ov29_0232D6B0
.public ov29_0232D6D0
.public ov29_0232D6E8
.public ov29_0232D738
.public ov29_0232D7F8
.public ov29_0232D860
.public ov29_0232D8FC
.public ov29_0232D90C
.public ov29_0232D97C
.public ov29_0232D9E4
.public ov29_0232DAD0
.public ov29_0232DC54
.public ov29_0232DC64
.public ov29_0232DCD4
.public ov29_0232DD78
.public ov29_0232DDAC
.public ov29_0232DE84
.public ov29_0232DF38
.public ov29_0232DFC8
.public ov29_0232E084
.public ov29_0232E0E4
.public ov29_0232E0F8
.public ov29_0232E130
.public ov29_0232E274
.public ov29_0232E2B8
.public ov29_0232E368
.public ov29_0232E3D0
.public ov29_0232E400
.public ov29_0232E48C
.public ov29_0232E4A0
.public ov29_0232E560
.public ov29_0232E624
.public ov29_0232E67C
.public ov29_0232E6E0
.public ov29_0232E714
.public ov29_0232E734
.public ov29_0232E744
.public ov29_0232E750
.public ov29_0232E794
.public ov29_02337E2C
.public ov29_023381C0
.public ov29_02344B44
.public ov29_0234B034
.public ov29_0234B250
.public sub_02050FF8

View File

@@ -0,0 +1,23 @@
#pragma once
.public AbilityIsActive2
.public Abs
.public AdvanceFrame
.public DungeonRandInt
.public EntityIsValid__023350D8
.public GendersEqualNotGenderless
.public GetLeader
.public GravityIsActive
.public HasHeldItem
.public IsSecretFloor
.public IsThawingMove
.public LogMessageByIdWithPopupCheckUser
.public MonsterIsType
.public TryActivateArtificialWeatherAbilities
.public TryWeatherFormChange
.public ov29_022DE608
.public ov29_022DE620
.public ov29_022E38E0
.public ov29_022E5FE8
.public ov29_023007A8
.public ov29_023354C4
.public ov29_02338A4C

View File

@@ -0,0 +1,61 @@
#pragma once
.public AbilityIsActive2
.public CalcSpeedStageWrapper
.public CalcStatusDuration
.public CeilFixedPoint
.public Conversion2IsActive
.public DebugPrint0__0200C1FC
.public DivideInt
.public DungeonGoesUp
.public EntityIsValid__023350D8
.public EntityIsValid__02337CA8
.public GetApparentWeather
.public GetBgRegionArea
.public GetLanguage
.public GetLeader
.public GetSleepAnimationId
.public GetSpriteIndex__022F7388
.public GetType
.public HasLowHealth
.public IsGoldenChamber
.public IsSecretBazaar__023385C4
.public LoadWteFromFileDirectory
.public LoadWtuFromBin
.public LogMessageByIdWithPopupCheckUser
.public ProcessWte
.public RandIntSafe
.public SetBothScreensWindowColorToDefault
.public SetScreenWindowsColor
.public TickStatusTurnCounter
.public ov10_022C2574
.public ov10_022C2588
.public ov10_022C25EC
.public ov10_022C2638
.public ov10_022C2654
.public ov10_022C26A0
.public ov10_022C26BC
.public ov10_022C2720
.public ov29_022DE0EC
.public ov29_022DE608
.public ov29_022DE620
.public ov29_022E0378
.public ov29_022E0880
.public ov29_022E2930
.public ov29_022E333C
.public ov29_022E65F4
.public ov29_022E66C4
.public ov29_022E9A6C
.public ov29_022E9F80
.public ov29_022F9408
.public ov29_022FF958
.public ov29_02304830
.public ov29_02304BAC
.public ov29_02334E70
.public ov29_023391EC
.public sub_0201E020
.public sub_0201E080
.public sub_0201E730
.public sub_0201F2A0
.public sub_0204AED0
.public sub_02051D8C
.public sub_02051E60

View File

@@ -0,0 +1,131 @@
#pragma once
.public Abs
.public AllocAndLoadFileInPack
.public DivideInt
.public DungeonRand16Bit
.public DungeonRandInt
.public DungeonRandRange
.public DungeonRngSetPrimary
.public DungeonRngSetSecondary
.public EntityIsValid__02337CA8
.public EntityIsValid__02344AF8
.public GetActiveTeamMember
.public GetDungeonMode
.public GetExclusiveItem
.public GetExplorerMazeMonster
.public GetFloorType
.public GetGold
.public GetItemCategoryVeneer
.public GetKecleonIdToSpawnByFloor
.public GetLeader
.public GetMissionEnemyMinionGroup
.public GetMissionTargetEnemy
.public GetMonsterIdFromSpawnEntry
.public GetMonsterLevelToSpawn
.public GetOutlawLeaderLevel
.public GetOutlawLevel
.public GetOutlawMinionLevel
.public GetPerformanceFlagWithChecks
.public GetSpecialTargetItem
.public GetTile
.public GetTileSafe
.public GetVictoriesOnOneFloor
.public HandleSir0Translation
.public InitStandardItem
.public IqSkillIsEnabled
.public IsBagFull
.public IsCurrentMissionType
.public IsCurrentMissionTypeExact
.public IsDestinationFloorWithMonster
.public IsExperienceLocked
.public IsGoldenChamber
.public IsItemInBag
.public IsOutlawMonsterHouseFloor
.public IsTreasureBox
.public LoadFileFromRom__02008C3C
.public LoadScriptVariableValue
.public LoadWteFromFileDirectory
.public LogMessageByIdWithPopupCheckUser
.public MemAlloc
.public MemFree
.public MemZero
.public Memcpy32
.public MultiplyByFixedPoint
.public PointsToZero
.public ProcessWte
.public RandInt
.public SetMonsterLevelAndId
.public SetVictoriesOnOneFloor
.public SpawnMonster
.public SubstitutePlaceholderStringTags
.public UnloadFile
.public ZInit8
.public ov10_022BFD20
.public ov29_022DE288
.public ov29_022E1608
.public ov29_022E2418
.public ov29_022E2498
.public ov29_022E3580
.public ov29_022E37DC
.public ov29_022E6694
.public ov29_022E66C4
.public ov29_022E7BB8
.public ov29_022E7BD0
.public ov29_022E7F7C
.public ov29_022EA370
.public ov29_022EA408
.public ov29_022ED970
.public ov29_022EDEDC
.public ov29_022EFAE8
.public ov29_022EFB20
.public ov29_022EFB84
.public ov29_022F05B4
.public ov29_022F05E4
.public ov29_022F0604
.public ov29_022F0618
.public ov29_022F062C
.public ov29_022F0654
.public ov29_022F067C
.public ov29_022F0780
.public ov29_022F07BC
.public ov29_022F07D8
.public ov29_022F0848
.public ov29_022FAFD4
.public ov29_022FBE58
.public ov29_022FE198
.public ov29_02304BAC
.public ov29_02306D54
.public ov29_0230F840
.public ov29_023361D4
.public ov29_02336204
.public ov29_023365E8
.public ov29_02336694
.public ov29_02336A4C
.public ov29_02336A84
.public ov29_02336F4C
.public ov29_02344B9C
.public ov29_02344BD0
.public ov29_02344BE4
.public ov29_02344E88
.public ov29_02345004
.public ov29_02345538
.public ov29_02348BE8
.public ov29_02349208
.public ov29_0234B09C
.public ov29_0234B1A4
.public ov29_0234C668
.public ov29_0234C738
.public sub_020018D0
.public sub_0200A174
.public sub_0200B330
.public sub_0200B3FC
.public sub_0200C008
.public sub_0200F940
.public sub_0201B9F8
.public sub_0201E13C
.public sub_0201E730
.public sub_0201F2A0
.public sub_0204AEA0
.public sub_0204AEC0
.public sub_0204AF30
.public sub_02056880

View File

@@ -0,0 +1,45 @@
#pragma once
.public AddItemToBagNoHeld
.public AddMoneyCarried
.public AdvanceFrame
.public DivideInt
.public DungeonRand16Bit
.public DungeonRandInt
.public DungeonRandRange
.public DungeonRngSetPrimary
.public DungeonRngSetSecondary
.public EntityIsValid__02345698
.public GetActualBuyPrice
.public GetActualSellPrice
.public GetCurrentBagCapacity
.public GetItemAtIdx
.public GetItemCategoryVeneer
.public GetItemToRetrieve
.public GetLeader
.public GetTile
.public GetTileSafe
.public IqSkillIsEnabled
.public IsDestinationFloorWithItem
.public LogMessageByIdWithPopupCheckUser
.public MemAlloc
.public MemFree
.public RemoveEmptyItemsInBag
.public RemoveEquivItemNoHole
.public ShouldMonsterRunAwayVariation
.public SubstitutePlaceholderStringTags
.public ov29_022E1610
.public ov29_022E2314
.public ov29_022E7AC4
.public ov29_022EACCC
.public ov29_022FB920
.public ov29_023456BC
.public ov29_02347040
.public ov29_023472C4
.public ov29_02348D3C
.public ov29_02348DD8
.public ov29_02348ECC
.public ov29_0234B084
.public ov29_0234CCB4
.public sub_0200CCE0
.public sub_0200D8AC
.public sub_02024FE8

View File

@@ -0,0 +1,94 @@
#pragma once
.public AbilityIsActive2
.public Abs
.public AddMoneyCarried
.public AdvanceFrame
.public ApplyItemEffect
.public ClearItem
.public DisplayMessage2
.public DivideInt
.public DungeonRand16Bit
.public DungeonRandInt
.public DungeonRandOutcome__022EAB20
.public EntityIsValid__02345698
.public EntityIsValid__02347BA4
.public ExclusiveItemEffectFlagTest
.public GetActiveTeamMember
.public GetActualBuyPrice
.public GetActualSellPrice
.public GetCurrentBagCapacity
.public GetExclusiveItem
.public GetItemAtIdx
.public GetItemCategoryVeneer
.public GetItemMoveId16
.public GetItemSpriteId
.public GetLeader
.public GetTile
.public GetTileSafe
.public GetTreasureBoxChances
.public InitMove
.public InitStandardItem
.public IqSkillIsEnabled
.public IsCurrentMissionType
.public IsHM
.public IsMonsterIdInNormalRange__02056294
.public IsNotMoney
.public IsUnown
.public ItemZInit
.public LogMessageByIdQuiet
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public LogMessageByIdWithPopupCheckUserUnknown
.public RemoveEmptyItemsInBag
.public RetrieveFromItemList1
.public SetItemAcquired
.public SubstitutePlaceholderStringTags
.public TestItemAiFlag
.public ov29_022E0880
.public ov29_022E08A0
.public ov29_022E09E8
.public ov29_022E1610
.public ov29_022E1A40
.public ov29_022E1A84
.public ov29_022E1A90
.public ov29_022E272C
.public ov29_022E563C
.public ov29_022E9488
.public ov29_022EACBC
.public ov29_022EB44C
.public ov29_022EB5D8
.public ov29_022EBB8C
.public ov29_022EBB98
.public ov29_022FAFD4
.public ov29_022FB51C
.public ov29_022FB920
.public ov29_022FBA54
.public ov29_022FBA70
.public ov29_023009A0
.public ov29_02307BDC
.public ov29_023186CC
.public ov29_02324854
.public ov29_02337E94
.public ov29_02338430
.public ov29_023391EC
.public ov29_02344B44
.public ov29_02344B70
.public ov29_02344BF8
.public ov29_02345538
.public ov29_02348020
.public ov29_0234B084
.public ov29_0234B4CC
.public ov29_0234D518
.public sub_020018D0
.public sub_0200CC38
.public sub_0200CCE0
.public sub_0200CF6C
.public sub_0200D1FC
.public sub_0200D894
.public sub_0200D8AC
.public sub_0200F910
.public sub_0201B9F8
.public sub_02024FE8
.public sub_0204F7A8
.public sub_02053D1C
.public sub_02057CE8

View File

@@ -0,0 +1,81 @@
#pragma once
.public Abs
.public AdvanceFrame
.public ApplyItemEffect
.public CheckAcceptedMissionByTypeAndDungeon
.public DisplayMessage
.public DisplayMessage2
.public DivideInt
.public DungeonRandInt
.public EntityIsValid__0234987C
.public ExclusiveItemEffectFlagTest
.public ExclusiveItemEffectIsActive__02347B80
.public GetAcceptedMission
.public GetBgRegionArea
.public GetForcedLossReason
.public GetLeader
.public GetMaxPp
.public GetName
.public GetSpriteFileSize
.public GetTile
.public InitMove
.public IsItemInBag
.public IsItemWithFlagsInBag
.public ItemIsActive__02347B50
.public LoadMonsterSprite
.public LogMessageByIdWithPopupCheckUser
.public LogMessageByIdWithPopupCheckUserTarget
.public MemAlloc
.public MemFree
.public MemZero
.public Strcpy
.public SubstitutePlaceholderStringTags
.public ov29_022E09E8
.public ov29_022E0DD8
.public ov29_022E0DE4
.public ov29_022E0DFC
.public ov29_022E0E44
.public ov29_022E1A84
.public ov29_022E274C
.public ov29_022E2CA0
.public ov29_022E9488
.public ov29_022FB9BC
.public ov29_023009CC
.public ov29_02304A84
.public ov29_02307BDC
.public ov29_02324854
.public ov29_02336224
.public ov29_02337E94
.public ov29_023386B0
.public ov29_02344B44
.public ov29_02344B70
.public ov29_02344B9C
.public ov29_023457C8
.public ov29_02345AD8
.public ov29_023498A0
.public ov29_02349A70
.public ov29_02349AD4
.public ov29_0234A244
.public ov29_0234A790
.public ov29_0234A8BC
.public ov29_0234AA98
.public ov29_0234ABB0
.public ov29_0234AC8C
.public ov29_0234B06C
.public ov29_0234B0B4
.public ov29_0234B4CC
.public ov29_0234BAC0
.public ov29_0234C668
.public ov29_0234C738
.public ov29_0234D518
.public sub_020018D0
.public sub_02011220
.public sub_02015328
.public sub_0201551C
.public sub_02015588
.public sub_020178A8
.public sub_02017A00
.public sub_02017A20
.public sub_02024FB8
.public sub_02051DFC
.public sub_02051EB8

View File

@@ -0,0 +1,237 @@
#pragma once
.public AdvanceFrame
.public CreateDBox
.public CreatePortraitBox
.public DebugPrint0__0200C1FC
.public DungeonAlloc
.public DungeonFree
.public DungeonRandInt
.public DungeonZInit
.public EntityIsValid__0234987C
.public FemaleToMaleForm
.public FixedRoomIsSubstituteRoom
.public FreeDBox
.public FreePortraitBox
.public GetAcceptedMission
.public GetDungeonPtrMaster
.public GetDungeonTipShown
.public GetEvoParameters
.public GetForcedLossReason
.public GetGameMode
.public GetItemCategoryVeneer
.public GetItemToDeliver
.public GetItemToRetrieve
.public GetLeader
.public GetMissionTargetEnemy
.public GetMonsterGenderVeneer
.public GetMonsterPreEvolution
.public GetName
.public GetPerformanceFlagWithChecks
.public GetSecondFormIfValid
.public GetSpecialTargetItem
.public GetTargetMonsterNotFoundFlag
.public HandleFaint
.public HidePortraitBox
.public InitPortraitBox
.public InitPreprocessorArgs
.public IsCastform
.public IsCherrim
.public IsCurrentMissionType
.public IsCurrentMissionTypeExact
.public IsDBoxActive
.public IsDestinationFloorWithFleeingOutlaw
.public IsDestinationFloorWithHiddenOutlaw
.public IsExperienceLocked
.public IsFutureDungeon
.public IsJirachiChallengeFloor
.public IsSecretFloor
.public ItemZInit
.public LoadOverlay
.public LoadScriptVariableValue
.public MemAlloc
.public MemFree
.public MemZero
.public OverlayIsLoaded
.public PreprocessString
.public RunDungeon
.public SetAdventureLogDungeonFloor
.public SetBothScreensWindowsColor
.public SetDungeonTipShown
.public SetPortraitUnknownAttr
.public ShouldMonsterHeadToStairs
.public ShowPortraitBox
.public StringFromMessageId
.public Strlen
.public Strncmp
.public Strncpy
.public SubstitutePlaceholderStringTags
.public UnloadOverlay
.public ov10_022BF764
.public ov10_022BF7D4
.public ov10_022BFD20
.public ov29_022DC61C
.public ov29_022DC65C
.public ov29_022DC670
.public ov29_022DDC00
.public ov29_022DDCA0
.public ov29_022DDD50
.public ov29_022DDDA4
.public ov29_022DDE00
.public ov29_022DDE24
.public ov29_022DDEF8
.public ov29_022DDFF0
.public ov29_022DDFFC
.public ov29_022DE0A0
.public ov29_022DE0CC
.public ov29_022DE300
.public ov29_022DE418
.public ov29_022DE498
.public ov29_022DE868
.public ov29_022DEBA4
.public ov29_022DEBB0
.public ov29_022E09E8
.public ov29_022E0A64
.public ov29_022E0B44
.public ov29_022E0B60
.public ov29_022E0CFC
.public ov29_022E0E8C
.public ov29_022E0F14
.public ov29_022E272C
.public ov29_022E274C
.public ov29_022E2CA0
.public ov29_022E38E0
.public ov29_022E550C
.public ov29_022E68F0
.public ov29_022E6DD0
.public ov29_022E8244
.public ov29_022E9F9C
.public ov29_022E9FC0
.public ov29_022EA008
.public ov29_022EA370
.public ov29_022EA428
.public ov29_022EAC8C
.public ov29_022EACBC
.public ov29_022EACE4
.public ov29_022EAD00
.public ov29_022EAE14
.public ov29_022EAEFC
.public ov29_022EAF34
.public ov29_022EAFB0
.public ov29_022F2FE4
.public ov29_022F42D8
.public ov29_022F99EC
.public ov29_022FA3D4
.public ov29_022FBA54
.public ov29_022FBBEC
.public ov29_023009CC
.public ov29_02300B04
.public ov29_02305C28
.public ov29_0231ADA8
.public ov29_0231AF24
.public ov29_023361D4
.public ov29_023363EC
.public ov29_02337EE8
.public ov29_02337F98
.public ov29_0233804C
.public ov29_02339148
.public ov29_0233992C
.public ov29_0233A248
.public ov29_02344B44
.public ov29_02344B9C
.public ov29_023456BC
.public ov29_02347030
.public ov29_02348888
.public ov29_02348A18
.public ov29_023491A4
.public ov29_023491B8
.public ov29_02349208
.public ov29_023496B0
.public ov30_02382820
.public ov30_02382874
.public ov30_0238298C
.public ov30_023829A0
.public ov30_023829CC
.public ov30_02382A34
.public ov30_02382C30
.public ov30_02382C68
.public ov30_023842F4
.public sub_02001808
.public sub_0200383C
.public sub_020038D8
.public sub_020038E8
.public sub_02003990
.public sub_020039E4
.public sub_02003A40
.public sub_02006B70
.public sub_02006EC4
.public sub_02008ED0
.public sub_02008F3C
.public sub_02008F84
.public sub_02008F88
.public sub_02009120
.public sub_02009194
.public sub_020091B0
.public sub_020091CC
.public sub_020091F8
.public sub_020093BC
.public sub_02009514
.public sub_0200B330
.public sub_0200B3D4
.public sub_02017A68
.public sub_02017A80
.public sub_02017B70
.public sub_02017BEC
.public sub_02017C10
.public sub_0201BE28
.public sub_0201BE5C
.public sub_0201BE84
.public sub_0201BF4C
.public sub_0201BF64
.public sub_0201D7E0
.public sub_0201D804
.public sub_0201DDFC
.public sub_0201DE10
.public sub_0201E730
.public sub_0201F2A0
.public sub_0201F464
.public sub_02024FB8
.public sub_02025784
.public sub_02027148
.public sub_0202715C
.public sub_020282F4
.public sub_0202836C
.public sub_02028848
.public sub_02028A64
.public sub_02028E2C
.public sub_02028E40
.public sub_02028E88
.public sub_0202A5CC
.public sub_0202AABC
.public sub_0202AB94
.public sub_0202ABB0
.public sub_0202F23C
.public sub_0202F334
.public sub_0202F474
.public sub_0202FFB0
.public sub_02030044
.public sub_0203010C
.public sub_020301F4
.public sub_02030214
.public sub_02034710
.public sub_02034A80
.public sub_02047FFC
.public sub_0204804C
.public sub_020480CC
.public sub_02048134
.public sub_02048150
.public sub_02048240
.public sub_0204833C
.public sub_02048360
.public sub_02048DC4
.public sub_0204AFF8
.public sub_0204D894
.public sub_0204F9CC
.public sub_02051DD0
.public sub_02051E60
.public sub_0205BAB0
.public sub_020778D0

View File

@@ -0,0 +1,64 @@
#pragma once
.public AdvanceFrame
.public DisplayMessage
.public EntityIsValid__0234DDD0
.public EntityIsValid__0234EC14
.public GetActiveTeamMember
.public GetItemMoveId16
.public GetLeader
.public GetTile
.public InitMove
.public LoadOverlay
.public OverlayIsLoaded
.public StrncpySimple
.public UnloadOverlay
.public ov29_022E0B44
.public ov29_022E2A78
.public ov29_022E9618
.public ov29_022EA370
.public ov29_022EA428
.public ov29_022EB398
.public ov29_022EB54C
.public ov29_022F0B8C
.public ov29_022F0B9C
.public ov29_022F0C1C
.public ov29_022F0C3C
.public ov29_022F4370
.public ov29_022F44F0
.public ov29_022F5A0C
.public ov29_022F5DC0
.public ov29_022F98B4
.public ov29_022FB920
.public ov29_02302388
.public ov29_0231DA80
.public ov29_0231DBF0
.public ov29_0231DD60
.public ov29_02337428
.public ov29_0233779C
.public ov29_0234B034
.public ov29_0234B1A4
.public ov29_0234EC38
.public ov29_0234ED30
.public ov29_0234FA24
.public ov30_02382820
.public ov30_02382E08
.public ov30_02382E18
.public ov30_0238367C
.public ov30_023838E4
.public ov30_023851C0
.public ov30_023853BC
.public ov30_02385FE0
.public ov31_023860A4
.public ov31_0238619C
.public ov31_02386C6C
.public ov31_0238704C
.public ov31_02387660
.public ov31_02387688
.public ov31_0238878C
.public sub_0200B330
.public sub_0200B3D4
.public sub_02025888
.public sub_020282F4
.public sub_0202AABC
.public sub_0202AAE8
.public sub_0204AF20

View File

@@ -0,0 +1,87 @@
#pragma once
.public AdvanceFrame
.public Arm9LoadUnkFieldNa0x2029EC8
.public Arm9StoreUnkFieldNa0x2029ED8
.public CheckTeamMemberIdx__022F9C34
.public DisplayMessage
.public DungeonGoesUp
.public DungeonRequestsDoneWrapper
.public EntityIsValid__0234EC14
.public GetAcceptedMission
.public GetActiveTeamMember
.public GetDungeonMode
.public GetKeyboardStatus
.public GetKeyboardStringResult
.public GetPerformanceFlagWithChecks
.public IsExperienceLocked
.public JoinedAtRangeCheck2
.public JoinedAtRangeCheck2Veneer
.public MemAlloc
.public MemFree
.public MemZero
.public OpenMessageLog
.public PreprocessString
.public ShowKeyboard
.public StoryRestrictionsEnabled
.public StringFromMessageId
.public StrncpySimple
.public StrncpySimpleNoPadSafe
.public ov29_022E8708
.public ov29_022E8768
.public ov29_022E87DC
.public ov29_022E87FC
.public ov29_022E8810
.public ov29_022E8834
.public ov29_022E8848
.public ov29_022EA370
.public ov29_022EA428
.public ov29_022F0C98
.public ov29_02300818
.public ov29_023361D4
.public ov29_02347100
.public ov29_0234DD90
.public ov29_0234DDA0
.public ov29_0234DDB0
.public ov29_0234E9E8
.public ov29_0234EA18
.public ov29_0234EB28
.public ov29_0234EBAC
.public ov29_0234EBCC
.public ov30_02382820
.public ov30_023833D8
.public ov30_02383434
.public ov31_0238647C
.public ov31_02388114
.public ov31_02388444
.public ov31_02388534
.public ov31_023886D4
.public ov31_023886DC
.public ov31_02388714
.public ov31_02388E88
.public ov31_0238941C
.public sub_0200B3D4
.public sub_02026214
.public sub_020282F4
.public sub_0202A5CC
.public sub_0202AABC
.public sub_0202AB40
.public sub_0202AB80
.public sub_0202ABB0
.public sub_0202F8C4
.public sub_0202F8FC
.public sub_0202F954
.public sub_020305E4
.public sub_0203083C
.public sub_020308A0
.public sub_020348E4
.public sub_02037468
.public sub_0203909C
.public sub_02039218
.public sub_0203931C
.public sub_0204E114
.public sub_0204F10C
.public sub_0204F1B4
.public sub_02056264
.public sub_0205B77C
.public sub_02061DC8
.public sub_02061F44

File diff suppressed because it is too large Load Diff

1874
asm/overlay_29_022E1A40.s Normal file

File diff suppressed because it is too large Load Diff

377
asm/overlay_29_022E330C.s Normal file
View File

@@ -0,0 +1,377 @@
.include "asm/macros.inc"
.include "overlay_29_022E330C.inc"
.text
arm_func_start ItemIsActive__022E330C
ItemIsActive__022E330C: ; 0x022E330C
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r1, #0x6f
mov r5, r0
bl AbilityIsActive2
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
bl HasHeldItem
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ItemIsActive__022E330C
arm_func_start ov29_022E333C
ov29_022E333C: ; 0x022E333C
ldr r0, _022E3358 ; =0x02353538
ldr r0, [r0]
add r0, r0, #0x1a000
ldrb r0, [r0, #0x23d]
cmp r0, #0
moveq r0, #2
bx lr
.align 2, 0
_022E3358: .word 0x02353538
arm_func_end ov29_022E333C
arm_func_start ov29_022E335C
ov29_022E335C: ; 0x022E335C
stmdb sp!, {r3, r4, r5, lr}
ldr r0, _022E3428 ; =0x02353538
mov r5, #0
ldr r0, [r0]
add r0, r0, #0x1a000
ldrb r1, [r0, #0x24d]
ldr r4, [r0, #0x22c]
cmp r1, #0
bne _022E33A0
bl ov10_022BFD20
cmp r0, #0
bne _022E33A0
cmp r4, #0
beq _022E33A0
ldr r0, [r4]
cmp r0, #1
moveq r5, #1
_022E33A0:
cmp r5, #0
bne _022E33B0
bl ov29_022E2C6C
ldmia sp!, {r3, r4, r5, pc}
_022E33B0:
ldr r0, _022E3428 ; =0x02353538
ldr r0, [r0]
add r0, r0, #0x21c
add r4, r0, #0x1a000
ldr r0, [r4, #0x10]
ldr r5, [r0, #0xb4]
bl ov29_02335A10
ldr r1, _022E3428 ; =0x02353538
ldr r0, _022E342C ; =0x000003E7
ldr r1, [r1]
ldrb r2, [r1, #0x749]
ldrsh r1, [r1, #0x1e]
add r1, r2, r1
strh r1, [r4, #0x3c]
ldrsh r2, [r5, #0x12]
ldrsh r1, [r5, #0x16]
add r1, r2, r1
cmp r1, r0
movgt r1, r0
strh r1, [r4, #0x42]
ldrsh r0, [r5, #0x10]
strh r0, [r4, #0x40]
ldrb r0, [r5, #0xa]
strh r0, [r4, #0x3e]
ldrsh r1, [r4, #0x42]
mov r0, r1, asr #2
add r0, r1, r0, lsr #29
mov r0, r0, asr #3
strh r0, [r4, #0x44]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
_022E3428: .word 0x02353538
_022E342C: .word 0x000003E7
arm_func_end ov29_022E335C
arm_func_start ov29_022E3430
ov29_022E3430: ; 0x022E3430
stmdb sp!, {r3, r4, r5, r6, r7, lr}
ldr r1, _022E34A8 ; =0x02353538
mov r7, #0
ldr r1, [r1]
mov r4, r0
mov r2, #1
add r0, r1, #0x1a000
strb r2, [r0, #0x23f]
mov r5, r7
_022E3454:
mov r6, r5
_022E3458:
mov r0, r6
mov r1, r7
bl GetTileSafe
ldrh r1, [r0, #2]
add r6, r6, #1
cmp r6, #0x38
orr r1, r1, #1
strh r1, [r0, #2]
blt _022E3458
add r7, r7, #1
cmp r7, #0x20
blt _022E3454
mov r0, #0
bl ov29_022E2EC4
bl ov29_02336F4C
bl ov29_02339CE8
ldr r1, _022E34AC ; =0x00000B77
mov r0, r4
bl LogMessageByIdWithPopupCheckUser
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
_022E34A8: .word 0x02353538
_022E34AC: .word 0x00000B77
arm_func_end ov29_022E3430
arm_func_start ov29_022E34B0
ov29_022E34B0: ; 0x022E34B0
ldr r1, _022E34C4 ; =0x02353538
ldr r1, [r1]
add r1, r1, #0x1a000
strb r0, [r1, #0x24c]
bx lr
.align 2, 0
_022E34C4: .word 0x02353538
arm_func_end ov29_022E34B0
arm_func_start ov29_022E34C8
ov29_022E34C8: ; 0x022E34C8
ldr r0, _022E352C ; =0x02353538
ldr r3, [r0]
add r0, r3, #0x1a000
ldr r2, [r0, #0x234]
cmp r2, #0
bxeq lr
ldr r1, _022E3530 ; =0x0235110C
cmp r2, #0x1f
movge r2, #0x1f
ldr r2, [r1, r2, lsl #2]
add r0, r3, #0x1a000
ldr r1, _022E352C ; =0x02353538
str r2, [r0, #0x230]
ldr r0, [r1]
add r0, r0, #0x1a000
ldr r2, [r0, #0x234]
sub r2, r2, #1
str r2, [r0, #0x234]
ldr r0, [r1]
add r0, r0, #0x1a000
ldr r1, [r0, #0x234]
cmp r1, #0
ldreq r1, [r0, #0x238]
streq r1, [r0, #0x234]
bx lr
.align 2, 0
_022E352C: .word 0x02353538
_022E3530: .word 0x0235110C
arm_func_end ov29_022E34C8
arm_func_start ov29_022E3534
ov29_022E3534: ; 0x022E3534
ldrb r1, [r0, #0x34]
cmp r1, #0
bne _022E3558
ldrb r1, [r0, #0x23]
cmp r1, #0
ldreqb r0, [r0, #0x24]
cmpeq r0, #0
movne r0, #1
bxne lr
_022E3558:
mov r0, #0
bx lr
arm_func_end ov29_022E3534
arm_func_start ov29_022E3560
ov29_022E3560: ; 0x022E3560
ldr r1, _022E356C ; =0x0235354C
strb r0, [r1]
bx lr
.align 2, 0
_022E356C: .word 0x0235354C
arm_func_end ov29_022E3560
arm_func_start ov29_022E3570
ov29_022E3570: ; 0x022E3570
ldr r0, _022E357C ; =0x0235354C
ldrb r0, [r0]
bx lr
.align 2, 0
_022E357C: .word 0x0235354C
arm_func_end ov29_022E3570
arm_func_start ov29_022E3580
ov29_022E3580: ; 0x022E3580
ldr ip, _022E358C ; =ov10_022BF8E8
mov r0, #0
bx ip
.align 2, 0
_022E358C: .word ov10_022BF8E8
arm_func_end ov29_022E3580
arm_func_start ov29_022E3590
ov29_022E3590: ; 0x022E3590
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x10
mov r5, r1
mov r6, r0
mov r0, r5
mov r4, r2
bl GetEffectAnimationField0x19
mov r3, r0
mov r0, #2
mov ip, #0
stmia sp, {r0, ip}
sub r0, ip, #1
str r0, [sp, #8]
mov r0, r6
mov r1, r5
mov r2, r4
and r3, r3, #0xff
str ip, [sp, #0xc]
bl ov29_022E35E4
add sp, sp, #0x10
ldmia sp!, {r4, r5, r6, pc}
arm_func_end ov29_022E3590
arm_func_start ov29_022E35E4
ov29_022E35E4: ; 0x022E35E4
stmdb sp!, {r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x30
mov r8, r0
mov r5, r1
mov r4, r2
mov r7, r3
bl EntityIsValid__022E37B8
cmp r0, #0
mvneq r0, #0
beq _022E37A8
mov r0, r8
ldr r6, [r8, #0xb4]
bl ov29_022E5ED0
cmp r0, #0
mvneq r0, #0
beq _022E37A8
ldrb r0, [sp, #0x4c]
cmp r0, #0
ldreqb r0, [r6, #0x10b]
cmpeq r0, #2
mvneq r0, #0
beq _022E37A8
ldr r0, [sp, #0x48]
cmp r0, #0
beq _022E365C
cmp r0, #2
moveq r0, #1
movne r0, #0
and r0, r0, #0xff
bl ov29_022E38E0
_022E365C:
add r0, sp, #0
mov r2, r7
add r1, r8, #0x2c
bl sub_0201CF90
ldrsh r7, [sp]
cmp r7, #0x63
ldrnesh r2, [sp, #2]
cmpne r2, #0x63
ldreq r1, [r8, #0x10]
ldreq r0, [r6, #0x188]
ldreq r7, [r8, #0xc]
subeq r8, r1, r0
beq _022E36A8
ldr r1, [r8, #0x10]
ldr r3, [r8, #0xc]
ldr r0, [r6, #0x188]
add r2, r1, r2, lsl #8
add r7, r3, r7, lsl #8
sub r8, r2, r0
_022E36A8:
ldr r0, _022E37B0 ; =0x02353538
ldr r2, _022E37B4 ; =0x0001A226
ldr r3, [r0]
add r0, sp, #4
ldrsh r2, [r3, r2]
rsb r6, r2, r1, asr #8
bl ov10_022BF274
ldrsh r0, [sp, #0x50]
mov r1, #0
str r5, [sp, #4]
str r1, [sp, #8]
cmp r0, #0
blt _022E36E4
cmp r0, #8
ble _022E36F0
_022E36E4:
mvn r0, #0
str r0, [sp, #0xc]
b _022E36F4
_022E36F0:
str r0, [sp, #0xc]
_022E36F4:
add r0, r6, r6, lsr #31
mov r0, r0, asr #1
mov r1, #0
ldr r3, [sp, #0x54]
mov r6, r7, asr #8
mov r5, r8, asr #8
add r0, r0, #1
mvn r2, #0
strh r6, [sp, #0x10]
strh r5, [sp, #0x12]
strb r2, [sp, #0x18]
strh r1, [sp, #0x14]
strh r1, [sp, #0x16]
str r0, [sp, #0x1c]
cmp r3, #0
bne _022E3740
add r0, sp, #0x20
bl sub_0201C000
b _022E3758
_022E3740:
add r2, sp, #0x20
mov r1, #6
_022E3748:
ldrh r0, [r3], #2
subs r1, r1, #1
strh r0, [r2], #2
bne _022E3748
_022E3758:
add r0, sp, #4
mov r1, #0
bl ov10_022BF2B4
cmp r4, #0
beq _022E37A8
mov r0, r0, lsl #0x10
mov r6, #0
mov r5, r0, asr #0x10
mov r4, #0x42
b _022E379C
_022E3780:
mov r0, r5
bl AnimationHasMoreFrames
cmp r0, #0
beq _022E37A4
mov r0, r4
bl AdvanceFrame
add r6, r6, #1
_022E379C:
cmp r6, #0x64
blt _022E3780
_022E37A4:
mvn r0, #0
_022E37A8:
add sp, sp, #0x30
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
_022E37B0: .word 0x02353538
_022E37B4: .word 0x0001A226
arm_func_end ov29_022E35E4

7446
asm/overlay_29_022E37DC.s Normal file

File diff suppressed because it is too large Load Diff

1621
asm/overlay_29_022E9618.s Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

565
asm/overlay_29_022EC62C.s Normal file
View File

@@ -0,0 +1,565 @@
.include "asm/macros.inc"
.include "overlay_29_022EC62C.inc"
.text
arm_func_start ov29_022EC62C
ov29_022EC62C: ; 0x022EC62C
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
mov r6, r0
bl GetLeader
cmp r6, r0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
ldr r7, _022EC6D8 ; =0x02353538
ldr r1, [r7]
ldrb r0, [r1, #0x10]
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
mov r4, #0
strb r4, [r1, #0x10]
mov sb, r4
mov r8, r4
b _022EC6CC
_022EC668:
ldr r0, [r7]
add r0, r0, r4, lsl #2
add r0, r0, #0x12000
ldr r5, [r0, #0xb78]
mov r0, r5
bl EntityIsValid__022EC608
cmp r0, #0
cmpne r6, r5
beq _022EC6C8
ldr r0, [r5, #0xb4]
ldrh r0, [r0]
tst r0, #0x8000
beq _022EC6C8
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
mov r0, r5
mov r1, sb
bl RunMonsterAi
mov r0, r5
bl ExecuteMonsterAction
bl ov29_022EF9C8
mov r0, r8
bl TryForcedLoss
_022EC6C8:
add r4, r4, #1
_022EC6CC:
cmp r4, #0x14
blt _022EC668
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
.align 2, 0
_022EC6D8: .word 0x02353538
arm_func_end ov29_022EC62C
arm_func_start TrySpawnMonsterAndActivatePlusMinus
TrySpawnMonsterAndActivatePlusMinus: ; 0x022EC6DC
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
ldr r0, _022EC7E0 ; =0x02353538
ldr r1, _022EC7E4 ; =0x023522B6
ldr r0, [r0]
add r0, r0, #0x700
ldrsh r0, [r0, #0x80]
mov r0, r0, lsl #1
ldrsh r0, [r1, r0]
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl TrySpawnMonsterAndTickSpawnCounter
ldr r4, _022EC7E0 ; =0x02353538
mov r8, #0
ldr r0, [r4]
mov fp, #1
add r0, r0, #0x3000
strb r8, [r0, #0xe34]
ldr r0, [r4]
mov r7, r8
add r0, r0, #0x3000
strb r8, [r0, #0xe35]
ldr r0, [r4]
mov r6, fp
add r0, r0, #0x3000
strb r8, [r0, #0xe36]
ldr r0, [r4]
mov r5, fp
add r0, r0, #0x3000
strb r8, [r0, #0xe37]
_022EC750:
ldr r0, [r4]
add r0, r0, r8, lsl #2
add r0, r0, #0x12000
ldr sb, [r0, #0xb78]
mov r0, sb
bl EntityIsValid__022EC608
cmp r0, #0
beq _022EC7C8
ldr r0, [sb, #0xb4]
mov r1, #0x3f
strb r7, [r0, #0x152]
ldrb r0, [r0, #6]
cmp r0, #0
moveq sl, fp
mov r0, sb
movne sl, r7
bl AbilityIsActive2
cmp r0, #0
ldrne r0, [r4]
mov r1, #0x38
addne r0, r0, sl
addne r0, r0, #0x3000
strneb r6, [r0, #0xe36]
mov r0, sb
bl AbilityIsActive2
cmp r0, #0
ldrne r0, [r4]
addne r0, r0, sl
addne r0, r0, #0x3000
strneb r5, [r0, #0xe34]
_022EC7C8:
add r8, r8, #1
cmp r8, #0x14
blt _022EC750
mov r0, #0
bl TryForcedLoss
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_022EC7E0: .word 0x02353538
_022EC7E4: .word 0x023522B6
arm_func_end TrySpawnMonsterAndActivatePlusMinus
arm_func_start IsFloorOver
IsFloorOver: ; 0x022EC7E8
stmdb sp!, {r3, lr}
ldr r0, _022EC858 ; =0x02353538
ldr r0, [r0]
ldrb r0, [r0, #8]
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, pc}
bl GetLeader
cmp r0, #0
ldreq r1, _022EC858 ; =0x02353538
moveq r0, #1
ldreq r1, [r1]
streqb r0, [r1, #0x758]
ldmeqia sp!, {r3, pc}
ldr r0, _022EC858 ; =0x02353538
ldr r1, [r0]
ldrb r0, [r1, #6]
cmp r0, #1
moveq r0, #2
streqb r0, [r1, #0x758]
moveq r0, #1
ldmeqia sp!, {r3, pc}
cmp r0, #2
moveq r0, #2
streqb r0, [r1, #0x758]
moveq r0, #1
movne r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
_022EC858: .word 0x02353538
arm_func_end IsFloorOver
arm_func_start ov29_022EC85C
ov29_022EC85C: ; 0x022EC85C
stmdb sp!, {r3, lr}
bl GetForcedLossReason
cmp r0, #0
movne r0, #1
ldmneia sp!, {r3, pc}
bl IsFloorOver
ldmia sp!, {r3, pc}
arm_func_end ov29_022EC85C
arm_func_start ov29_022EC878
ov29_022EC878: ; 0x022EC878
mov r2, #0
strb r2, [r0]
strb r2, [r0, #1]
strb r2, [r0, #2]
strb r2, [r0, #3]
strb r2, [r0, #4]
ldr r1, _022EC8A4 ; =0x02353598
strb r2, [r0, #5]
mov r0, #1
strb r0, [r1]
bx lr
.align 2, 0
_022EC8A4: .word 0x02353598
arm_func_end ov29_022EC878
arm_func_start ov29_022EC8A8
ov29_022EC8A8: ; 0x022EC8A8
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r6, r0
mov r5, r1
mov r0, r2
mov r1, #0x30
mov r4, r3
bl DivideInt
mov r3, r1, lsl #1
and r0, r3, #0xff
mov r2, r0, lsr #1
ldr r1, _022EC998 ; =0x02352390
mov r0, #0xc0
strb r3, [r6, #4]
add r2, r2, #1
strb r2, [r6, #2]
add r4, r4, #2
smlabb r5, r5, r0, r1
b _022EC96C
_022EC8F0:
strb r4, [r6, #3]
mov r8, #0x63
ldr r7, _022EC99C ; =0x02353538
b _022EC93C
_022EC900:
ldrb r1, [r6, #3]
mov r0, r8
sub r1, r1, #1
strb r1, [r6, #3]
ldrb r1, [r6, #5]
eor r1, r1, #1
strb r1, [r6, #5]
ldrb r3, [r6, #4]
and r2, r1, #0xff
ldr r1, [r7]
add r2, r3, r2
ldr r2, [r5, r2, lsl #2]
add r1, r1, #0x1a000
str r2, [r1, #0x230]
bl AdvanceFrame
_022EC93C:
ldrb r0, [r6, #3]
cmp r0, #0
bne _022EC900
ldrb r0, [r6, #4]
cmp r0, #0
subne r0, r0, #2
strneb r0, [r6, #4]
mov r0, #0
strb r0, [r6, #5]
ldrb r0, [r6, #2]
sub r0, r0, #1
strb r0, [r6, #2]
_022EC96C:
ldrb r0, [r6, #2]
cmp r0, #0
bne _022EC8F0
ldr r0, _022EC99C ; =0x02353538
mov r2, #0
ldr r0, [r0]
ldr r1, _022EC9A0 ; =0x02353598
add r0, r0, #0x1a000
str r2, [r0, #0x230]
strb r2, [r1]
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
_022EC998: .word 0x02352390
_022EC99C: .word 0x02353538
_022EC9A0: .word 0x02353598
arm_func_end ov29_022EC8A8
arm_func_start ov29_022EC9A4
ov29_022EC9A4: ; 0x022EC9A4
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
mov r3, #0xc
smulbb r3, r1, r3
ldr r1, _022ECAD8 ; =0x022C6320
mov r6, r0
ldrb r4, [r1, r3]
mov r5, r2
cmp r4, #5
beq _022ECA28
cmp r5, #0
bne _022EC9E0
ldr r1, _022ECADC ; =0x00000BFD
bl LogMessageByIdWithPopupCheckUser
b _022ECA18
_022EC9E0:
cmp r5, #1
bne _022EC9F4
ldr r1, _022ECAE0 ; =0x00000BFE
bl LogMessageByIdWithPopupCheckUser
b _022ECA18
_022EC9F4:
cmp r5, #2
bne _022ECA08
ldr r1, _022ECAE4 ; =0x00000BFF
bl LogMessageByIdWithPopupCheckUser
b _022ECA18
_022ECA08:
cmp r5, #3
bne _022ECA18
mov r1, #0xc00
bl LogMessageByIdWithPopupCheckUser
_022ECA18:
mov r0, r4
mov r1, #0
bl ov29_022E5DBC
b _022ECAD0
_022ECA28:
bl ov29_022EAEF0
mov r4, r0
cmp r5, #0
bne _022ECA48
ldr r1, _022ECAE8 ; =0x00000C01
mov r0, r6
bl LogMessageByIdWithPopupCheckUser
b _022ECA8C
_022ECA48:
cmp r5, #1
bne _022ECA60
ldr r1, _022ECAEC ; =0x00000C02
mov r0, r6
bl LogMessageByIdWithPopupCheckUser
b _022ECA8C
_022ECA60:
cmp r5, #2
bne _022ECA78
ldr r1, _022ECAF0 ; =0x00000C03
mov r0, r6
bl LogMessageByIdWithPopupCheckUser
b _022ECA8C
_022ECA78:
cmp r5, #3
bne _022ECA8C
ldr r1, _022ECAF4 ; =0x00000C04
mov r0, r6
bl LogMessageByIdWithPopupCheckUser
_022ECA8C:
add r0, sp, #0
bl ov29_022EC878
ldr r0, _022ECAF8 ; =0x02352380
ldr r0, [r0, r5, lsl #2]
mov r0, r0, lsl #0x10
mov r0, r0, lsr #0x10
bl ov29_022EAE14
mov r0, r5, lsl #2
add r0, r0, #8
mov r2, r0, lsl #0x10
mov r3, r2, asr #0x10
add r0, sp, #0
mov r1, r5
mov r2, #0x10
bl ov29_022EC8A8
mov r0, r4
bl ov29_022EAE14
_022ECAD0:
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
_022ECAD8: .word 0x022C6320
_022ECADC: .word 0x00000BFD
_022ECAE0: .word 0x00000BFE
_022ECAE4: .word 0x00000BFF
_022ECAE8: .word 0x00000C01
_022ECAEC: .word 0x00000C02
_022ECAF0: .word 0x00000C03
_022ECAF4: .word 0x00000C04
_022ECAF8: .word 0x02352380
arm_func_end ov29_022EC9A4
arm_func_start ov29_022ECAFC
ov29_022ECAFC: ; 0x022ECAFC
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r4, r0
add r0, sp, #0
bl ov29_022EC878
mov r0, r4, lsl #2
add r0, r0, #2
mov r2, r0, lsl #0x10
mov r3, r2, asr #0x10
add r0, sp, #0
mov r1, r4
mov r2, #8
bl ov29_022EC8A8
add sp, sp, #8
ldmia sp!, {r4, pc}
arm_func_end ov29_022ECAFC
arm_func_start ov29_022ECB38
ov29_022ECB38: ; 0x022ECB38
ldr r0, _022ECB44 ; =0x02353598
ldrb r0, [r0]
bx lr
.align 2, 0
_022ECB44: .word 0x02353598
arm_func_end ov29_022ECB38
arm_func_start DecrementWindCounter
DecrementWindCounter: ; 0x022ECB48
stmdb sp!, {r4, lr}
bl GetLeader
movs r4, r0
moveq r0, #0
beq _022ECB70
ldr r0, [r4]
cmp r0, #0
movne r0, #1
moveq r0, #0
and r0, r0, #0xff
_022ECB70:
cmp r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, _022ECD7C ; =0x02353538
ldr r0, [r0]
add r0, r0, #0x700
ldrsh r1, [r0, #0x84]
cmp r1, #0
subgt r1, r1, #1
strgth r1, [r0, #0x84]
ldr r0, _022ECD7C ; =0x02353538
ldr r1, [r0]
add r0, r1, #0x700
ldrsh r0, [r0, #0x84]
cmp r0, #1
movlt r0, #3
strltb r0, [r1, #0x79a]
ldr r0, _022ECD7C ; =0x02353538
ldr r1, [r0]
ldrb r0, [r1, #0x79a]
cmp r0, #0
bne _022ECC2C
add r0, r1, #0x700
ldrsh r0, [r0, #0x84]
cmp r0, #0xfa
ldmgeia sp!, {r4, pc}
bl ov29_022F2FE4
mov r1, #1
mov r0, r4
mov r2, r1
bl ov29_022F98B4
mov r0, r4
bl DisplayActions
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r1, _022ECD7C ; =0x02353538
mov r0, r4
ldr r2, [r1]
add r1, r2, #0x4000
ldrsh r1, [r1, #0xd4]
ldrb r2, [r2, #0x79a]
bl ov29_022EC9A4
ldr r0, _022ECD7C ; =0x02353538
mov r1, #1
ldr r0, [r0]
strb r1, [r0, #0x79a]
ldmia sp!, {r4, pc}
_022ECC2C:
cmp r0, #1
bne _022ECC9C
add r0, r1, #0x700
ldrsh r0, [r0, #0x84]
cmp r0, #0x96
ldmgeia sp!, {r4, pc}
bl ov29_022F2FE4
mov r1, #1
mov r0, r4
mov r2, r1
bl ov29_022F98B4
mov r0, r4
bl DisplayActions
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r1, _022ECD7C ; =0x02353538
mov r0, r4
ldr r2, [r1]
add r1, r2, #0x4000
ldrsh r1, [r1, #0xd4]
ldrb r2, [r2, #0x79a]
bl ov29_022EC9A4
ldr r0, _022ECD7C ; =0x02353538
mov r1, #2
ldr r0, [r0]
strb r1, [r0, #0x79a]
ldmia sp!, {r4, pc}
_022ECC9C:
cmp r0, #2
add r0, r1, #0x700
ldrsh r0, [r0, #0x84]
bne _022ECD0C
cmp r0, #0x32
ldmgeia sp!, {r4, pc}
bl ov29_022F2FE4
mov r1, #1
mov r0, r4
mov r2, r1
bl ov29_022F98B4
mov r0, r4
bl DisplayActions
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r1, _022ECD7C ; =0x02353538
mov r0, r4
ldr r2, [r1]
add r1, r2, #0x4000
ldrsh r1, [r1, #0xd4]
ldrb r2, [r2, #0x79a]
bl ov29_022EC9A4
ldr r0, _022ECD7C ; =0x02353538
mov r1, #3
ldr r0, [r0]
strb r1, [r0, #0x79a]
ldmia sp!, {r4, pc}
_022ECD0C:
cmp r0, #1
ldmgeia sp!, {r4, pc}
bl ov29_022F2FE4
mov r1, #1
mov r0, r4
mov r2, r1
bl ov29_022F98B4
mov r0, r4
bl DisplayActions
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r4, pc}
ldr r1, _022ECD7C ; =0x02353538
mov r0, r4
ldr r2, [r1]
add r1, r2, #0x4000
ldrsh r1, [r1, #0xd4]
ldrb r2, [r2, #0x79a]
bl ov29_022EC9A4
ldr r0, _022ECD7C ; =0x02353538
ldr r1, _022ECD80 ; =0x0000025D
ldr r3, [r0]
mov ip, #4
mov r0, r4
mov r2, r4
strb ip, [r3, #0x79a]
bl HandleFaint
ldmia sp!, {r4, pc}
.align 2, 0
_022ECD7C: .word 0x02353538
_022ECD80: .word 0x0000025D
arm_func_end DecrementWindCounter
arm_func_start ov29_022ECD84
ov29_022ECD84: ; 0x022ECD84
stmdb sp!, {r4, lr}
mov r4, r0
bl EntityIsValid__022ECDC0
cmp r0, #0
ldmeqia sp!, {r4, pc}
ldr r0, [r4]
cmp r0, #1
ldmneia sp!, {r4, pc}
ldr r1, [r4, #0xb4]
cmp r1, #0
ldmeqia sp!, {r4, pc}
ldr r0, _022ECDBC ; =0x0237C974
bl ov29_02300164
ldmia sp!, {r4, pc}
.align 2, 0
_022ECDBC: .word 0x0237C974
arm_func_end ov29_022ECD84

1574
asm/overlay_29_022ECDE4.s Normal file

File diff suppressed because it is too large Load Diff

1496
asm/overlay_29_022EE36C.s Normal file

File diff suppressed because it is too large Load Diff

1026
asm/overlay_29_022EF7C4.s Normal file

File diff suppressed because it is too large Load Diff

5460
asm/overlay_29_022F05B4.s Normal file

File diff suppressed because it is too large Load Diff

1175
asm/overlay_29_022F52B0.s Normal file

File diff suppressed because it is too large Load Diff

1223
asm/overlay_29_022F62CC.s Normal file

File diff suppressed because it is too large Load Diff

6395
asm/overlay_29_022F7388.s Normal file

File diff suppressed because it is too large Load Diff

2540
asm/overlay_29_022FC9C0.s Normal file

File diff suppressed because it is too large Load Diff

1432
asm/overlay_29_022FEDBC.s Normal file

File diff suppressed because it is too large Load Diff

3120
asm/overlay_29_02300108.s Normal file

File diff suppressed because it is too large Load Diff

2094
asm/overlay_29_02302A5C.s Normal file

File diff suppressed because it is too large Load Diff

999
asm/overlay_29_023047DC.s Normal file
View File

@@ -0,0 +1,999 @@
.include "asm/macros.inc"
.include "overlay_29_023047DC.inc"
.text
arm_func_start ov29_023047DC
ov29_023047DC: ; 0x023047DC
stmdb sp!, {r4, r5, r6, lr}
ldr r4, _0230482C ; =0x02353538
mov r5, #0
_023047E8:
ldr r0, [r4]
add r0, r0, r5, lsl #2
add r0, r0, #0x12000
ldr r6, [r0, #0xb78]
mov r0, r6
bl EntityIsValid__023047B8
cmp r0, #0
beq _0230481C
mov r0, r6
bl GetSleepAnimationId
mov r1, r0
mov r0, r6
bl ov29_02304830
_0230481C:
add r5, r5, #1
cmp r5, #0x14
blt _023047E8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
_0230482C: .word 0x02353538
arm_func_end ov29_023047DC
arm_func_start ov29_02304830
ov29_02304830: ; 0x02304830
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #0x10
ldr r2, _0230494C ; =0x02353538
mov r5, r0
ldr r0, [r2]
ldr r4, [r5, #0xb4]
add r0, r0, #0x1a000
ldr r2, [r0, #0x22c]
ldrb r3, [r0, #0x245]
cmp r5, r2
mov r2, #0
strb r2, [r5, #0x28]
strb r1, [r5, #0xaf]
and r0, r1, #0xff
strb r0, [r5, #0xae]
ldrb r0, [r4, #0x4c]
moveq r3, #0
strb r0, [r5, #0xb1]
strb r0, [r5, #0xb0]
strb r2, [r5, #0xb3]
ldrb r0, [r4, #0xd8]
ldrsh r6, [r5, #0xac]
cmp r0, #2
beq _023048E0
cmp r3, #0
bne _023048E0
ldrsh r1, [r5, #0xa8]
add r0, r5, #0x2c
bl sub_0201C0E8
bl Rand16Bit
ldrb r1, [r5, #0xaa]
and r0, r0, #3
mov r3, r6, lsl #0x10
str r1, [sp]
str r0, [sp, #4]
mov r0, #0
str r0, [sp, #8]
str r0, [sp, #0xc]
ldrb r1, [r5, #0xae]
ldrb r2, [r5, #0xb0]
add r0, r5, #0x2c
mov r3, r3, asr #0x10
bl sub_0201C418
b _0230492C
_023048E0:
ldr r0, _02304950 ; =0x00000229
bl GetSpriteIndex__022F7388
mov r1, r0
add r0, r5, #0x2c
bl sub_0201C0E8
bl Rand16Bit
mov r1, r6, lsl #0x10
mov r3, r1, asr #0x10
ldrb r2, [r5, #0xaa]
and r1, r0, #3
mov r0, #0
str r2, [sp]
str r1, [sp, #4]
str r0, [sp, #8]
str r0, [sp, #0xc]
add r0, r5, #0x2c
ldrb r1, [r5, #0xae]
ldrb r2, [r5, #0xb0]
bl sub_0201C418
_0230492C:
mov r0, #0
strb r0, [r5, #0xb2]
ldrb r0, [r4, #6]
cmp r0, #0
bne _02304944
bl ov29_022E8104
_02304944:
add sp, sp, #0x10
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
_0230494C: .word 0x02353538
_02304950: .word 0x00000229
arm_func_end ov29_02304830
arm_func_start ov29_02304954
ov29_02304954: ; 0x02304954
stmdb sp!, {r4, r5, r6, lr}
ldr r4, _023049A4 ; =0x02353538
mov r5, #0
_02304960:
ldr r0, [r4]
add r0, r0, r5, lsl #2
add r0, r0, #0x12000
ldr r6, [r0, #0xb78]
mov r0, r6
bl EntityIsValid__023047B8
cmp r0, #0
beq _02304994
mov r0, r6
bl GetSleepAnimationId
mov r1, r0
mov r0, r6
bl ov29_02304830
_02304994:
add r5, r5, #1
cmp r5, #0x14
blt _02304960
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
_023049A4: .word 0x02353538
arm_func_end ov29_02304954
arm_func_start ov29_023049A8
ov29_023049A8: ; 0x023049A8
ldr r3, [r0]
cmp r3, #1
bxne lr
mov r3, #0
strb r3, [r0, #0x28]
strb r1, [r0, #0xae]
cmp r2, #0
bxlt lr
cmp r2, #8
strltb r2, [r0, #0xb0]
bx lr
arm_func_end ov29_023049A8
arm_func_start ov29_023049D4
ov29_023049D4: ; 0x023049D4
stmdb sp!, {r3, lr}
ldr r3, [r0]
cmp r3, #1
ldmneia sp!, {r3, pc}
ldrb r3, [r0, #0xaf]
cmp r3, r1
ldreqb r3, [r0, #0xb1]
cmpeq r3, r2
ldmeqia sp!, {r3, pc}
bl ov29_023049A8
ldmia sp!, {r3, pc}
arm_func_end ov29_023049D4
arm_func_start ov29_02304A00
ov29_02304A00: ; 0x02304A00
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r2, [r5]
mov r4, r1
cmp r2, #1
ldmneia sp!, {r3, r4, r5, pc}
bl GetSleepAnimationId
strb r0, [r5, #0xae]
mov r0, #0
strb r0, [r5, #0x28]
cmp r4, #0
ldmltia sp!, {r3, r4, r5, pc}
cmp r4, #8
ldrlt r0, [r5, #0xb4]
andlt r1, r4, #7
strltb r1, [r0, #0x4c]
strltb r1, [r5, #0xb0]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ov29_02304A00
arm_func_start ov29_02304A48
ov29_02304A48: ; 0x02304A48
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r2, [r5]
mov r4, r1
cmp r2, #1
ldmneia sp!, {r3, r4, r5, pc}
bl GetSleepAnimationId
strb r0, [r5, #0xae]
mov r0, #0
strb r0, [r5, #0x28]
cmp r4, #0
ldmltia sp!, {r3, r4, r5, pc}
cmp r4, #8
strltb r4, [r5, #0xb0]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ov29_02304A48
arm_func_start ov29_02304A84
ov29_02304A84: ; 0x02304A84
ldr r2, [r0]
cmp r2, #1
bxne lr
mov r2, #6
strb r2, [r0, #0xae]
mov r2, #0
strb r2, [r0, #0x28]
cmp r1, #0
bxlt lr
cmp r1, #8
strltb r1, [r0, #0xb0]
bx lr
arm_func_end ov29_02304A84
arm_func_start GetSleepAnimationId
GetSleepAnimationId: ; 0x02304AB4
ldr r1, [r0, #0xb4]
ldrb r0, [r1, #0xbd]
cmp r0, #1
cmpne r0, #5
cmpne r0, #3
bne _02304AE8
ldrsh r0, [r1, #4]
cmp r0, #0xb9
ldreqb r0, [r1, #0xbe]
cmpeq r0, #0x7f
moveq r0, #7
movne r0, #5
bx lr
_02304AE8:
ldrb r0, [r1, #0xd2]
cmp r0, #1
moveq r0, #0xb
movne r0, #7
bx lr
arm_func_end GetSleepAnimationId
arm_func_start ov29_02304AFC
ov29_02304AFC: ; 0x02304AFC
ldr r2, [r0, #0xb4]
and r1, r1, #7
ldr ip, _02304B10 ; =ov29_02304A48
strb r1, [r2, #0x4c]
bx ip
.align 2, 0
_02304B10: .word ov29_02304A48
arm_func_end ov29_02304AFC
arm_func_start ov29_02304B14
ov29_02304B14: ; 0x02304B14
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
bl EntityIsValid__023047B8
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r6, [r7, #0xb4]
mov r5, #0
mov r4, #0x21
b _02304B58
_02304B38:
mov r0, r4
bl AdvanceFrame
ldrsh r0, [r6, #4]
ldrb r1, [r7, #0xaf]
bl sub_02053038
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
add r5, r5, #1
_02304B58:
cmp r5, #0x64
blt _02304B38
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end ov29_02304B14
arm_func_start ov29_02304B64
ov29_02304B64: ; 0x02304B64
stmdb sp!, {r4, r5, r6, lr}
ldr r4, _02304BA8 ; =0x02353538
mov r5, #0
_02304B70:
ldr r0, [r4]
add r0, r0, r5, lsl #2
add r0, r0, #0x12000
ldr r6, [r0, #0xb78]
mov r0, r6
bl EntityIsValid__023047B8
cmp r0, #0
beq _02304B98
mov r0, r6
bl ov29_02304BAC
_02304B98:
add r5, r5, #1
cmp r5, #0x14
blt _02304B70
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
_02304BA8: .word 0x02353538
arm_func_end ov29_02304B64
arm_func_start ov29_02304BAC
ov29_02304BAC: ; 0x02304BAC
stmdb sp!, {r4, r5, r6, lr}
mov r4, r0
bl GetTileAtEntity
ldrh r1, [r0]
ldr r5, [r4, #0xb4]
ldrsh r0, [r5, #4]
and r6, r1, #3
bl GetShadowSize
mov r4, r0
cmp r6, #3
moveq r0, #6
ldmeqia sp!, {r4, r5, r6, pc}
cmp r6, #1
bne _02304BF8
bl ov29_02337E94
cmp r0, #0
ldrne r0, _02304C30 ; =0x02352808
ldrneb r4, [r0, r4]
b _02304C24
_02304BF8:
cmp r6, #2
bne _02304C24
ldr r0, _02304C34 ; =0x02353538
ldr r1, _02304C38 ; =0x020A1AE8
ldr r0, [r0]
add r0, r0, #0x4000
ldrsh r0, [r0, #0xd4]
ldrb r0, [r1, r0]
cmp r0, #1
ldrne r0, _02304C30 ; =0x02352808
ldrneb r4, [r0, r4]
_02304C24:
mov r0, r4
strb r4, [r5, #0x220]
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
_02304C30: .word 0x02352808
_02304C34: .word 0x02353538
_02304C38: .word 0x020A1AE8
arm_func_end ov29_02304BAC
arm_func_start ov29_02304C3C
ov29_02304C3C: ; 0x02304C3C
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
mov r4, r0
mov sl, r1
bl EntityIsValid__023047B8
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
ldr r0, [r4]
cmp r0, #1
ldmneia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
ldr r1, [r4, #0xb4]
mov r0, r4
ldrb r7, [r1, #0x4c]
mov r8, r7
bl ov29_022E272C
cmp r0, #0
ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
mov sb, #0
mov r6, #2
mov r5, #0x43
b _02304CC0
_02304C8C:
mov r0, r4
mov r1, r8
bl ov29_02304A48
mov r0, r6
mov r1, r5
bl ov29_022EA370
add r0, r8, #1
mov r0, r0, lsl #0x10
mov r1, r0, asr #0x10
add r0, sb, #1
mov r0, r0, lsl #0x10
and r8, r1, #7
mov sb, r0, asr #0x10
_02304CC0:
cmp sb, sl, lsl #3
blt _02304C8C
mov r6, #2
mov r5, #0x43
b _02304CFC
_02304CD4:
mov r0, r4
mov r1, r8
bl ov29_02304A48
mov r0, r6
mov r1, r5
bl ov29_022EA370
add r0, r8, #1
mov r0, r0, lsl #0x10
mov r0, r0, asr #0x10
and r8, r0, #7
_02304CFC:
cmp r8, r7
bne _02304CD4
mov r0, r4
mov r1, r8
bl ov29_02304A48
mov r0, #2
mov r1, #0x43
bl ov29_022EA370
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
arm_func_end ov29_02304C3C
arm_func_start ov29_02304D20
ov29_02304D20: ; 0x02304D20
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
mov r6, r0
ldr sb, [r6, #0xb4]
mov r5, r1
add r0, sb, #0x200
ldrsh r0, [r0, #0xc]
mov r4, r2
cmp r0, #4
movge r0, #0
strgeh r0, [sb, #0x4a]
ldmgeia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl sub_0204AEE0
cmp r0, #0
movne r1, #2
ldr r2, _02304FD4 ; =0x0237C9CC
moveq r1, #1
str r1, [r2]
add r0, sb, #0x200
ldrsh r3, [r0, #0xc]
mov r1, #0x1c
add r0, sb, #0x19c
smulbb sl, r3, r1
add r7, r0, sl
mov r1, #0
strb r1, [r7, #0x1a]
str r5, [r7, #0xc]
ldrsh r8, [r6, #4]
mov r3, r5, lsl #2
ldr r1, _02304FD8 ; =0x0235173C
strh r8, [r0, sl]
ldrsh r5, [r6, #6]
ldr r0, _02304FDC ; =0x0235173E
ldrsh r1, [r1, r3]
strh r5, [r7, #2]
ldrsh r5, [r4]
ldrsh r0, [r0, r3]
str r5, [r7, #4]
ldrsh r3, [r4, #2]
str r3, [r7, #8]
ldr r3, [r2]
mul r1, r3, r1
str r1, [r7, #0x10]
ldr r1, [r2]
mul r0, r1, r0
str r0, [r7, #0x14]
bl sub_0204AEE0
cmp r0, #0
movne r1, #2
ldr r5, _02304FD4 ; =0x0237C9CC
moveq r1, #1
add r0, sb, #0x200
str r1, [r5]
ldrsh r1, [r0, #0xc]
add r1, r1, #1
strh r1, [r0, #0xc]
ldrsh r0, [r0, #0xc]
cmp r0, #2
bne _02304E6C
ldr r1, [r5]
mov r0, #0x18
mov r1, r1, lsl #1
bl DivideInt
add r1, sb, #0x100
strh r0, [r1, #0xb4]
ldr r0, [sb, #0x1ac]
mov r1, r5
mov r0, r0, lsl #1
str r0, [sb, #0x1ac]
ldr r2, [sb, #0x1b0]
mov r0, #0x18
mov r2, r2, lsl #1
str r2, [sb, #0x1b0]
ldr r1, [r1]
mov r1, r1, lsl #1
bl DivideInt
strh r0, [r7, #0x18]
ldr r0, [r7, #0x10]
mov r0, r0, lsl #1
str r0, [r7, #0x10]
ldr r0, [r7, #0x14]
mov r0, r0, lsl #1
str r0, [r7, #0x14]
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_02304E6C:
cmp r0, #3
bne _02304F14
mov r6, #0
mov r4, #0x18
mov sl, #0x1c
_02304E80:
mla r8, r6, sl, sb
ldr r1, [r5]
mov r0, r4
add r1, r1, r1, lsl #1
bl DivideInt
add r1, r8, #0x100
strh r0, [r1, #0xb4]
ldr r0, [r8, #0x1ac]
add r6, r6, #1
add r0, r0, r0, lsl #1
str r0, [r8, #0x1ac]
ldr r0, [r8, #0x1b0]
cmp r6, #2
add r0, r0, r0, lsl #1
str r0, [r8, #0x1b0]
ldr r0, [r8, #0x1ac]
add r0, r0, r0, lsr #31
mov r0, r0, asr #1
str r0, [r8, #0x1ac]
ldr r0, [r8, #0x1b0]
add r0, r0, r0, lsr #31
mov r0, r0, asr #1
str r0, [r8, #0x1b0]
blt _02304E80
ldr r1, _02304FD4 ; =0x0237C9CC
mov r0, #0x18
ldr r1, [r1]
add r1, r1, r1, lsl #1
bl DivideInt
strh r0, [r7, #0x18]
ldr r0, [r7, #0x10]
add r0, r0, r0, lsl #1
str r0, [r7, #0x10]
ldr r0, [r7, #0x14]
add r0, r0, r0, lsl #1
str r0, [r7, #0x14]
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_02304F14:
cmp r0, #4
bne _02304FC0
mov r8, #0
mov r6, #0x18
mov fp, #3
mov r4, #0x1c
_02304F2C:
mla sl, r8, r4, sb
ldr r1, [r5]
mov r0, r6
mov r1, r1, lsl #2
bl DivideInt
add r1, sl, #0x100
strh r0, [r1, #0xb4]
ldr r0, [sl, #0x1ac]
mov r1, fp
mov r0, r0, lsl #2
str r0, [sl, #0x1ac]
ldr r0, [sl, #0x1b0]
mov r0, r0, lsl #2
str r0, [sl, #0x1b0]
ldr r0, [sl, #0x1ac]
bl DivideInt
str r0, [sl, #0x1ac]
ldr r0, [sl, #0x1b0]
mov r1, #3
bl DivideInt
add r8, r8, #1
str r0, [sl, #0x1b0]
cmp r8, #3
blt _02304F2C
ldr r1, _02304FD4 ; =0x0237C9CC
mov r0, #0x18
ldr r1, [r1]
mov r1, r1, lsl #2
bl DivideInt
strh r0, [r7, #0x18]
ldr r0, [r7, #0x10]
mov r0, r0, lsl #2
str r0, [r7, #0x10]
ldr r0, [r7, #0x14]
mov r0, r0, lsl #2
str r0, [r7, #0x14]
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_02304FC0:
ldr r1, [r5]
mov r0, #0x18
bl DivideInt
strh r0, [r7, #0x18]
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_02304FD4: .word 0x0237C9CC
_02304FD8: .word 0x0235173C
_02304FDC: .word 0x0235173E
arm_func_end ov29_02304D20
arm_func_start DisplayActions
DisplayActions: ; 0x02304FE0
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x14
ldr r1, _02305580 ; =0x0237C9C1
mov r6, #0
mov sl, r0
mov r7, r6
strb r6, [r1]
bl sub_0204AEE0
cmp r0, #0
mov r5, #0
movne r1, #2
ldr r0, _02305584 ; =0x0237C9CC
moveq r1, #1
str r1, [r0]
mov r4, r5
mov fp, r5
_02305020:
ldr r0, _02305588 ; =0x02353538
ldr r0, [r0]
add r0, r0, r5, lsl #2
add r0, r0, #0x12000
ldr r8, [r0, #0xb78]
mov r0, r8
bl EntityIsValid__0230558C
cmp r0, #0
beq _02305160
ldr sb, [r8, #0xb4]
add r0, sb, #0x200
ldrsh r0, [r0, #0xc]
cmp r0, #0
bne _023050EC
ldrb r0, [sb, #0x151]
cmp r0, #0
beq _02305160
strb r4, [sb, #0x151]
add r0, sb, #0x100
ldrsh r1, [r0, #0x7e]
cmp r1, #0
ldreqsh r0, [r0, #0x80]
cmpeq r0, #0
beq _02305160
ldrsh r0, [r8, #4]
cmp r1, r0
addeq r0, sb, #0x100
ldreqsh r1, [r0, #0x80]
ldreqsh r0, [r8, #6]
cmpeq r1, r0
beq _02305160
mov r0, r8
mov r1, #1
bl ov29_02300818
cmp r0, #0
beq _023050C0
mov r0, r8
bl ov29_02300CB0
cmp r0, #0
bne _02305160
_023050C0:
add r0, r8, #4
add r1, sb, #0x7e
add r1, r1, #0x100
bl GetDirectionTowardsPosition
mov r1, r0
ldrb r0, [sb, #0x4c]
cmp r1, r0
beq _02305160
mov r0, r8
bl ov29_02304A48
b _02305160
_023050EC:
ldrh r2, [sb]
mov r0, r8
add r1, sp, #0xc
orr r2, r2, #0x2000
strh r2, [sb]
ldr r3, [sb, #0x1a0]
mov r2, #0x18
mul r2, r3, r2
add r2, r2, #0xc
mov r2, r2, lsl #8
str r2, [sp, #0xc]
ldr r3, [sb, #0x1a4]
mov r2, #0x18
mul r2, r3, r2
add r2, r2, #0x10
mov r2, r2, lsl #8
str r2, [sp, #0x10]
bl ov29_022E1A40
ldr r2, [sb, #0x1a8]
mov r0, r8
mov r1, #0
bl ov29_023049D4
add r0, sb, #0x200
strh fp, [r0, #0xe]
mov r0, r8
mov r6, #1
bl ov29_022E272C
cmp r0, #0
movne r7, r6
_02305160:
add r5, r5, #1
cmp r5, #0x14
blt _02305020
cmp r6, #0
moveq r0, #0
beq _02305578
ldr r0, _02305588 ; =0x02353538
ldr r1, [r0]
ldr r6, [r1, #0xc4]
str sl, [r1, #0xc4]
ldr r0, [r0]
ldrb r0, [r0, #0x78b]
cmp r0, #0
bne _0230532C
cmp r7, #0
beq _0230532C
mov r0, #0x35
bl ov29_0234BA18
mov r5, #0
b _02305314
_023051B0:
mov r0, #7
bl AdvanceFrame
mov sl, #0
ldr r4, _02305588 ; =0x02353538
mov fp, sl
_023051C4:
ldr r0, [r4]
add r0, r0, sl, lsl #2
add r0, r0, #0x12000
ldr r7, [r0, #0xb78]
mov r0, r7
bl EntityIsValid__0230558C
cmp r0, #0
beq _02305304
ldr sb, [r7, #0xb4]
add r0, sb, #0x200
ldrsh r2, [r0, #0xe]
ldrsh r1, [r0, #0xc]
add r3, sb, #0x19c
mov r0, #0x1c
smlabb r8, r2, r0, r3
cmp r1, #0
beq _02305304
mov r0, r7
ldr r1, [r8, #0x10]
ldr r2, [r8, #0x14]
bl ov29_022E1A90
ldrb r0, [sb, #7]
cmp r0, #0
beq _02305258
ldr r0, [r4]
add r0, r0, #0x100
ldrsh r1, [r0, #0xdc]
cmp r1, #0
blt _02305258
ldr r1, [r7, #0xc]
mov r1, r1, asr #8
strh r1, [r0, #0xdc]
ldr r1, [r7, #0x10]
ldr r0, [r4]
mov r1, r1, asr #8
add r0, r0, #0x100
strh r1, [r0, #0xde]
_02305258:
ldrsh r0, [r8, #0x18]
sub r0, r0, #1
strh r0, [r8, #0x18]
ldrsh r0, [r8, #0x18]
cmp r0, #0
bne _02305304
add r2, sb, #0x200
ldrsh r0, [r2, #0xe]
add r0, r0, #1
strh r0, [r2, #0xe]
ldrsh r1, [r2, #0xe]
ldrsh r0, [r2, #0xc]
cmp r1, r0
streqh fp, [r2, #0xc]
beq _02305304
mov r0, #0x1c
smlabb r0, r1, r0, sb
ldr r3, [r0, #0x1a0]
mov r1, #0x18
mul r1, r3, r1
add r1, r1, #0xc
mov r1, r1, lsl #8
str r1, [sp, #4]
ldrsh r3, [r2, #0xe]
mov r2, #0x1c
mov r0, r7
smlabb r2, r3, r2, sb
ldr r3, [r2, #0x1a4]
mov r2, #0x18
mul r2, r3, r2
add r2, r2, #0x10
mov r2, r2, lsl #8
add r1, sp, #4
str r2, [sp, #8]
bl ov29_022E1A40
add r2, sb, #0x200
ldrsh r3, [r2, #0xe]
mov r2, #0x1c
mov r0, r7
smlabb r2, r3, r2, sb
ldr r2, [r2, #0x1a8]
mov r1, #0
bl ov29_023049D4
_02305304:
add sl, sl, #1
cmp sl, #0x14
blt _023051C4
add r5, r5, #1
_02305314:
ldr r1, _02305584 ; =0x0237C9CC
mov r0, #0x18
ldr r1, [r1]
bl DivideInt
cmp r5, r0
blt _023051B0
_0230532C:
mov r7, #0
ldr r8, _02305588 ; =0x02353538
mov r4, r7
_02305338:
ldr r0, [r8]
add r0, r0, r7, lsl #2
add r0, r0, #0x12000
ldr r5, [r0, #0xb78]
mov r0, r5
bl EntityIsValid__0230558C
cmp r0, #0
beq _0230537C
ldr r1, [r5, #0xb4]
add r0, r1, #0x200
strh r4, [r0, #0xc]
ldrh r0, [r1]
tst r0, #0x2000
beq _0230537C
mov r0, r5
mov r1, r4
bl ov29_022E1A40
_0230537C:
add r7, r7, #1
cmp r7, #0x14
blt _02305338
bl ov29_02307DD0
mov r8, #0
_02305390:
mov sl, #0
mov fp, sl
mov r7, #1
ldr r5, _02305588 ; =0x02353538
ldr r4, _02305580 ; =0x0237C9C1
b _02305530
_023053A8:
ldr r0, [r5]
add r0, r0, sl, lsl #2
add r0, r0, #0x12000
ldr sb, [r0, #0xb78]
mov r0, sb
bl EntityIsValid__0230558C
cmp r0, #0
beq _0230552C
bl IsFloorOver
cmp r0, #0
bne _02305538
ldr r0, [sb, #0xb4]
cmp r8, #0
ldrb r1, [r0, #7]
bne _023053F0
cmp r1, #0
beq _0230552C
b _023053F8
_023053F0:
cmp r1, #0
bne _0230552C
_023053F8:
ldrh r3, [sb, #4]
ldrh r2, [sb, #6]
ldrh r1, [r0]
strh r3, [sp]
strh r2, [sp, #2]
tst r1, #0x2000
bne _02305430
mov r0, sb
bl ov29_0234AD10
mov r0, sb
bl EntityIsValid__0230558C
cmp r0, #0
beq _0230552C
b _023054E4
_02305430:
bic r1, r1, #0x2000
strh r1, [r0]
ldrb r0, [r0, #7]
cmp r0, #0
beq _0230545C
add r0, sb, #4
bl ov29_02337A3C
mov r0, fp
bl ov29_022F62CC
bl ov29_022F3634
b _0230547C
_0230545C:
mov r0, sb
bl ov29_0234AD10
mov r0, sb
bl EntityIsValid__0230558C
cmp r0, #0
beq _0230552C
mov r0, sb
bl ov29_02305694
_0230547C:
mov r0, sb
bl EntityIsValid__0230558C
cmp r0, #0
beq _0230552C
bl IsFloorOver
cmp r0, #0
bne _02305538
mov r0, #0
bl TryForcedLoss
mov r0, sb
bl ov29_0230FC24
mov r0, sb
bl EntityIsValid__0230558C
cmp r0, #0
beq _0230552C
bl IsFloorOver
cmp r0, #0
bne _02305538
mov r0, sb
bl EnemyEvolution
bl ov29_02346888
ldr r1, [r5]
mov r0, sb
add r1, r1, #0x4000
ldrb r1, [r1, #0xc4]
bl ov29_02305814
_023054E4:
mov r0, sb
bl EntityIsValid__0230558C
cmp r0, #0
beq _0230552C
bl IsFloorOver
cmp r0, #0
bne _02305538
ldrsh r1, [sp]
ldrsh r0, [sb, #4]
cmp r1, r0
ldreqsh r1, [sp, #2]
ldreqsh r0, [sb, #6]
cmpeq r1, r0
mov r0, sb
strneb r7, [r4]
bl ov29_022F9C74
mov r0, sb
bl ov29_02321104
_0230552C:
add sl, sl, #1
_02305530:
cmp sl, #0x14
blt _023053A8
_02305538:
add r8, r8, #1
cmp r8, #2
blt _02305390
bl ov29_022EF9C8
bl IsFloorOver
cmp r0, #0
ldrne r1, _02305588 ; =0x02353538
movne r0, #1
ldrne r1, [r1]
strne r6, [r1, #0xc4]
bne _02305578
bl ov29_022EF9BC
ldr r1, _02305588 ; =0x02353538
mov r0, #1
ldr r1, [r1]
str r6, [r1, #0xc4]
_02305578:
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_02305580: .word 0x0237C9C1
_02305584: .word 0x0237C9CC
_02305588: .word 0x02353538
arm_func_end DisplayActions

460
asm/overlay_29_023055B0.s Normal file
View File

@@ -0,0 +1,460 @@
.include "asm/macros.inc"
.include "overlay_29_023055B0.inc"
.text
arm_func_start ov29_023055B0
ov29_023055B0: ; 0x023055B0
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
mov r6, #0
mov r5, #1
ldr r4, _02305690 ; =0x02353538
b _02305684
_023055C4:
ldr r0, [r4]
add r0, r0, r6, lsl #2
add r0, r0, #0x12000
ldr r7, [r0, #0xb78]
mov r0, r7
bl EntityIsValid__0230558C
cmp r0, #0
beq _02305680
ldr r8, [r7, #0xb4]
ldrb r0, [r8, #7]
cmp r0, #0
bne _02305680
mov r0, r8
bl ov29_022FBE04
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
add r0, r8, #0x100
ldrsh r1, [r0, #0x7e]
cmp r1, #0
ldreqsh r0, [r0, #0x80]
cmpeq r0, #0
beq _02305680
ldrsh r0, [r7, #4]
cmp r1, r0
addeq r0, r8, #0x100
ldreqsh r1, [r0, #0x80]
ldreqsh r0, [r7, #6]
cmpeq r1, r0
beq _02305680
mov r0, r7
mov r1, r5
bl ov29_02300818
cmp r0, #0
bne _02305680
add r1, r8, #0x7e
add r0, r7, #4
add r1, r1, #0x100
bl GetDirectionTowardsPosition
mov sb, r0
and r1, sb, #7
mov r0, r7
strb r1, [r8, #0x4c]
bl GetSleepAnimationId
mov r1, r0
mov r0, r7
mov r2, sb
bl ov29_023049A8
_02305680:
add r6, r6, #1
_02305684:
cmp r6, #0x14
blt _023055C4
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
.align 2, 0
_02305690: .word 0x02353538
arm_func_end ov29_023055B0
arm_func_start ov29_02305694
ov29_02305694: ; 0x02305694
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
mov sb, r0
ldr r8, [sb, #0xb4]
bl EntityIsValid__0230558C
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
mov r0, sb
bl GetTileAtEntity
mov r4, r0
mov r0, sb
mov r1, #0xd
bl IqSkillIsEnabled
cmp r0, #0
ldrneb r0, [r8, #0xef]
cmpne r0, #3
beq _02305708
mov r0, sb
mov r1, #0x6f
bl AbilityIsActive2
cmp r0, #0
movne r0, #0
bne _023056F8
mov r0, sb
mov r1, #0x10
bl HasHeldItem
_023056F8:
cmp r0, #0
bne _02305708
add r0, sb, #4
bl ov29_02337D68
_02305708:
ldr r4, [r4, #0x10]
cmp r4, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
ldr r0, [r4]
cmp r0, #6
addls pc, pc, r0, lsl #2
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
_02305724: ; jump table
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ; case 0
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ; case 1
b _02305740 ; case 2
b _02305808 ; case 3
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ; case 4
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ; case 5
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc} ; case 6
_02305740:
mov r0, r4
bl ov29_022E1608
ldrb r1, [r8, #6]
mov r6, #0
mov r5, r0
mov r7, r6
cmp r1, #0
bne _02305790
mov r0, sb
mov r1, #0x13
bl IqSkillIsEnabled
cmp r0, #0
beq _02305790
ldrb r0, [r4, #0x20]
cmp r0, #0
bne _02305790
mov r0, #1
strb r0, [r4, #0x20]
bl ov29_02336F4C
mov r7, #1
_02305790:
ldrb r0, [r5, #1]
cmp r0, #0
bne _023057B8
ldrb r0, [r4, #0x20]
cmp r0, #0
beq _023057E0
ldrb r0, [r8, #6]
cmp r0, #0
moveq r6, #1
b _023057E0
_023057B8:
cmp r0, #1
bne _023057D0
ldrb r0, [r8, #6]
cmp r0, #0
movne r6, #1
b _023057E0
_023057D0:
cmp r0, #2
ldreqb r0, [r8, #6]
cmpeq r0, #0
moveq r6, #1
_023057E0:
cmp r6, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
cmp r7, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
mov r0, sb
add r1, sb, #4
mov r2, #0
mov r3, #1
bl ov29_022EDFA0
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
_02305808:
mov r0, sb
bl ov29_0230F164
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
arm_func_end ov29_02305694
arm_func_start ov29_02305814
ov29_02305814: ; 0x02305814
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
bl EntityIsValid__0230558C
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r0, [r5, #0xb4]
ldrb r0, [r0, #6]
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
bl IsFloorOver
cmp r0, #0
ldreq r0, _023058BC ; =0x02353538
ldreq r0, [r0]
ldreqb r0, [r0, #0x793]
cmpeq r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
bl GetTileAtEntity
ldrh r0, [r0]
tst r0, #0x40
ldmeqia sp!, {r3, r4, r5, pc}
bl GetLeader
ldr r1, _023058C0 ; =0x00000C82
bl LogMessageByIdWithPopupCheckUser
ldr r1, _023058BC ; =0x02353538
mov r0, r5
ldr r2, [r1]
mov r3, #1
mov r1, r4
strb r3, [r2, #0x794]
bl ov29_02307F4C
mov r0, #0
bl ov29_022E3A58
add r0, r5, #4
bl ov29_022E2CA0
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, #0x78
mov r1, #0x39
bl ov29_022EA370
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
_023058BC: .word 0x02353538
_023058C0: .word 0x00000C82
arm_func_end ov29_02305814
arm_func_start ov29_023058C4
ov29_023058C4: ; 0x023058C4
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
mov r4, #0
mov sb, r1
mov sl, r0
mov r0, sb
mov r8, r2
mov r7, r3
mov r5, r4
bl EntityIsValid__02305C04
cmp r0, #0
moveq r0, r4
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
mov r0, sb
mov r1, r4
ldr r6, [sb, #0xb4]
bl ov29_02300634
cmp r0, #0
beq _02305AD8
mov r0, sb
mov r4, #1
bl ov29_023004B0
cmp r0, #0
beq _0230593C
mov r2, r5
mov fp, r4
mov r0, sl
mov r1, sb
mov r3, r2
str fp, [sp]
bl ov29_02305FDC
_0230593C:
mov r0, sb
bl EntityIsValid__02305C04
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
mov r0, sb
bl ov29_023004E4
cmp r0, #0
beq _0230596C
mov r0, sl
mov r1, sb
bl ov29_023061A8
_0230596C:
ldrb r0, [sp, #0x28]
cmp r0, #0
mov r0, sb
beq _0230599C
bl ov29_02300500
cmp r0, #0
beq _023059C0
mov r0, sl
mov r1, sb
mov r2, #1
bl EndFrozenClassStatus
b _023059C0
_0230599C:
bl ov29_02300500
cmp r0, #0
ldrneb r0, [r6, #0xc4]
cmpne r0, #3
beq _023059C0
mov r0, sl
mov r1, sb
mov r2, #1
bl EndFrozenClassStatus
_023059C0:
mov r0, sb
bl ov29_02300520
cmp r0, #0
beq _023059DC
mov r0, sl
mov r1, sb
bl EndCringeClassStatus
_023059DC:
mov r0, sb
bl ov29_0230053C
cmp r0, #0
beq _02305A00
mov r0, sl
mov r1, sb
mov r2, #0
mov r3, #1
bl ov29_02306728
_02305A00:
mov r0, sb
bl ov29_02300588
cmp r0, #0
beq _02305A1C
mov r0, sl
mov r1, sb
bl ov29_023068C4
_02305A1C:
mov r0, sb
bl ov29_023005A4
cmp r0, #0
beq _02305A38
mov r0, sl
mov r1, sb
bl ov29_02306950
_02305A38:
mov r0, sb
mov r1, #0
bl ov29_023005C0
cmp r0, #0
beq _02305A58
mov r0, sl
mov r1, sb
bl ov29_02306B28
_02305A58:
mov r0, sb
bl ov29_023005FC
cmp r0, #0
beq _02305A74
mov r0, sl
mov r1, sb
bl ov29_02306BF8
_02305A74:
mov r0, sb
bl ov29_02300618
cmp r0, #0
beq _02305A90
mov r0, sl
mov r1, sb
bl ov29_02306C64
_02305A90:
ldrb r0, [r6, #0x106]
cmp r0, #0
beq _02305AB4
ldr r2, _02305BF0 ; =0x00000C83
mov r3, #0
mov r0, sl
mov r1, sb
strb r3, [r6, #0x106]
bl LogMessageByIdWithPopupCheckUserTarget
_02305AB4:
ldrb r0, [r6, #0xfe]
cmp r0, #0
beq _02305AD8
ldr r2, _02305BF4 ; =0x00000C84
mov r3, #0
mov r0, sl
mov r1, sb
strb r3, [r6, #0xfe]
bl LogMessageByIdWithPopupCheckUserTarget
_02305AD8:
mov r0, sb
bl CalcSpeedStageWrapper
mov r2, #0
mov fp, r0
mov r1, r2
_02305AEC:
add r0, r6, r2
add r2, r2, #1
strb r1, [r0, #0x119]
cmp r2, #5
blt _02305AEC
mov r0, sb
bl CalcSpeedStageWrapper
cmp fp, r0
beq _02305B40
mov r0, #0
mov r1, sb
mov r2, r0
mov r4, #1
bl SubstitutePlaceholderStringTags
ldr r1, [r6, #0x110]
ldr r0, _02305BF8 ; =0x02353318
mov r1, r1, lsl #1
ldrh r2, [r0, r1]
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
_02305B40:
mov fp, #0
mov r1, #1
add r2, r6, #0x124
mov r0, fp
mov ip, r1
_02305B54:
ldrb r6, [r2, fp, lsl #3]
add r3, r2, fp, lsl #3
tst r6, #1
movne r6, r1
moveq r6, r0
tst r6, #0xff
beq _02305B88
ldrh r6, [r3, #2]
tst r6, #1
bicne r6, r6, #1
movne r4, ip
movne r5, ip
strneh r6, [r3, #2]
_02305B88:
add fp, fp, #1
cmp fp, #4
blt _02305B54
cmp r4, #0
beq _02305BC8
cmp r8, #0
beq _02305BAC
mov r0, sb
bl ov29_022E543C
_02305BAC:
cmp r5, #0
beq _02305BE0
ldr r2, _02305BFC ; =0x00000C85
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
b _02305BE0
_02305BC8:
cmp r7, #0
bne _02305BE0
ldr r2, _02305C00 ; =0x00000C86
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
_02305BE0:
mov r0, sb
bl UpdateStatusIconFlags
mov r0, r4
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_02305BF0: .word 0x00000C83
_02305BF4: .word 0x00000C84
_02305BF8: .word 0x02353318
_02305BFC: .word 0x00000C85
_02305C00: .word 0x00000C86
arm_func_end ov29_023058C4

2609
asm/overlay_29_02305C28.s Normal file

File diff suppressed because it is too large Load Diff

252
asm/overlay_29_02307F1C.s Normal file
View File

@@ -0,0 +1,252 @@
.include "asm/macros.inc"
.include "overlay_29_02307F1C.inc"
.text
arm_func_start ItemIsActive__02307F1C
ItemIsActive__02307F1C: ; 0x02307F1C
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r1, #0x6f
mov r5, r0
bl AbilityIsActive2
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
bl HasHeldItem
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ItemIsActive__02307F1C
arm_func_start ov29_02307F4C
ov29_02307F4C: ; 0x02307F4C
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x1a0
mov r4, r0
mov r5, r1
bl EntityIsValid__02307EF8
cmp r0, #0
beq _02308268
ldr r0, [r4, #0xb4]
ldrb r0, [r0, #6]
cmp r0, #0
bne _02308268
mov r0, r4
bl GetTileAtEntity
ldrh r0, [r0]
tst r0, #0x40
beq _02308268
ldr r0, _02308270 ; =0x02353538
ldr r2, [r0]
ldrb r1, [r2, #0x793]
cmp r1, #0
bne _02308268
mov r1, #1
strb r1, [r2, #0x793]
ldr r1, [r0]
add r0, r1, #0x4000
ldrb r2, [r0, #0xc9]
cmp r2, #0xff
beq _02308268
add r0, r1, #0x2e8
add r1, r0, #0xec00
mov r0, #0x1c
mla r1, r2, r0, r1
cmp r5, #0
mov r5, #0
beq _02308064
ldrsh r0, [r4, #6]
add r7, sp, #0x10
sub sb, r0, #4
b _02308050
_02307FE8:
ldrsh r0, [r4, #4]
sub r8, r0, #4
mov r0, sb, lsl #0x10
mov r6, r0, asr #0x10
b _0230803C
_02307FFC:
mov r0, r8
mov r1, sb
bl GetTileSafe
ldr r1, [r0, #0xc]
cmp r1, #0
ldreqh r0, [r0]
andeq r0, r0, #3
cmpeq r0, #1
bne _02308038
cmp r5, #0x64
movlt r1, r5, lsl #2
addlt r0, r7, r5, lsl #2
strlth r8, [r7, r1]
strlth r6, [r0, #2]
addlt r5, r5, #1
_02308038:
add r8, r8, #1
_0230803C:
ldrsh r0, [r4, #4]
add r0, r0, #4
cmp r8, r0
ble _02307FFC
add sb, sb, #1
_02308050:
ldrsh r0, [r4, #6]
add r0, r0, #4
cmp sb, r0
ble _02307FE8
b _02308124
_02308064:
ldrsh r2, [r4, #4]
ldrsh r0, [r1, #2]
add fp, sp, #0x10
sub r7, r2, #4
cmp r7, r0
movle r7, r0
add r8, r2, #5
ldrsh r2, [r4, #6]
ldrsh r0, [r1, #6]
sub sb, r2, #4
cmp r8, r0
movge r8, r0
ldrsh r0, [r1, #4]
add sl, r2, #5
cmp sb, r0
movle sb, r0
ldrsh r0, [r1, #8]
cmp sl, r0
movge sl, r0
b _0230811C
_023080B4:
mov r0, sb, lsl #0x10
mov r6, r7
mov r4, r0, asr #0x10
b _02308110
_023080C4:
mov r0, r6
mov r1, sb
bl GetTileSafe
ldr r1, [r0, #0xc]
cmp r1, #0
ldreqh r1, [r0]
andeq r1, r1, #3
cmpeq r1, #1
bne _0230810C
ldrh r0, [r0]
tst r0, #0x40
beq _0230810C
cmp r5, #0x64
movlt r1, r5, lsl #2
addlt r0, fp, r5, lsl #2
strlth r6, [fp, r1]
strlth r4, [r0, #2]
addlt r5, r5, #1
_0230810C:
add r6, r6, #1
_02308110:
cmp r6, r8
blt _023080C4
add sb, sb, #1
_0230811C:
cmp sb, sl
blt _023080B4
_02308124:
ldr r0, _02308274 ; =0x022C4560
ldr r1, _02308278 ; =0x022C4660
ldrsh r0, [r0]
ldrsh r1, [r1]
bl DungeonRandRange
mov r6, r0
cmp r6, r5
movge r6, r5
mov r8, #0
b _02308258
_0230814C:
mov r0, r5
bl DungeonRandInt
mov r3, #0
mov r4, r0
add r2, sp, #0x10
mov r0, r3
b _02308188
_02308168:
mov r1, r4, lsl #2
ldrsh r1, [r2, r1]
cmp r1, #0
bne _02308190
add r4, r4, #1
cmp r4, r5
movge r4, r0
add r3, r3, #1
_02308188:
cmp r3, r5
blt _02308168
_02308190:
add r0, sp, #0x10
mov r1, r4, lsl #2
ldrsh r7, [r0, r1]
cmp r7, #0
beq _02308260
mov r0, #1
bl GetMonsterIdToSpawn
add r1, sp, #0x10
mov r3, #0
strh r0, [sp]
add r0, r1, r4, lsl #2
ldrsh r2, [r0, #2]
mov r1, #1
ldrsh r0, [sp]
strh r3, [sp, #8]
strb r3, [sp, #2]
str r3, [sp, #4]
strb r1, [sp, #0xe]
strh r7, [sp, #0xa]
strh r2, [sp, #0xc]
bl MewSpawnCheck
cmp r0, #0
beq _02308254
add r0, sp, #0
mov r1, #0
bl SpawnMonster
mov r4, r0
bl EntityIsValid__02307EF8
cmp r0, #0
beq _02308254
mov r0, #0xc800
str r0, [r4, #0x1c]
mov sl, #0
mov sb, #0xaa
mov r7, #0x57
b _02308244
_02308220:
ldr r0, [r4, #0x1c]
mov r1, sb
bl MultiplyByFixedPoint
str r0, [r4, #0x1c]
cmp r0, #0x100
blt _0230824C
mov r0, r7
bl AdvanceFrame
add sl, sl, #1
_02308244:
cmp sl, #0x64
blt _02308220
_0230824C:
mov r0, #0
str r0, [r4, #0x1c]
_02308254:
add r8, r8, #1
_02308258:
cmp r8, r6
blt _0230814C
_02308260:
mov r0, #1
bl ov29_022E38E0
_02308268:
add sp, sp, #0x1a0
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_02308270: .word 0x02353538
_02308274: .word 0x022C4560
_02308278: .word 0x022C4660
arm_func_end ov29_02307F4C

920
asm/overlay_29_023082A0.s Normal file
View File

@@ -0,0 +1,920 @@
.include "asm/macros.inc"
.include "overlay_29_023082A0.inc"
.text
arm_func_start ov29_023082A0
ov29_023082A0: ; 0x023082A0
stmdb sp!, {r3, lr}
ldr r1, [r0, #0xb4]
ldrb r0, [r1, #6]
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, pc}
ldrb r0, [r1, #0xa8]
bl sub_02058C3C
ldmia sp!, {r3, pc}
arm_func_end ov29_023082A0
arm_func_start ov29_023082C4
ov29_023082C4: ; 0x023082C4
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r0, [r5, #0xb4]
ldrb r0, [r0, #6]
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
bl GetLeader
movs r4, r0
beq _02308338
ldr r0, [r4, #0xb4]
ldrb r0, [r0, #0xd8]
cmp r0, #2
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r2, #0
mov r0, r5
mov r1, r4
mov r3, r2
bl ov29_0230175C
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
bl CanTargetEntity
cmp r0, #0
movne r0, r4
ldmneia sp!, {r3, r4, r5, pc}
_02308338:
mov r0, #0
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ov29_023082C4
arm_func_start RunMonsterAi
RunMonsterAi: ; 0x02308340
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
ldr r4, [r5, #0xb4]
ldrh r1, [r4]
tst r1, #0x8000
beq _02308374
ldrb r1, [r4, #0xc4]
cmp r1, #6
ldmneia sp!, {r3, r4, r5, pc}
mov r1, r5
mov r2, #1
bl EndFrozenClassStatus
ldmia sp!, {r3, r4, r5, pc}
_02308374:
mov r1, #0
strb r1, [r4, #0x10c]
ldrb r1, [r4, #0xbc]
cmp r1, #6
bls _02308394
bl ov29_022EF9EC
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
_02308394:
ldrb r0, [r4, #0xbc]
cmp r0, #7
ldrneb r0, [r4, #0x109]
cmpne r0, #0
beq _023083F0
mov r0, r5
bl ov29_02300B40
cmp r0, #0
beq _023083DC
mov r0, #0
mov r1, r5
mov r2, r0
strb r0, [r4, #0x109]
bl SubstitutePlaceholderStringTags
ldr r1, _023085D4 ; =0x00000DED
mov r0, r5
bl LogMessageByIdWithPopupCheckUser
ldmia sp!, {r3, r4, r5, pc}
_023083DC:
mov r0, r5
bl ov29_0230E914
ldrh r0, [r4, #0x4a]
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
_023083F0:
mov r0, r5
bl HasStatusThatPreventsActing
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
bl ov29_022FB538
add r0, r4, #0x4a
bl ClearMonsterActionFields
ldrb r0, [r4, #0xbc]
cmp r0, #7
bne _02308450
ldrsh r1, [r4, #2]
add r0, r4, #0x4a
bl SetActionPassTurnOrWalk
mov r0, #8
bl DungeonRandInt
strb r0, [r4, #0x4c]
ldrsh r1, [r5, #4]
add r0, r4, #0x100
strh r1, [r0, #0x7e]
ldrsh r1, [r5, #6]
sub r1, r1, #1
strh r1, [r0, #0x80]
ldmia sp!, {r3, r4, r5, pc}
_02308450:
mov r0, r5
bl ov29_0230E914
ldrh r0, [r4, #0x4a]
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, #0x15
bl IqSkillIsEnabled
cmp r0, #0
bne _02308510
mov r0, r5
bl ChooseAiMove
ldrh r0, [r4, #0x4a]
cmp r0, #0
ldmneia sp!, {r3, r4, r5, pc}
ldrb r0, [r4, #0xd0]
cmp r0, #2
bne _023084A8
ldrsh r1, [r4, #2]
add r0, r4, #0x4a
bl SetActionPassTurnOrWalk
ldmia sp!, {r3, r4, r5, pc}
_023084A8:
ldrsh r0, [r4, #2]
bl GetCanMoveFlag
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, #1
bl AiMovement
ldrb r0, [r4, #6]
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, #0x17
bl IqSkillIsEnabled
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldrh r0, [r4, #0x4a]
cmp r0, #1
ldmhiia sp!, {r3, r4, r5, pc}
mov r0, #0
mov r1, r5
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r1, _023085D8 ; =0x00000DEE
mov r0, r5
bl LogMessageByIdWithPopupCheckUser
ldmia sp!, {r3, r4, r5, pc}
_02308510:
ldrb r0, [r4, #0xd0]
cmp r0, #2
bne _0230852C
ldrsh r1, [r4, #2]
add r0, r4, #0x4a
bl SetActionPassTurnOrWalk
ldmia sp!, {r3, r4, r5, pc}
_0230852C:
ldrsh r0, [r4, #2]
bl GetCanMoveFlag
cmp r0, #0
beq _02308548
mov r0, r5
mov r1, #1
bl AiMovement
_02308548:
ldrh r0, [r4, #0x4a]
cmp r0, #0
cmpne r0, #1
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
bl ChooseAiMove
ldrsh r0, [r4, #2]
bl GetCanMoveFlag
cmp r0, #0
ldrneb r0, [r4, #6]
cmpne r0, #0
beq _023085B4
mov r0, r5
mov r1, #0x17
bl IqSkillIsEnabled
cmp r0, #0
beq _023085B4
ldrh r0, [r4, #0x4a]
cmp r0, #1
bhi _023085B4
mov r0, #0
mov r1, r5
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r1, _023085D8 ; =0x00000DEE
mov r0, r5
bl LogMessageByIdWithPopupCheckUser
_023085B4:
ldrh r0, [r4, #0x4a]
cmp r0, #0
cmpne r0, #1
movne r0, #0
strneb r0, [r4, #0x7d]
strneb r0, [r4, #0x14e]
strneb r0, [r4, #0x151]
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
_023085D4: .word 0x00000DED
_023085D8: .word 0x00000DEE
arm_func_end RunMonsterAi
arm_func_start ov29_023085DC
ov29_023085DC: ; 0x023085DC
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
cmp r1, #0
ldr r4, [r5, #0xb4]
beq _02308618
ldrb r1, [r4, #0xd0]
cmp r1, #4
bne _02308618
ldrb r1, [r4, #0x4c]
add r2, r1, #4
and r1, r2, #0xff
and r1, r1, #7
strb r1, [r4, #0x4c]
bl UpdateAiTargetPos
ldmia sp!, {r3, r4, r5, pc}
_02308618:
ldrb r0, [r4, #0xd0]
cmp r0, #2
ldmneia sp!, {r3, r4, r5, pc}
mov r0, #8
bl DungeonRandInt
strb r0, [r4, #0x4c]
mov r0, r5
bl UpdateAiTargetPos
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ov29_023085DC
arm_func_start ov29_0230863C
ov29_0230863C: ; 0x0230863C
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x40
ldr r7, [sp, #0x68]
ldrsh r4, [sp, #0x6c]
ldr r6, [sp, #0x74]
str r7, [sp]
stmib sp, {r4, r6}
mov r8, r2
mov sl, r0
mov sb, r1
bl ApplyDamage
cmp r0, #0
ldreqb r0, [r8, #0x10]
cmpeq r0, #0
bne _02308F68
mov r0, sl
bl EntityIsValid__02308FBC
cmp r0, #0
beq _02308F68
mov r0, sb
bl EntityIsValid__02308FBC
cmp r0, #0
beq _02308F68
ldr r0, [sl]
cmp r0, #1
ldreq r0, [sb]
cmpeq r0, #1
bne _02308F68
ldr r0, [sb, #0xb4]
ldrb r0, [r0, #0xd2]
cmp r0, #0xc
bne _023086D4
ldr r1, _02308F70 ; =0x02352AEC
mov r0, sl
ldr r2, [r1]
mov r1, sb
mov r3, #1
bl BoostOffensiveStat
_023086D4:
ldr r0, [sp, #0x70]
cmp r0, #0
beq _02308F68
mov r0, sb
bl ov29_02300D50
cmp r0, #0
ldreq r0, [sb, #0xb4]
ldreqb r0, [r0, #0xd2]
cmpeq r0, #0
movne r0, #0
bne _02308F64
mov r0, sl
mov r1, #0x29
bl IqSkillIsEnabled
cmp r0, #0
beq _02308730
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308F74 ; =0x022C442C
ldrsh r1, [r1]
cmp r0, r1
movlt r0, #0
blt _02308F64
_02308730:
ldrb r0, [r8, #0xd]
bl ov29_0231EA30
cmp r0, #0
bne _02308778
cmp sl, sb
beq _02308778
ldrsh r1, [sl, #4]
ldrsh r0, [sb, #4]
sub r0, r1, r0
bl Abs
cmp r0, #1
bgt _02308778
ldrsh r1, [sl, #6]
ldrsh r0, [sb, #6]
sub r0, r1, r0
bl Abs
cmp r0, #1
ble _02308780
_02308778:
mov r0, #0
b _023087B4
_02308780:
ldr r0, [sb, #0xb4]
ldrb r0, [r0, #0xd5]
cmp r0, #0xd
bne _023087A8
mov r0, sb
mov r1, sl
bl ov29_022E5E84
mov r0, sb
mov r1, sl
bl ov29_0231EDFC
_023087A8:
mov r0, sl
mov r1, sb
bl ov29_0230D654
_023087B4:
cmp r0, #0
movne r0, #1
bne _02308F64
ldrb r0, [r8, #0xd]
bl ov29_0231EA30
mov r4, r0
cmp sl, sb
mov r5, #0
beq _02308808
ldrsh r1, [sl, #4]
ldrsh r0, [sb, #4]
sub r0, r1, r0
bl Abs
cmp r0, #1
bgt _02308808
ldrsh r1, [sl, #6]
ldrsh r0, [sb, #6]
sub r0, r1, r0
bl Abs
cmp r0, #1
ble _02308810
_02308808:
mov r0, #0
b _02308A28
_02308810:
add r0, sp, #0x2c
bl ResetDamageDesc
ldr r0, [sb, #0xb4]
cmp r4, #0
ldrb r0, [r0, #0xd5]
bne _023088E4
cmp r0, #4
bne _0230883C
mov r0, sb
bl ov29_022E3F24
add r5, r5, #4
_0230883C:
ldr r0, [sb, #0xb4]
ldrb r0, [r0, #0xd5]
cmp r0, #0xa
bne _02308858
mov r0, sb
bl ov29_022E3F24
add r5, r5, #1
_02308858:
mov r0, sb
mov r1, #0x20
bl ExclusiveItemEffectIsActive__0230A9B8
cmp r0, #0
mov r0, sb
mov r1, #0x23
addne r5, r5, #4
bl ExclusiveItemEffectIsActive__0230A9B8
cmp r0, #0
mov r0, sb
mov r1, #0x31
addne r5, r5, #1
bl IqSkillIsEnabled
cmp r0, #0
beq _023088B0
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308F78 ; =0x022C44C0
mov r0, r0, lsl #0x10
ldrsh r1, [r1]
cmp r1, r0, asr #16
addgt r5, r5, #4
_023088B0:
mov r0, sb
mov r1, #0x27
bl IqSkillIsEnabled
cmp r0, #0
beq _023088F8
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308F7C ; =0x022C4464
mov r0, r0, lsl #0x10
ldrsh r1, [r1]
cmp r1, r0, asr #16
addgt r5, r5, #1
b _023088F8
_023088E4:
cmp r0, #8
bne _023088F8
mov r0, sb
bl ov29_022E40C0
add r5, r5, #4
_023088F8:
ldr r0, [sb, #0xb4]
ldrb r0, [r0, #0xd5]
cmp r0, #0xf
bne _02308914
mov r0, sb
bl ov29_022E57D4
add r5, r5, #2
_02308914:
mov r0, sl
mov r1, sb
mov r2, #0x12
mov r3, #1
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
addne r5, r5, #2
cmp r5, #0
beq _02308A1C
ldr r2, _02308F80 ; =0x00000C3F
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
ldr r0, [r8]
mov r1, #6
mul r2, r0, r5
mov r0, r2, asr #1
add r0, r2, r0, lsr #30
mov r0, r0, asr #2
str r0, [sp, #0x2c]
ldrb r2, [r8, #0xc]
mov r0, #2
mov r3, #0
strb r2, [sp, #0x38]
str r1, [sp, #0x30]
str r0, [sp, #0x34]
ldrb r0, [r8, #0xd]
strb r0, [sp, #0x39]
strb r3, [sp, #0x3a]
strb r3, [sp, #0x3b]
strb r3, [sp, #0x3c]
ldr r0, [sb, #0xb4]
ldrb r0, [r0, #0xd5]
cmp r0, #0xf
bne _023089FC
mov r2, #1
add r1, sp, #0xc
mov r0, sb
strb r2, [sp, #0x39]
bl ov29_023380FC
mov fp, r0
ldrsh r5, [sp, #0x6c]
mov r4, #0
b _023089F0
_023089C4:
str r7, [sp]
stmib sp, {r5, r6}
add r0, sp, #0xc
ldr r1, [r0, r4, lsl #2]
mov r0, sb
add r2, sp, #0x2c
mov r3, #0
bl ApplyDamage
add r0, r4, #1
mov r0, r0, lsl #0x10
mov r4, r0, asr #0x10
_023089F0:
cmp r4, fp
blt _023089C4
b _02308A1C
_023089FC:
ldrsh r0, [sp, #0x6c]
str r7, [sp]
add r2, sp, #0x2c
str r0, [sp, #4]
mov r0, sb
mov r1, sl
str r6, [sp, #8]
bl ApplyDamage
_02308A1C:
mov r0, sl
mov r1, sb
bl ov29_0230D654
_02308A28:
cmp r0, #0
movne r0, #1
bne _02308F64
cmp sl, sb
beq _02308A6C
ldrsh r1, [sl, #4]
ldrsh r0, [sb, #4]
sub r0, r1, r0
bl Abs
cmp r0, #1
bgt _02308A6C
ldrsh r1, [sl, #6]
ldrsh r0, [sb, #6]
sub r0, r1, r0
bl Abs
cmp r0, #1
ble _02308A74
_02308A6C:
mov r0, #0
b _02308ECC
_02308A74:
ldrb r0, [r8, #0xd]
bl ov29_0231EA30
mov r4, r0
mov r0, sb
mov r1, #0xb
ldr r6, [sl, #0xb4]
bl ExclusiveItemEffectIsActive__0230A9B8
cmp r0, #0
beq _02308B04
cmp r4, #0
bne _02308B04
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308F84 ; =0x022C45B4
ldrsh r1, [r1]
cmp r0, r1
bge _02308B04
mov r0, #0x12c
bl DungeonRandInt
cmp r0, #0x64
mov r2, #0xb
bge _02308AE0
mov r0, sl
mov r1, sb
mov r3, #0x40
bl ov29_0230F728
b _02308B04
_02308AE0:
cmp r0, #0xc8
mov r0, sl
mov r1, sb
bge _02308AFC
mov r3, #0x10
bl ov29_0230F728
b _02308B04
_02308AFC:
mov r3, #0x80
bl ov29_0230F728
_02308B04:
ldr r5, _02308F88 ; =0x023535DC
b _02308B54
_02308B0C:
ldrb r1, [r5]
mov r0, sb
bl ExclusiveItemEffectIsActive__0230A9B8
cmp r0, #0
beq _02308B50
ldr r3, [r5, #8]
mov r0, sl
mov r1, sb
mov r2, r4
blx r3
cmp r0, #0
beq _02308B50
ldrb r2, [r5]
ldr r3, [r5, #4]
mov r0, sl
mov r1, sb
bl ov29_0230F728
_02308B50:
add r5, r5, #0x10
_02308B54:
ldrb r0, [r5]
cmp r0, #0
bne _02308B0C
mov r0, sb
mov r1, #0x1b
bl ExclusiveItemEffectIsActive__0230A9B8
cmp r0, #0
beq _02308BB0
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308F8C ; =0x022C45B0
ldrsh r1, [r1]
cmp r0, r1
bge _02308BB0
mov r0, sb
bl HasLowHealth
cmp r0, #0
beq _02308BB0
mov r0, sl
mov r1, sb
mov r2, #0x1b
mov r3, #0x40000
bl ov29_0230F728
_02308BB0:
mov r0, sl
mov r1, sb
mov r2, #5
mov r3, #1
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
beq _02308C38
ldrb r0, [r6, #0xf7]
mov r5, #0
cmp r0, #1
beq _02308C00
mov r0, sl
mov r1, #0xa
bl ov29_02301EAC
cmp r0, #0
bne _02308C00
mov r0, sl
bl LevitateIsActive
cmp r0, #0
beq _02308C0C
_02308C00:
bl GravityIsActive
cmp r0, #0
moveq r5, #1
_02308C0C:
cmp r5, #0
bne _02308C38
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308F90 ; =0x022C4564
ldrsh r1, [r1]
cmp r0, r1
addlt r0, r6, #0x100
ldrlth r1, [r0, #0x92]
orrlt r1, r1, #1
strlth r1, [r0, #0x92]
_02308C38:
mov r0, sl
mov r1, sb
mov r2, #0xa
mov r3, #1
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
beq _02308C88
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308F94 ; =0x022C468C
ldrsh r1, [r1]
cmp r0, r1
bge _02308C88
add r0, r6, #0x100
ldrh r3, [r0, #0x92]
ldr r1, _02308F98 ; =0x0237CA6D
mov r2, #0
orr r3, r3, #2
strh r3, [r0, #0x92]
strb r2, [r1]
_02308C88:
mov r0, sl
mov r1, sb
mov r2, #0x17
mov r3, #1
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
beq _02308CDC
mov r0, sl
mov r1, #0x11
bl MonsterIsType
cmp r0, #0
beq _02308CDC
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308F9C ; =0x022C4460
ldrsh r1, [r1]
cmp r0, r1
addlt r0, r6, #0x100
ldrlth r1, [r0, #0x92]
orrlt r1, r1, #4
strlth r1, [r0, #0x92]
_02308CDC:
mov r0, sl
mov r1, sb
mov r2, #0x20
mov r3, #1
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
beq _02308D24
cmp r4, #0
bne _02308D24
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308FA0 ; =0x022C4550
ldrsh r1, [r1]
cmp r0, r1
addlt r0, r6, #0x100
ldrlth r1, [r0, #0x92]
orrlt r1, r1, #8
strlth r1, [r0, #0x92]
_02308D24:
mov r0, sl
mov r1, sb
mov r2, #0x27
mov r3, #1
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
beq _02308D64
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308FA4 ; =0x022C45C0
ldrsh r1, [r1]
cmp r0, r1
addlt r0, r6, #0x100
ldrlth r1, [r0, #0x92]
orrlt r1, r1, #0x20
strlth r1, [r0, #0x92]
_02308D64:
mov r0, sl
mov r1, sb
mov r2, #0x3d
mov r3, #1
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
beq _02308DE0
cmp r4, #0
bne _02308DE0
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308FA8 ; =0x022C45AC
ldrsh r1, [r1]
cmp r0, r1
bge _02308DE0
mov r0, #3
bl DungeonRandInt
cmp r0, #1
addlt r0, r6, #0x100
ldrlth r1, [r0, #0x92]
orrlt r1, r1, #0x40
strlth r1, [r0, #0x92]
blt _02308DE0
cmp r0, #2
add r0, r6, #0x100
ldrlth r1, [r0, #0x92]
orrlt r1, r1, #0x10
strlth r1, [r0, #0x92]
ldrgeh r1, [r0, #0x92]
orrge r1, r1, #0x80
strgeh r1, [r0, #0x92]
_02308DE0:
mov r0, sl
mov r1, sb
mov r2, #0x3e
mov r3, #1
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
beq _02308E20
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308FAC ; =0x022C467C
ldrsh r1, [r1]
cmp r0, r1
addlt r0, r6, #0x100
ldrlth r1, [r0, #0x92]
orrlt r1, r1, #0x100
strlth r1, [r0, #0x92]
_02308E20:
mov r0, sl
mov r1, sb
mov r2, #0x44
mov r3, #1
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
beq _02308E80
ldr r1, [sb, #0xb4]
ldrsh r0, [r6, #2]
ldrsh r1, [r1, #2]
bl sub_02054EC8
cmp r0, #0
beq _02308E80
cmp r4, #0
bne _02308E80
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308FB0 ; =0x022C4524
ldrsh r1, [r1]
cmp r0, r1
addlt r0, r6, #0x100
ldrlth r1, [r0, #0x92]
orrlt r1, r1, #0x200
strlth r1, [r0, #0x92]
_02308E80:
mov r2, #1
mov r0, sl
mov r1, sb
mov r3, r2
bl DefenderAbilityIsActive__0230A940
cmp r0, #0
beq _02308EC0
mov r0, #0x64
bl DungeonRandInt
ldr r1, _02308FB4 ; =0x022C4638
ldrsh r1, [r1]
cmp r0, r1
addlt r0, r6, #0x100
ldrlth r1, [r0, #0x92]
orrlt r1, r1, #0x400
strlth r1, [r0, #0x92]
_02308EC0:
mov r0, sl
mov r1, sb
bl ov29_0230D654
_02308ECC:
cmp r0, #0
movne r0, #1
bne _02308F64
ldr r0, [sb, #0xb4]
ldrb r1, [r0, #0xe0]
cmp r1, #2
bne _02308F4C
ldr r1, _02308FB8 ; =0x02353538
ldrb r2, [r0, #0xe8]
ldr r1, [r1]
add r1, r1, r2, lsl #2
add r1, r1, #0x12000
ldr r4, [r1, #0xb78]
cmp r4, #0
moveq r1, #0
streqb r1, [r0, #0xe0]
beq _02308F4C
ldr r1, [r4, #0xb4]
ldr r2, [r0, #0xe4]
ldr r1, [r1, #0xb0]
cmp r2, r1
movne r1, #0
strneb r1, [r0, #0xe0]
bne _02308F4C
mov r0, r4
mov r1, sb
bl ov29_022E45D0
ldr r1, [r8]
mov r0, r4
mov r2, #0xc
mov r3, #0x238
bl ov29_0230D11C
_02308F4C:
mov r0, sl
mov r1, sb
bl ov29_0230D654
cmp r0, #0
movne r0, #1
moveq r0, #0
_02308F64:
cmp r0, #0
_02308F68:
add sp, sp, #0x40
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_02308F70: .word 0x02352AEC
_02308F74: .word 0x022C442C
_02308F78: .word 0x022C44C0
_02308F7C: .word 0x022C4464
_02308F80: .word 0x00000C3F
_02308F84: .word 0x022C45B4
_02308F88: .word 0x023535DC
_02308F8C: .word 0x022C45B0
_02308F90: .word 0x022C4564
_02308F94: .word 0x022C468C
_02308F98: .word 0x0237CA6D
_02308F9C: .word 0x022C4460
_02308FA0: .word 0x022C4550
_02308FA4: .word 0x022C45C0
_02308FA8: .word 0x022C45AC
_02308FAC: .word 0x022C467C
_02308FB0: .word 0x022C4524
_02308FB4: .word 0x022C4638
_02308FB8: .word 0x02353538
arm_func_end ov29_0230863C

6264
asm/overlay_29_02308FE0.s Normal file

File diff suppressed because it is too large Load Diff

497
asm/overlay_29_0230E914.s Normal file
View File

@@ -0,0 +1,497 @@
.include "asm/macros.inc"
.include "overlay_29_0230E914.inc"
.text
arm_func_start ov29_0230E914
ov29_0230E914: ; 0x0230E914
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x50
mov sl, r0
ldr r7, [sl, #0xb4]
bl ov29_02300B40
cmp r0, #0
movne r0, #0
strneb r0, [r7, #0x109]
bne _0230ED98
ldrb r0, [r7, #0x109]
cmp r0, #0
beq _0230EAF0
ldrb r0, [r7, #0x62]
tst r0, #1
movne r0, #1
moveq r0, #0
tst r0, #0xff
beq _0230ED98
ldrsh r0, [r7, #0x66]
bl GetItemCategoryVeneer
cmp r0, #0
bne _0230EA08
mov r0, sl
add r2, r7, #0x62
mov r1, #2
mov r3, #1
bl ov29_0230EDB0
mov r4, #0
ldr r6, _0230EDA0 ; =0x0237C9D8
ldr r5, _0230EDA4 ; =0x023536FC
b _0230E9DC
_0230E990:
ldr r0, [r6, r4, lsl #2]
bl DungeonRandOutcome__022EAB20
cmp r0, #0
beq _0230E9D8
add r0, r7, #0x4a
mov r1, #0x24
bl SetMonsterActionFields
mov r0, #0x81
strb r0, [r7, #0x4e]
ldrsh r1, [sl, #4]
ldr r0, _0230EDA8 ; =0x0237C9F8
strh r1, [r7, #0x50]
ldrsh r1, [sl, #6]
strh r1, [r7, #0x52]
ldr r0, [r0, r4, lsl #2]
and r0, r0, #7
strb r0, [r7, #0x4c]
b _0230E9E8
_0230E9D8:
add r4, r4, #1
_0230E9DC:
ldr r0, [r5]
cmp r4, r0
blt _0230E990
_0230E9E8:
ldr r0, _0230EDA4 ; =0x023536FC
ldr r0, [r0]
cmp r4, r0
bne _0230ED98
add r0, r7, #0x4a
mov r1, #0x39
bl SetMonsterActionFields
b _0230ED98
_0230EA08:
cmp r0, #1
bne _0230EAAC
add r2, sp, #0
mov r0, sl
add r1, r7, #0x62
mov r3, #1
bl ov29_0230F02C
ldr r0, _0230EDA4 ; =0x023536FC
ldr r1, [r0]
cmp r1, #0
beq _0230EA9C
ldr r0, [r0]
bl DungeonRandInt
mov r4, r0
add r0, r7, #0x4a
mov r1, #0x24
bl SetMonsterActionFields
mov r0, #0x81
strb r0, [r7, #0x4e]
ldrsh r2, [sl, #4]
add r1, sp, #0
add r0, sl, #4
strh r2, [r7, #0x50]
ldrsh r2, [sl, #6]
add r1, r1, r4, lsl #2
strh r2, [r7, #0x52]
bl GetDirectionTowardsPosition
and r0, r0, #7
strb r0, [r7, #0x4c]
add r1, sp, #0
mov r0, r4, lsl #2
ldrh r0, [r1, r0]
add r1, r1, r4, lsl #2
strh r0, [r7, #0x5a]
ldrh r0, [r1, #2]
strh r0, [r7, #0x5c]
b _0230ED98
_0230EA9C:
add r0, r7, #0x4a
mov r1, #0x39
bl SetMonsterActionFields
b _0230ED98
_0230EAAC:
add r0, r0, #0xfe
and r0, r0, #0xff
cmp r0, #1
add r0, r7, #0x4a
bhi _0230EAE4
mov r1, #0x23
bl SetMonsterActionFields
mov r0, #0x81
strb r0, [r7, #0x4e]
ldrsh r0, [sl, #4]
strh r0, [r7, #0x50]
ldrsh r0, [sl, #6]
strh r0, [r7, #0x52]
b _0230ED98
_0230EAE4:
mov r1, #0x39
bl SetMonsterActionFields
b _0230ED98
_0230EAF0:
mov r0, sl
mov r1, #0x16
bl IqSkillIsEnabled
cmp r0, #0
beq _0230ED98
mov r5, #1
b _0230ED90
_0230EB0C:
cmp r5, #1
addeq r8, r7, #0x62
moveq r6, #0x81
beq _0230EB84
cmp r5, #0
bne _0230EB58
ldrsh r0, [sl, #4]
ldrsh r1, [sl, #6]
bl GetTile
ldr r0, [r0, #0x10]
cmp r0, #0
beq _0230ED8C
ldr r1, [r0]
cmp r1, #3
bne _0230ED8C
bl ov29_022E1610
mov r8, r0
mov r6, #0x80
b _0230EB84
_0230EB58:
ldrb r0, [r7, #7]
cmp r0, #0
beq _0230ED98
ldr r0, _0230EDAC ; =0x020AF6B8
sub r1, r5, #1
ldr r0, [r0]
sub r2, r5, #2
ldr r3, [r0, #0x384]
mov r0, #6
mla r8, r2, r0, r3
and r6, r1, #0xff
_0230EB84:
ldrb r1, [r8]
tst r1, #1
movne r0, #1
moveq r0, #0
tst r0, #0xff
beq _0230ED8C
ldrb r0, [r8]
tst r0, #2
bne _0230ED8C
tst r1, #8
movne r0, #1
moveq r0, #0
tst r0, #0xff
bne _0230ED8C
ldrsh r0, [r8, #4]
mov r1, #0
bl TestItemAiFlag
cmp r0, #0
beq _0230EC4C
mov r0, sl
mov r1, r8
mov r2, #2
bl ov29_0231E05C
movs r4, r0
beq _0230EC4C
ldrsh r0, [r8, #4]
bl GetItemCategoryVeneer
mov sb, r0
cmp sb, #9
ldreqb r0, [r7, #6]
cmpeq r0, #0
beq _0230EC4C
mov r0, r4
bl DungeonRandOutcome__022EAB20
cmp r0, #0
beq _0230EC4C
cmp sb, #9
add r0, r7, #0x4a
bne _0230EC2C
mov r1, #0x31
bl SetMonsterActionFields
b _0230EC34
_0230EC2C:
mov r1, #0x23
bl SetMonsterActionFields
_0230EC34:
strb r6, [r7, #0x4e]
ldrsh r0, [sl, #4]
strh r0, [r7, #0x50]
ldrsh r0, [sl, #6]
strh r0, [r7, #0x52]
b _0230ED98
_0230EC4C:
mov r0, r7
bl ov29_02302368
cmp r0, #0
beq _0230ED8C
mov r4, #1
ldr fp, _0230EDA4 ; =0x023536FC
b _0230ED84
_0230EC68:
ldrsh r0, [r8, #4]
mov r1, r4
bl TestItemAiFlag
cmp r0, #0
beq _0230ED80
ldrsh r0, [r8, #4]
bl GetItemCategoryVeneer
cmp r0, #1
mov r0, sl
mov r3, #0
bne _0230ED14
mov r1, r8
add r2, sp, #0
bl ov29_0230F02C
ldr r0, [fp]
cmp r0, #0
beq _0230ED80
ldr r0, _0230EDA4 ; =0x023536FC
ldr r0, [r0]
bl DungeonRandInt
mov r4, r0
add r0, r7, #0x4a
mov r1, #0x24
bl SetMonsterActionFields
strb r6, [r7, #0x4e]
ldrsh r2, [sl, #4]
add r1, sp, #0
add r0, sl, #4
strh r2, [r7, #0x50]
ldrsh r2, [sl, #6]
add r1, r1, r4, lsl #2
strh r2, [r7, #0x52]
bl GetDirectionTowardsPosition
and r0, r0, #7
strb r0, [r7, #0x4c]
add r1, sp, #0
mov r0, r4, lsl #2
ldrh r0, [r1, r0]
add r1, r1, r4, lsl #2
strh r0, [r7, #0x5a]
ldrh r0, [r1, #2]
strh r0, [r7, #0x5c]
b _0230ED98
_0230ED14:
mov r1, r4
mov r2, r8
bl ov29_0230EDB0
mov sb, #0
b _0230ED74
_0230ED28:
ldr r0, _0230EDA0 ; =0x0237C9D8
ldr r0, [r0, sb, lsl #2]
bl DungeonRandOutcome__022EAB20
cmp r0, #0
beq _0230ED70
add r0, r7, #0x4a
mov r1, #0x24
bl SetMonsterActionFields
strb r6, [r7, #0x4e]
ldrsh r1, [sl, #4]
ldr r0, _0230EDA8 ; =0x0237C9F8
strh r1, [r7, #0x50]
ldrsh r1, [sl, #6]
strh r1, [r7, #0x52]
ldr r0, [r0, sb, lsl #2]
and r0, r0, #7
strb r0, [r7, #0x4c]
b _0230ED98
_0230ED70:
add sb, sb, #1
_0230ED74:
ldr r0, [fp]
cmp sb, r0
blt _0230ED28
_0230ED80:
add r4, r4, #1
_0230ED84:
cmp r4, #3
blt _0230EC68
_0230ED8C:
add r5, r5, #1
_0230ED90:
cmp r5, #0x34
blt _0230EB0C
_0230ED98:
add sp, sp, #0x50
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_0230EDA0: .word 0x0237C9D8
_0230EDA4: .word 0x023536FC
_0230EDA8: .word 0x0237C9F8
_0230EDAC: .word 0x020AF6B8
arm_func_end ov29_0230E914
arm_func_start ov29_0230EDB0
ov29_0230EDB0: ; 0x0230EDB0
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x14
ldr r4, _0230EFF4 ; =0x023536FC
mov r5, #0
mov sl, r0
str r3, [sp, #8]
ldr r0, _0230EFF8 ; =0x0237C9D0
str r1, [sp]
str r2, [sp, #4]
str r5, [r4]
mov fp, r5
_0230EDDC:
strb fp, [r0, r5]
add r5, r5, #1
cmp r5, #8
blt _0230EDDC
mvn r0, #0
str r0, [sp, #0x10]
_0230EDF4:
ldr r0, _0230EFFC ; =0x02353538
ldr r0, [r0]
add r0, r0, fp, lsl #2
add r0, r0, #0x12000
ldr r4, [r0, #0xb78]
mov r0, r4
bl EntityIsValid__0230F008
cmp r0, #0
cmpne sl, r4
beq _0230EFE0
ldr r0, [sp]
mov r2, #0
cmp r0, #1
mov r0, sl
mov r1, r4
bne _0230EE50
mov r3, r2
bl ov29_0230175C
cmp r0, #0
bne _0230EFE0
mov r0, #3
str r0, [sp, #0xc]
b _0230EE68
_0230EE50:
mov r3, #1
bl ov29_0230175C
cmp r0, #1
bne _0230EFE0
mov r0, #1
str r0, [sp, #0xc]
_0230EE68:
mov r0, sl
mov r1, r4
bl ov29_022E274C
cmp r0, #0
beq _0230EFE0
ldrsh r6, [r4, #4]
ldrsh r7, [sl, #4]
sub r0, r7, r6
bl Abs
mov r5, r0
ldrsh r8, [r4, #6]
ldrsh sb, [sl, #6]
sub r0, sb, r8
bl Abs
ldr r1, [sl, #0xb4]
ldrb r1, [r1, #0xee]
cmp r1, #0
bne _0230EEC4
cmp r5, r0
movgt r1, r5
movle r1, r0
cmp r1, #0xa
bgt _0230EFE0
_0230EEC4:
cmp r5, r0
ldr r5, [sp, #0x10]
bne _0230EF08
cmp r7, r6
cmplt sb, r8
movlt r5, #1
blt _0230EF54
cmp r7, r6
bge _0230EEF4
cmp sb, r8
movgt r5, #3
bgt _0230EF54
_0230EEF4:
cmp r7, r6
cmpgt sb, r8
movgt r5, #5
movle r5, #7
b _0230EF54
_0230EF08:
cmp r7, r6
bne _0230EF1C
cmp sb, r8
movlt r5, #0
blt _0230EF54
_0230EF1C:
cmp r7, r6
bge _0230EF30
cmp sb, r8
moveq r5, #2
beq _0230EF54
_0230EF30:
cmp r7, r6
bne _0230EF44
cmp sb, r8
movgt r5, #4
bgt _0230EF54
_0230EF44:
cmp r7, r6
ble _0230EF54
cmp sb, r8
moveq r5, #6
_0230EF54:
cmp r5, #0
blt _0230EFE0
ldr r0, _0230EFF8 ; =0x0237C9D0
ldrb r0, [r0, r5]
cmp r0, #0
bne _0230EFE0
mov r0, sl
mov r1, r4
mov r2, r5
mov r3, #0xa
bl IsTargetInRange
cmp r0, #0
beq _0230EFE0
ldr r0, _0230EFF8 ; =0x0237C9D0
mov r1, #1
strb r1, [r0, r5]
ldr r0, [sp, #8]
cmp r0, #0
ldr r0, _0230EFF4 ; =0x023536FC
ldr r1, [r0]
ldr r0, _0230F000 ; =0x0237C9F8
str r5, [r0, r1, lsl #2]
movne r0, #0x64
bne _0230EFC4
ldr r2, [sp, #0xc]
ldr r1, [sp, #4]
mov r0, r4
bl ov29_0231E05C
_0230EFC4:
ldr r1, _0230EFF4 ; =0x023536FC
ldr r2, [r1]
ldr r1, _0230F004 ; =0x0237C9D8
str r0, [r1, r2, lsl #2]
ldr r0, _0230EFF4 ; =0x023536FC
add r1, r2, #1
str r1, [r0]
_0230EFE0:
add fp, fp, #1
cmp fp, #0x14
blt _0230EDF4
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_0230EFF4: .word 0x023536FC
_0230EFF8: .word 0x0237C9D0
_0230EFFC: .word 0x02353538
_0230F000: .word 0x0237C9F8
_0230F004: .word 0x0237C9D8
arm_func_end ov29_0230EDB0

2247
asm/overlay_29_0230F02C.s Normal file

File diff suppressed because it is too large Load Diff

600
asm/overlay_29_02311034.s Normal file
View File

@@ -0,0 +1,600 @@
.include "asm/macros.inc"
.include "overlay_29_02311034.inc"
.text
arm_func_start ItemIsActive__02311034
ItemIsActive__02311034: ; 0x02311034
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r1, #0x6f
mov r5, r0
bl AbilityIsActive2
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
bl HasHeldItem
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ItemIsActive__02311034
arm_func_start ExclusiveItemEffectIsActive__02311064
ExclusiveItemEffectIsActive__02311064: ; 0x02311064
stmdb sp!, {r3, lr}
ldr r2, [r0, #0xb4]
ldrb r0, [r2, #6]
cmp r0, #0
movne r0, #0
ldmneia sp!, {r3, pc}
add r0, r2, #0x228
bl ExclusiveItemEffectFlagTest
ldmia sp!, {r3, pc}
arm_func_end ExclusiveItemEffectIsActive__02311064
arm_func_start TickStatusAndHealthRegen
TickStatusAndHealthRegen: ; 0x02311088
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
movs sl, r0
mov r4, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl ov29_0234B294
ldr r7, [sl, #0xb4]
ldrb r0, [r7, #0xbf]
add r0, r0, #0xfe
and r0, r0, #0xff
cmp r0, #1
bhi _023110E0
mov r0, sl
mov r1, #0x72
bl AbilityIsActive2
cmp r0, #0
moveq r4, #1
_023110E0:
ldrb r0, [r7, #0x150]
cmp r0, #0
cmpeq r4, #0
bne _023112A8
ldrb r0, [r7, #0xd8]
cmp r0, #5
ldrneb r0, [r7, #0xbd]
cmpne r0, #3
beq _023112A8
ldrb r0, [r7, #6]
mov r4, #0
cmp r0, #0
bne _02311120
ldrsh r0, [r7, #2]
bl GetRegenSpeed
mov r4, r0
_02311120:
cmp r4, #0
beq _023112A8
mov r0, sl
mov r1, #0x11
bl ItemIsActive__02311034
cmp r0, #0
bne _02311150
mov r0, sl
mov r1, #0x35
bl IqSkillIsEnabled
cmp r0, #0
beq _0231115C
_02311150:
ldr r0, _02311800 ; =0x022C46F8
ldrsh r0, [r0]
add r4, r4, r0
_0231115C:
ldrb r0, [r7, #0xd5]
mov r1, #3
cmp r0, #6
ldreq r0, _02311804 ; =0x022C46D0
ldreqsh r0, [r0]
addeq r4, r4, r0
mov r0, sl
bl AbilityIsActive2
cmp r0, #0
beq _0231119C
mov r0, sl
bl GetApparentWeather
cmp r0, #4
ldreq r0, _02311808 ; =0x022C4578
ldreqsh r0, [r0]
addeq r4, r4, r0
_0231119C:
mov r0, sl
mov r1, #0x55
bl AbilityIsActive2
cmp r0, #0
beq _023111C8
mov r0, sl
bl GetApparentWeather
cmp r0, #4
ldreq r0, _02311808 ; =0x022C4578
ldreqsh r0, [r0]
addeq r4, r4, r0
_023111C8:
mov r0, sl
mov r1, #0x4d
bl AbilityIsActive2
cmp r0, #0
beq _023111F4
mov r0, sl
bl GetApparentWeather
cmp r0, #5
ldreq r0, _0231180C ; =0x022C4630
ldreqsh r0, [r0]
addeq r4, r4, r0
_023111F4:
mov r0, sl
mov r1, #0x49
bl ExclusiveItemEffectIsActive__02311064
cmp r0, #0
ldrne r0, _02311810 ; =0x022C4674
ldrsh r2, [r7, #0x12]
ldrnesh r0, [r0]
ldrsh r1, [r7, #0x16]
addne r4, r4, r0
cmp r4, #0x1f4
movgt r4, #0x1f4
add r3, r2, r1
cmp r4, #0x1e
ldr r0, _02311814 ; =0x000003E7
movlt r4, #0x1e
cmp r3, r0
movgt r3, r0
add r0, r7, #0x200
ldrsh r1, [r0, #0x10]
add r2, r7, #0x210
add r1, r1, r3
strh r1, [r0, #0x10]
b _02311268
_02311250:
ldrsh r1, [r7, #0x10]
add r1, r1, #1
strh r1, [r7, #0x10]
ldrsh r1, [r2]
sub r1, r1, r4
strh r1, [r2]
_02311268:
ldrsh r1, [r0, #0x10]
cmp r1, r4
bge _02311250
ldrsh r1, [r7, #0x12]
ldrsh r0, [r7, #0x16]
ldr r2, _02311814 ; =0x000003E7
add r1, r1, r0
cmp r1, r2
ldrsh r0, [r7, #0x10]
movle r2, r1
cmp r0, r2
blt _023112A8
ldr r0, _02311814 ; =0x000003E7
cmp r1, r0
movgt r1, r0
strh r1, [r7, #0x10]
_023112A8:
ldrb r0, [r7, #0xbd]
cmp r0, #0
beq _0231131C
add r0, r7, #0xbe
bl TickStatusTurnCounter
ldrb r0, [r7, #0xbe]
cmp r0, #0
bne _0231131C
ldr r0, [r7, #0x110]
cmp r0, #1
ble _02311304
ldrb r0, [r7, #0xbd]
cmp r0, #4
bne _02311304
mov r0, #0
bl DisplayActions
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_02311304:
mov r2, #1
mov r0, sl
mov r1, sl
mov r3, r2
str r2, [sp]
bl ov29_02305FDC
_0231131C:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xbf]
cmp r0, #0
beq _02311364
add r0, r7, #0xc0
bl TickStatusTurnCounter
ldrb r0, [r7, #0xc0]
cmp r0, #0
bne _02311364
mov r0, sl
mov r1, sl
bl ov29_023061A8
_02311364:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xc4]
cmp r0, #0
beq _023113B0
add r0, r7, #0xcc
bl TickStatusTurnCounter
ldrb r0, [r7, #0xcc]
cmp r0, #0
bne _023113B0
mov r0, sl
mov r1, sl
mov r2, #1
bl EndFrozenClassStatus
_023113B0:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xd0]
cmp r0, #0
beq _023113F8
add r0, r7, #0xd1
bl TickStatusTurnCounter
ldrb r0, [r7, #0xd1]
cmp r0, #0
bne _023113F8
mov r0, sl
mov r1, sl
bl EndCringeClassStatus
_023113F8:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xd5]
cmp r0, #0
beq _02311468
add r0, r7, #0xd6
bl TickStatusTurnCounter
ldrb r0, [r7, #0xd5]
cmp r0, #0x10
bne _02311450
add r0, r7, #0xd7
bl TickStatusTurnCounter
ldrb r0, [r7, #0xd7]
cmp r0, #0
bne _02311450
mov r0, sl
bl ov29_023183E8
_02311450:
ldrb r0, [r7, #0xd6]
cmp r0, #0
bne _02311468
mov r0, sl
mov r1, sl
bl ov29_023064F4
_02311468:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xd8]
cmp r0, #0
beq _023114B8
add r0, r7, #0xdb
bl TickStatusTurnCounter
ldrb r0, [r7, #0xdb]
cmp r0, #0
bne _023114B8
mov r0, sl
mov r1, sl
mov r2, #0
mov r3, #1
bl ov29_02306728
_023114B8:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xe0]
cmp r0, #0
beq _02311500
add r0, r7, #0xe9
bl TickStatusTurnCounter
ldrb r0, [r7, #0xe9]
cmp r0, #0
bne _02311500
mov r0, sl
mov r1, sl
bl ov29_023068C4
_02311500:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xec]
cmp r0, #0
beq _02311548
add r0, r7, #0xed
bl TickStatusTurnCounter
ldrb r0, [r7, #0xed]
cmp r0, #0
bne _02311548
mov r0, sl
mov r1, sl
bl ov29_02306950
_02311548:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xef]
cmp r0, #0
beq _02311594
add r0, r7, #0xf0
bl TickStatusTurnCounter
ldrb r0, [r7, #0xf0]
cmp r0, #0
bne _02311594
mov r0, sl
mov r1, sl
mov r2, #0
bl ov29_02306A00
_02311594:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xf1]
cmp r0, #0
beq _023115DC
add r0, r7, #0xf2
bl TickStatusTurnCounter
ldrb r0, [r7, #0xf2]
cmp r0, #0
bne _023115DC
mov r0, sl
mov r1, sl
bl ov29_02306B28
_023115DC:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xf3]
cmp r0, #0
beq _02311624
add r0, r7, #0xf4
bl TickStatusTurnCounter
ldrb r0, [r7, #0xf4]
cmp r0, #0
bne _02311624
mov r0, sl
mov r1, sl
bl ov29_02306BF8
_02311624:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xf5]
cmp r0, #0
beq _0231166C
add r0, r7, #0xf6
bl TickStatusTurnCounter
ldrb r0, [r7, #0xf6]
cmp r0, #0
bne _0231166C
mov r0, sl
mov r1, sl
bl ov29_02306C64
_0231166C:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0xf7]
cmp r0, #0
beq _023116B4
add r0, r7, #0xf8
bl TickStatusTurnCounter
ldrb r0, [r7, #0xf8]
cmp r0, #0
bne _023116B4
mov r0, sl
mov r1, sl
bl ov29_02306CD0
_023116B4:
mov r0, sl
bl EntityIsValid__02311010
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
bl IsFloorOver
cmp r0, #0
ldmneia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldrb r0, [r7, #0x105]
cmp r0, #0
beq _0231174C
add r0, r7, #5
add r0, r0, #0x100
bl TickStatusTurnCounter
ldrb r0, [r7, #0x105]
cmp r0, #0
bne _0231174C
ldrb r0, [r7, #0x104]
cmp r0, #2
bne _02311720
mov r0, #0
mov r1, sl
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r1, _02311818 ; =0x00000CC6
mov r0, sl
bl LogMessageByIdWithPopupCheckUser
b _02311744
_02311720:
cmp r0, #1
bne _02311744
mov r0, #0
mov r1, sl
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r1, _0231181C ; =0x00000CC7
mov r0, sl
bl LogMessageByIdWithPopupCheckUser
_02311744:
mov r0, #0
strb r0, [r7, #0x104]
_0231174C:
mov r6, #0
add r0, r7, #0x19
mov sb, r6
add r5, r0, #0x100
add r4, r7, #0x114
mov fp, #1
_02311764:
add r8, r7, sb
ldrb r0, [r8, #0x119]
cmp r0, #0
beq _02311788
add r0, r5, sb
bl TickStatusTurnCounter
ldrb r0, [r8, #0x119]
cmp r0, #0
moveq r6, fp
_02311788:
ldrb r0, [r8, #0x114]
cmp r0, #0
beq _023117A8
add r0, r4, sb
bl TickStatusTurnCounter
ldrb r0, [r8, #0x114]
cmp r0, #0
moveq r6, #1
_023117A8:
add sb, sb, #1
cmp sb, #5
blt _02311764
cmp r6, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
ldr r1, [sl, #0xb4]
mov r0, sl
ldr r5, [r1, #0x110]
bl CalcSpeedStageWrapper
mov r4, r0
cmp r5, r4
ldmeqia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
mov r0, #0
mov r1, sl
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r0, _02311820 ; =0x02353318
mov r1, r4, lsl #1
ldrh r1, [r0, r1]
mov r0, sl
bl LogMessageByIdWithPopupCheckUser
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_02311800: .word 0x022C46F8
_02311804: .word 0x022C46D0
_02311808: .word 0x022C4578
_0231180C: .word 0x022C4630
_02311810: .word 0x022C4674
_02311814: .word 0x000003E7
_02311818: .word 0x00000CC6
_0231181C: .word 0x00000CC7
_02311820: .word 0x02353318
arm_func_end TickStatusAndHealthRegen
arm_func_start InflictSleepStatusSingle
InflictSleepStatusSingle: ; 0x02311824
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r4, #0
bl EntityIsValid__023118B4
cmp r0, #0
moveq r0, r4
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r5, [r7, #0xb4]
ldrb r0, [r5, #0xbd]
cmp r0, #3
beq _023118A0
cmp r0, #1
beq _02311898
mov r0, #1
strb r0, [r5, #0xbd]
cmp r6, #0x7f
beq _02311890
mov r0, r7
mov r1, #0x2f
bl AbilityIsActive2
cmp r0, #0
beq _02311890
add r0, r6, r6, lsr #31
mov r6, r0, asr #1
cmp r6, #1
movlt r6, #1
_02311890:
strb r6, [r5, #0xbe]
b _023118A4
_02311898:
mov r4, #1
b _023118A4
_023118A0:
mov r4, #2
_023118A4:
mov r0, r7
bl UpdateStatusIconFlags
mov r0, r4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end InflictSleepStatusSingle

4074
asm/overlay_29_023118D8.s Normal file

File diff suppressed because it is too large Load Diff

4334
asm/overlay_29_0231513C.s Normal file

File diff suppressed because it is too large Load Diff

76
asm/overlay_29_02318D58.s Normal file
View File

@@ -0,0 +1,76 @@
.include "asm/macros.inc"
.include "overlay_29_02318D58.inc"
.text
arm_func_start ov29_02318D58
ov29_02318D58: ; 0x02318D58
stmdb sp!, {r4, lr}
mov r4, r0
bl EntityIsValid__02318D34
cmp r0, #0
ldmeqia sp!, {r4, pc}
ldr r1, [r4, #0xb4]
ldrb r0, [r1, #0xd2]
cmp r0, #1
cmpne r0, #0xc
movne r0, #0
strneb r0, [r1, #0xd2]
strneb r0, [r1, #0x154]
strneb r0, [r1, #0x10b]
mov r0, r4
bl UpdateStatusIconFlags
ldmia sp!, {r4, pc}
arm_func_end ov29_02318D58
arm_func_start ov29_02318D98
ov29_02318D98: ; 0x02318D98
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r6, r1
mov r7, r0
mov r0, r6
mov r5, r2
bl EntityIsValid__02318E4C
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
mov r0, #0
ldr r4, [r6, #0xb4]
mov r1, r6
mov r2, r0
bl SubstitutePlaceholderStringTags
ldrb r0, [r4, #0xd5]
cmp r0, r5
bne _02318DEC
ldr r2, _02318E40 ; =0x00000CF3
mov r0, r7
mov r1, r6
bl LogMessageByIdWithPopupCheckUserTarget
ldmia sp!, {r3, r4, r5, r6, r7, pc}
_02318DEC:
mov r0, r6
bl ov29_022E3F20
ldrb r0, [r4, #0xd5]
cmp r0, #4
cmpne r0, #0xa
cmpne r0, #0xf
beq _02318E20
ldr r1, _02318E44 ; =0x022C4750
mov r0, r6
mov r2, #0
bl CalcStatusDuration
add r0, r0, #1
strb r0, [r4, #0xd6]
_02318E20:
ldr r2, _02318E48 ; =0x00000CF2
mov r0, r7
mov r1, r6
strb r5, [r4, #0xd5]
bl LogMessageByIdWithPopupCheckUserTarget
mov r0, r6
bl UpdateStatusIconFlags
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
_02318E40: .word 0x00000CF3
_02318E44: .word 0x022C4750
_02318E48: .word 0x00000CF2
arm_func_end ov29_02318D98

1265
asm/overlay_29_02318E70.s Normal file

File diff suppressed because it is too large Load Diff

1331
asm/overlay_29_02319FB0.s Normal file

File diff suppressed because it is too large Load Diff

1877
asm/overlay_29_0231B1B8.s Normal file

File diff suppressed because it is too large Load Diff

2481
asm/overlay_29_0231CBEC.s Normal file

File diff suppressed because it is too large Load Diff

525
asm/overlay_29_0231EDFC.s Normal file
View File

@@ -0,0 +1,525 @@
.include "asm/macros.inc"
.include "overlay_29_0231EDFC.inc"
.text
arm_func_start ov29_0231EDFC
ov29_0231EDFC: ; 0x0231EDFC
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0xf4
mov r5, r0
mov r4, r1
cmp r5, r4
beq _0231EE54
cmp r5, #0
moveq r0, #0
beq _0231EE34
ldr r0, [r5]
cmp r0, #1
moveq r0, #1
movne r0, #0
and r0, r0, #0xff
_0231EE34:
cmp r0, #0
beq _0231EE54
mov r0, r5
mov r1, #0x53
bl AbilityIsActive2
cmp r0, #0
movne r0, #0
bne _0231EE60
_0231EE54:
mov r0, r4
mov r1, #0xe
bl AbilityIsActive2
_0231EE60:
cmp r0, #0
beq _0231EE8C
mov r0, #0
mov r1, r4
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _0231F544 ; =0x00000E45
mov r0, r5
mov r1, r4
bl LogMessageByIdWithPopupCheckUserTarget
b _0231F53C
_0231EE8C:
cmp r5, r4
bne _0231EEB8
mov r0, #0
mov r1, r4
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _0231F548 ; =0x00000E46
mov r0, r5
mov r1, r4
bl LogMessageByIdWithPopupCheckUserTarget
b _0231F53C
_0231EEB8:
ldrh r0, [r4, #4]
mov sl, #0
mov r8, sl
strh r0, [sp, #0x40]
ldrh r0, [r4, #6]
strh r0, [sp, #0x42]
b _0231F098
_0231EED4:
mov sl, #0
ldr fp, _0231F54C ; =0x0235171C
mov r6, sl
_0231EEE0:
ldr r0, _0231F550 ; =0x02353538
ldr r0, [r0]
add r0, r0, r6, lsl #2
add r0, r0, #0x12000
ldr sb, [r0, #0xb78]
mov r0, sb
bl EntityIsValid__0231F570
cmp r0, #0
cmpne r5, sb
cmpne r4, sb
beq _0231F080
mov r0, r5
mov r1, sb
bl ov29_022E274C
cmp r0, #0
beq _0231F080
cmp r8, #0
mov r0, r5
mov r2, #0
mov r1, sb
mov r3, #1
bne _0231EF48
bl ov29_0230175C
cmp r0, #1
bne _0231F080
b _0231EF54
_0231EF48:
bl ov29_0230175C
cmp r0, #0
bne _0231F080
_0231EF54:
cmp r8, #0
mov r7, #0
bne _0231EFF8
b _0231EFBC
_0231EF64:
mov r0, r7, lsl #2
ldrsh r1, [fp, r0]
ldrsh r3, [sb, #4]
add r0, fp, r7, lsl #2
ldrsh r2, [r0, #2]
add r0, r3, r1
strh r0, [sp, #0x34]
ldrsh r3, [sb, #6]
mov r0, r4
add r1, sp, #0x34
add r2, r3, r2
strh r2, [sp, #0x36]
bl ov29_022FF764
cmp r0, #0
bne _0231EFB8
ldrsh r0, [sp, #0x34]
ldrsh r1, [sp, #0x36]
bl GetTile
ldrh r0, [r0]
tst r0, #0x800
beq _0231EFC4
_0231EFB8:
add r7, r7, #1
_0231EFBC:
cmp r7, #8
blt _0231EF64
_0231EFC4:
cmp r7, #8
beq _0231F080
cmp sl, #0x28
bge _0231F080
ldrh r1, [sb, #4]
mov r3, sl, lsl #2
add r0, sp, #0x54
add r2, r0, r3
strh r1, [r0, r3]
ldrh r0, [sb, #6]
add sl, sl, #1
strh r0, [r2, #2]
b _0231F080
_0231EFF8:
mov r0, r7, lsl #2
ldrsh r1, [fp, r0]
ldrsh r3, [sb, #4]
add r0, fp, r7, lsl #2
ldrsh r2, [r0, #2]
add r0, r3, r1
strh r0, [sp, #0x30]
ldrsh r3, [sb, #6]
mov r0, r4
add r1, sp, #0x30
add r2, r3, r2
strh r2, [sp, #0x32]
bl ov29_022FF764
cmp r0, #0
bne _0231F074
ldrsh r0, [sp, #0x30]
ldrsh r1, [sp, #0x32]
bl GetTile
ldrh r0, [r0]
tst r0, #0x800
bne _0231F074
cmp sl, #0x28
bge _0231F074
ldrh r3, [sp, #0x30]
ldrh r2, [sp, #0x32]
mov r0, sl, lsl #2
add r1, sp, #0x54
add ip, r1, r0
strh r3, [r1, r0]
add sl, sl, #1
strh r2, [ip, #2]
_0231F074:
add r7, r7, #1
cmp r7, #8
blt _0231EFF8
_0231F080:
add r6, r6, #1
cmp r6, #0x14
blt _0231EEE0
cmp sl, #0
bne _0231F0A0
add r8, r8, #1
_0231F098:
cmp r8, #2
blt _0231EED4
_0231F0A0:
cmp sl, #0
beq _0231F0D0
mov r0, sl
bl DungeonRandInt
add r1, sp, #0x54
mov r2, r0, lsl #2
add r0, r1, r0, lsl #2
ldrh r1, [r1, r2]
ldrh r0, [r0, #2]
strh r1, [sp, #0x40]
strh r0, [sp, #0x42]
b _0231F178
_0231F0D0:
mov r0, r5
bl HasDropeyeStatus
mov r2, r0
add r1, sp, #0x44
add r0, r5, #4
bl ov29_022E9298
mov r7, #0
add r6, sp, #0x2c
b _0231F154
_0231F0F4:
ldr r0, [sp, #0x44]
ldr r1, [sp, #0x4c]
bl DungeonRandRange
strh r0, [sp, #0x2c]
ldr r0, [sp, #0x48]
ldr r1, [sp, #0x50]
bl DungeonRandRange
strh r0, [sp, #0x2e]
mov r0, r4
mov r1, r6
bl ov29_022FF764
cmp r0, #0
bne _0231F150
ldrsh r0, [sp, #0x2c]
ldrsh r1, [sp, #0x2e]
bl GetTile
ldrh r0, [r0]
tst r0, #0x800
ldreqh r1, [sp, #0x2c]
ldreqh r0, [sp, #0x2e]
streqh r1, [sp, #0x40]
streqh r0, [sp, #0x42]
beq _0231F15C
_0231F150:
add r7, r7, #1
_0231F154:
cmp r7, #0x64
blt _0231F0F4
_0231F15C:
cmp r7, #0x64
bne _0231F178
ldr r2, _0231F554 ; =0x00000E48
mov r0, r5
mov r1, r4
bl LogMessageByIdWithPopupCheckUserTarget
b _0231F53C
_0231F178:
mov r0, #0
mov r1, r4
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _0231F558 ; =0x00000E47
mov r0, r5
mov r1, r4
bl LogMessageByIdWithPopupCheckUserTarget
mov r0, r4
bl ov29_022E272C
cmp r0, #0
beq _0231F1B0
ldr r0, _0231F55C ; =0x00000212
bl ov29_022EACCC
_0231F1B0:
ldrsh r3, [sp, #0x42]
ldrsh r2, [r4, #6]
ldrsh r1, [sp, #0x40]
ldrsh r0, [r4, #4]
sub r2, r3, r2
ldr r6, [r4, #0xb4]
sub r0, r1, r0
cmp r0, r2
movle r0, r2
mov sb, r0, lsl #4
cmp sb, #0x50
movgt sb, #0x50
cmp sb, #0xa
add r0, sp, #0x40
add r1, r4, #4
ldrb r8, [r6, #0x4c]
mov r7, #0
movlt sb, #0xa
bl GetDirectionTowardsPosition
mov r6, r0
ldr r0, _0231F54C ; =0x0235171C
mov r1, r6, lsl #2
ldrsh r0, [r0, r1]
mov r1, #3
mov r0, r0, lsl #8
bl DivideInt
ldrsh sl, [sp, #0x40]
mov r1, #0x18
ldr r2, _0231F560 ; =0x0235171E
mov r3, r6, lsl #2
smulbb r1, sl, r1
add r1, r1, #0xc
add r6, r0, r1, lsl #8
ldrsh r2, [r2, r3]
mov r1, #3
mov r0, r2, lsl #8
bl DivideInt
ldrsh r2, [sp, #0x42]
mov r1, #0x18
ldr sl, [r4, #0xc]
smulbb r1, r2, r1
add r1, r1, #0x10
add fp, r0, r1, lsl #8
ldr r0, [r4, #0x10]
mov r1, sb
sub r0, fp, r0
bl DivideInt
str sl, [sp, #0x38]
ldr r1, [r4, #0x10]
str r0, [sp, #0x18]
sub r0, r6, sl
str r1, [sp, #0x3c]
mov r1, sb
mov sl, #0
bl DivideInt
str r0, [sp, #0x1c]
b _0231F31C
_0231F294:
ldr r2, [sp, #0x38]
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x3c]
add r0, r2, r0
str r0, [sp, #0x38]
ldr r0, [sp, #0x18]
add r0, r1, r0
str r0, [sp, #0x3c]
mov r0, r4
add r1, sp, #0x38
bl ov29_022E1A40
mov r0, r4
bl ov29_022E272C
cmp r0, #0
beq _0231F308
mov r0, r7
bl sub_020018D0
mov r0, r0, lsl #5
str r0, [r4, #0x1c]
mov r0, #0x3b
bl AdvanceFrame
tst sl, #3
bne _0231F308
and r8, r8, #7
mov r0, r4
mov r1, #6
mov r2, r8
bl ov29_023049A8
add r8, r8, #1
_0231F308:
mov r0, #0x800
mov r1, sb
bl DivideInt
add r7, r7, r0
add sl, sl, #1
_0231F31C:
cmp sl, sb
blt _0231F294
add r1, sp, #0x38
mov r0, r4
str r6, [sp, #0x38]
str fp, [sp, #0x3c]
mov r2, #0
str r2, [r4, #0x1c]
bl ov29_022E1A40
mov r0, #0x3b
bl AdvanceFrame
ldr r0, [r4, #0xb4]
and r1, r8, #7
strb r1, [r0, #0x4c]
ldrsh r0, [sp, #0x40]
ldrsh r1, [sp, #0x42]
bl GetTile
ldr r7, [r0, #0xc]
mov r0, r7
bl EntityIsValid__0231F570
cmp r0, #0
bne _0231F394
ldrsh r1, [sp, #0x40]
ldrsh r2, [sp, #0x42]
mov r0, r4
mov r3, #1
bl ov29_022F85F0
mov r0, r4
bl ov29_02321238
b _0231F53C
_0231F394:
mov r8, #0
ldr r6, _0231F54C ; =0x0235171C
add sb, sp, #0x28
b _0231F40C
_0231F3A4:
mov r1, r8, lsl #2
add r0, r6, r8, lsl #2
ldrsh sl, [sp, #0x40]
ldrsh r3, [r6, r1]
ldrsh r2, [sp, #0x42]
ldrsh r1, [r0, #2]
add r3, sl, r3
mov r0, r4
add r2, r2, r1
mov r1, sb
strh r3, [sp, #0x28]
strh r2, [sp, #0x2a]
bl ov29_022FF764
cmp r0, #0
bne _0231F408
ldrsh r0, [sp, #0x28]
ldrsh r1, [sp, #0x2a]
bl GetTile
ldrh r0, [r0]
tst r0, #0x800
ldreqh r1, [sp, #0x28]
ldreqh r0, [sp, #0x2a]
streqh r1, [sp, #0x40]
streqh r0, [sp, #0x42]
beq _0231F414
_0231F408:
add r8, r8, #1
_0231F40C:
cmp r8, #8
blt _0231F3A4
_0231F414:
cmp r8, #8
bne _0231F434
mov r2, #0
mov r0, r5
mov r1, r4
mov r3, r2
bl TryWarp
b _0231F454
_0231F434:
add r1, sp, #0x40
mov r0, r4
bl ov29_0232033C
ldrsh r1, [sp, #0x40]
ldrsh r2, [sp, #0x42]
mov r0, r4
mov r3, #1
bl ov29_022F85F0
_0231F454:
ldr r0, [r7]
cmp r0, #1
bne _0231F4D4
ldr r1, _0231F564 ; =0x00000163
add r0, sp, #0x20
bl InitMove
add r1, sp, #0x20
mov r0, r7
bl ov29_02324854
cmp r0, #0
bne _0231F4B4
mov r3, #0
str r3, [sp]
ldr r0, _0231F568 ; =0x022C4458
ldr r1, _0231F56C ; =0x00000259
str r3, [sp, #4]
str r1, [sp, #8]
str r3, [sp, #0xc]
str r3, [sp, #0x10]
ldrsh r2, [r0]
mov r0, r5
mov r1, r7
str r3, [sp, #0x14]
bl CalcDamageFixedNoCategory
_0231F4B4:
mov r0, r7
bl EntityIsValid__0231F570
cmp r0, #0
beq _0231F4D4
ldr r1, [r7, #0xb4]
mov r0, r7
ldrb r1, [r1, #0x4c]
bl ov29_02304A48
_0231F4D4:
mov r3, #0
str r3, [sp]
ldr r0, _0231F568 ; =0x022C4458
str r3, [sp, #4]
mov r1, #0x258
str r1, [sp, #8]
str r3, [sp, #0xc]
str r3, [sp, #0x10]
ldrsh r2, [r0]
mov r0, r5
mov r1, r4
str r3, [sp, #0x14]
bl CalcDamageFixedNoCategory
mov r0, r4
bl EntityIsValid__0231F570
cmp r0, #0
beq _0231F528
ldr r1, [r4, #0xb4]
mov r0, r4
ldrb r1, [r1, #0x4c]
bl ov29_02304A48
_0231F528:
mov r0, #0x1e
mov r1, #0x3b
bl ov29_022EA370
mov r0, r4
bl ov29_02321238
_0231F53C:
add sp, sp, #0xf4
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_0231F544: .word 0x00000E45
_0231F548: .word 0x00000E46
_0231F54C: .word 0x0235171C
_0231F550: .word 0x02353538
_0231F554: .word 0x00000E48
_0231F558: .word 0x00000E47
_0231F55C: .word 0x00000212
_0231F560: .word 0x0235171E
_0231F564: .word 0x00000163
_0231F568: .word 0x022C4458
_0231F56C: .word 0x00000259
arm_func_end ov29_0231EDFC

461
asm/overlay_29_0231F594.s Normal file
View File

@@ -0,0 +1,461 @@
.include "asm/macros.inc"
.include "overlay_29_0231F594.inc"
.text
arm_func_start ov29_0231F594
ov29_0231F594: ; 0x0231F594
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
ldr r1, _0231F6D4 ; =0x02353538
mov r8, r0
ldr r0, [r1]
mov r6, #0
add r0, r0, #0x4000
ldrb r0, [r0, #0xda]
bl ov29_0234413C
cmp r0, #0
bne _0231F5CC
ldr r1, _0231F6D8 ; =0x00000C08
mov r0, r8
bl LogMessageByIdWithPopupCheckUser
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
_0231F5CC:
bl ov29_02337E94
cmp r0, #0
beq _0231F5E8
ldr r1, _0231F6DC ; =0x00000C09
mov r0, r8
bl LogMessageByIdWithPopupCheckUser
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
_0231F5E8:
mov r7, r6
mov sb, #1
mov r4, r6
_0231F5F4:
mov r5, r4
_0231F5F8:
mov r0, r5
mov r1, r7
bl GetTileSafe
ldrh r1, [r0]
and r1, r1, #3
cmp r1, #2
bne _0231F63C
ldrh r2, [r0]
mov r1, r7
bic r2, r2, #3
strh r2, [r0]
ldrh r2, [r0]
orr r2, r2, #1
strh r2, [r0]
mov r0, r5
bl ov29_02336694
mov r6, sb
_0231F63C:
add r5, r5, #1
cmp r5, #0x38
blt _0231F5F8
add r7, r7, #1
cmp r7, #0x20
blt _0231F5F4
mov r5, #0
mov r4, r5
_0231F65C:
mov r7, r4
_0231F660:
mov r0, r7
mov r1, r5
bl ov29_02336A84
add r7, r7, #1
cmp r7, #0x38
blt _0231F660
add r5, r5, #1
cmp r5, #0x20
blt _0231F65C
cmp r6, #0
beq _0231F6A8
mov r0, r8
mov r1, #0x210
bl ov29_022E56A0
ldr r1, _0231F6E0 ; =0x00000C07
mov r0, r8
bl LogMessageByIdWithPopupCheckUser
b _0231F6B4
_0231F6A8:
ldr r1, _0231F6D8 ; =0x00000C08
mov r0, r8
bl LogMessageByIdWithPopupCheckUser
_0231F6B4:
ldr r0, _0231F6D4 ; =0x02353538
mov r1, #1
ldr r0, [r0]
strb r1, [r0, #0x78f]
bl ov29_02304B64
bl ov29_02339CE8
bl ov29_02336F4C
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
.align 2, 0
_0231F6D4: .word 0x02353538
_0231F6D8: .word 0x00000C08
_0231F6DC: .word 0x00000C09
_0231F6E0: .word 0x00000C07
arm_func_end ov29_0231F594
arm_func_start ov29_0231F6E4
ov29_0231F6E4: ; 0x0231F6E4
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x38
ldr r1, _0231FBE4 ; =0x02353538
mov sl, r0
ldr r0, [r1]
add r0, r0, #0x4000
ldrb r0, [r0, #0xda]
bl ov29_0234410C
cmp r0, #0
bne _0231F71C
mov r0, sl
mov r1, #0xbd0
bl LogMessageByIdWithPopupCheckUser
b _0231FBDC
_0231F71C:
ldr r0, _0231FBE8 ; =0x000013BC
mov r2, #0
mov r1, #0xf
str r2, [sp, #0xc]
bl MemAlloc
mov r4, r0
mov r6, #0
add r0, r4, #0x1f8
mov r5, r4
mov r8, r6
add fp, r0, #0x1000
b _0231F86C
_0231F74C:
add r0, r1, r8, lsl #2
add r0, r0, #0x12000
ldr r7, [r0, #0xbc8]
mov r0, r7
bl EntityIsValid__0231FBFC
cmp r0, #0
beq _0231F868
cmp r6, #0x19
bge _0231F884
ldrsh sb, [r7, #4]
ldrsh r0, [sl, #4]
sub r0, sb, r0
bl Abs
cmp r0, #2
bgt _0231F7A0
ldrsh r1, [r7, #6]
ldrsh r0, [sl, #6]
sub r0, r1, r0
bl Abs
cmp r0, #2
ble _0231F868
_0231F7A0:
mov r0, sb
ldrsh r1, [r7, #6]
bl GetTile
ldrh r0, [r0]
tst r0, #3
beq _0231F868
mov r0, #3
str r0, [r5]
mov r0, #6
mul sb, r6, r0
add r0, fp, sb
str r0, [r5, #0xb4]
ldrh r1, [r7, #4]
mov r0, r5
strh r1, [r5, #4]
ldrh r1, [r7, #6]
strh r1, [r5, #6]
ldrsh r2, [r7, #4]
mov r1, #0x18
ldrsh r3, [r7, #6]
smulbb r1, r2, r1
mov r2, #0x18
smulbb r2, r3, r2
add r1, r1, #4
add r2, r2, #4
mov r1, r1, lsl #8
mov r2, r2, lsl #8
bl ov29_022E1A84
mov r1, #0
strh r1, [r5, #0x26]
mov r1, #1
strb r1, [r5, #0x20]
mov r1, #0
strb r1, [r5, #0x22]
str r1, [r5, #0x1c]
ldr r1, _0231FBE4 ; =0x02353538
add r0, r4, sb
ldr r2, [r1]
mov r1, #6
mla r1, r8, r1, r2
add r1, r1, #0x3e00
ldrh r2, [r1, #0x40]
add r0, r0, #0x1100
add r5, r5, #0xb8
strh r2, [r0, #0xf8]
ldrh r2, [r1, #0x42]
add r6, r6, #1
strh r2, [r0, #0xfa]
ldrh r1, [r1, #0x44]
strh r1, [r0, #0xfc]
_0231F868:
add r8, r8, #1
_0231F86C:
ldr r0, _0231FBE4 ; =0x02353538
ldr r1, [r0]
add r0, r1, #0x3f00
ldrsh r0, [r0, #0xc0]
cmp r8, r0
blt _0231F74C
_0231F884:
cmp r6, #0
bne _0231F89C
ldr r1, _0231FBEC ; =0x00000BCF
mov r0, sl
bl LogMessageByIdWithPopupCheckUser
b _0231FBD4
_0231F89C:
mov r1, #0
mov sb, r1
add r0, sp, #0x18
_0231F8A8:
strb sb, [r0, r1]
add r1, r1, #1
cmp r1, #0x1e
blt _0231F8A8
b _0231F9A8
_0231F8BC:
ldrsh r1, [sl, #4]
ldrsh r0, [sl, #6]
mov r7, #0
ldr r5, _0231FBF0 ; =0x02351844
mov r8, r7
strh r1, [sp, #0x14]
strh r0, [sp, #0x16]
add fp, sp, #0x18
_0231F8DC:
cmp r8, #0x1e
bge _0231F978
mov r2, r8, lsl #2
ldrsh r0, [r5, r2]
cmp r0, #0x63
beq _0231F978
ldrb r1, [fp, r8]
cmp r1, #0
bne _0231F970
add r1, r5, r2
ldrsh r3, [sl, #4]
ldrsh r2, [sl, #6]
ldrsh r1, [r1, #2]
add r0, r3, r0
strh r0, [sp, #0x14]
add r0, r2, r1
strh r0, [sp, #0x16]
ldrsh r0, [sp, #0x14]
ldrsh r1, [sp, #0x16]
bl GetTile
ldrh r2, [r0]
and r1, r2, #3
cmp r1, #1
bne _0231F970
tst r2, #0x200
ldreq r0, [r0, #0x10]
cmpeq r0, #0
bne _0231F970
ldrh r2, [sp, #0x14]
add r0, r4, sb, lsl #2
add r0, r0, #0x1200
ldrh r1, [sp, #0x16]
strh r2, [r0, #0x8e]
mov r7, #1
strh r1, [r0, #0x90]
strb r7, [fp, r8]
b _0231F978
_0231F970:
add r8, r8, #1
b _0231F8DC
_0231F978:
cmp r7, #0
bne _0231F9A4
mov r0, #0xb8
mul r2, sb, r0
add r1, r4, sb, lsl #2
mov r3, #0
str r3, [r4, r2]
sub r2, r0, #0xb9
add r0, r1, #0x1200
strh r2, [r0, #0x8e]
strh r2, [r0, #0x90]
_0231F9A4:
add sb, sb, #1
_0231F9A8:
cmp sb, r6
blt _0231F8BC
mov fp, #0x18
mov sb, #0
mov r5, fp
mov r7, #0xb8
b _0231FA58
_0231F9C4:
mla r0, sb, r7, r4
bl EntityIsValid__0231FBFC
cmp r0, #0
beq _0231FA54
mov r0, #0xb8
mla r8, sb, r0, r4
mov r1, #1
add r0, r8, #4
bl ov29_023456BC
ldrsh r0, [r8, #4]
ldrsh r1, [r8, #6]
bl ov29_023391EC
add r0, r4, sb, lsl #2
add r0, r0, #0x1200
ldrsh r2, [r0, #0x8e]
ldr r0, [r8, #0xc]
mov r1, #0x3c
smulbb r2, r2, fp
add r2, r2, #4
rsb r0, r0, r2, lsl #8
bl DivideInt
add r1, r4, sb, lsl #3
add r1, r1, #0x1000
str r0, [r1, #0x2f4]
add r0, r4, sb, lsl #2
add r0, r0, #0x1200
ldrsh r0, [r0, #0x90]
ldr r2, [r8, #0x10]
mov r1, #0x3c
smulbb r0, r0, r5
add r0, r0, #4
rsb r0, r2, r0, lsl #8
bl DivideInt
add r1, r4, sb, lsl #3
add r1, r1, #0x1000
str r0, [r1, #0x2f8]
_0231FA54:
add sb, sb, #1
_0231FA58:
cmp sb, r6
blt _0231F9C4
ldr r1, _0231FBF4 ; =0x00000222
mov r0, sl
bl ov29_022E56A0
ldr r0, _0231FBE4 ; =0x02353538
mov r7, #0
ldr r0, [r0]
mov r8, r7
add r0, r0, #0x1a000
ldrb r0, [r0, #0x245]
mov r5, r7
str r0, [sp, #8]
_0231FA8C:
and r0, r7, #0xff
mov sb, #0
str r0, [sp, #0x10]
b _0231FB0C
_0231FA9C:
mov r0, #0xb8
mul fp, sb, r0
add r0, r4, fp
bl EntityIsValid__0231FBFC
cmp r0, #0
beq _0231FB08
mov r0, #0xb8
mla r0, sb, r0, r4
add r1, r4, sb, lsl #3
add r2, r1, #0x1000
ldr r1, [r2, #0x2f4]
ldr r2, [r2, #0x2f8]
str r0, [sp, #4]
bl ov29_022E1A90
mov r0, r8
bl sub_020018D0
mov r1, #0xc
mul r1, r0, r1
ldr r0, [sp, #4]
ldr r3, [sp, #0x10]
str r1, [r0, #0x1c]
mov r1, #0
str r1, [sp]
ldr r1, [sp, #8]
add r0, r4, fp
mov r2, #0
bl ov29_023457C8
_0231FB08:
add sb, sb, #1
_0231FB0C:
cmp sb, r6
blt _0231FA9C
mov r0, #0x13
bl AdvanceFrame
tst r5, #3
addeq r7, r7, #1
add r5, r5, #1
add r8, r8, #0x22
cmp r5, #0x3c
and r7, r7, #7
blt _0231FA8C
add r0, r4, #0x8e
mov fp, #1
mov sb, #0
add r8, r0, #0x1200
mov r7, fp
mov r5, #0xb8
b _0231FB9C
_0231FB54:
add r0, r4, sb, lsl #2
add r0, r0, #0x1200
ldrsh r0, [r0, #0x8e]
cmp r0, #0
blt _0231FB98
mla r0, sb, r5, r4
bl ov29_022E1610
mov r1, r0
mov r2, fp
add r0, r8, sb, lsl #2
bl ov29_02345538
add r0, r4, sb, lsl #2
add r1, r0, #0x1200
ldrsh r0, [r1, #0x8e]
ldrsh r1, [r1, #0x90]
bl ov29_023391EC
str r7, [sp, #0xc]
_0231FB98:
add sb, sb, #1
_0231FB9C:
cmp sb, r6
blt _0231FB54
ldr r0, [sp, #0xc]
cmp r0, #0
beq _0231FBC0
ldr r1, _0231FBF8 ; =0x00000BD1
mov r0, sl
bl LogMessageByIdWithPopupCheckUser
b _0231FBCC
_0231FBC0:
ldr r1, _0231FBEC ; =0x00000BCF
mov r0, sl
bl LogMessageByIdWithPopupCheckUser
_0231FBCC:
mov r0, #1
bl ov29_022F62CC
_0231FBD4:
mov r0, r4
bl MemFree
_0231FBDC:
add sp, sp, #0x38
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_0231FBE4: .word 0x02353538
_0231FBE8: .word 0x000013BC
_0231FBEC: .word 0x00000BCF
_0231FBF0: .word 0x02351844
_0231FBF4: .word 0x00000222
_0231FBF8: .word 0x00000BD1
arm_func_end ov29_0231F6E4

379
asm/overlay_29_0231FC20.s Normal file
View File

@@ -0,0 +1,379 @@
.include "asm/macros.inc"
.include "overlay_29_0231FC20.inc"
.text
arm_func_start TryPounce
TryPounce: ; 0x0231FC20
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
mov sl, r1
mov r6, r0
mov r5, r2
cmp r6, sl
ldr r4, [sl, #0xb4]
beq _0231FC7C
cmp r6, #0
moveq r0, #0
beq _0231FC5C
ldr r0, [r6]
cmp r0, #1
moveq r0, #1
movne r0, #0
and r0, r0, #0xff
_0231FC5C:
cmp r0, #0
beq _0231FC7C
mov r0, r6
mov r1, #0x53
bl AbilityIsActive2
cmp r0, #0
movne r0, #0
bne _0231FC88
_0231FC7C:
mov r0, sl
mov r1, #0xe
bl AbilityIsActive2
_0231FC88:
cmp r0, #0
beq _0231FCB4
mov r0, #0
mov r1, sl
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _0231FDD0 ; =0x00000E56
mov r0, r6
mov r1, sl
bl LogMessageByIdWithPopupCheckUserTarget
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_0231FCB4:
ldr r0, _0231FDD4 ; =0x02353538
ldr r0, [r0]
add r0, r0, #0x4000
ldrb r0, [r0, #0xda]
bl ov29_023440DC
cmp r0, #0
bne _0231FCE4
ldr r2, _0231FDD8 ; =0x00000E55
mov r0, r6
mov r1, sl
bl LogMessageByIdWithPopupCheckUserTarget
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_0231FCE4:
cmp r5, #8
ldreqb r5, [r4, #0x4c]
mov r0, sl
mov r1, #6
mov r2, r5
bl ov29_023049A8
ldr r1, _0231FDDC ; =0x0235171C
mov r2, r5, lsl #2
add r0, r1, r5, lsl #2
mov r5, #0
ldrsh r8, [r1, r2]
ldrsh sb, [r0, #2]
mov r4, r5
mov fp, #0x3a
_0231FD1C:
ldrsh r0, [sl, #4]
ldrsh r1, [sl, #6]
add r0, r0, r8
mov r0, r0, lsl #0x10
mov r6, r0, asr #0x10
add r1, r1, sb
mov r0, r1, lsl #0x10
mov r7, r0, asr #0x10
cmp r6, #0
cmpgt r7, #0
ble _0231FDB4
cmp r6, #0x37
cmplt r7, #0x1f
bge _0231FDB4
mov r0, r6
mov r1, r7
bl GetTile
ldr r1, [r0, #0xc]
cmp r1, #0
bne _0231FDB4
ldrh r0, [r0]
tst r0, #3
beq _0231FDB4
mov r0, sl
mov r1, r6
mov r2, r7
mov r3, r5
bl ov29_022F85F0
mov r0, sl
mov r1, r4
bl ov29_022E1A40
mov r0, sl
bl ov29_022E272C
cmp r0, #0
beq _0231FD1C
mov r0, fp
bl AdvanceFrame
b _0231FD1C
_0231FDB4:
mov r0, sl
bl ov29_022F9C74
mov r0, sl
bl ov29_02321104
mov r0, sl
bl ov29_0232124C
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_0231FDD0: .word 0x00000E56
_0231FDD4: .word 0x02353538
_0231FDD8: .word 0x00000E55
_0231FDDC: .word 0x0235171C
arm_func_end TryPounce
arm_func_start TryBlowAway
TryBlowAway: ; 0x0231FDE0
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x30
ldr r3, _02320154 ; =0x02353538
mov sl, r0
ldr r0, [r3]
mov sb, r1
add r0, r0, #0x4000
ldrb r0, [r0, #0xda]
mov r1, #0xa
mov r4, r2
str r1, [sp, #0x20]
mov fp, #0
bl ov29_023440DC
cmp r0, #0
bne _0231FE30
ldr r2, _02320158 ; =0x00000B97
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
b _0232014C
_0231FE30:
cmp sl, sb
mov r0, fp
mov r1, sb
bne _0231FE5C
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _0232015C ; =0x00000B98
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
b _0232014C
_0231FE5C:
mov r2, r0
bl SubstitutePlaceholderStringTags
cmp sl, sb
beq _0231FEAC
cmp sl, #0
moveq r0, fp
beq _0231FE8C
ldr r0, [sl]
cmp r0, #1
moveq r0, #1
movne r0, fp
and r0, r0, #0xff
_0231FE8C:
cmp r0, #0
beq _0231FEAC
mov r0, sl
mov r1, #0x53
bl AbilityIsActive2
cmp r0, #0
movne r0, #0
bne _0231FEB8
_0231FEAC:
mov r0, sb
mov r1, #0xe
bl AbilityIsActive2
_0231FEB8:
cmp r0, #0
beq _0231FED4
ldr r2, _02320160 ; =0x00000B99
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
b _0232014C
_0231FED4:
add r0, r4, #4
and r2, r0, #7
ldr r3, [sb, #0xb4]
mov r0, sb
mov r1, #6
strb r2, [r3, #0x4c]
bl ov29_023049A8
ldr r1, _02320164 ; =0x00000212
mov r0, sb
bl ov29_022E56A0
ldr r2, _02320168 ; =0x00000B96
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
ldr r1, _0232016C ; =0x0235171C
mov r2, r4, lsl #2
add r0, r1, r4, lsl #2
ldrsh r8, [r1, r2]
ldrsh r7, [r0, #2]
mov r5, #1
mov r4, #0
_0231FF28:
ldrh r0, [sb, #4]
strh r0, [sp, #0x2c]
ldrh r1, [sb, #6]
ldrsh r0, [sp, #0x2c]
strh r1, [sp, #0x2e]
add r0, r0, r8
strh r0, [sp, #0x2c]
ldrsh r0, [sp, #0x2e]
ldrsh r1, [sp, #0x2c]
add r0, r0, r7
strh r0, [sp, #0x2e]
cmp r1, #0
ldrgesh r0, [sp, #0x2e]
cmpge r0, #0
blt _0232003C
cmp r1, #0x38
cmplt r0, #0x20
bge _0232003C
mov r0, r7, lsl #0xa
str r0, [sp, #0x1c]
mov r0, r8, lsl #0xa
str r0, [sp, #0x18]
mov r6, #0
_0231FF84:
ldr r1, [sp, #0x18]
ldr r2, [sp, #0x1c]
mov r0, sb
bl ov29_022E1A90
mov r0, sb
bl ov29_022E272C
cmp r0, #0
beq _0231FFAC
mov r0, #0x19
bl AdvanceFrame
_0231FFAC:
add r6, r6, #1
cmp r6, #6
blt _0231FF84
ldrsh r0, [sp, #0x2c]
ldrsh r1, [sp, #0x2e]
bl GetTile
mov r6, r0
ldr r0, [r6, #0xc]
cmp r0, #0
movne r4, r0
movne r5, #0
bne _0232003C
add r1, sp, #0x2c
mov r0, sb
bl ov29_022FFB90
cmp r0, #0
beq _02320010
ldrh r0, [r6]
tst r0, #3
moveq r5, #0
beq _0232003C
tst r0, #0x13
movne fp, #1
mov r5, #1
b _0232003C
_02320010:
ldrsh r1, [sp, #0x2c]
ldrsh r2, [sp, #0x2e]
mov r0, sb
mov r3, #1
bl ov29_022F85F0
ldr r0, [sp, #0x20]
sub r0, r0, #1
str r0, [sp, #0x20]
cmp r0, #0
bgt _0231FF28
mov r5, #1
_0232003C:
cmp r5, #0
bne _02320088
mov r0, sb
add r1, sb, #4
bl ov29_0232033C
mov r3, #0
str r3, [sp]
ldr r0, _02320170 ; =0x022C4570
str r3, [sp, #4]
mov r1, #0x258
str r1, [sp, #8]
str r3, [sp, #0xc]
str r3, [sp, #0x10]
ldrsh r2, [r0]
mov r0, sl
mov r1, sb
str r3, [sp, #0x14]
bl CalcDamageFixedNoCategory
b _0232009C
_02320088:
cmp fp, #0
beq _0232009C
mov r0, sb
add r1, sb, #4
bl ov29_0232033C
_0232009C:
bl IsFloorOver
cmp r0, #0
bne _0232014C
mov r0, r4
bl EntityIsValid__0232017C
cmp r0, #0
beq _02320118
ldr r1, _02320174 ; =0x00000163
add r0, sp, #0x24
bl InitMove
add r1, sp, #0x24
mov r0, r4
bl ov29_02324854
cmp r0, #0
bne _02320118
mov r0, sl
mov r1, r4
bl ov29_02307BDC
mov r3, #0
str r3, [sp]
ldr r0, _02320170 ; =0x022C4570
ldr r1, _02320178 ; =0x00000259
str r3, [sp, #4]
str r1, [sp, #8]
str r3, [sp, #0xc]
str r3, [sp, #0x10]
ldrsh r2, [r0]
mov r0, sl
mov r1, r4
str r3, [sp, #0x14]
bl CalcDamageFixedNoCategory
_02320118:
bl IsFloorOver
cmp r0, #0
bne _0232014C
mov r0, sb
bl EntityIsValid__0232017C
cmp r0, #0
beq _0232014C
mov r0, sb
bl ov29_022F9C74
mov r0, sb
bl ov29_02321104
mov r0, sb
bl ov29_02321238
_0232014C:
add sp, sp, #0x30
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_02320154: .word 0x02353538
_02320158: .word 0x00000B97
_0232015C: .word 0x00000B98
_02320160: .word 0x00000B99
_02320164: .word 0x00000212
_02320168: .word 0x00000B96
_0232016C: .word 0x0235171C
_02320170: .word 0x022C4570
_02320174: .word 0x00000163
_02320178: .word 0x00000259
arm_func_end TryBlowAway

421
asm/overlay_29_023201A0.s Normal file
View File

@@ -0,0 +1,421 @@
.include "asm/macros.inc"
.include "overlay_29_023201A0.inc"
.text
arm_func_start ov29_023201A0
ov29_023201A0: ; 0x023201A0
stmdb sp!, {r4, lr}
mov r4, r0
bl EntityIsValid__0232017C
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
bl ov29_022F9C74
mov r0, r4
bl ov29_02321104
mov r0, r4
bl ov29_02321238
ldmia sp!, {r4, pc}
arm_func_end ov29_023201A0
arm_func_start ov29_023201D0
ov29_023201D0: ; 0x023201D0
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, lr}
sub sp, sp, #4
mov sl, r0
mov r4, r1
mov r0, #0
mov sb, r2
mov r1, sl
mov r2, r0
mov r8, r3
mov r5, #1
bl SubstitutePlaceholderStringTags
ldrh r0, [sl, #4]
ldr r1, _02320330 ; =0x0235171C
mov r2, r4, lsl #2
strh r0, [sp]
ldrh r3, [sl, #6]
ldrsh r6, [r1, r2]
ldr r0, _02320334 ; =0x0235171E
ldrsh r1, [sp]
ldrsh r7, [r0, r2]
strh r3, [sp, #2]
add r0, r1, r6
ldrsh r1, [sp, #2]
strh r0, [sp]
ldrsh r0, [sp]
add r1, r1, r7
strh r1, [sp, #2]
cmp r0, #0
ldrgesh r1, [sp, #2]
cmpge r1, #0
blt _02320258
cmp r0, #0x38
cmplt r1, #0x20
blt _0232025C
_02320258:
mov r5, #0
_0232025C:
ldrsh r1, [sp, #2]
bl GetTile
mov r4, r0
ldr r0, [r4, #0xc]
add r1, sp, #0
cmp r0, #0
mov r0, sl
movne r5, #0
bl ov29_022FFB90
cmp r0, #0
beq _02320294
ldrh r0, [r4]
tst r0, #3
moveq r5, #0
_02320294:
cmp r5, #0
beq _02320328
ldr r1, _02320338 ; =0x00000212
mov r0, sl
bl ov29_022E56A0
mov r0, sl
mov r1, r8
bl LogMessageByIdWithPopupCheckUser
mov r7, r7, lsl #0xa
mov r6, r6, lsl #0xa
mov r5, #0
mov r4, #0x19
_023202C4:
mov r0, sl
mov r1, r6
mov r2, r7
bl ov29_022E1A90
mov r0, sl
bl ov29_022E272C
cmp r0, #0
beq _023202EC
mov r0, r4
bl AdvanceFrame
_023202EC:
add r5, r5, #1
cmp r5, #6
blt _023202C4
ldrsh r1, [sp]
ldrsh r2, [sp, #2]
mov r0, sl
mov r3, #1
bl ov29_022F85F0
bl IsFloorOver
cmp r0, #0
bne _02320328
cmp sb, #0
beq _02320328
mov r0, sl
bl ov29_023201A0
_02320328:
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, pc}
.align 2, 0
_02320330: .word 0x0235171C
_02320334: .word 0x0235171E
_02320338: .word 0x00000212
arm_func_end ov29_023201D0
arm_func_start ov29_0232033C
ov29_0232033C: ; 0x0232033C
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0xc
ldrsh r3, [r1]
ldrsh r2, [r1, #2]
mov r1, #0x18
mov sl, r0
smulbb r3, r3, r1
smulbb r0, r2, r1
add r2, r3, #0xc
ldr r8, [sl, #0xc]
add r1, r0, #0x10
sub r0, r8, r2, lsl #8
mov r6, r2, lsl #8
mov r7, r1, lsl #8
bl Abs
cmp r0, #0xc
bge _02320394
ldr r0, [sl, #0x10]
sub r0, r0, r7
bl Abs
cmp r0, #0xc
blt _0232041C
_02320394:
ldr sb, [sl, #0x10]
sub r0, r6, r8
mov r1, #0xc
mov r5, #0
bl DivideInt
str r0, [sp]
sub r0, r7, sb
mov r1, #0xc
bl DivideInt
mov fp, r0
mov r4, r5
_023203C0:
ldr r0, [sp]
add sb, sb, fp
add r8, r8, r0
mov r0, r5
str r8, [sp, #4]
str sb, [sp, #8]
bl sub_020018D0
mov r1, #0xc
mul r1, r0, r1
str r1, [sl, #0x1c]
mov r0, sl
add r1, sp, #4
bl ov29_022E1A40
mov r0, sl
bl ov29_022E272C
cmp r0, #0
beq _0232040C
mov r0, #0x1a
bl AdvanceFrame
_0232040C:
add r4, r4, #1
cmp r4, #0xc
add r5, r5, #0xaa
blt _023203C0
_0232041C:
add r1, sp, #4
mov r0, sl
str r6, [sp, #4]
str r7, [sp, #8]
mov r2, #0
str r2, [sl, #0x1c]
bl ov29_022E1A40
mov r0, #0x1a
bl AdvanceFrame
add sp, sp, #0xc
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
arm_func_end ov29_0232033C
arm_func_start ov29_02320448
ov29_02320448: ; 0x02320448
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x10
mov sl, r0
ldr r0, [sp, #0x38]
mov sb, r1
str r0, [sp, #0x38]
str r2, [sp, #4]
mov r8, r3
ldr fp, [sp, #0x3c]
mov r5, #0
mov r7, #0x15
ldr r4, _0232074C ; =0x02353538
b _023204B4
_0232047C:
ldr r0, [r4]
add r0, r0, r5, lsl #2
add r0, r0, #0x12000
ldr r6, [r0, #0xb78]
mov r0, r6
bl EntityIsValid__02320764
cmp r0, #0
beq _023204B0
mov r0, r6
mov r1, r7
bl AbilityIsActive2
cmp r0, #0
bne _023204BC
_023204B0:
add r5, r5, #1
_023204B4:
cmp r5, #0x14
blt _0232047C
_023204BC:
cmp r5, #0x14
beq _023204F4
mov r0, sl
mov r1, sb
bl ov29_022E55F0
mov r0, #0
mov r1, sb
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _02320750 ; =0x00000BFC
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
b _02320744
_023204F4:
mov r0, sb
bl GetApparentWeather
cmp r0, #4
bne _02320518
ldr r2, _02320750 ; =0x00000BFC
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
b _02320744
_02320518:
mov r0, sl
mov r1, sb
mov r2, r8
bl ov29_022E5560
mov r0, #0
mov r1, sb
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _02320754 ; =0x00000BFB
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
ldr r0, _02320758 ; =0x023529B8
mov r6, #0
ldr r4, [r0, r8, lsl #2]
mov r7, r6
b _023206AC
_0232055C:
ldr r0, [sp, #4]
ldrsh r0, [r0]
add r0, r1, r0
strh r0, [sp, #0xc]
ldr r0, [sp, #4]
ldrsh r2, [r4, #2]
ldrsh r1, [r0, #2]
ldrsh r0, [sp, #0xc]
add r1, r2, r1
strh r1, [sp, #0xe]
cmp r0, #0
ldrgesh r1, [sp, #0xe]
cmpge r1, #0
blt _023206A8
cmp r0, #0x38
cmplt r1, #0x20
bge _023206A8
bl GetTileSafe
ldrsh r1, [sp, #0xc]
mov r5, r0
cmp r1, #1
ldrgesh r0, [sp, #0xe]
cmpge r0, #1
blt _02320634
cmp r1, #0x37
cmplt r0, #0x1f
bge _02320634
ldrh r0, [r5]
tst r0, #3
bne _02320634
ldrh r0, [r5]
tst r0, #0x10
bne _02320634
bic r0, r0, #3
strh r0, [r5]
ldrh r0, [r5]
mvn r7, #0
str r7, [sp, #8]
orr r0, r0, #1
strh r0, [r5]
_023205FC:
ldr r6, [sp, #8]
_02320600:
ldrsh r0, [sp, #0xc]
ldrsh r1, [sp, #0xe]
add r0, r0, r6
add r1, r1, r7
bl ov29_02336694
add r6, r6, #1
cmp r6, #1
ble _02320600
add r7, r7, #1
cmp r7, #1
ble _023205FC
mov r6, #1
mov r7, r6
_02320634:
ldr r0, [r5, #0x10]
cmp r0, #0
beq _02320664
cmp r0, sb
beq _02320660
ldr r0, [r0]
cmp r0, #3
bne _02320660
add r0, sp, #0xc
mov r1, #0
bl ov29_023456BC
_02320660:
mov r6, #1
_02320664:
ldr r1, [r5, #0xc]
cmp r1, #0
cmpne r1, sb
beq _023206A8
ldr r0, [r1]
cmp r0, #1
bne _023206A8
ldr r2, _0232075C ; =0x02353700
mov r0, sl
ldr r5, [r2, r8, lsl #2]
ldr r2, [sp, #0x38]
mov r3, fp
str r5, [sp]
bl ov29_02320AA4
bl IsFloorOver
cmp r0, #0
bne _023206B8
_023206A8:
add r4, r4, #4
_023206AC:
ldrsh r1, [r4]
cmp r1, #0x63
bne _0232055C
_023206B8:
bl IsFloorOver
cmp r0, #0
bne _02320744
ldr r0, [sb]
cmp r0, #1
bne _023206FC
ldr r0, _02320760 ; =0x0000026F
cmp fp, r0
beq _023206FC
ldr r1, _0232075C ; =0x02353700
ldr r2, [sp, #0x38]
ldr r4, [r1, r8, lsl #2]
mov r0, sl
mov r1, sb
mov r3, fp
str r4, [sp]
bl ov29_02320AA4
_023206FC:
cmp r6, #0
beq _02320744
cmp r7, #0
beq _0232073C
mov r6, #0
mov r4, r6
_02320714:
mov r5, r4
_02320718:
mov r0, r5
mov r1, r6
bl ov29_02336A84
add r5, r5, #1
cmp r5, #0x38
blt _02320718
add r6, r6, #1
cmp r6, #0x20
blt _02320714
_0232073C:
bl ov29_02339CE8
bl ov29_02336F4C
_02320744:
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_0232074C: .word 0x02353538
_02320750: .word 0x00000BFC
_02320754: .word 0x00000BFB
_02320758: .word 0x023529B8
_0232075C: .word 0x02353700
_02320760: .word 0x0000026F
arm_func_end ov29_02320448

940
asm/overlay_29_02320788.s Normal file
View File

@@ -0,0 +1,940 @@
.include "asm/macros.inc"
.include "overlay_29_02320788.inc"
.text
arm_func_start ov29_02320788
ov29_02320788: ; 0x02320788
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x10
mov sl, r0
ldr r0, [sp, #0x38]
mov sb, r1
str r0, [sp, #0x38]
str r2, [sp, #4]
mov r8, r3
ldr fp, [sp, #0x3c]
mov r5, #0
mov r7, #0x15
ldr r4, _02320A8C ; =0x02353538
b _023207F4
_023207BC:
ldr r0, [r4]
add r0, r0, r5, lsl #2
add r0, r0, #0x12000
ldr r6, [r0, #0xb78]
mov r0, r6
bl EntityIsValid__02320764
cmp r0, #0
beq _023207F0
mov r0, r6
mov r1, r7
bl AbilityIsActive2
cmp r0, #0
bne _023207FC
_023207F0:
add r5, r5, #1
_023207F4:
cmp r5, #0x14
blt _023207BC
_023207FC:
cmp r5, #0x14
beq _02320834
mov r0, sl
mov r1, sb
bl ov29_022E55F0
mov r0, #0
mov r1, sb
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _02320A90 ; =0x00000BFC
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
b _02320A84
_02320834:
mov r0, sb
bl GetApparentWeather
cmp r0, #4
bne _02320858
ldr r2, _02320A90 ; =0x00000BFC
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
b _02320A84
_02320858:
mov r0, sl
mov r1, sb
mov r2, r8
bl ov29_022E5560
mov r0, #0
mov r1, sb
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _02320A94 ; =0x00000BFB
mov r0, sl
mov r1, sb
bl LogMessageByIdWithPopupCheckUserTarget
ldr r0, _02320A98 ; =0x023529B8
mov r6, #0
ldr r4, [r0, r8, lsl #2]
mov r7, r6
b _023209EC
_0232089C:
ldr r0, [sp, #4]
ldrsh r0, [r0]
add r0, r1, r0
strh r0, [sp, #0xc]
ldr r0, [sp, #4]
ldrsh r2, [r4, #2]
ldrsh r1, [r0, #2]
ldrsh r0, [sp, #0xc]
add r1, r2, r1
strh r1, [sp, #0xe]
cmp r0, #0
ldrgesh r1, [sp, #0xe]
cmpge r1, #0
blt _023209E8
cmp r0, #0x38
cmplt r1, #0x20
bge _023209E8
bl GetTileSafe
ldrsh r1, [sp, #0xc]
mov r5, r0
cmp r1, #1
ldrgesh r0, [sp, #0xe]
cmpge r0, #1
blt _02320974
cmp r1, #0x37
cmplt r0, #0x1f
bge _02320974
ldrh r0, [r5]
tst r0, #3
bne _02320974
ldrh r0, [r5]
tst r0, #0x10
bne _02320974
bic r0, r0, #3
strh r0, [r5]
ldrh r0, [r5]
mvn r7, #0
str r7, [sp, #8]
orr r0, r0, #1
strh r0, [r5]
_0232093C:
ldr r6, [sp, #8]
_02320940:
ldrsh r0, [sp, #0xc]
ldrsh r1, [sp, #0xe]
add r0, r0, r6
add r1, r1, r7
bl ov29_02336694
add r6, r6, #1
cmp r6, #1
ble _02320940
add r7, r7, #1
cmp r7, #1
ble _0232093C
mov r6, #1
mov r7, r6
_02320974:
ldr r0, [r5, #0x10]
cmp r0, #0
beq _023209A4
cmp r0, sb
beq _023209A0
ldr r0, [r0]
cmp r0, #3
bne _023209A0
add r0, sp, #0xc
mov r1, #0
bl ov29_023456BC
_023209A0:
mov r6, #1
_023209A4:
ldr r1, [r5, #0xc]
cmp r1, #0
cmpne r1, sb
beq _023209E8
ldr r0, [r1]
cmp r0, #1
bne _023209E8
ldr r2, _02320A9C ; =0x02353700
mov r0, sl
ldr r5, [r2, r8, lsl #2]
ldr r2, [sp, #0x38]
mov r3, fp
str r5, [sp]
bl ov29_02320BCC
bl IsFloorOver
cmp r0, #0
bne _023209F8
_023209E8:
add r4, r4, #4
_023209EC:
ldrsh r1, [r4]
cmp r1, #0x63
bne _0232089C
_023209F8:
bl IsFloorOver
cmp r0, #0
bne _02320A84
ldr r0, [sb]
cmp r0, #1
bne _02320A3C
ldr r0, _02320AA0 ; =0x0000026F
cmp fp, r0
beq _02320A3C
ldr r1, _02320A9C ; =0x02353700
ldr r2, [sp, #0x38]
ldr r4, [r1, r8, lsl #2]
mov r0, sl
mov r1, sb
mov r3, fp
str r4, [sp]
bl ov29_02320BCC
_02320A3C:
cmp r6, #0
beq _02320A84
cmp r7, #0
beq _02320A7C
mov r6, #0
mov r4, r6
_02320A54:
mov r5, r4
_02320A58:
mov r0, r5
mov r1, r6
bl ov29_02336A84
add r5, r5, #1
cmp r5, #0x38
blt _02320A58
add r6, r6, #1
cmp r6, #0x20
blt _02320A54
_02320A7C:
bl ov29_02339CE8
bl ov29_02336F4C
_02320A84:
add sp, sp, #0x10
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_02320A8C: .word 0x02353538
_02320A90: .word 0x00000BFC
_02320A94: .word 0x00000BFB
_02320A98: .word 0x023529B8
_02320A9C: .word 0x02353700
_02320AA0: .word 0x0000026F
arm_func_end ov29_02320788
arm_func_start ov29_02320AA4
ov29_02320AA4: ; 0x02320AA4
stmdb sp!, {r3, r4, r5, r6, r7, r8, lr}
sub sp, sp, #0x24
mov r7, r1
mov r8, r0
mov r0, r7
mov r6, r2
mov r5, r3
bl EntityIsValid__02320764
cmp r0, #0
beq _02320BC0
ldr r1, _02320BC8 ; =0x00000163
add r0, sp, #0x1a
ldr r4, [r7, #0xb4]
bl InitMove
add r1, sp, #0x1a
mov r0, r7
bl ov29_02324854
cmp r0, #0
bne _02320BC0
ldrb r0, [r4, #6]
mov r1, #2
cmp r0, #0
bne _02320B2C
ldrsh r2, [r4, #0x10]
mov r0, r7
add r2, r2, r2, lsr #31
mov r4, r2, asr #1
bl MonsterIsType
cmp r0, #0
addne r0, r4, r4, lsr #31
movne r4, r0, asr #1
cmp r4, #1
movlt r4, #1
b _02320B44
_02320B2C:
mov r0, r7
ldr r4, [sp, #0x40]
bl MonsterIsType
cmp r0, #0
addne r0, r4, r4, lsr #31
movne r4, r0, asr #1
_02320B44:
mov ip, #7
mov r0, r8
mov r1, r7
mov r2, #1
mov r3, #0xdc0
str ip, [sp]
bl ov29_02314D40
cmp r0, #0
movne r4, #1
bne _02320B94
mov r2, #1
mov ip, #6
mov r0, r8
mov r1, r7
rsb r3, r2, #0xdc0
str ip, [sp]
bl ov29_02314D40
cmp r0, #0
addne r0, r4, r4, lsr #31
movne r4, r0, asr #1
_02320B94:
add r0, sp, #0x18
stmia sp, {r0, r6}
mov r3, #0
str r5, [sp, #8]
str r3, [sp, #0xc]
str r3, [sp, #0x10]
mov r0, r8
mov r1, r7
mov r2, r4
str r3, [sp, #0x14]
bl CalcDamageFixedNoCategory
_02320BC0:
add sp, sp, #0x24
ldmia sp!, {r3, r4, r5, r6, r7, r8, pc}
.align 2, 0
_02320BC8: .word 0x00000163
arm_func_end ov29_02320AA4
arm_func_start ov29_02320BCC
ov29_02320BCC: ; 0x02320BCC
stmdb sp!, {r4, r5, r6, r7, r8, sb, lr}
sub sp, sp, #0x24
mov r8, r1
mov sb, r0
mov r0, r8
mov r7, r2
mov r6, r3
bl EntityIsValid__02320764
cmp r0, #0
beq _02320CFC
ldr r1, _02320D04 ; =0x00000163
add r0, sp, #0x1a
ldr r5, [r8, #0xb4]
bl InitMove
add r1, sp, #0x1a
mov r0, r8
bl ov29_02324854
cmp r0, #0
bne _02320CFC
ldrb r0, [r5, #6]
mov r1, #2
cmp r0, #0
bne _02320C54
ldrsh r2, [r5, #0x10]
mov r0, r8
add r2, r2, r2, lsr #31
mov r4, r2, asr #1
bl MonsterIsType
cmp r0, #0
addne r0, r4, r4, lsr #31
movne r4, r0, asr #1
cmp r4, #1
movlt r4, #1
b _02320C6C
_02320C54:
mov r0, r8
ldr r4, [sp, #0x40]
bl MonsterIsType
cmp r0, #0
addne r0, r4, r4, lsr #31
movne r4, r0, asr #1
_02320C6C:
mov ip, #7
mov r0, sb
mov r1, r8
mov r2, #1
mov r3, #0xdc0
str ip, [sp]
bl ov29_02314D40
cmp r0, #0
movne r4, #1
bne _02320CBC
mov r2, #1
mov ip, #6
mov r0, sb
mov r1, r8
rsb r3, r2, #0xdc0
str ip, [sp]
bl ov29_02314D40
cmp r0, #0
addne r0, r4, r4, lsr #31
movne r4, r0, asr #1
_02320CBC:
ldrsh r0, [r5, #0x10]
mov r3, #0
mov r1, r8
cmp r4, r0
subge r4, r0, #1
add r0, sp, #0x18
stmia sp, {r0, r7}
str r6, [sp, #8]
cmp r4, #0
movlt r4, #0
str r3, [sp, #0xc]
str r3, [sp, #0x10]
mov r0, sb
mov r2, r4
str r3, [sp, #0x14]
bl CalcDamageFixedNoCategory
_02320CFC:
add sp, sp, #0x24
ldmia sp!, {r4, r5, r6, r7, r8, sb, pc}
.align 2, 0
_02320D04: .word 0x00000163
arm_func_end ov29_02320BCC
arm_func_start TryWarp
TryWarp: ; 0x02320D08
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
mov r4, #0
mov sb, r0
mov r8, r1
mov r7, r2
mov r0, r4
mov r2, r4
mov r6, r3
ldr r5, [r8, #0xb4]
bl SubstitutePlaceholderStringTags
cmp sb, r8
beq _02320D78
cmp sb, #0
moveq r0, r4
beq _02320D58
ldr r0, [sb]
cmp r0, #1
moveq r0, #1
movne r0, r4
and r0, r0, #0xff
_02320D58:
cmp r0, #0
beq _02320D78
mov r0, sb
mov r1, #0x53
bl AbilityIsActive2
cmp r0, #0
movne r0, #0
bne _02320D84
_02320D78:
mov r0, r8
mov r1, #0xe
bl AbilityIsActive2
_02320D84:
cmp r0, #0
beq _02320DA0
ldr r2, _023210E8 ; =0x00000E74
mov r0, sb
mov r1, r8
bl LogMessageByIdWithPopupCheckUserTarget
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_02320DA0:
ldr r0, _023210EC ; =0x02353538
ldr r0, [r0]
add r0, r0, #0x4000
ldrb r0, [r0, #0xda]
bl ov29_023440DC
cmp r0, #0
bne _02320DD0
ldr r2, _023210F0 ; =0x00000E72
mov r0, sb
mov r1, r8
bl LogMessageByIdWithPopupCheckUserTarget
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_02320DD0:
cmp r7, #1
bne _02320E20
ldr r0, _023210EC ; =0x02353538
ldrsh r1, [r8, #4]
ldr r0, [r0]
add r0, r0, #0xcc00
ldrsh r2, [r0, #0xe4]
cmp r2, r1
ldreqsh r1, [r0, #0xe6]
ldreqsh r0, [r8, #6]
cmpeq r1, r0
bne _02320E20
ldr r2, _023210F4 ; =0x00000E73
mov r0, sb
mov r1, r8
bl LogMessageByIdWithPopupCheckUserTarget
mov r0, sb
mov r1, r8
bl TryInflictPetrifiedStatus
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
_02320E20:
ldr r2, _023210F8 ; =0x00000E71
mov r0, sb
mov r1, r8
bl LogMessageByIdWithPopupCheckUserTarget
mov r0, r8
mov r1, r8
bl ov29_02307BDC
mov r0, sb
mov r1, r8
bl ov29_022E5650
mov r0, r8
bl ov29_022E272C
cmp r0, #0
beq _02320EA4
ldrb sl, [r5, #0x4c]
ldr fp, _023210FC ; =0x0237C850
_02320E60:
ldr r0, [r8, #0x1c]
add r0, r0, #0x800
str r0, [r8, #0x1c]
cmp r0, #0xa000
bge _02320EA4
ldr r0, [fp]
tst r0, #3
bne _02320E98
add r0, sl, #1
and sl, r0, #7
mov r0, r8
mov r1, sl
strb sl, [r5, #0x4c]
bl ov29_02304A48
_02320E98:
mov r0, #0x22
bl AdvanceFrame
b _02320E60
_02320EA4:
cmp r7, #5
addls pc, pc, r7, lsl #2
b _02320EC8
_02320EB0: ; jump table
b _02320EC8 ; case 0
b _02320EF4 ; case 1
b _02320F30 ; case 2
b _02320F60 ; case 3
b _02320F74 ; case 4
b _02320FB0 ; case 5
_02320EC8:
add r0, sp, #0
mov r1, #1
bl ov29_022E9628
cmp r0, #0
bne _02321008
ldrh r0, [r8, #4]
mov r4, #1
strh r0, [sp]
ldrh r0, [r8, #6]
strh r0, [sp, #2]
b _02321008
_02320EF4:
ldr r1, _023210EC ; =0x02353538
add r0, sp, #0
ldr r1, [r1]
mov r2, #0
add r1, r1, #0xe4
add r1, r1, #0xcc00
bl ov29_022E99F0
cmp r0, #0
bne _02321008
ldrh r0, [r8, #4]
mov r4, #1
strh r0, [sp]
ldrh r0, [r8, #6]
strh r0, [sp, #2]
b _02321008
_02320F30:
add r0, sp, #0
mov r1, r6
mov r2, #0
bl ov29_022E99F0
cmp r0, #0
bne _02321008
ldrh r0, [r8, #4]
mov r4, #1
strh r0, [sp]
ldrh r0, [r8, #6]
strh r0, [sp, #2]
b _02321008
_02320F60:
ldrh r0, [r6]
strh r0, [sp]
ldrh r0, [r6, #2]
strh r0, [sp, #2]
b _02321008
_02320F74:
ldr r1, _023210EC ; =0x02353538
add r0, sp, #0
ldr r1, [r1]
mov r2, #1
add r1, r1, #0xe4
add r1, r1, #0xcc00
bl ov29_022E9A28
cmp r0, #0
bne _02321008
ldrh r0, [r8, #4]
mov r4, #1
strh r0, [sp]
ldrh r0, [r8, #6]
strh r0, [sp, #2]
b _02321008
_02320FB0:
ldrb r0, [r5, #6]
cmp r0, #0
ldreqb r0, [r5, #7]
cmpeq r0, #0
bne _02320FE4
bl GetLeader
mov r1, r0
add r0, sp, #0
add r1, r1, #4
mov r2, #0
bl ov29_022E99F0
cmp r0, #0
bne _02321008
_02320FE4:
add r0, sp, #0
mov r1, #1
bl ov29_022E9628
cmp r0, #0
ldreqh r0, [r8, #4]
moveq r4, #1
streqh r0, [sp]
ldreqh r0, [r8, #6]
streqh r0, [sp, #2]
_02321008:
ldrsh r1, [sp]
ldrsh r2, [sp, #2]
mov r0, r8
mov r3, #1
bl ov29_022F85F0
mov r0, r8
mov r1, #0
bl ov29_022E1A40
mov r0, r8
bl sub_01FFB62C
mov r0, #1
bl ov29_022E2EC4
mov r0, r8
bl ov29_022E272C
cmp r0, #0
beq _023210A0
ldrb sl, [r5, #0x4c]
mov r0, #0xa000
ldr r6, _023210FC ; =0x0237C850
str r0, [r8, #0x1c]
mov fp, #0x22
_0232105C:
ldr r0, [r8, #0x1c]
sub r0, r0, #0x400
str r0, [r8, #0x1c]
cmp r0, #0
ble _023210A0
ldr r0, [r6]
tst r0, #3
bne _02321094
add r0, sl, #1
and sl, r0, #7
mov r0, r8
mov r1, sl
strb sl, [r5, #0x4c]
bl ov29_02304A48
_02321094:
mov r0, fp
bl AdvanceFrame
b _0232105C
_023210A0:
mov r1, #0
mov r0, #0x22
str r1, [r8, #0x1c]
bl AdvanceFrame
cmp r4, #0
beq _023210C8
ldr r2, _02321100 ; =0x00000E75
mov r0, sb
mov r1, r8
bl LogMessageByIdWithPopupCheckUserTarget
_023210C8:
cmp r7, #1
bne _023210DC
mov r0, sb
mov r1, r8
bl TryInflictPetrifiedStatus
_023210DC:
mov r0, r8
bl ov29_02321238
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_023210E8: .word 0x00000E74
_023210EC: .word 0x02353538
_023210F0: .word 0x00000E72
_023210F4: .word 0x00000E73
_023210F8: .word 0x00000E71
_023210FC: .word 0x0237C850
_02321100: .word 0x00000E75
arm_func_end TryWarp
arm_func_start ov29_02321104
ov29_02321104: ; 0x02321104
stmdb sp!, {r4, lr}
mov r4, r0
add r1, r4, #4
bl ov29_022FFC9C
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
mov r1, r4
mov r2, #5
mov r3, #0
bl TryWarp
ldmia sp!, {r4, pc}
arm_func_end ov29_02321104
arm_func_start ov29_02321134
ov29_02321134: ; 0x02321134
stmdb sp!, {r4, lr}
mov r4, r0
add r1, r4, #4
bl ov29_022FF958
cmp r0, #0
ldmeqia sp!, {r4, pc}
mov r0, r4
mov r1, r4
mov r2, #5
mov r3, #0
bl TryWarp
ldmia sp!, {r4, pc}
arm_func_end ov29_02321134
arm_func_start ov29_02321164
ov29_02321164: ; 0x02321164
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
mov r5, r0
mov r0, r4
add r1, r4, #4
bl ov29_022FFC9C
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
mov r0, r5
mov r1, r4
mov r2, #5
mov r3, #0
bl TryWarp
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ov29_02321164
arm_func_start ov29_0232119C
ov29_0232119C: ; 0x0232119C
stmdb sp!, {r3, r4, r5, lr}
movs r4, r0
mov r5, r2
moveq r0, #0
beq _023211C4
ldr r0, [r4]
cmp r0, #0
movne r0, #1
moveq r0, #0
and r0, r0, #0xff
_023211C4:
cmp r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
cmp r1, #0
beq _023211E0
mov r0, r4
mov r1, #8
bl ov29_02304A48
_023211E0:
ldr r0, [r4, #0xb4]
ldrb r0, [r0, #7]
cmp r0, #0
beq _02321210
cmp r5, #0
beq _02321200
mov r0, r4
bl ov29_022F42F8
_02321200:
add r0, r4, #4
bl ov29_02337A3C
mov r0, #0
bl ov29_022F62CC
_02321210:
mov r0, r4
bl ov29_022F9C74
ldr r1, _02321234 ; =0x02353538
mov r0, r4
ldr r1, [r1]
add r1, r1, #0x4000
ldrb r1, [r1, #0xc4]
bl ov29_02305814
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
_02321234: .word 0x02353538
arm_func_end ov29_0232119C
arm_func_start ov29_02321238
ov29_02321238: ; 0x02321238
ldr ip, _02321248 ; =ov29_0232119C
mov r1, #0
mov r2, #1
bx ip
.align 2, 0
_02321248: .word ov29_0232119C
arm_func_end ov29_02321238
arm_func_start ov29_0232124C
ov29_0232124C: ; 0x0232124C
ldr ip, _0232125C ; =ov29_0232119C
mov r1, #1
mov r2, r1
bx ip
.align 2, 0
_0232125C: .word ov29_0232119C
arm_func_end ov29_0232124C
arm_func_start ov29_02321260
ov29_02321260: ; 0x02321260
ldr ip, _02321270 ; =ov29_0232119C
mov r1, #0
mov r2, r1
bx ip
.align 2, 0
_02321270: .word ov29_0232119C
arm_func_end ov29_02321260
arm_func_start ov29_02321274
ov29_02321274: ; 0x02321274
ldr ip, _02321284 ; =ov29_0232119C
mov r1, #1
mov r2, #0
bx ip
.align 2, 0
_02321284: .word ov29_0232119C
arm_func_end ov29_02321274
arm_func_start ov29_02321288
ov29_02321288: ; 0x02321288
stmdb sp!, {r4, r5, r6, r7, r8, sb, sl, lr}
sub sp, sp, #0x10
mov sl, r0
mov sb, r1
mov r8, r2
mov r7, r3
ldr r6, [sp, #0x34]
ldr r5, [sl, #0xb4]
bl ov29_022F87C0
movs r4, r0
bne _023212E0
mov r0, sl
mov r1, r6
bl ov29_022FAA04
ldrh r2, [r6, #2]
mov r0, sl
mov r1, #1
orr r2, r2, #8
strh r2, [r6, #2]
bl UpdateMovePp
mov r0, #0
b _02321428
_023212E0:
add r2, sp, #8
mov r3, r6
mov r1, #4
_023212EC:
ldrh r0, [r3], #2
subs r1, r1, #1
strh r0, [r2], #2
bne _023212EC
mov r0, r4
bl ov29_023247B4
strh r0, [sp, #0xc]
ldrh r0, [sp, #0xc]
cmp r0, #0
bne _02321360
mov r0, #0
mov r1, r4
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _02321430 ; =0x00000F11
mov r0, sl
mov r1, r4
bl LogMessageByIdWithPopupCheckUserTarget
mov r0, sl
mov r1, r6
bl ov29_022FAA04
ldrh r2, [r6, #2]
mov r0, sl
mov r1, #1
orr r2, r2, #8
strh r2, [r6, #2]
bl UpdateMovePp
mov r0, #0
b _02321428
_02321360:
mov r0, sl
mov r1, r6
mov r2, #1
bl CanMonsterUseMove
cmp r0, #0
beq _023213E4
mov r0, r4
bl ov29_022E4C84
mov r0, sl
bl ov29_022E4CD4
mov r0, #1
strb r0, [r5, #0x221]
mov r0, #0
mov r1, sl
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _02321434 ; =0x00000F12
mov r1, r4
mov r0, sl
bl LogMessageByIdWithPopupCheckUserTarget
ldr r4, [sp, #0x30]
add r0, sp, #8
str r4, [sp]
str r0, [sp, #4]
mov r1, sb
mov r2, r8
mov r3, r7
mov r0, sl
bl ov29_02322374
mov r4, r0
mov r0, #0
strb r0, [r5, #0x221]
b _02321408
_023213E4:
ldr r1, [sp, #0x30]
mov r0, sl
str r1, [sp]
mov r1, sb
mov r2, r8
mov r3, r7
str r6, [sp, #4]
bl ov29_02322374
mov r4, r0
_02321408:
mov r0, sl
bl EntityIsValid__02321438
cmp r0, #0
beq _02321424
mov r0, sl
mov r1, r6
bl ov29_022FAA04
_02321424:
mov r0, r4
_02321428:
add sp, sp, #0x10
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
.align 2, 0
_02321430: .word 0x00000F11
_02321434: .word 0x00000F12
arm_func_end ov29_02321288

4673
asm/overlay_29_0232145C.s Normal file

File diff suppressed because it is too large Load Diff

3244
asm/overlay_29_02325644.s Normal file

File diff suppressed because it is too large Load Diff

2742
asm/overlay_29_02328030.s Normal file

File diff suppressed because it is too large Load Diff

2530
asm/overlay_29_0232A3FC.s Normal file

File diff suppressed because it is too large Load Diff

2300
asm/overlay_29_0232C524.s Normal file

File diff suppressed because it is too large Load Diff

466
asm/overlay_29_0232E274.s Normal file
View File

@@ -0,0 +1,466 @@
.include "asm/macros.inc"
.include "overlay_29_0232E274.inc"
.text
arm_func_start ov29_0232E274
ov29_0232E274: ; 0x0232E274
stmdb sp!, {r3, r4, r5, lr}
ldr r2, _0232E2B0 ; =0x02352AEC
mov r3, #1
ldr r2, [r2]
mov r5, r0
mov r4, r1
bl BoostDefensiveStat
ldr r1, _0232E2B4 ; =0x02352AE8
mov r0, r5
ldr r2, [r1]
mov r1, r4
mov r3, #1
bl BoostDefensiveStat
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
_0232E2B0: .word 0x02352AEC
_0232E2B4: .word 0x02352AE8
arm_func_end ov29_0232E274
arm_func_start ov29_0232E2B8
ov29_0232E2B8: ; 0x0232E2B8
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
bl ov29_02307C78
mov r0, r7
mov r1, r6
mov r2, r5
mov r3, #0x100
str r4, [sp]
bl DealDamage
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, r6, r7, pc}
ldr r1, _0232E360 ; =0x022C4684
mov r0, r7
ldrsh r2, [r1]
mov r1, r6
bl DungeonRandOutcomeUserTargetInteraction
cmp r0, #0
beq _0232E328
mov r2, #0
mov r0, r7
mov r1, r6
mov r3, r2
str r2, [sp]
bl TryInflictBurnStatus
_0232E328:
ldr r1, _0232E364 ; =0x022C449C
mov r0, r7
ldrsh r2, [r1]
mov r1, r6
bl DungeonRandOutcomeUserTargetInteraction
cmp r0, #0
beq _0232E358
mov r2, #0
mov r0, r7
mov r1, r6
mov r3, r2
bl TryInflictCringeStatus
_0232E358:
mov r0, #1
ldmia sp!, {r3, r4, r5, r6, r7, pc}
.align 2, 0
_0232E360: .word 0x022C4684
_0232E364: .word 0x022C449C
arm_func_end ov29_0232E2B8
arm_func_start ov29_0232E368
ov29_0232E368: ; 0x0232E368
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
cmp r5, r4
moveq r0, #0
ldmeqia sp!, {r3, r4, r5, pc}
ldr r2, _0232E3C8 ; =0x022C46F4
mov ip, #1
ldrsh r2, [r2]
mov r3, #0
str ip, [sp]
bl TryIncreaseHp
ldr r2, _0232E3CC ; =0x000003E7
mov r0, r5
mov r1, r4
mov r3, #0
bl RestoreMovePP
mov r2, #1
mov r0, r5
mov r1, r4
mov r3, r2
bl ov29_02305C28
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
_0232E3C8: .word 0x022C46F4
_0232E3CC: .word 0x000003E7
arm_func_end ov29_0232E368
arm_func_start ov29_0232E3D0
ov29_0232E3D0: ; 0x0232E3D0
stmdb sp!, {r3, r4, r5, lr}
mov r2, #0
mov r5, r0
mov r4, r1
bl ov29_02318850
mov r2, #1
mov r0, r5
mov r1, r4
mov r3, r2
bl ResetHitChanceStat
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ov29_0232E3D0
arm_func_start ov29_0232E400
ov29_0232E400: ; 0x0232E400
stmdb sp!, {r3, r4, r5, r6, lr}
sub sp, sp, #4
mov r5, r1
ldr ip, [r5, #0xb4]
mov r6, r0
ldrb ip, [ip, #0xbd]
cmp ip, #1
cmpne ip, #3
cmpne ip, #5
str r3, [sp]
bne _0232E468
mov r0, r6
mov r1, r5
mov r3, #0x200
bl DealDamage
cmp r0, #0
movne r4, #1
moveq r4, #0
mov r2, #0
mov r0, r6
mov r1, r5
mov r3, #1
str r2, [sp]
and r4, r4, #0xff
bl ov29_02305FDC
b _0232E480
_0232E468:
mov r3, #0x100
bl DealDamage
cmp r0, #0
movne r0, #1
moveq r0, #0
and r4, r0, #0xff
_0232E480:
mov r0, r4
add sp, sp, #4
ldmia sp!, {r3, r4, r5, r6, pc}
arm_func_end ov29_0232E400
arm_func_start ov29_0232E48C
ov29_0232E48C: ; 0x0232E48C
stmdb sp!, {r3, lr}
mov r2, #0xf
bl ov29_02318D98
mov r0, #1
ldmia sp!, {r3, pc}
arm_func_end ov29_0232E48C
arm_func_start ov29_0232E4A0
ov29_0232E4A0: ; 0x0232E4A0
stmdb sp!, {r3, r4, r5, lr}
sub sp, sp, #0x18
str r3, [sp]
mov r3, #0x100
mov r5, r0
mov r4, r2
bl DealDamage
cmp r0, #0
moveq r0, #0
beq _0232E554
mov r0, r5
bl EntityIsValid__0232E250
cmp r0, #0
beq _0232E550
mov r0, r5
mov r1, #7
bl AbilityIsActive2
cmp r0, #0
bne _0232E550
ldr r1, [r5, #0xb4]
ldr r0, _0232E55C ; =0x000003E7
ldrsh r2, [r1, #0x12]
ldrsh r1, [r1, #0x16]
ldrh r3, [r4, #4]
add r1, r2, r1
cmp r1, r0
movgt r1, r0
mov r0, r1, asr #1
add r0, r1, r0, lsr #30
movs r1, r0, asr #2
mov r2, #0
str r3, [sp]
mov r0, #0x23c
str r2, [sp, #4]
str r0, [sp, #8]
mov r0, #0x14
str r0, [sp, #0xc]
mov r0, #1
str r0, [sp, #0x10]
moveq r1, #1
mov r0, r5
mov r3, r2
str r2, [sp, #0x14]
bl CalcRecoilDamageFixed
_0232E550:
mov r0, #1
_0232E554:
add sp, sp, #0x18
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
_0232E55C: .word 0x000003E7
arm_func_end ov29_0232E4A0
arm_func_start ov29_0232E560
ov29_0232E560: ; 0x0232E560
stmdb sp!, {r4, r5, r6, lr}
sub sp, sp, #8
mov r6, r0
mov r5, r1
ldr r0, [r6, #0xb4]
ldr r1, [r5, #0xb4]
ldrsh r0, [r0, #2]
ldrsh r1, [r1, #2]
mov r4, #0
bl sub_02054EC8
cmp r0, #0
beq _0232E5D4
mov r0, r6
mov r1, r5
mov r2, #0x29
mov r3, #1
bl DefenderAbilityIsActive__0232DE20
cmp r0, #0
bne _0232E5D4
ldr r0, _0232E61C ; =0x02352AE8
mov ip, #1
ldr r2, [r0]
str ip, [sp]
mov r0, r6
mov r1, r5
mov r3, #2
str ip, [sp, #4]
bl LowerOffensiveStat
mov r4, #1
_0232E5D4:
cmp r4, #0
bne _0232E610
mov r0, r5
bl EntityIsValid__0232E250
cmp r0, #0
moveq r0, r4
beq _0232E614
mov r0, #0
mov r1, r5
mov r2, r0
bl SubstitutePlaceholderStringTags
ldr r2, _0232E620 ; =0x00000F0F
mov r0, r6
mov r1, r5
bl LogMessageByIdWithPopupCheckUserTarget
_0232E610:
mov r0, r4
_0232E614:
add sp, sp, #8
ldmia sp!, {r4, r5, r6, pc}
.align 2, 0
_0232E61C: .word 0x02352AE8
_0232E620: .word 0x00000F0F
arm_func_end ov29_0232E560
arm_func_start ov29_0232E624
ov29_0232E624: ; 0x0232E624
stmdb sp!, {r4, lr}
sub sp, sp, #8
str r3, [sp]
mov r3, #0x100
mov r4, r0
bl DealDamage
cmp r0, #0
moveq r0, #0
beq _0232E670
ldr r0, _0232E678 ; =0x02352AE8
mov ip, #0
ldr r2, [r0]
str ip, [sp]
mov r0, r4
mov r1, r4
mov r3, #2
str ip, [sp, #4]
bl LowerOffensiveStat
mov r0, #1
_0232E670:
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
_0232E678: .word 0x02352AE8
arm_func_end ov29_0232E624
arm_func_start ov29_0232E67C
ov29_0232E67C: ; 0x0232E67C
stmdb sp!, {r4, lr}
sub sp, sp, #8
str r3, [sp]
mov r3, #0x100
mov r4, r0
bl DealDamage
cmp r0, #0
moveq r0, #0
beq _0232E6D4
ldrsh r0, [sp, #0x10]
cmp r0, #0
bne _0232E6D0
ldr r0, _0232E6DC ; =0x02352AE8
mov ip, #0
ldr r2, [r0]
str ip, [sp]
mov r0, r4
mov r1, r4
mov r3, #2
str ip, [sp, #4]
bl LowerOffensiveStat
_0232E6D0:
mov r0, #1
_0232E6D4:
add sp, sp, #8
ldmia sp!, {r4, pc}
.align 2, 0
_0232E6DC: .word 0x02352AE8
arm_func_end ov29_0232E67C
arm_func_start ov29_0232E6E0
ov29_0232E6E0: ; 0x0232E6E0
stmdb sp!, {r3, r4, r5, lr}
mov r2, #0
mov r5, r0
mov r4, r1
mov r3, r2
bl BoostSpeedOneStage
mov r0, r5
mov r1, r4
mov r2, #0
mov r3, #1
bl BoostSpeedOneStage
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
arm_func_end ov29_0232E6E0
arm_func_start ov29_0232E714
ov29_0232E714: ; 0x0232E714
stmdb sp!, {r3, lr}
ldr r2, _0232E730 ; =0x02352AE8
mov r3, #2
ldr r2, [r2]
bl BoostOffensiveStat
mov r0, #1
ldmia sp!, {r3, pc}
.align 2, 0
_0232E730: .word 0x02352AE8
arm_func_end ov29_0232E714
arm_func_start ov29_0232E734
ov29_0232E734: ; 0x0232E734
stmdb sp!, {r3, lr}
bl ov29_02314E60
mov r0, #1
ldmia sp!, {r3, pc}
arm_func_end ov29_0232E734
arm_func_start ov29_0232E744
ov29_0232E744: ; 0x0232E744
ldr ip, _0232E74C ; =ov29_0232CA70
bx ip
.align 2, 0
_0232E74C: .word ov29_0232CA70
arm_func_end ov29_0232E744
arm_func_start ov29_0232E750
ov29_0232E750: ; 0x0232E750
stmdb sp!, {r3, r4, r5, r6, r7, lr}
mov r7, r0
mov r6, r1
mov r5, r2
mov r4, r3
mov r0, #1
bl ov29_0234AFFC
mov r0, r7
mov r1, r6
mov r2, r5
mov r3, r4
bl ov29_0232C578
mov r4, r0
mov r0, #0
bl ov29_0234AFFC
mov r0, r4
ldmia sp!, {r3, r4, r5, r6, r7, pc}
arm_func_end ov29_0232E750
arm_func_start ov29_0232E794
ov29_0232E794: ; 0x0232E794
stmdb sp!, {r3, r4, r5, lr}
mov r5, r0
mov r4, r1
mov r0, #1
bl ov29_0234AFFC
mov r0, r5
mov r1, r4
mov r2, #1
mov r3, #0
bl ov29_02305C28
ldr r2, _0232E808 ; =0x000003E7
mov r0, r5
mov r1, r4
bl ov29_0231526C
mov r0, r5
mov r1, r4
ldr r2, _0232E808 ; =0x000003E7
mov r3, #1
bl RestoreMovePP
ldr r1, [r4, #0xb4]
mov r0, #0
add r1, r1, #0x100
ldrh r2, [r1, #0x4a]
strh r2, [r1, #0x46]
ldrh r2, [r1, #0x4c]
strh r2, [r1, #0x48]
bl ov29_0234AFFC
mov r0, #1
ldmia sp!, {r3, r4, r5, pc}
.align 2, 0
_0232E808: .word 0x000003E7
arm_func_end ov29_0232E794
arm_func_start ov29_0232E80C
ov29_0232E80C: ; 0x0232E80C
stmdb sp!, {r3, lr}
ldr r0, _0232E83C ; =0x02353718
ldr r0, [r0]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r3, pc}
bl EntityIsValid__0232E840
cmp r0, #0
ldrne r0, _0232E83C ; =0x02353718
ldrne r0, [r0]
moveq r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
_0232E83C: .word 0x02353718
arm_func_end ov29_0232E80C

Some files were not shown because too many files have changed in this diff Show More