-
Notifications
You must be signed in to change notification settings - Fork 0
/
HiddenPowerChecker.asm
executable file
·103 lines (93 loc) · 1.34 KB
/
HiddenPowerChecker.asm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
.align 2
.thumb
main:
push {r0-r5, lr}
ldr r0, .Miscellaneous
ldrb r1, [r0]
sub r1, r1, #0x10
add r0, r0, r1
HP:
ldr r1, [r0]
mov r3, r1
lsl r1, #0x1F
lsr r1, #0x1F
lsl r3, #0x1E
lsr r3, #0x1F
mov r2, r1
mov r4, r3
Attack:
ldr r1, [r0]
mov r3, r1
lsl r1, #0x1A
lsr r1, #0x1F
lsl r3, #0x19
lsr r3, #0x1F
lsl r1, #0x1
lsl r3, #0x1
add r2, r1, r2
add r4, r3, r4
Defense:
ldr r1, [r0]
mov r3, r1
lsl r1, #0x15
lsr r1, #0x1F
lsl r3, #0x14
lsr r3, #0x1F
lsl r1, #0x2
lsl r3, #0x2
add r2, r1, r2
add r4, r3, r4
Speed:
ldr r1, [r0]
mov r3, r1
lsl r1, #0x10
lsr r1, #0x1F
lsl r3, #0xF
lsr r3, #0x1F
lsl r1, #0x3
lsl r3, #0x3
add r2, r1, r2
add r4, r3, r4
Sp.Atk:
ldr r1, [r0]
mov r3, r1
lsl r1, #0xB
lsr r1, #0x1F
lsl r3, #0xA
lsr r3, #0x1F
lsl r1, #0x4
lsl r3, #0x4
add r2, r1, r2
add r4, r3, r4
Sp.Def:
ldr r1, [r0]
mov r3, r1
lsl r1, #0x6
lsr r1, #0x1F
lsl r3, #0x5
lsr r3, #0x1F
lsl r1, #0x5
lsl r3, #0x5
add r2, r1, r2
add r4, r3, r4
Store:
mov r1, #0xF
mov r3, #0x28
mul r2, r1, r2
mul r4, r3, r4
mov r0, r2
mov r6, r4
mov r1, #0x3F
ldr r5, .Var8000
bl .Divmod
strh r0, [r5]
mov r0, r6
mov r1, #0x3F
bl .Divmod
add r0, r0, #0x1E
strh r0, [r5, #0x02]
pop {r0-r5, pc}
.align 2
.Miscellaneous: .word 0x0203F414
.Var8000: .word 0x020370B8
.Divmod: .word 0x081E4018