.text
.align 2
.thumb
.thumb_func
.global LevelItemEvo
Main:
mov r0, r8
mov r5, r2
mov r10, r3
bl Decrypt
mov r2, r5
mov r5, #0x0
mov r3, r10
mov r10, r0
add r0, r6, r7
lsl r0, r0, #0x3
add r0, r2, r0
add r1, r0, r3
ldrb r0, [r1, #0x2]
mov r2, r10
mov r10, r1
Level10:
mov r1, r9
cmp r1, #0x9
bhi Level10SilverPowder
Level12:
cmp r1, #0xB
bhi Level12BeigeBelt
Level20:
cmp r1, #0x13
bhi Level20DeepSeaTooth
Level30:
cmp r1, #0x1D
bhi Level30RazorFang
Level40:
cmp r1, #0x27
bhi Level40Magnet
Level50:
cmp r1, #0x31
bhi Level50MetalCoat
mov r2, #0x0
b ArgumentCheck
Level10SilverPowder:
cmp r2, #0xBC
bne Level10PoisonBarb
mov r2, #0x1
b ArgumentCheck
Level10PoisonBarb:
cmp r2, #0xD3
bne Level12
mov r2, #0x2
b ArgumentCheck
Level12BeigeBelt:
cmp r2, #0xED
bne Level12RedBelt
mov r2, #0x3
b ArgumentCheck
Level12RedBelt:
cmp r2, #0xEE
bne Level12BlueBelt
mov r2, #0x4
b ArgumentCheck
Level12BlueBelt:
cmp r2, #0xEF
bne Level20
mov r2, #0x5
b ArgumentCheck
Level20DeepSeaTooth:
cmp r2, #0xC0
bne Level20DeepSeaScale
mov r2, #0x6
b ArgumentCheck
Level20DeepSeaScale:
cmp r2, #0xC1
bne Level30
mov r2, #0x7
b ArgumentCheck
Level30RazorFang:
cmp r2, #0xEB
bne Level30RazorClaw
mov r2, #0x8
b ArgumentCheck
Level30RazorClaw:
cmp r2, #0xEC
bne Level30MetalCoat
mov r2, #0x9
b ArgumentCheck
Level30MetalCoat:
cmp r2, #0xC7
bne Level40
mov r2, #0xA
b ArgumentCheck
Level40Magnet:
cmp r2, #0xD0
bne Level40DragonScale
mov r2, #0xB
b ArgumentCheck
Level40DragonScale:
cmp r2, #0xC9
bne Level40MetalCoat
mov r2, #0xC
b ArgumentCheck
Level40MetalCoat:
cmp r2, #0xC7
bne Level40Electirizer
mov r2, #0xD
b ArgumentCheck
Level40Electirizer:
cmp r2, #0xEA
bne Level40Magmarizer
mov r2, #0xE
b ArgumentCheck
Level40Magmarizer:
cmp r2, #0xE9
bne Level40SpellTag
mov r2, #0xF
b ArgumentCheck
Level40SpellTag:
cmp r2, #0xD5
bne Level50
mov r2, #0x10
b ArgumentCheck
Level50MetalCoat:
cmp r2, #0xC7
bne WrongItem
mov r2, #0x11
b ArgumentCheck
Decrypt:
mov r1, #0xC
ldr r2, DecryptPoke
bx r2
WrongItem:
mov r2, #0x0
b ArgumentCheck
ArgumentCheck:
mov r1, r10
mov r10, r5
cmp r0, r2
bne NoEvo
b Evo
NoEvo:
ldr r2, NoEvolution
mov pc, r2
Evo:
ldrh r0, [r1, #0x4]
ldr r2, Evolution
mov pc, r2
.align 2
NoEvolution: .word 0x08043110
Evolution: .word 0x080431A4
DecryptPoke: .word 0x0803FBE9