root/platform/a710/sub/100a/capt_seq.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. sub_FFD5F178_my
  2. sub_FFD5C2C4_my
  3. capt_seq_task
  4. exp_drv_task
  5. sub_FFD02424_my
  6. sub_FFCA4008_my

   1 #include "lolevel.h"
   2 #include "platform.h"
   3 #include "core.h"
   4 
   5 static long *nrflag = (long*)0x621C;
   6 
   7 #include "../../../generic/capt_seq.c"
   8 
   9 void __attribute__((naked,noinline)) sub_FFD5F178_my(long p)
  10 {
  11     asm volatile (
  12                 "STMFD   SP!, {R4,LR}\n"
  13                 "MOV     R4, R0\n"
  14                 "SUB     SP, SP, #0xC\n"
  15                 "BL      sub_FFD5FB34\n"
  16                 "LDR     R1, =0xFFFFFFFF\n"
  17                 "BL      sub_FFC103A4\n"
  18                 "LDR     R0, =0x122\n"
  19                 "ADD     R1, SP, #0x14-0x10\n"
  20                 "MOV     R2, #4\n"
  21                 "BL      sub_FFC14DEC\n"
  22                 "TST     R0, #1\n"
  23                 "BEQ     loc_FFD5F1B8\n"
  24                 "LDR     R0, =0xFFD5EFF4\n"
  25                 "MOV     R1, #0x1BC\n"
  26                 "BL      sub_FFC03CF8\n"
  27 "loc_FFD5F1B8:\n"
  28                 "LDR     R3, =0x9CB20\n"
  29                 "LDR     R2, =0x9CBE0\n"
  30                 "LDR     R0, [R3,#0x78]\n"
  31                 "LDRSH   R1, [R2,#0xE]\n"
  32                 "BL      sub_FFC90768\n"
  33                 "MOV     R0, R4\n"
  34                 "BL      sub_FFD5EF78\n"
  35             "BL      wait_until_remote_button_is_released\n"
  36                 "BL      capt_seq_hook_set_nr\n"
  37                 "LDR     R3, =0x6220\n"
  38                 "LDR     R0, [R3]\n"
  39 
  40                 "B       sub_FFD5F1DC\n"
  41     );
  42 }
  43 
  44 void __attribute__((naked,noinline)) sub_FFD5C2C4_my(long p)
  45 {
  46     asm volatile (
  47                 "STMFD   SP!, {R4,LR}\n"
  48                 "LDR     R4, [R0,#0xC]\n"
  49                 "LDR     R3, [R4,#8]\n"
  50                 "ORR     R3, R3, #1\n"
  51                 "STR     R3, [R4,#8]\n"
  52                 "MOV     R0, #0xC\n"
  53                 "BL      sub_FFD6581C\n"
  54                 "TST     R0, #1\n"
  55                 "MOV     R2, R4\n"
  56                 "MOV     R0, #2\n"
  57                 "BEQ     loc_FFD5C30C\n"
  58                 "LDR     R3, [R4,#8]\n"
  59                 "SUB     R0, R0, #1\n"
  60                 "ORR     R3, R3, #0x40000000\n"
  61                 "MOV     R1, R0\n"
  62                 "STR     R3, [R4,#8]\n"
  63                 "LDMFD   SP!, {R4,LR}\n"
  64                 "B       sub_FFD5AA1C\n"
  65 "loc_FFD5C30C:\n"
  66                 "BL      sub_FFEA6BEC\n"
  67                 "BL      sub_FFD5CD8C\n"
  68                 "MOV     R0, R4\n"
  69                 "BL      sub_FFD5DD50\n"
  70                 "TST     R0, #1\n"
  71                 "MOV     R2, R4\n"
  72                 "MOV     R1, #1\n"
  73                 "BEQ     loc_FFD5C334\n"
  74                 "LDMFD   SP!, {R4,LR}\n"
  75                 "B       sub_FFD5AA1C\n"
  76 "loc_FFD5C334:\n"
  77                 "BL      sub_FFD9ADF8\n"
  78                 "BL      sub_FFC14FE8\n"
  79                 "STR     R0, [R4,#0x14]\n"
  80                 "MOV     R0, R4\n"
  81                 "BL      sub_FFD5F060\n"
  82                 "BL      sub_FFD5F9C0\n"
  83                 "MOV     R0, R4\n"
  84                 "BL      sub_FFD5F178_my\n"
  85                 "BL      capt_seq_hook_raw_here\n"
  86                 "MOV     R1, #1\n"
  87                 "MOV     R2, R4\n"
  88                 "BL      sub_FFD5AA1C\n"
  89                 "BL      sub_FFD5F4AC\n"
  90                 "CMP     R0, #0\n"
  91                 "LDRNE   R3, [R4,#8]\n"
  92                 "ORRNE   R3, R3, #0x2000\n"
  93                 "STRNE   R3, [R4,#8]\n"
  94                 "LDMFD   SP!, {R4,PC}\n"
  95     );
  96 }
  97 
  98 void __attribute__((naked,noinline)) capt_seq_task()
  99 {
 100         asm volatile (
 101                 "STMFD   SP!, {R4,LR}\n"
 102                 "SUB     SP, SP, #4\n"
 103                 "MOV     R4, SP\n"
 104                 "B       loc_FFD5C878\n"
 105 "loc_FFD5C70C:\n"
 106                 "LDR     R2, [SP,#0xC-0xC]\n"
 107                 "LDR     R3, [R2]\n"
 108                 "MOV     R0, R2\n"
 109                 "CMP     R3, #0x16\n"
 110                 "LDRLS   PC, [PC,R3,LSL#2]\n"
 111                 "B       loc_FFD5C84C\n"
 112                 ".long loc_FFD5C780\n"
 113                 ".long loc_FFD5C78C\n"
 114                 ".long loc_FFD5C794\n"
 115                 ".long loc_FFD5C7A8\n"
 116                 ".long loc_FFD5C7A0\n"
 117                 ".long loc_FFD5C7B0\n"
 118                 ".long loc_FFD5C7B8\n"
 119                 ".long loc_FFD5C7C4\n"
 120                 ".long loc_FFD5C7CC\n"
 121                 ".long loc_FFD5C7D8\n"
 122                 ".long loc_FFD5C7E0\n"
 123                 ".long loc_FFD5C7E8\n"
 124                 ".long loc_FFD5C7F0\n"
 125                 ".long loc_FFD5C7F8\n"
 126                 ".long loc_FFD5C800\n"
 127                 ".long loc_FFD5C80C\n"
 128                 ".long loc_FFD5C814\n"
 129                 ".long loc_FFD5C81C\n"
 130                 ".long loc_FFD5C824\n"
 131                 ".long loc_FFD5C830\n"
 132                 ".long loc_FFD5C83C\n"
 133                 ".long loc_FFD5C844\n"
 134                 ".long loc_FFD5C860\n"
 135 "loc_FFD5C780:\n"
 136                 "BL      sub_FFD5CDA0\n"
 137                 "BL      shooting_expo_param_override\n"  // +
 138                 "BL      sub_FFD5A518\n"
 139                 "B       loc_FFD5C85C\n"
 140 "loc_FFD5C78C:\n"
 141                 "BL      sub_FFD5C2C4_my\n"
 142                 "B       loc_FFD5C85C\n"
 143 "loc_FFD5C794:\n"
 144                 "MOV     R0, #1\n"
 145                 "BL      sub_FFD5CF94\n"
 146                 "B       loc_FFD5C85C\n"
 147 "loc_FFD5C7A0:\n"
 148                 "BL      sub_FFD5C96C\n"
 149                 "B       loc_FFD5C85C\n"
 150 "loc_FFD5C7A8:\n"
 151                 "BL      sub_FFD5CD6C\n"
 152                 "B       loc_FFD5C85C\n"
 153 "loc_FFD5C7B0:\n"
 154                 "BL      sub_FFD5CD7C\n"
 155                 "B       loc_FFD5C85C\n"
 156 "loc_FFD5C7B8:\n"
 157                 "BL      sub_FFD5CE8C\n"
 158                 "BL      sub_FFD5A518\n"
 159                 "B       loc_FFD5C85C\n"
 160 "loc_FFD5C7C4:\n"
 161                 "BL      sub_FFD5C3D8\n"
 162                 "B       loc_FFD5C85C\n"
 163 "loc_FFD5C7CC:\n"
 164                 "BL      sub_FFD5CEF4\n"
 165                 "BL      sub_FFD5A518\n"
 166                 "B       loc_FFD5C85C\n"
 167 "loc_FFD5C7D8:\n"
 168                 "BL      sub_FFD5CD6C\n"
 169                 "B       loc_FFD5C85C\n"
 170 "loc_FFD5C7E0:\n"
 171                 "BL      sub_FFD5E444\n"
 172                 "B       loc_FFD5C85C\n"
 173 "loc_FFD5C7E8:\n"
 174                 "BL      sub_FFD5E610\n"
 175                 "B       loc_FFD5C85C\n"
 176 "loc_FFD5C7F0:\n"
 177                 "BL      sub_FFD5E6A4\n"
 178                 "B       loc_FFD5C85C\n"
 179 "loc_FFD5C7F8:\n"
 180                 "BL      sub_FFD5E740\n"
 181                 "B       loc_FFD5C85C\n"
 182 "loc_FFD5C800:\n"
 183                 "MOV     R0, #0\n"
 184                 "BL      sub_FFD5E9AC\n"
 185                 "B       loc_FFD5C85C\n"
 186 "loc_FFD5C80C:\n"
 187                 "BL      sub_FFD5EB64\n"
 188                 "B       loc_FFD5C85C\n"
 189 "loc_FFD5C814:\n"
 190                 "BL      sub_FFD5EBF4\n"
 191                 "B       loc_FFD5C85C\n"
 192 "loc_FFD5C81C:\n"
 193                 "BL      sub_FFD5ECAC\n"
 194                 "B       loc_FFD5C85C\n"
 195 "loc_FFD5C824:\n"
 196                 "MOV     R0, #1\n"
 197                 "BL      sub_FFD5E9AC\n"
 198                 "B       loc_FFD5C85C\n"
 199 "loc_FFD5C830:\n"
 200                 "BL      sub_FFD5D0D0\n"
 201                 "BL      sub_FFD5C1EC\n"
 202                 "B       loc_FFD5C85C\n"
 203 "loc_FFD5C83C:\n"
 204                 "BL      sub_FFD5E880\n"
 205                 "B       loc_FFD5C85C\n"
 206 "loc_FFD5C844:\n"
 207                 "BL      sub_FFD5E8D8\n"
 208                 "B       loc_FFD5C85C\n"
 209 "loc_FFD5C84C:\n"
 210                 "MOV     R1, #0x4E0\n"
 211                 "LDR     R0, =0xFFD5C048\n"
 212                 "ADD     R1, R1, #9\n"
 213                 "BL      sub_FFC03CF8\n"
 214 "loc_FFD5C85C:\n"
 215                 "LDR     R2, [SP,#0xC-0xC]\n"
 216 "loc_FFD5C860:\n"
 217                 "LDR     R3, =0x71C94\n"
 218                 "LDR     R1, [R2,#4]\n"
 219                 "LDR     R0, [R3]\n"
 220                 "BL      sub_FFC10208\n"
 221                 "LDR     R0, [SP,#0xC-0xC]\n"
 222                 "BL      sub_FFD5C0C4\n"
 223 "loc_FFD5C878:\n"
 224                 "LDR     R3, =0x71C98\n"
 225                 "MOV     R1, R4\n"
 226                 "LDR     R0, [R3]\n"
 227                 "MOV     R2, #0\n"
 228                 "BL      sub_FFC10920\n"
 229                 "TST     R0, #1\n"
 230                 "BEQ     loc_FFD5C70C\n"
 231                 "MOV     R1, #0x410\n"
 232                 "LDR     R0, =0xFFD5C048\n"
 233                 "ADD     R1, R1, #0xB\n"
 234                 "BL      sub_FFC03CF8\n"
 235                 "BL      sub_FFC11E7C\n"
 236                 "ADD     SP, SP, #4\n"
 237                 "LDMFD   SP!, {R4,PC}\n"
 238         );
 239 }
 240 
 241 /*************************************************************/
 242 void __attribute__((naked,noinline)) exp_drv_task(){
 243  asm volatile(
 244                  "STMFD   SP!, {R4-R8,LR}\n"
 245                  "SUB     SP, SP, #0x20\n"
 246                  "ADD     R7, SP, #4\n"
 247                  "B       loc_FFD05950\n"
 248  "loc_FFD054A4:\n"
 249                  "CMP     R2, #0x22\n"
 250                  "BNE     loc_FFD054BC\n"
 251                  "LDR     R0, [R12,#0x8C]\n"
 252                  "MOV     LR, PC\n"
 253                  "LDR     PC, [R12,#0x88]\n"
 254                  "B       loc_FFD05520\n"
 255  "loc_FFD054BC:\n"
 256                  "CMP     R2, #0x1D\n"
 257                  "BNE     loc_FFD054D0\n"
 258                  "MOV     R0, R12\n"
 259                  "BL      sub_FFD05364\n"
 260                  "B       loc_FFD05510\n"
 261  "loc_FFD054D0:\n"
 262                  "CMP     R2, #0x1E\n"
 263                  "BNE     loc_FFD054E4\n"
 264                  "MOV     R0, R12\n"
 265                  "BL      sub_FFD053C0\n"
 266                  "B       loc_FFD05510\n"
 267  "loc_FFD054E4:\n"
 268                  "SUB     R3, R2, #0x1F\n"
 269                  "CMP     R3, #1\n"
 270                  "BHI     loc_FFD054FC\n"
 271                  "MOV     R0, R12\n"
 272                  "BL      sub_FFD0541C\n"
 273                  "B       loc_FFD05510\n"
 274  "loc_FFD054FC:\n"
 275                  "CMP     R2, #0x21\n"
 276                  "BNE     loc_FFD0552C\n"
 277                  "BL      sub_FFCA4380\n"
 278                  "BL      sub_FFCA7474\n"
 279                  "BL      sub_FFCA66AC\n"
 280  "loc_FFD05510:\n"
 281                  "LDR     R3, [SP,#4]\n"
 282                  "LDR     R0, [R3,#0x8C]\n"
 283                  "MOV     LR, PC\n"
 284                  "LDR     PC, [R3,#0x88]\n"
 285  "loc_FFD05520:\n"
 286                  "LDR     R0, [SP,#4]\n"
 287                  "BL      sub_FFD00F00\n"
 288                  "B       loc_FFD05950\n"
 289  "loc_FFD0552C:\n"
 290                  "CMP     R2, #0xD\n"
 291                  "MOV     R8, #1\n"
 292                  "BNE     loc_FFD0559C\n"
 293                  "LDR     R1, [R12,#0x7C]\n"
 294                  "ADD     R1, R1, R1,LSL#1\n"
 295                  "ADD     R1, R12, R1,LSL#2\n"
 296                  "ADD     R6, SP, #0x14\n"
 297                  "SUB     R1, R1, #8\n"
 298                  "MOV     R2, #0xC\n"
 299                  "MOV     R0, R6\n"
 300                  "BL      _memcpy\n"
 301                  "LDR     R0, [SP,#4]\n"
 302                  "BL      sub_FFD039DC\n"
 303                  "LDR     R3, [SP,#4]\n"
 304                  "LDR     R1, [R3,#0x7C]\n"
 305                  "LDR     R2, [R3,#0x8C]\n"
 306                  "ADD     R0, R3, #4\n"
 307                  "MOV     LR, PC\n"
 308                  "LDR     PC, [R3,#0x88]\n"
 309                  "LDR     R0, [SP,#4]\n"
 310                  "BL      sub_FFD03CAC\n"
 311                  "LDR     R3, [SP,#4]\n"
 312                  "ADD     R0, R3, #4\n"
 313                  "LDR     R1, [R3,#0x7C]\n"
 314                  "LDR     R2, [R3,#0x94]\n"
 315                  "MOV     LR, PC\n"
 316                  "LDR     PC, [R3,#0x90]\n"
 317                  "B       loc_FFD058EC\n"
 318  "loc_FFD0559C:\n"
 319                  "SUB     R3, R2, #0xE\n"
 320                  "CMP     R3, #1\n"
 321                  "BHI     loc_FFD05658\n"
 322                  "ADD     R6, SP, #0x14\n"
 323                  "ADD     R5, SP, #8\n"
 324                  "MOV     R0, R12\n"
 325                  "MOV     R1, R6\n"
 326                  "MOV     R2, R5\n"
 327                  "BL      sub_FFD03DA0\n"
 328                  "MOV     R4, R0\n"
 329                  "CMP     R4, #5\n"
 330                  "CMPNE   R4, #1\n"
 331                  "BNE     loc_FFD055F0\n"
 332                  "LDR     R12, [SP,#4]\n"
 333                  "MOV     R0, R5\n"
 334                  "LDR     R1, [R12,#0x7C]\n"
 335                  "MOV     R2, R4\n"
 336                  "LDR     R3, [R12,#0x8C]\n"
 337                  "MOV     LR, PC\n"
 338                  "LDR     PC, [R12,#0x88]\n"
 339                  "B       loc_FFD05628\n"
 340  "loc_FFD055F0:\n"
 341                  "CMP     R4, #6\n"
 342                  "CMPNE   R4, #2\n"
 343                  "BNE     loc_FFD05638\n"
 344                  "LDR     R12, [SP,#4]\n"
 345                  "MOV     R0, R5\n"
 346                  "MOV     R1, R8\n"
 347                  "MOV     R2, R4\n"
 348                  "LDR     R3, [R12,#0x8C]\n"
 349                  "MOV     LR, PC\n"
 350                  "LDR     PC, [R12,#0x88]\n"
 351                  "MOV     R1, R6\n"
 352                  "LDR     R0, [SP,#4]\n"
 353                  "MOV     R2, R5\n"
 354                  "BL      sub_FFD04FD0\n"
 355  "loc_FFD05628:\n"
 356                  "MOV     R1, R4\n"
 357                  "LDR     R0, [SP,#4]\n"
 358                  "BL      sub_FFD052F8\n"
 359                  "B       loc_FFD058EC\n"
 360  "loc_FFD05638:\n"
 361                  "LDR     R12, [SP,#4]\n"
 362                  "MOV     R2, R4\n"
 363                  "ADD     R0, R12, #4\n"
 364                  "LDR     R1, [R12,#0x7C]\n"
 365                  "LDR     R3, [R12,#0x8C]\n"
 366                  "MOV     LR, PC\n"
 367                  "LDR     PC, [R12,#0x88]\n"
 368                  "B       loc_FFD058EC\n"
 369  "loc_FFD05658:\n"
 370                  "SUB     R3, R2, #0x19\n"
 371                  "CMP     R3, #1\n"
 372                  "BHI     loc_FFD056B0\n"
 373                  "LDR     R1, [R12,#0x7C]\n"
 374                  "ADD     R1, R1, R1,LSL#1\n"
 375                  "ADD     R1, R12, R1,LSL#2\n"
 376                  "ADD     R6, SP, #0x14\n"
 377                  "SUB     R1, R1, #8\n"
 378                  "MOV     R2, #0xC\n"
 379                  "MOV     R0, R6\n"
 380                  "BL      _memcpy\n"
 381                  "LDR     R0, [SP,#4]\n"
 382                  "BL      sub_FFD02DD4\n"
 383                  "LDR     R3, [SP,#4]\n"
 384                  "ADD     R0, R3, #4\n"
 385                  "LDR     R1, [R3,#0x7C]\n"
 386                  "LDR     R2, [R3,#0x8C]\n"
 387                  "MOV     LR, PC\n"
 388                  "LDR     PC, [R3,#0x88]\n"
 389                  "LDR     R0, [SP,#4]\n"
 390                  "BL      sub_FFD031B0\n"
 391                  "B       loc_FFD058EC\n"
 392  "loc_FFD056B0:\n"
 393                  "ADD     R6, SP, #0x14\n"
 394                  "ADD     R1, R12, #4\n"
 395                  "MOV     R2, #0xC\n"
 396                  "MOV     R0, R6\n"
 397                  "BL      memcpy\n"
 398                  "LDR     R12, [SP,#4]\n"
 399                  "LDR     R3, [R12]\n"
 400                  "MOV     R2, R12\n"
 401                  "CMP     R3, #0x1C\n"
 402                  "LDRLS   PC, [PC,R3,LSL#2]\n"
 403                  "B       loc_FFD058D8\n"
 404                  ".long loc_FFD05750\n"
 405                  ".long loc_FFD0575C\n"
 406                  ".long loc_FFD05768\n"
 407                  ".long loc_FFD05768\n"
 408                  ".long loc_FFD05750\n"
 409                  ".long loc_FFD0575C\n"
 410                  ".long loc_FFD05768\n"
 411                  ".long loc_FFD05768\n"
 412                  ".long loc_FFD0578C\n"
 413                  ".long loc_FFD0578C\n"
 414                  ".long loc_FFD058AC\n"
 415                  ".long loc_FFD058B8\n"
 416                  ".long loc_FFD058C8\n"
 417                  ".long loc_FFD058D8\n"
 418                  ".long loc_FFD058D8\n"
 419                  ".long loc_FFD058D8\n"
 420                  ".long loc_FFD05774\n"
 421                  ".long loc_FFD05780\n"
 422                  ".long loc_FFD0579C\n"
 423                  ".long loc_FFD057A8\n"
 424                  ".long loc_FFD057E0\n"
 425                  ".long loc_FFD05818\n"
 426                  ".long loc_FFD05850\n"
 427                  ".long loc_FFD05888\n"
 428                  ".long loc_FFD05888\n"
 429                  ".long loc_FFD058D8\n"
 430                  ".long loc_FFD058D8\n"
 431                  ".long loc_FFD05894\n"
 432                  ".long loc_FFD058A0\n"
 433  "loc_FFD05750:\n"
 434                  "MOV     R0, R2\n"
 435                  "BL      sub_FFD017B0\n"
 436                  "B       loc_FFD058D4\n"
 437  "loc_FFD0575C:\n"
 438                  "MOV     R0, R2\n"
 439                  "BL      sub_FFD01A54\n"
 440                  "B       loc_FFD058D4\n"
 441  "loc_FFD05768:\n"
 442                  "MOV     R0, R2\n"
 443                  "BL      sub_FFD01CC8\n"
 444                  "B       loc_FFD058D4\n"
 445  "loc_FFD05774:\n"
 446                  "MOV     R0, R2\n"
 447                  "BL      sub_FFD01FC4\n"
 448                  "B       loc_FFD058D4\n"
 449  "loc_FFD05780:\n"
 450                  "MOV     R0, R2\n"
 451                  "BL      sub_FFD02228\n"
 452                  "B       loc_FFD058D4\n"
 453  "loc_FFD0578C:\n"
 454                  "MOV     R0, R2\n"
 455                  "BL      sub_FFD02424_my\n"  //---------->
 456                  "MOV     R8, #0\n"
 457                  "B       loc_FFD058D4\n"
 458  "loc_FFD0579C:\n"
 459                  "MOV     R0, R2\n"
 460                  "BL      sub_FFD02580\n"
 461                  "B       loc_FFD058D4\n"
 462  "loc_FFD057A8:\n"
 463                  "LDRH    R1, [R2,#4]\n"
 464                  "LDR     R3, =0x4D750\n"
 465                  "STRH    R1, [SP,#0x14]\n"
 466                  "LDRH    R1, [R3,#6]\n"
 467                  "STRH    R1, [SP,#0x1A]\n"
 468                  "LDRH    R1, [R3,#2]\n"
 469                  "STRH    R1, [SP,#0x16]\n"
 470                  "LDRH    R3, [R3,#4]\n"
 471                  "STRH    R3, [SP,#0x18]\n"
 472                  "MOV     R0, R2\n"
 473                  "LDRH    R2, [R2,#0xC]\n"
 474                  "STRH    R2, [SP,#0x1C]\n"
 475                  "BL      sub_FFD0287C\n"
 476                  "B       loc_FFD058D4\n"
 477  "loc_FFD057E0:\n"
 478                  "MOV     R0, R2\n"
 479                  "LDRH    R2, [R2,#4]\n"
 480                  "LDR     R3, =0x4D750\n"
 481                  "STRH    R2, [SP,#0x14]\n"
 482                  "LDRH    R2, [R3,#8]\n"
 483                  "STRH    R2, [SP,#0x1C]\n"
 484                  "LDRH    R1, [R3,#2]\n"
 485                  "STRH    R1, [SP,#0x16]\n"
 486                  "LDRH    R2, [R3,#4]\n"
 487                  "STRH    R2, [SP,#0x18]\n"
 488                  "LDRH    R3, [R3,#6]\n"
 489                  "STRH    R3, [SP,#0x1A]\n"
 490                  "BL      sub_FFD029A4\n"
 491                  "B       loc_FFD058D4\n"
 492  "loc_FFD05818:\n"
 493                  "LDR     R3, =0x4D750\n"
 494                  "LDRH    R1, [R3]\n"
 495                  "STRH    R1, [SP,#0x14]\n"
 496                  "MOV     R0, R2\n"
 497                  "LDRH    R2, [R2,#6]\n"
 498                  "STRH    R2, [SP,#0x16]\n"
 499                  "LDRH    R2, [R3,#8]\n"
 500                  "STRH    R2, [SP,#0x1C]\n"
 501                  "LDRH    R1, [R3,#4]\n"
 502                  "STRH    R1, [SP,#0x18]\n"
 503                  "LDRH    R3, [R3,#6]\n"
 504                  "STRH    R3, [SP,#0x1A]\n"
 505                  "BL      sub_FFD02A68\n"
 506                  "B       loc_FFD058D4\n"
 507  "loc_FFD05850:\n"
 508                  "LDR     R3, =0x4D750\n"
 509                  "LDRH    R1, [R3,#6]\n"
 510                  "STRH    R1, [SP,#0x1A]\n"
 511                  "LDRH    R1, [R3]\n"
 512                  "STRH    R1, [SP,#0x14]\n"
 513                  "LDRH    R1, [R3,#2]\n"
 514                  "STRH    R1, [SP,#0x16]\n"
 515                  "LDRH    R3, [R3,#4]\n"
 516                  "STRH    R3, [SP,#0x18]\n"
 517                  "MOV     R0, R2\n"
 518                  "LDRH    R2, [R2,#0xC]\n"
 519                  "STRH    R2, [SP,#0x1C]\n"
 520                  "BL      sub_FFD02B20\n"
 521                  "B       loc_FFD058D4\n"
 522  "loc_FFD05888:\n"
 523                  "MOV     R0, R2\n"
 524                  "BL      sub_FFD02BD0\n"
 525                  "B       loc_FFD058D4\n"
 526  "loc_FFD05894:\n"
 527                  "MOV     R0, R2\n"
 528                  "BL      sub_FFD03300\n"
 529                  "B       loc_FFD058D4\n"
 530  "loc_FFD058A0:\n"
 531                  "MOV     R0, R2\n"
 532                  "BL      sub_FFD034FC\n"
 533                  "B       loc_FFD058D4\n"
 534  "loc_FFD058AC:\n"
 535                  "MOV     R0, R2\n"
 536                  "BL      sub_FFD036B8\n"
 537                  "B       loc_FFD058D4\n"
 538  "loc_FFD058B8:\n"
 539                  "MOV     R0, R2\n"
 540                  "MOV     R1, #0\n"
 541                  "BL      sub_FFD0389C\n"
 542                  "B       loc_FFD058D4\n"
 543  "loc_FFD058C8:\n"
 544                  "MOV     R0, R2\n"
 545                  "MOV     R1, #1\n"
 546                  "BL      sub_FFD0389C\n"
 547  "loc_FFD058D4:\n"
 548                  "LDR     R12, [SP,#4]\n"
 549  "loc_FFD058D8:\n"
 550                  "ADD     R0, R12, #4\n"
 551                  "LDR     R1, [R12,#0x7C]\n"
 552                  "LDR     R2, [R12,#0x8C]\n"
 553                  "MOV     LR, PC\n"
 554                  "LDR     PC, [R12,#0x88]\n"
 555  "loc_FFD058EC:\n"
 556                  "CMP     R8, #1\n"
 557                  "BNE     loc_FFD05914\n"
 558                  "LDR     R1, [SP,#4]\n"
 559                  "LDR     R3, [R1,#0x7C]\n"
 560                  "ADD     R3, R3, R3,LSL#1\n"
 561                  "ADD     R1, R1, R3,LSL#2\n"
 562                  "MOV     R0, R6\n"
 563                  "SUB     R1, R1, #8\n"
 564                  "BL      sub_FFD01514\n"
 565                  "B       loc_FFD05948\n"
 566  "loc_FFD05914:\n"
 567                  "MOV     R4, #1\n"
 568                  "MOV     R0, R4\n"
 569                  "MOV     R1, R4\n"
 570                  "MOV     R2, R4\n"
 571                  "MOV     R3, R4\n"
 572                  "STR     R4, [SP]\n"
 573                  "BL      sub_FFD01468\n"
 574                  "MOV     R0, R4\n"
 575                  "MOV     R1, R0\n"
 576                  "MOV     R2, R0\n"
 577                  "MOV     R3, R0\n"
 578                  "STR     R4, [SP]\n"
 579                  "BL      sub_FFD015EC\n"
 580  "loc_FFD05948:\n"
 581                  "LDR     R0, [SP,#4]\n"
 582                  "BL      sub_FFD00F00\n"
 583  "loc_FFD05950:\n"
 584                  "LDR     R3, =0x4D748\n"
 585                  "MOV     R2, #0\n"
 586                  "LDR     R0, [R3]\n"
 587                  "MOV     R1, R7\n"
 588                  "BL      sub_FFC10920\n"
 589                  "LDR     R12, [SP,#4]\n"
 590                  "LDR     R2, [R12]\n"
 591                  "CMP     R2, #0x23\n"
 592                  "BNE     loc_FFD054A4\n"
 593                  "MOV     R0, R12\n"
 594                  "BL      sub_FFD00F00\n"
 595                  "LDR     R3, =0x4D744\n"
 596                  "MOV     R1, #1\n"
 597                  "LDR     R0, [R3]\n"
 598                  "BL      sub_FFC10208\n"
 599                  "BL      _ExitTask\n"
 600                  "ADD     SP, SP, #0x20\n"
 601                  "LDMFD   SP!, {R4-R8,PC}\n"
 602  );
 603 }
 604 
 605                                                         
 606 void __attribute__((naked,noinline)) sub_FFD02424_my(){
 607  asm volatile(
 608                  "STMFD   SP!, {R4-R6,LR}\n"
 609                  "LDR     R3, =0x4D744\n"
 610                  "MOV     R4, R0\n"
 611                  "MOV     R1, #0x3E\n"
 612                  "LDR     R0, [R3]\n"
 613                  "BL      sub_FFC103A4\n"
 614                  "MOV     R1, #0\n"
 615                  "LDRSH   R0, [R4,#4]\n"
 616                  "BL      sub_FFD01034\n"
 617                  "MOV     R6, R0\n"
 618                  "LDRSH   R0, [R4,#6]\n"
 619                  "BL      sub_FFD011A8\n"
 620                  "LDRSH   R0, [R4,#8]\n"
 621                  "BL      sub_FFD01244\n"
 622                  "LDRSH   R0, [R4,#0xA]\n"
 623                  "BL      sub_FFD012E0\n"
 624                  "LDRSH   R0, [R4,#0xC]\n"
 625                  "BL      sub_FFD0137C\n"
 626                  "LDR     R3, [R4]\n"
 627                  "CMP     R3, #9\n"
 628                  "MOV     R5, R0\n"
 629                  "MOVEQ   R5, #0\n"
 630                  "MOVEQ   R6, R5\n"
 631                  "CMP     R6, #1\n"
 632                  "BNE     loc_FFD024A8\n"
 633                  "MOV     R2, #2\n"
 634                  "LDRSH   R0, [R4,#4]\n"
 635                  "LDR     R1, =0xFFD00F54\n"
 636                  "BL      sub_FFE993F8\n"
 637                  "LDR     R2, =0x4D784\n"
 638                  "MOV     R3, #0\n"
 639                  "STR     R3, [R2]\n"
 640                  "B       loc_FFD024AC\n"
 641  "loc_FFD024A8:\n"
 642                  "BL      sub_FFD01418\n"
 643  "loc_FFD024AC:\n"
 644                  "STRH    R0, [R4,#4]\n"
 645                  "CMP     R5, #1\n"
 646                  "BNE     loc_FFD024CC\n"
 647                  "LDRSH   R0, [R4,#0xC]\n"
 648                  "LDR     R1, =0xFFD01018\n"
 649                  "MOV     R2, #0x20\n"
 650                  "BL      sub_FFD01750\n"
 651                  "B       loc_FFD024D0\n"
 652  "loc_FFD024CC:\n"
 653                  "BL      sub_FFD01458\n"
 654  "loc_FFD024D0:\n"
 655                  "STRH    R0, [R4,#0xC]\n"
 656                  "LDRSH   R0, [R4,#6]\n"
 657                  "BL      sub_FFCA4008_my\n"  // ------------->
 658                  "LDRSH   R0, [R4,#8]\n"
 659                  "MOV     R1, #1\n"
 660                  "BL      sub_FFCA626C\n"
 661                  "ADD     R0, R4, #8\n"
 662                  "MOV     R1, #0\n"
 663                  "BL      sub_FFCA632C\n"
 664                  "LDRSH   R0, [R4,#0xE]\n"
 665                  "BL      sub_FFCEEF80\n"
 666                  "CMP     R6, #1\n"
 667                  "BNE     loc_FFD02534\n"
 668                  "LDR     R3, =0x4D744\n"
 669                  "MOV     R2, #0xBB0\n"
 670                  "LDR     R0, [R3]\n"
 671                  "MOV     R1, #2\n"
 672                  "ADD     R2, R2, #8\n"
 673                  "BL      sub_FFC101F8\n"
 674                  "TST     R0, #1\n"
 675                  "BEQ     loc_FFD02534\n"
 676                  "MOV     R1, #0x440\n"
 677                  "LDR     R0, =0xFFD00EAC\n"
 678                  "ADD     R1, R1, #0xB\n"
 679                  "BL      sub_FFC03CF8\n"
 680  "loc_FFD02534:\n"
 681                  "CMP     R5, #1\n"
 682                  "LDMNEFD SP!, {R4-R6,PC}\n"
 683                  "LDR     R3, =0x4D744\n"
 684                  "MOV     R2, #0xBB0\n"
 685                  "LDR     R0, [R3]\n"
 686                  "MOV     R1, #0x20\n"
 687                  "ADD     R2, R2, #8\n"
 688                  "BL      sub_FFC101F8\n"
 689                  "TST     R0, #1\n"
 690                  "LDMEQFD SP!, {R4-R6,PC}\n"
 691                  "LDR     R0, =0xFFD00EAC\n"
 692                  "MOV     R1, #0x450\n"
 693                  "LDMFD   SP!, {R4-R6,LR}\n"
 694                  "B       sub_FFC03CF8\n"
 695  );
 696 }
 697 
 698 void __attribute__((naked,noinline)) sub_FFCA4008_my(){
 699  asm volatile(
 700                  "STMFD   SP!, {R4,LR}\n"
 701                  "LDR     R3, =0x52E0\n"
 702                  "LDR     R2, [R3]\n"
 703                  "MOV     R1, #0x150\n"
 704                  "MOV     R3, R0,LSL#16\n"
 705                  "CMP     R2, #1\n"
 706                  "ADD     R1, R1, #1\n"
 707                  "LDR     R0, =0xFFCA3844\n"
 708                  "MOV     R4, R3,ASR#16\n"
 709                  "BEQ     loc_FFCA4034\n"
 710                  "BL      sub_FFC03CF8\n"
 711  "loc_FFCA4034:\n"
 712                  "MOV     R1, #0x154\n"
 713                  "CMN     R4, #0xC00\n"
 714                  "LDR     R3, =0x3F066\n"
 715                  "LDR     R0, =0xFFCA3844\n"
 716                  "ADD     R1, R1, #3\n"
 717                  "LDREQSH R4, [R3]\n"
 718                  "LDRNE   R3, =0x3F066\n"
 719                  "CMN     R4, #0xC00\n"
 720                  "STRH    R4, [R3]\n"
 721                  "BNE     loc_FFCA4060\n"
 722                  "BL      sub_FFC03CF8\n"
 723  "loc_FFCA4060:\n"
 724                  "MOV     R0, R4\n"
 725                  "BL      apex2us\n"  //---------->
 726                  "MOV     R4, R0\n"
 727                  "BL      sub_FFCD020C\n"
 728                  "MOV     R0, R4\n"
 729                  "BL      sub_FFCA33D0\n"
 730                  "TST     R0, #1\n"
 731                  "MOV     R1, #0x15C\n"
 732                  "LDR     R0, =0xFFCA3844\n"
 733                  "LDMEQFD SP!, {R4,PC}\n"
 734                  "LDMFD   SP!, {R4,LR}\n"
 735                  "B       sub_FFC03CF8\n"
 736  );
 737 }

/* [<][>][^][v][top][bottom][index][help] */