root/platform/a550/sub/100c/capt_seq.c

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

DEFINITIONS

This source file includes following definitions.
  1. sub_FFE72574_my
  2. sub_FFE6F5FC_my
  3. capt_seq_task
  4. exp_drv_task
  5. sub_FFD0C6CC_my
  6. sub_FFCD8480_my

   1 #include "lolevel.h"
   2 #include "platform.h"
   3 #include "core.h"
   4 
   5 static long *nrflag = (long*)0xB918;
   6 
   7 #include "../../../generic/capt_seq.c"
   8 
   9 void __attribute__((naked,noinline)) sub_FFE72574_my(long p)
  10 {
  11     (void)p;
  12     asm volatile (
  13                                                                 "STMFD   SP!, {R4,LR}\n"
  14                                                                 "MOV     R4, R0\n"
  15                                                                 "SUB     SP, SP, #0xC\n"
  16                                                                 "BL      sub_FFE72F9C\n"
  17                                                                 "MVN     R1, #0\n"                                              //differnt from dump but synced wit a560
  18                                                                 "BL      sub_FFE82480\n"
  19                                                                 "MOV     R0, #0x8A\n"
  20                                                                 "ADD     R1, SP, #4\n"                          //14-10
  21                                                                 "MOV     R2, #4\n"
  22                                                                 "BL      sub_FFC0B7C4\n"
  23                                                                 "TST     R0, #1\n"
  24                                                                 "BEQ     loc_FFE725B4\n"
  25                                                                 "MOV     R1, #0x1D0\n"
  26                                                                 "LDR     R0, =0xFFE723F8\n"
  27                                                                 "ADD     R1, R1, #2\n"
  28                                                                 "BL      sub_FFE8FB40\n"
  29         "loc_FFE725B4:\n"
  30                                                                 "LDR     R3, =0x9DDC0\n"
  31                                                                 "LDR     R2, =0x9DE80\n"
  32                                                                 "LDR     R0, [R3,#0x74]\n"
  33                                                                 "LDRSH   R1, [R2,#0xE]\n"
  34                                                                 "BL      sub_FFDD28E0\n"
  35                                                                 "MOV     R0, R4\n"
  36                                                                 "BL      sub_FFE7237C\n"
  37                                 "BL      wait_until_remote_button_is_released\n"
  38                                                                 "BL      capt_seq_hook_set_nr\n" // +
  39                                                                 "LDR     R3, =0xB91C\n"
  40                                                                 "LDR     R0, [R3]\n"
  41 
  42                 "B       sub_FFE725D8\n"  // ---> jump to end of function in ROM
  43     );
  44 }
  45 
  46 void __attribute__((naked,noinline)) sub_FFE6F5FC_my(long p)
  47 {
  48     (void)p;
  49     asm volatile (
  50                                                                 "STMFD   SP!, {R4,LR}\n"
  51                                                                 "LDR     R4, [R0,#0xC]\n"
  52                                                                 "LDR     R3, [R4,#8]\n"
  53                                                                 "ORR     R3, R3, #1\n"
  54                                                                 "STR     R3, [R4,#8]\n"
  55                                                                 "MOV     R0, #0xC\n"
  56                                                                 "BL      sub_FFE79254\n"
  57                                                                 "TST     R0, #1\n"
  58                                                                 "MOV     R0, #1\n"
  59                                                                 "MOV     R2, R4\n"
  60                                                                 "MOV     R1, R0\n"
  61                                                                 "BEQ     loc_FFE6F640\n"
  62                                                                 "LDR     R3, [R4,#8]\n"
  63                                                                 "ORR     R3, R3, #0x40000000\n"
  64                                                                 "STR     R3, [R4,#8]\n"
  65                                                                 "LDMFD   SP!, {R4,LR}\n"
  66                                                                 "B       sub_FFE6DEB0\n"
  67 "loc_FFE6F640:\n"
  68                                                                 "BL      sub_FFE70098\n"
  69                                                                 "MOV     R0, R4\n"
  70                                                                 "BL      sub_FFE710CC\n"
  71                                                                 "TST     R0, #1\n"
  72                                                                 "MOV     R2, R4\n"
  73                                                                 "MOV     R1, #1\n"
  74                                                                 "BEQ     loc_FFE6F664\n"
  75                                                                 "LDMFD   SP!, {R4,LR}\n"
  76                                                                 "B       sub_FFE6DEB0\n"
  77 "loc_FFE6F664:\n"
  78                                                                 "BL      sub_FFC15B10\n"
  79                                                                 "BL      sub_FFC0B9C0\n"
  80                                                                 "STR     R0, [R4,#0x14]\n"
  81                                                                 "MOV     R0, R4\n"
  82                                                                 "BL      sub_FFE7245C\n"
  83                                                                 "BL      sub_FFE72E08\n"
  84                                                                 "MOV     R0, R4\n"
  85                                                                 "BL      sub_FFE72574_my\n"                     //------->
  86                                                                 "BL      capt_seq_hook_raw_here\n"  // +
  87                                                                 "MOV     R1, #1\n"
  88                                                                 "MOV     R2, R4\n"
  89                                                                 "BL      sub_FFE6DEB0\n"
  90                                                                 "BL      sub_FFE728A8\n"
  91                                                                 "CMP     R0, #0\n"
  92                                                                 "LDRNE   R3, [R4,#8]\n"
  93                                                                 "ORRNE   R3, R3, #0x2000\n"
  94                                                                 "STRNE   R3, [R4,#8]\n"
  95                                                                 "LDMFD   SP!, {R4,PC}\n"
  96     );
  97 }
  98 
  99 void __attribute__((naked,noinline)) capt_seq_task()
 100 {
 101         asm volatile (
 102                                                                 "STMFD   SP!, {R4,LR}\n"
 103                                                                 "SUB     SP, SP, #4\n"
 104                                                                 "MOV     R4, SP\n"
 105                                                                 "B       loc_FFE6FB6C\n"
 106 "loc_FFE6FA10:\n"
 107                                                                 "LDR     R2, [SP]\n"
 108                                                                 "LDR     R3, [R2]\n"
 109                                                                 "MOV     R0, R2\n"
 110                                                                 "CMP     R3, #0x15\n"
 111                                                                 "LDRLS   PC, [PC,R3,LSL#2]\n"
 112                                                                 "B       loc_FFE6FB40\n"
 113                                                                 ".long loc_FFE6FA80\n"
 114                                                                 ".long loc_FFE6FA8C\n"
 115                                                                 ".long loc_FFE6FA94\n"
 116                                                                 ".long loc_FFE6FAA8\n"
 117                                                                 ".long loc_FFE6FAA0\n"
 118                                                                 ".long loc_FFE6FAB0\n"
 119                                                                 ".long loc_FFE6FAB8\n"
 120                                                                 ".long loc_FFE6FAC4\n"
 121                                                                 ".long loc_FFE6FACC\n"
 122                                                                 ".long loc_FFE6FAD8\n"
 123                                                                 ".long loc_FFE6FAE0\n"
 124                                                                 ".long loc_FFE6FAE8\n"
 125                                                                 ".long loc_FFE6FAF0\n"
 126                                                                 ".long loc_FFE6FAF8\n"
 127                                                                 ".long loc_FFE6FB00\n"
 128                                                                 ".long loc_FFE6FB0C\n"
 129                                                                 ".long loc_FFE6FB14\n"
 130                                                                 ".long loc_FFE6FB1C\n"
 131                                                                 ".long loc_FFE6FB24\n"
 132                                                                 ".long loc_FFE6FB30\n"
 133                                                                 ".long loc_FFE6FB38\n"
 134                                                                 ".long loc_FFE6FB54\n"
 135 "loc_FFE6FA80:\n"
 136                                                                 
 137                                                                 "BL      sub_FFE700AC\n"
 138                                                                 "BL      shooting_expo_param_override\n"   // +
 139                                                                 "BL      sub_FFE6D9A0\n"
 140                                                                 "B       loc_FFE6FB50\n"
 141 "loc_FFE6FA8C:\n"
 142                                                                 
 143                                                                 "BL      sub_FFE6F5FC_my\n"  //--------->
 144                                                                 "B       loc_FFE6FB50\n"
 145 "loc_FFE6FA94:\n"
 146                                                                 
 147                                                                 "MOV     R0, #1\n"
 148                                                                 "BL      sub_FFE70280\n"
 149                                                                 "B       loc_FFE6FB50\n"
 150 "loc_FFE6FAA0:\n"                            
 151                                                                 
 152                                                                 "BL      sub_FFE6FC50\n"
 153                                                                 "B       loc_FFE6FB50\n"
 154 "loc_FFE6FAA8:\n"
 155                                                                 
 156                                                                 "BL      sub_FFE70078\n"
 157                                                                 "B       loc_FFE6FB50\n"
 158 "loc_FFE6FAB0:\n"
 159                                                                 
 160                                                                 "BL      sub_FFE70088\n"   
 161                                                                 "B       loc_FFE6FB50\n"
 162 "loc_FFE6FAB8:\n"
 163                                                                 
 164                                                                 "BL      sub_FFE70190\n"   
 165                                                                 "BL      sub_FFE6D9A0\n"
 166                                                                 "B       loc_FFE6FB50\n"
 167 "loc_FFE6FAC4:\n"
 168                                                                 
 169                                                                 "BL      sub_FFE6F70C\n"   
 170                                                                 "B       loc_FFE6FB50\n"
 171 "loc_FFE6FACC:\n"
 172                                                                 
 173                                                                 "BL      sub_FFE701F4\n"   
 174                                                                 "BL      sub_FFE6D9A0\n"
 175                                                                 "B       loc_FFE6FB50\n"
 176 "loc_FFE6FAD8:\n"
 177                                                                 
 178                                                                 "BL      sub_FFE70078\n"
 179                                                                 "B       loc_FFE6FB50\n"
 180 "loc_FFE6FAE0:\n"
 181                                                                 
 182                                                                 "BL      sub_FFE717E0\n"   
 183                                                                 "B       loc_FFE6FB50\n"
 184 "loc_FFE6FAE8:\n"
 185                                                                 
 186                                                                 "BL      sub_FFE719AC\n"   
 187                                                                 "B       loc_FFE6FB50\n"
 188 "loc_FFE6FAF0:\n"
 189                                                                 
 190                                                                 "BL      sub_FFE71A40\n"   
 191                                                                 "B       loc_FFE6FB50\n"
 192 "loc_FFE6FAF8:\n"
 193                                                                 
 194                                                                 "BL      sub_FFE71B3C\n"   
 195                                                                 "B       loc_FFE6FB50\n"
 196 "loc_FFE6FB00:\n"
 197                                                                 
 198                                                                 "MOV     R0, #0\n"   
 199                                                                 "BL      sub_FFE71DA8\n"
 200                                                                 "B       loc_FFE6FB50\n"
 201 "loc_FFE6FB0C:\n"
 202                                                                 
 203                                                                 "BL      sub_FFE71F60\n"  
 204                                                                 "B       loc_FFE6FB50\n"
 205 "loc_FFE6FB14:\n"
 206                                                                 
 207                                                                 "BL      sub_FFE71FF4\n"   
 208                                                                 "B       loc_FFE6FB50\n"
 209 "loc_FFE6FB1C:\n"
 210                                                                 
 211                                                                 "BL      sub_FFE720B0\n"   
 212                                                                 "B       loc_FFE6FB50\n"
 213 "loc_FFE6FB24:\n"
 214 
 215                                                                 "BL      sub_FFE703D4\n"   
 216                                                                 "BL      sub_FFE6F520\n"
 217                                                                 "B       loc_FFE6FB50\n"
 218 "loc_FFE6FB30:\n"
 219 
 220                                                                 "BL      sub_FFE71C7C\n"  
 221                                                                 "B       loc_FFE6FB50\n"
 222 "loc_FFE6FB38:\n"
 223 
 224                                                                 "BL      sub_FFE71CD8\n" 
 225                                                                 "B       loc_FFE6FB50\n"
 226 "loc_FFE6FB40:\n"
 227 
 228                                                                 "MOV     R1, #0x4C0\n"   
 229                                                                 "LDR     R0, =0xFFE6F37C\n"
 230                                                                 "ADD     R1, R1, #0xE\n"
 231                                                                 "BL      sub_FFE8FB40\n"
 232 "loc_FFE6FB50:\n"
 233 
 234                                                                 "LDR     R2, [SP]\n"
 235 "loc_FFE6FB54:\n"
 236 
 237                                                                 "LDR     R3, =0x78070\n"
 238                                                                 "LDR     R1, [R2,#4]\n"
 239                                                                 "LDR     R0, [R3]\n"
 240                                                                 "BL      sub_FFE822E4\n"
 241                                                                 "LDR     R0, [SP]\n"
 242                                                                 "BL      sub_FFE6F3FC\n"
 243 "loc_FFE6FB6C:\n"
 244                                                                 "LDR     R3, =0x78074\n"
 245                                                                 "MOV     R1, R4\n"
 246                                                                 "LDR     R0, [R3]\n"
 247                                                                 "MOV     R2, #0\n"
 248                                                                 "BL      sub_FFE829FC\n"
 249                                                                 "TST     R0, #1\n"
 250                                                                 "BEQ     loc_FFE6FA10\n"
 251                                                                 "LDR     R0, =0xFFE6F37C\n"
 252                                                                 "MOV     R1, #0x400\n"
 253                                                                 "BL      sub_FFE8FB40\n"
 254                                                                 "BL      sub_FFE83FC0\n"
 255                                                                 "ADD     SP, SP, #4\n"
 256                                                                 "LDMFD   SP!, {R4,PC}\n"
 257 
 258         );
 259 }
 260 
 261 
 262 /*************************************************************/
 263 void __attribute__((naked,noinline)) exp_drv_task(){
 264  asm volatile(
 265                  "STMFD   SP!, {R4-R8,LR}\n"
 266                  "SUB     SP, SP, #0x20\n"
 267                  "ADD     R7, SP, #4\n"
 268                  "B       loc_FFD0FBD0\n"
 269  "loc_FFD0F6DC:\n"
 270                  "CMP     R2, #0x22\n"
 271                  "BNE     loc_FFD0F6F4\n"
 272                  "LDR     R0, [R12,#0x8C]\n"
 273                  "MOV     LR, PC\n"
 274                  "LDR     PC, [R12,#0x88]\n"
 275                  "B       loc_FFD0F758\n"
 276  "loc_FFD0F6F4:\n"
 277                  "CMP     R2, #0x1D\n"
 278                  "BNE     loc_FFD0F708\n"
 279                  "MOV     R0, R12\n"
 280                  "BL      sub_FFD0F59C\n"
 281                  "B       loc_FFD0F748\n"
 282  "loc_FFD0F708:\n"
 283                  "CMP     R2, #0x1E\n"
 284                  "BNE     loc_FFD0F71C\n"
 285                  "MOV     R0, R12\n"
 286                  "BL      sub_FFD0F5F8\n"
 287                  "B       loc_FFD0F748\n"
 288  "loc_FFD0F71C:\n"
 289                  "SUB     R3, R2, #0x1F\n"
 290                  "CMP     R3, #1\n"
 291                  "BHI     loc_FFD0F734\n"
 292                  "MOV     R0, R12\n"
 293                  "BL      sub_FFD0F654\n"
 294                  "B       loc_FFD0F748\n"
 295  "loc_FFD0F734:\n"
 296                  "CMP     R2, #0x21\n"
 297                  "BNE     loc_FFD0F764\n"
 298                  "BL      sub_FFCD8804\n"
 299                  "BL      sub_FFCDB93C\n"
 300                  "BL      sub_FFCDAB74\n"
 301  "loc_FFD0F748:\n"
 302                  "LDR     R3, [SP,#4]\n"
 303                  "LDR     R0, [R3,#0x8C]\n"
 304                  "MOV     LR, PC\n"
 305                  "LDR     PC, [R3,#0x88]\n"
 306  "loc_FFD0F758:\n"
 307                  "LDR     R0, [SP,#4]\n"
 308                  "BL      sub_FFD0B268\n"
 309                  "B       loc_FFD0FBD0\n"
 310  "loc_FFD0F764:\n"
 311                  "CMP     R2, #0xD\n"
 312                  "MOV     R8, #1\n"
 313                  "BNE     loc_FFD0F7D4\n"
 314                  "LDR     R1, [R12,#0x7C]\n"
 315                  "ADD     R1, R1, R1,LSL#1\n"
 316                  "ADD     R1, R12, R1,LSL#2\n"
 317                  "ADD     R6, SP, #0x14\n"
 318                  "SUB     R1, R1, #8\n"
 319                  "MOV     R2, #0xC\n"
 320                  "MOV     R0, R6\n"
 321                  "BL      sub_FFCC037C\n"
 322                  "LDR     R0, [SP,#4]\n"
 323                  "BL      sub_FFD0DBA0\n"
 324                  "LDR     R3, [SP,#4]\n"
 325                  "LDR     R1, [R3,#0x7C]\n"
 326                  "LDR     R2, [R3,#0x8C]\n"
 327                  "ADD     R0, R3, #4\n"
 328                  "MOV     LR, PC\n"
 329                  "LDR     PC, [R3,#0x88]\n"
 330                  "LDR     R0, [SP,#4]\n"
 331                  "BL      sub_FFD0DE70\n"
 332                  "LDR     R3, [SP,#4]\n"
 333                  "ADD     R0, R3, #4\n"
 334                  "LDR     R1, [R3,#0x7C]\n"
 335                  "LDR     R2, [R3,#0x94]\n"
 336                  "MOV     LR, PC\n"
 337                  "LDR     PC, [R3,#0x90]\n"
 338                  "B       loc_FFD0FB24\n"
 339  "loc_FFD0F7D4:\n"
 340                  "SUB     R3, R2, #0xE\n"
 341                  "CMP     R3, #1\n"
 342                  "BHI     loc_FFD0F890\n"
 343                  "ADD     R6, SP, #0x14\n"
 344                  "ADD     R5, SP, #8\n"
 345                  "MOV     R0, R12\n"
 346                  "MOV     R1, R6\n"
 347                  "MOV     R2, R5\n"
 348                  "BL      sub_FFD0DF64\n"
 349                  "MOV     R4, R0\n"
 350                  "CMP     R4, #5\n"
 351                  "CMPNE   R4, #1\n"
 352                  "BNE     loc_FFD0F828\n"
 353                  "LDR     R12, [SP,#4]\n"
 354                  "MOV     R0, R5\n"
 355                  "LDR     R1, [R12,#0x7C]\n"
 356                  "MOV     R2, R4\n"
 357                  "LDR     R3, [R12,#0x8C]\n"
 358                  "MOV     LR, PC\n"
 359                  "LDR     PC, [R12,#0x88]\n"
 360                  "B       loc_FFD0F860\n"
 361  "loc_FFD0F828:\n"
 362                  "CMP     R4, #6\n"
 363                  "CMPNE   R4, #2\n"
 364                  "BNE     loc_FFD0F870\n"
 365                  "LDR     R12, [SP,#4]\n"
 366                  "MOV     R0, R5\n"
 367                  "MOV     R1, R8\n"
 368                  "MOV     R2, R4\n"
 369                  "LDR     R3, [R12,#0x8C]\n"
 370                  "MOV     LR, PC\n"
 371                  "LDR     PC, [R12,#0x88]\n"
 372                  "MOV     R1, R6\n"
 373                  "LDR     R0, [SP,#4]\n"
 374                  "MOV     R2, R5\n"
 375                  "BL      sub_FFD0F1FC\n"
 376  "loc_FFD0F860:\n"
 377                  "MOV     R1, R4\n"
 378                  "LDR     R0, [SP,#4]\n"
 379                  "BL      sub_FFD0F530\n"
 380                  "B       loc_FFD0FB24\n"
 381  "loc_FFD0F870:\n"
 382                  "LDR     R12, [SP,#4]\n"
 383                  "MOV     R2, R4\n"
 384                  "ADD     R0, R12, #4\n"
 385                  "LDR     R1, [R12,#0x7C]\n"
 386                  "LDR     R3, [R12,#0x8C]\n"
 387                  "MOV     LR, PC\n"
 388                  "LDR     PC, [R12,#0x88]\n"
 389                  "B       loc_FFD0FB24\n"
 390  "loc_FFD0F890:\n"
 391                  "SUB     R3, R2, #0x19\n"
 392                  "CMP     R3, #1\n"
 393                  "BHI     loc_FFD0F8E8\n"
 394                  "LDR     R1, [R12,#0x7C]\n"
 395                  "ADD     R1, R1, R1,LSL#1\n"
 396                  "ADD     R1, R12, R1,LSL#2\n"
 397                  "ADD     R6, SP, #0x14\n"
 398                  "SUB     R1, R1, #8\n"
 399                  "MOV     R2, #0xC\n"
 400                  "MOV     R0, R6\n"
 401                  "BL      sub_FFCC037C\n"
 402                  "LDR     R0, [SP,#4]\n"
 403                  "BL      sub_FFD0D050\n"
 404                  "LDR     R3, [SP,#4]\n"
 405                  "ADD     R0, R3, #4\n"
 406                  "LDR     R1, [R3,#0x7C]\n"
 407                  "LDR     R2, [R3,#0x8C]\n"
 408                  "MOV     LR, PC\n"
 409                  "LDR     PC, [R3,#0x88]\n"
 410                  "LDR     R0, [SP,#4]\n"
 411                  "BL      sub_FFD0D370\n"
 412                  "B       loc_FFD0FB24\n"
 413  "loc_FFD0F8E8:\n"
 414                  "ADD     R6, SP, #0x14\n"
 415                  "ADD     R1, R12, #4\n"
 416                  "MOV     R2, #0xC\n"
 417                  "MOV     R0, R6\n"
 418                  "BL      sub_FFCC037C\n"
 419                  "LDR     R12, [SP,#4]\n"
 420                  "LDR     R3, [R12]\n"
 421                  "MOV     R2, R12\n"
 422                  "CMP     R3, #0x1C\n"
 423                  "LDRLS   PC, [PC,R3,LSL#2]\n"
 424                  "B       loc_FFD0FB10\n"
 425                  ".long loc_FFD0F988\n"
 426                  ".long loc_FFD0F994\n"
 427                  ".long loc_FFD0F9A0\n"
 428                  ".long loc_FFD0F9A0\n"
 429                  ".long loc_FFD0F988\n"
 430                  ".long loc_FFD0F994\n"
 431                  ".long loc_FFD0F9A0\n"
 432                  ".long loc_FFD0F9A0\n"
 433                  ".long loc_FFD0F9C4\n"
 434                  ".long loc_FFD0F9C4\n"
 435                  ".long loc_FFD0FAE4\n"
 436                  ".long loc_FFD0FAF0\n"
 437                  ".long loc_FFD0FB00\n"
 438                  ".long loc_FFD0FB10\n"
 439                  ".long loc_FFD0FB10\n"
 440                  ".long loc_FFD0FB10\n"
 441                  ".long loc_FFD0F9AC\n"
 442                  ".long loc_FFD0F9B8\n"
 443                  ".long loc_FFD0F9D4\n"
 444                  ".long loc_FFD0F9E0\n"
 445                  ".long loc_FFD0FA18\n"
 446                  ".long loc_FFD0FA50\n"
 447                  ".long loc_FFD0FA88\n"
 448                  ".long loc_FFD0FAC0\n"
 449                  ".long loc_FFD0FAC0\n"
 450                  ".long loc_FFD0FB10\n"
 451                  ".long loc_FFD0FB10\n"
 452                  ".long loc_FFD0FACC\n"
 453                  ".long loc_FFD0FAD8\n"
 454  "loc_FFD0F988:\n"
 455                  "MOV     R0, R2\n"
 456                  "BL      sub_FFD0BA58\n"
 457                  "B       loc_FFD0FB0C\n"
 458  "loc_FFD0F994:\n"
 459                  "MOV     R0, R2\n"
 460                  "BL      sub_FFD0BCF8\n"
 461                  "B       loc_FFD0FB0C\n"
 462  "loc_FFD0F9A0:\n"
 463                  "MOV     R0, R2\n"
 464                  "BL      sub_FFD0BF6C\n"
 465                  "B       loc_FFD0FB0C\n"
 466  "loc_FFD0F9AC:\n"
 467                  "MOV     R0, R2\n"
 468                  "BL      sub_FFD0C264\n"
 469                  "B       loc_FFD0FB0C\n"
 470  "loc_FFD0F9B8:\n"
 471                  "MOV     R0, R2\n"
 472                  "BL      sub_FFD0C4C8\n"
 473                  "B       loc_FFD0FB0C\n"
 474  "loc_FFD0F9C4:\n"
 475                  "MOV     R0, R2\n"
 476                  "BL      sub_FFD0C6CC_my\n"  //------------->
 477                  "MOV     R8, #0\n"
 478                  "B       loc_FFD0FB0C\n"
 479  "loc_FFD0F9D4:\n"
 480                  "MOV     R0, R2\n"
 481                  "BL      sub_FFD0C82C\n"
 482                  "B       loc_FFD0FB0C\n"
 483  "loc_FFD0F9E0:\n"
 484                  "LDRH    R1, [R2,#4]\n"
 485                  "LDR     R3, =0x1C750\n"
 486                  "STRH    R1, [SP,#0x14]\n"
 487                  "LDRH    R1, [R3,#6]\n"
 488                  "STRH    R1, [SP,#0x1A]\n"
 489                  "LDRH    R1, [R3,#2]\n"
 490                  "STRH    R1, [SP,#0x16]\n"
 491                  "LDRH    R3, [R3,#4]\n"
 492                  "STRH    R3, [SP,#0x18]\n"
 493                  "MOV     R0, R2\n"
 494                  "LDRH    R2, [R2,#0xC]\n"
 495                  "STRH    R2, [SP,#0x1C]\n"
 496                  "BL      sub_FFD0CB24\n"
 497                  "B       loc_FFD0FB0C\n"
 498  "loc_FFD0FA18:\n"
 499                  "MOV     R0, R2\n"
 500                  "LDRH    R2, [R2,#4]\n"
 501                  "LDR     R3, =0x1C750\n"
 502                  "STRH    R2, [SP,#0x14]\n"
 503                  "LDRH    R2, [R3,#8]\n"
 504                  "STRH    R2, [SP,#0x1C]\n"
 505                  "LDRH    R1, [R3,#2]\n"
 506                  "STRH    R1, [SP,#0x16]\n"
 507                  "LDRH    R2, [R3,#4]\n"
 508                  "STRH    R2, [SP,#0x18]\n"
 509                  "LDRH    R3, [R3,#6]\n"
 510                  "STRH    R3, [SP,#0x1A]\n"
 511                  "BL      sub_FFD0CC48\n"
 512                  "B       loc_FFD0FB0C\n"
 513  "loc_FFD0FA50:\n"
 514                  "LDR     R3, =0x1C750\n"
 515                  "LDRH    R1, [R3]\n"
 516                  "STRH    R1, [SP,#0x14]\n"
 517                  "MOV     R0, R2\n"
 518                  "LDRH    R2, [R2,#6]\n"
 519                  "STRH    R2, [SP,#0x16]\n"
 520                  "LDRH    R2, [R3,#8]\n"
 521                  "STRH    R2, [SP,#0x1C]\n"
 522                  "LDRH    R1, [R3,#4]\n"
 523                  "STRH    R1, [SP,#0x18]\n"
 524                  "LDRH    R3, [R3,#6]\n"
 525                  "STRH    R3, [SP,#0x1A]\n"
 526                  "BL      sub_FFD0CD0C\n"
 527                  "B       loc_FFD0FB0C\n"
 528  "loc_FFD0FA88:\n"
 529                  "LDR     R3, =0x1C750\n"
 530                  "LDRH    R1, [R3,#6]\n"
 531                  "STRH    R1, [SP,#0x1A]\n"
 532                  "LDRH    R1, [R3]\n"
 533                  "STRH    R1, [SP,#0x14]\n"
 534                  "LDRH    R1, [R3,#2]\n"
 535                  "STRH    R1, [SP,#0x16]\n"
 536                  "LDRH    R3, [R3,#4]\n"
 537                  "STRH    R3, [SP,#0x18]\n"
 538                  "MOV     R0, R2\n"
 539                  "LDRH    R2, [R2,#0xC]\n"
 540                  "STRH    R2, [SP,#0x1C]\n"
 541                  "BL      sub_FFD0CDC4\n"
 542                  "B       loc_FFD0FB0C\n"
 543  "loc_FFD0FAC0:\n"
 544                  "MOV     R0, R2\n"
 545                  "BL      sub_FFD0CE70\n"
 546                  "B       loc_FFD0FB0C\n"
 547  "loc_FFD0FACC:\n"
 548                  "MOV     R0, R2\n"
 549                  "BL      sub_FFD0D4C0\n"
 550                  "B       loc_FFD0FB0C\n"
 551  "loc_FFD0FAD8:\n"
 552                  "MOV     R0, R2\n"
 553                  "BL      sub_FFD0D6BC\n"
 554                  "B       loc_FFD0FB0C\n"
 555  "loc_FFD0FAE4:\n"
 556                  "MOV     R0, R2\n"
 557                  "BL      sub_FFD0D878\n"
 558                  "B       loc_FFD0FB0C\n"
 559  "loc_FFD0FAF0:\n"
 560                  "MOV     R0, R2\n"
 561                  "MOV     R1, #0\n"
 562                  "BL      sub_FFD0DA60\n"
 563                  "B       loc_FFD0FB0C\n"
 564  "loc_FFD0FB00:\n"
 565                  "MOV     R0, R2\n"
 566                  "MOV     R1, #1\n"
 567                  "BL      sub_FFD0DA60\n"
 568  "loc_FFD0FB0C:\n"
 569                  "LDR     R12, [SP,#4]\n"
 570  "loc_FFD0FB10:\n"
 571                  "ADD     R0, R12, #4\n"
 572                  "LDR     R1, [R12,#0x7C]\n"
 573                  "LDR     R2, [R12,#0x8C]\n"
 574                  "MOV     LR, PC\n"
 575                  "LDR     PC, [R12,#0x88]\n"
 576  "loc_FFD0FB24:\n"
 577                  "CMP     R8, #1\n"
 578                  "BNE     loc_FFD0FB4C\n"
 579                  "LDR     R1, [SP,#4]\n"
 580                  "LDR     R3, [R1,#0x7C]\n"
 581                  "ADD     R3, R3, R3,LSL#1\n"
 582                  "ADD     R1, R1, R3,LSL#2\n"
 583                  "MOV     R0, R6\n"
 584                  "SUB     R1, R1, #8\n"
 585                  "BL      sub_FFD0B7D0\n"
 586                  "B       loc_FFD0FBC8\n"
 587  "loc_FFD0FB4C:\n"
 588                  "LDR     R3, [SP,#4]\n"
 589                  "LDR     R2, [R3]\n"
 590                  "CMP     R2, #9\n"
 591                  "BNE     loc_FFD0FB94\n"
 592                  "MOV     R4, #0\n"
 593                  "MOV     R1, #1\n"
 594                  "MOV     R2, R1\n"
 595                  "MOV     R3, R1\n"
 596                  "MOV     R0, R4\n"
 597                  "STR     R4, [SP]\n"
 598                  "BL      sub_FFD0B724\n"
 599                  "MOV     R1, #1\n"
 600                  "MOV     R0, R4\n"
 601                  "MOV     R2, R1\n"
 602                  "MOV     R3, R1\n"
 603                  "STR     R4, [SP]\n"
 604                  "BL      sub_FFD0B8AC\n"
 605                  "B       loc_FFD0FBC8\n"
 606  "loc_FFD0FB94:\n"
 607                  "MOV     R4, #1\n"
 608                  "MOV     R0, R4\n"
 609                  "MOV     R1, R4\n"
 610                  "MOV     R2, R4\n"
 611                  "MOV     R3, R4\n"
 612                  "STR     R4, [SP]\n"
 613                  "BL      sub_FFD0B724\n"
 614                  "MOV     R0, R4\n"
 615                  "MOV     R1, R0\n"
 616                  "MOV     R2, R0\n"
 617                  "MOV     R3, R0\n"
 618                  "STR     R4, [SP]\n"
 619                  "BL      sub_FFD0B8AC\n"
 620  "loc_FFD0FBC8:\n"
 621                  "LDR     R0, [SP,#4]\n"
 622                  "BL      sub_FFD0B268\n"
 623  "loc_FFD0FBD0:\n"
 624                  "LDR     R3, =0x1C744\n"
 625                  "MOV     R2, #0\n"
 626                  "LDR     R0, [R3]\n"
 627                  "MOV     R1, R7\n"
 628                  "BL      sub_FFE829FC\n"
 629                  "LDR     R12, [SP,#4]\n"
 630                  "LDR     R2, [R12]\n"
 631                  "CMP     R2, #0x23\n"
 632                  "BNE     loc_FFD0F6DC\n"
 633                  "MOV     R0, R12\n"
 634                  "BL      sub_FFD0B268\n"
 635                  "LDR     R3, =0x1C740\n"
 636                  "MOV     R1, #1\n"
 637                  "LDR     R0, [R3]\n"
 638                  "BL      sub_FFE822E4\n"
 639                  "BL      sub_FFE83FC0\n"
 640                  "ADD     SP, SP, #0x20\n"
 641                  "LDMFD   SP!, {R4-R8,PC}\n"
 642  );
 643 }
 644 
 645 void __attribute__((naked,noinline)) sub_FFD0C6CC_my(){
 646  asm volatile(
 647                  "STMFD   SP!, {R4-R6,LR}\n"
 648                  "LDR     R3, =0x1C740\n"
 649                  "MOV     R4, R0\n"
 650                  "MOV     R1, #0x3E\n"
 651                  "LDR     R0, [R3]\n"
 652                  "BL      sub_FFE82480\n"
 653                  "MOV     R1, #0\n"
 654                  "LDRSH   R0, [R4,#4]\n"
 655                  "BL      sub_FFD0B398\n"
 656                  "MOV     R6, R0\n"
 657                  "LDRSH   R0, [R4,#6]\n"
 658                  "BL      sub_FFD0B464\n"
 659                  "LDRSH   R0, [R4,#8]\n"
 660                  "BL      sub_FFD0B500\n"
 661                  "LDRSH   R0, [R4,#0xA]\n"
 662                  "BL      sub_FFD0B59C\n"
 663                  "LDRSH   R0, [R4,#0xC]\n"
 664                  "BL      sub_FFD0B638\n"
 665                  "LDR     R3, [R4]\n"
 666                  "CMP     R3, #9\n"
 667                  "MOV     R5, R0\n"
 668                  "MOVEQ   R5, #0\n"
 669                  "MOVEQ   R6, R5\n"
 670                  "CMP     R6, #1\n"
 671                  "BNE     loc_FFD0C750\n"
 672                  "MOV     R2, #2\n"
 673                  "LDRSH   R0, [R4,#4]\n"
 674                  "LDR     R1, =0xFFD0B2B8\n"
 675                  "BL      sub_FFE49ECC\n"
 676                  "LDR     R2, =0x1C780\n"
 677                  "MOV     R3, #0\n"
 678                  "STR     R3, [R2]\n"
 679                  "B       loc_FFD0C754\n"
 680  "loc_FFD0C750:\n"
 681                  "BL      sub_FFD0B6D4\n"
 682  "loc_FFD0C754:\n"
 683                  "STRH    R0, [R4,#4]\n"
 684                  "CMP     R5, #1\n"
 685                  "BNE     loc_FFD0C774\n"
 686                  "LDRSH   R0, [R4,#0xC]\n"
 687                  "LDR     R1, =0xFFD0B37C\n"
 688                  "MOV     R2, #0x20\n"
 689                  "BL      sub_FFD0B9F8\n"
 690                  "B       loc_FFD0C778\n"
 691  "loc_FFD0C774:\n"
 692                  "BL      sub_FFD0B714\n"
 693  "loc_FFD0C778:\n"
 694                  "STRH    R0, [R4,#0xC]\n"
 695                  "LDRSH   R0, [R4,#6]\n"
 696                  "BL      sub_FFCD8480_my\n"  //------------>
 697                  "LDRSH   R0, [R4,#8]\n"
 698                  "MOV     R1, #1\n"
 699                  "BL      sub_FFCDA734\n"
 700                  "ADD     R0, R4, #8\n"
 701                  "MOV     R1, #0\n"
 702                  "BL      sub_FFCDA7F4\n"
 703                  "LDRSH   R0, [R4,#0xE]\n"
 704                  "BL      sub_FFCFA050\n"
 705                  "CMP     R6, #1\n"
 706                  "BNE     loc_FFD0C7DC\n"
 707                  "LDR     R3, =0x1C740\n"
 708                  "MOV     R2, #0xBB0\n"
 709                  "LDR     R0, [R3]\n"
 710                  "MOV     R1, #2\n"
 711                  "ADD     R2, R2, #8\n"
 712                  "BL      sub_FFE822D4\n"
 713                  "TST     R0, #1\n"
 714                  "BEQ     loc_FFD0C7DC\n"
 715                  "MOV     R1, #0x460\n"
 716                  "LDR     R0, =0xFFD0B214\n"
 717                  "ADD     R1, R1, #2\n"
 718                  "BL      sub_FFE8FB40\n"
 719  "loc_FFD0C7DC:\n"
 720                  "CMP     R5, #1\n"
 721                  "LDMNEFD SP!, {R4-R6,PC}\n"
 722                  "LDR     R3, =0x1C740\n"
 723                  "MOV     R2, #0xBB0\n"
 724                  "LDR     R0, [R3]\n"
 725                  "MOV     R1, #0x20\n"
 726                  "ADD     R2, R2, #8\n"
 727                  "BL      sub_FFE822D4\n"
 728                  "TST     R0, #1\n"
 729                  "LDMEQFD SP!, {R4-R6,PC}\n"
 730                  "MOV     R1, #0x460\n"
 731                  "LDR     R0, =0xFFD0B214\n"
 732                  "ADD     R1, R1, #7\n"
 733                  "LDMFD   SP!, {R4-R6,LR}\n"
 734                  "B       sub_FFE8FB40\n"
 735  );
 736 }
 737 
 738 
 739 void __attribute__((naked,noinline)) sub_FFCD8480_my(){
 740  asm volatile(
 741                  "STMFD   SP!, {R4,LR}\n"
 742                  "LDR     R3, =0x5884\n"
 743                  "LDR     R2, [R3]\n"
 744                  "MOV     R1, #0x168\n"
 745                  "MOV     R3, R0,LSL#16\n"
 746                  "CMP     R2, #1\n"
 747                  "ADD     R1, R1, #3\n"
 748                  "LDR     R0, =0xFFCD7C9C\n"
 749                  "MOV     R4, R3,ASR#16\n"
 750                  "BEQ     loc_FFCD84AC\n"
 751                  "BL      sub_FFE8FB40\n"
 752  "loc_FFCD84AC:\n"
 753                  "MOV     R1, #0x170\n"
 754                  "CMN     R4, #0xC00\n"
 755                  "LDR     R3, =0x10356\n"
 756                  "LDR     R0, =0xFFCD7C9C\n"
 757                  "ADD     R1, R1, #1\n"
 758                  "LDREQSH R4, [R3]\n"
 759                  "LDRNE   R3, =0x10356\n"
 760                  "CMN     R4, #0xC00\n"
 761                  "STRH    R4, [R3]\n"
 762                  "BNE     loc_FFCD84D8\n"
 763                  "BL      sub_FFE8FB40\n"
 764  "loc_FFCD84D8:\n"
 765                  "MOV     R0, R4\n"
 766              //  "BL      sub_FFCD95D0\n"  // -
 767                  "BL      apex2us\n"       // +
 768                  "MOV     R4, R0\n"
 769                  "BL      sub_FFD5AB78\n"
 770                  "MOV     R0, R4\n"
 771                  "BL      sub_FFD6FF2C\n"
 772                  "MOV     R1, #0x174\n"
 773                  "TST     R0, #1\n"
 774                  "ADD     R1, R1, #2\n"
 775                  "LDR     R0, =0xFFCD7C9C\n"
 776                  "LDMEQFD SP!, {R4,PC}\n"
 777                  "LDMFD   SP!, {R4,LR}\n"
 778                  "B       sub_FFE8FB40\n"
 779  );
 780 }
 781 

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