This source file includes following definitions.
- change_video_tables
- movie_record_task
- sub_FFD1D7A8_my
- sub_FFD1F044_my
- sub_FFD1E3C8_my
- sub_FFD1D2E0_my
- sub_FFD1E6BC_my
1 #include "conf.h"
2
3 int *video_quality = &conf.video_quality;
4 int *video_mode = &conf.video_mode;
5
6 long def_table1[9]={0x2000,0x38D,0x788,0x5800,0x9C5,0x14B8,0x10000,0x1C6A,0x3C45};
7 long def_table2[9]={0x1CCD,-0x2E1,-0x579,0x4F33,-0x7EB,-0xF0C,0xE666,-0x170A,-0x2BC6};
8
9 long table1[9], table2[9];
10
11 void change_video_tables(int a, int b){
12 int i;
13 for (i=0;i<9;i++) {table1[i]=(def_table1[i]*a)/b; table2[i]=(def_table2[i]*a)/b;}
14 }
15
16 long CompressionRateTable[]={0x60, 0x5D, 0x5A, 0x57, 0x54, 0x51, 0x4D, 0x48, 0x42, 0x3B, 0x32, 0x29, 0x22, 0x1D, 0x17, 0x14, 0x10, 0xE, 0xB, 9, 7, 6, 5, 4, 3, 2, 1};
17
18
19 void __attribute__((naked,noinline)) movie_record_task(){
20 asm volatile(
21 " STMFD SP!, {R4,LR}\n"
22 " SUB SP, SP, #4\n"
23 " MOV R4, SP\n"
24 " B loc_FFD1D02C\n"
25 " loc_FFD1CF7C:\n"
26 " LDR R3, =0x73EB8\n"
27 " LDR R2, [R3]\n"
28 " CMP R2, #0\n"
29 " BNE loc_FFD1D018\n"
30 " SUB R3, R12, #1\n"
31 " CMP R3, #0xA\n"
32 " LDRLS PC, [PC,R3,LSL#2]\n"
33 " B loc_FFD1D018\n"
34 " .long loc_FFD1CFC8\n"
35 " .long loc_FFD1CFD0\n"
36 " .long loc_FFD1CFE8\n"
37 " .long loc_FFD1CFF0\n"
38 " .long loc_FFD1CFF8\n"
39 " .long loc_FFD1CFD8\n"
40 " .long loc_FFD1D000\n"
41 " .long loc_FFD1CFE0\n"
42 " .long loc_FFD1D018\n"
43 " .long loc_FFD1D010\n"
44 " .long loc_FFD1D008\n"
45 " loc_FFD1CFC8:\n"
46 " BL sub_FFD1D0AC\n"
47 " B loc_FFD1D014\n"
48 " loc_FFD1CFD0:\n"
49 " BL unlock_optical_zoom\n"
50 " BL sub_FFD1D2E0_my\n"
51 " B loc_FFD1D014\n"
52 " loc_FFD1CFD8:\n"
53 " BL sub_FFD1D7A8_my\n"
54 " B loc_FFD1D014\n"
55 " loc_FFD1CFE0:\n"
56 " BL sub_FFD1DC94\n"
57 " B loc_FFD1D014\n"
58 " loc_FFD1CFE8:\n"
59 " BL sub_FFD1DA7C\n"
60 " B loc_FFD1D014\n"
61 " loc_FFD1CFF0:\n"
62 " BL sub_FFD1DEA0\n"
63 " B loc_FFD1D014\n"
64 " loc_FFD1CFF8:\n"
65 " BL sub_FFD1E064\n"
66 " B loc_FFD1D014\n"
67 " loc_FFD1D000:\n"
68 " BL sub_FFD1DD54\n"
69 " B loc_FFD1D014\n"
70 " loc_FFD1D008:\n"
71 " BL sub_FFD1DE34\n"
72 " B loc_FFD1D014\n"
73 " loc_FFD1D010:\n"
74 " BL sub_FFD1DACC\n"
75 " loc_FFD1D014:\n"
76 " LDR R1, [SP]\n"
77 " loc_FFD1D018:\n"
78 " LDR R3, =0x73DE8\n"
79 " MOV R2, #0\n"
80 " STR R2, [R1]\n"
81 " LDR R0, [R3]\n"
82 " BL sub_ffc113ac\n"
83 " loc_FFD1D02C:\n"
84 " LDR R3, =0x73DE4\n"
85 " MOV R1, R4\n"
86 " LDR R0, [R3]\n"
87 " MOV R2, #0\n"
88 " BL sub_ffc10f94\n"
89 " LDR R0, [SP]\n"
90 " LDR R12, [R0]\n"
91 " CMP R12, #0xC\n"
92 " MOV R1, R0\n"
93 " BNE loc_FFD1CF7C\n"
94 " LDR R3, =0x73DDC\n"
95 " LDR R0, [R3]\n"
96 " BL sub_ffc11d68\n"
97 " BL sub_ffc12724\n"
98 " ADD SP, SP, #4\n"
99 " LDMFD SP!, {R4,PC}\n"
100 );
101 }
102
103 void __attribute__((naked,noinline)) sub_FFD1D7A8_my(){
104 asm volatile(
105 " STMFD SP!, {R4-R11,LR}\n"
106 " LDR R5, =0x73ED4\n"
107 " SUB SP, SP, #0x34\n"
108 " LDR R3, [R5]\n"
109 " CMP R3, #3\n"
110 " MOV R4, R0\n"
111 " MOVEQ R3, #4\n"
112 " STREQ R3, [R5]\n"
113 " LDR R3, =0x73F7C\n"
114 " MOV LR, PC\n"
115 " LDR PC, [R3]\n"
116 " LDR R2, [R5]\n"
117 " CMP R2, #4\n"
118 " BNE loc_FFD1D9A4\n"
119 " ADD R0, SP, #0x58-0x28\n"
120 " ADD R1, SP, #0x58-0x2C\n"
121 " ADD R2, SP, #0x58-0x30\n"
122 " ADD R3, SP, #0x58-0x34\n"
123 " BL sub_FFD1F044_my\n"
124 " CMP R0, #0\n"
125 " BNE loc_FFD1D824\n"
126 " LDR R3, =0x73EC0\n"
127 " LDR R2, [R3]\n"
128 " CMP R2, #1\n"
129 " BNE loc_FFD1D838\n"
130 " LDR R2, =0x73F10\n"
131 " LDR R1, =0x73EE8\n"
132 " LDR R12, [R2]\n"
133 " LDR R3, [R1]\n"
134 " CMP R12, R3\n"
135 " BCC loc_FFD1D838\n"
136 " loc_FFD1D824:\n"
137 " BL sub_FFD1D9F4\n"
138 " BL sub_FFD1DC28\n"
139 " MOV R3, #5\n"
140 " STR R3, [R5]\n"
141 " B loc_FFD1D9A4\n"
142 " loc_FFD1D838:\n"
143 " LDR R12, =0x73F18\n"
144 " LDR R11, =0x73F24\n"
145 " LDMIB R4, {R0-R2}\n"
146 " LDR R10, [R12]\n"
147 " LDR R7, [R11]\n"
148 " LDR R4, [SP,#0x58-0x2C]\n"
149 " LDR R5, [SP,#0x58-0x30]\n"
150 " LDR R6, [SP,#0x58-0x34]\n"
151 " LDR R8, =0x73EC4\n"
152 " ADD R12, SP, #0x58-0x38\n"
153 " ADD LR, SP, #0x58-0x3C\n"
154 " MOV R9, #1\n"
155 " LDR R3, [SP,#0x58-0x28]\n"
156 " STMEA SP, {R4-R6,R12}\n"
157 " STR R10, [SP,#0x58-0x48]\n"
158 " STR R7, [SP,#0x58-0x44]\n"
159 " STR LR, [SP,#0x58-0x40]\n"
160 " STR R9, [R8]\n"
161 " BL sub_FFC82338\n"
162 " LDR R3, =0x73DDC\n"
163 " MOV R1, #0x3E8\n"
164 " LDR R0, [R3]\n"
165 " BL sub_ffc11b80\n"
166 " CMP R0, #9\n"
167 " BNE loc_FFD1D8AC\n"
168 " BL sub_FFD1F794\n"
169 " LDR R3, =0x73ED4\n"
170 " LDR R0, =0xffd1d790\n"
171 " B loc_FFD1D8C4\n"
172 " loc_FFD1D8AC:\n"
173 " LDR R6, [SP,#0x58-0x3C]\n"
174 " CMP R6, #0\n"
175 " BEQ loc_FFD1D8D0\n"
176 " BL sub_FFD1F794\n"
177 " LDR R3, =0x73ED4\n"
178 " LDR R0, =0xffd1d79c\n"
179 " loc_FFD1D8C4:\n"
180 " STR R9, [R3]\n"
181 " BL sub_FFD31890\n"
182 " B loc_FFD1D9A4\n"
183 " loc_FFD1D8D0:\n"
184 " BL sub_FFC824AC\n"
185 " LDR R7, =0x73F10\n"
186 " LDR R0, [SP,#0x58-0x28]\n"
187 " LDR R1, [SP,#0x58-0x38]\n"
188 " BL sub_FFD1F4B8\n"
189 " LDR R3, [R7]\n"
190 " LDR R8, =0x73EFC\n"
191 " ADD R3, R3, #1\n"
192 " LDR R1, [R8]\n"
193 " MOV R0, R3\n"
194 " STR R3, [R7]\n"
195 " BL sub_ffe68858\n"
196 " CMP R0, #0\n"
197 " BNE loc_FFD1D944\n"
198 " LDR R4, =0x73F90\n"
199 " LDR R3, [R4]\n"
200 " LDR R2, =0x73ED8\n"
201 " LDR R5, =0x73F88\n"
202 " AND R3, R3, #1\n"
203 " LDR R0, [R5,R3,LSL#2]\n"
204 " LDR R1, [R2]\n"
205 " BL sub_FFD1EF5C\n"
206 " LDR R0, [R4]\n"
207 " AND R0, R0, #1\n"
208 " ADD R0, R5, R0,LSL#2\n"
209 " BL sub_FFD1EF08\n"
210 " LDR R3, [R4]\n"
211 " ADD R3, R3, #1\n"
212 " STR R3, [R4]\n"
213 " loc_FFD1D944:\n"
214 " LDR R0, [SP,#0x58-0x38]\n"
215 " MOV R1, R11\n"
216 " MOV R2, R6\n"
217 " BL sub_FFD1E3C8_my\n"
218 " LDR R4, [R7]\n"
219 " LDR R1, [R8]\n"
220 " MOV R0, R4\n"
221 " BL sub_ffe68858\n"
222 " CMP R0, #0\n"
223 " BEQ loc_FFD1D980\n"
224 " LDR R5, =0x73EC8\n"
225 " LDR R3, [R5]\n"
226 " CMP R3, #1\n"
227 " BNE loc_FFD1D998\n"
228 " B loc_FFD1D984\n"
229 " loc_FFD1D980:\n"
230 " LDR R5, =0x73EC8\n"
231 " loc_FFD1D984:\n"
232 " MOV R0, R4\n"
233 " LDR R3, =0x73F58\n"
234 " MOV LR, PC\n"
235 " LDR PC, [R3]\n"
236 " STR R6, [R5]\n"
237 " loc_FFD1D998:\n"
238 " LDR R2, =0x73EC4\n"
239 " MOV R3, #0\n"
240 " STR R3, [R2]\n"
241 " loc_FFD1D9A4:\n"
242 " ADD SP, SP, #0x34\n"
243 " LDMFD SP!, {R4-R11,PC}\n"
244 );
245 }
246
247 void __attribute__((naked,noinline)) sub_FFD1F044_my(){
248 asm volatile(
249 " STMFD SP!, {R4-R11,LR}\n"
250 " LDR R5, =0x74234\n"
251 " SUB SP, SP, #0x14\n"
252 " LDR LR, [R5]\n"
253 " LDR R12, =0x7424C\n"
254 " ADD LR, LR, #1\n"
255 " LDR R4, [R12]\n"
256 " STR LR, [R5]\n"
257 " LDR R12, =0x742C8\n"
258 " STR R0, [SP,#0x38-0x28]\n"
259 " STR R1, [SP,#0x38-0x2C]\n"
260 " STR R2, [SP,#0x38-0x30]\n"
261 " STR R3, [SP,#0x38-0x34]\n"
262 " CMP LR, R4\n"
263 " LDR R11, [R12]\n"
264 " MOVHI R0, #0x80000001\n"
265 " BHI loc_FFD1F46C\n"
266 " LDR R3, =0x742B0\n"
267 " MOV R0, LR\n"
268 " LDR R1, [R3]\n"
269 " BL sub_ffe68858\n"
270 " CMP R0, #1\n"
271 " BNE loc_FFD1F264\n"
272 " LDR R0, =0x742D0\n"
273 " LDR R1, =0x74220\n"
274 " LDR R3, [R0]\n"
275 " LDR R2, [R1]\n"
276 " CMP R3, R2\n"
277 " LDREQ R3, =0x742CC\n"
278 " LDREQ R5, [R3]\n"
279 " MOVNE R5, R2\n"
280 " LDR R3, =0x74234\n"
281 " LDR R2, =0x742B0\n"
282 " LDR R0, [R3]\n"
283 " LDR R1, [R2]\n"
284 " BL sub_ffe681c8\n"
285 " LDR R3, =0x74228\n"
286 " ADD R0, R0, #1\n"
287 " AND R0, R0, #1\n"
288 " STR R5, [R3,R0,LSL#2]\n"
289 " LDR R3, =0x7421C\n"
290 " LDR R2, [R3]\n"
291 " CMP R5, R2\n"
292 " BHI loc_FFD1F114\n"
293 " LDR R4, =0x7426C\n"
294 " LDR R3, [R4]\n"
295 " ADD R3, R5, R3\n"
296 " ADD R3, R3, #8\n"
297 " CMP R2, R3\n"
298 " BCS loc_FFD1F118\n"
299 " loc_FFD1F10C:\n"
300 " MOV R0, #0x80000003\n"
301 " B loc_FFD1F46C\n"
302 " loc_FFD1F114:\n"
303 " LDR R4, =0x7426C\n"
304 " loc_FFD1F118:\n"
305 " LDR R3, [R4]\n"
306 " LDR R2, =0x742D0\n"
307 " ADD R1, R5, R3\n"
308 " LDR R3, [R2]\n"
309 " ADD R2, R1, #8\n"
310 " CMP R2, R3\n"
311 " BLS loc_FFD1F164\n"
312 " LDR R2, =0x742CC\n"
313 " LDR R0, =0x7421C\n"
314 " RSB R3, R3, R1\n"
315 " LDR R1, [R2]\n"
316 " ADD R3, R3, #8\n"
317 " LDR R2, [R0]\n"
318 " ADD R1, R1, R3\n"
319 " CMP R2, R1\n"
320 " BCC loc_FFD1F10C\n"
321 " LDR R3, =0x74220\n"
322 " STR R1, [R3]\n"
323 " B loc_FFD1F16C\n"
324 " loc_FFD1F164:\n"
325 " LDR R3, =0x74220\n"
326 " STR R2, [R3]\n"
327 " loc_FFD1F16C:\n"
328 " LDR R3, [R4]\n"
329 " LDR R12, =0x74280\n"
330 " ADD R3, R3, #0x18\n"
331 " LDR R2, [R12,#4]\n"
332 " MOV R0, R3\n"
333 " MOV R1, #0\n"
334 " CMP R1, R2\n"
335 " BHI loc_FFD1F3B0\n"
336 " BNE loc_FFD1F19C\n"
337 " LDR R3, [R12]\n"
338 " CMP R0, R3\n"
339 " BHI loc_FFD1F3B0\n"
340 " loc_FFD1F19C:\n"
341 " LDR R4, [R4]\n"
342 " LDR LR, =0x74288\n"
343 " STR R4, [SP,#0x38-0x38]\n"
344 " LDR R12, =0x74280\n"
345 " LDR R3, =0x74234\n"
346 " LDMIA LR, {R7,R8}\n"
347 " LDMIA R12, {R5,R6}\n"
348 " LDR R10, [R3]\n"
349 " LDR R2, =0x742B0\n"
350 " MOV R3, R4\n"
351 " MOV R4, #0\n"
352 " ADDS R7, R7, R3\n"
353 " ADC R8, R8, R4\n"
354 " LDR R9, [R2]\n"
355 " SUBS R5, R5, R3\n"
356 " SBC R6, R6, R4\n"
357 " MVN R2, #0x0\n"
358 " MVN R1, #0x17\n"
359 " ADDS R5, R5, R1\n"
360 " MOV R4, #0\n"
361 " MOV R3, #0x18\n"
362 " ADC R6, R6, R2\n"
363 " ADDS R7, R7, R3\n"
364 " ADC R8, R8, R4\n"
365 " STMIA R12, {R5,R6}\n"
366 " SUB R0, R10, #1\n"
367 " MOV R1, R9\n"
368 " STMIA LR, {R7,R8}\n"
369 " BL sub_ffe681c8\n"
370 " CMP R10, #1\n"
371 " MLA R0, R9, R0, R0\n"
372 " BEQ loc_FFD1F264\n"
373 " SUB R3, R0, #1\n"
374 " MOV R3, R3,LSL#4\n"
375 " ADD R4, R11, #0x10\n"
376 " ADD R5, R11, #0x14\n"
377 " LDR R1, [R5,R3]\n"
378 " LDR R2, [R4,R3]\n"
379 " LDR LR, =0x62773130\n"
380 " ADD R2, R2, R1\n"
381 " MOV R3, R0,LSL#4\n"
382 " ADD R2, R2, #8\n"
383 " MOV R0, #0\n"
384 " ADD R12, R11, #0xC\n"
385 " ADD R1, R11, #8\n"
386 " STR LR, [R1,R3]\n"
387 " STR R0, [R12,R3]\n"
388 " STR R2, [R4,R3]\n"
389 " LDR R0, [SP,#0x38-0x38]\n"
390 " STR R0, [R5,R3]\n"
391 " loc_FFD1F264:\n"
392 " LDR R2, =0x74220\n"
393 " LDR R3, =0x742D0\n"
394 " LDR R1, [R2]\n"
395 " LDR R0, [R3]\n"
396 " ADD R3, R1, #9\n"
397 " CMP R3, R0\n"
398 " BLS loc_FFD1F2A0\n"
399 " LDR R2, =0x742CC\n"
400 " LDR R3, [R2]\n"
401 " ADD R3, R3, R1\n"
402 " RSB R3, R0, R3\n"
403 " LDR R0, [SP,#0x38-0x28]\n"
404 " ADD R3, R3, #8\n"
405 " STR R3, [R0]\n"
406 " B loc_FFD1F2AC\n"
407 " loc_FFD1F2A0:\n"
408 " ADD R3, R1, #8\n"
409 " LDR R1, [SP,#0x38-0x28]\n"
410 " STR R3, [R1]\n"
411 " loc_FFD1F2AC:\n"
412 " LDR R2, [SP,#0x38-0x28]\n"
413 " LDR R1, =0x7427C\n"
414 " LDR R3, =0x742D0\n"
415 " LDR R12, [R2]\n"
416 " LDR R2, [R1]\n"
417 " LDR R0, [R3]\n"
418 " ADD R3, R12, R2\n"
419 " CMP R3, R0\n"
420 " BLS loc_FFD1F300\n"
421 " LDR R2, [SP,#0x38-0x2C]\n"
422 " RSB R0, R12, R0\n"
423 " STR R0, [R2]\n"
424 " LDR R2, =0x742CC\n"
425 " LDR R3, [R1]\n"
426 " LDR R1, [R2]\n"
427 " RSB R3, R0, R3\n"
428 " LDR R0, [SP,#0x38-0x30]\n"
429 " STR R1, [R0]\n"
430 " LDR R1, [SP,#0x38-0x34]\n"
431 " STR R3, [R1]\n"
432 " B loc_FFD1F31C\n"
433 " loc_FFD1F300:\n"
434 " LDR R0, [SP,#0x38-0x2C]\n"
435 " STR R2, [R0]\n"
436 " LDR R1, [SP,#0x38-0x34]\n"
437 " MOV R3, #0\n"
438 " STR R3, [R1]\n"
439 " LDR R2, [SP,#0x38-0x30]\n"
440 " STR R3, [R2]\n"
441 " loc_FFD1F31C:\n"
442 " LDR R0, =0x74220\n"
443 " LDR R1, =0x7421C\n"
444 " LDR R3, [R0]\n"
445 " LDR R2, [R1]\n"
446 " CMP R3, R2\n"
447 " BHI loc_FFD1F348\n"
448 " LDR R0, [SP,#0x38-0x2C]\n"
449 " LDR R3, [R0]\n"
450 " ADD R3, R12, R3\n"
451 " CMP R2, R3\n"
452 " BCC loc_FFD1F10C\n"
453 " loc_FFD1F348:\n"
454 " LDR R1, [SP,#0x38-0x30]\n"
455 " LDR R2, [R1]\n"
456 " CMP R2, #0\n"
457 " BEQ loc_FFD1F37C\n"
458 " LDR R3, =0x7421C\n"
459 " LDR R1, [R3]\n"
460 " CMP R2, R1\n"
461 " BHI loc_FFD1F37C\n"
462 " LDR R0, [SP,#0x38-0x34]\n"
463 " LDR R3, [R0]\n"
464 " ADD R3, R2, R3\n"
465 " CMP R1, R3\n"
466 " BCC loc_FFD1F10C\n"
467 " loc_FFD1F37C:\n"
468 " LDR R3, =0x7427C\n"
469 " LDR R0, =0x74280\n"
470 " LDR R2, [R3]\n"
471 " LDR R3, [R0,#4]\n"
472 " ADD R2, R2, #0x18\n"
473 " MOV R1, R2\n"
474 " MOV R2, #0\n"
475 " CMP R2, R3\n"
476 " BHI loc_FFD1F3B0\n"
477 " BNE loc_FFD1F3B8\n"
478 " LDR R3, [R0]\n"
479 " CMP R1, R3\n"
480 " BLS loc_FFD1F3B8\n"
481 " loc_FFD1F3B0:\n"
482 " MOV R0, #0x80000005\n"
483 " B loc_FFD1F46C\n"
484 " loc_FFD1F3B8:\n"
485 " LDR R1, =0x74264\n"
486 " LDR R0, =0x742B0\n"
487 " LDR R3, [R1]\n"
488 " LDR R2, [R0]\n"
489 " ADD R3, R3, R2,LSL#4\n"
490 " ADD R3, R3, R3,LSL#2\n"
491 " LDR R12, =0x74280\n"
492 " MOV R3, R3,LSL#1\n"
493 " ADD R3, R3, #0xA0\n"
494 " LDR R2, [R12,#4]\n"
495 " MOV R0, R3\n"
496 " MOV R1, #0\n"
497 " CMP R1, R2\n"
498 " BHI loc_FFD1F400\n"
499 " BNE loc_FFD1F424\n"
500 " LDR R3, [R12]\n"
501 " CMP R0, R3\n"
502 " BLS loc_FFD1F424\n"
503 " loc_FFD1F400:\n"
504 " LDR R4, =0x74298\n"
505 " LDR R1, [R4]\n"
506 " CMP R1, #0\n"
507 " BNE loc_FFD1F424\n"
508 " MOV R0, #0x3140\n"
509 " ADD R0, R0, #0x8\n"
510 " BL sub_FFD35A08\n"
511 " MOV R3, #1\n"
512 " STR R3, [R4]\n"
513 " loc_FFD1F424:\n"
514 " LDR R3, =0x74288\n"
515 " LDR R12, =0x7427C\n"
516 " LDMIA R3, {R1,R2}\n"
517 " LDR R0, [R12]\n"
518 " MOV R4, #0\n"
519 " MOV R3, #0x18\n"
520 " ADDS R1, R1, R0\n"
521 " ADC R2, R2, #0\n"
522 " ADDS R1, R1, R3\n"
523 " ADC R2, R2, R4\n"
524 " CMP R2, #0\n"
525 " BHI loc_FFD1F460\n"
526 " BNE loc_FFD1F468\n"
527 " CMP R1, #0x40000000\n"
528 " B loc_FFD1F468\n"
529 " loc_FFD1F460:\n"
530 " MOV R0, #0x80000007\n"
531 " B loc_FFD1F46C\n"
532 " loc_FFD1F468:\n"
533 " MOV R0, #0\n"
534 " loc_FFD1F46C:\n"
535 " ADD SP, SP, #0x14\n"
536 " LDMFD SP!, {R4-R11,PC}\n"
537 );
538 }
539
540 void __attribute__((naked,noinline)) sub_FFD1E3C8_my(){
541 asm volatile(
542 " CMP R2, #1\n"
543 " STMFD SP!, {R4-R7,LR}\n"
544 " MOV R7, R0\n"
545 " MOV R6, R1\n"
546 " MOVEQ R3, #0x79\n"
547 " STREQ R3, [R6]\n"
548 " LDMEQFD SP!, {R4-R7,PC}\n"
549 " LDR R12, =0x73F94\n"
550 " LDR R0, [R12]\n"
551 " LDR R3, =0x73F9C\n"
552 " CMP R0, #0\n"
553 " LDR R1, [R3]\n"
554 " BEQ loc_FFD1E410\n"
555 " LDR R2, =0x73FA0\n"
556 " LDR R3, [R2]\n"
557 " CMP R3, #1\n"
558 " BNE loc_FFD1E424\n"
559 " B loc_FFD1E414\n"
560 " loc_FFD1E410:\n"
561 " LDR R2, =0x73FA0\n"
562 " loc_FFD1E414:\n"
563 " MOV R3, #0\n"
564 " STR R3, [R2]\n"
565 " STR R7, [R12]\n"
566 " B loc_FFD1E4D8\n"
567 " loc_FFD1E424:\n"
568 " LDR R3, =0x73F98\n"
569 " LDR R2, [R3]\n"
570 " LDR R5, =table1\n"
571 " MOV LR, R2,LSL#2\n"
572 " LDR R3, [R5,LR]\n"
573 " LDR R4, =table2\n"
574 " RSB R12, R3, R0\n"
575 " LDR R2, [R4,LR]\n"
576 " CMP R12, #0\n"
577 " RSB R0, R2, R0\n"
578 " BLE loc_FFD1E484\n"
579 " ADD R3, R5, #0x14\n"
580 " LDR R2, [R3,LR]\n"
581 " CMP R2, R12\n"
582 " ADDGE R1, R1, #1\n"
583 " BGE loc_FFD1E478\n"
584 " ADD R3, R5, #0x28\n"
585 " LDR R2, [R3,LR]\n"
586 " CMP R2, R12\n"
587 " ADDGE R1, R1, #2\n"
588 " ADDLT R1, R1, #3\n"
589 " loc_FFD1E478:\n"
590 " CMP R1, #0x1a\n"
591 " MOVGE R1, #0x1a\n"
592 " B loc_FFD1E4BC\n"
593 " loc_FFD1E484:\n"
594 " CMP R0, #0\n"
595 " BGE loc_FFD1E4BC\n"
596 " ADD R3, R4, #0x14\n"
597 " LDR R2, [R3,LR]\n"
598 " CMP R2, R0\n"
599 " SUBLE R1, R1, #1\n"
600 " BLE loc_FFD1E4B4\n"
601 " ADD R3, R4, #0x28\n"
602 " LDR R2, [R3,LR]\n"
603 " CMP R2, R0\n"
604 " SUBLE R1, R1, #2\n"
605 " SUBGT R1, R1, #3\n"
606 " loc_FFD1E4B4:\n"
607 " CMP R1, #0\n"
608 " MOVLT R1, #0\n"
609 " loc_FFD1E4BC:\n"
610 " LDR R0, =0x73F9C\n"
611 " LDR R3, [R0]\n"
612 " CMP R1, R3\n"
613 " LDRNE R2, =0x73FA0\n"
614 " MOVNE R3, #1\n"
615 " STRNE R1, [R0]\n"
616 " STRNE R3, [R2]\n"
617 " loc_FFD1E4D8:\n"
618 " LDR R3, =0x73F9C\n"
619 " LDR R1, =video_mode\n"
620 " LDR R0, [R3]\n"
621 " LDR R2, =CompressionRateTable\n"
622 " LDR R12, [R1]\n"
623 " LDR R12, [R12]\n"
624 " LDR LR, [R2,R0,LSL#2]\n"
625 " LDR R3, =0x73F94\n"
626 " CMP R12, #1\n"
627 " STR R7, [R3]\n"
628 " STR LR, [R6]\n"
629
630 " LDREQ R3, =video_quality\n"
631 " LDREQ R3, [R3]\n"
632 " LDREQ R3, [R3]\n"
633 " STREQ R3, [R6]\n"
634 " LDMFD SP!, {R4-R7,PC}\n"
635 );
636 }
637
638 void __attribute__((naked,noinline)) sub_FFD1D2E0_my(){
639 asm volatile(
640 " STMFD SP!, {R4-R11,LR}\n"
641 " LDR R3, =0x73EFC\n"
642 " SUB SP, SP, #0x30\n"
643 " LDR R12, [R3]\n"
644 " MOV R4, #0\n"
645 " LDR R2, =0x73EC0\n"
646 " LDR R1, =0x73EC4\n"
647 " LDR R0, =0x73EE8\n"
648 " MOV R11, R4\n"
649 " STR R11, [R2]\n"
650 " STR R12, [R0]\n"
651 " STR R11, [R1]\n"
652 " SUB R3, R12, #0xA\n"
653 " CMP R3, #0x32 \n"
654 " LDRLS PC, [PC,R3,LSL#2]\n"
655 " B loc_FFD1D404\n"
656 " .long loc_FFD1D3EC\n"
657 " .long loc_FFD1D404\n"
658 " .long loc_FFD1D404\n"
659 " .long loc_FFD1D404\n"
660 " .long loc_FFD1D404\n"
661 " .long loc_FFD1D3EC\n"
662 " .long loc_FFD1D404\n"
663 " .long loc_FFD1D404\n"
664 " .long loc_FFD1D404\n"
665 " .long loc_FFD1D404\n"
666 " .long loc_FFD1D3F4\n"
667 " .long loc_FFD1D404\n"
668 " .long loc_FFD1D404\n"
669 " .long loc_FFD1D404\n"
670 " .long loc_FFD1D404\n"
671 " .long loc_FFD1D404\n"
672 " .long loc_FFD1D404\n"
673 " .long loc_FFD1D404\n"
674 " .long loc_FFD1D404\n"
675 " .long loc_FFD1D404\n"
676 " .long loc_FFD1D3F4\n"
677 " .long loc_FFD1D404\n"
678 " .long loc_FFD1D404\n"
679 " .long loc_FFD1D404\n"
680 " .long loc_FFD1D404\n"
681 " .long loc_FFD1D404\n"
682 " .long loc_FFD1D404\n"
683 " .long loc_FFD1D404\n"
684 " .long loc_FFD1D404\n"
685 " .long loc_FFD1D404\n"
686 " .long loc_FFD1D404\n"
687 " .long loc_FFD1D404\n"
688 " .long loc_FFD1D404\n"
689 " .long loc_FFD1D404\n"
690 " .long loc_FFD1D404\n"
691 " .long loc_FFD1D404\n"
692 " .long loc_FFD1D404\n"
693 " .long loc_FFD1D404\n"
694 " .long loc_FFD1D404\n"
695 " .long loc_FFD1D404\n"
696 " .long loc_FFD1D404\n"
697 " .long loc_FFD1D404\n"
698 " .long loc_FFD1D404\n"
699 " .long loc_FFD1D404\n"
700 " .long loc_FFD1D404\n"
701 " .long loc_FFD1D404\n"
702 " .long loc_FFD1D404\n"
703 " .long loc_FFD1D404\n"
704 " .long loc_FFD1D404\n"
705 " .long loc_FFD1D404\n"
706 " .long loc_FFD1D3FC\n"
707 " loc_FFD1D3EC:\n"
708 " MOV R11, #2 \n"
709 " B loc_FFD1D414\n"
710 " loc_FFD1D3F4:\n"
711 " MOV R11, #4 \n"
712 " B loc_FFD1D414\n"
713 " loc_FFD1D3FC:\n"
714 " MOV R11, #8 \n"
715 " B loc_FFD1D414\n"
716 " loc_FFD1D404:\n"
717 " MOV R1, #0x3B8 \n"
718 " LDR R0, =0xFFD1C938\n"
719 " ADD R1, R1, #1\n"
720 " BL sub_FFC03B58\n"
721 " loc_FFD1D414:\n"
722 " LDR R4, =0x73F80\n"
723 " MOV R1, #0\n"
724 " MOV R2, R4\n"
725 " MOV R0, #7\n"
726 " BL sub_FFC028B8\n"
727 " LDR R5, =0x73EE0\n"
728 " LDR R1, =0x73EE4\n"
729 " LDR R3, [R5]\n"
730 " LDR R2, [R1]\n"
731 " MUL R12, R3, R2\n"
732 " LDR R2, =0x73EF8\n"
733 " LDR R2, [R2]\n"
734 " LDR R1, [R4,#4]\n"
735 " LDR LR, =0x73EFC\n"
736 " STR R2, [SP,#0x54-0x2C]\n"
737 " LDR R7, =0x73EF4\n"
738 " LDR R3, =0x73ECC\n"
739 " LDR R2, [R7]\n"
740 " LDR R6, [LR]\n"
741 " LDR R5, =0x73EDC\n"
742 " LDR LR, [R3]\n"
743 " LDR R7, =0x73ED8\n"
744 " LDR R3, =0x73EE0\n"
745 " LDR R0, [R4]\n"
746 " LDR R4, [R5]\n"
747 " LDR R5, [R7]\n"
748 " LDRH R7, [R3]\n"
749 " LDR R3, =0x73EE4\n"
750 " MOV R12, R12,LSL#13\n"
751 " LDRH R8, [R3]\n"
752 " LDR R10, =0xFFD1DAA0\n"
753 " LDR R9, =0x73EEC\n"
754 " LDR R3, [SP,#0x54-0x2C]\n"
755 " MOV R12, R12,LSR#16\n"
756 " STR R6, [SP,#0x54-0x54]\n"
757 " STR R4, [SP,#0x54-0x4C]\n"
758 " STR R5, [SP,#0x54-0x48]\n"
759 " STR R12, [SP,#0x54-0x44]\n"
760 " STR R7, [SP,#0x54-0x40]\n"
761 " STR LR, [SP,#0x54-0x50]\n"
762 " STR R8, [SP,#0x54-0x3C]\n"
763 " STR R11, [SP,#0x54-0x38]\n"
764 " STR R10, [SP,#0x54-0x34]\n"
765 " STR R9, [SP,#0x54-0x30]\n"
766 " LDR R4, =0x73F28\n"
767 " BL sub_FFD1E6BC_my\n"
768 " LDR R12, =0x73F2C\n"
769 " LDR R3, =0x73F50\n"
770 " LDR R0, [R4]\n"
771 " LDMIA R3, {R1,R2}\n"
772 " LDR R3, [R12]\n"
773 " BL sub_FFD1E9D4\n"
774 " LDR R5, =0x73ECC\n"
775 " LDR R4, =0x73EF4\n"
776 " LDR R12, [R5]\n"
777 " LDR R0, [R4]\n"
778 " LDR R2, =0x73F24\n"
779 " MOV R3, #0\n"
780 " LDR R1, =0x73F18\n"
781 " STR R12, [SP,#0x54-0x54]\n"
782 " BL sub_FFD1E2E4\n"
783 " LDR R2, =0x73EF0\n"
784 " LDR R1, =0x73F30\n"
785 " LDR R3, [R2]\n"
786 " LDR R0, [R1]\n"
787 " LDR R2, =0xFFD1C8AC\n"
788 " ADD R3, R3, R3,LSL#1\n"
789 " ADD R3, R3, R0\n"
790 " LDR R0, [R2,R3,LSL#2]\n"
791 " MOV R1, #1\n"
792 " BL sub_FFC822F4\n"
793 " LDR R0, =0xFFD1D778\n"
794 " MOV R1, #0\n"
795 " BL sub_FFC824E4\n"
796 " LDR R7, =0x73EE4\n"
797 " LDR R1, =0x73EE0\n"
798 " LDR R2, [R7]\n"
799 " LDR R3, [R1]\n"
800 " LDR R0, =0xFFD1D2D0\n"
801 " MOV R1, #0\n"
802 " CMP R3, #0x10\n"
803 " MOVNE R5, #0\n"
804 " MOVEQ R5, #1\n"
805 " CMP R2, #2\n"
806 " MOVNE R4, #0\n"
807 " MOVEQ R4, #1\n"
808 " BL sub_FFC1DF8C\n"
809 " LDR R6, =0x6858\n"
810 " TST R0, #1\n"
811 " STR R0, [R6]\n"
812 " BEQ loc_FFD1D590\n"
813 " MOV R1, #0x3F0\n"
814 " LDR R0, =0xFFD1C938\n"
815 " ADD R1, R1, #2\n"
816 " BL sub_FFC03B58\n"
817 " loc_FFD1D590:\n"
818 " LDR R0, [R6]\n"
819 " LDR R1, =0xFFD1DC7C\n"
820 " MOV R2, #0\n"
821 " BL sub_FFC1E114\n"
822 " TST R0, #1\n"
823 " BEQ loc_FFD1D5B8\n"
824 " MOV R1, #0x3F4\n"
825 " LDR R0, =0xFFD1C938\n"
826 " ADD R1, R1, #1\n"
827 " BL sub_FFC03B58\n"
828 " loc_FFD1D5B8:\n"
829 " LDR R3, =0x73DDC\n"
830 " MOV R1, #0x1E\n"
831 " LDR R0, [R3]\n"
832 " BL sub_FFC11B80\n"
833 " CMP R0, #9\n"
834 " BNE loc_FFD1D5E0\n"
835 " MOV R1, #0x3F4\n"
836 " LDR R0, =0xFFD1C938\n"
837 " ADD R1, R1, #3\n"
838 " BL sub_FFC03B58\n"
839 " loc_FFD1D5E0:\n"
840 " LDR R3, =0x73EDC\n"
841 " LDR R7, =0x73EE0\n"
842 " LDR R2, [R3]\n"
843 " LDR R0, [R6]\n"
844 " LDR R3, [R7]\n"
845 " MOV R1, #0\n"
846 " STR R5, [SP,#0x54-0x54]\n"
847 " STR R4, [SP,#0x54-0x50]\n"
848 " BL sub_FFC1E184\n"
849 " TST R0, #1\n"
850 " BEQ loc_FFD1D61C\n"
851 " MOV R1, #0x400\n"
852 " LDR R0, =0xFFD1C938\n"
853 " ADD R1, R1, #8\n"
854 " BL sub_FFC03B58\n"
855 " loc_FFD1D61C:\n"
856 " ADD R4, SP, #0x54-0x28\n"
857 " MOV R0, R4\n"
858 " BL sub_FFD1EF08\n"
859 " LDR R10, =0xFFD1DCA8\n"
860 " LDR R3, =0x73ED8\n"
861 " LDR R0, [R6]\n"
862 " LDR R2, [R3]\n"
863 " LDR R1, [SP,#0x54-0x28]\n"
864 " MOV R7, #0\n"
865 " MOV R3, R10\n"
866 " STR R7, [SP,#0x54-0x54]\n"
867 " BL sub_FFC1E0C8\n"
868 " TST R0, #1\n"
869 " BEQ loc_FFD1D664\n"
870 " MOV R1, #0x410\n"
871 " LDR R0, =0xFFD1C938\n"
872 " ADD R1, R1, #6\n"
873 " BL sub_FFC03B58\n"
874 " loc_FFD1D664:\n"
875 " LDR R2, [SP,#0x54-0x28]\n"
876 " LDR R5, =0x73F90\n"
877 " LDR R8, =0x73F88\n"
878 " MOV R3, #1\n"
879 " MOV R0, R4\n"
880 " STR R2, [R8]\n"
881 " STR R3, [R5]\n"
882 " BL sub_FFD1EF08\n"
883 " LDR R4, =0x73ED8\n"
884 " LDR R0, [R6]\n"
885 " LDR R2, [R4]\n"
886 " LDR R1, [SP,#0x54-0x28]\n"
887 " MOV R3, R10\n"
888 " STR R7, [SP,#0x54-0x54]\n"
889 " BL sub_FFC1E0C8\n"
890 " TST R0, #1\n"
891 " BEQ loc_FFD1D6B4\n"
892 " LDR R0, =0xFFD1C938\n"
893 " MOV R1, #0x420\n"
894 " BL sub_FFC03B58\n"
895 " loc_FFD1D6B4:\n"
896 " LDR R3, [R5]\n"
897 " LDR R0, [SP,#0x54-0x28]\n"
898 " LDR R4, =0x73F7C\n"
899 " LDR R12, =0xFFD1DBD4\n"
900 " LDR LR, =0x73ED4\n"
901 " ADD R2, R3, #1\n"
902 " MOV R1, #2\n"
903 " AND R3, R3, #1\n"
904 " STR R0, [R8,R3,LSL#2]\n"
905 " STR R2, [R5]\n"
906 " STR R12, [R4]\n"
907 " STR R1, [LR]\n"
908 " ADD SP, SP, #0x30\n"
909 " LDMFD SP!, {R4-R11,PC}\n"
910 );
911 }
912
913 void __attribute__((naked,noinline)) sub_FFD1E6BC_my(){
914
915
916
917
918 asm volatile(
919 " STMFD SP!, {R4-R11,LR}\n"
920 " SUB SP, SP, #0x14\n"
921 " MOV R9, R2\n"
922 " LDRSH R2, [SP,#0x38+0x14]\n"
923 " STR R2, [SP,#0x38-0x28]\n"
924 " LDRSH R2, [SP,#0x38+0x18]\n"
925 " LDR R8, =0x742AC\n"
926 " STR R2, [SP,#0x38-0x2C]\n"
927 " LDRSH R2, [SP,#0x38+0x1C]\n"
928 " LDR R11, [SP,#0x38]\n"
929 " STR R2, [SP,#0x38-0x30]\n"
930 " LDRSH R10, [SP,#0x38+0x10]\n"
931 " STR R3, [R8]\n"
932 " LDR R3, [SP,#0x38+0x8]\n"
933 " LDR R2, =0x742B4\n"
934 " STR R3, [R2]\n"
935 " LDR R2, [SP,#0x38+0xC]\n"
936 " LDR R12, =0x742B8\n"
937 " LDR LR, =0x742BC\n"
938 " STR R2, [R12]\n"
939 " STRH R10, [LR]\n"
940 " LDR R3, [SP,#0x38-0x28]\n"
941 " LDR R4, =0x742BE\n"
942 " STRH R3, [R4]\n"
943 " LDR R2, [SP,#0x38-0x2C]\n"
944 " LDR R5, =0x742C0\n"
945 " STRH R2, [R5]\n"
946 " LDR R3, [SP,#0x38-0x30]\n"
947 " LDR R6, =0x742C2\n"
948 " STRH R3, [R6]\n"
949 " LDR R2, [SP,#0x38+0x20]\n"
950 " LDR R7, =0x742E4\n"
951 " LDR R3, =0x742A8\n"
952 " STR R2, [R7]\n"
953 " LDR R2, =0x742B0\n"
954 " CMP R9, #0x400\n"
955 " STR R9, [R3]\n"
956 " MOV R4, R0\n"
957 " STR R11, [R2]\n"
958 " MOV R6, R1\n"
959 " BNE loc_FFD1E798\n"
960 " ADD R2, R11, R11,LSL#1\n"
961 " RSB R2, R2, R2,LSL#4\n"
962 " LDR R12, =0x7424C\n"
963 " LDR R5, =0x7427C\n"
964 " MOV R3, #0xB40\n"
965 " ADD R3, R3, #8\n"
966 " MOV R1, #0x80000\n"
967 " MOV R0, R2,LSL#2\n"
968 " STR R1, [R5]\n"
969 " STR R0, [R12]\n"
970 " ADD R12, R3, R2,LSL#6\n"
971 " MOV R3, #3\n"
972 " STR R3, [SP,#0x38-0x34]\n"
973 " B loc_FFD1E864\n"
974 " loc_FFD1E798:\n"
975 " CMP R9, #0x280\n"
976 " BNE loc_FFD1E7D4\n"
977
978 "RSB R8, R11, R11, LSL#4\n"
979
980 "RSB R2, R8, R8, LSL#4\n"
981 " LDR R12, =0x7424C\n"
982 " LDR R5, =0x7427C\n"
983
984 "MOV R3, #0xE100\n"
985
986 "MOV R0, R2, LSL#4\n"
987 " MOV R1, #0x40000\n"
988 " ADD R3, R3, #8\n"
989 " STR R1, [R5]\n"
990 " STR R0, [R12]\n"
991
992 "ADD R12, R3, R2, LSL#8\n"
993 " MOV R2, #2\n"
994 " B loc_FFD1E860\n"
995 " loc_FFD1E7D4:\n"
996 " CMP R9, #0x140\n"
997 " BNE loc_FFD1E830\n"
998
999 "RSB R8, R11, R11, LSL#4\n"
1000
1001 "MOV R3, #0xE100\n"
1002
1003 "RSB R2, R8, R8, LSL#4\n"
1004 " ADD R3, R3, #8\n"
1005 " LDR R5, =0x7427C\n"
1006 " LDR LR, =0x7424C\n"
1007 " MOV R1, #0x20000\n"
1008
1009 "MOV R0, R2, LSL#4\n"
1010
1011 "ADD R12, R3, R2, LSL#8\n"
1012 " CMP R11, #0x3C\n"
1013 " MOV R3, #1\n"
1014 " STR R1, [R5]\n"
1015 " STR R0, [LR]\n"
1016 " STR R3, [SP,#0x38-0x34]\n"
1017 " BNE loc_FFD1E864\n"
1018
1019
1020
1021
1022
1023 "MOV R3, R8, LSL#2\n"
1024 "MOV R2, #0xE400\n"
1025 "STR R3, [LR]\n"
1026 "ADD R12, R2, #0xC8\n"
1027 " B loc_FFD1E864\n"
1028 " loc_FFD1E830:\n"
1029 " ADD R2, R11, R11,LSL#1\n"
1030 " RSB R2, R2, R2,LSL#4\n"
1031 " LDR R12, =0x7424C\n"
1032 " LDR R5, =0x7427C\n"
1033 " MOV R3, #0xB40\n"
1034 " MOV R0, R2,LSL#2\n"
1035 " MOV R1, #0x10000\n"
1036 " ADD R3, R3, #8\n"
1037 " STR R1, [R5]\n"
1038 " STR R0, [R12]\n"
1039 " ADD R12, R3, R2,LSL#6\n"
1040 " MOV R2, #0\n"
1041 " loc_FFD1E860:\n"
1042 " STR R2, [SP,#0x38-0x34]\n"
1043 " loc_FFD1E864:\n"
1044 " LDR R3, [SP,#0x38+0x24]\n"
1045 " LDR R2, [R5]\n"
1046 " LDR R1, =0x742B4\n"
1047 " STR R2, [R3]\n"
1048 " LDR R2, =0x742BC\n"
1049 " LDR R0, [R1]\n"
1050 " LDRH R3, [R2]\n"
1051 " MUL R11, R3, R0\n"
1052 " ADD LR, R4, #0xF\n"
1053 " BIC LR, LR, #0xF\n"
1054 " ADD LR, LR, #8\n"
1055 " ADD R5, LR, R12\n"
1056 " ADD R12, R4, R6\n"
1057 " LDR R3, [SP,#0x38+0x4]\n"
1058 " MOV R2, R11,LSL#1\n"
1059 " RSB R12, R5, R12\n"
1060 " RSB R12, R2, R12\n"
1061 " SUBS R3, R3, #0\n"
1062 " MOVNE R3, #1\n"
1063 " SUB R12, R12, #0x10\n"
1064 " STR R3, [SP,#0x38-0x38]\n"
1065 " BIC R12, R12, #0x7F00\n"
1066 " LDR R3, =0x7426C\n"
1067 " LDR R7, =0x742D8\n"
1068 " BIC R12, R12, #0xFF\n"
1069 " STR R12, [R7]\n"
1070 " LDR R10, =0x742D4\n"
1071 " STR R11, [R3]\n"
1072 " LDR R6, =0x742C8\n"
1073 " LDR R3, =0x742CC\n"
1074 " LDR R8, =0x742D0\n"
1075 " ADD R4, R5, R12\n"
1076 " STR LR, [R6]\n"
1077 " MOV R0, R4\n"
1078 " STR R4, [R8]\n"
1079 " ADD R2, R2, #0x10\n"
1080 " MOV R1, #0x80\n"
1081 " STR R5, [R3]\n"
1082 " STR R4, [R10]\n"
1083 " BL sub_FFC81194\n"
1084 " LDR R2, =0x742CC\n"
1085 " LDR R10, [R10]\n"
1086 " LDR R9, [R2]\n"
1087 " LDR LR, =0x62773130\n"
1088 " LDR R12, =0x74228\n"
1089 " LDR R0, =0x7426C\n"
1090 " MOV R1, #0\n"
1091 " loc_FFD1E920:\n"
1092 " LDR R3, [R0]\n"
1093 " ADD R3, R3, #8\n"
1094 " MUL R2, R3, R1\n"
1095 " STR LR, [R10,R2]\n"
1096 " STR R9, [R12,R1,LSL#2]\n"
1097 " LDR R3, [R0]\n"
1098 " ADD R1, R1, #1\n"
1099 " ADD R2, R10, R2\n"
1100 " CMP R1, #1\n"
1101 " STR R3, [R2,#4]\n"
1102 " BLE loc_FFD1E920\n"
1103 " LDR R3, =0x742B0\n"
1104 " LDR R1, [SP,#0x38-0x38]\n"
1105 " LDR R2, [R3]\n"
1106 " LDR R0, [SP,#0x38-0x34]\n"
1107 " BL sub_FFCFB784\n"
1108 " LDR R3, =0x7426C\n"
1109 " LDR R2, [R3]\n"
1110 " LDR R1, =0x74264\n"
1111 " ADD R0, R0, R2\n"
1112 " STR R0, [R1]\n"
1113 " ADD SP, SP, #0x14\n"
1114 " LDMFD SP!, {R4-R11,PC}"
1115 );
1116 }