root/tools/signatures_vxworks.h

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

INCLUDED FROM


   1 
   2 static FuncSig func_sig_AllocateUncacheableMemory_1[] = {
   3         {   1, 0xe0804040, 0xfdffffff }, // add:6:0xE2804040
   4         {   2, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
   5         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF48C
   6         {   4, 0xe1a02004, 0xfdffffff }, // mov:6:0xE1A02004
   7         {   5, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
   8         {   6, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
   9         {   8, 0xe1a00001, 0xfdffffff }, // mov:6:0xE3A00001
  10         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0ACADF
  11         {  11, 0xe0800020, 0xfdffffff }, // add:6:0xE2800020
  12         {  13, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
  13         {  14, 0xe0400020, 0xfdffffff }, // sub:6:0xE2400020
  14         {  15, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
  15         {  17, 0x049df004, 0xfdffffff }, // ldr:4:0x049DF004
  16         {  18, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
  17         {  19, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFF47F
  18         {  22, 0x00000064, 0xfdffffff }, // and:6:0x00000064
  19         {  24, 0x00632e65, 0xfdffffff }, // rsb:6:0x00632E65
  20         {  26, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
  21         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFE3
  22         {  28, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
  23         {  29, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
  24         {  30, 0xe59f0018, 0xfdffffff }, // ldr:4:0xE59F0018
  25         {  31, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000003
  26         { -1, -1, -1 },
  27         /* 23/32 */
  28 };
  29 
  30 static FuncSig func_sig_DeleteFile_Fut_1[] = {
  31         {   1, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
  32         {   2, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD2A
  33         {   3, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
  34         {   4, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
  35         {   5, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
  36         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEEE
  37         {   7, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
  38         {   8, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
  39         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD2E
  40         {  10, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
  41         { -1, -1, -1 },
  42         /* 10/12 */
  43 };
  44 
  45 static FuncSig func_sig_EnterToCompensationEVF_1[] = {
  46         {   0, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
  47         {   1, 0xe59f304c, 0xfdffffff }, // ldr:4:0xE59F304C
  48         {   2, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
  49         {   3, 0xe1a01e63, 0xfdffffff }, // mov:6:0xE3A01E63
  50         {   4, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
  51         {   5, 0xe0811008, 0xfdffffff }, // add:6:0xE2811008
  52         {   6, 0xe59f003c, 0xfdffffff }, // ldr:4:0xE59F003C
  53         {   7, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
  54         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFB3ADC
  55         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002935
  56         {  10, 0xe1a02002, 0xfdffffff }, // mov:6:0xE3A02002
  57         {  11, 0xe0801054, 0xfdffffff }, // add:6:0xE2801054
  58         {  12, 0xe1a0001a, 0xfdffffff }, // mov:6:0xE3A0001A
  59         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFB7C8D
  60         {  14, 0xe1a01e63, 0xfdffffff }, // mov:6:0xE3A01E63
  61         {  15, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
  62         {  16, 0xe0811009, 0xfdffffff }, // add:6:0xE2811009
  63         {  17, 0xe59f0010, 0xfdffffff }, // ldr:4:0xE59F0010
  64         {  18, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
  65         {  19, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFB3AD1
  66         {  20, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
  67         {  21, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0005CF
  68         {  22, 0x00006cac, 0xfdffffff }, // and:6:0x00006CAC
  69         {  24, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
  70         {  25, 0xe59f301c, 0xfdffffff }, // ldr:4:0xE59F301C
  71         {  26, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
  72         {  27, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
  73         {  28, 0xe59f0014, 0xfdffffff }, // ldr:4:0xE59F0014
  74         {  29, 0xe1a01d19, 0xfdffffff }, // mov:6:0xE3A01D19
  75         {  30, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
  76         {  31, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFB3AC5
  77         { -1, -1, -1 },
  78         /* 31/32 */
  79 };
  80 
  81 static FuncSig func_sig_ExecuteEventProcedure_1[] = {
  82         {   2, 0xe59f3088, 0xfdffffff }, // ldr:4:0xE59F3088
  83         {   3, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
  84         {   4, 0xe59fc084, 0xfdffffff }, // ldr:4:0xE59FC084
  85         {   5, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
  86         {   6, 0xe59d1010, 0xfdffffff }, // ldr:4:0xE59D1010
  87         {   7, 0xe1a0200d, 0xfdffffff }, // mov:6:0xE1A0200D
  88         {   8, 0xe58dc000, 0xfdffffff }, // str:4:0xE58DC000
  89         {   9, 0xe08d5014, 0xfdffffff }, // add:6:0xE28D5014
  90         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFE7D
  91         {  11, 0xe59f406c, 0xfdffffff }, // ldr:4:0xE59F406C
  92         {  12, 0xe1500019, 0xfdffffff }, // cmp:7:0xE3500019
  93         {  13, 0xe59f1068, 0xfdffffff }, // ldr:4:0xE59F1068
  94         {  14, 0xe59f2068, 0xfdffffff }, // ldr:4:0xE59F2068
  95         {  15, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
  96         {  16, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000005
  97         {  17, 0xe59d3010, 0xfdffffff }, // ldr:4:0xE59D3010
  98         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0ACBD0
  99         {  19, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 100         {  20, 0xe59f3054, 0xfdffffff }, // ldr:4:0xE59F3054
 101         {  21, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
 102         {  22, 0xe593f000, 0xfdffffff }, // ldr:4:0xE593F000
 103         {  23, 0xe59f304c, 0xfdffffff }, // ldr:4:0xE59F304C
 104         {  24, 0xe59d1010, 0xfdffffff }, // ldr:4:0xE59D1010
 105         {  25, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
 106         {  26, 0xe59f2044, 0xfdffffff }, // ldr:4:0xE59F2044
 107         {  27, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
 108         {  28, 0xe592f000, 0xfdffffff }, // ldr:4:0xE592F000
 109         {  29, 0xe59d3000, 0xfdffffff }, // ldr:4:0xE59D3000
 110         {  30, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 111         {  31, 0xe5931000, 0xfdffffff }, // ldr:4:0xE5931000
 112         { -1, -1, -1 },
 113         /* 30/32 */
 114 };
 115 
 116 static FuncSig func_sig_ExitFromCompensationEVF_1[] = {
 117         {   0, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 118         {   1, 0xe59f301c, 0xfdffffff }, // ldr:4:0xE59F301C
 119         {   2, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
 120         {   3, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
 121         {   4, 0xe59f0014, 0xfdffffff }, // ldr:4:0xE59F0014
 122         {   5, 0xe1a01d19, 0xfdffffff }, // mov:6:0xE3A01D19
 123         {   6, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
 124         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFB3AC5
 125         {   8, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
 126         {   9, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0005CE
 127         {  10, 0x00006cac, 0xfdffffff }, // and:6:0x00006CAC
 128         {  12, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 129         {  13, 0xe59f3020, 0xfdffffff }, // ldr:4:0xE59F3020
 130         {  14, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
 131         {  15, 0xe1a01d19, 0xfdffffff }, // mov:6:0xE3A01D19
 132         {  16, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
 133         {  17, 0xe59f0014, 0xfdffffff }, // ldr:4:0xE59F0014
 134         {  18, 0xe081100d, 0xfdffffff }, // add:6:0xE281100D
 135         {  19, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
 136         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFB3AB8
 137         {  21, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
 138         {  22, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0005CD
 139         {  23, 0x00006cac, 0xfdffffff }, // and:6:0x00006CAC
 140         {  25, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 141         {  26, 0xe59f3020, 0xfdffffff }, // ldr:4:0xE59F3020
 142         {  27, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
 143         {  28, 0xe1a01e65, 0xfdffffff }, // mov:6:0xE3A01E65
 144         {  29, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
 145         {  30, 0xe59f0014, 0xfdffffff }, // ldr:4:0xE59F0014
 146         {  31, 0xe0811008, 0xfdffffff }, // add:6:0xE2811008
 147         { -1, -1, -1 },
 148         /* 30/32 */
 149 };
 150 
 151 static FuncSig func_sig_Fclose_Fut_1[] = {
 152         {   1, 0xe0506000, 0xfdffffff }, // sub:6:0xE2506000
 153         {   2, 0xe04dd054, 0xfdffffff }, // sub:6:0xE24DD054
 154         {   4, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000030
 155         {   5, 0xe0864020, 0xfdffffff }, // add:6:0xE2864020
 156         {   6, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 157         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB098097
 158         {   8, 0xe1500020, 0xfdffffff }, // cmp:7:0xE3500020
 159         {   9, 0xd08d5030, 0xfdffffff }, // add:6:0xD28D5030
 160         {  10, 0xd1a08005, 0xfdffffff }, // mov:6:0xD1A08005
 161         {  11, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000003
 162         {  12, 0xe0800001, 0xfdffffff }, // add:6:0xE2800001
 163         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFEAFDD
 164         {  14, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 165         {  15, 0xe08d8030, 0xfdffffff }, // add:6:0xE28D8030
 166         {  16, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 167         {  17, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 168         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB098033
 169         {  19, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 170         {  20, 0xe5964008, 0xfdffffff }, // ldr:4:0xE5964008
 171         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCC7
 172         {  22, 0xe1a07000, 0xfdffffff }, // mov:6:0xE1A07000
 173         {  23, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 174         {  24, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000EEA
 175         {  25, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
 176         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001239
 177         {  27, 0xe1540000, 0xfdffffff }, // cmp:7:0xE3540000
 178         {  28, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 179         {  29, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A00000D
 180         {  30, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 181         {  31, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000EE3
 182         { -1, -1, -1 },
 183         /* 30/32 */
 184 };
 185 
 186 static FuncSig func_sig_Feof_Fut_1[] = {
 187         {   1, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 188         {   2, 0xe0840020, 0xfdffffff }, // add:6:0xE2840020
 189         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC52
 190         {   6, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 191         {   7, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 192         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0012CE
 193         {   9, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 194         {  10, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 195         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC57
 196         {  12, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 197         { -1, -1, -1 },
 198         /* 10/14 */
 199 };
 200 
 201 static FuncSig func_sig_Fflush_Fut_1[] = {
 202         {   1, 0xe0505000, 0xfdffffff }, // sub:6:0xE2505000
 203         {   2, 0xe04dd018, 0xfdffffff }, // sub:6:0xE24DD018
 204         {   3, 0xe0854020, 0xfdffffff }, // add:6:0xE2854020
 205         {   4, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 206         {   6, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000014
 207         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC42
 208         {   8, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
 209         {   9, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 210         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0012C4
 211         {  11, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 212         {  12, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 213         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000E62
 214         {  14, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 215         {  15, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
 216         {  16, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000CA7
 217         {  17, 0xe59d3004, 0xfdffffff }, // ldr:4:0xE59D3004
 218         {  18, 0xe1130010, 0xfdffffff }, // tst:7:0xE3130010
 219         {  20, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 220         {  21, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000002
 221         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000D9A
 222         {  23, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 223         {  24, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000E26
 224         {  25, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
 225         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC3A
 226         {  27, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 227         {  28, 0xe08dd018, 0xfdffffff }, // add:6:0xE28DD018
 228         {  30, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
 229         { -1, -1, -1 },
 230         /* 27/32 */
 231 };
 232 
 233 static FuncSig func_sig_Fgets_Fut_1[] = {
 234         {   1, 0xe0524000, 0xfdffffff }, // sub:6:0xE2524000
 235         {   2, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
 236         {   3, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
 237         {   4, 0xe0840020, 0xfdffffff }, // add:6:0xE2840020
 238         {   5, 0x01a00004, 0xfdffffff }, // mov:6:0x01A00004
 239         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC74
 240         {   8, 0xe1a01005, 0xfdffffff }, // mov:6:0xE1A01005
 241         {   9, 0xe1a02004, 0xfdffffff }, // mov:6:0xE1A02004
 242         {  10, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 243         {  11, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
 244         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001291
 245         {  13, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 246         {  14, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 247         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC77
 248         {  16, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 249         { -1, -1, -1 },
 250         /* 15/18 */
 251 };
 252 
 253 static FuncSig func_sig_Fopen_Fut_1[] = {
 254         {   1, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 255         {   2, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
 256         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCE8
 257         {   4, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
 258         {   5, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 259         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000F0B
 260         {   7, 0xe1a01005, 0xfdffffff }, // mov:6:0xE1A01005
 261         {   8, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 262         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001220
 263         {  10, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 264         {  11, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
 265         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCEA
 266         {  13, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 267         {  16, 0xe0506000, 0xfdffffff }, // sub:6:0xE2506000
 268         {  17, 0xe04dd054, 0xfdffffff }, // sub:6:0xE24DD054
 269         {  19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000030
 270         {  20, 0xe0864020, 0xfdffffff }, // add:6:0xE2864020
 271         {  21, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 272         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB098097
 273         {  23, 0xe1500020, 0xfdffffff }, // cmp:7:0xE3500020
 274         {  24, 0xd08d5030, 0xfdffffff }, // add:6:0xD28D5030
 275         {  25, 0xd1a08005, 0xfdffffff }, // mov:6:0xD1A08005
 276         {  26, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000003
 277         {  27, 0xe0800001, 0xfdffffff }, // add:6:0xE2800001
 278         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFEAFDD
 279         {  29, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 280         {  30, 0xe08d8030, 0xfdffffff }, // add:6:0xE28D8030
 281         {  31, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 282         { -1, -1, -1 },
 283         /* 28/32 */
 284 };
 285 
 286 static FuncSig func_sig_Fread_Fut_1[] = {
 287         {   1, 0xe0537000, 0xfdffffff }, // sub:6:0xE2537000
 288         {   2, 0xe1a08000, 0xfdffffff }, // mov:6:0xE1A08000
 289         {   3, 0xe1a04001, 0xfdffffff }, // mov:6:0xE1A04001
 290         {   4, 0xe0870020, 0xfdffffff }, // add:6:0xE2870020
 291         {   5, 0xe1a06002, 0xfdffffff }, // mov:6:0xE1A06002
 292         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC9B
 293         {   9, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 294         {  10, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 295         {  11, 0xe1a02006, 0xfdffffff }, // mov:6:0xE1A02006
 296         {  12, 0xe1a03007, 0xfdffffff }, // mov:6:0xE1A03007
 297         {  13, 0xe1a00008, 0xfdffffff }, // mov:6:0xE1A00008
 298         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001228
 299         {  15, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 300         {  16, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 301         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC9D
 302         {  18, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 303         {  21, 0xe0537000, 0xfdffffff }, // sub:6:0xE2537000
 304         {  22, 0xe1a08000, 0xfdffffff }, // mov:6:0xE1A08000
 305         {  23, 0xe1a04001, 0xfdffffff }, // mov:6:0xE1A04001
 306         {  24, 0xe0870020, 0xfdffffff }, // add:6:0xE2870020
 307         {  25, 0xe1a06002, 0xfdffffff }, // mov:6:0xE1A06002
 308         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC87
 309         {  29, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 310         {  30, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 311         {  31, 0xe1a02006, 0xfdffffff }, // mov:6:0xE1A02006
 312         { -1, -1, -1 },
 313         /* 25/32 */
 314 };
 315 
 316 static FuncSig func_sig_FreeUncacheableMemory_1[] = {
 317         {   0, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
 318         {   1, 0xe0400020, 0xfdffffff }, // sub:6:0xE2400020
 319         {   2, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 320         {   4, 0x049df004, 0xfdffffff }, // ldr:4:0x049DF004
 321         {   5, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
 322         {   6, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFF47F
 323         {   9, 0x00000064, 0xfdffffff }, // and:6:0x00000064
 324         {  11, 0x00632e65, 0xfdffffff }, // rsb:6:0x00632E65
 325         {  13, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 326         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFE3
 327         {  15, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 328         {  16, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 329         {  17, 0xe59f0018, 0xfdffffff }, // ldr:4:0xE59F0018
 330         {  18, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000003
 331         {  19, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0AD45E
 332         {  20, 0xe59f0010, 0xfdffffff }, // ldr:4:0xE59F0010
 333         {  21, 0xe1a01041, 0xfdffffff }, // mov:6:0xE3A01041
 334         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC59
 335         {  23, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 336         {  29, 0x00007061, 0xfdffffff }, // and:6:0x00007061
 337         {  31, 0xe0505000, 0xfdffffff }, // sub:6:0xE2505000
 338         { -1, -1, -1 },
 339         /* 21/32 */
 340 };
 341 
 342 static FuncSig func_sig_Fseek_Fut_1[] = {
 343         {   1, 0xe0507000, 0xfdffffff }, // sub:6:0xE2507000
 344         {   2, 0xe0870020, 0xfdffffff }, // add:6:0xE2870020
 345         {   3, 0xe1a04001, 0xfdffffff }, // mov:6:0xE1A04001
 346         {   4, 0xe1a06002, 0xfdffffff }, // mov:6:0xE1A06002
 347         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC62
 348         {   8, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 349         {   9, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 350         {  10, 0xe1a02006, 0xfdffffff }, // mov:6:0xE1A02006
 351         {  11, 0xe1a00007, 0xfdffffff }, // mov:6:0xE1A00007
 352         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0012C8
 353         {  13, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 354         {  14, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 355         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC65
 356         {  16, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 357         {  19, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 358         {  20, 0xe0840020, 0xfdffffff }, // add:6:0xE2840020
 359         {  23, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC52
 360         {  24, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 361         {  25, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 362         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0012CE
 363         {  27, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 364         {  28, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 365         {  29, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC57
 366         {  30, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 367         { -1, -1, -1 },
 368         /* 24/32 */
 369 };
 370 
 371 static FuncSig func_sig_Fwrite_Fut_1[] = {
 372         {   1, 0xe0537000, 0xfdffffff }, // sub:6:0xE2537000
 373         {   2, 0xe1a08000, 0xfdffffff }, // mov:6:0xE1A08000
 374         {   3, 0xe1a04001, 0xfdffffff }, // mov:6:0xE1A04001
 375         {   4, 0xe0870020, 0xfdffffff }, // add:6:0xE2870020
 376         {   5, 0xe1a06002, 0xfdffffff }, // mov:6:0xE1A06002
 377         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC87
 378         {   9, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 379         {  10, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 380         {  11, 0xe1a02006, 0xfdffffff }, // mov:6:0xE1A02006
 381         {  12, 0xe1a03007, 0xfdffffff }, // mov:6:0xE1A03007
 382         {  13, 0xe1a00008, 0xfdffffff }, // mov:6:0xE1A00008
 383         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001264
 384         {  15, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 385         {  16, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 386         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC89
 387         {  18, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 388         {  21, 0xe0524000, 0xfdffffff }, // sub:6:0xE2524000
 389         {  22, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
 390         {  23, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
 391         {  24, 0xe0840020, 0xfdffffff }, // add:6:0xE2840020
 392         {  25, 0x01a00004, 0xfdffffff }, // mov:6:0x01A00004
 393         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC74
 394         {  28, 0xe1a01005, 0xfdffffff }, // mov:6:0xE1A01005
 395         {  29, 0xe1a02004, 0xfdffffff }, // mov:6:0xE1A02004
 396         {  30, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 397         {  31, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
 398         { -1, -1, -1 },
 399         /* 26/32 */
 400 };
 401 
 402 static FuncSig func_sig_GetCurrentTargetDistance_1[] = {
 403         {   0, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 404         {   1, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFCC4A
 405         {   2, 0xe1a00800, 0xfdffffff }, // mov:6:0xE1A00800
 406         {   3, 0xe1a00820, 0xfdffffff }, // mov:6:0xE1A00820
 407         {   4, 0xe49df004, 0xfdffffff }, // ldr:4:0xE49DF004
 408         {   6, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
 409         {   7, 0xe1a03000, 0xfdffffff }, // mov:6:0xE3A03000
 410         {   8, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 411         {   9, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
 412         {  10, 0xe08d0002, 0xfdffffff }, // add:6:0xE28D0002
 413         {  11, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
 414         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFCD7E
 415         {  19, 0xe08dd004, 0xfdffffff }, // add:6:0xE28DD004
 416         {  21, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
 417         { -1, -1, -1 },
 418         /* 14/32 */
 419 };
 420 
 421 static FuncSig func_sig_GetDrive_ClusterSize_1[] = {
 422         {   1, 0xe1a01e43, 0xfdffffff }, // mov:6:0xE3A01E43
 423         {   2, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 424         {   3, 0xe081100d, 0xfdffffff }, // add:6:0xE281100D
 425         {   4, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
 426         {   5, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
 427         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE9EF2
 428         {   7, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
 429         {   8, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
 430         {   9, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
 431         {  10, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
 432         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0005E4
 433         {  14, 0x0002e05c, 0xfdffffff }, // and:6:0x0002E05C
 434         {  16, 0xe1a01d11, 0xfdffffff }, // mov:6:0xE3A01D11
 435         {  17, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 436         {  18, 0xe081100e, 0xfdffffff }, // add:6:0xE281100E
 437         {  19, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
 438         {  20, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
 439         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE9EE3
 440         {  22, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
 441         {  23, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
 442         {  24, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
 443         {  25, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
 444         {  27, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0005D9
 445         {  29, 0x0002e05c, 0xfdffffff }, // and:6:0x0002E05C
 446         {  31, 0xe1a01e45, 0xfdffffff }, // mov:6:0xE3A01E45
 447         { -1, -1, -1 },
 448         /* 25/32 */
 449 };
 450 
 451 static FuncSig func_sig_GetDrive_FreeClusters_1[] = {
 452         {   1, 0xe1a01e45, 0xfdffffff }, // mov:6:0xE3A01E45
 453         {   2, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 454         {   3, 0xe0811007, 0xfdffffff }, // add:6:0xE2811007
 455         {   4, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
 456         {   5, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
 457         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE9ED4
 458         {   7, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
 459         {   8, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
 460         {   9, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
 461         {  10, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
 462         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0005CF
 463         {  14, 0x0002e05c, 0xfdffffff }, // and:6:0x0002E05C
 464         {  16, 0xe1a01e46, 0xfdffffff }, // mov:6:0xE3A01E46
 465         {  17, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 466         {  18, 0xe0811008, 0xfdffffff }, // add:6:0xE2811008
 467         {  19, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
 468         {  20, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
 469         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE9EC5
 470         {  22, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
 471         {  23, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
 472         {  24, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
 473         {  25, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
 474         {  27, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0005C4
 475         {  29, 0x0002e05c, 0xfdffffff }, // and:6:0x0002E05C
 476         {  31, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 477         { -1, -1, -1 },
 478         /* 25/32 */
 479 };
 480 
 481 static FuncSig func_sig_GetDrive_TotalClusters_1[] = {
 482         {   1, 0xe1a01d11, 0xfdffffff }, // mov:6:0xE3A01D11
 483         {   2, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 484         {   3, 0xe081100e, 0xfdffffff }, // add:6:0xE281100E
 485         {   4, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
 486         {   5, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
 487         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE9EE3
 488         {   7, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
 489         {   8, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
 490         {   9, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
 491         {  10, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
 492         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0005D9
 493         {  14, 0x0002e05c, 0xfdffffff }, // and:6:0x0002E05C
 494         {  16, 0xe1a01e45, 0xfdffffff }, // mov:6:0xE3A01E45
 495         {  17, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
 496         {  18, 0xe0811007, 0xfdffffff }, // add:6:0xE2811007
 497         {  19, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
 498         {  20, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
 499         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE9ED4
 500         {  22, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
 501         {  23, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
 502         {  24, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
 503         {  25, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
 504         {  27, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0005CF
 505         {  29, 0x0002e05c, 0xfdffffff }, // and:6:0x0002E05C
 506         {  31, 0xe1a01e46, 0xfdffffff }, // mov:6:0xE3A01E46
 507         { -1, -1, -1 },
 508         /* 25/32 */
 509 };
 510 
 511 static FuncSig func_sig_GetFocusLensSubjectDistance_1[] = {
 512         {   0, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 513         {   1, 0xe59f3034, 0xfdffffff }, // ldr:4:0xE59F3034
 514         {   2, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
 515         {   3, 0xe1a01f62, 0xfdffffff }, // mov:6:0xE3A01F62
 516         {   4, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
 517         {   5, 0xe59f0028, 0xfdffffff }, // ldr:4:0xE59F0028
 518         {   6, 0xe0811003, 0xfdffffff }, // add:6:0xE2811003
 519         {   7, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
 520         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF674AE
 521         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF1C0
 522         {  10, 0xe1a00800, 0xfdffffff }, // mov:6:0xE1A00800
 523         {  11, 0xe1a00840, 0xfdffffff }, // mov:6:0xE1A00840
 524         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00004B
 525         {  13, 0xe1a00800, 0xfdffffff }, // mov:6:0xE1A00800
 526         {  14, 0xe1a00820, 0xfdffffff }, // mov:6:0xE1A00820
 527         {  15, 0xe49df004, 0xfdffffff }, // ldr:4:0xE49DF004
 528         {  16, 0x0000abbc, 0xfdffffff }, // and:6:0x0000ABBC
 529         {  18, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 530         {  19, 0xe59f3054, 0xfdffffff }, // ldr:4:0xE59F3054
 531         {  20, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
 532         {  21, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
 533         {  22, 0xe1a01f66, 0xfdffffff }, // mov:6:0xE3A01F66
 534         {  23, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
 535         {  24, 0xe59f0044, 0xfdffffff }, // ldr:4:0xE59F0044
 536         {  25, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
 537         {  26, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
 538         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF6749B
 539         {  28, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
 540         {  29, 0xe08d0002, 0xfdffffff }, // add:6:0xE28D0002
 541         {  30, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
 542         {  31, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFAF0B
 543         { -1, -1, -1 },
 544         /* 31/32 */
 545 };
 546 
 547 static FuncSig func_sig_GetParameterData_1[] = {
 548         {   1, 0xe59f30a8, 0xfdffffff }, // ldr:4:0xE59F30A8
 549         {   2, 0xe593c000, 0xfdffffff }, // ldr:4:0xE593C000
 550         {   3, 0xe1a02802, 0xfdffffff }, // mov:6:0xE1A02802
 551         {   4, 0xe1a03800, 0xfdffffff }, // mov:6:0xE1A03800
 552         {   5, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
 553         {   6, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
 554         {   7, 0xe1a01fe7, 0xfdffffff }, // mov:6:0xE3A01FE7
 555         {   8, 0xe59f7090, 0xfdffffff }, // ldr:4:0xE59F7090
 556         {   9, 0xe59f0090, 0xfdffffff }, // ldr:4:0xE59F0090
 557         {  10, 0xe0811003, 0xfdffffff }, // add:6:0xE2811003
 558         {  11, 0xe1a04843, 0xfdffffff }, // mov:6:0xE1A04843
 559         {  12, 0xe1a05842, 0xfdffffff }, // mov:6:0xE1A05842
 560         {  13, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
 561         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAD5E5
 562         {  15, 0xe1a02804, 0xfdffffff }, // mov:6:0xE1A02804
 563         {  16, 0xe1a03822, 0xfdffffff }, // mov:6:0xE1A03822
 564         {  18, 0xe1a01fe7, 0xfdffffff }, // mov:6:0xE3A01FE7
 565         {  19, 0xe1a04804, 0xfdffffff }, // mov:6:0xE1A04804
 566         {  20, 0xe1120101, 0xfdffffff }, // tst:7:0xE3120101
 567         {  21, 0xe59f0060, 0xfdffffff }, // ldr:4:0xE59F0060
 568         {  22, 0xe0811003, 0xfdffffff }, // add:6:0xE2811003
 569         {  23, 0xe1a04824, 0xfdffffff }, // mov:6:0xE1A04824
 570         {  24, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
 571         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAD5DA
 572         {  26, 0xe1a01fe7, 0xfdffffff }, // mov:6:0xE3A01FE7
 573         {  27, 0xe154005d, 0xfdffffff }, // cmp:7:0xE354005D
 574         {  28, 0xe59f0044, 0xfdffffff }, // ldr:4:0xE59F0044
 575         {  29, 0xe0811003, 0xfdffffff }, // add:6:0xE2811003
 576         {  30, 0x9a000000, 0xff000000 }, // b, bl:3:0x9A000000
 577         {  31, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAD5D4
 578         { -1, -1, -1 },
 579         /* 30/32 */
 580 };
 581 
 582 static FuncSig func_sig_GetPropertyCase_1[] = {
 583         {   1, 0xe59f3064, 0xfdffffff }, // ldr:4:0xE59F3064
 584         {   2, 0xe593c000, 0xfdffffff }, // ldr:4:0xE593C000
 585         {   3, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
 586         {   4, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
 587         {   5, 0xe1a01e11, 0xfdffffff }, // mov:6:0xE3A01E11
 588         {   6, 0xe1a07000, 0xfdffffff }, // mov:6:0xE1A07000
 589         {   7, 0xe59f5050, 0xfdffffff }, // ldr:4:0xE59F5050
 590         {   8, 0xe59f0050, 0xfdffffff }, // ldr:4:0xE59F0050
 591         {   9, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
 592         {  10, 0xe1a04002, 0xfdffffff }, // mov:6:0xE1A04002
 593         {  11, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
 594         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFBE3C
 595         {  13, 0xe5953000, 0xfdffffff }, // ldr:4:0xE5953000
 596         {  14, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
 597         {  15, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
 598         {  16, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF29C
 599         {  17, 0xe1a03004, 0xfdffffff }, // mov:6:0xE1A03004
 600         {  18, 0xe1a01007, 0xfdffffff }, // mov:6:0xE1A01007
 601         {  19, 0xe1a02006, 0xfdffffff }, // mov:6:0xE1A02006
 602         {  20, 0xe5950000, 0xfdffffff }, // ldr:4:0xE5950000
 603         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFC3
 604         {  22, 0xe5953000, 0xfdffffff }, // ldr:4:0xE5953000
 605         {  23, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 606         {  24, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
 607         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF30D
 608         { -1, -1, -1 },
 609         /* 25/26 */
 610 };
 611 
 612 static FuncSig func_sig_GetSystemTime_1[] = {
 613         {   1, 0xe59f6030, 0xfdffffff }, // ldr:4:0xE59F6030
 614         {   2, 0xe5965000, 0xfdffffff }, // ldr:4:0xE5965000
 615         {   3, 0xe1550000, 0xfdffffff }, // cmp:7:0xE3550000
 616         {   4, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 617         {   5, 0xe1a00017, 0xfdffffff }, // mov:6:0xE3A00017
 618         {   6, 0x11a03000, 0xfdffffff }, // mov:6:0x13A03000
 619         {   7, 0x15843000, 0xfdffffff }, // str:4:0x15843000
 620         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002C50
 621         {  10, 0xe5963008, 0xfdffffff }, // ldr:4:0xE5963008
 622         {  11, 0xe5843000, 0xfdffffff }, // str:4:0xE5843000
 623         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002C50
 624         {  13, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 625         {  15, 0x00001d34, 0xfdffffff }, // and:6:0x00001D34
 626         {  17, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 627         {  18, 0xe1a07002, 0xfdffffff }, // mov:6:0xE1A07002
 628         {  19, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
 629         {  20, 0xe1a08003, 0xfdffffff }, // mov:6:0xE1A08003
 630         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002C44
 631         {  22, 0xe085e014, 0xfdffffff }, // add:6:0xE285E014
 632         {  23, 0xe59e2004, 0xfdffffff }, // ldr:4:0xE59E2004
 633         {  24, 0xe085c014, 0xfdffffff }, // add:6:0xE285C014
 634         {  25, 0xe152000c, 0xfdffffff }, // cmp:7:0xE152000C
 635         {  26, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
 636         {  27, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000002
 637         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002C40
 638         {  29, 0xe1a00005, 0xfdffffff }, // mov:6:0xE3A00005
 639         {  31, 0xe1a00002, 0xfdffffff }, // mov:6:0xE1A00002
 640         { -1, -1, -1 },
 641         /* 27/32 */
 642 };
 643 
 644 static FuncSig func_sig_IsStrobeChargeCompleted_1[] = {
 645         {   1, 0xe59f3060, 0xfdffffff }, // ldr:4:0xE59F3060
 646         {   2, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
 647         {   3, 0xe1a04000, 0xfdffffff }, // mov:6:0xE3A04000
 648         {   4, 0xe59f5058, 0xfdffffff }, // ldr:4:0xE59F5058
 649         {   5, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
 650         {   6, 0xe1a02004, 0xfdffffff }, // mov:6:0xE1A02004
 651         {   7, 0xe1a01005, 0xfdffffff }, // mov:6:0xE3A01005
 652         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFC9199
 653         {   9, 0xe1a01003, 0xfdffffff }, // mov:6:0xE3A01003
 654         {  10, 0xe5950000, 0xfdffffff }, // ldr:4:0xE5950000
 655         {  11, 0xe1a02f7d, 0xfdffffff }, // mov:6:0xE3A02F7D
 656         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFC8E9B
 657         {  13, 0xe1500004, 0xfdffffff }, // cmp:7:0xE1500004
 658         {  14, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
 659         {  15, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000006
 660         {  16, 0xe5950000, 0xfdffffff }, // ldr:4:0xE5950000
 661         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFC8F19
 662         {  18, 0xe5950000, 0xfdffffff }, // ldr:4:0xE5950000
 663         {  19, 0xe1a01003, 0xfdffffff }, // mov:6:0xE3A01003
 664         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFC8F02
 665         {  21, 0xe59d3000, 0xfdffffff }, // ldr:4:0xE59D3000
 666         {  22, 0xe0034001, 0xfdffffff }, // and:6:0xE2034001
 667         {  23, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 668         {  24, 0xe08dd004, 0xfdffffff }, // add:6:0xE28DD004
 669         {  26, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
 670         { -1, -1, -1 },
 671         /* 25/32 */
 672 };
 673 
 674 static FuncSig func_sig_MakeAFScan_1[] = {
 675         {   1, 0xe59f38ac, 0xfdffffff }, // ldr:4:0xE59F38AC
 676         {   2, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
 677         {   3, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
 678         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFB60A5
 679         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001F1A
 680         {   7, 0xe5903090, 0xfdffffff }, // ldr:4:0xE5903090
 681         {   8, 0xe1a07000, 0xfdffffff }, // mov:6:0xE3A07000
 682         {   9, 0xe1530000, 0xfdffffff }, // cmp:7:0xE3530000
 683         {  10, 0xe1a03001, 0xfdffffff }, // mov:6:0xE3A03001
 684         {  11, 0xe58d3000, 0xfdffffff }, // str:4:0xE58D3000
 685         {  12, 0xe1a05007, 0xfdffffff }, // mov:6:0xE1A05007
 686         {  13, 0xe1a0b003, 0xfdffffff }, // mov:6:0xE1A0B003
 687         {  14, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000002
 688         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFAB
 689         {  16, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
 690         {  17, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A0001DE
 691         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001F0E
 692         {  20, 0xe1530005, 0xfdffffff }, // cmp:7:0xE3530005
 693         {  21, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000F
 694         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB015C5C
 695         {  23, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
 696         {  24, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000C
 697         {  25, 0xe59f3850, 0xfdffffff }, // ldr:4:0xE59F3850
 698         {  26, 0xe5933000, 0xfdffffff }, // ldr:4:0xE5933000
 699         {  27, 0xe1530003, 0xfdffffff }, // cmp:7:0xE3530003
 700         {  28, 0x11530001, 0xfdffffff }, // cmp:7:0x13530001
 701         {  29, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000005
 702         {  30, 0xe1530004, 0xfdffffff }, // cmp:7:0xE3530004
 703         {  31, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000003
 704         { -1, -1, -1 },
 705         /* 29/32 */
 706 };
 707 
 708 static FuncSig func_sig_MakeDirectory_Fut_1[] = {
 709         {   1, 0xe1a04001, 0xfdffffff }, // mov:6:0xE1A04001
 710         {   2, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 711         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD06
 712         {   4, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
 713         {   5, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
 714         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD0A
 715         {   7, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 716         {   8, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 717         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEE6
 718         {  10, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 719         {  11, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
 720         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD08
 721         {  13, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 722         {  16, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 723         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCF8
 724         {  18, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 725         {  19, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 726         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEFF
 727         {  21, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 728         {  22, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 729         {  23, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCFD
 730         {  24, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 731         {  26, 0xe59f3004, 0xfdffffff }, // ldr:4:0xE59F3004
 732         {  27, 0xe5930100, 0xfdffffff }, // ldr:4:0xE7930100
 733         {  28, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
 734         { -1, -1, -1 },
 735         /* 25/32 */
 736 };
 737 
 738 static FuncSig func_sig_Mount_FileSystem_1[] = {
 739         {   1, 0xe1a05000, 0xfdffffff }, // mov:6:0xE3A05000
 740         {   2, 0xe59f6064, 0xfdffffff }, // ldr:4:0xE59F6064
 741         {   3, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 742         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFE88
 743         {   5, 0xe5960038, 0xfdffffff }, // ldr:4:0xE5960038
 744         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC42
 745         {   7, 0xe0501000, 0xfdffffff }, // sub:6:0xE2501000
 746         {   8, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 747         {   9, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000005
 748         {  10, 0xe59f3048, 0xfdffffff }, // ldr:4:0xE59F3048
 749         {  11, 0xe59f2048, 0xfdffffff }, // ldr:4:0xE59F2048
 750         {  12, 0xe5831000, 0xfdffffff }, // str:4:0xE5831000
 751         {  13, 0xe59f3044, 0xfdffffff }, // ldr:4:0xE59F3044
 752         {  14, 0xe5821000, 0xfdffffff }, // str:4:0xE5821000
 753         {  15, 0xe5831000, 0xfdffffff }, // str:4:0xE5831000
 754         {  16, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFE90
 755         {  17, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 756         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF58
 757         {  19, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 758         {  20, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 759         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF77
 760         {  22, 0xe0044000, 0xfdffffff }, // and:6:0xE0044000
 761         {  23, 0xe1a02004, 0xfdffffff }, // mov:6:0xE1A02004
 762         {  24, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
 763         {  25, 0xe596103c, 0xfdffffff }, // ldr:4:0xE596103C
 764         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFD0
 765         {  27, 0xe5860040, 0xfdffffff }, // str:4:0xE5860040
 766         {  29, 0x0002e008, 0xfdffffff }, // and:6:0x0002E008
 767         {  30, 0x00002830, 0xfdffffff }, // and:6:0x00002830
 768         {  31, 0x00002828, 0xfdffffff }, // and:6:0x00002828
 769         { -1, -1, -1 },
 770         /* 30/32 */
 771 };
 772 
 773 static FuncSig func_sig_PT_PlaySound_1[] = {
 774         {   0, 0xe1a00800, 0xfdffffff }, // mov:6:0xE1A00800
 775         {   1, 0xe1a00820, 0xfdffffff }, // mov:6:0xE1A00820
 776         {   2, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 777         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB01DE63
 778         {   4, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
 779         {   5, 0xe49df004, 0xfdffffff }, // ldr:4:0xE49DF004
 780         {   7, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
 781         {   8, 0xe04dd00c, 0xfdffffff }, // sub:6:0xE24DD00C
 782         {   9, 0xe1a06002, 0xfdffffff }, // mov:6:0xE1A06002
 783         {  10, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 784         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB007BAC
 785         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0069F6
 786         {  13, 0xe59f7070, 0xfdffffff }, // ldr:4:0xE59F7070
 787         {  14, 0xe5870000, 0xfdffffff }, // str:4:0xE5870000
 788         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB006179
 789         {  16, 0xe00550ff, 0xfdffffff }, // and:6:0xE20550FF
 790         {  17, 0xe00660ff, 0xfdffffff }, // and:6:0xE20660FF
 791         {  20, 0xe00440ff, 0xfdffffff }, // and:6:0xE20440FF
 792         {  22, 0xe1a0c0ff, 0xfdffffff }, // mov:6:0xE3A0C0FF
 793         {  26, 0xe1a0200c, 0xfdffffff }, // mov:6:0xE1A0200C
 794         {  27, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
 795         {  28, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 796         {  29, 0xe58de000, 0xfdffffff }, // str:4:0xE58DE000
 797         {  30, 0xe58d5004, 0xfdffffff }, // str:4:0xE58D5004
 798         { -1, -1, -1 },
 799         /* 24/32 */
 800 };
 801 
 802 static FuncSig func_sig_PutInNdFilter_1[] = {
 803         {   1, 0xe59f4028, 0xfdffffff }, // ldr:4:0xE59F4028
 804         {   2, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
 805         {   3, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
 806         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF678C5
 807         {   5, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
 808         {   6, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
 809         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000006
 810         {   8, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
 811         {   9, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
 812         {  10, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
 813         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEAF6784E
 814         {  13, 0x0000b0bc, 0xfdffffff }, // and:6:0x0000B0BC
 815         {  15, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 816         {  16, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
 817         {  17, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFBA05
 818         {  19, 0xe59f4028, 0xfdffffff }, // ldr:4:0xE59F4028
 819         {  20, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
 820         {  21, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
 821         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF678B3
 822         {  23, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
 823         {  24, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
 824         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000006
 825         {  26, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
 826         {  27, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
 827         {  28, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
 828         {  30, 0xea000000, 0xff000000 }, // b, bl:3:0xEAF6783C
 829         {  31, 0x0000b0bc, 0xfdffffff }, // and:6:0x0000B0BC
 830         { -1, -1, -1 },
 831         /* 27/32 */
 832 };
 833 
 834 static FuncSig func_sig_PutOutNdFilter_1[] = {
 835         {   1, 0xe59f4028, 0xfdffffff }, // ldr:4:0xE59F4028
 836         {   2, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
 837         {   3, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
 838         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF678B3
 839         {   5, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
 840         {   6, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
 841         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000006
 842         {   8, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
 843         {   9, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
 844         {  10, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
 845         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEAF6783C
 846         {  13, 0x0000b0bc, 0xfdffffff }, // and:6:0x0000B0BC
 847         {  15, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 848         {  16, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
 849         {  17, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFB9FA
 850         {  24, 0x00000000, 0xfdffffff }, // and:6:0x00000000
 851         {  28, 0x00000072, 0xfdffffff }, // and:6:0x00000072
 852         { -1, -1, -1 },
 853         /* 17/32 */
 854 };
 855 
 856 static FuncSig func_sig_RenameFile_Fut_1[] = {
 857         {   1, 0xe1a04001, 0xfdffffff }, // mov:6:0xE1A04001
 858         {   2, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 859         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD49
 860         {   4, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
 861         {   5, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
 862         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD4D
 863         {   7, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 864         {   8, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 865         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEE2
 866         {  10, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 867         {  11, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
 868         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD4B
 869         {  13, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 870         {  16, 0xe1a04001, 0xfdffffff }, // mov:6:0xE1A04001
 871         {  17, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 872         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD3A
 873         {  19, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 874         {  20, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
 875         {  21, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 876         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000DA4
 877         {  23, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 878         {  24, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
 879         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD3E
 880         {  26, 0xe0144001, 0xfdffffff }, // and:6:0xE2144001
 881         {  27, 0xe1a00342, 0xfdffffff }, // mov:6:0xE3A00342
 882         {  28, 0xe0800505, 0xfdffffff }, // add:6:0xE2800505
 883         {  30, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 884         { -1, -1, -1 },
 885         /* 27/32 */
 886 };
 887 
 888 static FuncSig func_sig_Restart_1[] = {
 889         {   1, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 890         {   2, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB082DFA
 891         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB016901
 892         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000255
 893         {   5, 0xe59f00d8, 0xfdffffff }, // ldr:4:0xE59F00D8
 894         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0A9CAE
 895         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002373
 896         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00185E
 897         {   9, 0xe1a00003, 0xfdffffff }, // mov:6:0xE3A00003
 898         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF14D
 899         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFA10
 900         {  16, 0xe59f20b4, 0xfdffffff }, // ldr:4:0xE59F20B4
 901         {  18, 0xe582110c, 0xfdffffff }, // str:4:0xE582110C
 902         {  19, 0xe582100c, 0xfdffffff }, // str:4:0xE582100C
 903         {  20, 0xe582101c, 0xfdffffff }, // str:4:0xE582101C
 904         {  21, 0xe582102c, 0xfdffffff }, // str:4:0xE582102C
 905         {  22, 0xe582103c, 0xfdffffff }, // str:4:0xE582103C
 906         {  23, 0xe582104c, 0xfdffffff }, // str:4:0xE582104C
 907         {  24, 0xe582105c, 0xfdffffff }, // str:4:0xE582105C
 908         {  25, 0xe582106c, 0xfdffffff }, // str:4:0xE582106C
 909         {  26, 0xe582107c, 0xfdffffff }, // str:4:0xE582107C
 910         {  27, 0xe582108c, 0xfdffffff }, // str:4:0xE582108C
 911         {  28, 0xe582109c, 0xfdffffff }, // str:4:0xE582109C
 912         {  29, 0xe58210ac, 0xfdffffff }, // str:4:0xE58210AC
 913         {  30, 0xe58210bc, 0xfdffffff }, // str:4:0xE58210BC
 914         {  31, 0xe58210cc, 0xfdffffff }, // str:4:0xE58210CC
 915         { -1, -1, -1 },
 916         /* 26/32 */
 917 };
 918 
 919 static FuncSig func_sig_SetCurrentCaptureModeType_1[] = {
 920         {   0, 0xe59f3040, 0xfdffffff }, // ldr:4:0xE59F3040
 921         {   1, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
 922         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFDE36
 923         {   4, 0xe1a03902, 0xfdffffff }, // mov:6:0xE3A03902
 924         {   5, 0xe0833002, 0xfdffffff }, // add:6:0xE2833002
 925         {   6, 0xe1500003, 0xfdffffff }, // cmp:7:0xE1500003
 926         {   7, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000004
 927         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFDE31
 928         {   9, 0xe1a03902, 0xfdffffff }, // mov:6:0xE3A03902
 929         {  10, 0xe0833020, 0xfdffffff }, // add:6:0xE2833020
 930         {  11, 0xe1500003, 0xfdffffff }, // cmp:7:0xE1500003
 931         {  12, 0x149df004, 0xfdffffff }, // ldr:4:0x149DF004
 932         {  13, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
 933         {  14, 0xe1a03002, 0xfdffffff }, // mov:6:0xE3A03002
 934         {  15, 0xe5823000, 0xfdffffff }, // str:4:0xE5823000
 935         { -1, -1, -1 },
 936         /* 15/16 */
 937 };
 938 
 939 static FuncSig func_sig_SetFileAttributes_1[] = {
 940         {   0, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
 941         {   1, 0xe1a01023, 0xfdffffff }, // mov:6:0xE3A01023
 942         {   3, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 943         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB097DB0
 944         {   5, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 945         {   6, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 946         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0001CE
 947         {   8, 0xe1550000, 0xfdffffff }, // cmp:7:0xE3550000
 948         {   9, 0x11a00000, 0xfdffffff }, // mov:6:0x13A00000
 949         {  10, 0x01a00001, 0xfdffffff }, // mov:6:0x03A00001
 950         {  13, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
 951         {  14, 0xe1a0500d, 0xfdffffff }, // mov:6:0xE1A0500D
 952         {  15, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
 953         {  16, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
 954         {  17, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 955         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF4C
 956         {  19, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
 957         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF5B
 958         {  21, 0xe1a06000, 0xfdffffff }, // mov:6:0xE3A06000
 959         {  22, 0xe1a08000, 0xfdffffff }, // mov:6:0xE1A08000
 960         {  23, 0xe1a02006, 0xfdffffff }, // mov:6:0xE1A02006
 961         {  24, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
 962         {  25, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 963         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB097EDB
 964         {  27, 0xe0507000, 0xfdffffff }, // sub:6:0xE2507000
 965         {  28, 0xe1a0101f, 0xfdffffff }, // mov:6:0xE3A0101F
 966         {  29, 0xe1a02008, 0xfdffffff }, // mov:6:0xE1A02008
 967         {  30, 0xe1a0a006, 0xfdffffff }, // mov:6:0xE1A0A006
 968         {  31, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000004
 969         { -1, -1, -1 },
 970         /* 29/32 */
 971 };
 972 
 973 static FuncSig func_sig_SetLogicalEventActive_1[] = {
 974         {   1, 0xe59f4050, 0xfdffffff }, // ldr:4:0xE59F4050
 975         {   3, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
 976         {   4, 0xe1530014, 0xfdffffff }, // cmp:7:0xE3530014
 977         {   5, 0xe1a01f52, 0xfdffffff }, // mov:6:0xE3A01F52
 978         {   6, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
 979         {   7, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
 980         {   8, 0xe59f0038, 0xfdffffff }, // ldr:4:0xE59F0038
 981         {   9, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
 982         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAF2C9
 983         {  11, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
 984         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF5A
 985         {  13, 0xe59f2028, 0xfdffffff }, // ldr:4:0xE59F2028
 986         {  15, 0xe0821004, 0xfdffffff }, // add:6:0xE2821004
 987         {  17, 0x00803001, 0xfdffffff }, // add:6:0x02803001
 988         {  19, 0xe1a03180, 0xfdffffff }, // mov:6:0xE1A03180
 989         {  20, 0xe5816003, 0xfdffffff }, // str:4:0xE7816003
 990         {  21, 0xe5825003, 0xfdffffff }, // str:4:0xE7825003
 991         { -1, -1, -1 },
 992         /* 17/23 */
 993 };
 994 
 995 static FuncSig func_sig_SetParameterData_1[] = {
 996         {   1, 0xe59f30c4, 0xfdffffff }, // ldr:4:0xE59F30C4
 997         {   2, 0xe04dd008, 0xfdffffff }, // sub:6:0xE24DD008
 998         {   3, 0xe593c000, 0xfdffffff }, // ldr:4:0xE593C000
 999         {   4, 0xe1a02802, 0xfdffffff }, // mov:6:0xE1A02802
1000         {   5, 0xe1a03800, 0xfdffffff }, // mov:6:0xE1A03800
1001         {   6, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
1002         {   7, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
1003         {   8, 0xe1a01fe5, 0xfdffffff }, // mov:6:0xE3A01FE5
1004         {   9, 0xe59f70a8, 0xfdffffff }, // ldr:4:0xE59F70A8
1005         {  10, 0xe59f00a8, 0xfdffffff }, // ldr:4:0xE59F00A8
1006         {  11, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
1007         {  12, 0xe1a04843, 0xfdffffff }, // mov:6:0xE1A04843
1008         {  13, 0xe1a05842, 0xfdffffff }, // mov:6:0xE1A05842
1009         {  14, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
1010         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAD61C
1011         {  16, 0xe1a02804, 0xfdffffff }, // mov:6:0xE1A02804
1012         {  17, 0xe1a03822, 0xfdffffff }, // mov:6:0xE1A03822
1013         {  19, 0xe1a01fe5, 0xfdffffff }, // mov:6:0xE3A01FE5
1014         {  20, 0xe1a04804, 0xfdffffff }, // mov:6:0xE1A04804
1015         {  21, 0xe1120101, 0xfdffffff }, // tst:7:0xE3120101
1016         {  22, 0xe59f0078, 0xfdffffff }, // ldr:4:0xE59F0078
1017         {  23, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
1018         {  24, 0xe1a04824, 0xfdffffff }, // mov:6:0xE1A04824
1019         {  25, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
1020         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAD611
1021         {  27, 0xe1a01fe5, 0xfdffffff }, // mov:6:0xE3A01FE5
1022         {  28, 0xe154005d, 0xfdffffff }, // cmp:7:0xE354005D
1023         {  29, 0xe59f005c, 0xfdffffff }, // ldr:4:0xE59F005C
1024         {  30, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
1025         {  31, 0x9a000000, 0xff000000 }, // b, bl:3:0x9A000000
1026         { -1, -1, -1 },
1027         /* 30/32 */
1028 };
1029 
1030 static FuncSig func_sig_SetPropertyCase_1[] = {
1031         {   1, 0xe59f306c, 0xfdffffff }, // ldr:4:0xE59F306C
1032         {   2, 0xe593c000, 0xfdffffff }, // ldr:4:0xE593C000
1033         {   3, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
1034         {   4, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
1035         {   5, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
1036         {   6, 0xe59f705c, 0xfdffffff }, // ldr:4:0xE59F705C
1037         {   7, 0xe59f005c, 0xfdffffff }, // ldr:4:0xE59F005C
1038         {   8, 0xe1a010e9, 0xfdffffff }, // mov:6:0xE3A010E9
1039         {   9, 0xe1a04002, 0xfdffffff }, // mov:6:0xE1A04002
1040         {  10, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
1041         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFBE84
1042         {  12, 0xe5973000, 0xfdffffff }, // ldr:4:0xE5973000
1043         {  13, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
1044         {  14, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
1045         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF2E4
1046         {  16, 0xe1a01006, 0xfdffffff }, // mov:6:0xE1A01006
1047         {  17, 0xe1a02005, 0xfdffffff }, // mov:6:0xE1A02005
1048         {  18, 0xe1a03004, 0xfdffffff }, // mov:6:0xE1A03004
1049         {  19, 0xe5970000, 0xfdffffff }, // ldr:4:0xE5970000
1050         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF8A
1051         {  21, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1052         {  22, 0xe1a010ee, 0xfdffffff }, // mov:6:0xE3A010EE
1053         {  23, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
1054         {  24, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
1055         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFBE76
1056         {  26, 0xe5973000, 0xfdffffff }, // ldr:4:0xE5973000
1057         {  27, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
1058         { -1, -1, -1 },
1059         /* 27/29 */
1060 };
1061 
1062 static FuncSig func_sig_TurnOffBackLight_1[] = {
1063         {   0, 0xe59f000c, 0xfdffffff }, // ldr:4:0xE59F000C
1064         {   1, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
1065         {   2, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF9CD11
1066         {   3, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
1067         {   4, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDFD3B
1068         {   9, 0x61536c61, 0xfdffffff }, // cmp:7:0x63536C61
1069         {  11, 0x00000000, 0xfdffffff }, // and:6:0x00000000
1070         {  12, 0xe59f000c, 0xfdffffff }, // ldr:4:0xE59F000C
1071         {  13, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
1072         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF9CD05
1073         {  15, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
1074         {  16, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDF05F
1075         {  19, 0x5066664f, 0xfdffffff }, // rsb:6:0x5066664F
1076         {  23, 0x0000006e, 0xfdffffff }, // and:6:0x0000006E
1077         {  24, 0xe59f000c, 0xfdffffff }, // ldr:4:0xE59F000C
1078         {  25, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
1079         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF9CCF9
1080         {  27, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
1081         {  28, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDF067
1082         { -1, -1, -1 },
1083         /* 19/32 */
1084 };
1085 
1086 static FuncSig func_sig_TurnOnBackLight_1[] = {
1087         {   0, 0xe59f000c, 0xfdffffff }, // ldr:4:0xE59F000C
1088         {   1, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
1089         {   2, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF9CD1C
1090         {   3, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
1091         {   4, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDFD0D
1092         {   7, 0x4066664f, 0xfdffffff }, // rsb:6:0x4266664F
1093         {  10, 0x00000000, 0xfdffffff }, // and:6:0x00000000
1094         {  11, 0xe59f000c, 0xfdffffff }, // ldr:4:0xE59F000C
1095         {  12, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
1096         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF9CD11
1097         {  14, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
1098         {  15, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDFD3B
1099         {  20, 0x61536c61, 0xfdffffff }, // cmp:7:0x63536C61
1100         {  22, 0x00000000, 0xfdffffff }, // and:6:0x00000000
1101         {  23, 0xe59f000c, 0xfdffffff }, // ldr:4:0xE59F000C
1102         {  24, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
1103         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF9CD05
1104         {  26, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
1105         {  27, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDF05F
1106         {  30, 0x5066664f, 0xfdffffff }, // rsb:6:0x5066664F
1107         { -1, -1, -1 },
1108         /* 20/32 */
1109 };
1110 
1111 static FuncSig func_sig_Unmount_FileSystem_1[] = {
1112         {   1, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
1113         {   2, 0xe1a0600d, 0xfdffffff }, // mov:6:0xE1A0600D
1114         {   3, 0xe59f1044, 0xfdffffff }, // ldr:4:0xE59F1044
1115         {   4, 0xe1a02002, 0xfdffffff }, // mov:6:0xE3A02002
1116         {   5, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
1117         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0967C9
1118         {   7, 0xe59fc038, 0xfdffffff }, // ldr:4:0xE59FC038
1119         {   8, 0xe59fe038, 0xfdffffff }, // ldr:4:0xE59FE038
1120         {   9, 0xe1a03000, 0xfdffffff }, // mov:6:0xE3A03000
1121         {  10, 0xe59f4034, 0xfdffffff }, // ldr:4:0xE59F4034
1122         {  11, 0xe58e3000, 0xfdffffff }, // str:4:0xE58E3000
1123         {  12, 0xe0835041, 0xfdffffff }, // add:6:0xE2835041
1124         {  13, 0xe08c1054, 0xfdffffff }, // add:6:0xE28C1054
1125         {  15, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
1126         {  16, 0xe5843000, 0xfdffffff }, // str:4:0xE5843000
1127         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0006AD
1128         {  19, 0xe08dd004, 0xfdffffff }, // add:6:0xE28DD004
1129         {  21, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1130         { -1, -1, -1 },
1131         /* 18/32 */
1132 };
1133 
1134 static FuncSig func_sig_UnsetZoomForMovie_1[] = {
1135         {   1, 0xe1a00060, 0xfdffffff }, // mov:6:0xE3A00060
1136         {   2, 0xe1a04000, 0xfdffffff }, // mov:6:0xE3A04000
1137         {   3, 0xe59f1034, 0xfdffffff }, // ldr:4:0xE59F1034
1138         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA1830
1139         {   5, 0xe59f2030, 0xfdffffff }, // ldr:4:0xE59F2030
1140         {   6, 0xe5923000, 0xfdffffff }, // ldr:4:0xE5923000
1141         {   7, 0xe1530004, 0xfdffffff }, // cmp:7:0xE1530004
1142         {   9, 0xe5824000, 0xfdffffff }, // str:4:0xE5824000
1143         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00002F
1144         {  11, 0xe59f201c, 0xfdffffff }, // ldr:4:0xE59F201C
1145         {  12, 0xe5923000, 0xfdffffff }, // ldr:4:0xE5923000
1146         {  13, 0xe1530004, 0xfdffffff }, // cmp:7:0xE1530004
1147         {  15, 0xe5824000, 0xfdffffff }, // str:4:0xE5824000
1148         {  17, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFCD1
1149         {  19, 0x00007ff8, 0xfdffffff }, // and:6:0x00007FF8
1150         {  20, 0x00007ff4, 0xfdffffff }, // and:6:0x00007FF4
1151         {  21, 0xe59f3004, 0xfdffffff }, // ldr:4:0xE59F3004
1152         {  22, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
1153         {  23, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1154         { -1, -1, -1 },
1155         /* 19/32 */
1156 };
1157 
1158 static FuncSig func_sig_UpdateMBROnFlash_1[] = {
1159         {   1, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
1160         {   2, 0xe1a09002, 0xfdffffff }, // mov:6:0xE1A09002
1161         {   3, 0xe1a07001, 0xfdffffff }, // mov:6:0xE1A07001
1162         {   4, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
1163         {   5, 0xe1a01c02, 0xfdffffff }, // mov:6:0xE3A01C02
1164         {   6, 0xe1a00003, 0xfdffffff }, // mov:6:0xE3A00003
1165         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE9AFB
1166         {   8, 0xe59f5074, 0xfdffffff }, // ldr:4:0xE59F5074
1167         {   9, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
1168         {  10, 0xe0644183, 0xfdffffff }, // rsb:6:0xE0644183
1169         {  11, 0xe1a04104, 0xfdffffff }, // mov:6:0xE1A04104
1170         {  12, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
1171         {  13, 0xe0858038, 0xfdffffff }, // add:6:0xE2858038
1172         {  14, 0xe085a044, 0xfdffffff }, // add:6:0xE285A044
1173         {  15, 0xe085c04c, 0xfdffffff }, // add:6:0xE285C04C
1174         {  16, 0xe1a03006, 0xfdffffff }, // mov:6:0xE1A03006
1175         {  17, 0xe59a1004, 0xfdffffff }, // ldr:4:0xE79A1004
1176         {  18, 0xe1a02001, 0xfdffffff }, // mov:6:0xE3A02001
1177         {  19, 0xe5980004, 0xfdffffff }, // ldr:4:0xE7980004
1178         {  20, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
1179         {  21, 0xe59cf004, 0xfdffffff }, // ldr:4:0xE79CF004
1180         {  22, 0xe1a00009, 0xfdffffff }, // mov:6:0xE1A00009
1181         {  23, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB09685A
1182         {  24, 0xe0867007, 0xfdffffff }, // add:6:0xE0867007
1183         {  25, 0xe1a02000, 0xfdffffff }, // mov:6:0xE1A02000
1184         {  26, 0xe1a01009, 0xfdffffff }, // mov:6:0xE1A01009
1185         {  27, 0xe1a00007, 0xfdffffff }, // mov:6:0xE1A00007
1186         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB09687F
1187         {  29, 0xe0855050, 0xfdffffff }, // add:6:0xE2855050
1188         {  30, 0xe5980004, 0xfdffffff }, // ldr:4:0xE7980004
1189         {  31, 0xe59a1004, 0xfdffffff }, // ldr:4:0xE79A1004
1190         { -1, -1, -1 },
1191         /* 31/32 */
1192 };
1193 
1194 static FuncSig func_sig_WriteSDCard_1[] = {
1195         {   1, 0xe59f91a8, 0xfdffffff }, // ldr:4:0xE59F91A8
1196         {   2, 0xe04dd008, 0xfdffffff }, // sub:6:0xE24DD008
1197         {   3, 0xe599c000, 0xfdffffff }, // ldr:4:0xE599C000
1198         {   4, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
1199         {   5, 0xe156000c, 0xfdffffff }, // cmp:7:0xE156000C
1200         {   6, 0xe1a07001, 0xfdffffff }, // mov:6:0xE1A07001
1201         {   7, 0xe1a08002, 0xfdffffff }, // mov:6:0xE1A08002
1202         {   8, 0xe1a0a003, 0xfdffffff }, // mov:6:0xE1A0A003
1203         {   9, 0xe1a05002, 0xfdffffff }, // mov:6:0xE3A05002
1204         {  10, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000009
1205         {  11, 0xe1a00080, 0xfdffffff }, // mov:6:0xE3A00080
1206         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE6089
1207         {  13, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
1208         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFDE1
1209         {  15, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
1210         {  16, 0xe1a00080, 0xfdffffff }, // mov:6:0xE3A00080
1211         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE608E
1212         {  18, 0xe1540000, 0xfdffffff }, // cmp:7:0xE3540000
1213         {  19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000054
1214         {  20, 0xe5896000, 0xfdffffff }, // str:4:0xE5896000
1215         {  21, 0xe59fc15c, 0xfdffffff }, // ldr:4:0xE59FC15C
1216         {  22, 0xe1a04086, 0xfdffffff }, // mov:6:0xE1A04086
1217         {  23, 0xe0843006, 0xfdffffff }, // add:6:0xE0843006
1218         {  24, 0xe1a00183, 0xfdffffff }, // mov:6:0xE1A00183
1219         {  25, 0xe08c2010, 0xfdffffff }, // add:6:0xE28C2010
1220         {  26, 0xe5923000, 0xfdffffff }, // ldr:4:0xE7923000
1221         {  27, 0xe0871008, 0xfdffffff }, // add:6:0xE0871008
1222         {  28, 0xe1510003, 0xfdffffff }, // cmp:7:0xE1510003
1223         {  29, 0x8a000000, 0xff000000 }, // b, bl:3:0x8A00004A
1224         {  30, 0xe08c3008, 0xfdffffff }, // add:6:0xE28C3008
1225         {  31, 0xe5932000, 0xfdffffff }, // ldr:4:0xE7932000
1226         { -1, -1, -1 },
1227         /* 31/32 */
1228 };
1229 
1230 static FuncSig func_sig__pow_1[] = {
1231         {   0, 0xe04dd010, 0xfdffffff }, // sub:6:0xE24DD010
1232         {   2, 0xe04dd0e0, 0xfdffffff }, // sub:6:0xE24DD0E0
1233         {   3, 0xe1a0cf41, 0xfdffffff }, // mov:6:0xE3A0CF41
1234         {   4, 0xe08cc00d, 0xfdffffff }, // add:6:0xE08CC00D
1235         {   6, 0xe1a0cf43, 0xfdffffff }, // mov:6:0xE3A0CF43
1236         {   7, 0xe08cc00d, 0xfdffffff }, // add:6:0xE08CC00D
1237         {   9, 0xe59d0104, 0xfdffffff }, // ldr:4:0xE59D0104
1238         {  10, 0xe59d1108, 0xfdffffff }, // ldr:4:0xE59D1108
1239         {  11, 0xe08d2068, 0xfdffffff }, // add:6:0xE28D2068
1240         {  13, 0xe59dc06c, 0xfdffffff }, // ldr:4:0xE59DC06C
1241         {  14, 0xe59d010c, 0xfdffffff }, // ldr:4:0xE59D010C
1242         {  15, 0xe59d1110, 0xfdffffff }, // ldr:4:0xE59D1110
1243         {  16, 0xe58dc020, 0xfdffffff }, // str:4:0xE58DC020
1244         {  17, 0xe5923000, 0xfdffffff }, // ldr:4:0xE5923000
1245         {  18, 0xe08d2070, 0xfdffffff }, // add:6:0xE28D2070
1246         {  19, 0xe58d3014, 0xfdffffff }, // str:4:0xE58D3014
1247         {  21, 0xe59dc074, 0xfdffffff }, // ldr:4:0xE59DC074
1248         {  22, 0xe58dc010, 0xfdffffff }, // str:4:0xE58DC010
1249         {  23, 0xe59dc020, 0xfdffffff }, // ldr:4:0xE59DC020
1250         {  25, 0xe5920000, 0xfdffffff }, // ldr:4:0xE5920000
1251         {  26, 0xe00cc003, 0xfdffffff }, // and:6:0xE00CC003
1252         {  27, 0xe59d3010, 0xfdffffff }, // ldr:4:0xE59D3010
1253         {  28, 0xe58dc008, 0xfdffffff }, // str:4:0xE58DC008
1254         {  30, 0xe003c00c, 0xfdffffff }, // and:6:0xE003C00C
1255         {  31, 0xe1a03000, 0xfdffffff }, // mov:6:0xE1A03000
1256         { -1, -1, -1 },
1257         /* 25/32 */
1258 };
1259 
1260 static FuncSig func_sig__sqrt_1[] = {
1261         {   1, 0xe1a0c470, 0xfdffffff }, // mov:6:0xE3A0C470
1262         {   3, 0xe111000c, 0xfdffffff }, // tst:7:0xE111000C
1263         {   4, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000044
1264         {   6, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000064
1265         {   7, 0xe1110480, 0xfdffffff }, // tst:7:0xE3110480
1266         {   8, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000066
1267         {   9, 0xe1a0ca21, 0xfdffffff }, // mov:6:0xE1A0CA21
1268         {  12, 0xe08cc0fd, 0xfdffffff }, // add:6:0xE28CC0FD
1269         {  13, 0xe1b0c0ac, 0xfdffffff }, // mov:6:0xE1B0C0AC
1270         {  14, 0xe08ccf60, 0xfdffffff }, // add:6:0xE28CCF60
1271         {  15, 0x3a000000, 0xff000000 }, // b, bl:3:0x3A000001
1272         {  16, 0xe1b00080, 0xfdffffff }, // mov:6:0xE1B00080
1273         {  18, 0xe1a01501, 0xfdffffff }, // mov:6:0xE1A01501
1274         {  20, 0xe1a00500, 0xfdffffff }, // mov:6:0xE1A00500
1275         {  21, 0xe1a02440, 0xfdffffff }, // mov:6:0xE3A02440
1276         {  22, 0xe1a03000, 0xfdffffff }, // mov:6:0xE3A03000
1277         {  23, 0xe0411440, 0xfdffffff }, // sub:6:0xE2411440
1278         {  24, 0xe1a0e540, 0xfdffffff }, // mov:6:0xE3A0E540
1279         {  25, 0xe0514002, 0xfdffffff }, // sub:6:0xE0514002
1280         {  26, 0x2054400e, 0xfdffffff }, // sub:6:0x2054400E
1281         {  27, 0x21a01004, 0xfdffffff }, // mov:6:0x21A01004
1282         {  28, 0x2082208e, 0xfdffffff }, // add:6:0x2082208E
1283         {  29, 0xe1b00080, 0xfdffffff }, // mov:6:0xE1B00080
1284         {  31, 0xe1b0e0ae, 0xfdffffff }, // mov:6:0xE1B0E0AE
1285         { -1, -1, -1 },
1286         /* 24/32 */
1287 };
1288 
1289 static FuncSig func_sig_add_ptp_handler_1[] = {
1290         {   1, 0xe59f3070, 0xfdffffff }, // ldr:4:0xE59F3070
1291         {   2, 0xe5933000, 0xfdffffff }, // ldr:4:0xE5933000
1292         {   3, 0xe1a0c800, 0xfdffffff }, // mov:6:0xE1A0C800
1293         {   4, 0xe1530000, 0xfdffffff }, // cmp:7:0xE3530000
1294         {   5, 0xe1a0e001, 0xfdffffff }, // mov:6:0xE1A0E001
1295         {   6, 0xe1a00017, 0xfdffffff }, // mov:6:0xE3A00017
1296         {   7, 0xe1a05002, 0xfdffffff }, // mov:6:0xE1A05002
1297         {   8, 0xe1a0184c, 0xfdffffff }, // mov:6:0xE1A0184C
1298         {  10, 0xe15e0000, 0xfdffffff }, // cmp:7:0xE35E0000
1299         {  11, 0xe1a01801, 0xfdffffff }, // mov:6:0xE1A01801
1300         {  12, 0xe1a0200e, 0xfdffffff }, // mov:6:0xE1A0200E
1301         {  13, 0xe0830004, 0xfdffffff }, // add:6:0xE2830004
1302         {  14, 0x01a00003, 0xfdffffff }, // mov:6:0x03A00003
1303         {  16, 0xe5933000, 0xfdffffff }, // ldr:4:0xE5933000
1304         {  17, 0xe1a01821, 0xfdffffff }, // mov:6:0xE1A01821
1305         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00020A
1306         {  19, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
1307         {  20, 0xe1540013, 0xfdffffff }, // cmp:7:0xE3540013
1308         {  22, 0x10033001, 0xfdffffff }, // and:6:0x12033001
1309         {  23, 0x01a03001, 0xfdffffff }, // mov:6:0x03A03001
1310         {  24, 0xe1530000, 0xfdffffff }, // cmp:7:0xE3530000
1311         {  25, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000002
1312         {  26, 0xe1550000, 0xfdffffff }, // cmp:7:0xE3550000
1313         {  27, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
1314         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF8D
1315         {  29, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
1316         {  31, 0x00009ea4, 0xfdffffff }, // and:6:0x00009EA4
1317         { -1, -1, -1 },
1318         /* 27/32 */
1319 };
1320 
1321 static FuncSig func_sig_apex2us_1[] = {
1322         {   0, 0xe1a00800, 0xfdffffff }, // mov:6:0xE1A00800
1323         {   1, 0xe1a00840, 0xfdffffff }, // mov:6:0xE1A00840
1324         {   2, 0xe1a0332e, 0xfdffffff }, // mov:6:0xE3A0332E
1325         {   4, 0xe1a03ac3, 0xfdffffff }, // mov:6:0xE1A03AC3
1326         {   5, 0xb1a00003, 0xfdffffff }, // mov:6:0xB1A00003
1327         {   6, 0xe1500e5a, 0xfdffffff }, // cmp:7:0xE3500E5A
1328         {   7, 0xa1a00e5a, 0xfdffffff }, // mov:6:0xA3A00E5A
1329         {   8, 0xe1a02300, 0xfdffffff }, // mov:6:0xE1A02300
1330         {   9, 0xe1500d09, 0xfdffffff }, // cmp:7:0xE3500D09
1331         {  10, 0xe1a01fc2, 0xfdffffff }, // mov:6:0xE1A01FC2
1332         {  11, 0xaa000000, 0xff000000 }, // b, bl:3:0xAA00000B
1333         {  12, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1334         {  13, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000004
1335         {  14, 0xe59f2044, 0xfdffffff }, // ldr:4:0xE59F2044
1336         {  16, 0xe0433fc0, 0xfdffffff }, // sub:6:0xE0433FC0
1337         {  17, 0xe1a03803, 0xfdffffff }, // mov:6:0xE1A03803
1338         {  18, 0xe1a00843, 0xfdffffff }, // mov:6:0xE1A00843
1339         {  19, 0xe1a03100, 0xfdffffff }, // mov:6:0xE1A03100
1340         {  20, 0xe59f2030, 0xfdffffff }, // ldr:4:0xE59F2030
1341         {  21, 0xe0833c03, 0xfdffffff }, // add:6:0xE2833C03
1342         {  22, 0xe5920003, 0xfdffffff }, // ldr:4:0xE7920003
1343         {  23, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1344         { -1, -1, -1 },
1345         /* 22/32 */
1346 };
1347 
1348 static FuncSig func_sig_close_1[] = {
1349         {   1, 0xe04dd00c, 0xfdffffff }, // sub:6:0xE24DD00C
1350         {   2, 0xe59fb95c, 0xfdffffff }, // ldr:4:0xE59FB95C
1351         {   3, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000
1352         {   4, 0xe59ba000, 0xfdffffff }, // ldr:4:0xE59BA000
1353         {   5, 0xe15a0000, 0xfdffffff }, // cmp:7:0xE35A0000
1354         {   6, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000003
1355         {   7, 0xe08d1008, 0xfdffffff }, // add:6:0xE28D1008
1356         {   8, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
1357         {   9, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
1358         {  10, 0xe1a0f00a, 0xfdffffff }, // mov:6:0xE1A0F00A
1359         {  11, 0xe1a00009, 0xfdffffff }, // mov:6:0xE1A00009
1360         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000321
1361         {  13, 0xe59bb000, 0xfdffffff }, // ldr:4:0xE59BB000
1362         {  14, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
1363         {  15, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE35B0000
1364         {  16, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000003
1365         {  17, 0xe59d0008, 0xfdffffff }, // ldr:4:0xE59D0008
1366         {  18, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
1367         {  19, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
1368         {  20, 0xe1a0f00b, 0xfdffffff }, // mov:6:0xE1A0F00B
1369         {  21, 0xe08dd00c, 0xfdffffff }, // add:6:0xE28DD00C
1370         {  22, 0xe1a0000a, 0xfdffffff }, // mov:6:0xE1A0000A
1371         {  25, 0xe04dd00c, 0xfdffffff }, // sub:6:0xE24DD00C
1372         {  26, 0xe59fb8fc, 0xfdffffff }, // ldr:4:0xE59FB8FC
1373         {  27, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000
1374         {  28, 0xe1a08001, 0xfdffffff }, // mov:6:0xE1A08001
1375         {  29, 0xe1a07002, 0xfdffffff }, // mov:6:0xE1A07002
1376         {  30, 0xe59ba000, 0xfdffffff }, // ldr:4:0xE59BA000
1377         {  31, 0xe15a0000, 0xfdffffff }, // cmp:7:0xE35A0000
1378         { -1, -1, -1 },
1379         /* 29/32 */
1380 };
1381 
1382 static FuncSig func_sig_closedir_1[] = {
1383         {   1, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
1384         {   2, 0xe5900000, 0xfdffffff }, // ldr:4:0xE5900000
1385         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001013
1386         {   5, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
1387         {   6, 0x11a0000a, 0xfdffffff }, // mov:6:0x11A0000A
1388         {   7, 0x1b000000, 0xff000000 }, // b, bl:3:0x1B001C22
1389         {   8, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1390         {  10, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
1391         {  11, 0xe1a01026, 0xfdffffff }, // mov:6:0xE3A01026
1392         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEA00105A
1393         {  14, 0xe04dd048, 0xfdffffff }, // sub:6:0xE24DD048
1394         {  15, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
1395         {  16, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
1396         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001196
1397         {  19, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
1398         {  20, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
1399         {  21, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000019
1400         {  22, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
1401         {  23, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1402         {  24, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFF0
1403         {  25, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1404         {  26, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000D
1405         {  28, 0xe00cca0f, 0xfdffffff }, // and:6:0xE20CCA0F
1406         {  29, 0xe1a0c80c, 0xfdffffff }, // mov:6:0xE1A0C80C
1407         {  30, 0xe1a0c82c, 0xfdffffff }, // mov:6:0xE1A0C82C
1408         {  31, 0xe15c0901, 0xfdffffff }, // cmp:7:0xE35C0901
1409         { -1, -1, -1 },
1410         /* 26/32 */
1411 };
1412 
1413 static FuncSig func_sig_errnoOfTaskGet_1[] = {
1414         {   1, 0xe1b0b000, 0xfdffffff }, // mov:6:0xE1B0B000
1415         {   2, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000001
1416         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0056EB
1417         {   4, 0xe150000b, 0xfdffffff }, // cmp:7:0xE150000B
1418         {   5, 0x059f0070, 0xfdffffff }, // ldr:4:0x059F0070
1419         {   6, 0x05900000, 0xfdffffff }, // ldr:4:0x05900000
1420         {   7, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000004
1421         {   8, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1422         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB005702
1423         {  10, 0xe1b0b000, 0xfdffffff }, // mov:6:0xE1B0B000
1424         {  12, 0x159b0084, 0xfdffffff }, // ldr:4:0x159B0084
1425         {  14, 0xe59fc04c, 0xfdffffff }, // ldr:4:0xE59FC04C
1426         {  15, 0xe58c0000, 0xfdffffff }, // str:4:0xE58C0000
1427         {  16, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
1428         {  17, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1429         { -1, -1, -1 },
1430         /* 15/32 */
1431 };
1432 
1433 static FuncSig func_sig_free_1[] = {
1434         {   0, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
1435         {   1, 0xe59f0064, 0xfdffffff }, // ldr:4:0xE59F0064
1436         {   2, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFE1E
1437         {   3, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
1438         {   4, 0xe080000c, 0xfdffffff }, // add:6:0xE280000C
1439         {   5, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
1440         {   6, 0xea000000, 0xff000000 }, // b, bl:3:0xEA003068
1441         {   7, 0x00110004, 0xfdffffff }, // and:6:0x00110004
1442         {   8, 0x0000eb7c, 0xfdffffff }, // and:6:0x0000EB7C
1443         {   9, 0x00580001, 0xfdffffff }, // sub:6:0x00580001
1444         {  10, 0x000a0754, 0xfdffffff }, // and:6:0x000A0754
1445         {  11, 0x0000eb64, 0xfdffffff }, // and:6:0x0000EB64
1446         {  13, 0x00110002, 0xfdffffff }, // and:6:0x00110002
1447         {  14, 0x0000e9ac, 0xfdffffff }, // and:6:0x0000E9AC
1448         {  15, 0x000a0318, 0xfdffffff }, // and:6:0x000A0318
1449         {  16, 0x00002732, 0xfdffffff }, // and:6:0x00002732
1450         {  17, 0x000a0260, 0xfdffffff }, // and:6:0x000A0260
1451         {  18, 0x10000100, 0xfdffffff }, // and:6:0x10000100
1452         {  19, 0x000a0244, 0xfdffffff }, // and:6:0x000A0244
1453         {  20, 0x0000eb74, 0xfdffffff }, // and:6:0x0000EB74
1454         {  21, 0x0000eb70, 0xfdffffff }, // and:6:0x0000EB70
1455         {  22, 0x000a0368, 0xfdffffff }, // and:6:0x000A0368
1456         {  23, 0x0000eb88, 0xfdffffff }, // and:6:0x0000EB88
1457         {  24, 0x00082ec0, 0xfdffffff }, // and:6:0x00082EC0
1458         {  28, 0x00082e08, 0xfdffffff }, // and:6:0x00082E08
1459         {  29, 0x00002730, 0xfdffffff }, // and:6:0x00002730
1460         {  30, 0x000a02b4, 0xfdffffff }, // and:6:0x000A02B4
1461         {  31, 0x000a06ac, 0xfdffffff }, // and:6:0x000A06AC
1462         { -1, -1, -1 },
1463         /* 28/32 */
1464 };
1465 
1466 static FuncSig func_sig_iosDevAdd_1[] = {
1467         {   1, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
1468         {   2, 0xe1a0b001, 0xfdffffff }, // mov:6:0xE1A0B001
1469         {   3, 0xe1a09002, 0xfdffffff }, // mov:6:0xE1A09002
1470         {   4, 0xe1a00001, 0xfdffffff }, // mov:6:0xE1A00001
1471         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFC3
1472         {   6, 0xe1b01000, 0xfdffffff }, // mov:6:0xE1B01000
1473         {   7, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000008
1474         {   8, 0xe590000c, 0xfdffffff }, // ldr:4:0xE590000C
1475         {   9, 0xe1a0100b, 0xfdffffff }, // mov:6:0xE1A0100B
1476         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE292
1477         {  11, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1478         {  12, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000003
1479         {  13, 0xe59f036c, 0xfdffffff }, // ldr:4:0xE59F036C
1480         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFED51
1481         {  16, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000011
1482         {  17, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1483         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE348
1484         {  19, 0xe0800001, 0xfdffffff }, // add:6:0xE2800001
1485         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000772
1486         {  21, 0xe1b01000, 0xfdffffff }, // mov:6:0xE1B01000
1487         {  23, 0xe58a100c, 0xfdffffff }, // str:4:0xE58A100C
1488         {  25, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000008
1489         {  26, 0xe1a00001, 0xfdffffff }, // mov:6:0xE1A00001
1490         {  27, 0xe1a0100b, 0xfdffffff }, // mov:6:0xE1A0100B
1491         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE2E5
1492         {  29, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF6B
1493         {  30, 0xe59f02f8, 0xfdffffff }, // ldr:4:0xE59F02F8
1494         {  31, 0xe1a0100a, 0xfdffffff }, // mov:6:0xE1A0100A
1495         { -1, -1, -1 },
1496         /* 28/32 */
1497 };
1498 
1499 static FuncSig func_sig_iosDevDelete_1[] = {
1500         {   1, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
1501         {   2, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF90
1502         {   3, 0xe59f038c, 0xfdffffff }, // ldr:4:0xE59F038C
1503         {   4, 0xe1a0100b, 0xfdffffff }, // mov:6:0xE1A0100B
1504         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB005358
1505         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF8F
1506         {   7, 0xe59b000c, 0xfdffffff }, // ldr:4:0xE59B000C
1507         {   9, 0xea000000, 0xff000000 }, // b, bl:3:0xEA00078A
1508         {  11, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
1509         {  12, 0xe1a0b001, 0xfdffffff }, // mov:6:0xE1A0B001
1510         {  13, 0xe1a09002, 0xfdffffff }, // mov:6:0xE1A09002
1511         {  14, 0xe1a00001, 0xfdffffff }, // mov:6:0xE1A00001
1512         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFC3
1513         {  16, 0xe1b01000, 0xfdffffff }, // mov:6:0xE1B01000
1514         {  17, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000008
1515         {  18, 0xe590000c, 0xfdffffff }, // ldr:4:0xE590000C
1516         {  19, 0xe1a0100b, 0xfdffffff }, // mov:6:0xE1A0100B
1517         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE292
1518         {  21, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1519         {  22, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000003
1520         {  23, 0xe59f036c, 0xfdffffff }, // ldr:4:0xE59F036C
1521         {  24, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFED51
1522         {  26, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000011
1523         {  27, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1524         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE348
1525         {  29, 0xe0800001, 0xfdffffff }, // add:6:0xE2800001
1526         {  30, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000772
1527         {  31, 0xe1b01000, 0xfdffffff }, // mov:6:0xE1B01000
1528         { -1, -1, -1 },
1529         /* 28/32 */
1530 };
1531 
1532 static FuncSig func_sig_iosDrvInstall_1[] = {
1533         {   1, 0xe59d8024, 0xfdffffff }, // ldr:4:0xE59D8024
1534         {   2, 0xe59d9028, 0xfdffffff }, // ldr:4:0xE59D9028
1535         {   3, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE3A0B000
1536         {   4, 0xe1a07000, 0xfdffffff }, // mov:6:0xE1A07000
1537         {   5, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
1538         {   6, 0xe1a05002, 0xfdffffff }, // mov:6:0xE1A05002
1539         {   7, 0xe1a04003, 0xfdffffff }, // mov:6:0xE1A04003
1540         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFECF
1541         {   9, 0xe59f00bc, 0xfdffffff }, // ldr:4:0xE59F00BC
1542         {  10, 0xe5900000, 0xfdffffff }, // ldr:4:0xE5900000
1543         {  11, 0xe1500001, 0xfdffffff }, // cmp:7:0xE3500001
1544         {  12, 0xda000000, 0xff000000 }, // b, bl:3:0xDA00000D
1545         {  13, 0xe59fc08c, 0xfdffffff }, // ldr:4:0xE59FC08C
1546         {  14, 0xe040a001, 0xfdffffff }, // sub:6:0xE240A001
1547         {  15, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
1548         {  16, 0xe08c1020, 0xfdffffff }, // add:6:0xE28C1020
1549         {  17, 0xe591c01c, 0xfdffffff }, // ldr:4:0xE591C01C
1550         {  18, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
1551         {  19, 0x01a0b001, 0xfdffffff }, // mov:6:0x01A0B001
1552         {  20, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000002
1553         {  21, 0xe05aa001, 0xfdffffff }, // sub:6:0xE25AA001
1554         {  22, 0xe0811020, 0xfdffffff }, // add:6:0xE2811020
1555         {  23, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFF8
1556         {  24, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE35B0000
1557         {  25, 0xe040a00a, 0xfdffffff }, // sub:6:0xE040A00A
1558         {  26, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000004
1559         {  27, 0xe59f008c, 0xfdffffff }, // ldr:4:0xE59F008C
1560         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFEC92
1561         {  29, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEBD
1562         {  31, 0xea000000, 0xff000000 }, // b, bl:3:0xEA00000B
1563         { -1, -1, -1 },
1564         /* 30/32 */
1565 };
1566 
1567 static FuncSig func_sig_isalpha_1[] = {
1568         {   0, 0xe59fc00c, 0xfdffffff }, // ldr:4:0xE59FC00C
1569         {   1, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
1570         {   3, 0xe00c0003, 0xfdffffff }, // and:6:0xE20C0003
1571         {   4, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1572         { -1, -1, -1 },
1573         /* 4/32 */
1574 };
1575 
1576 static FuncSig func_sig_isdigit_1[] = {
1577         {   0, 0xe59fc00c, 0xfdffffff }, // ldr:4:0xE59FC00C
1578         {   1, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
1579         {   3, 0xe00c0004, 0xfdffffff }, // and:6:0xE20C0004
1580         {   4, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1581         { -1, -1, -1 },
1582         /* 4/32 */
1583 };
1584 
1585 static FuncSig func_sig_islower_1[] = {
1586         {   0, 0xe59fc00c, 0xfdffffff }, // ldr:4:0xE59FC00C
1587         {   1, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
1588         {   3, 0xe00c0002, 0xfdffffff }, // and:6:0xE20C0002
1589         {   4, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1590         { -1, -1, -1 },
1591         /* 4/32 */
1592 };
1593 
1594 static FuncSig func_sig_ispunct_1[] = {
1595         {   0, 0xe59fc00c, 0xfdffffff }, // ldr:4:0xE59FC00C
1596         {   1, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
1597         {   3, 0xe00c0010, 0xfdffffff }, // and:6:0xE20C0010
1598         {   4, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1599         { -1, -1, -1 },
1600         /* 4/32 */
1601 };
1602 
1603 static FuncSig func_sig_isspace_1[] = {
1604         {   0, 0xe59fc00c, 0xfdffffff }, // ldr:4:0xE59FC00C
1605         {   1, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
1606         {   3, 0xe00c0028, 0xfdffffff }, // and:6:0xE20C0028
1607         {   4, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1608         { -1, -1, -1 },
1609         /* 4/32 */
1610 };
1611 
1612 static FuncSig func_sig_isupper_1[] = {
1613         {   0, 0xe59fc00c, 0xfdffffff }, // ldr:4:0xE59FC00C
1614         {   1, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
1615         {   3, 0xe00c0001, 0xfdffffff }, // and:6:0xE20C0001
1616         {   4, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1617         { -1, -1, -1 },
1618         /* 4/32 */
1619 };
1620 
1621 static FuncSig func_sig_isxdigit_1[] = {
1622         {   0, 0xe59fc00c, 0xfdffffff }, // ldr:4:0xE59FC00C
1623         {   1, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
1624         {   3, 0xe00c0040, 0xfdffffff }, // and:6:0xE20C0040
1625         {   4, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1626         { -1, -1, -1 },
1627         /* 4/32 */
1628 };
1629 
1630 static FuncSig func_sig_kbd_p1_f_1[] = {
1631         {   1, 0xe04dd00c, 0xfdffffff }, // sub:6:0xE24DD00C
1632         {   2, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00002F
1633         {   3, 0xe59f70a4, 0xfdffffff }, // ldr:4:0xE59F70A4
1634         {   4, 0xe1a0600d, 0xfdffffff }, // mov:6:0xE1A0600D
1635         {   5, 0xe59f50a0, 0xfdffffff }, // ldr:4:0xE59F50A0
1636         {   6, 0xe59f40a0, 0xfdffffff }, // ldr:4:0xE59F40A0
1637         {   7, 0xe1a0c002, 0xfdffffff }, // mov:6:0xE3A0C002
1638         {   8, 0xe1a0e006, 0xfdffffff }, // mov:6:0xE1A0E006
1639         {   9, 0xe1a0210c, 0xfdffffff }, // mov:6:0xE1A0210C
1640         {  10, 0xe5973002, 0xfdffffff }, // ldr:4:0xE7973002
1641         {  11, 0xe5951002, 0xfdffffff }, // ldr:4:0xE7951002
1642         {  12, 0xe5940002, 0xfdffffff }, // ldr:4:0xE7940002
1643         {  13, 0xe0033001, 0xfdffffff }, // and:6:0xE0033001
1644         {  15, 0xe05cc001, 0xfdffffff }, // sub:6:0xE25CC001
1645         {  16, 0xe58e3002, 0xfdffffff }, // str:4:0xE78E3002
1646         {  17, 0x5a000000, 0xff000000 }, // b, bl:3:0x5AFFFFF6
1647         {  18, 0xe59f4074, 0xfdffffff }, // ldr:4:0xE59F4074
1648         {  19, 0xe59f5074, 0xfdffffff }, // ldr:4:0xE59F5074
1649         {  20, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
1650         {  21, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
1651         {  22, 0xe1a02005, 0xfdffffff }, // mov:6:0xE1A02005
1652         {  23, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00002B
1653         {  24, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
1654         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000345
1655         {  26, 0xe1a01002, 0xfdffffff }, // mov:6:0xE3A01002
1656         {  27, 0xe1500001, 0xfdffffff }, // cmp:7:0xE3500001
1657         {  28, 0x11a00000, 0xfdffffff }, // mov:6:0x13A00000
1658         {  29, 0x01a00001, 0xfdffffff }, // mov:6:0x03A00001
1659         {  30, 0xe1a0e101, 0xfdffffff }, // mov:6:0xE1A0E101
1660         {  31, 0xe595c00e, 0xfdffffff }, // ldr:4:0xE795C00E
1661         { -1, -1, -1 },
1662         /* 30/32 */
1663 };
1664 
1665 static FuncSig func_sig_kbd_p2_f_1[] = {
1666         {   1, 0xe04dd014, 0xfdffffff }, // sub:6:0xE24DD014
1667         {   2, 0xe08d5007, 0xfdffffff }, // add:6:0xE28D5007
1668         {   3, 0xea000000, 0xff000000 }, // b, bl:3:0xEA00001F
1669         {   4, 0xe08d4008, 0xfdffffff }, // add:6:0xE28D4008
1670         {   6, 0xe59f1190, 0xfdffffff }, // ldr:4:0xE59F1190
1671         {   7, 0xe1a0200d, 0xfdffffff }, // mov:6:0xE1A0200D
1672         {   8, 0xe1a03004, 0xfdffffff }, // mov:6:0xE1A03004
1673         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00032D
1674         {  10, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1675         {  11, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000A
1676         {  12, 0xe59d0000, 0xfdffffff }, // ldr:4:0xE59D0000
1677         {  13, 0xe1500102, 0xfdffffff }, // cmp:7:0xE3500102
1678         {  14, 0x11500000, 0xfdffffff }, // cmp:7:0x13500000
1679         {  15, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000003
1680         {  16, 0xe1500106, 0xfdffffff }, // cmp:7:0xE3500106
1681         {  17, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000001
1682         {  18, 0xe1500001, 0xfdffffff }, // cmp:7:0xE3500001
1683         {  19, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000001
1684         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000059
1685         {  21, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000000
1686         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000081
1687         {  23, 0xe59fc150, 0xfdffffff }, // ldr:4:0xE59FC150
1688         {  24, 0xe1a0e004, 0xfdffffff }, // mov:6:0xE1A0E004
1689         {  25, 0xe1a03402, 0xfdffffff }, // mov:6:0xE3A03402
1690         {  26, 0xe1a03c43, 0xfdffffff }, // mov:6:0xE1A03C43
1691         {  27, 0xe1a01103, 0xfdffffff }, // mov:6:0xE1A01103
1692         {  28, 0xe59e2001, 0xfdffffff }, // ldr:4:0xE79E2001
1693         {  29, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
1694         {  30, 0xe0430001, 0xfdffffff }, // sub:6:0xE2430001
1695         {  31, 0x159c3001, 0xfdffffff }, // ldr:4:0x179C3001
1696         { -1, -1, -1 },
1697         /* 30/32 */
1698 };
1699 
1700 static FuncSig func_sig_kbd_pwr_off_1[] = {
1701         {   0, 0xe1a020d0, 0xfdffffff }, // mov:6:0xE3A020D0
1702         {   1, 0xe0822103, 0xfdffffff }, // add:6:0xE2822103
1703         {   2, 0xe0822822, 0xfdffffff }, // add:6:0xE2822822
1704         {   3, 0xe5923000, 0xfdffffff }, // ldr:4:0xE5923000
1705         {   5, 0xe5823000, 0xfdffffff }, // str:4:0xE5823000
1706         {   6, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1707         { -1, -1, -1 },
1708         /* 6/7 */
1709 };
1710 
1711 static FuncSig func_sig_kbd_pwr_on_1[] = {
1712         {   0, 0xe1a020d0, 0xfdffffff }, // mov:6:0xE3A020D0
1713         {   1, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
1714         {   2, 0xe0822103, 0xfdffffff }, // add:6:0xE2822103
1715         {   3, 0xe0822822, 0xfdffffff }, // add:6:0xE2822822
1716         {   4, 0xe5923000, 0xfdffffff }, // ldr:4:0xE5923000
1717         {   6, 0xe5823000, 0xfdffffff }, // str:4:0xE5823000
1718         {   7, 0xe1a00032, 0xfdffffff }, // mov:6:0xE3A00032
1719         {   8, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
1720         {   9, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000009
1721         { -1, -1, -1 },
1722         /* 9/10 */
1723 };
1724 
1725 static FuncSig func_sig_kbd_read_keys_r2_1[] = {
1726         {   1, 0xe1a04822, 0xfdffffff }, // mov:6:0xE3A04822
1727         {   2, 0xe0844a03, 0xfdffffff }, // add:6:0xE2844A03
1728         {   3, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
1729         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000186
1730         {   6, 0xe59f6038, 0xfdffffff }, // ldr:4:0xE59F6038
1731         {   8, 0xe1a012a3, 0xfdffffff }, // mov:6:0xE1A012A3
1732         {   9, 0xe5952101, 0xfdffffff }, // ldr:4:0xE7952101
1733         {  10, 0xe003301f, 0xfdffffff }, // and:6:0xE203301F
1734         {  12, 0xe5852101, 0xfdffffff }, // str:4:0xE7852101
1735         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00017D
1736         {  16, 0xe1a012a2, 0xfdffffff }, // mov:6:0xE1A012A2
1737         {  17, 0xe5953101, 0xfdffffff }, // ldr:4:0xE7953101
1738         {  18, 0xe002201f, 0xfdffffff }, // and:6:0xE202201F
1739         {  20, 0xe5853101, 0xfdffffff }, // str:4:0xE7853101
1740         {  24, 0xe1a08001, 0xfdffffff }, // mov:6:0xE1A08001
1741         {  25, 0xe04dd00c, 0xfdffffff }, // sub:6:0xE24DD00C
1742         {  26, 0xe1a0e000, 0xfdffffff }, // mov:6:0xE3A0E000
1743         {  27, 0xe1a0500d, 0xfdffffff }, // mov:6:0xE1A0500D
1744         {  29, 0xe59f6080, 0xfdffffff }, // ldr:4:0xE59F6080
1745         {  30, 0xe1a0c002, 0xfdffffff }, // mov:6:0xE3A0C002
1746         {  31, 0xe1a04005, 0xfdffffff }, // mov:6:0xE1A04005
1747         { -1, -1, -1 },
1748         /* 21/32 */
1749 };
1750 
1751 static FuncSig func_sig_localtime_1[] = {
1752         {   1, 0xe59fb010, 0xfdffffff }, // ldr:4:0xE59FB010
1753         {   2, 0xe1a0100b, 0xfdffffff }, // mov:6:0xE1A0100B
1754         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFD7
1755         {   4, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1756         {   6, 0x0000f898, 0xfdffffff }, // and:6:0x0000F898 mul:11:0x0000F898
1757         {   7, 0x00082cec, 0xfdffffff }, // and:6:0x00082CEC
1758         {   9, 0xe1a08000, 0xfdffffff }, // mov:6:0xE1A08000
1759         {  10, 0xe1a09001, 0xfdffffff }, // mov:6:0xE1A09001
1760         {  11, 0xe5910000, 0xfdffffff }, // ldr:4:0xE5910000
1761         {  12, 0xe1a0a002, 0xfdffffff }, // mov:6:0xE1A0A002
1762         {  13, 0xe1a01002, 0xfdffffff }, // mov:6:0xE1A01002
1763         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE287
1764         {  15, 0xe5983000, 0xfdffffff }, // ldr:4:0xE5983000
1765         {  16, 0xe1a0100a, 0xfdffffff }, // mov:6:0xE1A0100A
1766         {  17, 0xe0800003, 0xfdffffff }, // add:6:0xE0800003
1767         {  18, 0xe5880000, 0xfdffffff }, // str:4:0xE5880000
1768         {  19, 0xe599b000, 0xfdffffff }, // ldr:4:0xE599B000
1769         {  20, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1770         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE280
1771         {  22, 0xe000009a, 0xfdffffff }, // and:6:0xE000009A mul:11:0xE000009A
1772         {  23, 0xe1a0100a, 0xfdffffff }, // mov:6:0xE1A0100A
1773         {  24, 0xe04bb000, 0xfdffffff }, // sub:6:0xE04BB000
1774         {  25, 0xe589b000, 0xfdffffff }, // str:4:0xE589B000
1775         {  26, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1776         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE27A
1777         {  28, 0xe000009a, 0xfdffffff }, // and:6:0xE000009A mul:11:0xE000009A
1778         {  29, 0xe04b0000, 0xfdffffff }, // sub:6:0xE04B0000
1779         {  30, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1780         {  31, 0xaa000000, 0xff000000 }, // b, bl:3:0xAA000005
1781         { -1, -1, -1 },
1782         /* 32/32 */
1783 };
1784 
1785 static FuncSig func_sig_lseek_1[] = {
1786         {   0, 0xe1b02002, 0xfdffffff }, // mov:6:0xE1B02002
1787         {   2, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
1788         {   3, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000
1789         {   4, 0xe1a0b001, 0xfdffffff }, // mov:6:0xE1A0B001
1790         {   5, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000004
1791         {   6, 0xe1520001, 0xfdffffff }, // cmp:7:0xE3520001
1792         {   7, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000009
1793         {   8, 0xe1520002, 0xfdffffff }, // cmp:7:0xE3520002
1794         {   9, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000015
1795         {  10, 0xea000000, 0xff000000 }, // b, bl:3:0xEA00002B
1796         {  11, 0xe1a0200b, 0xfdffffff }, // mov:6:0xE1A0200B
1797         {  12, 0xe1a01007, 0xfdffffff }, // mov:6:0xE3A01007
1798         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFF0
1799         {  14, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1800         {  16, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1801         {  17, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000025
1802         {  18, 0xe1a01008, 0xfdffffff }, // mov:6:0xE3A01008
1803         {  19, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
1804         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFE9
1805         {  22, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A00001F
1806         {  23, 0xe08bb000, 0xfdffffff }, // add:6:0xE08BB000
1807         {  24, 0xe1a00009, 0xfdffffff }, // mov:6:0xE1A00009
1808         {  25, 0xe1a0200b, 0xfdffffff }, // mov:6:0xE1A0200B
1809         {  26, 0xe1a01007, 0xfdffffff }, // mov:6:0xE3A01007
1810         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFE2
1811         {  28, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1812         {  30, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1813         {  31, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000017
1814         { -1, -1, -1 },
1815         /* 28/32 */
1816 };
1817 
1818 static FuncSig func_sig_malloc_1[] = {
1819         {   0, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
1820         {   1, 0xe59f0070, 0xfdffffff }, // ldr:4:0xE59F0070
1821         {   2, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFFDF
1822         {   3, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
1823         {   4, 0xe59f0064, 0xfdffffff }, // ldr:4:0xE59F0064
1824         {   5, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFE1E
1825         {   6, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
1826         {   7, 0xe080000c, 0xfdffffff }, // add:6:0xE280000C
1827         {   8, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
1828         {   9, 0xea000000, 0xff000000 }, // b, bl:3:0xEA003068
1829         {  10, 0x00110004, 0xfdffffff }, // and:6:0x00110004
1830         {  11, 0x0000eb7c, 0xfdffffff }, // and:6:0x0000EB7C
1831         {  12, 0x00580001, 0xfdffffff }, // sub:6:0x00580001
1832         {  13, 0x000a0754, 0xfdffffff }, // and:6:0x000A0754
1833         {  14, 0x0000eb64, 0xfdffffff }, // and:6:0x0000EB64
1834         {  16, 0x00110002, 0xfdffffff }, // and:6:0x00110002
1835         {  17, 0x0000e9ac, 0xfdffffff }, // and:6:0x0000E9AC
1836         {  18, 0x000a0318, 0xfdffffff }, // and:6:0x000A0318
1837         {  19, 0x00002732, 0xfdffffff }, // and:6:0x00002732
1838         {  20, 0x000a0260, 0xfdffffff }, // and:6:0x000A0260
1839         {  21, 0x10000100, 0xfdffffff }, // and:6:0x10000100
1840         {  22, 0x000a0244, 0xfdffffff }, // and:6:0x000A0244
1841         {  23, 0x0000eb74, 0xfdffffff }, // and:6:0x0000EB74
1842         {  24, 0x0000eb70, 0xfdffffff }, // and:6:0x0000EB70
1843         {  25, 0x000a0368, 0xfdffffff }, // and:6:0x000A0368
1844         {  26, 0x0000eb88, 0xfdffffff }, // and:6:0x0000EB88
1845         {  27, 0x00082ec0, 0xfdffffff }, // and:6:0x00082EC0
1846         {  31, 0x00082e08, 0xfdffffff }, // and:6:0x00082E08
1847         { -1, -1, -1 },
1848         /* 28/32 */
1849 };
1850 
1851 static FuncSig func_sig_memPartInfoGet_1[] = {
1852         {   1, 0xe1b08000, 0xfdffffff }, // mov:6:0xE1B08000
1853         {   2, 0xe1a0b001, 0xfdffffff }, // mov:6:0xE1A0B001
1854         {   3, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
1855         {   4, 0xe1510000, 0xfdffffff }, // cmp:7:0xE3510000
1856         {   6, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A00004F
1857         {   7, 0xe1180001, 0xfdffffff }, // tst:7:0xE3180001
1858         {   9, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00004C
1859         {  10, 0xe59fa130, 0xfdffffff }, // ldr:4:0xE59FA130
1860         {  11, 0xe5989000, 0xfdffffff }, // ldr:4:0xE5989000
1861         {  12, 0xe59aa000, 0xfdffffff }, // ldr:4:0xE59AA000
1862         {  13, 0xe159000a, 0xfdffffff }, // cmp:7:0xE159000A
1863         {  14, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000009
1864         {  15, 0xe1590000, 0xfdffffff }, // cmp:7:0xE3590000
1865         {  16, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000002
1866         {  17, 0xe59ac024, 0xfdffffff }, // ldr:4:0xE59AC024
1867         {  18, 0xe15c0009, 0xfdffffff }, // cmp:7:0xE15C0009
1868         {  19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000004
1869         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE4A8
1870         {  21, 0xe59fc114, 0xfdffffff }, // ldr:4:0xE59FC114
1871         {  22, 0xe580c000, 0xfdffffff }, // str:4:0xE580C000
1872         {  24, 0xea000000, 0xff000000 }, // b, bl:3:0xEA00003D
1873         {  25, 0xe1a09000, 0xfdffffff }, // mov:6:0xE3A09000
1874         {  26, 0xe088000c, 0xfdffffff }, // add:6:0xE288000C
1875         {  27, 0xe5819000, 0xfdffffff }, // str:4:0xE5819000
1876         {  28, 0xe5819004, 0xfdffffff }, // str:4:0xE5819004
1877         {  29, 0xe5819008, 0xfdffffff }, // str:4:0xE5819008
1878         {  30, 0xe581900c, 0xfdffffff }, // str:4:0xE581900C
1879         {  31, 0xe5819010, 0xfdffffff }, // str:4:0xE5819010
1880         { -1, -1, -1 },
1881         /* 28/32 */
1882 };
1883 
1884 static FuncSig func_sig_memchr_1[] = {
1885         {   1, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
1886         {   2, 0xe00110ff, 0xfdffffff }, // and:6:0xE20110FF
1887         {   3, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000004
1888         {   5, 0xe15c0001, 0xfdffffff }, // cmp:7:0xE15C0001
1889         {   6, 0x004b0001, 0xfdffffff }, // sub:6:0x024B0001
1890         {   7, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000003
1891         {   8, 0xe0422001, 0xfdffffff }, // sub:6:0xE2422001
1892         {   9, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
1893         {  10, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFF8
1894         {  11, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
1895         {  13, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
1896         {  14, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
1897         {  15, 0x01a0f00e, 0xfdffffff }, // mov:6:0x01A0F00E
1898         {  18, 0xe15c0003, 0xfdffffff }, // cmp:7:0xE15C0003
1899         {  19, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000003
1900         {  20, 0xe0522001, 0xfdffffff }, // sub:6:0xE2522001
1901         {  21, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFF9
1902         {  22, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
1903         {  23, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
1904         { -1, -1, -1 },
1905         /* 19/32 */
1906 };
1907 
1908 static FuncSig func_sig_memcpy_1[] = {
1909         {   1, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
1910         {   2, 0xe1a00001, 0xfdffffff }, // mov:6:0xE1A00001
1911         {   3, 0xe1a0100b, 0xfdffffff }, // mov:6:0xE1A0100B
1912         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFB3B7
1913         {   5, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
1914         {   7, 0xe1510000, 0xfdffffff }, // cmp:7:0xE1510000
1915         {   9, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
1916         {  10, 0xe1a0a001, 0xfdffffff }, // mov:6:0xE1A0A001
1917         {  11, 0x2a000000, 0xff000000 }, // b, bl:3:0x2A00000E
1918         {  12, 0xe081c002, 0xfdffffff }, // add:6:0xE081C002
1919         {  13, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE15C0000
1920         {  14, 0x9a000000, 0xff000000 }, // b, bl:3:0x9A00000B
1921         {  15, 0xe0811002, 0xfdffffff }, // add:6:0xE0811002
1922         {  16, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
1923         {  17, 0xe080b002, 0xfdffffff }, // add:6:0xE080B002
1924         {  18, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000009
1925         {  20, 0xe0522001, 0xfdffffff }, // sub:6:0xE2522001
1926         {  22, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFB
1927         {  23, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000004
1928         {  25, 0xe0422001, 0xfdffffff }, // sub:6:0xE2422001
1929         {  27, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
1930         {  28, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFA
1931         {  31, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
1932         { -1, -1, -1 },
1933         /* 23/32 */
1934 };
1935 
1936 static FuncSig func_sig_mkdir_1[] = {
1937         {   1, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
1938         {   2, 0xe1a0500d, 0xfdffffff }, // mov:6:0xE1A0500D
1939         {   3, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
1940         {   4, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
1941         {   5, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
1942         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF4C
1943         {   7, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
1944         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF5B
1945         {   9, 0xe1a06000, 0xfdffffff }, // mov:6:0xE3A06000
1946         {  10, 0xe1a08000, 0xfdffffff }, // mov:6:0xE1A08000
1947         {  11, 0xe1a02006, 0xfdffffff }, // mov:6:0xE1A02006
1948         {  12, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
1949         {  13, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
1950         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB097EDB
1951         {  15, 0xe0507000, 0xfdffffff }, // sub:6:0xE2507000
1952         {  16, 0xe1a0101f, 0xfdffffff }, // mov:6:0xE3A0101F
1953         {  17, 0xe1a02008, 0xfdffffff }, // mov:6:0xE1A02008
1954         {  18, 0xe1a0a006, 0xfdffffff }, // mov:6:0xE1A0A006
1955         {  19, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000004
1956         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB097D94
1957         {  21, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
1958         {  22, 0xe1a00007, 0xfdffffff }, // mov:6:0xE1A00007
1959         {  23, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB097D41
1960         {  24, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
1961         {  25, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
1962         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF51
1963         {  27, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
1964         {  28, 0xe1a00008, 0xfdffffff }, // mov:6:0xE1A00008
1965         {  29, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0001D7
1966         {  30, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
1967         {  31, 0xe1570000, 0xfdffffff }, // cmp:7:0xE1570000
1968         { -1, -1, -1 },
1969         /* 31/32 */
1970 };
1971 
1972 static FuncSig func_sig_mktime_1[] = {
1973         {   1, 0xe04dd01c, 0xfdffffff }, // sub:6:0xE24DD01C
1974         {   2, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
1975         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFB0
1976         {   4, 0xe59b9000, 0xfdffffff }, // ldr:4:0xE59B9000
1977         {   5, 0xe59bc004, 0xfdffffff }, // ldr:4:0xE59BC004
1978         {   6, 0xe1a0303c, 0xfdffffff }, // mov:6:0xE3A0303C
1979         {   7, 0xe59b0014, 0xfdffffff }, // ldr:4:0xE59B0014
1980         {   8, 0xe59b1010, 0xfdffffff }, // ldr:4:0xE59B1010
1981         {   9, 0xe59b200c, 0xfdffffff }, // ldr:4:0xE59B200C
1982         {  11, 0xe59bc008, 0xfdffffff }, // ldr:4:0xE59BC008
1983         {  12, 0xe1a03ee1, 0xfdffffff }, // mov:6:0xE3A03EE1
1984         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEDA
1985         {  15, 0xe0401001, 0xfdffffff }, // sub:6:0xE2401001
1986         {  16, 0xe59ba014, 0xfdffffff }, // ldr:4:0xE59BA014
1987         {  17, 0xe58b101c, 0xfdffffff }, // str:4:0xE58B101C
1988         {  18, 0xe59fc094, 0xfdffffff }, // ldr:4:0xE59FC094
1989         {  19, 0xe59f3094, 0xfdffffff }, // ldr:4:0xE59F3094
1990         {  20, 0xe08ac00c, 0xfdffffff }, // add:6:0xE08AC00C
1991         {  21, 0xe15c0003, 0xfdffffff }, // cmp:7:0xE15C0003
1992         {  23, 0xba000000, 0xff000000 }, // b, bl:3:0xBA00001D
1993         {  24, 0xe04a0046, 0xfdffffff }, // sub:6:0xE24A0046
1994         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEC2
1995         {  26, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
1996         {  27, 0xe0800004, 0xfdffffff }, // add:6:0xE2800004
1997         {  28, 0xe1a01007, 0xfdffffff }, // mov:6:0xE3A01007
1998         {  29, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB006FD7
1999         {  30, 0xe58b0018, 0xfdffffff }, // str:4:0xE58B0018
2000         {  31, 0xe59f3068, 0xfdffffff }, // ldr:4:0xE59F3068
2001         { -1, -1, -1 },
2002         /* 28/32 */
2003 };
2004 
2005 static FuncSig func_sig_open_1[] = {
2006         {   0, 0xe1a03000, 0xfdffffff }, // mov:6:0xE3A03000
2007         {   1, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFF68
2008         {   2, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2009         {   4, 0xe1a0b001, 0xfdffffff }, // mov:6:0xE1A0B001
2010         {   5, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000004
2011         {   6, 0xe1510000, 0xfdffffff }, // cmp:7:0xE3510000
2012         {   7, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000002
2013         {   9, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2014         {  10, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000003
2015         {  11, 0xe1a00002, 0xfdffffff }, // mov:6:0xE3A00002
2016         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF04A
2017         {  14, 0xea000000, 0xff000000 }, // b, bl:3:0xEA00000E
2018         {  15, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
2019         {  16, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
2020         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFED
2021         {  18, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2022         {  19, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
2023         {  21, 0xba000000, 0xff000000 }, // b, bl:3:0xBA000007
2024         {  22, 0xe1a0000a, 0xfdffffff }, // mov:6:0xE1A0000A
2025         {  23, 0xe1a0200b, 0xfdffffff }, // mov:6:0xE1A0200B
2026         {  24, 0xe1a0100a, 0xfdffffff }, // mov:6:0xE3A0100A
2027         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEA4
2028         {  26, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2029         {  27, 0xe1a0000a, 0xfdffffff }, // mov:6:0xE1A0000A
2030         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFE51
2031         {  29, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2032         { -1, -1, -1 },
2033         /* 26/32 */
2034 };
2035 
2036 static FuncSig func_sig_opendir_1[] = {
2037         {   1, 0xe04dd048, 0xfdffffff }, // sub:6:0xE24DD048
2038         {   2, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
2039         {   3, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
2040         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001196
2041         {   6, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2042         {   7, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
2043         {   8, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000019
2044         {   9, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
2045         {  10, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2046         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFF0
2047         {  12, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2048         {  13, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000D
2049         {  15, 0xe00cca0f, 0xfdffffff }, // and:6:0xE20CCA0F
2050         {  16, 0xe1a0c80c, 0xfdffffff }, // mov:6:0xE1A0C80C
2051         {  17, 0xe1a0c82c, 0xfdffffff }, // mov:6:0xE1A0C82C
2052         {  18, 0xe15c0901, 0xfdffffff }, // cmp:7:0xE35C0901
2053         {  19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000002
2054         {  20, 0xe1a00014, 0xfdffffff }, // mov:6:0xE3A00014
2055         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0001DD
2056         {  22, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000004
2057         {  23, 0xe1a0006c, 0xfdffffff }, // mov:6:0xE3A0006C
2058         {  24, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
2059         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001887
2060         {  26, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2061         {  27, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000003
2062         {  28, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2063         {  29, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000FEC
2064         {  30, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2065         {  31, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000002
2066         { -1, -1, -1 },
2067         /* 29/32 */
2068 };
2069 
2070 static FuncSig func_sig_qsort_1[] = {
2071         {   0, 0xe1510001, 0xfdffffff }, // cmp:7:0xE3510001
2072         {   3, 0xe1510004, 0xfdffffff }, // cmp:7:0xE3510004
2073         {   4, 0x3a000000, 0xff000000 }, // b, bl:3:0x3A000001
2074         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEF8
2075         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEC7
2076         {   9, 0xe59f002c, 0xfdffffff }, // ldr:4:0xE59F002C
2077         {  10, 0xe59f102c, 0xfdffffff }, // ldr:4:0xE59F102C
2078         {  11, 0xe59fc02c, 0xfdffffff }, // ldr:4:0xE59FC02C
2079         {  12, 0xe5903000, 0xfdffffff }, // ldr:4:0xE5903000
2080         {  14, 0xe5801000, 0xfdffffff }, // str:4:0xE5801000
2081         {  15, 0xe59fc020, 0xfdffffff }, // ldr:4:0xE59FC020
2082         {  16, 0xe00c0821, 0xfdffffff }, // and:6:0xE00C0821
2083         {  17, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2084         { -1, -1, -1 },
2085         /* 13/32 */
2086 };
2087 
2088 static FuncSig func_sig_rand_1[] = {
2089         {   0, 0xe59f002c, 0xfdffffff }, // ldr:4:0xE59F002C
2090         {   1, 0xe59f102c, 0xfdffffff }, // ldr:4:0xE59F102C
2091         {   2, 0xe59fc02c, 0xfdffffff }, // ldr:4:0xE59FC02C
2092         {   3, 0xe5903000, 0xfdffffff }, // ldr:4:0xE5903000
2093         {   5, 0xe5801000, 0xfdffffff }, // str:4:0xE5801000
2094         {   6, 0xe59fc020, 0xfdffffff }, // ldr:4:0xE59FC020
2095         {   7, 0xe00c0821, 0xfdffffff }, // and:6:0xE00C0821
2096         {   8, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2097         { -1, -1, -1 },
2098         /* 8/32 */
2099 };
2100 
2101 static FuncSig func_sig_readdir_1[] = {
2102         {   1, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2103         {   2, 0xe5900000, 0xfdffffff }, // ldr:4:0xE5900000
2104         {   3, 0xe1a01025, 0xfdffffff }, // mov:6:0xE3A01025
2105         {   4, 0xe1a0200b, 0xfdffffff }, // mov:6:0xE1A0200B
2106         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00106E
2107         {   6, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2108         {   7, 0x11a00000, 0xfdffffff }, // mov:6:0x13A00000
2109         {   8, 0x008b0008, 0xfdffffff }, // add:6:0x028B0008
2110         {  10, 0xe1a0c000, 0xfdffffff }, // mov:6:0xE3A0C000
2111         {  11, 0xe580c004, 0xfdffffff }, // str:4:0xE580C004
2112         {  12, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2113         { -1, -1, -1 },
2114         /* 11/32 */
2115 };
2116 
2117 static FuncSig func_sig_srand_1[] = {
2118         {   0, 0xe59fc008, 0xfdffffff }, // ldr:4:0xE59FC008
2119         {   1, 0xe58c0000, 0xfdffffff }, // str:4:0xE58C0000
2120         {   2, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2121         {   3, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2122         { -1, -1, -1 },
2123         /* 4/32 */
2124 };
2125 
2126 static FuncSig func_sig_stat_1[] = {
2127         {   1, 0xe1a0a001, 0xfdffffff }, // mov:6:0xE1A0A001
2128         {   2, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
2129         {   3, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
2130         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001171
2131         {   6, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2132         {   8, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000006
2133         {   9, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2134         {  10, 0xe1a0100a, 0xfdffffff }, // mov:6:0xE1A0100A
2135         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFCB
2136         {  12, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
2137         {  13, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2138         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000FD6
2139         {  17, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
2140         {  18, 0xe1a0102e, 0xfdffffff }, // mov:6:0xE3A0102E
2141         {  19, 0xea000000, 0xff000000 }, // b, bl:3:0xEA001021
2142         {  21, 0xe1a0a001, 0xfdffffff }, // mov:6:0xE1A0A001
2143         {  22, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
2144         {  23, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
2145         {  24, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00115D
2146         {  26, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2147         {  28, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000006
2148         {  29, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2149         {  30, 0xe1a0100a, 0xfdffffff }, // mov:6:0xE1A0100A
2150         {  31, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFF0
2151         { -1, -1, -1 },
2152         /* 24/32 */
2153 };
2154 
2155 static FuncSig func_sig_strcat_1[] = {
2156         {   0, 0xe1a02000, 0xfdffffff }, // mov:6:0xE1A02000
2157         {   2, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2158         {   3, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFC
2159         {   4, 0xe0400001, 0xfdffffff }, // sub:6:0xE2400001
2160         {   6, 0xe013c0ff, 0xfdffffff }, // and:6:0xE213C0FF
2161         {   8, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFB
2162         {   9, 0xe1a00002, 0xfdffffff }, // mov:6:0xE1A00002
2163         {  10, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2164         { -1, -1, -1 },
2165         /* 8/32 */
2166 };
2167 
2168 static FuncSig func_sig_strchr_1[] = {
2169         {   0, 0xe00110ff, 0xfdffffff }, // and:6:0xE20110FF
2170         {   2, 0xe15c0001, 0xfdffffff }, // cmp:7:0xE15C0001
2171         {   3, 0x01a0f00e, 0xfdffffff }, // mov:6:0x01A0F00E
2172         {   5, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2173         {   6, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFF9
2174         {   7, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2175         {   8, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2176         { -1, -1, -1 },
2177         /* 7/32 */
2178 };
2179 
2180 static FuncSig func_sig_strftime_1[] = {
2181         {   1, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
2182         {   2, 0xe59fc018, 0xfdffffff }, // ldr:4:0xE59FC018
2183         {   3, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2184         {   4, 0xe58dc000, 0xfdffffff }, // str:4:0xE58DC000
2185         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFAA
2186         {   6, 0xe08dd004, 0xfdffffff }, // add:6:0xE28DD004
2187         { -1, -1, -1 },
2188         /* 6/8 */
2189 };
2190 
2191 static FuncSig func_sig_strncmp_1[] = {
2192         {   0, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
2193         {   1, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
2194         {   2, 0x01a0f00e, 0xfdffffff }, // mov:6:0x01A0F00E
2195         {   5, 0xe15c0003, 0xfdffffff }, // cmp:7:0xE15C0003
2196         {   7, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000005
2197         {   8, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2198         {   9, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000001
2199         {  10, 0xe0522001, 0xfdffffff }, // sub:6:0xE2522001
2200         {  11, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFF6
2201         {  12, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2202         {  13, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2203         { -1, -1, -1 },
2204         /* 11/32 */
2205 };
2206 
2207 static FuncSig func_sig_strncpy_1[] = {
2208         {   0, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
2209         {   2, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2210         {   3, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A00000C
2211         {   5, 0xe013c0ff, 0xfdffffff }, // and:6:0xE213C0FF
2212         {   7, 0x00422001, 0xfdffffff }, // sub:6:0x02422001
2213         {   8, 0x01a01000, 0xfdffffff }, // mov:6:0x03A01000
2214         {   9, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000004
2215         {  10, 0xe0522001, 0xfdffffff }, // sub:6:0xE2522001
2216         {  11, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFF7
2217         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000003
2218         {  14, 0xe0422001, 0xfdffffff }, // sub:6:0xE2422001
2219         {  15, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
2220         {  16, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFB
2221         {  18, 0xe1a02000, 0xfdffffff }, // mov:6:0xE1A02000
2222         {  21, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2223         {  22, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000007
2224         {  23, 0xe1a0b001, 0xfdffffff }, // mov:6:0xE1A0B001
2225         {  25, 0xe15a0000, 0xfdffffff }, // cmp:7:0xE35A0000
2226         {  26, 0x0a000000, 0xff000000 }, // b, bl:3:0x0AFFFFF8
2227         {  27, 0xe15a0000, 0xfdffffff }, // cmp:7:0xE15A0000
2228         {  28, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFA
2229         {  29, 0xe0420001, 0xfdffffff }, // sub:6:0xE2420001
2230         {  30, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000000
2231         {  31, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2232         { -1, -1, -1 },
2233         /* 24/32 */
2234 };
2235 
2236 static FuncSig func_sig_strpbrk_1[] = {
2237         {   0, 0xe1a02000, 0xfdffffff }, // mov:6:0xE1A02000
2238         {   3, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2239         {   4, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000007
2240         {   5, 0xe1a0b001, 0xfdffffff }, // mov:6:0xE1A0B001
2241         {   7, 0xe15a0000, 0xfdffffff }, // cmp:7:0xE35A0000
2242         {   8, 0x0a000000, 0xff000000 }, // b, bl:3:0x0AFFFFF8
2243         {   9, 0xe15a0000, 0xfdffffff }, // cmp:7:0xE15A0000
2244         {  10, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFA
2245         {  11, 0xe0420001, 0xfdffffff }, // sub:6:0xE2420001
2246         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000000
2247         {  13, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2248         {  15, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
2249         {  16, 0xe00110ff, 0xfdffffff }, // and:6:0xE20110FF
2250         {  18, 0xe15c0001, 0xfdffffff }, // cmp:7:0xE15C0001
2251         {  19, 0x01a02000, 0xfdffffff }, // mov:6:0x01A02000
2252         {  21, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2253         {  22, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFF9
2254         {  23, 0xe1a00002, 0xfdffffff }, // mov:6:0xE1A00002
2255         {  24, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2256         { -1, -1, -1 },
2257         /* 19/32 */
2258 };
2259 
2260 static FuncSig func_sig_strrchr_1[] = {
2261         {   0, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
2262         {   1, 0xe00110ff, 0xfdffffff }, // and:6:0xE20110FF
2263         {   3, 0xe15c0001, 0xfdffffff }, // cmp:7:0xE15C0001
2264         {   4, 0x01a02000, 0xfdffffff }, // mov:6:0x01A02000
2265         {   6, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2266         {   7, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFF9
2267         {   8, 0xe1a00002, 0xfdffffff }, // mov:6:0xE1A00002
2268         {   9, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2269         { -1, -1, -1 },
2270         /* 8/32 */
2271 };
2272 
2273 static FuncSig func_sig_strtol_1[] = {
2274         {   0, 0xe04dd008, 0xfdffffff }, // sub:6:0xE24DD008
2275         {   2, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
2276         {   3, 0xe1a06002, 0xfdffffff }, // mov:6:0xE1A06002
2277         {   4, 0xe58d0028, 0xfdffffff }, // str:4:0xE58D0028
2278         {   5, 0xe58d102c, 0xfdffffff }, // str:4:0xE58D102C
2279         {   6, 0xe59f7180, 0xfdffffff }, // ldr:4:0xE59F7180
2280         {   7, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000
2281         {   8, 0xe1a05000, 0xfdffffff }, // mov:6:0xE3A05000
2282         {   9, 0xe5977000, 0xfdffffff }, // ldr:4:0xE5977000
2283         {  12, 0xe1130028, 0xfdffffff }, // tst:7:0xE3130028
2284         {  13, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFB
2285         {  14, 0xe15b002d, 0xfdffffff }, // cmp:7:0xE35B002D
2286         {  15, 0x01a05001, 0xfdffffff }, // mov:6:0x03A05001
2287         {  16, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
2288         {  17, 0xe15b002b, 0xfdffffff }, // cmp:7:0xE35B002B
2289         {  19, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
2290         {  20, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000001
2291         {  21, 0xe1520010, 0xfdffffff }, // cmp:7:0xE3520010
2292         {  22, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000008
2293         {  23, 0xe15b0030, 0xfdffffff }, // cmp:7:0xE35B0030
2294         {  24, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000006
2295         {  26, 0xe15a0078, 0xfdffffff }, // cmp:7:0xE35A0078
2296         {  27, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
2297         {  28, 0xe15a0058, 0xfdffffff }, // cmp:7:0xE35A0058
2298         {  30, 0x00899002, 0xfdffffff }, // add:6:0x02899002
2299         {  31, 0x01a06010, 0xfdffffff }, // mov:6:0x03A06010
2300         { -1, -1, -1 },
2301         /* 26/32 */
2302 };
2303 
2304 static FuncSig func_sig_strtoul_1[] = {
2305         {   0, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
2306         {   2, 0xe58d1024, 0xfdffffff }, // str:4:0xE58D1024
2307         {   3, 0xe59f6168, 0xfdffffff }, // ldr:4:0xE59F6168
2308         {   4, 0xe1a04000, 0xfdffffff }, // mov:6:0xE3A04000
2309         {   5, 0xe1a07000, 0xfdffffff }, // mov:6:0xE1A07000
2310         {   6, 0xe1a05002, 0xfdffffff }, // mov:6:0xE1A05002
2311         {   7, 0xe5966000, 0xfdffffff }, // ldr:4:0xE5966000
2312         {   8, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000
2313         {  11, 0xe1130028, 0xfdffffff }, // tst:7:0xE3130028
2314         {  12, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFB
2315         {  13, 0xe15b002d, 0xfdffffff }, // cmp:7:0xE35B002D
2316         {  14, 0x01a04001, 0xfdffffff }, // mov:6:0x03A04001
2317         {  15, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
2318         {  16, 0xe15b002b, 0xfdffffff }, // cmp:7:0xE35B002B
2319         {  18, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
2320         {  19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000001
2321         {  20, 0xe1520010, 0xfdffffff }, // cmp:7:0xE3520010
2322         {  21, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000008
2323         {  22, 0xe15b0030, 0xfdffffff }, // cmp:7:0xE35B0030
2324         {  23, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000006
2325         {  25, 0xe1500078, 0xfdffffff }, // cmp:7:0xE3500078
2326         {  26, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
2327         {  27, 0xe1500058, 0xfdffffff }, // cmp:7:0xE3500058
2328         {  29, 0x00899002, 0xfdffffff }, // add:6:0x02899002
2329         {  30, 0x01a05010, 0xfdffffff }, // mov:6:0x03A05010
2330         {  31, 0xe1550000, 0xfdffffff }, // cmp:7:0xE3550000
2331         { -1, -1, -1 },
2332         /* 26/32 */
2333 };
2334 
2335 static FuncSig func_sig_taskCreateHookAdd_1[] = {
2336         {   0, 0xe59f1380, 0xfdffffff }, // ldr:4:0xE59F1380
2337         {   1, 0xe1a02010, 0xfdffffff }, // mov:6:0xE3A02010
2338         {   2, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFFE3
2339         {   4, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000
2340         {   5, 0xe1a0b001, 0xfdffffff }, // mov:6:0xE1A0B001
2341         {   6, 0xe1a0a002, 0xfdffffff }, // mov:6:0xE1A0A002
2342         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002B17
2343         {   8, 0xe15a0000, 0xfdffffff }, // cmp:7:0xE35A0000
2344         {   9, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2345         {  10, 0xda000000, 0xff000000 }, // b, bl:3:0xDA00000E
2346         {  11, 0xe59bc100, 0xfdffffff }, // ldr:4:0xE79BC100
2347         {  12, 0xe15c0009, 0xfdffffff }, // cmp:7:0xE15C0009
2348         {  13, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000008
2349         {  14, 0xe08bb100, 0xfdffffff }, // add:6:0xE08BB100
2350         {  15, 0xe59bc004, 0xfdffffff }, // ldr:4:0xE59BC004
2351         {  16, 0xe0800001, 0xfdffffff }, // add:6:0xE2800001
2352         {  17, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2353         {  18, 0xe48bc004, 0xfdffffff }, // str:4:0xE48BC004
2354         {  19, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFA
2355         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002B34
2356         {  21, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2357         {  22, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000006
2358         {  23, 0xe0800001, 0xfdffffff }, // add:6:0xE2800001
2359         {  24, 0xe150000a, 0xfdffffff }, // cmp:7:0xE150000A
2360         {  25, 0xba000000, 0xff000000 }, // b, bl:3:0xBAFFFFF0
2361         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002B2E
2362         {  27, 0xe59f0308, 0xfdffffff }, // ldr:4:0xE59F0308
2363         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFD81B
2364         {  31, 0xe59f12fc, 0xfdffffff }, // ldr:4:0xE59F12FC
2365         { -1, -1, -1 },
2366         /* 29/32 */
2367 };
2368 
2369 static FuncSig func_sig_taskDeleteHookAdd_1[] = {
2370         {   1, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
2371         {   2, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE3A0B000
2372         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002B4C
2373         {   4, 0xe59f042c, 0xfdffffff }, // ldr:4:0xE59F042C
2374         {   5, 0xe590c040, 0xfdffffff }, // ldr:4:0xE590C040
2375         {   6, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2376         {   7, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000003
2377         {   8, 0xe59f0410, 0xfdffffff }, // ldr:4:0xE59F0410
2378         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFD85F
2379         {  11, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000008
2380         {  12, 0xe1a0200e, 0xfdffffff }, // mov:6:0xE3A0200E
2381         {  13, 0xe0801038, 0xfdffffff }, // add:6:0xE2801038
2382         {  14, 0xe591c000, 0xfdffffff }, // ldr:4:0xE591C000
2383         {  15, 0xe0422001, 0xfdffffff }, // sub:6:0xE2422001
2384         {  16, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
2385         {  17, 0xe581c004, 0xfdffffff }, // str:4:0xE581C004
2386         {  18, 0xe0411004, 0xfdffffff }, // sub:6:0xE2411004
2387         {  19, 0xaa000000, 0xff000000 }, // b, bl:3:0xAAFFFFF9
2388         {  20, 0xe580a000, 0xfdffffff }, // str:4:0xE580A000
2389         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002B64
2390         {  22, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2391         {  25, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000
2392         {  26, 0xe1a0a001, 0xfdffffff }, // mov:6:0xE1A0A001
2393         {  27, 0xe1a0b002, 0xfdffffff }, // mov:6:0xE1A0B002
2394         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002B33
2395         {  29, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE35B0000
2396         {  30, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000009
2397         {  31, 0xe04aa004, 0xfdffffff }, // sub:6:0xE24AA004
2398         { -1, -1, -1 },
2399         /* 28/32 */
2400 };
2401 
2402 static FuncSig func_sig_taskIdListGet_1[] = {
2403         {   1, 0xe04dd008, 0xfdffffff }, // sub:6:0xE24DD008
2404         {   2, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2405         {   3, 0xe1a0a001, 0xfdffffff }, // mov:6:0xE1A0A001
2406         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0001A9
2407         {   5, 0xe59f005c, 0xfdffffff }, // ldr:4:0xE59F005C
2408         {   6, 0xe1a0200a, 0xfdffffff }, // mov:6:0xE1A0200A
2409         {   7, 0xe1a0100b, 0xfdffffff }, // mov:6:0xE1A0100B
2410         {   8, 0xe590300c, 0xfdffffff }, // ldr:4:0xE590300C
2411         {   9, 0xe5933030, 0xfdffffff }, // ldr:4:0xE5933030
2412         {  10, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
2413         {  11, 0xe1a0f003, 0xfdffffff }, // mov:6:0xE1A0F003
2414         {  12, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000
2415         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0001CA
2416         {  14, 0xe1590000, 0xfdffffff }, // cmp:7:0xE3590000
2417         {  15, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000005
2418         {  16, 0xe1a0a009, 0xfdffffff }, // mov:6:0xE1A0A009
2419         {  17, 0xe59bc000, 0xfdffffff }, // ldr:4:0xE59BC000
2420         {  18, 0xe05aa001, 0xfdffffff }, // sub:6:0xE25AA001
2421         {  19, 0xe04cc020, 0xfdffffff }, // sub:6:0xE24CC020
2422         {  20, 0xe48bc004, 0xfdffffff }, // str:4:0xE48BC004
2423         {  21, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFA
2424         {  22, 0xe08dd008, 0xfdffffff }, // add:6:0xE28DD008
2425         {  23, 0xe1a00009, 0xfdffffff }, // mov:6:0xE1A00009
2426         {  25, 0x0000e9e0, 0xfdffffff }, // and:6:0x0000E9E0
2427         {  26, 0x00430001, 0xfdffffff }, // sub:6:0x00430001
2428         {  27, 0x000a06ac, 0xfdffffff }, // and:6:0x000A06AC
2429         {  28, 0x000a065c, 0xfdffffff }, // and:6:0x000A065C
2430         {  29, 0x0000fb0c, 0xfdffffff }, // and:6:0x0000FB0C
2431         {  30, 0x0000fa2c, 0xfdffffff }, // and:6:0x0000FA2C
2432         { -1, -1, -1 },
2433         /* 29/32 */
2434 };
2435 
2436 static FuncSig func_sig_taskLock_1[] = {
2437         {   1, 0xe04dd018, 0xfdffffff }, // sub:6:0xE24DD018
2438         {   2, 0xe59fc970, 0xfdffffff }, // ldr:4:0xE59FC970
2439         {   3, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2440         {   4, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2441         {   5, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A00001B
2442         {   6, 0xe59f3964, 0xfdffffff }, // ldr:4:0xE59F3964
2443         {   7, 0xe1a0b211, 0xfdffffff }, // mov:6:0xE3A0B211
2444         {   8, 0xe5933000, 0xfdffffff }, // ldr:4:0xE5933000
2445         {   9, 0xe0033211, 0xfdffffff }, // and:6:0xE2033211
2446         {  10, 0xe153000b, 0xfdffffff }, // cmp:7:0xE153000B
2447         {  11, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000004
2448         {  12, 0xe59fcea0, 0xfdffffff }, // ldr:4:0xE59FCEA0
2449         {  13, 0xe1a00039, 0xfdffffff }, // mov:6:0xE3A00039
2450         {  14, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2451         {  15, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
2452         {  16, 0xe1a0f00c, 0xfdffffff }, // mov:6:0xE1A0F00C
2453         {  17, 0xe59fca14, 0xfdffffff }, // ldr:4:0xE59FCA14
2454         {  18, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2455         {  19, 0xe00cc00b, 0xfdffffff }, // and:6:0xE00CC00B
2456         {  20, 0xe15c000b, 0xfdffffff }, // cmp:7:0xE15C000B
2457         {  21, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000B
2458         {  22, 0xe59fca08, 0xfdffffff }, // ldr:4:0xE59FCA08
2459         {  23, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
2460         {  24, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2461         {  25, 0xe58d1000, 0xfdffffff }, // str:4:0xE58D1000
2462         {  26, 0xe58d1004, 0xfdffffff }, // str:4:0xE58D1004
2463         {  27, 0xe58d1008, 0xfdffffff }, // str:4:0xE58D1008
2464         {  28, 0xe58d100c, 0xfdffffff }, // str:4:0xE58D100C
2465         {  29, 0xe1a00039, 0xfdffffff }, // mov:6:0xE3A00039
2466         {  30, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
2467         {  31, 0xe1a03001, 0xfdffffff }, // mov:6:0xE1A03001
2468         { -1, -1, -1 },
2469         /* 31/32 */
2470 };
2471 
2472 static FuncSig func_sig_taskName_1[] = {
2473         {   1, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000606
2474         {   2, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2475         {   3, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
2476         {   5, 0xe5900034, 0xfdffffff }, // ldr:4:0xE5900034
2477         {   6, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2478         {   7, 0x059f0158, 0xfdffffff }, // ldr:4:0x059F0158
2479         {  10, 0xe04dd008, 0xfdffffff }, // sub:6:0xE24DD008
2480         {  11, 0xe59fb14c, 0xfdffffff }, // ldr:4:0xE59FB14C
2481         {  12, 0xe59f114c, 0xfdffffff }, // ldr:4:0xE59F114C
2482         {  13, 0xe1a02000, 0xfdffffff }, // mov:6:0xE1A02000
2483         {  14, 0xe59b300c, 0xfdffffff }, // ldr:4:0xE59B300C
2484         {  15, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2485         {  16, 0xe5933034, 0xfdffffff }, // ldr:4:0xE5933034
2486         {  17, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
2487         {  18, 0xe1a0f003, 0xfdffffff }, // mov:6:0xE1A0F003
2488         {  19, 0xe1b0a000, 0xfdffffff }, // mov:6:0xE1B0A000
2489         {  20, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000004
2490         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFAEE0
2491         {  22, 0xe59fc128, 0xfdffffff }, // ldr:4:0xE59FC128
2492         {  23, 0xe580c000, 0xfdffffff }, // str:4:0xE580C000
2493         {  25, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000000
2494         {  26, 0xe0400020, 0xfdffffff }, // sub:6:0xE2400020
2495         {  27, 0xe08dd008, 0xfdffffff }, // add:6:0xE28DD008
2496         {  29, 0xe0400020, 0xfdffffff }, // sub:6:0xE2400020
2497         {  31, 0xe5900034, 0xfdffffff }, // ldr:4:0xE5900034
2498         { -1, -1, -1 },
2499         /* 25/32 */
2500 };
2501 
2502 static FuncSig func_sig_taskResume_1[] = {
2503         {   1, 0xe04dd018, 0xfdffffff }, // sub:6:0xE24DD018
2504         {   2, 0xe59fcd50, 0xfdffffff }, // ldr:4:0xE59FCD50
2505         {   3, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
2506         {   4, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2507         {   5, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2508         {   6, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000032
2509         {   7, 0xe59f3d40, 0xfdffffff }, // ldr:4:0xE59F3D40
2510         {   8, 0xe1a0b271, 0xfdffffff }, // mov:6:0xE3A0B271
2511         {   9, 0xe5933000, 0xfdffffff }, // ldr:4:0xE5933000
2512         {  10, 0xe0033271, 0xfdffffff }, // and:6:0xE2033271
2513         {  11, 0xe153000b, 0xfdffffff }, // cmp:7:0xE153000B
2514         {  12, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000018
2515         {  13, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2516         {  14, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000016
2517         {  15, 0xe59f0d08, 0xfdffffff }, // ldr:4:0xE59F0D08
2518         {  16, 0xe59ab030, 0xfdffffff }, // ldr:4:0xE59AB030
2519         {  17, 0xe5900000, 0xfdffffff }, // ldr:4:0xE5900000
2520         {  18, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE15B0000
2521         {  19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000008
2522         {  20, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE35B0000
2523         {  21, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000002
2524         {  22, 0xe590c024, 0xfdffffff }, // ldr:4:0xE590C024
2525         {  23, 0xe15c000b, 0xfdffffff }, // cmp:7:0xE15C000B
2526         {  24, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000003
2527         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFADE3
2528         {  26, 0xe59fccf8, 0xfdffffff }, // ldr:4:0xE59FCCF8
2529         {  27, 0xe580c000, 0xfdffffff }, // str:4:0xE580C000
2530         {  28, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000008
2531         {  29, 0xe59bb030, 0xfdffffff }, // ldr:4:0xE59BB030
2532         {  30, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE35B0000
2533         {  31, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000005
2534         { -1, -1, -1 },
2535         /* 31/32 */
2536 };
2537 
2538 static FuncSig func_sig_taskSuspend_1[] = {
2539         {   1, 0xe04dd018, 0xfdffffff }, // sub:6:0xE24DD018
2540         {   2, 0xe1b09000, 0xfdffffff }, // mov:6:0xE1B09000
2541         {   3, 0x059faf1c, 0xfdffffff }, // ldr:4:0x059FAF1C
2542         {   4, 0xe59fcf1c, 0xfdffffff }, // ldr:4:0xE59FCF1C
2543         {   5, 0x059aa000, 0xfdffffff }, // ldr:4:0x059AA000
2544         {   6, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2545         {   7, 0x11a0a000, 0xfdffffff }, // mov:6:0x11A0A000
2546         {   8, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2547         {   9, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000032
2548         {  10, 0xe59f3f08, 0xfdffffff }, // ldr:4:0xE59F3F08
2549         {  11, 0xe1a0b271, 0xfdffffff }, // mov:6:0xE3A0B271
2550         {  12, 0xe5933000, 0xfdffffff }, // ldr:4:0xE5933000
2551         {  13, 0xe0033271, 0xfdffffff }, // and:6:0xE2033271
2552         {  14, 0xe153000b, 0xfdffffff }, // cmp:7:0xE153000B
2553         {  15, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000019
2554         {  16, 0xe15a0000, 0xfdffffff }, // cmp:7:0xE35A0000
2555         {  17, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000017
2556         {  18, 0xe59f0ed0, 0xfdffffff }, // ldr:4:0xE59F0ED0
2557         {  19, 0xe59ab030, 0xfdffffff }, // ldr:4:0xE59AB030
2558         {  20, 0xe5900000, 0xfdffffff }, // ldr:4:0xE5900000
2559         {  21, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE15B0000
2560         {  22, 0xe1a03000, 0xfdffffff }, // mov:6:0xE1A03000
2561         {  23, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000009
2562         {  24, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE35B0000
2563         {  25, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000003
2564         {  26, 0xe590c024, 0xfdffffff }, // ldr:4:0xE590C024
2565         {  27, 0xe1a0300b, 0xfdffffff }, // mov:6:0xE1A0300B
2566         {  28, 0xe15c000b, 0xfdffffff }, // cmp:7:0xE15C000B
2567         {  29, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000003
2568         {  30, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFAE53
2569         {  31, 0xe59fceb8, 0xfdffffff }, // ldr:4:0xE59FCEB8
2570         { -1, -1, -1 },
2571         /* 31/32 */
2572 };
2573 
2574 static FuncSig func_sig_taskUnlock_1[] = {
2575         {   1, 0xe04dd018, 0xfdffffff }, // sub:6:0xE24DD018
2576         {   2, 0xe59f98c8, 0xfdffffff }, // ldr:4:0xE59F98C8
2577         {   3, 0xe59fb8c0, 0xfdffffff }, // ldr:4:0xE59FB8C0
2578         {   4, 0xe599c000, 0xfdffffff }, // ldr:4:0xE599C000
2579         {   5, 0xe59bb000, 0xfdffffff }, // ldr:4:0xE59BB000
2580         {   6, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2581         {   7, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A00001B
2582         {   8, 0xe59f38b4, 0xfdffffff }, // ldr:4:0xE59F38B4
2583         {   9, 0xe1a0a211, 0xfdffffff }, // mov:6:0xE3A0A211
2584         {  10, 0xe5933000, 0xfdffffff }, // ldr:4:0xE5933000
2585         {  11, 0xe0033211, 0xfdffffff }, // and:6:0xE2033211
2586         {  12, 0xe153000a, 0xfdffffff }, // cmp:7:0xE153000A
2587         {  13, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000004
2588         {  14, 0xe59fcdf0, 0xfdffffff }, // ldr:4:0xE59FCDF0
2589         {  15, 0xe1a0003a, 0xfdffffff }, // mov:6:0xE3A0003A
2590         {  16, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2591         {  17, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
2592         {  18, 0xe1a0f00c, 0xfdffffff }, // mov:6:0xE1A0F00C
2593         {  19, 0xe59fc964, 0xfdffffff }, // ldr:4:0xE59FC964
2594         {  20, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2595         {  21, 0xe00cc00a, 0xfdffffff }, // and:6:0xE00CC00A
2596         {  22, 0xe15c000a, 0xfdffffff }, // cmp:7:0xE15C000A
2597         {  23, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000B
2598         {  24, 0xe59fc958, 0xfdffffff }, // ldr:4:0xE59FC958
2599         {  25, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
2600         {  26, 0xe59cc000, 0xfdffffff }, // ldr:4:0xE59CC000
2601         {  27, 0xe58d1000, 0xfdffffff }, // str:4:0xE58D1000
2602         {  28, 0xe58d1004, 0xfdffffff }, // str:4:0xE58D1004
2603         {  29, 0xe58d1008, 0xfdffffff }, // str:4:0xE58D1008
2604         {  30, 0xe58d100c, 0xfdffffff }, // str:4:0xE58D100C
2605         {  31, 0xe1a0003a, 0xfdffffff }, // mov:6:0xE3A0003A
2606         { -1, -1, -1 },
2607         /* 31/32 */
2608 };
2609 
2610 static FuncSig func_sig_time_1[] = {
2611         {   1, 0xe04dd008, 0xfdffffff }, // sub:6:0xE24DD008
2612         {   2, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
2613         {   3, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2614         {   4, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
2615         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000209
2616         {   6, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2617         {   7, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000004
2618         {   8, 0xe15a0000, 0xfdffffff }, // cmp:7:0xE35A0000
2619         {   9, 0x159dc000, 0xfdffffff }, // ldr:4:0x159DC000
2620         {  10, 0x158ac000, 0xfdffffff }, // str:4:0x158AC000
2621         {  11, 0xe59d0000, 0xfdffffff }, // ldr:4:0xE59D0000
2622         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000000
2623         {  14, 0xe08dd008, 0xfdffffff }, // add:6:0xE28DD008
2624         {  17, 0xe04dd008, 0xfdffffff }, // sub:6:0xE24DD008
2625         {  18, 0xe59fb418, 0xfdffffff }, // ldr:4:0xE59FB418
2626         {  19, 0xe59bb000, 0xfdffffff }, // ldr:4:0xE59BB000
2627         {  20, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE35B0000
2628         {  22, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000002
2629         {  23, 0xe1a0e00f, 0xfdffffff }, // mov:6:0xE1A0E00F
2630         {  24, 0xe1a0f00b, 0xfdffffff }, // mov:6:0xE1A0F00B
2631         {  25, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2632         {  26, 0xe08dd008, 0xfdffffff }, // add:6:0xE28DD008
2633         {  27, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2634         {  30, 0xe04dd008, 0xfdffffff }, // sub:6:0xE24DD008
2635         {  31, 0xe59fb3e8, 0xfdffffff }, // ldr:4:0xE59FB3E8
2636         { -1, -1, -1 },
2637         /* 25/32 */
2638 };
2639 
2640 static FuncSig func_sig_tolower_1[] = {
2641         {   0, 0xe040c041, 0xfdffffff }, // sub:6:0xE240C041
2642         {   1, 0xe15c0019, 0xfdffffff }, // cmp:7:0xE35C0019
2643         {   2, 0x90800020, 0xfdffffff }, // add:6:0x92800020
2644         {   3, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2645         { -1, -1, -1 },
2646         /* 4/32 */
2647 };
2648 
2649 static FuncSig func_sig_toupper_1[] = {
2650         {   0, 0xe040c061, 0xfdffffff }, // sub:6:0xE240C061
2651         {   1, 0xe15c0019, 0xfdffffff }, // cmp:7:0xE35C0019
2652         {   2, 0x90400020, 0xfdffffff }, // sub:6:0x92400020
2653         {   3, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2654         { -1, -1, -1 },
2655         /* 4/32 */
2656 };
2657 
2658 static FuncSig func_sig_utime_1[] = {
2659         {   1, 0xe1a0a001, 0xfdffffff }, // mov:6:0xE1A0A001
2660         {   2, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
2661         {   3, 0xe59f2034, 0xfdffffff }, // ldr:4:0xE59F2034
2662         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00114C
2663         {   6, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2664         {   8, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000007
2665         {   9, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2666         {  10, 0xe1a0200a, 0xfdffffff }, // mov:6:0xE1A0200A
2667         {  11, 0xe1a0102c, 0xfdffffff }, // mov:6:0xE3A0102C
2668         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001003
2669         {  13, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
2670         {  14, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE1A0000B
2671         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000FB0
2672         {  16, 0xe1a0000a, 0xfdffffff }, // mov:6:0xE1A0000A
2673         {  18, 0x000001b6, 0xfdffffff }, // and:6:0x000001B6
2674         {  20, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000
2675         {  21, 0xe1a00032, 0xfdffffff }, // mov:6:0xE3A00032
2676         {  22, 0xe1a01004, 0xfdffffff }, // mov:6:0xE3A01004
2677         {  23, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00183F
2678         {  24, 0xe59fc5d0, 0xfdffffff }, // ldr:4:0xE59FC5D0
2679         {  25, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
2680         {  26, 0xe58c0000, 0xfdffffff }, // str:4:0xE58C0000
2681         {  28, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000010
2682         {  29, 0xe59f05c0, 0xfdffffff }, // ldr:4:0xE59F05C0
2683         {  30, 0xe1a03032, 0xfdffffff }, // mov:6:0xE3A03032
2684         {  31, 0xe15b0000, 0xfdffffff }, // cmp:7:0xE35B0000
2685         { -1, -1, -1 },
2686         /* 26/32 */
2687 };
2688 
2689 static FuncSig func_sig_vsprintf_1[] = {
2690         {   0, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
2691         {   1, 0xe1a0c002, 0xfdffffff }, // mov:6:0xE1A0C002
2692         {   3, 0xe58d0004, 0xfdffffff }, // str:4:0xE58D0004
2693         {   4, 0xe59f2ba8, 0xfdffffff }, // ldr:4:0xE59F2BA8
2694         {   5, 0xe1a00001, 0xfdffffff }, // mov:6:0xE1A00001
2695         {   6, 0xe08d3004, 0xfdffffff }, // add:6:0xE28D3004
2696         {   7, 0xe1a0100c, 0xfdffffff }, // mov:6:0xE1A0100C
2697         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC68
2698         {   9, 0xe59dc004, 0xfdffffff }, // ldr:4:0xE59DC004
2699         {  10, 0xe1a03000, 0xfdffffff }, // mov:6:0xE3A03000
2700         {  11, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
2701         {  14, 0xe08dd004, 0xfdffffff }, // add:6:0xE28DD004
2702         {  15, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2703         { -1, -1, -1 },
2704         /* 13/32 */
2705 };
2706 
2707 static FuncSig func_sig_EnterToCompensationEVF_2[] = {
2708         {   0, 0xe59f1030, 0xfdffffff }, // ldr:4:0xE59F1030
2709         {   1, 0xe1a0001a, 0xfdffffff }, // mov:6:0xE3A0001A
2710         {   2, 0xe1a02002, 0xfdffffff }, // mov:6:0xE3A02002
2711         {   3, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
2712         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAEFB3
2713         {   5, 0xe1a01c09, 0xfdffffff }, // mov:6:0xE3A01C09
2714         {   6, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
2715         {   7, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
2716         {   8, 0xe59f0014, 0xfdffffff }, // ldr:4:0xE59F0014
2717         {   9, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
2718         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAAB70
2719         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000D6F
2720         {  12, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2721         {  13, 0xe49df004, 0xfdffffff }, // ldr:4:0xE49DF004
2722         {  14, 0x0009cb6c, 0xfdffffff }, // and:6:0x0009CB6C
2723         {  16, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
2724         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000D74
2725         {  18, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
2726         {  19, 0xe49df004, 0xfdffffff }, // ldr:4:0xE49DF004
2727         {  20, 0xe59f1030, 0xfdffffff }, // ldr:4:0xE59F1030
2728         {  21, 0xe1a0001a, 0xfdffffff }, // mov:6:0xE3A0001A
2729         {  22, 0xe1a02002, 0xfdffffff }, // mov:6:0xE3A02002
2730         {  23, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
2731         {  24, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAEF9F
2732         {  25, 0xe1a01e91, 0xfdffffff }, // mov:6:0xE3A01E91
2733         {  26, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
2734         {  27, 0xe081100c, 0xfdffffff }, // add:6:0xE281100C
2735         {  28, 0xe59f0014, 0xfdffffff }, // ldr:4:0xE59F0014
2736         {  29, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
2737         {  30, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFAAB5C
2738         {  31, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000D5B
2739         { -1, -1, -1 },
2740         /* 31/32 */
2741 };
2742 
2743 static FuncSig func_sig_ExitFromCompensationEVF_2[] = {
2744         {   0, 0xe1a01802, 0xfdffffff }, // mov:6:0xE3A01802
2745         {   1, 0xe1a0000d, 0xfdffffff }, // mov:6:0xE3A0000D
2746         {   2, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
2747         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEF0
2748         {   4, 0xe1a01e35, 0xfdffffff }, // mov:6:0xE3A01E35
2749         {   5, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
2750         {   6, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
2751         {   7, 0xe59f0008, 0xfdffffff }, // ldr:4:0xE59F0008
2752         {   8, 0x049df004, 0xfdffffff }, // ldr:4:0x049DF004
2753         {   9, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
2754         {  10, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFA9DE9
2755         {  12, 0xe1a01701, 0xfdffffff }, // mov:6:0xE3A01701
2756         {  13, 0xe1a0000e, 0xfdffffff }, // mov:6:0xE3A0000E
2757         {  14, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
2758         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEE4
2759         {  16, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
2760         {  17, 0xe1a01fd9, 0xfdffffff }, // mov:6:0xE3A01FD9
2761         {  18, 0xe59f0008, 0xfdffffff }, // ldr:4:0xE59F0008
2762         {  19, 0x049df004, 0xfdffffff }, // ldr:4:0x049DF004
2763         {  20, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
2764         {  21, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFA9DDE
2765         {  23, 0xe1a01702, 0xfdffffff }, // mov:6:0xE3A01702
2766         {  24, 0xe1a0000f, 0xfdffffff }, // mov:6:0xE3A0000F
2767         {  25, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
2768         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEF4
2769         {  27, 0xe1a01fdd, 0xfdffffff }, // mov:6:0xE3A01FDD
2770         {  28, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
2771         {  29, 0xe0811002, 0xfdffffff }, // add:6:0xE2811002
2772         {  30, 0xe59f0008, 0xfdffffff }, // ldr:4:0xE59F0008
2773         {  31, 0x049df004, 0xfdffffff }, // ldr:4:0x049DF004
2774         { -1, -1, -1 },
2775         /* 30/32 */
2776 };
2777 
2778 static FuncSig func_sig_GetFocusLensSubjectDistance_2[] = {
2779         {   0, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
2780         {   1, 0xe59f3034, 0xfdffffff }, // ldr:4:0xE59F3034
2781         {   2, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
2782         {   3, 0xe1a01d06, 0xfdffffff }, // mov:6:0xE3A01D06
2783         {   4, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
2784         {   5, 0xe59f0028, 0xfdffffff }, // ldr:4:0xE59F0028
2785         {   6, 0xe0811003, 0xfdffffff }, // add:6:0xE2811003
2786         {   7, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
2787         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF58365
2788         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF1C0
2789         {  10, 0xe1a00800, 0xfdffffff }, // mov:6:0xE1A00800
2790         {  11, 0xe1a00840, 0xfdffffff }, // mov:6:0xE1A00840
2791         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00004D
2792         {  13, 0xe1a00800, 0xfdffffff }, // mov:6:0xE1A00800
2793         {  14, 0xe1a00820, 0xfdffffff }, // mov:6:0xE1A00820
2794         {  15, 0xe49df004, 0xfdffffff }, // ldr:4:0xE49DF004
2795         {  16, 0x00009ba4, 0xfdffffff }, // and:6:0x00009BA4
2796         {  18, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
2797         {  19, 0xe59f3054, 0xfdffffff }, // ldr:4:0xE59F3054
2798         {  20, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
2799         {  21, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
2800         {  22, 0xe1a01e19, 0xfdffffff }, // mov:6:0xE3A01E19
2801         {  23, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
2802         {  24, 0xe59f0044, 0xfdffffff }, // ldr:4:0xE59F0044
2803         {  25, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
2804         {  26, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
2805         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF58352
2806         {  28, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
2807         {  29, 0xe08d0002, 0xfdffffff }, // add:6:0xE28D0002
2808         {  30, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
2809         {  31, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFAEAC
2810         { -1, -1, -1 },
2811         /* 31/32 */
2812 };
2813 
2814 static FuncSig func_sig_GetFocusLensSubjectDistanceFromLens_2[] = {
2815         {   1, 0xe59f3070, 0xfdffffff }, // ldr:4:0xE59F3070
2816         {   2, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
2817         {   3, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
2818         {   4, 0xe1a01f8a, 0xfdffffff }, // mov:6:0xE3A01F8A
2819         {   5, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
2820         {   6, 0xe0811002, 0xfdffffff }, // add:6:0xE2811002
2821         {   7, 0xe59f005c, 0xfdffffff }, // ldr:4:0xE59F005C
2822         {   8, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
2823         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF581F7
2824         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFE87
2825         {  11, 0xe1a03800, 0xfdffffff }, // mov:6:0xE1A03800
2826         {  13, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
2827         {  14, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
2828         {  15, 0xe08d0002, 0xfdffffff }, // add:6:0xE28D0002
2829         {  16, 0xe1a04823, 0xfdffffff }, // mov:6:0xE1A04823
2830         {  17, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000008
2831         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFAD4C
2832         {  19, 0xe59f3030, 0xfdffffff }, // ldr:4:0xE59F3030
2833         {  21, 0xe5931000, 0xfdffffff }, // ldr:4:0xE5931000
2834         {  22, 0xe1a02082, 0xfdffffff }, // mov:6:0xE1A02082
2835         {  23, 0xe0811fa9, 0xfdffffff }, // add:6:0xE2811FA9
2836         {  25, 0xe0633004, 0xfdffffff }, // rsb:6:0xE0633004
2837         {  26, 0xe1a03803, 0xfdffffff }, // mov:6:0xE1A03803
2838         {  27, 0xe1a00823, 0xfdffffff }, // mov:6:0xE1A00823
2839         {  28, 0xe08dd004, 0xfdffffff }, // add:6:0xE28DD004
2840         {  30, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2841         { -1, -1, -1 },
2842         /* 26/32 */
2843 };
2844 
2845 static FuncSig func_sig_GetParameterData_2[] = {
2846         {   1, 0xe59f30a8, 0xfdffffff }, // ldr:4:0xE59F30A8
2847         {   2, 0xe593c000, 0xfdffffff }, // ldr:4:0xE593C000
2848         {   3, 0xe1a02802, 0xfdffffff }, // mov:6:0xE1A02802
2849         {   4, 0xe1a03800, 0xfdffffff }, // mov:6:0xE1A03800
2850         {   5, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
2851         {   6, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2852         {   7, 0xe1a01e41, 0xfdffffff }, // mov:6:0xE3A01E41
2853         {   8, 0xe59f7090, 0xfdffffff }, // ldr:4:0xE59F7090
2854         {   9, 0xe59f0090, 0xfdffffff }, // ldr:4:0xE59F0090
2855         {  10, 0xe081100c, 0xfdffffff }, // add:6:0xE281100C
2856         {  11, 0xe1a04843, 0xfdffffff }, // mov:6:0xE1A04843
2857         {  12, 0xe1a05842, 0xfdffffff }, // mov:6:0xE1A05842
2858         {  13, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
2859         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA370A
2860         {  15, 0xe1a02804, 0xfdffffff }, // mov:6:0xE1A02804
2861         {  16, 0xe1a03822, 0xfdffffff }, // mov:6:0xE1A03822
2862         {  18, 0xe1a01e41, 0xfdffffff }, // mov:6:0xE3A01E41
2863         {  19, 0xe1a04804, 0xfdffffff }, // mov:6:0xE1A04804
2864         {  20, 0xe1120101, 0xfdffffff }, // tst:7:0xE3120101
2865         {  21, 0xe59f0060, 0xfdffffff }, // ldr:4:0xE59F0060
2866         {  22, 0xe081100c, 0xfdffffff }, // add:6:0xE281100C
2867         {  23, 0xe1a04824, 0xfdffffff }, // mov:6:0xE1A04824
2868         {  24, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
2869         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA36FF
2870         {  26, 0xe1a01e41, 0xfdffffff }, // mov:6:0xE3A01E41
2871         {  27, 0xe154006d, 0xfdffffff }, // cmp:7:0xE354006D
2872         {  28, 0xe59f0044, 0xfdffffff }, // ldr:4:0xE59F0044
2873         {  29, 0xe081100c, 0xfdffffff }, // add:6:0xE281100C
2874         {  30, 0x9a000000, 0xff000000 }, // b, bl:3:0x9A000000
2875         {  31, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA36F9
2876         { -1, -1, -1 },
2877         /* 30/32 */
2878 };
2879 
2880 static FuncSig func_sig_GetPropertyCase_2[] = {
2881         {   1, 0xe59f3064, 0xfdffffff }, // ldr:4:0xE59F3064
2882         {   2, 0xe593c000, 0xfdffffff }, // ldr:4:0xE593C000
2883         {   3, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
2884         {   4, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
2885         {   5, 0xe1a01e13, 0xfdffffff }, // mov:6:0xE3A01E13
2886         {   6, 0xe1a07000, 0xfdffffff }, // mov:6:0xE1A07000
2887         {   7, 0xe59f5050, 0xfdffffff }, // ldr:4:0xE59F5050
2888         {   8, 0xe59f0050, 0xfdffffff }, // ldr:4:0xE59F0050
2889         {   9, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
2890         {  10, 0xe1a04002, 0xfdffffff }, // mov:6:0xE1A04002
2891         {  11, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
2892         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFBBB5
2893         {  13, 0xe5953000, 0xfdffffff }, // ldr:4:0xE5953000
2894         {  14, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
2895         {  15, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
2896         {  16, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF1A6
2897         {  17, 0xe1a03004, 0xfdffffff }, // mov:6:0xE1A03004
2898         {  18, 0xe1a01007, 0xfdffffff }, // mov:6:0xE1A01007
2899         {  19, 0xe1a02006, 0xfdffffff }, // mov:6:0xE1A02006
2900         {  20, 0xe5950000, 0xfdffffff }, // ldr:4:0xE5950000
2901         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFB8
2902         {  22, 0xe5953000, 0xfdffffff }, // ldr:4:0xE5953000
2903         {  23, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
2904         {  24, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
2905         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF217
2906         {  26, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
2907         {  28, 0x00001f28, 0xfdffffff }, // and:6:0x00001F28
2908         {  29, 0x00001f30, 0xfdffffff }, // and:6:0x00001F30
2909         { -1, -1, -1 },
2910         /* 28/32 */
2911 };
2912 
2913 static FuncSig func_sig_GetSystemTime_2[] = {
2914         {   1, 0xe59f6030, 0xfdffffff }, // ldr:4:0xE59F6030
2915         {   2, 0xe5965000, 0xfdffffff }, // ldr:4:0xE5965000
2916         {   3, 0xe1550000, 0xfdffffff }, // cmp:7:0xE3550000
2917         {   4, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
2918         {   5, 0xe1a00017, 0xfdffffff }, // mov:6:0xE3A00017
2919         {   6, 0x11a03000, 0xfdffffff }, // mov:6:0x13A03000
2920         {   7, 0x15843000, 0xfdffffff }, // str:4:0x15843000
2921         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002E01
2922         {  10, 0xe5963008, 0xfdffffff }, // ldr:4:0xE5963008
2923         {  11, 0xe5843000, 0xfdffffff }, // str:4:0xE5843000
2924         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002E01
2925         {  13, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
2926         {  15, 0x00001d14, 0xfdffffff }, // and:6:0x00001D14
2927         {  17, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
2928         {  18, 0xe1a07002, 0xfdffffff }, // mov:6:0xE1A07002
2929         {  19, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
2930         {  20, 0xe1a08003, 0xfdffffff }, // mov:6:0xE1A08003
2931         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002DF5
2932         {  22, 0xe085e014, 0xfdffffff }, // add:6:0xE285E014
2933         {  23, 0xe59e2004, 0xfdffffff }, // ldr:4:0xE59E2004
2934         {  24, 0xe085c014, 0xfdffffff }, // add:6:0xE285C014
2935         {  25, 0xe152000c, 0xfdffffff }, // cmp:7:0xE152000C
2936         {  26, 0xe1a0a000, 0xfdffffff }, // mov:6:0xE1A0A000
2937         {  27, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000002
2938         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB002DF1
2939         {  29, 0xe1a00005, 0xfdffffff }, // mov:6:0xE3A00005
2940         {  31, 0xe1a00002, 0xfdffffff }, // mov:6:0xE1A00002
2941         { -1, -1, -1 },
2942         /* 27/32 */
2943 };
2944 
2945 static FuncSig func_sig_IsStrobeChargeCompleted_2[] = {
2946         {   1, 0xe59f3060, 0xfdffffff }, // ldr:4:0xE59F3060
2947         {   2, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
2948         {   3, 0xe1a04000, 0xfdffffff }, // mov:6:0xE3A04000
2949         {   4, 0xe59f5058, 0xfdffffff }, // ldr:4:0xE59F5058
2950         {   5, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
2951         {   6, 0xe1a02004, 0xfdffffff }, // mov:6:0xE1A02004
2952         {   7, 0xe1a01004, 0xfdffffff }, // mov:6:0xE3A01004
2953         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFBFC7B
2954         {   9, 0xe1a01003, 0xfdffffff }, // mov:6:0xE3A01003
2955         {  10, 0xe5950000, 0xfdffffff }, // ldr:4:0xE5950000
2956         {  11, 0xe1a02f7d, 0xfdffffff }, // mov:6:0xE3A02F7D
2957         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFBF9A3
2958         {  13, 0xe1500004, 0xfdffffff }, // cmp:7:0xE1500004
2959         {  14, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
2960         {  15, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000006
2961         {  16, 0xe5950000, 0xfdffffff }, // ldr:4:0xE5950000
2962         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFBFA21
2963         {  18, 0xe5950000, 0xfdffffff }, // ldr:4:0xE5950000
2964         {  19, 0xe1a01003, 0xfdffffff }, // mov:6:0xE3A01003
2965         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFBFA0A
2966         {  21, 0xe59d3000, 0xfdffffff }, // ldr:4:0xE59D3000
2967         {  22, 0xe0034001, 0xfdffffff }, // and:6:0xE2034001
2968         {  23, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
2969         {  24, 0xe08dd004, 0xfdffffff }, // add:6:0xE28DD004
2970         {  26, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
2971         { -1, -1, -1 },
2972         /* 25/32 */
2973 };
2974 
2975 static FuncSig func_sig_MakeAFScan_2[] = {
2976         {   1, 0xe59f3710, 0xfdffffff }, // ldr:4:0xE59F3710
2977         {   2, 0xe1a05000, 0xfdffffff }, // mov:6:0xE3A05000
2978         {   3, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000
2979         {   4, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
2980         {   5, 0xe5831000, 0xfdffffff }, // str:4:0xE5831000
2981         {   6, 0xe5895000, 0xfdffffff }, // str:4:0xE5895000
2982         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB00096A
2983         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFACB90
2984         {  10, 0xe59f36f0, 0xfdffffff }, // ldr:4:0xE59F36F0
2985         {  11, 0xe59320a4, 0xfdffffff }, // ldr:4:0xE59320A4
2986         {  12, 0xe1a0b001, 0xfdffffff }, // mov:6:0xE3A0B001
2987         {  13, 0xe1520005, 0xfdffffff }, // cmp:7:0xE1520005
2988         {  14, 0xe58db000, 0xfdffffff }, // str:4:0xE58DB000
2989         {  15, 0xe1a06005, 0xfdffffff }, // mov:6:0xE1A06005
2990         {  16, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000003
2991         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFB2
2992         {  18, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
2993         {  19, 0x11a00001, 0xfdffffff }, // mov:6:0x13A00001
2994         {  20, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A0001AE
2995         {  21, 0xe59f36c4, 0xfdffffff }, // ldr:4:0xE59F36C4
2996         {  22, 0xe1a02c82, 0xfdffffff }, // mov:6:0xE3A02C82
2997         {  24, 0xe082200a, 0xfdffffff }, // add:6:0xE282200A
2998         {  25, 0xe1510002, 0xfdffffff }, // cmp:7:0xE1510002
2999         {  26, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000E
3000         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0164BC
3001         {  28, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3002         {  29, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000B
3003         {  30, 0xe59f36a4, 0xfdffffff }, // ldr:4:0xE59F36A4
3004         {  31, 0xe5933000, 0xfdffffff }, // ldr:4:0xE5933000
3005         { -1, -1, -1 },
3006         /* 29/32 */
3007 };
3008 
3009 static FuncSig func_sig_Mount_FileSystem_2[] = {
3010         {   1, 0xe1a05000, 0xfdffffff }, // mov:6:0xE3A05000
3011         {   2, 0xe59f6064, 0xfdffffff }, // ldr:4:0xE59F6064
3012         {   3, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3013         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFE74
3014         {   5, 0xe5960038, 0xfdffffff }, // ldr:4:0xE5960038
3015         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC22
3016         {   7, 0xe0501000, 0xfdffffff }, // sub:6:0xE2501000
3017         {   8, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3018         {   9, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000005
3019         {  10, 0xe59f3048, 0xfdffffff }, // ldr:4:0xE59F3048
3020         {  11, 0xe59f2048, 0xfdffffff }, // ldr:4:0xE59F2048
3021         {  12, 0xe5831000, 0xfdffffff }, // str:4:0xE5831000
3022         {  13, 0xe59f3044, 0xfdffffff }, // ldr:4:0xE59F3044
3023         {  14, 0xe5821000, 0xfdffffff }, // str:4:0xE5821000
3024         {  15, 0xe5831000, 0xfdffffff }, // str:4:0xE5831000
3025         {  16, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFE7C
3026         {  17, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3027         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF44
3028         {  19, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3029         {  20, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3030         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF63
3031         {  22, 0xe0044000, 0xfdffffff }, // and:6:0xE0044000
3032         {  23, 0xe1a02004, 0xfdffffff }, // mov:6:0xE1A02004
3033         {  24, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
3034         {  25, 0xe596103c, 0xfdffffff }, // ldr:4:0xE596103C
3035         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFD0
3036         {  27, 0xe5860040, 0xfdffffff }, // str:4:0xE5860040
3037         {  29, 0x0002c4a8, 0xfdffffff }, // and:6:0x0002C4A8
3038         {  30, 0x00002750, 0xfdffffff }, // and:6:0x00002750
3039         {  31, 0x00002748, 0xfdffffff }, // and:6:0x00002748
3040         { -1, -1, -1 },
3041         /* 30/32 */
3042 };
3043 
3044 static FuncSig func_sig_PutInNdFilter_2[] = {
3045         {   1, 0xe59f4028, 0xfdffffff }, // ldr:4:0xE59F4028
3046         {   2, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3047         {   3, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
3048         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF5706D
3049         {   5, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
3050         {   6, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
3051         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000006
3052         {   8, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
3053         {   9, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3054         {  10, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
3055         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEAF56FF6
3056         {  13, 0x0000a168, 0xfdffffff }, // and:6:0x0000A168
3057         {  15, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3058         {  16, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3059         {  17, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFEDE
3060         {  19, 0xe59f4028, 0xfdffffff }, // ldr:4:0xE59F4028
3061         {  20, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3062         {  21, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
3063         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF5705B
3064         {  23, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
3065         {  24, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
3066         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000006
3067         {  26, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
3068         {  27, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3069         {  28, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
3070         {  30, 0xea000000, 0xff000000 }, // b, bl:3:0xEAF56FE4
3071         {  31, 0x0000a168, 0xfdffffff }, // and:6:0x0000A168
3072         { -1, -1, -1 },
3073         /* 27/32 */
3074 };
3075 
3076 static FuncSig func_sig_PutOutNdFilter_2[] = {
3077         {   1, 0xe59f4028, 0xfdffffff }, // ldr:4:0xE59F4028
3078         {   2, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3079         {   3, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
3080         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF5705B
3081         {   5, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
3082         {   6, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
3083         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB000006
3084         {   8, 0xe5940000, 0xfdffffff }, // ldr:4:0xE5940000
3085         {   9, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3086         {  10, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
3087         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEAF56FE4
3088         {  13, 0x0000a168, 0xfdffffff }, // and:6:0x0000A168
3089         {  15, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3090         {  16, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3091         {  17, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFEBE
3092         {  24, 0x00000000, 0xfdffffff }, // and:6:0x00000000
3093         {  28, 0x00000072, 0xfdffffff }, // and:6:0x00000072
3094         { -1, -1, -1 },
3095         /* 17/32 */
3096 };
3097 
3098 static FuncSig func_sig_SetParameterData_2[] = {
3099         {   1, 0xe59f30c4, 0xfdffffff }, // ldr:4:0xE59F30C4
3100         {   2, 0xe04dd008, 0xfdffffff }, // sub:6:0xE24DD008
3101         {   3, 0xe593c000, 0xfdffffff }, // ldr:4:0xE593C000
3102         {   4, 0xe1a02802, 0xfdffffff }, // mov:6:0xE1A02802
3103         {   5, 0xe1a03800, 0xfdffffff }, // mov:6:0xE1A03800
3104         {   6, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
3105         {   7, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
3106         {   8, 0xe1a01e41, 0xfdffffff }, // mov:6:0xE3A01E41
3107         {   9, 0xe59f70a8, 0xfdffffff }, // ldr:4:0xE59F70A8
3108         {  10, 0xe59f00a8, 0xfdffffff }, // ldr:4:0xE59F00A8
3109         {  11, 0xe0811002, 0xfdffffff }, // add:6:0xE2811002
3110         {  12, 0xe1a04843, 0xfdffffff }, // mov:6:0xE1A04843
3111         {  13, 0xe1a05842, 0xfdffffff }, // mov:6:0xE1A05842
3112         {  14, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
3113         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA3741
3114         {  16, 0xe1a02804, 0xfdffffff }, // mov:6:0xE1A02804
3115         {  17, 0xe1a03822, 0xfdffffff }, // mov:6:0xE1A03822
3116         {  19, 0xe1a01e41, 0xfdffffff }, // mov:6:0xE3A01E41
3117         {  20, 0xe1a04804, 0xfdffffff }, // mov:6:0xE1A04804
3118         {  21, 0xe1120101, 0xfdffffff }, // tst:7:0xE3120101
3119         {  22, 0xe59f0078, 0xfdffffff }, // ldr:4:0xE59F0078
3120         {  23, 0xe0811002, 0xfdffffff }, // add:6:0xE2811002
3121         {  24, 0xe1a04824, 0xfdffffff }, // mov:6:0xE1A04824
3122         {  25, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
3123         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA3736
3124         {  27, 0xe1a01e41, 0xfdffffff }, // mov:6:0xE3A01E41
3125         {  28, 0xe154006d, 0xfdffffff }, // cmp:7:0xE354006D
3126         {  29, 0xe59f005c, 0xfdffffff }, // ldr:4:0xE59F005C
3127         {  30, 0xe0811002, 0xfdffffff }, // add:6:0xE2811002
3128         {  31, 0x9a000000, 0xff000000 }, // b, bl:3:0x9A000000
3129         { -1, -1, -1 },
3130         /* 30/32 */
3131 };
3132 
3133 static FuncSig func_sig_SetPropertyCase_2[] = {
3134         {   1, 0xe59f3074, 0xfdffffff }, // ldr:4:0xE59F3074
3135         {   2, 0xe593c000, 0xfdffffff }, // ldr:4:0xE593C000
3136         {   3, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
3137         {   4, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
3138         {   5, 0xe1a01f41, 0xfdffffff }, // mov:6:0xE3A01F41
3139         {   6, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
3140         {   7, 0xe59f7060, 0xfdffffff }, // ldr:4:0xE59F7060
3141         {   8, 0xe59f0060, 0xfdffffff }, // ldr:4:0xE59F0060
3142         {   9, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
3143         {  10, 0xe1a04002, 0xfdffffff }, // mov:6:0xE1A04002
3144         {  11, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
3145         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFBC09
3146         {  13, 0xe5973000, 0xfdffffff }, // ldr:4:0xE5973000
3147         {  14, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
3148         {  15, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
3149         {  16, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFF1FA
3150         {  17, 0xe1a01006, 0xfdffffff }, // mov:6:0xE1A01006
3151         {  18, 0xe1a02005, 0xfdffffff }, // mov:6:0xE1A02005
3152         {  19, 0xe1a03004, 0xfdffffff }, // mov:6:0xE1A03004
3153         {  20, 0xe5970000, 0xfdffffff }, // ldr:4:0xE5970000
3154         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF7A
3155         {  22, 0xe1a01f42, 0xfdffffff }, // mov:6:0xE3A01F42
3156         {  23, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3157         {  24, 0xe0811002, 0xfdffffff }, // add:6:0xE2811002
3158         {  25, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
3159         {  26, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
3160         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFBBFA
3161         {  28, 0xe5973000, 0xfdffffff }, // ldr:4:0xE5973000
3162         {  29, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
3163         {  31, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFF265
3164         { -1, -1, -1 },
3165         /* 30/32 */
3166 };
3167 
3168 static FuncSig func_sig_TurnOffBackLight_2[] = {
3169         {   0, 0xe59f1010, 0xfdffffff }, // ldr:4:0xE59F1010
3170         {   1, 0xe1a00020, 0xfdffffff }, // mov:6:0xE3A00020
3171         {   2, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3172         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF9299E
3173         {   4, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3174         {   5, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDEB7A
3175         {  10, 0x61536c61, 0xfdffffff }, // cmp:7:0x63536C61
3176         {  12, 0x00000000, 0xfdffffff }, // and:6:0x00000000
3177         {  13, 0xe59f1010, 0xfdffffff }, // ldr:4:0xE59F1010
3178         {  14, 0xe1a00020, 0xfdffffff }, // mov:6:0xE3A00020
3179         {  15, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3180         {  16, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF92991
3181         {  17, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3182         {  18, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDDFEA
3183         {  21, 0x5066664f, 0xfdffffff }, // rsb:6:0x5066664F
3184         {  25, 0x0000006e, 0xfdffffff }, // and:6:0x0000006E
3185         {  26, 0xe59f1010, 0xfdffffff }, // ldr:4:0xE59F1010
3186         {  27, 0xe1a00020, 0xfdffffff }, // mov:6:0xE3A00020
3187         {  28, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3188         {  29, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF92984
3189         {  30, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3190         {  31, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDDFF1
3191         { -1, -1, -1 },
3192         /* 22/32 */
3193 };
3194 
3195 static FuncSig func_sig_TurnOnBackLight_2[] = {
3196         {   0, 0xe59f1010, 0xfdffffff }, // ldr:4:0xE59F1010
3197         {   1, 0xe1a00020, 0xfdffffff }, // mov:6:0xE3A00020
3198         {   2, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3199         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF929AA
3200         {   4, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3201         {   5, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDEB6B
3202         {   8, 0x4066664f, 0xfdffffff }, // rsb:6:0x4266664F
3203         {  11, 0x00000000, 0xfdffffff }, // and:6:0x00000000
3204         {  12, 0xe59f1010, 0xfdffffff }, // ldr:4:0xE59F1010
3205         {  13, 0xe1a00020, 0xfdffffff }, // mov:6:0xE3A00020
3206         {  14, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3207         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF9299E
3208         {  16, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3209         {  17, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDEB7A
3210         {  22, 0x61536c61, 0xfdffffff }, // cmp:7:0x63536C61
3211         {  24, 0x00000000, 0xfdffffff }, // and:6:0x00000000
3212         {  25, 0xe59f1010, 0xfdffffff }, // ldr:4:0xE59F1010
3213         {  26, 0xe1a00020, 0xfdffffff }, // mov:6:0xE3A00020
3214         {  27, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3215         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF92991
3216         {  29, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3217         {  30, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFDDFEA
3218         { -1, -1, -1 },
3219         /* 22/32 */
3220 };
3221 
3222 static FuncSig func_sig_WriteSDCard_2[] = {
3223         {   1, 0xe59f5174, 0xfdffffff }, // ldr:4:0xE59F5174
3224         {   2, 0xe04dd010, 0xfdffffff }, // sub:6:0xE24DD010
3225         {   3, 0xe595c000, 0xfdffffff }, // ldr:4:0xE595C000
3226         {   4, 0xe1a08000, 0xfdffffff }, // mov:6:0xE1A08000
3227         {   5, 0xe158000c, 0xfdffffff }, // cmp:7:0xE158000C
3228         {   6, 0xe1a09001, 0xfdffffff }, // mov:6:0xE1A09001
3229         {   7, 0xe1a0a002, 0xfdffffff }, // mov:6:0xE1A0A002
3230         {   8, 0xe1a0b003, 0xfdffffff }, // mov:6:0xE1A0B003
3231         {   9, 0xe1a07002, 0xfdffffff }, // mov:6:0xE3A07002
3232         {  10, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000009
3233         {  11, 0xe1a00080, 0xfdffffff }, // mov:6:0xE3A00080
3234         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE4C4C
3235         {  13, 0xe1a00008, 0xfdffffff }, // mov:6:0xE1A00008
3236         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFD87
3237         {  15, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3238         {  16, 0xe1a00080, 0xfdffffff }, // mov:6:0xE3A00080
3239         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFE4C6C
3240         {  18, 0xe1540000, 0xfdffffff }, // cmp:7:0xE3540000
3241         {  19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000047
3242         {  20, 0xe5858000, 0xfdffffff }, // str:4:0xE5858000
3243         {  21, 0xe59f0128, 0xfdffffff }, // ldr:4:0xE59F0128
3244         {  22, 0xe1a04288, 0xfdffffff }, // mov:6:0xE1A04288
3245         {  23, 0xe0803014, 0xfdffffff }, // add:6:0xE2803014
3246         {  24, 0xe5932004, 0xfdffffff }, // ldr:4:0xE7932004
3247         {  25, 0xe089100a, 0xfdffffff }, // add:6:0xE089100A
3248         {  26, 0xe1510002, 0xfdffffff }, // cmp:7:0xE1510002
3249         {  27, 0x8a000000, 0xff000000 }, // b, bl:3:0x8A00003F
3250         {  28, 0xe080300c, 0xfdffffff }, // add:6:0xE280300C
3251         {  29, 0xe5932004, 0xfdffffff }, // ldr:4:0xE7932004
3252         {  30, 0xe1520001, 0xfdffffff }, // cmp:7:0xE3520001
3253         {  31, 0x058d900c, 0xfdffffff }, // str:4:0x058D900C
3254         { -1, -1, -1 },
3255         /* 31/32 */
3256 };
3257 
3258 static FuncSig func_sig_free_2[] = {
3259         {   0, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
3260         {   1, 0xe59f0064, 0xfdffffff }, // ldr:4:0xE59F0064
3261         {   2, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFE1E
3262         {   3, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3263         {   4, 0xe080000c, 0xfdffffff }, // add:6:0xE280000C
3264         {   5, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
3265         {   6, 0xea000000, 0xff000000 }, // b, bl:3:0xEA002C61
3266         {   7, 0x00110004, 0xfdffffff }, // and:6:0x00110004
3267         {   8, 0x0000c12c, 0xfdffffff }, // and:6:0x0000C12C
3268         {   9, 0x00580001, 0xfdffffff }, // sub:6:0x00580001
3269         {  10, 0x0009f594, 0xfdffffff }, // and:6:0x0009F594 mul:11:0x0009F594
3270         {  11, 0x0000c114, 0xfdffffff }, // and:6:0x0000C114
3271         {  13, 0x00110002, 0xfdffffff }, // and:6:0x00110002
3272         {  14, 0x0000bf64, 0xfdffffff }, // and:6:0x0000BF64
3273         {  15, 0x0009f158, 0xfdffffff }, // and:6:0x0009F158
3274         {  16, 0x00002732, 0xfdffffff }, // and:6:0x00002732
3275         {  17, 0x0009f0a0, 0xfdffffff }, // and:6:0x0009F0A0
3276         {  18, 0x10000100, 0xfdffffff }, // and:6:0x10000100
3277         {  19, 0x0009f084, 0xfdffffff }, // and:6:0x0009F084
3278         {  20, 0x0000c124, 0xfdffffff }, // and:6:0x0000C124
3279         {  21, 0x0000c120, 0xfdffffff }, // and:6:0x0000C120
3280         {  22, 0x0009f1a8, 0xfdffffff }, // and:6:0x0009F1A8
3281         {  23, 0x0000c138, 0xfdffffff }, // and:6:0x0000C138
3282         {  24, 0x00081dd8, 0xfdffffff }, // and:6:0x00081DD8
3283         {  28, 0x00081d20, 0xfdffffff }, // and:6:0x00081D20
3284         {  29, 0x00002730, 0xfdffffff }, // and:6:0x00002730
3285         {  30, 0x0009f0f4, 0xfdffffff }, // and:6:0x0009F0F4
3286         {  31, 0x0009f4ec, 0xfdffffff }, // and:6:0x0009F4EC
3287         { -1, -1, -1 },
3288         /* 29/32 */
3289 };
3290 
3291 static FuncSig func_sig_malloc_2[] = {
3292         {   0, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
3293         {   1, 0xe59f0070, 0xfdffffff }, // ldr:4:0xE59F0070
3294         {   2, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFFDF
3295         {   3, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
3296         {   4, 0xe59f0064, 0xfdffffff }, // ldr:4:0xE59F0064
3297         {   5, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFE1E
3298         {   6, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3299         {   7, 0xe080000c, 0xfdffffff }, // add:6:0xE280000C
3300         {   8, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
3301         {   9, 0xea000000, 0xff000000 }, // b, bl:3:0xEA002C61
3302         {  10, 0x00110004, 0xfdffffff }, // and:6:0x00110004
3303         {  11, 0x0000c12c, 0xfdffffff }, // and:6:0x0000C12C
3304         {  12, 0x00580001, 0xfdffffff }, // sub:6:0x00580001
3305         {  13, 0x0009f594, 0xfdffffff }, // and:6:0x0009F594 mul:11:0x0009F594
3306         {  14, 0x0000c114, 0xfdffffff }, // and:6:0x0000C114
3307         {  16, 0x00110002, 0xfdffffff }, // and:6:0x00110002
3308         {  17, 0x0000bf64, 0xfdffffff }, // and:6:0x0000BF64
3309         {  18, 0x0009f158, 0xfdffffff }, // and:6:0x0009F158
3310         {  19, 0x00002732, 0xfdffffff }, // and:6:0x00002732
3311         {  20, 0x0009f0a0, 0xfdffffff }, // and:6:0x0009F0A0
3312         {  21, 0x10000100, 0xfdffffff }, // and:6:0x10000100
3313         {  22, 0x0009f084, 0xfdffffff }, // and:6:0x0009F084
3314         {  23, 0x0000c124, 0xfdffffff }, // and:6:0x0000C124
3315         {  24, 0x0000c120, 0xfdffffff }, // and:6:0x0000C120
3316         {  25, 0x0009f1a8, 0xfdffffff }, // and:6:0x0009F1A8
3317         {  26, 0x0000c138, 0xfdffffff }, // and:6:0x0000C138
3318         {  27, 0x00081dd8, 0xfdffffff }, // and:6:0x00081DD8
3319         {  31, 0x00081d20, 0xfdffffff }, // and:6:0x00081D20
3320         { -1, -1, -1 },
3321         /* 29/32 */
3322 };
3323 
3324 static FuncSig func_sig_EnterToCompensationEVF_3[] = {
3325         {   0, 0xe59f1050, 0xfdffffff }, // ldr:4:0xE59F1050
3326         {   1, 0xe1a00020, 0xfdffffff }, // mov:6:0xE3A00020
3327         {   2, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3328         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF58242
3329         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFA76
3330         {   5, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3331         {   6, 0x149df004, 0xfdffffff }, // ldr:4:0x149DF004
3332         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFA82
3333         {   8, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3334         {   9, 0xe59f1030, 0xfdffffff }, // ldr:4:0xE59F1030
3335         {  10, 0xe1a02002, 0xfdffffff }, // mov:6:0xE3A02002
3336         {  11, 0xe1a000cf, 0xfdffffff }, // mov:6:0xE3A000CF
3337         {  12, 0x149df004, 0xfdffffff }, // ldr:4:0x149DF004
3338         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF59B35
3339         {  14, 0xe1a01d25, 0xfdffffff }, // mov:6:0xE3A01D25
3340         {  15, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
3341         {  16, 0xe0811005, 0xfdffffff }, // add:6:0xE2811005
3342         {  17, 0xe59f0014, 0xfdffffff }, // ldr:4:0xE59F0014
3343         {  18, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
3344         {  19, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0095F6
3345         {  20, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3346         {  21, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000FFF
3347         {  23, 0x000a5788, 0xfdffffff }, // and:6:0x000A5788
3348         {  25, 0x50415353, 0xfdffffff }, // sub:6:0x50415353
3349         {  26, 0x453a3a49, 0xfdffffff }, // ldr:4:0x453A3A49
3350         { -1, -1, -1 },
3351         /* 25/32 */
3352 };
3353 
3354 static FuncSig func_sig_ExitFromCompensationEVF_3[] = {
3355         {   0, 0xe59f1028, 0xfdffffff }, // ldr:4:0xE59F1028
3356         {   1, 0xe1a00020, 0xfdffffff }, // mov:6:0xE3A00020
3357         {   2, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3358         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF58221
3359         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFA55
3360         {   5, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3361         {   6, 0x149df004, 0xfdffffff }, // ldr:4:0x149DF004
3362         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFA61
3363         {   8, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3364         {   9, 0x149df004, 0xfdffffff }, // ldr:4:0x149DF004
3365         {  10, 0xe49de004, 0xfdffffff }, // ldr:4:0xE49DE004
3366         {  11, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000FF4
3367         {  13, 0x50415353, 0xfdffffff }, // sub:6:0x50415353
3368         {  20, 0x70757361, 0xfdffffff }, // rsb:6:0x72757361
3369         {  21, 0x00000065, 0xfdffffff }, // and:6:0x00000065
3370         {  22, 0xe59f1050, 0xfdffffff }, // ldr:4:0xE59F1050
3371         {  23, 0xe1a00020, 0xfdffffff }, // mov:6:0xE3A00020
3372         {  24, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3373         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF5820B
3374         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFA3F
3375         {  27, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3376         {  28, 0x149df004, 0xfdffffff }, // ldr:4:0x149DF004
3377         {  29, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFA4B
3378         {  30, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3379         {  31, 0xe59f1030, 0xfdffffff }, // ldr:4:0xE59F1030
3380         { -1, -1, -1 },
3381         /* 25/32 */
3382 };
3383 
3384 static FuncSig func_sig_Feof_Fut_3[] = {
3385         {   1, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
3386         {   2, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3387         {   3, 0xe0840020, 0xfdffffff }, // add:6:0xE2840020
3388         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBDB
3389         {   7, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3390         {   8, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3391         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001DF9
3392         {  10, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3393         {  11, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3394         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBE4
3395         {  13, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3396         {  16, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
3397         {  17, 0xe0846020, 0xfdffffff }, // add:6:0xE2846020
3398         {  18, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3399         {  19, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
3400         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBCB
3401         {  23, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3402         {  24, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3403         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001DEF
3404         {  26, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3405         {  27, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
3406         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBFD
3407         {  29, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3408         {  30, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBD2
3409         {  31, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3410         { -1, -1, -1 },
3411         /* 25/32 */
3412 };
3413 
3414 static FuncSig func_sig_Fflush_Fut_3[] = {
3415         {   1, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
3416         {   2, 0xe0846020, 0xfdffffff }, // add:6:0xE2846020
3417         {   3, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3418         {   4, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
3419         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBCB
3420         {   8, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3421         {   9, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3422         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001DEF
3423         {  11, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3424         {  12, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
3425         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBFD
3426         {  14, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3427         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBD2
3428         {  16, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3429         {  19, 0xe4905004, 0xfdffffff }, // ldr:4:0xE4905004
3430         {  20, 0xe4906004, 0xfdffffff }, // ldr:4:0xE4906004
3431         {  21, 0xe5904000, 0xfdffffff }, // ldr:4:0xE5904000
3432         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001E71
3433         {  23, 0xe1a02005, 0xfdffffff }, // mov:6:0xE1A02005
3434         {  24, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
3435         {  25, 0xe1a03006, 0xfdffffff }, // mov:6:0xE1A03006
3436         {  26, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3437         {  28, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFEBD
3438         {  31, 0x00000000, 0xfdffffff }, // and:6:0x00000000
3439         { -1, -1, -1 },
3440         /* 24/32 */
3441 };
3442 
3443 static FuncSig func_sig_Fgets_Fut_3[] = {
3444         {   1, 0xe0524000, 0xfdffffff }, // sub:6:0xE2524000
3445         {   2, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
3446         {   3, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
3447         {   4, 0xe0840020, 0xfdffffff }, // add:6:0xE2840020
3448         {   5, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3449         {   6, 0x01a00004, 0xfdffffff }, // mov:6:0x01A00004
3450         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBFF
3451         {   9, 0xe1a01005, 0xfdffffff }, // mov:6:0xE1A01005
3452         {  10, 0xe1a02004, 0xfdffffff }, // mov:6:0xE1A02004
3453         {  11, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3454         {  12, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
3455         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB001DBE
3456         {  14, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3457         {  15, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3458         {  16, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC06
3459         {  17, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3460         {  20, 0xe0507000, 0xfdffffff }, // sub:6:0xE2507000
3461         {  21, 0xe1a04001, 0xfdffffff }, // mov:6:0xE1A04001
3462         {  22, 0xe0870020, 0xfdffffff }, // add:6:0xE2870020
3463         {  23, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3464         {  24, 0xe1a06002, 0xfdffffff }, // mov:6:0xE1A06002
3465         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFBEC
3466         {  28, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
3467         {  29, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3468         {  30, 0xe1a02006, 0xfdffffff }, // mov:6:0xE1A02006
3469         {  31, 0xe1a00007, 0xfdffffff }, // mov:6:0xE1A00007
3470         { -1, -1, -1 },
3471         /* 26/32 */
3472 };
3473 
3474 static FuncSig func_sig_GetDrive_FreeClusters_3[] = {
3475         {   1, 0xe1a01e56, 0xfdffffff }, // mov:6:0xE3A01E56
3476         {   2, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
3477         {   3, 0xe081100e, 0xfdffffff }, // add:6:0xE281100E
3478         {   4, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
3479         {   5, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
3480         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0210F5
3481         {   7, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
3482         {   8, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
3483         {   9, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
3484         {  10, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
3485         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000FB2
3486         {  14, 0x00074adc, 0xfdffffff }, // and:6:0x00074ADC
3487         {  16, 0xe1a01e57, 0xfdffffff }, // mov:6:0xE3A01E57
3488         {  17, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
3489         {  18, 0xe081100f, 0xfdffffff }, // add:6:0xE281100F
3490         {  19, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
3491         {  20, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
3492         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0210E6
3493         {  22, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
3494         {  23, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
3495         {  24, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
3496         {  25, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
3497         {  27, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000FA7
3498         {  29, 0x00074adc, 0xfdffffff }, // and:6:0x00074ADC
3499         {  31, 0xe1a01d16, 0xfdffffff }, // mov:6:0xE3A01D16
3500         { -1, -1, -1 },
3501         /* 25/32 */
3502 };
3503 
3504 static FuncSig func_sig_GetDrive_TotalClusters_3[] = {
3505         {   1, 0xe1a01e56, 0xfdffffff }, // mov:6:0xE3A01E56
3506         {   2, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
3507         {   3, 0xe0811005, 0xfdffffff }, // add:6:0xE2811005
3508         {   4, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
3509         {   5, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
3510         {   6, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB021104
3511         {   7, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
3512         {   8, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
3513         {   9, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
3514         {  10, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
3515         {  12, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000FBC
3516         {  14, 0x00074adc, 0xfdffffff }, // and:6:0x00074ADC
3517         {  16, 0xe1a01e56, 0xfdffffff }, // mov:6:0xE3A01E56
3518         {  17, 0xe0504000, 0xfdffffff }, // sub:6:0xE2504000
3519         {  18, 0xe081100e, 0xfdffffff }, // add:6:0xE281100E
3520         {  19, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
3521         {  20, 0xda000000, 0xff000000 }, // b, bl:3:0xDA000000
3522         {  21, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0210F5
3523         {  22, 0xe0843084, 0xfdffffff }, // add:6:0xE0843084
3524         {  23, 0xe59f2010, 0xfdffffff }, // ldr:4:0xE59F2010
3525         {  24, 0xe0643183, 0xfdffffff }, // rsb:6:0xE0643183
3526         {  25, 0xe5920103, 0xfdffffff }, // ldr:4:0xE7920103
3527         {  27, 0xea000000, 0xff000000 }, // b, bl:3:0xEA000FB2
3528         {  29, 0x00074adc, 0xfdffffff }, // and:6:0x00074ADC
3529         {  31, 0xe1a01e57, 0xfdffffff }, // mov:6:0xE3A01E57
3530         { -1, -1, -1 },
3531         /* 25/32 */
3532 };
3533 
3534 static FuncSig func_sig_GetFocusLensSubjectDistanceFromLens_3[] = {
3535         {   1, 0xe59f306c, 0xfdffffff }, // ldr:4:0xE59F306C
3536         {   2, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
3537         {   3, 0xe5932000, 0xfdffffff }, // ldr:4:0xE5932000
3538         {   4, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000
3539         {   5, 0xe1a01f95, 0xfdffffff }, // mov:6:0xE3A01F95
3540         {   6, 0xe59f005c, 0xfdffffff }, // ldr:4:0xE59F005C
3541         {   7, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
3542         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0161C2
3543         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEB8
3544         {  10, 0xe1a03800, 0xfdffffff }, // mov:6:0xE1A03800
3545         {  12, 0xe1a02000, 0xfdffffff }, // mov:6:0xE3A02000
3546         {  13, 0xe1a0100d, 0xfdffffff }, // mov:6:0xE1A0100D
3547         {  14, 0xe08d0002, 0xfdffffff }, // add:6:0xE28D0002
3548         {  15, 0xe1a04823, 0xfdffffff }, // mov:6:0xE1A04823
3549         {  16, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000008
3550         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB004F52
3551         {  18, 0xe59f3030, 0xfdffffff }, // ldr:4:0xE59F3030
3552         {  20, 0xe5931000, 0xfdffffff }, // ldr:4:0xE5931000
3553         {  21, 0xe1a02082, 0xfdffffff }, // mov:6:0xE1A02082
3554         {  22, 0xe0811f79, 0xfdffffff }, // add:6:0xE2811F79
3555         {  24, 0xe0633004, 0xfdffffff }, // rsb:6:0xE0633004
3556         {  25, 0xe1a03803, 0xfdffffff }, // mov:6:0xE1A03803
3557         {  26, 0xe1a00823, 0xfdffffff }, // mov:6:0xE1A00823
3558         {  27, 0xe08dd004, 0xfdffffff }, // add:6:0xE28DD004
3559         {  29, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
3560         { -1, -1, -1 },
3561         /* 25/32 */
3562 };
3563 
3564 static FuncSig func_sig_MakeDirectory_Fut_3[] = {
3565         {   1, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
3566         {   2, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3567         {   3, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3568         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC8C
3569         {   5, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3570         {   6, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3571         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC94
3572         {   8, 0xe1a01006, 0xfdffffff }, // mov:6:0xE1A01006
3573         {   9, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3574         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEB0
3575         {  11, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3576         {  12, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3577         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC92
3578         {  14, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3579         {  16, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3580         {  18, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3581         {  19, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC7D
3582         {  20, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3583         {  21, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3584         {  22, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEBA
3585         {  23, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3586         {  24, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3587         {  25, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC86
3588         {  26, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3589         {  28, 0xe59f3004, 0xfdffffff }, // ldr:4:0xE59F3004
3590         {  29, 0xe5930100, 0xfdffffff }, // ldr:4:0xE7930100
3591         {  30, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
3592         { -1, -1, -1 },
3593         /* 27/32 */
3594 };
3595 
3596 static FuncSig func_sig_Mount_FileSystem_3[] = {
3597         {   1, 0xe1a04000, 0xfdffffff }, // mov:6:0xE3A04000
3598         {   2, 0xe1a05004, 0xfdffffff }, // mov:6:0xE1A05004
3599         {   3, 0xe59f6064, 0xfdffffff }, // ldr:4:0xE59F6064
3600         {   4, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3601         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFE70
3602         {   6, 0xe5960038, 0xfdffffff }, // ldr:4:0xE5960038
3603         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFC13
3604         {   8, 0xe1500004, 0xfdffffff }, // cmp:7:0xE1500004
3605         {   9, 0xe1a01005, 0xfdffffff }, // mov:6:0xE1A01005
3606         {  10, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3607         {  11, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000005
3608         {  12, 0xe59f3044, 0xfdffffff }, // ldr:4:0xE59F3044
3609         {  13, 0xe59f2044, 0xfdffffff }, // ldr:4:0xE59F2044
3610         {  14, 0xe5831000, 0xfdffffff }, // str:4:0xE5831000
3611         {  15, 0xe59f3040, 0xfdffffff }, // ldr:4:0xE59F3040
3612         {  16, 0xe5821000, 0xfdffffff }, // str:4:0xE5821000
3613         {  17, 0xe5831000, 0xfdffffff }, // str:4:0xE5831000
3614         {  18, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFE77
3615         {  19, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3616         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF41
3617         {  21, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3618         {  22, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3619         {  23, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF60
3620         {  24, 0xe596103c, 0xfdffffff }, // ldr:4:0xE596103C
3621         {  25, 0xe0042000, 0xfdffffff }, // and:6:0xE0042000
3622         {  26, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
3623         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFCF
3624         {  28, 0xe5860040, 0xfdffffff }, // str:4:0xE5860040
3625         {  30, 0x00074a88, 0xfdffffff }, // and:6:0x00074A88
3626         {  31, 0x00009774, 0xfdffffff }, // and:6:0x00009774
3627         { -1, -1, -1 },
3628         /* 30/32 */
3629 };
3630 
3631 static FuncSig func_sig_PT_PlaySound_3[] = {
3632         {   0, 0xe1a00800, 0xfdffffff }, // mov:6:0xE1A00800
3633         {   1, 0xe1a00820, 0xfdffffff }, // mov:6:0xE1A00820
3634         {   2, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3635         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFB711
3636         {   4, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
3637         {   5, 0xe49df004, 0xfdffffff }, // ldr:4:0xE49DF004
3638         {   7, 0xe1a04d06, 0xfdffffff }, // mov:6:0xE3A04D06
3639         {   8, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
3640         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF7B6E2
3641         {  11, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3642         {  12, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
3643         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF7B6DF
3644         {  14, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
3645         {  16, 0xe1a00d06, 0xfdffffff }, // mov:6:0xE3A00D06
3646         {  17, 0xe0800001, 0xfdffffff }, // add:6:0xE2800001
3647         {  18, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
3648         {  19, 0xe52de004, 0xfdffffff }, // str:4:0xE52DE004
3649         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF7B6D8
3650         {  21, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
3651         {  22, 0xe49df004, 0xfdffffff }, // ldr:4:0xE49DF004
3652         {  24, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
3653         {  25, 0xe04dd00c, 0xfdffffff }, // sub:6:0xE24DD00C
3654         {  26, 0xe1a06002, 0xfdffffff }, // mov:6:0xE1A06002
3655         {  27, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3656         {  28, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF84408
3657         {  29, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF832B7
3658         {  30, 0xe59f7070, 0xfdffffff }, // ldr:4:0xE59F7070
3659         {  31, 0xe5870000, 0xfdffffff }, // str:4:0xE5870000
3660         { -1, -1, -1 },
3661         /* 28/32 */
3662 };
3663 
3664 static FuncSig func_sig_Remove_3[] = {
3665         {   1, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3666         {   2, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004
3667         {   3, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA40E6
3668         {   4, 0xe0505000, 0xfdffffff }, // sub:6:0xE2505000
3669         {   5, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3670         {   6, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000008
3671         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0002AA
3672         {   8, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
3673         {   9, 0xe1a0400d, 0xfdffffff }, // mov:6:0xE1A0400D
3674         {  10, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3675         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFB9
3676         {  12, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3677         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFFD0
3678         {  14, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3679         {  16, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3680         {  17, 0xe08dd004, 0xfdffffff }, // add:6:0xE28DD004
3681         {  19, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
3682         { -1, -1, -1 },
3683         /* 17/32 */
3684 };
3685 
3686 static FuncSig func_sig_RenameFile_Fut_3[] = {
3687         {   1, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
3688         {   2, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3689         {   3, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3690         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCE3
3691         {   5, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3692         {   6, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3693         {   7, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCEB
3694         {   8, 0xe1a01006, 0xfdffffff }, // mov:6:0xE1A01006
3695         {   9, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3696         {  10, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFEC1
3697         {  11, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3698         {  12, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3699         {  13, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCE9
3700         {  14, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3701         {  17, 0xe1a04001, 0xfdffffff }, // mov:6:0xE1A04001
3702         {  18, 0xe1a01002, 0xfdffffff }, // mov:6:0xE1A01002
3703         {  19, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3704         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCD3
3705         {  21, 0xe1a01004, 0xfdffffff }, // mov:6:0xE1A01004
3706         {  22, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
3707         {  23, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3708         {  24, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCEE
3709         {  25, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3710         {  26, 0xe1a00006, 0xfdffffff }, // mov:6:0xE1A00006
3711         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFCDB
3712         {  28, 0xe0144001, 0xfdffffff }, // and:6:0xE2144001
3713         {  29, 0xe1a00342, 0xfdffffff }, // mov:6:0xE3A00342
3714         {  30, 0xe0800505, 0xfdffffff }, // add:6:0xE2800505
3715         { -1, -1, -1 },
3716         /* 28/32 */
3717 };
3718 
3719 static FuncSig func_sig_SetFileAttributes_3[] = {
3720         {   0, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
3721         {   1, 0xe1a01023, 0xfdffffff }, // mov:6:0xE3A01023
3722         {   3, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3723         {   4, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA3FC8
3724         {   5, 0xe0505000, 0xfdffffff }, // sub:6:0xE2505000
3725         {   6, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3726         {   7, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000008
3727         {   8, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0001EA
3728         {   9, 0xe1a01002, 0xfdffffff }, // mov:6:0xE3A01002
3729         {  10, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3730         {  11, 0xe1a02005, 0xfdffffff }, // mov:6:0xE1A02005
3731         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA3FC0
3732         {  13, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3733         {  14, 0x11a00000, 0xfdffffff }, // mov:6:0x13A00000
3734         {  15, 0x01a00001, 0xfdffffff }, // mov:6:0x03A00001
3735         {  17, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
3736         {  19, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
3737         {  20, 0xe1a01023, 0xfdffffff }, // mov:6:0xE3A01023
3738         {  22, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3739         {  23, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFA3FB5
3740         {  24, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3741         {  25, 0xe1a00004, 0xfdffffff }, // mov:6:0xE1A00004
3742         {  26, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000002
3743         {  27, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0001D7
3744         {  28, 0xe1a00001, 0xfdffffff }, // mov:6:0xE3A00001
3745         {  30, 0xe1a00000, 0xfdffffff }, // mov:6:0xE3A00000
3746         { -1, -1, -1 },
3747         /* 26/32 */
3748 };
3749 
3750 static FuncSig func_sig_SetLogicalEventActive_3[] = {
3751         {   1, 0xe59f404c, 0xfdffffff }, // ldr:4:0xE59F404C
3752         {   3, 0xe1530026, 0xfdffffff }, // cmp:7:0xE3530026
3753         {   4, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3754         {   5, 0xe1a06001, 0xfdffffff }, // mov:6:0xE1A06001
3755         {   6, 0xe59f003c, 0xfdffffff }, // ldr:4:0xE59F003C
3756         {   7, 0xe1a01e1b, 0xfdffffff }, // mov:6:0xE3A01E1B
3757         {   8, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
3758         {   9, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFB035
3759         {  10, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3760         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF55
3761         {  12, 0xe59f2028, 0xfdffffff }, // ldr:4:0xE59F2028
3762         {  14, 0xe0821004, 0xfdffffff }, // add:6:0xE2821004
3763         {  16, 0x00803001, 0xfdffffff }, // add:6:0x02803001
3764         {  18, 0xe1a03180, 0xfdffffff }, // mov:6:0xE1A03180
3765         {  19, 0xe5816003, 0xfdffffff }, // str:4:0xE7816003
3766         {  20, 0xe5825003, 0xfdffffff }, // str:4:0xE7825003
3767         { -1, -1, -1 },
3768         /* 16/22 */
3769 };
3770 
3771 static FuncSig func_sig_SetPropertyCase_3[] = {
3772         {   1, 0xe59f3070, 0xfdffffff }, // ldr:4:0xE59F3070
3773         {   2, 0xe593c000, 0xfdffffff }, // ldr:4:0xE593C000
3774         {   3, 0xe15c0000, 0xfdffffff }, // cmp:7:0xE35C0000
3775         {   4, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
3776         {   5, 0xe1a05001, 0xfdffffff }, // mov:6:0xE1A05001
3777         {   6, 0xe59f7060, 0xfdffffff }, // ldr:4:0xE59F7060
3778         {   7, 0xe59f0060, 0xfdffffff }, // ldr:4:0xE59F0060
3779         {   8, 0xe1a01f43, 0xfdffffff }, // mov:6:0xE3A01F43
3780         {   9, 0xe1a04002, 0xfdffffff }, // mov:6:0xE1A04002
3781         {  10, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000
3782         {  11, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0AFB08
3783         {  12, 0xe5973000, 0xfdffffff }, // ldr:4:0xE5973000
3784         {  13, 0xe1a01000, 0xfdffffff }, // mov:6:0xE3A01000
3785         {  14, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
3786         {  15, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0AC9A6
3787         {  16, 0xe1a01006, 0xfdffffff }, // mov:6:0xE1A01006
3788         {  17, 0xe1a02005, 0xfdffffff }, // mov:6:0xE1A02005
3789         {  18, 0xe1a03004, 0xfdffffff }, // mov:6:0xE1A03004
3790         {  19, 0xe5970000, 0xfdffffff }, // ldr:4:0xE5970000
3791         {  20, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFF79
3792         {  21, 0xe1a01e11, 0xfdffffff }, // mov:6:0xE3A01E11
3793         {  22, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
3794         {  23, 0xe0811001, 0xfdffffff }, // add:6:0xE2811001
3795         {  24, 0xe59f001c, 0xfdffffff }, // ldr:4:0xE59F001C
3796         {  25, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000
3797         {  26, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0AFAF9
3798         {  27, 0xe5973000, 0xfdffffff }, // ldr:4:0xE5973000
3799         {  28, 0xe5930000, 0xfdffffff }, // ldr:4:0xE5930000
3800         {  30, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0ACA19
3801         {  31, 0x00001df8, 0xfdffffff }, // and:6:0x00001DF8
3802         { -1, -1, -1 },
3803         /* 30/32 */
3804 };
3805 
3806 static FuncSig func_sig_WriteSDCard_3[] = {
3807         {   1, 0xe59f6190, 0xfdffffff }, // ldr:4:0xE59F6190
3808         {   2, 0xe04dd010, 0xfdffffff }, // sub:6:0xE24DD010
3809         {   3, 0xe596c000, 0xfdffffff }, // ldr:4:0xE596C000
3810         {   4, 0xe1a05000, 0xfdffffff }, // mov:6:0xE1A05000
3811         {   5, 0xe155000c, 0xfdffffff }, // cmp:7:0xE155000C
3812         {   6, 0xe1a09001, 0xfdffffff }, // mov:6:0xE1A09001
3813         {   7, 0xe1a0a002, 0xfdffffff }, // mov:6:0xE1A0A002
3814         {   8, 0xe1a0b003, 0xfdffffff }, // mov:6:0xE1A0B003
3815         {   9, 0xe1a08002, 0xfdffffff }, // mov:6:0xE3A08002
3816         {  10, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000009
3817         {  11, 0xe1a00080, 0xfdffffff }, // mov:6:0xE3A00080
3818         {  12, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF6A680
3819         {  13, 0xe1a00005, 0xfdffffff }, // mov:6:0xE1A00005
3820         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFFDA8
3821         {  15, 0xe1a04000, 0xfdffffff }, // mov:6:0xE1A04000
3822         {  16, 0xe1a00080, 0xfdffffff }, // mov:6:0xE3A00080
3823         {  17, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBF6A6A0
3824         {  18, 0xe1540000, 0xfdffffff }, // cmp:7:0xE3540000
3825         {  19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A00004E
3826         {  20, 0xe5865000, 0xfdffffff }, // str:4:0xE5865000
3827         {  21, 0xe59fc144, 0xfdffffff }, // ldr:4:0xE59FC144
3828         {  22, 0xe1a04185, 0xfdffffff }, // mov:6:0xE1A04185
3829         {  23, 0xe0843005, 0xfdffffff }, // add:6:0xE0843005
3830         {  24, 0xe1a00103, 0xfdffffff }, // mov:6:0xE1A00103
3831         {  25, 0xe08c2018, 0xfdffffff }, // add:6:0xE28C2018
3832         {  26, 0xe5923000, 0xfdffffff }, // ldr:4:0xE7923000
3833         {  27, 0xe089100a, 0xfdffffff }, // add:6:0xE089100A
3834         {  28, 0xe1510003, 0xfdffffff }, // cmp:7:0xE1510003
3835         {  29, 0x8a000000, 0xff000000 }, // b, bl:3:0x8A000044
3836         {  30, 0xe08c3010, 0xfdffffff }, // add:6:0xE28C3010
3837         {  31, 0xe5932000, 0xfdffffff }, // ldr:4:0xE7932000
3838         { -1, -1, -1 },
3839         /* 31/32 */
3840 };
3841 
3842 static FuncSig func_sig_free_3[] = {
3843         {   0, 0xe1a01000, 0xfdffffff }, // mov:6:0xE1A01000
3844         {   1, 0xe59f0064, 0xfdffffff }, // ldr:4:0xE59F0064
3845         {   2, 0xea000000, 0xff000000 }, // b, bl:3:0xEAFFFE1E
3846         {   3, 0xe1a01001, 0xfdffffff }, // mov:6:0xE3A01001
3847         {   4, 0xe080000c, 0xfdffffff }, // add:6:0xE280000C
3848         {   5, 0xe1a02001, 0xfdffffff }, // mov:6:0xE1A02001
3849         {   6, 0xea000000, 0xff000000 }, // b, bl:3:0xEA0021A9
3850         {   7, 0x00110004, 0xfdffffff }, // and:6:0x00110004
3851         {   8, 0x00004a64, 0xfdffffff }, // and:6:0x00004A64
3852         {   9, 0x00580001, 0xfdffffff }, // sub:6:0x00580001
3853         {  10, 0x000a48b4, 0xfdffffff }, // and:6:0x000A48B4
3854         {  11, 0x00004a4c, 0xfdffffff }, // and:6:0x00004A4C
3855         {  13, 0x00110002, 0xfdffffff }, // and:6:0x00110002
3856         {  14, 0x0000489c, 0xfdffffff }, // and:6:0x0000489C mul:11:0x0000489C
3857         {  15, 0x000a4478, 0xfdffffff }, // and:6:0x000A4478
3858         {  16, 0x00002732, 0xfdffffff }, // and:6:0x00002732
3859         {  17, 0x000a43c0, 0xfdffffff }, // and:6:0x000A43C0
3860         {  18, 0x10000100, 0xfdffffff }, // and:6:0x10000100
3861         {  19, 0x000a43a4, 0xfdffffff }, // and:6:0x000A43A4
3862         {  20, 0x00004a5c, 0xfdffffff }, // and:6:0x00004A5C
3863         {  21, 0x00004a58, 0xfdffffff }, // and:6:0x00004A58
3864         {  22, 0x000a44c8, 0xfdffffff }, // and:6:0x000A44C8
3865         {  23, 0x00004a70, 0xfdffffff }, // and:6:0x00004A70
3866         {  24, 0x00011a34, 0xfdffffff }, // and:6:0x00011A34
3867         {  28, 0x0001197c, 0xfdffffff }, // and:6:0x0001197C
3868         {  29, 0x00002730, 0xfdffffff }, // and:6:0x00002730
3869         {  30, 0x000a4414, 0xfdffffff }, // and:6:0x000A4414
3870         {  31, 0x000a480c, 0xfdffffff }, // and:6:0x000A480C
3871         { -1, -1, -1 },
3872         /* 29/32 */
3873 };
3874 
3875 static FuncSig func_sig_kbd_pwr_off_3[] = {
3876         {   0, 0xe1a020e0, 0xfdffffff }, // mov:6:0xE3A020E0
3877         {   1, 0xe0822103, 0xfdffffff }, // add:6:0xE2822103
3878         {   2, 0xe0822822, 0xfdffffff }, // add:6:0xE2822822
3879         {   3, 0xe5923000, 0xfdffffff }, // ldr:4:0xE5923000
3880         {   5, 0xe5823000, 0xfdffffff }, // str:4:0xE5823000
3881         {   6, 0xe1a0f00e, 0xfdffffff }, // mov:6:0xE1A0F00E    /* RET found, stopping... */
3882         { -1, -1, -1 },
3883         /* 6/32 */
3884 };
3885 
3886 static FuncSig func_sig_kbd_read_keys_r2_3[] = {
3887         {   1, 0xe1a04822, 0xfdffffff }, // mov:6:0xE3A04822
3888         {   2, 0xe0844a03, 0xfdffffff }, // add:6:0xE2844A03
3889         {   3, 0xe1a06000, 0xfdffffff }, // mov:6:0xE1A06000
3890         {   5, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0001B9
3891         {   6, 0xe59f5074, 0xfdffffff }, // ldr:4:0xE59F5074
3892         {   8, 0xe1a012a3, 0xfdffffff }, // mov:6:0xE1A012A3
3893         {   9, 0xe5962101, 0xfdffffff }, // ldr:4:0xE7962101
3894         {  10, 0xe003301f, 0xfdffffff }, // and:6:0xE203301F
3895         {  12, 0xe5862101, 0xfdffffff }, // str:4:0xE7862101
3896         {  14, 0xeb000000, 0xff000000 }, // b, bl:3:0xEB0001B0
3897         {  16, 0xe1a012a3, 0xfdffffff }, // mov:6:0xE1A012A3
3898         {  17, 0xe5962101, 0xfdffffff }, // ldr:4:0xE7962101
3899         {  18, 0xe003301f, 0xfdffffff }, // and:6:0xE203301F
3900         {  20, 0xe5862101, 0xfdffffff }, // str:4:0xE7862101
3901         {  21, 0xe1a0000b, 0xfdffffff }, // mov:6:0xE3A0000B
3902         {  23, 0xeb000000, 0xff000000 }, // b, bl:3:0xEBFFE5D0
3903         {  24, 0xe1a03f56, 0xfdffffff }, // mov:6:0xE3A03F56
3904         {  25, 0xe0833002, 0xfdffffff }, // add:6:0xE2833002
3905         {  26, 0xe1a00800, 0xfdffffff }, // mov:6:0xE1A00800
3906         {  27, 0xe1a012a4, 0xfdffffff }, // mov:6:0xE1A012A4
3907         {  28, 0xe1530820, 0xfdffffff }, // cmp:7:0xE1530820
3908         {  29, 0x21a02000, 0xfdffffff }, // mov:6:0x23A02000
3909         {  30, 0x31a02001, 0xfdffffff }, // mov:6:0x33A02001
3910         {  31, 0xe5963101, 0xfdffffff }, // ldr:4:0xE7963101
3911         { -1, -1, -1 },
3912         /* 24/32 */
3913 };
3914 
3915 FuncsList func_list[] = {
3916         { "AllocateUncacheableMemory", func_sig_AllocateUncacheableMemory_1, 1 },
3917         { "DeleteFile_Fut", func_sig_DeleteFile_Fut_1, 1 },
3918         { "EnterToCompensationEVF", func_sig_EnterToCompensationEVF_1, 1 },
3919         { "EnterToCompensationEVF", func_sig_EnterToCompensationEVF_2, 2 },
3920         { "EnterToCompensationEVF", func_sig_EnterToCompensationEVF_3, 3 },
3921         { "ExecuteEventProcedure", func_sig_ExecuteEventProcedure_1, 1 },
3922         { "ExitFromCompensationEVF", func_sig_ExitFromCompensationEVF_1, 1 },
3923         { "ExitFromCompensationEVF", func_sig_ExitFromCompensationEVF_2, 2 },
3924         { "ExitFromCompensationEVF", func_sig_ExitFromCompensationEVF_3, 3 },
3925         { "Fclose_Fut", func_sig_Fclose_Fut_1, 1 },
3926         { "Feof_Fut", func_sig_Feof_Fut_1, 1 },
3927         { "Feof_Fut", func_sig_Feof_Fut_3, 3 },
3928         { "Fflush_Fut", func_sig_Fflush_Fut_1, 1 },
3929         { "Fflush_Fut", func_sig_Fflush_Fut_3, 3 },
3930         { "Fgets_Fut", func_sig_Fgets_Fut_1, 1 },
3931         { "Fgets_Fut", func_sig_Fgets_Fut_3, 3 },
3932         { "Fopen_Fut", func_sig_Fopen_Fut_1, 1 },
3933         { "Fread_Fut", func_sig_Fread_Fut_1, 1 },
3934         { "FreeUncacheableMemory", func_sig_FreeUncacheableMemory_1, 1 },
3935         { "Fseek_Fut", func_sig_Fseek_Fut_1, 1 },
3936         { "Fwrite_Fut", func_sig_Fwrite_Fut_1, 1 },
3937         { "GetCurrentTargetDistance", func_sig_GetCurrentTargetDistance_1, 1 },
3938         { "GetDrive_ClusterSize", func_sig_GetDrive_ClusterSize_1, 1 },
3939         { "GetDrive_FreeClusters", func_sig_GetDrive_FreeClusters_1, 1 },
3940         { "GetDrive_FreeClusters", func_sig_GetDrive_FreeClusters_3, 3 },
3941         { "GetDrive_TotalClusters", func_sig_GetDrive_TotalClusters_1, 1 },
3942         { "GetDrive_TotalClusters", func_sig_GetDrive_TotalClusters_3, 3 },
3943         { "GetFocusLensSubjectDistance", func_sig_GetFocusLensSubjectDistance_1, 1 },
3944         { "GetFocusLensSubjectDistance", func_sig_GetFocusLensSubjectDistance_2, 2 },
3945         { "GetFocusLensSubjectDistanceFromLens", func_sig_GetFocusLensSubjectDistanceFromLens_2, 2 },
3946         { "GetFocusLensSubjectDistanceFromLens", func_sig_GetFocusLensSubjectDistanceFromLens_3, 3 },
3947         { "GetParameterData", func_sig_GetParameterData_1, 1 },
3948         { "GetParameterData", func_sig_GetParameterData_2, 2 },
3949         { "GetPropertyCase", func_sig_GetPropertyCase_1, 1 },
3950         { "GetPropertyCase", func_sig_GetPropertyCase_2, 2 },
3951         { "GetSystemTime", func_sig_GetSystemTime_1, 1 },
3952         { "GetSystemTime", func_sig_GetSystemTime_2, 2 },
3953         { "IsStrobeChargeCompleted", func_sig_IsStrobeChargeCompleted_1, 1 },
3954         { "IsStrobeChargeCompleted", func_sig_IsStrobeChargeCompleted_2, 2 },
3955         { "MakeAFScan", func_sig_MakeAFScan_1, 1 },
3956         { "MakeAFScan", func_sig_MakeAFScan_2, 2 },
3957         { "MakeDirectory_Fut", func_sig_MakeDirectory_Fut_1, 1 },
3958         { "MakeDirectory_Fut", func_sig_MakeDirectory_Fut_3, 3 },
3959         { "Mount_FileSystem", func_sig_Mount_FileSystem_1, 1 },
3960         { "Mount_FileSystem", func_sig_Mount_FileSystem_2, 2 },
3961         { "Mount_FileSystem", func_sig_Mount_FileSystem_3, 3 },
3962         { "PT_PlaySound", func_sig_PT_PlaySound_1, 1 },
3963         { "PT_PlaySound", func_sig_PT_PlaySound_3, 3 },
3964         { "PutInNdFilter", func_sig_PutInNdFilter_1, 1 },
3965         { "PutInNdFilter", func_sig_PutInNdFilter_2, 2 },
3966         { "PutOutNdFilter", func_sig_PutOutNdFilter_1, 1 },
3967         { "PutOutNdFilter", func_sig_PutOutNdFilter_2, 2 },
3968         { "Remove", func_sig_Remove_3, 3 },
3969         { "RenameFile_Fut", func_sig_RenameFile_Fut_1, 1 },
3970         { "RenameFile_Fut", func_sig_RenameFile_Fut_3, 3 },
3971         { "Restart", func_sig_Restart_1, 1 },
3972         { "SetCurrentCaptureModeType", func_sig_SetCurrentCaptureModeType_1, 1 },
3973         { "SetFileAttributes", func_sig_SetFileAttributes_1, 1 },
3974         { "SetFileAttributes", func_sig_SetFileAttributes_3, 3 },
3975         { "SetLogicalEventActive", func_sig_SetLogicalEventActive_1, 1 },
3976         { "SetLogicalEventActive", func_sig_SetLogicalEventActive_3, 3 },
3977         { "SetParameterData", func_sig_SetParameterData_1, 1 },
3978         { "SetParameterData", func_sig_SetParameterData_2, 2 },
3979         { "SetPropertyCase", func_sig_SetPropertyCase_1, 1 },
3980         { "SetPropertyCase", func_sig_SetPropertyCase_2, 2 },
3981         { "SetPropertyCase", func_sig_SetPropertyCase_3, 3 },
3982         { "TurnOffBackLight", func_sig_TurnOffBackLight_1, 1 },
3983         { "TurnOffBackLight", func_sig_TurnOffBackLight_2, 2 },
3984         { "TurnOnBackLight", func_sig_TurnOnBackLight_1, 1 },
3985         { "TurnOnBackLight", func_sig_TurnOnBackLight_2, 2 },
3986         { "Unmount_FileSystem", func_sig_Unmount_FileSystem_1, 1 },
3987         { "UnsetZoomForMovie", func_sig_UnsetZoomForMovie_1, 1 },
3988         { "UpdateMBROnFlash", func_sig_UpdateMBROnFlash_1, 1 },
3989         { "WriteSDCard", func_sig_WriteSDCard_1, 1 },
3990         { "WriteSDCard", func_sig_WriteSDCard_2, 2 },
3991         { "WriteSDCard", func_sig_WriteSDCard_3, 3 },
3992         { "_pow", func_sig__pow_1, 1 },
3993         { "_sqrt", func_sig__sqrt_1, 1 },
3994         { "add_ptp_handler", func_sig_add_ptp_handler_1, 1 },
3995         { "apex2us", func_sig_apex2us_1, 1 },
3996         { "close", func_sig_close_1, 1 },
3997         { "closedir", func_sig_closedir_1, 1 },
3998         { "errnoOfTaskGet", func_sig_errnoOfTaskGet_1, 1 },
3999         { "free", func_sig_free_1, 1 },
4000         { "free", func_sig_free_2, 2 },
4001         { "free", func_sig_free_3, 3 },
4002         { "iosDevAdd", func_sig_iosDevAdd_1, 1 },
4003         { "iosDevDelete", func_sig_iosDevDelete_1, 1 },
4004         { "iosDrvInstall", func_sig_iosDrvInstall_1, 1 },
4005         { "isalpha", func_sig_isalpha_1, 1 },
4006         { "isdigit", func_sig_isdigit_1, 1 },
4007         { "islower", func_sig_islower_1, 1 },
4008         { "ispunct", func_sig_ispunct_1, 1 },
4009         { "isspace", func_sig_isspace_1, 1 },
4010         { "isupper", func_sig_isupper_1, 1 },
4011         { "isxdigit", func_sig_isxdigit_1, 1 },
4012         { "kbd_p1_f", func_sig_kbd_p1_f_1, 1 },
4013         { "kbd_p2_f", func_sig_kbd_p2_f_1, 1 },
4014         { "kbd_pwr_off", func_sig_kbd_pwr_off_1, 1 },
4015         { "kbd_pwr_off", func_sig_kbd_pwr_off_3, 3 },
4016         { "kbd_pwr_on", func_sig_kbd_pwr_on_1, 1 },
4017         { "kbd_read_keys_r2", func_sig_kbd_read_keys_r2_1, 1 },
4018         { "kbd_read_keys_r2", func_sig_kbd_read_keys_r2_3, 3 },
4019         { "localtime", func_sig_localtime_1, 1 },
4020         { "lseek", func_sig_lseek_1, 1 },
4021         { "malloc", func_sig_malloc_1, 1 },
4022         { "malloc", func_sig_malloc_2, 2 },
4023         { "memPartInfoGet", func_sig_memPartInfoGet_1, 1 },
4024         { "memchr", func_sig_memchr_1, 1 },
4025         { "memcpy", func_sig_memcpy_1, 1 },
4026         { "mkdir", func_sig_mkdir_1, 1 },
4027         { "mktime", func_sig_mktime_1, 1 },
4028         { "open", func_sig_open_1, 1 },
4029         { "opendir", func_sig_opendir_1, 1 },
4030         { "qsort", func_sig_qsort_1, 1 },
4031         { "rand", func_sig_rand_1, 1 },
4032         { "readdir", func_sig_readdir_1, 1 },
4033         { "srand", func_sig_srand_1, 1 },
4034         { "stat", func_sig_stat_1, 1 },
4035         { "strcat", func_sig_strcat_1, 1 },
4036         { "strchr", func_sig_strchr_1, 1 },
4037         { "strftime", func_sig_strftime_1, 1 },
4038         { "strncmp", func_sig_strncmp_1, 1 },
4039         { "strncpy", func_sig_strncpy_1, 1 },
4040         { "strpbrk", func_sig_strpbrk_1, 1 },
4041         { "strrchr", func_sig_strrchr_1, 1 },
4042         { "strtol", func_sig_strtol_1, 1 },
4043         { "strtoul", func_sig_strtoul_1, 1 },
4044         { "taskCreateHookAdd", func_sig_taskCreateHookAdd_1, 1 },
4045         { "taskDeleteHookAdd", func_sig_taskDeleteHookAdd_1, 1 },
4046         { "taskIdListGet", func_sig_taskIdListGet_1, 1 },
4047         { "taskLock", func_sig_taskLock_1, 1 },
4048         { "taskName", func_sig_taskName_1, 1 },
4049         { "taskResume", func_sig_taskResume_1, 1 },
4050         { "taskSuspend", func_sig_taskSuspend_1, 1 },
4051         { "taskUnlock", func_sig_taskUnlock_1, 1 },
4052         { "time", func_sig_time_1, 1 },
4053         { "tolower", func_sig_tolower_1, 1 },
4054         { "toupper", func_sig_toupper_1, 1 },
4055         { "utime", func_sig_utime_1, 1 },
4056         { "vsprintf", func_sig_vsprintf_1, 1 },
4057 { NULL }};
4058 

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