1 #include "conf.h" 2 3 void change_video_tables(__attribute__ ((unused))int a, __attribute__ ((unused))int b) {} 4 5 void set_quality(int *x){ // -17 highest; +12 lowest 6 7 if (conf.video_mode) *x=12-((conf.video_quality-1)*(12+17)/(99-1)); 8 } 9 10 //** movie_record_task @ 0xFF96A0F8 11 12 void __attribute__((naked,noinline)) movie_record_task( ) { 13 asm volatile ( 14 " STMFD SP!, {R2-R10,LR} \n" 15 " LDR R6, =0xFF969628 \n" 16 " LDR R7, =0xFF969B20 \n" //This function was used to take values for set_quality --> 17 " LDR R4, =0x66F0 \n" 18 " LDR R9, =0x67F \n" 19 " LDR R10, =0x2710 \n" 20 " MOV R8, #1 \n" 21 " MOV R5, #0 \n" 22 "loc_FF96A118:\n" 23 " LDR R0, [R4, #0x24] \n" 24 " MOV R2, #0 \n" 25 " ADD R1, SP, #4 \n" 26 " BL sub_FF839BD8 \n" 27 " LDR R0, [R4, #0x2C] \n" 28 " CMP R0, #0 \n" 29 " LDRNE R0, [R4, #0xC] \n" 30 " CMPNE R0, #2 \n" 31 " LDRNE R0, [R4, #0x44] \n" 32 " CMPNE R0, #6 \n" 33 " BNE loc_FF96A23C \n" 34 " LDR R0, [SP, #4] \n" 35 " LDR R1, [R0] \n" 36 " SUB R1, R1, #2 \n" 37 " CMP R1, #0xB \n" 38 " ADDCC PC, PC, R1, LSL #2 \n" 39 " B loc_FF96A23C \n" 40 " B loc_FF96A1EC \n" 41 " B loc_FF96A210 \n" 42 " B loc_FF96A220 \n" 43 " B loc_FF96A228 \n" 44 " B loc_FF96A1F4 \n" 45 " B loc_FF96A230 \n" 46 " B loc_FF96A200 \n" 47 " B loc_FF96A23C \n" 48 " B loc_FF96A238 \n" 49 " B loc_FF96A1B8 \n" 50 " B loc_FF96A188 \n" 51 "loc_FF96A188:\n" 52 " STR R5, [R4, #0x40] \n" 53 " STR R5, [R4, #0x30] \n" 54 " STR R5, [R4, #0x34] \n" 55 " STRH R5, [R4, #6] \n" 56 " STR R6, [R4, #0xB4] \n" 57 " STR R7, [R4, #0xCC] \n" 58 " LDR R0, [R4, #0xC] \n" 59 " ADD R0, R0, #1 \n" 60 " STR R0, [R4, #0xC] \n" 61 " MOV R0, #6 \n" 62 " STR R0, [R4, #0x44] \n" 63 " B loc_FF96A1D8 \n" 64 "loc_FF96A1B8:\n" 65 " STR R5, [R4, #0x40] \n" 66 " STR R5, [R4, #0x30] \n" 67 " STR R6, [R4, #0xB4] \n" 68 " STR R7, [R4, #0xCC] \n" 69 " LDR R0, [R4, #0xC] \n" 70 " ADD R0, R0, #1 \n" 71 " STR R0, [R4, #0xC] \n" 72 " STR R8, [R4, #0x44] \n" 73 "loc_FF96A1D8:\n" 74 " LDR R2, =0xFF968E44 \n" 75 " LDR R1, =0xACA28 \n" 76 " LDR R0, =0xFF968F58 \n" 77 " BL sub_FF852C70 \n" 78 " B loc_FF96A23C \n" 79 "loc_FF96A1EC:\n" 80 " BL unlock_optical_zoom \n" //added 81 " BL sub_FF969780 \n" 82 " B loc_FF96A23C \n" 83 "loc_FF96A1F4:\n" 84 " LDR R1, [R4, #0xCC] \n" 85 " BLX R1 \n" 86 //begin patch 87 "LDR R0, =0x6774 \n" // added, 0x6768-0x4 taken from "loc_FF96A044" see commented function below. 88 "BL set_quality \n" // added 89 "BL mute_on_zoom\n" // added 90 //end patch 91 " B loc_FF96A23C \n" 92 "loc_FF96A200:\n" 93 " LDR R1, [R0, #0x18] \n" 94 " LDR R0, [R0, #4] \n" 95 " BL sub_FFAAD0AC \n" 96 " B loc_FF96A23C \n" 97 "loc_FF96A210:\n" 98 " LDR R0, [R4, #0x44] \n" 99 " CMP R0, #5 \n" 100 " STRNE R8, [R4, #0x34] \n" 101 " B loc_FF96A23C \n" 102 "loc_FF96A220:\n" 103 " BL sub_FF9692E8 \n" 104 " B loc_FF96A23C \n" 105 "loc_FF96A228:\n" 106 " BL sub_FF968FA4 \n" 107 " B loc_FF96A23C \n" 108 "loc_FF96A230:\n" 109 " BL sub_FF968DD0 \n" 110 " B loc_FF96A23C \n" 111 "loc_FF96A238:\n" 112 " BL sub_FF96A67C \n" 113 "loc_FF96A23C:\n" 114 " LDR R1, [SP, #4] \n" 115 " LDR R3, =0xFF968C18 \n" 116 " STR R5, [R1] \n" 117 " STR R9, [SP] \n" 118 " LDR R0, [R4, #0x28] \n" 119 " MOV R2, R10 \n" 120 " BL sub_FF83A550 \n" 121 " B loc_FF96A118 \n" 122 ); 123 } 124 125 //This function was used to take values for set_quality 126 //** sub_FF969B20_my @ 0xFF969B20 127 /* 128 void __attribute__((naked,noinline)) sub_FF969B20_my( ) { 129 asm volatile ( 130 " STMFD SP!, {R4-R11,LR} \n" 131 " SUB SP, SP, #0x64 \n" 132 " MOV R9, #0 \n" 133 " LDR R6, =0x66F0 \n" 134 " STR R9, [SP, #0x54] \n" 135 " STR R9, [SP, #0x4C] \n" 136 " STR R9, [R6, #0xB8] \n" 137 " STR R9, [R6, #0xBC] \n" 138 " STR R9, [R6, #0xC0] \n" 139 " MOV R4, R0 \n" 140 " STR R9, [R6, #0xC4] \n" 141 " LDR R0, [R6, #0x44] \n" 142 " MOV R11, #4 \n" 143 " CMP R0, #3 \n" 144 " STREQ R11, [R6, #0x44] \n" 145 " LDR R0, [R6, #0xB4] \n" 146 " MOV R8, R9 \n" 147 " MOV R5, #1 \n" 148 " MOV R7, R9 \n" 149 " BLX R0 \n" 150 " LDR R0, [R6, #0x44] \n" 151 " CMP R0, #6 \n" 152 " BEQ loc_FF969B90 \n" 153 " LDR R1, [R6, #0xC] \n" 154 " CMP R1, #2 \n" 155 " BNE loc_FF969BB8 \n" 156 " CMP R0, #5 \n" 157 " BEQ loc_FF969BC8 \n" 158 "loc_FF969B90:\n" 159 " LDR R2, =0xFF9699F4 \n" 160 " LDR R1, =0xFF969A58 \n" 161 " LDR R0, =0xFF969ABC \n" 162 " MOV R7, #1 \n" 163 " ADD R3, SP, #0x34 \n" 164 " BL sub_FF853A90 \n" 165 " LDR R0, [R6, #0x44] \n" 166 " CMP R0, #4 \n" 167 " MOVNE R5, #0 \n" 168 " B loc_FF969BD8 \n" 169 "loc_FF969BB8:\n" 170 " CMP R0, #4 \n" 171 " BEQ loc_FF969BD8 \n" 172 " CMP R1, #2 \n" 173 " BNE loc_FF969BD0 \n" 174 "loc_FF969BC8:\n" 175 " MOV R0, #0 \n" 176 " BL sub_FF853A9C \n" 177 "loc_FF969BD0:\n" 178 " ADD SP, SP, #0x64 \n" 179 " LDMFD SP!, {R4-R11,PC} \n" 180 "loc_FF969BD8:\n" 181 " LDRH R0, [R6, #6] \n" 182 " CMP R0, #3 \n" 183 " BNE loc_FF969BF8 \n" 184 " LDR R0, [R6, #0x6C] \n" 185 " LDR R1, [R6, #0xC8] \n" 186 " BL sub_FFB58D24 \n" 187 " CMP R1, #0 \n" 188 " MOVNE R5, #0 \n" 189 "loc_FF969BF8:\n" 190 " LDR R0, [R6, #0x44] \n" 191 " CMP R0, #6 \n" 192 " CMPNE R0, #1 \n" 193 " CMPNE R0, #3 \n" 194 " BNE loc_FF969C3C \n" 195 " CMP R7, #1 \n" 196 " CMPEQ R5, #0 \n" 197 " BNE loc_FF969C3C \n" 198 " BL sub_FF853A94 \n" 199 " LDR R0, [R6, #0x18] \n" 200 " MOV R1, #0x3E8 \n" 201 " BL sub_FF839FF4 \n" 202 " CMP R0, #9 \n" 203 " BNE loc_FF96A074 \n" 204 " MOV R0, #0x90000 \n" 205 " BL sub_FF892114 \n" 206 " B loc_FF969BD0 \n" 207 "loc_FF969C3C:\n" 208 " CMP R5, #1 \n" 209 " MOV R10, #1 \n" 210 " BNE loc_FF969C64 \n" 211 " ADD R3, SP, #0x4C \n" 212 " ADD R2, SP, #0x50 \n" 213 " ADD R1, SP, #0x54 \n" 214 " ADD R0, SP, #0x58 \n" 215 " BL sub_FFAAD16C \n" 216 " MOVS R9, R0 \n" 217 " BNE loc_FF969C80 \n" 218 "loc_FF969C64:\n" 219 " LDR R0, [R6, #0x34] \n" 220 " CMP R0, #1 \n" 221 " BNE loc_FF969DF0 \n" 222 " LDR R0, [R6, #0x6C] \n" 223 " LDR R1, [R6, #0x48] \n" 224 " CMP R0, R1 \n" 225 " BCC loc_FF969DF0 \n" 226 "loc_FF969C80:\n" 227 " CMP R9, #0x80000001 \n" 228 " STREQ R11, [R6, #0x70] \n" 229 " BEQ loc_FF969CB8 \n" 230 " CMP R9, #0x80000003 \n" 231 " STREQ R10, [R6, #0x70] \n" 232 " BEQ loc_FF969CB8 \n" 233 " CMP R9, #0x80000005 \n" 234 " MOVEQ R0, #2 \n" 235 " BEQ loc_FF969CB4 \n" 236 " CMP R9, #0x80000007 \n" 237 " STRNE R8, [R6, #0x70] \n" 238 " BNE loc_FF969CB8 \n" 239 " MOV R0, #3 \n" 240 "loc_FF969CB4:\n" 241 " STR R0, [R6, #0x70] \n" 242 "loc_FF969CB8:\n" 243 " LDR R0, [R6, #0xC] \n" 244 " CMP R0, #2 \n" 245 " BNE loc_FF969D20 \n" 246 " LDR R0, =0xFF9699E8 \n" 247 " MOV R1, #0 \n" 248 " BL sub_FFA68EA0 \n" 249 " LDR R2, [R6, #0x64] \n" 250 " ADD R3, SP, #0x5C \n" 251 " STRD R2, [SP, #0x28] \n" 252 " MOV R2, #0x18 \n" 253 " ADD R1, SP, #0x34 \n" 254 " ADD R0, SP, #0x10 \n" 255 " BL sub_FFB58A08 \n" 256 " LDR R1, [R6, #0x84] \n" 257 " LDR R2, [R6, #0x88] \n" 258 " MVN R3, #1 \n" 259 " ADD R0, SP, #0x60 \n" 260 " STMEA SP, {R0-R3} \n" 261 " MOV R3, #0 \n" 262 " LDR R0, =0xACA74 \n" 263 " MOV R2, R3 \n" 264 " MOV R1, #0x40 \n" 265 " BL sub_FFA68DEC \n" 266 " B loc_FF969D78 \n" 267 "loc_FF969D18:\n" 268 " MOV R1, #1 \n" 269 " B loc_FF96A004 \n" 270 "loc_FF969D20:\n" 271 " BL sub_FF96A74C \n" 272 " LDR R2, [R6, #0x64] \n" 273 " ADD R3, SP, #0x5C \n" 274 " MVN R1, #1 \n" 275 " MOV R0, #0 \n" 276 " ADD R5, SP, #0x1C \n" 277 " STMIA R5, {R0-R3} \n" 278 " LDR R3, [R4, #0x1C] \n" 279 " LDR R1, [R6, #0x84] \n" 280 " LDR R2, [R6, #0x88] \n" 281 " ADD R0, SP, #0x60 \n" 282 " ADD R4, SP, #0xC \n" 283 " STMIA R4, {R0-R3} \n" 284 " MOV R3, #0 \n" 285 " MOV R1, #0x40 \n" 286 " STMEA SP, {R1,R3} \n" 287 " MOV R2, #0 \n" 288 " STR R3, [SP, #8] \n" 289 " LDR R3, =0xACA74 \n" 290 " MOV R1, R2 \n" 291 " MOV R0, R2 \n" 292 " BL sub_FFA67AF8 \n" 293 "loc_FF969D78:\n" 294 " LDR R0, [R6, #0x18] \n" 295 " LDR R1, [R6, #0x60] \n" 296 " BL sub_FF839FF4 \n" 297 " CMP R0, #9 \n" 298 " BEQ loc_FF969D18 \n" 299 " LDR R0, [SP, #0x5C] \n" 300 " CMP R0, #0 \n" 301 " BEQ loc_FF969DA0 \n" 302 "loc_FF969D98:\n" 303 " MOV R1, #1 \n" 304 " B loc_FF96A01C \n" 305 "loc_FF969DA0:\n" 306 " LDR R0, [R6, #0xC] \n" 307 " MOV R4, #5 \n" 308 " CMP R0, #2 \n" 309 " MOV R0, #1 \n" 310 " BNE loc_FF969DDC \n" 311 " BL sub_FFA68E60 \n" 312 " BL sub_FFA68E88 \n" 313 " MOV R0, #0 \n" 314 " BL sub_FF853A9C \n" 315 " BL sub_FF853AAC \n" 316 " STR R4, [R6, #0x44] \n" 317 " BL sub_FF96A74C \n" 318 " BL sub_FF853B08 \n" 319 " STR R10, [R6, #0x44] \n" 320 " B loc_FF969DE8 \n" 321 "loc_FF969DDC:\n" 322 " BL sub_FFA67BA8 \n" 323 " BL sub_FFA67BF4 \n" 324 " STR R4, [R6, #0x44] \n" 325 "loc_FF969DE8:\n" 326 " STR R8, [R6, #0x34] \n" 327 " B loc_FF969BD0 \n" 328 "loc_FF969DF0:\n" 329 " CMP R5, #1 \n" 330 " BNE loc_FF96A06C \n" 331 " STR R10, [R6, #0x38] \n" 332 " LDR R0, [R6, #0x6C] \n" 333 " LDR R11, [R4, #0xC] \n" 334 " CMP R0, #0 \n" 335 " LDRNE R9, [SP, #0x58] \n" 336 " LDRNE R10, [SP, #0x54] \n" 337 " BNE loc_FF969F3C \n" 338 " LDR R0, [R6, #0xC] \n" 339 " CMP R0, #2 \n" 340 " BNE loc_FF969E94 \n" 341 " LDR R0, =0xFF9699E8 \n" 342 " MOV R1, #0 \n" 343 " BL sub_FFA68EA0 \n" 344 " LDR R2, [R6, #0x64] \n" 345 " ADD R3, SP, #0x5C \n" 346 " STRD R2, [SP, #0x28] \n" 347 " MOV R2, #0x18 \n" 348 " ADD R1, SP, #0x34 \n" 349 " ADD R0, SP, #0x10 \n" 350 " BL sub_FFB58A08 \n" 351 " LDR R1, [R6, #0x84] \n" 352 " LDR R2, [R6, #0x88] \n" 353 " MVN R3, #0 \n" 354 " ADD R0, SP, #0x60 \n" 355 " STMEA SP, {R0-R3} \n" 356 " LDR R0, [SP, #0x58] \n" 357 " LDR R1, [SP, #0x54] \n" 358 " LDR R2, [SP, #0x50] \n" 359 " LDR R3, [SP, #0x4C] \n" 360 " BL sub_FFA68DEC \n" 361 " LDR R0, [R6, #0x18] \n" 362 " LDR R1, [R6, #0x60] \n" 363 " BL sub_FF839FF4 \n" 364 " CMP R0, #9 \n" 365 " BEQ loc_FF969D18 \n" 366 " LDR R0, =0xFF969704 \n" 367 " MOV R1, #0 \n" 368 " BL sub_FFA68EA0 \n" 369 " B loc_FF969EFC \n" 370 "loc_FF969E94:\n" 371 " LDR R0, [R4, #0x20] \n" 372 " LDR R2, [R6, #0x64] \n" 373 " ADD R3, SP, #0x5C \n" 374 " MVN R1, #0 \n" 375 " ADD R9, SP, #0x1C \n" 376 " STMIA R9, {R0-R3} \n" 377 " LDR R3, [R4, #0x1C] \n" 378 " LDR R1, [R6, #0x84] \n" 379 " LDR R2, [R6, #0x88] \n" 380 " ADD R0, SP, #0x60 \n" 381 " ADD R9, SP, #0xC \n" 382 " STMIA R9, {R0-R3} \n" 383 " LDR R1, [SP, #0x50] \n" 384 " LDR R2, [SP, #0x54] \n" 385 " LDR R3, [SP, #0x4C] \n" 386 " STMFA SP, {R1,R3} \n" 387 " STR R2, [SP] \n" 388 " LDMIB R4, {R0,R1} \n" 389 " LDR R3, [SP, #0x58] \n" 390 " MOV R2, R11 \n" 391 " BL sub_FFA67AF8 \n" 392 " LDR R0, [R6, #0x18] \n" 393 " LDR R1, [R6, #0x60] \n" 394 " BL sub_FF839FF4 \n" 395 " CMP R0, #9 \n" 396 " BEQ loc_FF969D18 \n" 397 "loc_FF969EFC:\n" 398 " LDR R0, [SP, #0x5C] \n" 399 " CMP R0, #0 \n" 400 " BNE loc_FF969D98 \n" 401 " LDR R0, [R6, #0xC] \n" 402 " CMP R0, #2 \n" 403 " MOV R0, #1 \n" 404 " BNE loc_FF969F20 \n" 405 " BL sub_FFA68E60 \n" 406 " B loc_FF969F24 \n" 407 "loc_FF969F20:\n" 408 " BL sub_FFA67BA8 \n" 409 "loc_FF969F24:\n" 410 " STR R8, [R6, #0xC4] \n" 411 " LDR R0, [SP, #0x60] \n" 412 " LDR R1, [SP, #0x58] \n" 413 " ADD R9, R1, R0 \n" 414 " LDR R1, [SP, #0x54] \n" 415 " SUB R10, R1, R0 \n" 416 "loc_FF969F3C:\n" 417 " LDR R0, [R6, #0xC] \n" 418 " LDR R2, [R6, #0x64] \n" 419 " CMP R0, #2 \n" 420 " ADD R3, SP, #0x5C \n" 421 " BNE loc_FF969F94 \n" 422 " STRD R2, [SP, #0x28] \n" 423 " MOV R2, #0x18 \n" 424 " ADD R1, SP, #0x34 \n" 425 " ADD R0, SP, #0x10 \n" 426 " BL sub_FFB58A08 \n" 427 " LDR R1, [R6, #0x84] \n" 428 " LDR R2, [R6, #0x88] \n" 429 " LDR R3, [R6, #0x68] \n" 430 " ADD R0, SP, #0x60 \n" 431 " STMEA SP, {R0-R3} \n" 432 " LDR R2, [SP, #0x50] \n" 433 " LDR R3, [SP, #0x4C] \n" 434 " MOV R1, R10 \n" 435 " MOV R0, R9 \n" 436 " BL sub_FFA68DEC \n" 437 " BL sub_FF853A94 \n" 438 " B loc_FF969FEC \n" 439 "loc_FF969F94:\n" 440 " LDR R1, [R6, #0x68] \n" 441 " LDR R0, [R4, #0x20] \n" 442 " STR R1, [SP, #0x20] \n" 443 " STR R0, [SP, #0x1C] \n" 444 " STR R2, [SP, #0x24] \n" 445 " STR R3, [SP, #0x28] \n" 446 " LDR R3, [R4, #0x1C] \n" 447 " LDR R1, [R6, #0x84] \n" 448 " LDR R2, [R6, #0x88] \n" 449 " ADD R0, SP, #0x60 \n" 450 " STR R2, [SP, #0x14] \n" 451 " LDR R2, [SP, #0x50] \n" 452 " STR R1, [SP, #0x10] \n" 453 " STR R3, [SP, #0x18] \n" 454 " LDR R3, [SP, #0x4C] \n" 455 " STR R0, [SP, #0xC] \n" 456 " STMFA SP, {R2,R3} \n" 457 " STR R10, [SP] \n" 458 " LDMIB R4, {R0,R1} \n" 459 " MOV R3, R9 \n" 460 " MOV R2, R11 \n" 461 " BL sub_FFA67AF8 \n" 462 "loc_FF969FEC:\n" 463 " LDR R0, [R6, #0x18] \n" 464 " LDR R1, [R6, #0x60] \n" 465 " BL sub_FF839FF4 \n" 466 " CMP R0, #9 \n" 467 " BNE loc_FF96A00C \n" 468 " MOV R1, #0 \n" 469 "loc_FF96A004:\n" 470 " MOV R0, #0x90000 \n" 471 " B loc_FF96A020 \n" 472 "loc_FF96A00C:\n" 473 " LDR R0, [SP, #0x5C] \n" 474 " CMP R0, #0 \n" 475 " BEQ loc_FF96A028 \n" 476 " MOV R1, #0 \n" 477 "loc_FF96A01C:\n" 478 " MOV R0, #0xA0000 \n" 479 "loc_FF96A020:\n" 480 " BL sub_FF969988 \n" 481 " B loc_FF969BD0 \n" 482 "loc_FF96A028:\n" 483 " LDR R0, [R6, #0xC] \n" 484 " CMP R0, #2 \n" 485 " MOV R0, #0 \n" 486 " BNE loc_FF96A040 \n" 487 " BL sub_FFA68E60 \n" 488 " B loc_FF96A044 \n" 489 "loc_FF96A040:\n" 490 " BL sub_FFA67BA8 \n" 491 "loc_FF96A044:\n" 492 " LDR R0, [SP, #0x58] \n" 493 " LDR R1, [SP, #0x60] \n" 494 " BL sub_FFAAD390 \n" 495 " LDR R0, [R6, #0x68] \n" 496 " LDR R3, =0x6778 \n" // <- 0x6778 497 " ADD R1, R0, #1 \n" 498 " STR R1, [R6, #0x68] \n" 499 " LDR R0, [SP, #0x60] \n" 500 " SUB R2, R3, #4 \n" // <- -4 501 " BL sub_FFAAB164 \n" 502 //PATCH BEGIN 503 "LDR R0, =0x6774\n" 504 "BL set_quality\n" 505 //PATCH END 506 "loc_FF96A06C:\n" 507 " CMP R7, #1 \n" 508 " BNE loc_FF96A080 \n" 509 "loc_FF96A074:\n" 510 " BL sub_FF853A98 \n" 511 " MOV R0, #1 \n" 512 " BL sub_FF853A9C \n" 513 "loc_FF96A080:\n" 514 " CMP R5, #1 \n" 515 " LDRNEH R0, [R6, #6] \n" 516 " CMPNE R0, #3 \n" 517 " BNE loc_FF969BD0 \n" 518 " LDR R0, [R6, #0x6C] \n" 519 " ADD R0, R0, #1 \n" 520 " STR R0, [R6, #0x6C] \n" 521 " LDRH R1, [R6, #6] \n" 522 " CMP R1, #3 \n" 523 " LDRNE R1, [R6, #0x54] \n" 524 " LDREQ R1, =0x3E9 \n" 525 " MUL R0, R1, R0 \n" 526 " LDRNE R1, [R6, #0x50] \n" 527 " LDREQ R1, =0x1770 \n" 528 " BL sub_FFB58D24 \n" 529 " MOV R4, R0 \n" 530 " BL sub_FFAAD718 \n" 531 " LDR R0, [R6, #0x8C] \n" 532 " CMP R0, R4 \n" 533 " BNE loc_FF96A0DC \n" 534 " LDR R0, [R6, #0x3C] \n" 535 " CMP R0, #1 \n" 536 " BNE loc_FF96A0F0 \n" 537 "loc_FF96A0DC:\n" 538 " LDR R1, [R6, #0x98] \n" 539 " MOV R0, R4 \n" 540 " BLX R1 \n" 541 " STR R4, [R6, #0x8C] \n" 542 " STR R8, [R6, #0x3C] \n" 543 "loc_FF96A0F0:\n" 544 " STR R8, [R6, #0x38] \n" 545 " B loc_FF969BD0 \n" 546 ); 547 }