3435 lines
81 KiB
NASM
Executable File
3435 lines
81 KiB
NASM
Executable File
; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.50727
|
|
|
|
TTL d:\MyProject\VS2005\Tcpmp\tcpmp\amr\26204\dec_lpc.c
|
|
CODE32
|
|
|
|
AREA |.drectve|, DRECTVE
|
|
DCB "-defaultlib:LIBCMT "
|
|
DCB "-defaultlib:OLDNAMES "
|
|
|
|
EXPORT |D_LPC_isf_noise_d|
|
|
IMPORT |D_ROM_mean_isf_noise|
|
|
IMPORT |D_ROM_dico5_isf_noise|
|
|
IMPORT |D_ROM_dico4_isf_noise|
|
|
IMPORT |D_ROM_dico3_isf_noise|
|
|
IMPORT |D_ROM_dico2_isf_noise|
|
|
IMPORT |D_ROM_dico1_isf_noise|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1656| DCD |$LN23@D_LPC_isf_|
|
|
DCD 0x4000be04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_isf_noise_d| PROC
|
|
; File d:\myproject\vs2005\tcpmp\tcpmp\amr\26204\dec_lpc.c
|
|
; Line 90
|
|
|$LN23@D_LPC_isf_|
|
|
mov r12, sp
|
|
stmdb sp!, {r0, r1}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #4
|
|
|$M1653|
|
|
; Line 93
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN18@D_LPC_isf_|
|
|
|$LN17@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN18@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
cmp r3, #2
|
|
bge |$LN16@D_LPC_isf_|
|
|
; Line 95
|
|
ldr r3, [sp, #0xC]
|
|
ldrsh r1, [r3]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x298]
|
|
add r0, r3, r2
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 96
|
|
b |$LN17@D_LPC_isf_|
|
|
|$LN16@D_LPC_isf_|
|
|
; Line 98
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN15@D_LPC_isf_|
|
|
|$LN14@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN15@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
cmp r3, #3
|
|
bge |$LN13@D_LPC_isf_|
|
|
; Line 100
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #2
|
|
ldrsh r1, [r3]
|
|
mov r3, #3
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x224]
|
|
add r0, r3, r2
|
|
ldr r3, [sp]
|
|
add r1, r3, #2
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 101
|
|
b |$LN14@D_LPC_isf_|
|
|
|$LN13@D_LPC_isf_|
|
|
; Line 103
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN12@D_LPC_isf_|
|
|
|$LN11@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN12@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
cmp r3, #3
|
|
bge |$LN10@D_LPC_isf_|
|
|
; Line 105
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #4
|
|
ldrsh r1, [r3]
|
|
mov r3, #3
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x1AC]
|
|
add r0, r3, r2
|
|
ldr r3, [sp]
|
|
add r1, r3, #5
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 106
|
|
b |$LN11@D_LPC_isf_|
|
|
|$LN10@D_LPC_isf_|
|
|
; Line 108
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN9@D_LPC_isf_|
|
|
|$LN8@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN9@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
cmp r3, #4
|
|
bge |$LN7@D_LPC_isf_|
|
|
; Line 110
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #6
|
|
ldrsh r1, [r3]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x134]
|
|
add r0, r3, r2
|
|
ldr r3, [sp]
|
|
add r1, r3, #8
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 111
|
|
b |$LN8@D_LPC_isf_|
|
|
|$LN7@D_LPC_isf_|
|
|
; Line 113
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN6@D_LPC_isf_|
|
|
|$LN5@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN6@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
cmp r3, #4
|
|
bge |$LN4@D_LPC_isf_|
|
|
; Line 115
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #8
|
|
ldrsh r1, [r3]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0xBC]
|
|
add r0, r3, r2
|
|
ldr r3, [sp]
|
|
add r1, r3, #0xC
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 116
|
|
b |$LN5@D_LPC_isf_|
|
|
|$LN4@D_LPC_isf_|
|
|
; Line 118
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN3@D_LPC_isf_|
|
|
|$LN2@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_LPC_isf_|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN1@D_LPC_isf_|
|
|
; Line 120
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x44]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 121
|
|
b |$LN2@D_LPC_isf_|
|
|
|$LN1@D_LPC_isf_|
|
|
; Line 123
|
|
mov r2, #0x10
|
|
mov r1, #0x80
|
|
ldr r0, [sp, #0x10]
|
|
bl D_LPC_isf_reorder
|
|
; Line 126
|
|
add sp, sp, #4
|
|
ldmia sp, {sp, pc}
|
|
|$LN24@D_LPC_isf_|
|
|
DCD |D_ROM_mean_isf_noise|
|
|
DCD |D_ROM_dico5_isf_noise|
|
|
DCD |D_ROM_dico4_isf_noise|
|
|
DCD |D_ROM_dico3_isf_noise|
|
|
DCD |D_ROM_dico2_isf_noise|
|
|
DCD |D_ROM_dico1_isf_noise|
|
|
|$M1654|
|
|
|
|
ENDP ; |D_LPC_isf_noise_d|
|
|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1662| DCD |$LN9@D_LPC_isf_@2|
|
|
DCD 0x40002f04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_isf_reorder| PROC
|
|
; Line 58
|
|
|$LN9@D_LPC_isf_@2|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #8
|
|
|$M1659|
|
|
; Line 61
|
|
ldrsh r3, [sp, #0x14]
|
|
str r3, [sp, #4]
|
|
; Line 63
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN4@D_LPC_isf_@2|
|
|
|$LN3@D_LPC_isf_@2|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN4@D_LPC_isf_@2|
|
|
ldrsh r3, [sp, #0x18]
|
|
sub r2, r3, #1
|
|
ldr r3, [sp]
|
|
cmp r3, r2
|
|
bge |$LN2@D_LPC_isf_@2|
|
|
; Line 65
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bge |$LN1@D_LPC_isf_@2|
|
|
; Line 67
|
|
ldr r3, [sp, #4]
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
|$LN1@D_LPC_isf_@2|
|
|
; Line 69
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldrsh r3, [sp, #0x14]
|
|
add r3, r2, r3
|
|
str r3, [sp, #4]
|
|
; Line 70
|
|
b |$LN3@D_LPC_isf_@2|
|
|
|$LN2@D_LPC_isf_@2|
|
|
; Line 73
|
|
add sp, sp, #8
|
|
ldmia sp, {sp, pc}
|
|
|$M1660|
|
|
|
|
ENDP ; |D_LPC_isf_reorder|
|
|
|
|
EXPORT |D_LPC_isf_isp_conversion|
|
|
IMPORT |D_ROM_cos|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1667| DCD |$LN11@D_LPC_isf_@3|
|
|
DCD 0x40006d04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_isf_isp_conversion| PROC
|
|
; Line 146
|
|
|$LN11@D_LPC_isf_@3|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r2}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x10
|
|
|$M1664|
|
|
; Line 149
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
b |$LN6@D_LPC_isf_@3|
|
|
|$LN5@D_LPC_isf_@3|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
|$LN6@D_LPC_isf_@3|
|
|
ldrsh r3, [sp, #0x20]
|
|
sub r2, r3, #1
|
|
ldr r3, [sp, #4]
|
|
cmp r3, r2
|
|
bge |$LN4@D_LPC_isf_@3|
|
|
; Line 151
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x18]
|
|
add r0, r3, r2
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1C]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 152
|
|
b |$LN5@D_LPC_isf_@3|
|
|
|$LN4@D_LPC_isf_@3|
|
|
; Line 153
|
|
ldrsh r3, [sp, #0x20]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r3, r3, lsl #1
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldrsh r3, [sp, #0x20]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 155
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
b |$LN3@D_LPC_isf_@3|
|
|
|$LN2@D_LPC_isf_@3|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
|$LN3@D_LPC_isf_@3|
|
|
ldrsh r2, [sp, #0x20]
|
|
ldr r3, [sp, #4]
|
|
cmp r3, r2
|
|
bge |$LN1@D_LPC_isf_@3|
|
|
; Line 157
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1C]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r3, r3, asr #7
|
|
str r3, [sp]
|
|
; Line 158
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1C]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
and r3, r3, #0x7F
|
|
str r3, [sp, #0xC]
|
|
; Line 161
|
|
ldr r3, [sp]
|
|
add r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x7C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x64]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
sub r2, r0, r3
|
|
ldr r3, [sp, #0xC]
|
|
mul r3, r2, r3
|
|
str r3, [sp, #8]
|
|
; Line 162
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x3C]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #8]
|
|
mov r3, r3, asr #7
|
|
add r3, r2, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x1C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 163
|
|
b |$LN2@D_LPC_isf_@3|
|
|
|$LN1@D_LPC_isf_@3|
|
|
; Line 165
|
|
add sp, sp, #0x10
|
|
ldmia sp, {sp, pc}
|
|
|$LN12@D_LPC_isf_@3|
|
|
DCD |D_ROM_cos|
|
|
|$M1665|
|
|
|
|
ENDP ; |D_LPC_isf_isp_conversion|
|
|
|
|
EXPORT |D_LPC_isp_a_conversion|
|
|
IMPORT |D_UTIL_norm_l|
|
|
IMPORT |labs|
|
|
IMPORT |D_UTIL_mpy_32_16|
|
|
IMPORT |D_UTIL_l_extract|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1673| DCD |$LN31@D_LPC_isp_|
|
|
DCD 0x4001e004
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_isp_a_conversion| PROC
|
|
; Line 249
|
|
|$LN31@D_LPC_isp_|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x94
|
|
|$M1670|
|
|
; Line 255
|
|
ldrsh r3, [sp, #0xA8]
|
|
mov r3, r3, asr #1
|
|
str r3, [sp, #0x40]
|
|
; Line 257
|
|
ldr r3, [sp, #0x40]
|
|
cmp r3, #8
|
|
ble |$LN26@D_LPC_isp_|
|
|
; Line 259
|
|
mov r3, #1
|
|
ldr r2, [sp, #0x40]
|
|
add r1, sp, #0x48
|
|
ldr r0, [sp, #0x9C]
|
|
bl D_LPC_isp_pol_get
|
|
; Line 261
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
b |$LN25@D_LPC_isp_|
|
|
|$LN24@D_LPC_isp_|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
|$LN25@D_LPC_isp_|
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [sp, #0x40]
|
|
cmp r2, r3
|
|
bgt |$LN23@D_LPC_isp_|
|
|
; Line 263
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x48
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
mov r0, r3, lsl #2
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x48
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 264
|
|
b |$LN24@D_LPC_isp_|
|
|
|$LN23@D_LPC_isp_|
|
|
; Line 266
|
|
b |$LN22@D_LPC_isp_|
|
|
|$LN26@D_LPC_isp_|
|
|
; Line 268
|
|
mov r3, #0
|
|
ldr r2, [sp, #0x40]
|
|
add r1, sp, #0x48
|
|
ldr r0, [sp, #0x9C]
|
|
bl D_LPC_isp_pol_get
|
|
|$LN22@D_LPC_isp_|
|
|
; Line 271
|
|
ldr r3, [sp, #0x40]
|
|
cmp r3, #8
|
|
ble |$LN21@D_LPC_isp_|
|
|
; Line 273
|
|
mov r3, #1
|
|
ldr r2, [sp, #0x40]
|
|
sub r2, r2, #1
|
|
add r1, sp, #0x10
|
|
ldr r0, [sp, #0x9C]
|
|
add r0, r0, #2
|
|
bl D_LPC_isp_pol_get
|
|
; Line 275
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
b |$LN20@D_LPC_isp_|
|
|
|$LN19@D_LPC_isp_|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
|$LN20@D_LPC_isp_|
|
|
ldr r3, [sp, #0x40]
|
|
sub r2, r3, #1
|
|
ldr r3, [sp, #4]
|
|
cmp r3, r2
|
|
bgt |$LN18@D_LPC_isp_|
|
|
; Line 277
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
mov r0, r3, lsl #2
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 278
|
|
b |$LN19@D_LPC_isp_|
|
|
|$LN18@D_LPC_isp_|
|
|
; Line 280
|
|
b |$LN17@D_LPC_isp_|
|
|
|$LN21@D_LPC_isp_|
|
|
; Line 282
|
|
mov r3, #0
|
|
ldr r2, [sp, #0x40]
|
|
sub r2, r2, #1
|
|
add r1, sp, #0x10
|
|
ldr r0, [sp, #0x9C]
|
|
add r0, r0, #2
|
|
bl D_LPC_isp_pol_get
|
|
|$LN17@D_LPC_isp_|
|
|
; Line 288
|
|
ldr r3, [sp, #0x40]
|
|
sub r3, r3, #1
|
|
str r3, [sp, #4]
|
|
b |$LN16@D_LPC_isp_|
|
|
|$LN15@D_LPC_isp_|
|
|
ldr r3, [sp, #4]
|
|
sub r3, r3, #1
|
|
str r3, [sp, #4]
|
|
|$LN16@D_LPC_isp_|
|
|
ldr r3, [sp, #4]
|
|
cmp r3, #1
|
|
ble |$LN14@D_LPC_isp_|
|
|
; Line 290
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r0, r3, r2
|
|
ldr r3, [sp, #4]
|
|
sub r1, r3, #2
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
ldr r2, [r0]
|
|
ldr r3, [r3]
|
|
sub r0, r2, r3
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 291
|
|
b |$LN15@D_LPC_isp_|
|
|
|$LN14@D_LPC_isp_|
|
|
; Line 296
|
|
mov r3, #0
|
|
str r3, [sp, #4]
|
|
b |$LN13@D_LPC_isp_|
|
|
|$LN12@D_LPC_isp_|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
|$LN13@D_LPC_isp_|
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [sp, #0x40]
|
|
cmp r2, r3
|
|
bge |$LN11@D_LPC_isp_|
|
|
; Line 299
|
|
add r2, sp, #0
|
|
add r1, sp, #0x38
|
|
ldr lr, [sp, #4]
|
|
mov r3, #4
|
|
mul r0, lr, r3
|
|
add r3, sp, #0x48
|
|
add r3, r3, r0
|
|
ldr r0, [r3]
|
|
bl D_UTIL_l_extract
|
|
; Line 300
|
|
ldrsh r3, [sp, #0xA8]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x9C]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldrsh r1, [sp]
|
|
ldrsh r0, [sp, #0x38]
|
|
bl D_UTIL_mpy_32_16
|
|
str r0, [sp, #0x7C]
|
|
ldr r3, [sp, #0x7C]
|
|
str r3, [sp, #0x74]
|
|
; Line 301
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x48
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x74]
|
|
add r0, r2, r3
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x48
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 304
|
|
add r2, sp, #0
|
|
add r1, sp, #0x38
|
|
ldr lr, [sp, #4]
|
|
mov r3, #4
|
|
mul r0, lr, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r0
|
|
ldr r0, [r3]
|
|
bl D_UTIL_l_extract
|
|
; Line 305
|
|
ldrsh r3, [sp, #0xA8]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x9C]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldrsh r1, [sp]
|
|
ldrsh r0, [sp, #0x38]
|
|
bl D_UTIL_mpy_32_16
|
|
str r0, [sp, #0x80]
|
|
ldr r3, [sp, #0x80]
|
|
str r3, [sp, #0x74]
|
|
; Line 306
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x74]
|
|
sub r0, r2, r3
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 307
|
|
b |$LN12@D_LPC_isp_|
|
|
|$LN11@D_LPC_isp_|
|
|
; Line 315
|
|
ldr r2, [sp, #0xA0]
|
|
mov r3, #1, 20
|
|
strh r3, [r2]
|
|
; Line 316
|
|
mov r3, #1
|
|
str r3, [sp, #8]
|
|
; Line 318
|
|
mov r3, #1
|
|
str r3, [sp, #4]
|
|
ldrsh r3, [sp, #0xA8]
|
|
sub r3, r3, #1
|
|
str r3, [sp, #0x78]
|
|
b |$LN10@D_LPC_isp_|
|
|
|$LN9@D_LPC_isp_|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
ldr r3, [sp, #0x78]
|
|
sub r3, r3, #1
|
|
str r3, [sp, #0x78]
|
|
|$LN10@D_LPC_isp_|
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [sp, #0x40]
|
|
cmp r2, r3
|
|
bge |$LN8@D_LPC_isp_|
|
|
; Line 321
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x48
|
|
add r0, r3, r2
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
ldr r2, [r0]
|
|
ldr r3, [r3]
|
|
add r3, r2, r3
|
|
str r3, [sp, #0x74]
|
|
; Line 322
|
|
ldr r0, [sp, #0x74]
|
|
bl labs
|
|
str r0, [sp, #0x84]
|
|
ldr r2, [sp, #8]
|
|
ldr r3, [sp, #0x84]
|
|
orr r3, r2, r3
|
|
str r3, [sp, #8]
|
|
; Line 323
|
|
ldr r3, [sp, #0x74]
|
|
add r3, r3, #2, 22
|
|
mov r3, r3, asr #12
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xA0]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 326
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x48
|
|
add r0, r3, r2
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
ldr r2, [r0]
|
|
ldr r3, [r3]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x74]
|
|
; Line 327
|
|
ldr r0, [sp, #0x74]
|
|
bl labs
|
|
str r0, [sp, #0x88]
|
|
ldr r2, [sp, #8]
|
|
ldr r3, [sp, #0x88]
|
|
orr r3, r2, r3
|
|
str r3, [sp, #8]
|
|
; Line 328
|
|
ldr r3, [sp, #0x74]
|
|
add r3, r3, #2, 22
|
|
mov r3, r3, asr #12
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0x78]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xA0]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 329
|
|
b |$LN9@D_LPC_isp_|
|
|
|$LN8@D_LPC_isp_|
|
|
; Line 333
|
|
ldr r3, [sp, #0xA4]
|
|
cmp r3, #0
|
|
beq |$LN7@D_LPC_isp_|
|
|
; Line 335
|
|
ldr r0, [sp, #8]
|
|
bl D_UTIL_norm_l
|
|
strh r0, [sp, #0x8C]
|
|
ldrsh r3, [sp, #0x8C]
|
|
rsb r3, r3, #4
|
|
str r3, [sp, #0xC]
|
|
; Line 337
|
|
b |$LN6@D_LPC_isp_|
|
|
|$LN7@D_LPC_isp_|
|
|
; Line 339
|
|
mov r3, #0
|
|
str r3, [sp, #0xC]
|
|
|$LN6@D_LPC_isp_|
|
|
; Line 342
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0
|
|
ble |$LN5@D_LPC_isp_|
|
|
; Line 344
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #0xC
|
|
str r3, [sp, #0x3C]
|
|
; Line 345
|
|
ldr r3, [sp, #0x3C]
|
|
sub r2, r3, #1
|
|
mov r3, #1
|
|
mov r3, r3, lsl r2
|
|
str r3, [sp, #0x44]
|
|
; Line 347
|
|
mov r3, #1
|
|
str r3, [sp, #4]
|
|
ldrsh r3, [sp, #0xA8]
|
|
sub r3, r3, #1
|
|
str r3, [sp, #0x78]
|
|
b |$LN4@D_LPC_isp_|
|
|
|$LN3@D_LPC_isp_|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
ldr r3, [sp, #0x78]
|
|
sub r3, r3, #1
|
|
str r3, [sp, #0x78]
|
|
|$LN4@D_LPC_isp_|
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [sp, #0x40]
|
|
cmp r2, r3
|
|
bge |$LN2@D_LPC_isp_|
|
|
; Line 350
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x48
|
|
add r0, r3, r2
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
ldr r2, [r0]
|
|
ldr r3, [r3]
|
|
add r3, r2, r3
|
|
str r3, [sp, #0x74]
|
|
; Line 351
|
|
ldr r2, [sp, #0x74]
|
|
ldr r3, [sp, #0x44]
|
|
add r2, r2, r3
|
|
ldr r3, [sp, #0x3C]
|
|
mov r3, r2, asr r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #4]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xA0]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 354
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x48
|
|
add r0, r3, r2
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x10
|
|
add r3, r3, r2
|
|
ldr r2, [r0]
|
|
ldr r3, [r3]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x74]
|
|
; Line 355
|
|
ldr r2, [sp, #0x74]
|
|
ldr r3, [sp, #0x44]
|
|
add r2, r2, r3
|
|
ldr r3, [sp, #0x3C]
|
|
mov r3, r2, asr r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0x78]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xA0]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 356
|
|
b |$LN3@D_LPC_isp_|
|
|
|$LN2@D_LPC_isp_|
|
|
; Line 357
|
|
ldr r3, [sp, #0xA0]
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0xC]
|
|
mov r3, r2, asr r3
|
|
mov r2, r3, lsl #16
|
|
mov r2, r2, asr #16
|
|
ldr r3, [sp, #0xA0]
|
|
strh r2, [r3]
|
|
; Line 359
|
|
b |$LN1@D_LPC_isp_|
|
|
|$LN5@D_LPC_isp_|
|
|
; Line 361
|
|
mov r3, #0xC
|
|
str r3, [sp, #0x3C]
|
|
; Line 362
|
|
ldr r3, [sp, #0x3C]
|
|
sub r2, r3, #1
|
|
mov r3, #1
|
|
mov r3, r3, lsl r2
|
|
str r3, [sp, #0x44]
|
|
; Line 363
|
|
mov r3, #0
|
|
str r3, [sp, #0xC]
|
|
|$LN1@D_LPC_isp_|
|
|
; Line 367
|
|
add r2, sp, #0
|
|
add r1, sp, #0x38
|
|
ldr lr, [sp, #0x40]
|
|
mov r3, #4
|
|
mul r0, lr, r3
|
|
add r3, sp, #0x48
|
|
add r3, r3, r0
|
|
ldr r0, [r3]
|
|
bl D_UTIL_l_extract
|
|
; Line 368
|
|
ldrsh r3, [sp, #0xA8]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x9C]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldrsh r1, [sp]
|
|
ldrsh r0, [sp, #0x38]
|
|
bl D_UTIL_mpy_32_16
|
|
str r0, [sp, #0x90]
|
|
ldr r3, [sp, #0x90]
|
|
str r3, [sp, #0x74]
|
|
; Line 369
|
|
ldr r1, [sp, #0x40]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x48
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x74]
|
|
add r3, r2, r3
|
|
str r3, [sp, #0x74]
|
|
; Line 370
|
|
ldr r2, [sp, #0x74]
|
|
ldr r3, [sp, #0x44]
|
|
add r2, r2, r3
|
|
ldr r3, [sp, #0x3C]
|
|
mov r3, r2, asr r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0x40]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xA0]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 373
|
|
ldrsh r3, [sp, #0xA8]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x9C]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #2
|
|
mov r3, r2, asr r3
|
|
add r3, r3, #1
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldrsh r1, [sp, #0xA8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xA0]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 374
|
|
ldrsh r1, [sp, #0xA8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xA0]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
mov r3, r3, asr #1
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldrsh r1, [sp, #0xA8]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0xA0]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 377
|
|
add sp, sp, #0x94
|
|
ldmia sp, {sp, pc}
|
|
|$M1671|
|
|
|
|
ENDP ; |D_LPC_isp_a_conversion|
|
|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1678| DCD |$LN12@D_LPC_isp_@2|
|
|
DCD 0x40007304
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_isp_pol_get| PROC
|
|
; Line 192
|
|
|$LN12@D_LPC_isp_@2|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x20
|
|
|$M1675|
|
|
; Line 196
|
|
mov r3, #2, 10
|
|
str r3, [sp, #0xC]
|
|
; Line 197
|
|
mov r3, #2, 24
|
|
str r3, [sp, #8]
|
|
; Line 199
|
|
ldrsh r3, [sp, #0x34]
|
|
cmp r3, #0
|
|
beq |$LN7@D_LPC_isp_@2|
|
|
; Line 201
|
|
ldr r3, [sp, #0xC]
|
|
mov r3, r3, asr #2
|
|
str r3, [sp, #0xC]
|
|
; Line 202
|
|
ldr r3, [sp, #8]
|
|
mov r3, r3, asr #2
|
|
str r3, [sp, #8]
|
|
|$LN7@D_LPC_isp_@2|
|
|
; Line 206
|
|
ldr r2, [sp, #0xC]
|
|
ldr r3, [sp, #0x2C]
|
|
str r2, [r3]
|
|
; Line 207
|
|
ldr r3, [sp, #0x28]
|
|
ldrsh r1, [r3]
|
|
ldr r3, [sp, #8]
|
|
rsb r3, r3, #0
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x2C]
|
|
add r3, r3, #4
|
|
str r2, [r3]
|
|
; Line 208
|
|
ldr r3, [sp, #0x2C]
|
|
add r3, r3, #8
|
|
str r3, [sp, #0x2C]
|
|
; Line 209
|
|
ldr r3, [sp, #0x28]
|
|
add r3, r3, #4
|
|
str r3, [sp, #0x28]
|
|
; Line 211
|
|
mov r3, #2
|
|
str r3, [sp, #4]
|
|
b |$LN6@D_LPC_isp_@2|
|
|
|$LN5@D_LPC_isp_@2|
|
|
ldr r3, [sp, #4]
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
|$LN6@D_LPC_isp_@2|
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [sp, #0x30]
|
|
cmp r2, r3
|
|
bgt |$LN4@D_LPC_isp_@2|
|
|
; Line 213
|
|
ldr r3, [sp, #0x2C]
|
|
sub r3, r3, #8
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x2C]
|
|
str r2, [r3]
|
|
; Line 215
|
|
mov r3, #1
|
|
str r3, [sp, #0x18]
|
|
b |$LN3@D_LPC_isp_@2|
|
|
|$LN2@D_LPC_isp_@2|
|
|
ldr r3, [sp, #0x18]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x18]
|
|
ldr r3, [sp, #0x2C]
|
|
sub r3, r3, #4
|
|
str r3, [sp, #0x2C]
|
|
|$LN3@D_LPC_isp_@2|
|
|
ldr r2, [sp, #0x18]
|
|
ldr r3, [sp, #4]
|
|
cmp r2, r3
|
|
bge |$LN1@D_LPC_isp_@2|
|
|
; Line 217
|
|
add r2, sp, #0
|
|
add r1, sp, #0x10
|
|
ldr r3, [sp, #0x2C]
|
|
sub r3, r3, #4
|
|
ldr r0, [r3]
|
|
bl D_UTIL_l_extract
|
|
; Line 218
|
|
ldr r3, [sp, #0x28]
|
|
ldrsh r2, [r3]
|
|
ldrsh r1, [sp]
|
|
ldrsh r0, [sp, #0x10]
|
|
bl D_UTIL_mpy_32_16
|
|
str r0, [sp, #0x1C]
|
|
ldr r3, [sp, #0x1C]
|
|
str r3, [sp, #0x14]
|
|
; Line 219
|
|
ldr r3, [sp, #0x14]
|
|
mov r3, r3, lsl #1
|
|
str r3, [sp, #0x14]
|
|
; Line 220
|
|
ldr r3, [sp, #0x2C]
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x14]
|
|
sub r2, r2, r3
|
|
ldr r3, [sp, #0x2C]
|
|
str r2, [r3]
|
|
; Line 221
|
|
ldr r3, [sp, #0x2C]
|
|
sub r1, r3, #8
|
|
ldr r3, [sp, #0x2C]
|
|
ldr r2, [r3]
|
|
ldr r3, [r1]
|
|
add r2, r2, r3
|
|
ldr r3, [sp, #0x2C]
|
|
str r2, [r3]
|
|
; Line 222
|
|
b |$LN2@D_LPC_isp_@2|
|
|
|$LN1@D_LPC_isp_@2|
|
|
; Line 224
|
|
ldr r3, [sp, #0x28]
|
|
ldrsh r1, [r3]
|
|
ldr r3, [sp, #8]
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x2C]
|
|
ldr r3, [r3]
|
|
sub r2, r3, r2
|
|
ldr r3, [sp, #0x2C]
|
|
str r2, [r3]
|
|
; Line 225
|
|
ldr r1, [sp, #4]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x2C]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x2C]
|
|
; Line 226
|
|
ldr r3, [sp, #0x28]
|
|
add r3, r3, #4
|
|
str r3, [sp, #0x28]
|
|
; Line 227
|
|
b |$LN5@D_LPC_isp_@2|
|
|
|$LN4@D_LPC_isp_@2|
|
|
; Line 230
|
|
add sp, sp, #0x20
|
|
ldmia sp, {sp, pc}
|
|
|$M1676|
|
|
|
|
ENDP ; |D_LPC_isp_pol_get|
|
|
|
|
EXPORT |D_LPC_a_weight|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1683| DCD |$LN8@D_LPC_a_we|
|
|
DCD 0x40004104
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_a_weight| PROC
|
|
; Line 396
|
|
|$LN8@D_LPC_a_we|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #8
|
|
|$M1680|
|
|
; Line 399
|
|
ldr r3, [sp, #0x10]
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x14]
|
|
strh r2, [r3]
|
|
; Line 400
|
|
ldrsh r3, [sp, #0x18]
|
|
str r3, [sp, #4]
|
|
; Line 402
|
|
mov r3, #1
|
|
str r3, [sp]
|
|
b |$LN3@D_LPC_a_we|
|
|
|$LN2@D_LPC_a_we|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_LPC_a_we|
|
|
ldrsh r2, [sp, #0x1C]
|
|
ldr r3, [sp]
|
|
cmp r3, r2
|
|
bge |$LN1@D_LPC_a_we|
|
|
; Line 404
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
mul r3, r2, r3
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 405
|
|
ldrsh r3, [sp, #0x18]
|
|
ldr r2, [sp, #4]
|
|
mul r3, r2, r3
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #4]
|
|
; Line 406
|
|
b |$LN2@D_LPC_a_we|
|
|
|$LN1@D_LPC_a_we|
|
|
; Line 408
|
|
ldrsh r1, [sp, #0x1C]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
mul r3, r2, r3
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldrsh r1, [sp, #0x1C]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x14]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 411
|
|
add sp, sp, #8
|
|
ldmia sp, {sp, pc}
|
|
|$M1681|
|
|
|
|
ENDP ; |D_LPC_a_weight|
|
|
|
|
EXPORT |D_LPC_isf_2s3s_decode|
|
|
IMPORT |D_ROM_mean_isf|
|
|
IMPORT |D_ROM_dico23_isf_36b|
|
|
IMPORT |D_ROM_dico22_isf_36b|
|
|
IMPORT |D_ROM_dico21_isf_36b|
|
|
IMPORT |D_ROM_dico2_isf|
|
|
IMPORT |D_ROM_dico1_isf|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1688| DCD |$LN43@D_LPC_isf_@4|
|
|
DCD 0x4001ac04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_isf_2s3s_decode| PROC
|
|
; Line 433
|
|
|$LN43@D_LPC_isf_@4|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x50
|
|
|$M1685|
|
|
; Line 439
|
|
ldrsh r3, [sp, #0x6C]
|
|
cmp r3, #0
|
|
bne |$LN38@D_LPC_isf_@4|
|
|
; Line 441
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN37@D_LPC_isf_@4|
|
|
|$LN36@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN37@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #9
|
|
bge |$LN35@D_LPC_isf_@4|
|
|
; Line 443
|
|
ldr r3, [sp, #0x58]
|
|
ldrsh r1, [r3]
|
|
mov r3, #9
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x644]
|
|
add r0, r3, r2
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 444
|
|
b |$LN36@D_LPC_isf_@4|
|
|
|$LN35@D_LPC_isf_@4|
|
|
; Line 446
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN34@D_LPC_isf_@4|
|
|
|$LN33@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN34@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #7
|
|
bge |$LN32@D_LPC_isf_@4|
|
|
; Line 448
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #2
|
|
ldrsh r1, [r3]
|
|
mov r3, #7
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x5D0]
|
|
add r0, r3, r2
|
|
ldr r3, [sp]
|
|
add r1, r3, #9
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 449
|
|
b |$LN33@D_LPC_isf_@4|
|
|
|$LN32@D_LPC_isf_@4|
|
|
; Line 451
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN31@D_LPC_isf_@4|
|
|
|$LN30@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN31@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #5
|
|
bge |$LN29@D_LPC_isf_@4|
|
|
; Line 454
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #4
|
|
ldrsh r1, [r3]
|
|
mov r3, #5
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x540]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 455
|
|
b |$LN30@D_LPC_isf_@4|
|
|
|$LN29@D_LPC_isf_@4|
|
|
; Line 457
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN28@D_LPC_isf_@4|
|
|
|$LN27@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN28@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #4
|
|
bge |$LN26@D_LPC_isf_@4|
|
|
; Line 460
|
|
ldr r3, [sp]
|
|
add r1, r3, #5
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #6
|
|
ldrsh r1, [r3]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x4A4]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r3, [sp]
|
|
add r1, r3, #5
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 461
|
|
b |$LN27@D_LPC_isf_@4|
|
|
|$LN26@D_LPC_isf_@4|
|
|
; Line 463
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN25@D_LPC_isf_@4|
|
|
|$LN24@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN25@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #7
|
|
bge |$LN23@D_LPC_isf_@4|
|
|
; Line 466
|
|
ldr r3, [sp]
|
|
add r1, r3, #9
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #8
|
|
ldrsh r1, [r3]
|
|
mov r3, #7
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x404]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r3, [sp]
|
|
add r1, r3, #9
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 467
|
|
b |$LN24@D_LPC_isf_@4|
|
|
|$LN23@D_LPC_isf_@4|
|
|
; Line 469
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN22@D_LPC_isf_@4|
|
|
|$LN21@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN22@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN20@D_LPC_isf_@4|
|
|
; Line 471
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #4]
|
|
; Line 473
|
|
ldrsh r0, [sp, #4]
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x378]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r0, r0, r3
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x60]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
mov r3, #0x2A, 24
|
|
orr r3, r3, #0xAB
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 474
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x60]
|
|
add r2, r3, r2
|
|
ldrsh r3, [sp, #4]
|
|
strh r3, [r2]
|
|
; Line 475
|
|
b |$LN21@D_LPC_isf_@4|
|
|
|$LN20@D_LPC_isf_@4|
|
|
; Line 477
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN19@D_LPC_isf_@4|
|
|
|$LN18@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN19@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN17@D_LPC_isf_@4|
|
|
; Line 479
|
|
mov r3, #2
|
|
str r3, [sp, #0x48]
|
|
b |$LN16@D_LPC_isf_@4|
|
|
|$LN15@D_LPC_isf_@4|
|
|
ldr r3, [sp, #0x48]
|
|
sub r3, r3, #1
|
|
str r3, [sp, #0x48]
|
|
|$LN16@D_LPC_isf_@4|
|
|
ldr r3, [sp, #0x48]
|
|
cmp r3, #0
|
|
ble |$LN14@D_LPC_isf_@4|
|
|
; Line 481
|
|
ldr r3, [sp, #0x48]
|
|
sub r1, r3, #1
|
|
mov r3, #0x10
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x68]
|
|
add r0, r3, r2
|
|
ldr r1, [sp, #0x48]
|
|
mov r3, #0x10
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x68]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 482
|
|
b |$LN15@D_LPC_isf_@4|
|
|
|$LN14@D_LPC_isf_@4|
|
|
; Line 483
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r0, r3, r2
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x68]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 484
|
|
b |$LN18@D_LPC_isf_@4|
|
|
|$LN17@D_LPC_isf_@4|
|
|
; Line 487
|
|
b |$LN13@D_LPC_isf_@4|
|
|
|$LN38@D_LPC_isf_@4|
|
|
; Line 490
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN12@D_LPC_isf_@4|
|
|
|$LN11@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN12@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN10@D_LPC_isf_@4|
|
|
; Line 492
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x1F4]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
str r3, [sp, #0x4C]
|
|
; Line 494
|
|
mov r3, #0
|
|
str r3, [sp, #0x48]
|
|
b |$LN9@D_LPC_isf_@4|
|
|
|$LN8@D_LPC_isf_@4|
|
|
ldr r3, [sp, #0x48]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x48]
|
|
|$LN9@D_LPC_isf_@4|
|
|
ldr r3, [sp, #0x48]
|
|
cmp r3, #3
|
|
bge |$LN7@D_LPC_isf_@4|
|
|
; Line 496
|
|
ldr r1, [sp, #0x48]
|
|
mov r3, #0x10
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x68]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x4C]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x4C]
|
|
; Line 497
|
|
b |$LN8@D_LPC_isf_@4|
|
|
|$LN7@D_LPC_isf_@4|
|
|
; Line 498
|
|
ldr r3, [sp, #0x4C]
|
|
add r3, r3, #1
|
|
mov r0, r3, asr #2
|
|
ldr r1, [sp]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #8
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 499
|
|
b |$LN11@D_LPC_isf_@4|
|
|
|$LN10@D_LPC_isf_@4|
|
|
; Line 502
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN6@D_LPC_isf_@4|
|
|
|$LN5@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN6@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN4@D_LPC_isf_@4|
|
|
; Line 505
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x64]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
mov r3, #0x73, 24
|
|
orr r3, r3, #0x33
|
|
mul r3, r2, r3
|
|
mov r0, r3, asr #15
|
|
ldr r1, [sp]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #8
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
mov r3, #3, 22
|
|
orr r3, r3, #0xCD
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 506
|
|
b |$LN5@D_LPC_isf_@4|
|
|
|$LN4@D_LPC_isf_@4|
|
|
; Line 509
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN3@D_LPC_isf_@4|
|
|
|$LN2@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_LPC_isf_@4|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN1@D_LPC_isf_@4|
|
|
; Line 512
|
|
ldr r1, [sp]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #8
|
|
add r0, r3, r2
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x60]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
mov r3, #0x2A, 24
|
|
orr r3, r3, #0xAB
|
|
mul r3, r2, r3
|
|
mov r2, r3, asr #15
|
|
ldr r3, [r0]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x4C]
|
|
; Line 514
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x4C]
|
|
sub r3, r2, r3
|
|
mov r3, r3, asr #1
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x60]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 515
|
|
b |$LN2@D_LPC_isf_@4|
|
|
|$LN1@D_LPC_isf_@4|
|
|
|$LN13@D_LPC_isf_@4|
|
|
; Line 518
|
|
mov r2, #0x10
|
|
mov r1, #0x80
|
|
ldr r0, [sp, #0x5C]
|
|
bl D_LPC_isf_reorder
|
|
; Line 521
|
|
add sp, sp, #0x50
|
|
ldmia sp, {sp, pc}
|
|
|$LN44@D_LPC_isf_@4|
|
|
DCD |D_ROM_mean_isf|
|
|
DCD |D_ROM_dico23_isf_36b|
|
|
DCD |D_ROM_dico22_isf_36b|
|
|
DCD |D_ROM_dico21_isf_36b|
|
|
DCD |D_ROM_dico2_isf|
|
|
DCD |D_ROM_dico1_isf|
|
|
|$M1686|
|
|
|
|
ENDP ; |D_LPC_isf_2s3s_decode|
|
|
|
|
EXPORT |D_LPC_isf_2s5s_decode|
|
|
IMPORT |D_ROM_dico25_isf|
|
|
IMPORT |D_ROM_dico24_isf|
|
|
IMPORT |D_ROM_dico23_isf|
|
|
IMPORT |D_ROM_dico22_isf|
|
|
IMPORT |D_ROM_dico21_isf|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1694| DCD |$LN49@D_LPC_isf_@5|
|
|
DCD 0x4001fc04
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_isf_2s5s_decode| PROC
|
|
; Line 543
|
|
|$LN49@D_LPC_isf_@5|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x50
|
|
|$M1691|
|
|
; Line 548
|
|
ldrsh r3, [sp, #0x6C]
|
|
cmp r3, #0
|
|
bne |$LN44@D_LPC_isf_@5|
|
|
; Line 550
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN43@D_LPC_isf_@5|
|
|
|$LN42@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN43@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #9
|
|
bge |$LN41@D_LPC_isf_@5|
|
|
; Line 552
|
|
ldr r3, [sp, #0x58]
|
|
ldrsh r1, [r3]
|
|
mov r3, #9
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x784]
|
|
add r0, r3, r2
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 553
|
|
b |$LN42@D_LPC_isf_@5|
|
|
|$LN41@D_LPC_isf_@5|
|
|
; Line 555
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN40@D_LPC_isf_@5|
|
|
|$LN39@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN40@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #7
|
|
bge |$LN38@D_LPC_isf_@5|
|
|
; Line 557
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #2
|
|
ldrsh r1, [r3]
|
|
mov r3, #7
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x710]
|
|
add r0, r3, r2
|
|
ldr r3, [sp]
|
|
add r1, r3, #9
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 558
|
|
b |$LN39@D_LPC_isf_@5|
|
|
|$LN38@D_LPC_isf_@5|
|
|
; Line 560
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN37@D_LPC_isf_@5|
|
|
|$LN36@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN37@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #3
|
|
bge |$LN35@D_LPC_isf_@5|
|
|
; Line 562
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #4
|
|
ldrsh r1, [r3]
|
|
mov r3, #3
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x680]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 563
|
|
b |$LN36@D_LPC_isf_@5|
|
|
|$LN35@D_LPC_isf_@5|
|
|
; Line 565
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN34@D_LPC_isf_@5|
|
|
|$LN33@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN34@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #3
|
|
bge |$LN32@D_LPC_isf_@5|
|
|
; Line 568
|
|
ldr r3, [sp]
|
|
add r1, r3, #3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #6
|
|
ldrsh r1, [r3]
|
|
mov r3, #3
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x5E4]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r3, [sp]
|
|
add r1, r3, #3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 569
|
|
b |$LN33@D_LPC_isf_@5|
|
|
|$LN32@D_LPC_isf_@5|
|
|
; Line 571
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN31@D_LPC_isf_@5|
|
|
|$LN30@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN31@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #3
|
|
bge |$LN29@D_LPC_isf_@5|
|
|
; Line 574
|
|
ldr r3, [sp]
|
|
add r1, r3, #6
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #8
|
|
ldrsh r1, [r3]
|
|
mov r3, #3
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x544]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r3, [sp]
|
|
add r1, r3, #6
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 575
|
|
b |$LN30@D_LPC_isf_@5|
|
|
|$LN29@D_LPC_isf_@5|
|
|
; Line 577
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN28@D_LPC_isf_@5|
|
|
|$LN27@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN28@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #3
|
|
bge |$LN26@D_LPC_isf_@5|
|
|
; Line 580
|
|
ldr r3, [sp]
|
|
add r1, r3, #9
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #0xA
|
|
ldrsh r1, [r3]
|
|
mov r3, #3
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x4A4]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r3, [sp]
|
|
add r1, r3, #9
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 581
|
|
b |$LN27@D_LPC_isf_@5|
|
|
|$LN26@D_LPC_isf_@5|
|
|
; Line 583
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN25@D_LPC_isf_@5|
|
|
|$LN24@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN25@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #4
|
|
bge |$LN23@D_LPC_isf_@5|
|
|
; Line 586
|
|
ldr r3, [sp]
|
|
add r1, r3, #0xC
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
add r3, r3, #0xC
|
|
ldrsh r1, [r3]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x404]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r3, [sp]
|
|
add r1, r3, #0xC
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 587
|
|
b |$LN24@D_LPC_isf_@5|
|
|
|$LN23@D_LPC_isf_@5|
|
|
; Line 589
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN22@D_LPC_isf_@5|
|
|
|$LN21@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN22@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN20@D_LPC_isf_@5|
|
|
; Line 591
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
strh r3, [sp, #4]
|
|
; Line 593
|
|
ldrsh r0, [sp, #4]
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x378]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
add r0, r0, r3
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x60]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
mov r3, #0x2A, 24
|
|
orr r3, r3, #0xAB
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 594
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x60]
|
|
add r2, r3, r2
|
|
ldrsh r3, [sp, #4]
|
|
strh r3, [r2]
|
|
; Line 595
|
|
b |$LN21@D_LPC_isf_@5|
|
|
|$LN20@D_LPC_isf_@5|
|
|
; Line 598
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN19@D_LPC_isf_@5|
|
|
|$LN18@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN19@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN17@D_LPC_isf_@5|
|
|
; Line 600
|
|
mov r3, #2
|
|
str r3, [sp, #0x4C]
|
|
b |$LN16@D_LPC_isf_@5|
|
|
|$LN15@D_LPC_isf_@5|
|
|
ldr r3, [sp, #0x4C]
|
|
sub r3, r3, #1
|
|
str r3, [sp, #0x4C]
|
|
|$LN16@D_LPC_isf_@5|
|
|
ldr r3, [sp, #0x4C]
|
|
cmp r3, #0
|
|
ble |$LN14@D_LPC_isf_@5|
|
|
; Line 602
|
|
ldr r3, [sp, #0x4C]
|
|
sub r1, r3, #1
|
|
mov r3, #0x10
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x68]
|
|
add r0, r3, r2
|
|
ldr r1, [sp, #0x4C]
|
|
mov r3, #0x10
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x68]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 603
|
|
b |$LN15@D_LPC_isf_@5|
|
|
|$LN14@D_LPC_isf_@5|
|
|
; Line 604
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r0, r3, r2
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x68]
|
|
add r2, r3, r2
|
|
ldrsh r3, [r0]
|
|
strh r3, [r2]
|
|
; Line 605
|
|
b |$LN18@D_LPC_isf_@5|
|
|
|$LN17@D_LPC_isf_@5|
|
|
; Line 608
|
|
b |$LN13@D_LPC_isf_@5|
|
|
|$LN44@D_LPC_isf_@5|
|
|
; Line 611
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN12@D_LPC_isf_@5|
|
|
|$LN11@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN12@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN10@D_LPC_isf_@5|
|
|
; Line 613
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [pc, #0x1F4]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
str r3, [sp, #0x48]
|
|
; Line 615
|
|
mov r3, #0
|
|
str r3, [sp, #0x4C]
|
|
b |$LN9@D_LPC_isf_@5|
|
|
|$LN8@D_LPC_isf_@5|
|
|
ldr r3, [sp, #0x4C]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x4C]
|
|
|$LN9@D_LPC_isf_@5|
|
|
ldr r3, [sp, #0x4C]
|
|
cmp r3, #3
|
|
bge |$LN7@D_LPC_isf_@5|
|
|
; Line 617
|
|
ldr r1, [sp, #0x4C]
|
|
mov r3, #0x10
|
|
mul r2, r1, r3
|
|
ldr r3, [sp]
|
|
add r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x68]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x48]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x48]
|
|
; Line 618
|
|
b |$LN8@D_LPC_isf_@5|
|
|
|$LN7@D_LPC_isf_@5|
|
|
; Line 620
|
|
ldr r3, [sp, #0x48]
|
|
add r3, r3, #1
|
|
mov r0, r3, asr #2
|
|
ldr r1, [sp]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #8
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 621
|
|
b |$LN11@D_LPC_isf_@5|
|
|
|$LN10@D_LPC_isf_@5|
|
|
; Line 624
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN6@D_LPC_isf_@5|
|
|
|$LN5@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN6@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN4@D_LPC_isf_@5|
|
|
; Line 627
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x64]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
mov r3, #0x73, 24
|
|
orr r3, r3, #0x33
|
|
mul r3, r2, r3
|
|
mov r0, r3, asr #15
|
|
ldr r1, [sp]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #8
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
mov r3, #3, 22
|
|
orr r3, r3, #0xCD
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 628
|
|
b |$LN5@D_LPC_isf_@5|
|
|
|$LN4@D_LPC_isf_@5|
|
|
; Line 631
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN3@D_LPC_isf_@5|
|
|
|$LN2@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_LPC_isf_@5|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN1@D_LPC_isf_@5|
|
|
; Line 634
|
|
ldr r1, [sp]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #8
|
|
add r0, r3, r2
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x60]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
mov r3, #0x2A, 24
|
|
orr r3, r3, #0xAB
|
|
mul r3, r2, r3
|
|
mov r2, r3, asr #15
|
|
ldr r3, [r0]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x48]
|
|
; Line 636
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x5C]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x48]
|
|
sub r3, r2, r3
|
|
mov r3, r3, asr #1
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x60]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 637
|
|
b |$LN2@D_LPC_isf_@5|
|
|
|$LN1@D_LPC_isf_@5|
|
|
|$LN13@D_LPC_isf_@5|
|
|
; Line 640
|
|
mov r2, #0x10
|
|
mov r1, #0x80
|
|
ldr r0, [sp, #0x5C]
|
|
bl D_LPC_isf_reorder
|
|
; Line 643
|
|
add sp, sp, #0x50
|
|
ldmia sp, {sp, pc}
|
|
|$LN50@D_LPC_isf_@5|
|
|
DCD |D_ROM_mean_isf|
|
|
DCD |D_ROM_dico25_isf|
|
|
DCD |D_ROM_dico24_isf|
|
|
DCD |D_ROM_dico23_isf|
|
|
DCD |D_ROM_dico22_isf|
|
|
DCD |D_ROM_dico21_isf|
|
|
DCD |D_ROM_dico2_isf|
|
|
DCD |D_ROM_dico1_isf|
|
|
|$M1692|
|
|
|
|
ENDP ; |D_LPC_isf_2s5s_decode|
|
|
|
|
EXPORT |D_LPC_int_isp_find|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1700| DCD |$LN11@D_LPC_int_|
|
|
DCD 0x40005304
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_int_isp_find| PROC
|
|
; Line 663
|
|
|$LN11@D_LPC_int_|
|
|
mov r12, sp
|
|
stmdb sp!, {r0 - r3}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x34
|
|
|$M1697|
|
|
; Line 667
|
|
mov r3, #0
|
|
str r3, [sp, #0x10]
|
|
b |$LN6@D_LPC_int_|
|
|
|$LN5@D_LPC_int_|
|
|
ldr r3, [sp, #0x10]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x10]
|
|
|$LN6@D_LPC_int_|
|
|
ldr r3, [sp, #0x10]
|
|
cmp r3, #3
|
|
bge |$LN4@D_LPC_int_|
|
|
; Line 669
|
|
ldr r1, [sp, #0x10]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x44]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
str r3, [sp, #0xC]
|
|
; Line 670
|
|
ldr r2, [sp, #0xC]
|
|
mov r3, #0x7F, 24
|
|
orr r3, r3, #0xFF
|
|
rsb r3, r2, r3
|
|
add r3, r3, #1
|
|
str r3, [sp, #4]
|
|
; Line 672
|
|
mov r3, #0
|
|
str r3, [sp]
|
|
b |$LN3@D_LPC_int_|
|
|
|$LN2@D_LPC_int_|
|
|
ldr r3, [sp]
|
|
add r3, r3, #1
|
|
str r3, [sp]
|
|
|$LN3@D_LPC_int_|
|
|
ldr r3, [sp]
|
|
cmp r3, #0x10
|
|
bge |$LN1@D_LPC_int_|
|
|
; Line 674
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x3C]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #4]
|
|
mul r3, r2, r3
|
|
str r3, [sp, #8]
|
|
; Line 675
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x40]
|
|
add r3, r3, r2
|
|
ldrsh r1, [r3]
|
|
ldr r3, [sp, #0xC]
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, r2
|
|
str r3, [sp, #8]
|
|
; Line 676
|
|
ldr r3, [sp, #8]
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 677
|
|
b |$LN2@D_LPC_int_|
|
|
|$LN1@D_LPC_int_|
|
|
; Line 679
|
|
mov r3, #0x10
|
|
mov r2, #0
|
|
ldr r1, [sp, #0x48]
|
|
add r0, sp, #0x14
|
|
bl D_LPC_isp_a_conversion
|
|
; Line 680
|
|
ldr r3, [sp, #0x48]
|
|
add r3, r3, #0x22
|
|
str r3, [sp, #0x48]
|
|
; Line 681
|
|
b |$LN5@D_LPC_int_|
|
|
|$LN4@D_LPC_int_|
|
|
; Line 684
|
|
mov r3, #0x10
|
|
mov r2, #0
|
|
ldr r1, [sp, #0x48]
|
|
ldr r0, [sp, #0x40]
|
|
bl D_LPC_isp_a_conversion
|
|
; Line 687
|
|
add sp, sp, #0x34
|
|
ldmia sp, {sp, pc}
|
|
|$M1698|
|
|
|
|
ENDP ; |D_LPC_int_isp_find|
|
|
|
|
EXPORT |D_LPC_isf_extrapolation|
|
|
IMPORT |D_UTIL_mpy_32|
|
|
IMPORT |D_UTIL_norm_s|
|
|
IMPORT |__imp___rt_sdiv|
|
|
|
|
AREA |.pdata|, PDATA
|
|
|$T1707| DCD |$LN54@D_LPC_isf_@6|
|
|
DCD 0x40029804
|
|
; Function compile flags: /Odsp
|
|
|
|
AREA |.text|, CODE, ARM
|
|
|
|
|D_LPC_isf_extrapolation| PROC
|
|
; Line 704
|
|
|$LN54@D_LPC_isf_@6|
|
|
mov r12, sp
|
|
stmdb sp!, {r0}
|
|
stmdb sp!, {r12, lr}
|
|
sub sp, sp, #0x80
|
|
|$M1704|
|
|
; Line 711
|
|
ldr r3, [sp, #0x88]
|
|
add r1, r3, #0x1E
|
|
ldr r3, [sp, #0x88]
|
|
add r2, r3, #0x26
|
|
ldrsh r3, [r1]
|
|
strh r3, [r2]
|
|
; Line 714
|
|
mov r3, #1
|
|
str r3, [sp, #0xC]
|
|
b |$LN49@D_LPC_isf_@6|
|
|
|$LN48@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN49@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0xF
|
|
bge |$LN47@D_LPC_isf_@6|
|
|
; Line 716
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
sub r0, r0, r3
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #1
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 717
|
|
b |$LN48@D_LPC_isf_@6|
|
|
|$LN47@D_LPC_isf_@6|
|
|
; Line 719
|
|
mov r3, #0
|
|
str r3, [sp, #0x64]
|
|
; Line 722
|
|
mov r3, #3
|
|
str r3, [sp, #0xC]
|
|
b |$LN46@D_LPC_isf_@6|
|
|
|$LN45@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN46@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0xF
|
|
bge |$LN44@D_LPC_isf_@6|
|
|
; Line 724
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #1
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r1, [r3]
|
|
mov r3, #0xA, 24
|
|
orr r3, r3, #0xAB
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x64]
|
|
add r3, r3, r2
|
|
str r3, [sp, #0x64]
|
|
; Line 725
|
|
b |$LN45@D_LPC_isf_@6|
|
|
|$LN44@D_LPC_isf_@6|
|
|
; Line 727
|
|
ldr r3, [sp, #0x64]
|
|
add r3, r3, #1, 18
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #0x58]
|
|
; Line 728
|
|
mov r3, #0
|
|
str r3, [sp, #0x4C]
|
|
; Line 729
|
|
mov r3, #0
|
|
str r3, [sp, #0x50]
|
|
; Line 730
|
|
mov r3, #0
|
|
str r3, [sp, #0x54]
|
|
; Line 731
|
|
mov r3, #0
|
|
str r3, [sp, #0x64]
|
|
; Line 733
|
|
mov r3, #0
|
|
str r3, [sp, #0xC]
|
|
b |$LN43@D_LPC_isf_@6|
|
|
|$LN42@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN43@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0xE
|
|
bge |$LN41@D_LPC_isf_@6|
|
|
; Line 735
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x64]
|
|
cmp r2, r3
|
|
ble |$LN40@D_LPC_isf_@6|
|
|
; Line 737
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
str r3, [sp, #0x64]
|
|
|$LN40@D_LPC_isf_@6|
|
|
; Line 739
|
|
b |$LN42@D_LPC_isf_@6|
|
|
|$LN41@D_LPC_isf_@6|
|
|
; Line 741
|
|
ldr r3, [sp, #0x64]
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
bl D_UTIL_norm_s
|
|
strh r0, [sp, #0x6E]
|
|
ldrsh r3, [sp, #0x6E]
|
|
str r3, [sp, #8]
|
|
; Line 743
|
|
mov r3, #0
|
|
str r3, [sp, #0xC]
|
|
b |$LN39@D_LPC_isf_@6|
|
|
|$LN38@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN39@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0xE
|
|
bge |$LN37@D_LPC_isf_@6|
|
|
; Line 745
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #8]
|
|
mov r0, r2, lsl r3
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 746
|
|
b |$LN38@D_LPC_isf_@6|
|
|
|$LN37@D_LPC_isf_@6|
|
|
; Line 748
|
|
ldr r2, [sp, #0x58]
|
|
ldr r3, [sp, #8]
|
|
mov r3, r2, lsl r3
|
|
str r3, [sp, #0x58]
|
|
; Line 750
|
|
mov r3, #7
|
|
str r3, [sp, #0xC]
|
|
b |$LN36@D_LPC_isf_@6|
|
|
|$LN35@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN36@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0xE
|
|
bge |$LN34@D_LPC_isf_@6|
|
|
; Line 752
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x68]
|
|
; Line 753
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #2
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x10]
|
|
; Line 754
|
|
ldr r2, [sp, #0x68]
|
|
ldr r3, [sp, #0x10]
|
|
mul r3, r2, r3
|
|
mov r3, r3, lsl #1
|
|
str r3, [sp, #0x64]
|
|
; Line 755
|
|
add r2, sp, #0
|
|
add r1, sp, #0x6C
|
|
ldr r0, [sp, #0x64]
|
|
bl D_UTIL_l_extract
|
|
; Line 756
|
|
ldrsh r3, [sp]
|
|
ldrsh r2, [sp, #0x6C]
|
|
ldrsh r1, [sp]
|
|
ldrsh r0, [sp, #0x6C]
|
|
bl D_UTIL_mpy_32
|
|
str r0, [sp, #0x70]
|
|
ldr r3, [sp, #0x70]
|
|
str r3, [sp, #0x64]
|
|
; Line 757
|
|
ldr r2, [sp, #0x4C]
|
|
ldr r3, [sp, #0x64]
|
|
add r3, r2, r3
|
|
str r3, [sp, #0x4C]
|
|
; Line 758
|
|
b |$LN35@D_LPC_isf_@6|
|
|
|$LN34@D_LPC_isf_@6|
|
|
; Line 760
|
|
mov r3, #7
|
|
str r3, [sp, #0xC]
|
|
b |$LN33@D_LPC_isf_@6|
|
|
|$LN32@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN33@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0xE
|
|
bge |$LN31@D_LPC_isf_@6|
|
|
; Line 762
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x68]
|
|
; Line 763
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #3
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x10]
|
|
; Line 764
|
|
ldr r2, [sp, #0x68]
|
|
ldr r3, [sp, #0x10]
|
|
mul r3, r2, r3
|
|
mov r3, r3, lsl #1
|
|
str r3, [sp, #0x64]
|
|
; Line 765
|
|
add r2, sp, #0
|
|
add r1, sp, #0x6C
|
|
ldr r0, [sp, #0x64]
|
|
bl D_UTIL_l_extract
|
|
; Line 766
|
|
ldrsh r3, [sp]
|
|
ldrsh r2, [sp, #0x6C]
|
|
ldrsh r1, [sp]
|
|
ldrsh r0, [sp, #0x6C]
|
|
bl D_UTIL_mpy_32
|
|
str r0, [sp, #0x74]
|
|
ldr r3, [sp, #0x74]
|
|
str r3, [sp, #0x64]
|
|
; Line 767
|
|
ldr r2, [sp, #0x50]
|
|
ldr r3, [sp, #0x64]
|
|
add r3, r2, r3
|
|
str r3, [sp, #0x50]
|
|
; Line 768
|
|
b |$LN32@D_LPC_isf_@6|
|
|
|$LN31@D_LPC_isf_@6|
|
|
; Line 770
|
|
mov r3, #7
|
|
str r3, [sp, #0xC]
|
|
b |$LN30@D_LPC_isf_@6|
|
|
|$LN29@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN30@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0xE
|
|
bge |$LN28@D_LPC_isf_@6|
|
|
; Line 772
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x68]
|
|
; Line 773
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #4
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r3]
|
|
ldr r3, [sp, #0x58]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x10]
|
|
; Line 774
|
|
ldr r2, [sp, #0x68]
|
|
ldr r3, [sp, #0x10]
|
|
mul r3, r2, r3
|
|
mov r3, r3, lsl #1
|
|
str r3, [sp, #0x64]
|
|
; Line 775
|
|
add r2, sp, #0
|
|
add r1, sp, #0x6C
|
|
ldr r0, [sp, #0x64]
|
|
bl D_UTIL_l_extract
|
|
; Line 776
|
|
ldrsh r3, [sp]
|
|
ldrsh r2, [sp, #0x6C]
|
|
ldrsh r1, [sp]
|
|
ldrsh r0, [sp, #0x6C]
|
|
bl D_UTIL_mpy_32
|
|
str r0, [sp, #0x78]
|
|
ldr r3, [sp, #0x78]
|
|
str r3, [sp, #0x64]
|
|
; Line 777
|
|
ldr r2, [sp, #0x54]
|
|
ldr r3, [sp, #0x64]
|
|
add r3, r2, r3
|
|
str r3, [sp, #0x54]
|
|
; Line 778
|
|
b |$LN29@D_LPC_isf_@6|
|
|
|$LN28@D_LPC_isf_@6|
|
|
; Line 780
|
|
ldr r2, [sp, #0x4C]
|
|
ldr r3, [sp, #0x50]
|
|
cmp r2, r3
|
|
ble |$LN27@D_LPC_isf_@6|
|
|
; Line 782
|
|
mov r3, #0
|
|
str r3, [sp, #0x60]
|
|
; Line 784
|
|
b |$LN26@D_LPC_isf_@6|
|
|
|$LN27@D_LPC_isf_@6|
|
|
; Line 786
|
|
mov r3, #1
|
|
str r3, [sp, #0x60]
|
|
|$LN26@D_LPC_isf_@6|
|
|
; Line 789
|
|
ldr r1, [sp, #0x60]
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x4C
|
|
add r3, r3, r2
|
|
ldr r2, [sp, #0x54]
|
|
ldr r3, [r3]
|
|
cmp r2, r3
|
|
ble |$LN25@D_LPC_isf_@6|
|
|
; Line 791
|
|
mov r3, #2
|
|
str r3, [sp, #0x60]
|
|
|$LN25@D_LPC_isf_@6|
|
|
; Line 794
|
|
ldr r3, [sp, #0x60]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0x60]
|
|
; Line 796
|
|
mov r3, #0xF
|
|
str r3, [sp, #0xC]
|
|
b |$LN24@D_LPC_isf_@6|
|
|
|$LN23@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN24@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0x13
|
|
bge |$LN22@D_LPC_isf_@6|
|
|
; Line 798
|
|
ldr r3, [sp, #0xC]
|
|
sub r2, r3, #1
|
|
ldr r3, [sp, #0x60]
|
|
sub r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0xC]
|
|
sub r2, r3, #2
|
|
ldr r3, [sp, #0x60]
|
|
sub r1, r2, r3
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
sub r3, r0, r3
|
|
str r3, [sp, #0x64]
|
|
; Line 799
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x64]
|
|
add r3, r2, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 800
|
|
b |$LN23@D_LPC_isf_@6|
|
|
|$LN22@D_LPC_isf_@6|
|
|
; Line 803
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, #8
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, #6
|
|
ldrsh r3, [r3]
|
|
add r3, r2, r3
|
|
str r3, [sp, #0x64]
|
|
; Line 804
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, #4
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x64]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x64]
|
|
; Line 805
|
|
ldr r2, [sp, #0x64]
|
|
mov r3, #0x15, 24
|
|
orr r3, r3, #0x55
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #0x64]
|
|
; Line 806
|
|
ldr r3, [sp, #0x64]
|
|
add r3, r3, #0x4F, 24
|
|
add r3, r3, #0xA6
|
|
str r3, [sp, #0x64]
|
|
; Line 808
|
|
ldr r3, [sp, #0x64]
|
|
cmp r3, #0x13, 22
|
|
ble |$LN21@D_LPC_isf_@6|
|
|
; Line 810
|
|
mov r3, #0x13, 22
|
|
str r3, [sp, #0x64]
|
|
|$LN21@D_LPC_isf_@6|
|
|
; Line 813
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, #0x1C
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x64]
|
|
sub r3, r3, r2
|
|
str r3, [sp, #0x64]
|
|
; Line 814
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, #0x24
|
|
ldrsh r2, [r3]
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, #0x1C
|
|
ldrsh r3, [r3]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #0x68]
|
|
; Line 815
|
|
ldr r3, [sp, #0x68]
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
bl D_UTIL_norm_s
|
|
strh r0, [sp, #0x7C]
|
|
ldrsh r3, [sp, #0x7C]
|
|
str r3, [sp, #4]
|
|
; Line 816
|
|
ldr r3, [sp, #0x64]
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
bl D_UTIL_norm_s
|
|
strh r0, [sp, #0x7E]
|
|
ldrsh r3, [sp, #0x7E]
|
|
str r3, [sp, #8]
|
|
; Line 817
|
|
ldr r3, [sp, #8]
|
|
sub r3, r3, #1
|
|
str r3, [sp, #8]
|
|
; Line 818
|
|
ldr r2, [sp, #0x64]
|
|
ldr r3, [sp, #8]
|
|
mov r3, r2, lsl r3
|
|
str r3, [sp, #0x64]
|
|
; Line 819
|
|
ldr r2, [sp, #0x68]
|
|
ldr r3, [sp, #4]
|
|
mov r3, r2, lsl r3
|
|
str r3, [sp, #0x68]
|
|
; Line 820
|
|
ldr r3, [sp, #0x64]
|
|
mov r1, r3, lsl #15
|
|
ldr r0, [sp, #0x68]
|
|
ldr r3, [pc, #0x39C]
|
|
ldr r3, [r3]
|
|
mov lr, pc
|
|
mov pc, r3
|
|
str r0, [sp, #0x5C]
|
|
; Line 821
|
|
ldr r2, [sp, #4]
|
|
ldr r3, [sp, #8]
|
|
sub r3, r2, r3
|
|
str r3, [sp, #8]
|
|
; Line 823
|
|
ldr r3, [sp, #8]
|
|
cmp r3, #0
|
|
blt |$LN20@D_LPC_isf_@6|
|
|
; Line 825
|
|
mov r3, #0xF
|
|
str r3, [sp, #0xC]
|
|
b |$LN19@D_LPC_isf_@6|
|
|
|$LN18@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN19@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0x13
|
|
bge |$LN17@D_LPC_isf_@6|
|
|
; Line 827
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
sub r2, r0, r3
|
|
ldr r3, [sp, #0x5C]
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #15
|
|
str r3, [sp, #0x64]
|
|
; Line 828
|
|
ldr r2, [sp, #0x64]
|
|
ldr r3, [sp, #8]
|
|
mov r0, r2, lsl r3
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0xF
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 829
|
|
b |$LN18@D_LPC_isf_@6|
|
|
|$LN17@D_LPC_isf_@6|
|
|
; Line 831
|
|
b |$LN16@D_LPC_isf_@6|
|
|
|$LN20@D_LPC_isf_@6|
|
|
; Line 833
|
|
ldr r3, [sp, #8]
|
|
rsb r3, r3, #0xF
|
|
str r3, [sp, #8]
|
|
; Line 835
|
|
mov r3, #0xF
|
|
str r3, [sp, #0xC]
|
|
b |$LN15@D_LPC_isf_@6|
|
|
|$LN14@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN15@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0x13
|
|
bge |$LN13@D_LPC_isf_@6|
|
|
; Line 837
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r3, [r3]
|
|
sub r1, r0, r3
|
|
ldr r3, [sp, #0x5C]
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #8]
|
|
mov r0, r2, asr r3
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0xF
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 838
|
|
b |$LN14@D_LPC_isf_@6|
|
|
|$LN13@D_LPC_isf_@6|
|
|
|$LN16@D_LPC_isf_@6|
|
|
; Line 841
|
|
mov r3, #0x10
|
|
str r3, [sp, #0xC]
|
|
b |$LN12@D_LPC_isf_@6|
|
|
|$LN11@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN12@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0x13
|
|
bge |$LN10@D_LPC_isf_@6|
|
|
; Line 844
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0xF
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r0, r3, r2
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0x10
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r0]
|
|
ldr r3, [r3]
|
|
add r3, r2, r3
|
|
sub r3, r3, #5, 24
|
|
str r3, [sp, #0x64]
|
|
; Line 846
|
|
ldr r3, [sp, #0x64]
|
|
cmp r3, #0
|
|
bge |$LN9@D_LPC_isf_@6|
|
|
; Line 848
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0xF
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r0, r3, r2
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0x10
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r2, [r0]
|
|
ldr r3, [r3]
|
|
cmp r2, r3
|
|
ble |$LN8@D_LPC_isf_@6|
|
|
; Line 850
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0xF
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
rsb r0, r3, #5, 24
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0x10
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
; Line 852
|
|
b |$LN7@D_LPC_isf_@6|
|
|
|$LN8@D_LPC_isf_@6|
|
|
; Line 854
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0x10
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
rsb r0, r3, #5, 24
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0xF
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
str r0, [r3]
|
|
|$LN7@D_LPC_isf_@6|
|
|
|$LN9@D_LPC_isf_@6|
|
|
; Line 857
|
|
b |$LN11@D_LPC_isf_@6|
|
|
|$LN10@D_LPC_isf_@6|
|
|
; Line 859
|
|
mov r3, #0xF
|
|
str r3, [sp, #0xC]
|
|
b |$LN6@D_LPC_isf_@6|
|
|
|$LN5@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN6@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0x13
|
|
bge |$LN4@D_LPC_isf_@6|
|
|
; Line 861
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #1
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r0, [r3]
|
|
ldr r3, [sp, #0xC]
|
|
sub r1, r3, #0xF
|
|
mov r3, #4
|
|
mul r2, r1, r3
|
|
add r3, sp, #0x14
|
|
add r3, r3, r2
|
|
ldr r3, [r3]
|
|
add r3, r0, r3
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 862
|
|
b |$LN5@D_LPC_isf_@6|
|
|
|$LN4@D_LPC_isf_@6|
|
|
; Line 864
|
|
mov r3, #0
|
|
str r3, [sp, #0xC]
|
|
b |$LN3@D_LPC_isf_@6|
|
|
|$LN2@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
add r3, r3, #1
|
|
str r3, [sp, #0xC]
|
|
|$LN3@D_LPC_isf_@6|
|
|
ldr r3, [sp, #0xC]
|
|
cmp r3, #0x13
|
|
bge |$LN1@D_LPC_isf_@6|
|
|
; Line 866
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
ldrsh r2, [r3]
|
|
mov r3, #0x33, 24
|
|
orr r3, r3, #0x33
|
|
mul r3, r2, r3
|
|
mov r3, r3, asr #14
|
|
mov r0, r3, lsl #16
|
|
mov r0, r0, asr #16
|
|
ldr r1, [sp, #0xC]
|
|
mov r3, #2
|
|
mul r2, r1, r3
|
|
ldr r3, [sp, #0x88]
|
|
add r3, r3, r2
|
|
strh r0, [r3]
|
|
; Line 868
|
|
b |$LN2@D_LPC_isf_@6|
|
|
|$LN1@D_LPC_isf_@6|
|
|
; Line 870
|
|
mov r2, #0x14
|
|
ldr r1, [sp, #0x88]
|
|
ldr r0, [sp, #0x88]
|
|
bl D_LPC_isf_isp_conversion
|
|
; Line 873
|
|
add sp, sp, #0x80
|
|
ldmia sp, {sp, pc}
|
|
|$LN55@D_LPC_isf_@6|
|
|
DCD |__imp___rt_sdiv|
|
|
|$M1705|
|
|
|
|
ENDP ; |D_LPC_isf_extrapolation|
|
|
|
|
END
|