root/tools/signatures_dryos.h

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

INCLUDED FROM


   1 
   2 static FuncSig func_sig_CreateJumptable_1[] = {
   3         {   0, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F039C
   4         {   1, 0xe00f1000, 0xf00ff000 }, // add:10:0xE28F1E39
   5         {   2, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801000
   6         {   3, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1394
   7         {   4, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801004
   8         {   5, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1390
   9         {   6, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801008
  10         {   7, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F138C
  11         {   8, 0xe5801000, 0xfdfff000 }, // str:4:0xE580100C
  12         {   9, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1388
  13         {  10, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801010
  14         {  11, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1384
  15         {  12, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801014
  16         {  13, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1380
  17         {  14, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801018
  18         {  15, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F137C
  19         {  16, 0xe5801000, 0xfdfff000 }, // str:4:0xE580101C
  20         {  17, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1378
  21         {  18, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801020
  22         {  19, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1374
  23         {  20, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801024
  24         {  21, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1370
  25         {  22, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801028
  26         {  23, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F136C
  27         {  24, 0xe5801000, 0xfdfff000 }, // str:4:0xE580102C
  28         {  25, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1368
  29         {  26, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801030
  30         {  27, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1364
  31         {  28, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801034
  32         {  29, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1360
  33         {  30, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801038
  34         {  31, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F135C
  35         /* 32/32 */
  36         { -1, -1, -1 },
  37 };
  38 
  39 static FuncSig func_sig_kbd_pwr_on_1[] = {
  40         {   0, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F00F8
  41         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
  42         {   2, 0xe5901000, 0xfdfff000 }, // ldr:4:0xE59010E0
  43         {   4, 0xe5801000, 0xfdfff000 }, // str:4:0xE58010E0
  44         {   5, 0xe00f2000, 0xf00ff000 }, // sub:10:0xE24F2028
  45         {   6, 0xe0801000, 0xfdf0f000 }, // add:6:0xE2821000
  46         {   7, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE3A03000
  47         {   8, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00032
  48         {   9, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB0081BD
  49         {  10, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
  50         {  11, 0x11500000, 0xfdfff000 }, // cmp:7:0x13500015
  51         {  12, 0x11a01000, 0xfdfff000 }, // mov:6:0x13A010EC
  52         {  13, 0x100f0000, 0xf00ff000 }, // add:10:0x128F00C8
  53         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0x1BFF53FC
  54         {  15, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F00B8
  55         {  16, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F10C8
  56         {  17, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900004
  57         {  18, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
  58         {  19, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE3A030ED
  59         {  20, 0xe00f2000, 0xf00ff000 }, // add:10:0xE28F20AC
  60         {  21, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFF53AF
  61         {  22, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F00A0
  62         {  23, 0xe5901000, 0xfdfff000 }, // ldr:4:0xE59010E0
  63         {  24, 0xe1c11000, 0xfdfff000 }, // bic:6:0xE3C11002
  64         {  25, 0xe5801000, 0xfdfff000 }, // str:4:0xE58010E0
  65         {  27, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900000
  66         {  28, 0xe2000000, 0xfffff000 }, // and:7:0xE2000001
  67         {  30, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801000
  68         /* 28/32 */
  69         { -1, -1, -1 },
  70 };
  71 
  72 static FuncSig func_sig_kbd_pwr_off_1[] = {
  73         {   0, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F00A0
  74         {   1, 0xe5901000, 0xfdfff000 }, // ldr:4:0xE59010E0
  75         {   2, 0xe1c11000, 0xfdfff000 }, // bic:6:0xE3C11002
  76         {   3, 0xe5801000, 0xfdfff000 }, // str:4:0xE58010E0
  77         {   5, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900000
  78         {   6, 0xe2000000, 0xfffff000 }, // and:7:0xE2000001
  79         {   8, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801000
  80         {  10, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F0078
  81         {  11, 0xe5901000, 0xfdfff000 }, // ldr:4:0xE59010E0
  82         {  13, 0xe5801000, 0xfdfff000 }, // str:4:0xE58010E0
  83         {  15, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F0064
  84         {  16, 0xe5901000, 0xfdfff000 }, // ldr:4:0xE59010E0
  85         {  17, 0xe1c11000, 0xfdfff000 }, // bic:6:0xE3C11002
  86         {  18, 0xe5801000, 0xfdfff000 }, // str:4:0xE58010E0
  87         {  20, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
  88         {  21, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
  89         {  22, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F0044
  90         {  23, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE3A04000
  91         {  24, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900000
  92         {  25, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
  93         {  26, 0x11a01000, 0xfdfff000 }, // mov:6:0x13A010C7
  94         {  27, 0x100f0000, 0xf00ff000 }, // add:10:0x128F0038
  95         {  28, 0x0b000000, 0x0f000000 }, // b, bl:3:0x1BFF53D8
  96         {  29, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F0040
  97         {  30, 0xe1550000, 0xfdfff000 }, // cmp:7:0xE3550000
  98         {  31, 0x05904000, 0xfdfff000 }, // ldr:4:0x0590401C
  99         /* 26/32 */
 100         { -1, -1, -1 },
 101 };
 102 
 103 static FuncSig func_sig_GetParameterData_1[] = {
 104         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D41F0
 105         {   1, 0xe00f5000, 0xf00ff000 }, // ldr:8:0xE51F5CFC
 106         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 107         {   3, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950000
 108         {   4, 0xe00f6000, 0xf00ff000 }, // ldr:8:0xE59F6260
 109         {   5, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 110         {   6, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE1A07001
 111         {   7, 0x000f0000, 0xf00ff000 }, // ldr:8:0x059F01E4
 112         {   8, 0x01a01000, 0xfdfff000 }, // mov:6:0x01A01006
 113         {   9, 0xe1a08000, 0xfdfff000 }, // mov:6:0xE1A08002
 114         {  10, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BFBBEAC
 115         {  11, 0xe1140901, 0xfdffffff }, // tst:7:0xE3140901
 116         {  12, 0x000f0000, 0xf00ff000 }, // ldr:8:0x059F01D0
 117         {  13, 0x01a01000, 0xfdfff000 }, // mov:6:0x01A01006
 118         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BFBBEA8
 119         {  15, 0xe1c44000, 0xfdfff000 }, // bic:6:0xE3C44901
 120         {  16, 0xe1540000, 0xfdfff000 }, // cmp:7:0xE3540072
 121         {  17, 0x200f0000, 0xf00ff000 }, // ldr:8:0x259F01BC
 122         {  18, 0x21a01000, 0xfdfff000 }, // mov:6:0x21A01006
 123         {  19, 0x0b000000, 0x0f000000 }, // b, bl:3:0x2BFBBEA3
 124         {  20, 0xe00f3000, 0xf00ff000 }, // ldr:8:0xE59F3224
 125         {  21, 0xe00f2000, 0xf00ff000 }, // ldr:8:0xE59F21AC
 126         {  22, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE51F1D24
 127         {  23, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950008
 128         {  24, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFBBE8F
 129         {  25, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE51F0D3C
 130         {  26, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE1A03008
 131         {  27, 0xe5901000, 0xfdfff000 }, // ldr:4:0xE5901004
 132         {  28, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 133         {  29, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A02007
 134         {  30, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB030271
 135         {  31, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950008
 136         /* 32/32 */
 137         { -1, -1, -1 },
 138 };
 139 
 140 static FuncSig func_sig_SetParameterData_1[] = {
 141         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D41FC
 142         {   1, 0xe00f5000, 0xf00ff000 }, // ldr:8:0xE51F5C6C
 143         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 144         {   3, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950000
 145         {   4, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06001
 146         {   5, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 147         {   6, 0x000f0000, 0xf00ff000 }, // ldr:8:0x059F0278
 148         {   7, 0x01a01000, 0xfdfff000 }, // mov:6:0x03A01FF7
 149         {   8, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE1A07002
 150         {   9, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BFBBED1
 151         {  10, 0xe1140901, 0xfdffffff }, // tst:7:0xE3140901
 152         {  11, 0x000f0000, 0xf00ff000 }, // ldr:8:0x059F0264
 153         {  12, 0x01a01000, 0xfdfff000 }, // mov:6:0x03A01FF7
 154         {  13, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BFBBECD
 155         {  14, 0xe1c44000, 0xfdfff000 }, // bic:6:0xE3C44901
 156         {  15, 0xe1540000, 0xfdfff000 }, // cmp:7:0xE3540072
 157         {  16, 0x200f0000, 0xf00ff000 }, // ldr:8:0x259F0250
 158         {  17, 0x21a01000, 0xfdfff000 }, // mov:6:0x23A01FF7
 159         {  18, 0x0b000000, 0x0f000000 }, // b, bl:3:0x2BFBBEC8
 160         {  19, 0xe00f3000, 0xf00ff000 }, // ldr:8:0xE59F32B0
 161         {  20, 0xe00f2000, 0xf00ff000 }, // ldr:8:0xE59F2240
 162         {  21, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE51F1C90
 163         {  22, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950008
 164         {  23, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFBBEB4
 165         {  24, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE3A03000
 166         {  25, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02001
 167         {  26, 0xe1cd2000, 0xfdfff000 }, // bic:6:0xE1CD20F0
 168         {  27, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE51F0CB4
 169         {  28, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE1A03007
 170         {  29, 0xe5901000, 0xfdfff000 }, // ldr:4:0xE5901004
 171         {  30, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 172         {  31, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A02006
 173         /* 32/32 */
 174         { -1, -1, -1 },
 175 };
 176 
 177 static FuncSig func_sig_GetDrive_ClusterSize_1[] = {
 178         {   0, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
 179         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 180         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 181         {   3, 0xa00f0000, 0xf00ff000 }, // ldr:8:0xA59F0058
 182         {   4, 0xa00f1000, 0xf00ff000 }, // ldr:8:0xA59F1084
 183         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0xABFF32EE
 184         {   6, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00017
 185         {   7, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE51F1778
 186         {   8, 0xe0000094, 0xffffffff }, // mul:11:0xE0000094
 187         {   9, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0810100
 188         {  10, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900054
 189         {  11, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
 190         {  12, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA0008E5
 191         /* 13/13 */
 192         { -1, 12, -2 },
 193         {   0, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
 194         {   1, 0x15900064, 0xfdffffff }, // ldr:4:0x15900064
 195         {   2, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
 196         /* 3/4 */
 197         { -1, -1, -1 },
 198 };
 199 
 200 static FuncSig func_sig_GetDrive_TotalClusters_1[] = {
 201         {   0, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
 202         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 203         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 204         {   3, 0xa00f0000, 0xf00ff000 }, // ldr:8:0xA59F0024
 205         {   4, 0xa1a01000, 0xfdfff000 }, // mov:6:0xA3A01E57
 206         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0xABFF32E1
 207         {   6, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00017
 208         {   7, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE51F17AC
 209         {   8, 0xe0000094, 0xffffffff }, // mul:11:0xE0000094
 210         {   9, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0810100
 211         {  10, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900054
 212         {  11, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
 213         {  12, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA0008DC
 214         /* 13/13 */
 215         { -1, 12, -2 },
 216         {   0, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
 217         {   1, 0x15900054, 0xfdffffff }, // ldr:4:0x15900054
 218         {   2, 0x10400001, 0xfdffffff }, // sub:6:0x12400001
 219         {   3, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
 220         /* 4/5 */
 221         { -1, -1, -1 },
 222 };
 223 
 224 static FuncSig func_sig_GetDrive_FreeClusters_1[] = {
 225         {   0, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
 226         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 227         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 228         {   3, 0xa00f0000, 0xf00ff000 }, // ldr:8:0xA51F0048
 229         {   4, 0xa00f1000, 0xf00ff000 }, // ldr:8:0xA59F12E0
 230         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0xABFF32C6
 231         {   6, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00017
 232         {   7, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE51F1818
 233         {   8, 0xe0000094, 0xffffffff }, // mul:11:0xE0000094
 234         {   9, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0810100
 235         {  10, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900054
 236         {  11, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
 237         {  12, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA0008C6
 238         /* 13/13 */
 239         { -1, 12, -2 },
 240         {   0, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
 241         {   1, 0x15900060, 0xfdffffff }, // ldr:4:0x15900060
 242         {   2, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
 243         /* 3/4 */
 244         { -1, -1, -1 },
 245 };
 246 
 247 static FuncSig func_sig__sqrt_1[] = {
 248         {   0, 0xe1a0c000, 0xfdfff000 }, // mov:6:0xE3A0C207
 249         {   2, 0xe111000c, 0xfdffffff }, // tst:7:0xE111000C
 250         {   3, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 251         {   4, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000044
 252         {   5, 0xe1dce000, 0xfdfff000 }, // bic:6:0xE1DCE001
 253         {   6, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000047
 254         {   7, 0xe1110102, 0xfdffffff }, // tst:7:0xE3110102
 255         {   8, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A00004D
 256         {   9, 0xe1a0c000, 0xfdfff000 }, // mov:6:0xE1A0CA21
 257         {  10, 0xe1c11000, 0xfdfff000 }, // bic:6:0xE1C11A0C
 258         {  12, 0xe080c000, 0xfdf0f000 }, // add:6:0xE28CC0FD
 259         {  13, 0xe1b0c000, 0xfdfff000 }, // mov:6:0xE1B0C0AC
 260         {  14, 0xe080c000, 0xfdf0f000 }, // add:6:0xE28CCD06
 261         {  15, 0x0a000000, 0x0f000000 }, // b, bl:3:0x3A000001
 262         {  16, 0xe1b00000, 0xfdfff000 }, // mov:6:0xE1B00080
 263         {  18, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01501
 264         {  20, 0xe0411000, 0xfdfff000 }, // sub:6:0xE2411101
 265         {  21, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00500
 266         {  22, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02101
 267         {  23, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE3A03000
 268         {  24, 0xe1a0e000, 0xfdfff000 }, // mov:6:0xE3A0E201
 269         {  25, 0xe0514000, 0xfdfff000 }, // sub:6:0xE0514002
 270         {  26, 0x20544000, 0xfdfff000 }, // sub:6:0x2054400E
 271         {  27, 0x21a01000, 0xfdfff000 }, // mov:6:0x21A01004
 272         {  28, 0x20802000, 0xfdf0f000 }, // add:6:0x2082208E
 273         {  29, 0xe1b00000, 0xfdfff000 }, // mov:6:0xE1B00080
 274         {  31, 0xe1b0e000, 0xfdfff000 }, // mov:6:0xE1B0E0AE
 275         /* 27/32 */
 276         { -1, -1, -1 },
 277 };
 278 
 279 static FuncSig func_sig_stat_1[] = {
 280         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 281         {   1, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05001
 282         {   2, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 283         {   3, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02000
 284         {   4, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFD3D8
 285         {   5, 0xe0504000, 0xfdfff000 }, // sub:6:0xE2504000
 286         {   6, 0xb1e00000, 0xfdfff000 }, // mvn:6:0xB3E00000
 287         {   7, 0xb8bd0000, 0xffff0000 }, // ldm:5:0xB8BD8070
 288         {   8, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A02005
 289         {   9, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01012
 290         {  10, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 291         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFD4DB
 292         {  12, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 293         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 294         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFD3FA
 295         {  15, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 296         {  16, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
 297         {  17, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 298         {  18, 0xe04dd000, 0xfdfff000 }, // sub:6:0xE24DD038
 299         {  19, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04001
 300         {  20, 0xe0801000, 0xfdf0f000 }, // add:6:0xE28D1004
 301         {  21, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFFE9
 302         {  22, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 303         {  23, 0x11e00000, 0xfdfff000 }, // mvn:6:0x13E00000
 304         {  24, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A00000C
 305         {  25, 0xe59d0000, 0xfdfff000 }, // ldr:4:0xE59D000C
 306         {  26, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840000
 307         {  28, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840004
 308         {  29, 0xe59d0000, 0xfdfff000 }, // ldr:4:0xE59D0020
 309         {  30, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840008
 310         {  31, 0xe59d0000, 0xfdfff000 }, // ldr:4:0xE59D001C
 311         /* 31/32 */
 312         { -1, -1, -1 },
 313 };
 314 
 315 static FuncSig func_sig_OpenFastDir_1[] = {
 316         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 317         {   1, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 318         {   2, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00014
 319         {   3, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF95F20
 320         {   4, 0xe1b04000, 0xfdfff000 }, // mov:6:0xE1B04000
 321         {   5, 0x01a01000, 0xfdfff000 }, // mov:6:0x03A01059
 322         {   6, 0x000f0000, 0xf00ff000 }, // add:10:0x028F0E26
 323         {   7, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BF9295C
 324         {   8, 0xe1e00000, 0xfdfff000 }, // mvn:6:0xE3E00000
 325         {   9, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840000
 326         {  10, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00902
 327         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF95F44
 328         {  12, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01902
 329         {  13, 0xe9840000, 0xffff0000 }, // stm:5:0xE9840003
 330         {  14, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 331         {  15, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 332         {  16, 0xe5841000, 0xfdfff000 }, // str:4:0xE584100C
 333         {  17, 0xe5841000, 0xfdfff000 }, // str:4:0xE5841010
 334         {  18, 0x01a01000, 0xfdfff000 }, // mov:6:0x03A01060
 335         {  19, 0x000f0000, 0xf00ff000 }, // add:10:0x028F0F8B
 336         {  20, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BF9294F
 337         {  21, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02F49
 338         {  22, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 339         {  23, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 340         {  24, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF94D26
 341         {  25, 0xe1700001, 0xfdffffff }, // cmn:7:0xE3700001
 342         {  26, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840000
 343         {  27, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000004
 344         {  28, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 345         {  29, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFFB0
 346         {  30, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500002
 347         {  31, 0x11a00000, 0xfdfff000 }, // mov:6:0x11A00004
 348         /* 32/32 */
 349         { -1, -1, -1 },
 350 };
 351 
 352 static FuncSig func_sig_ReadFastDir_1[] = {
 353         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D41F0
 354         {   1, 0xe1b05000, 0xfdfff000 }, // mov:6:0xE1B05000
 355         {   2, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE1A07001
 356         {   3, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE3A06000
 357         {   4, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000027
 358         {   5, 0xe5952000, 0xfdfff000 }, // ldr:4:0xE5952010
 359         {   6, 0xe5954000, 0xfdfff000 }, // ldr:4:0xE595400C
 360         {   7, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA000014
 361         {   8, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950004
 362         {   9, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0800004
 363         {  11, 0xe1510000, 0xfdfff000 }, // cmp:7:0xE351000F
 364         {  12, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00000A
 365         {  13, 0xe1110008, 0xfdffffff }, // tst:7:0xE3110008
 366         {  14, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000008
 367         {  16, 0xe1510000, 0xfdfff000 }, // cmp:7:0xE35100E5
 368         {  17, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000009
 369         {  18, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01007
 370         {  19, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB000029
 371         {  20, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2840020
 372         {  21, 0xe5850000, 0xfdfff000 }, // str:4:0xE585000C
 373         {  22, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00006
 374         {  23, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA000008
 375         {  25, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 376         {  26, 0x01a00000, 0xfdfff000 }, // mov:6:0x03A00001
 377         {  27, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000004
 378         {  28, 0xe0804000, 0xfdf0f000 }, // add:6:0xE2844020
 379         {  29, 0xe1520000, 0xfdfff000 }, // cmp:7:0xE1520004
 380         {  30, 0x0a000000, 0x0f000000 }, // b, bl:3:0xCAFFFFE8
 381         {  31, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00002
 382         /* 29/32 */
 383         { -1, -1, -1 },
 384 };
 385 
 386 static FuncSig func_sig_closedir_1[] = {
 387         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 388         {   1, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 389         {   2, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900000
 390         {   3, 0xe1700001, 0xfdffffff }, // cmn:7:0xE3700001
 391         {   4, 0x0b000000, 0x0f000000 }, // b, bl:3:0x1BF94CEB
 392         {   5, 0xe5940000, 0xfdfff000 }, // ldr:4:0xE5940004
 393         {   6, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF95EFD
 394         {   7, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 395         {   8, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
 396         {   9, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAF95EC2
 397         /* 10/10 */
 398         { -1, -1, -1 },
 399 };
 400 
 401 static FuncSig func_sig_qsort_1[] = {
 402         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D400E
 403         {   1, 0xe1cd2000, 0xfdfff000 }, // bic:6:0xE1CD20F0
 404         {   3, 0xe1120003, 0xfdffffff }, // tst:7:0xE3120003
 405         {   4, 0x000f2000, 0xf00ff000 }, // ldr:8:0x059F2020
 406         {   5, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000002
 407         {   6, 0xe1120001, 0xfdffffff }, // tst:7:0xE3120001
 408         {   7, 0x100f2000, 0xf00ff000 }, // sub:10:0x124F2E4B
 409         {   8, 0x000f2000, 0xf00ff000 }, // sub:10:0x024F2E49
 410         {   9, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D2008
 411         {  10, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A0200D
 412         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFFC1
 413         {  12, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD900C
 414         /* 12/13 */
 415         { -1, -1, -1 },
 416 };
 417 
 418 static FuncSig func_sig_strncpy_1[] = {
 419         {   0, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE1A03000
 420         {   1, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA000009
 421         {   3, 0xe15c0000, 0xfdfff000 }, // cmp:7:0xE35C0000
 422         {   4, 0xe4c3c000, 0xfdfff000 }, // strb:4:0xE4C3C001
 423         {   5, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000005
 424         {   6, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 425         {   7, 0xe0422000, 0xfdfff000 }, // sub:6:0xE2422001
 426         {   8, 0xe1720001, 0xfdffffff }, // cmn:7:0xE3720001
 427         {   9, 0x14c31000, 0xfdfff000 }, // strb:4:0x14C31001
 428         {  10, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1AFFFFFB
 429         {  12, 0xe0522000, 0xfdfff000 }, // sub:6:0xE2522001
 430         {  13, 0x0a000000, 0x0f000000 }, // b, bl:3:0x2AFFFFF3
 431         /* 12/15 */
 432         { -1, -1, -1 },
 433 };
 434 
 435 static FuncSig func_sig_strrchr_1[] = {
 436         {   0, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02000
 437         {   1, 0xe2013000, 0xfffff000 }, // and:7:0xE20130FF
 438         {   3, 0xe1510000, 0xfdfff000 }, // cmp:7:0xE1510003
 439         {   4, 0x01a02000, 0xfdfff000 }, // mov:6:0x01A02000
 440         {   5, 0xe1510000, 0xfdfff000 }, // cmp:7:0xE3510000
 441         {   6, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2800001
 442         {   7, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1AFFFFF9
 443         {   8, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00002
 444         /* 8/10 */
 445         { -1, -1, -1 },
 446 };
 447 
 448 static FuncSig func_sig_strncmp_1[] = {
 449         {   0, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA000008
 450         {   2, 0xe1530000, 0xfdfff000 }, // cmp:7:0xE153000C
 451         {   3, 0x00800000, 0xfdf0f000 }, // add:6:0x02800001
 452         {   4, 0x00801000, 0xfdf0f000 }, // add:6:0x02811001
 453         {   5, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000003
 454         {   8, 0xe0400000, 0xfdfff000 }, // sub:6:0xE0400001
 455         {  10, 0xe0522000, 0xfdfff000 }, // sub:6:0xE2522001
 456         {  11, 0x0a000000, 0x0f000000 }, // b, bl:3:0x3A000004
 457         {  13, 0xe1530000, 0xfdfff000 }, // cmp:7:0xE3530000
 458         {  15, 0x015c0000, 0xfdfff000 }, // cmp:7:0x035C0000
 459         {  16, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1AFFFFEF
 460         {  17, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
 461         /* 12/19 */
 462         { -1, -1, -1 },
 463 };
 464 
 465 static FuncSig func_sig_strchr_1[] = {
 466         {   0, 0xe2012000, 0xfffff000 }, // and:7:0xE20120FF
 467         {   2, 0xe1510000, 0xfdfff000 }, // cmp:7:0xE1510002
 468         {   4, 0xe1510000, 0xfdfff000 }, // cmp:7:0xE3510000
 469         {   5, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2800001
 470         {   6, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1AFFFFF9
 471         {   7, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
 472         /* 6/9 */
 473         { -1, -1, -1 },
 474 };
 475 
 476 static FuncSig func_sig_strcat_1[] = {
 477         {   0, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE1A03000
 478         {   2, 0xe1520000, 0xfdfff000 }, // cmp:7:0xE3520000
 479         {   3, 0x10800000, 0xfdf0f000 }, // add:6:0x12800001
 480         {   4, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1AFFFFFB
 481         {   5, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA000001
 482         {   6, 0xe0801000, 0xfdf0f000 }, // add:6:0xE2811001
 483         {   7, 0xe4c02000, 0xfdfff000 }, // strb:4:0xE4C02001
 484         {   9, 0xe1520000, 0xfdfff000 }, // cmp:7:0xE3520000
 485         {  10, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1AFFFFFA
 486         {  11, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 487         {  12, 0xe5c01000, 0xfdfff000 }, // strb:4:0xE5C01000
 488         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00003
 489         /* 12/15 */
 490         { -1, -1, -1 },
 491 };
 492 
 493 static FuncSig func_sig_Fgets_Fut_1[] = {
 494         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D41F0
 495         {   1, 0xe1b04000, 0xfdfff000 }, // mov:6:0xE1B04002
 496         {   2, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06000
 497         {   3, 0x01a00000, 0xfdfff000 }, // mov:6:0x03A00000
 498         {   4, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE1A07001
 499         {   5, 0x08bd0000, 0xffff0000 }, // ldm:5:0x08BD81F0
 500         {   6, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
 501         {   7, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2840020
 502         {   8, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00004A
 503         {   9, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 504         {  10, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00006
 505         {  11, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A02004
 506         {  12, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01007
 507         {  13, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00B206
 508         {  14, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 509         {  15, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 510         {  16, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00004C
 511         {  17, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 512         {  18, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD81F0
 513         /* 19/19 */
 514         { -1, -1, -1 },
 515 };
 516 
 517 static FuncSig func_sig_Feof_Fut_1[] = {
 518         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 519         {   1, 0xe1b04000, 0xfdfff000 }, // mov:6:0xE1B04000
 520         {   2, 0x01e00000, 0xfdfff000 }, // mvn:6:0x03E00000
 521         {   3, 0x08bd0000, 0xffff0000 }, // ldm:5:0x08BD8070
 522         {   4, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
 523         {   5, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2840020
 524         {   6, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB000026
 525         {   7, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 526         {   8, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 527         {   9, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00B234
 528         {  10, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 529         {  11, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 530         {  12, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00002A
 531         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 532         /* 14/14 */
 533         { -1, -1, -1 },
 534 };
 535 
 536 static FuncSig func_sig_Fflush_Fut_1[] = {
 537         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 538         {   1, 0xe1b04000, 0xfdfff000 }, // mov:6:0xE1B04000
 539         {   2, 0x01e00000, 0xfdfff000 }, // mvn:6:0x03E00000
 540         {   3, 0x08bd0000, 0xffff0000 }, // ldm:5:0x08BD8070
 541         {   4, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
 542         {   5, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2840020
 543         {   6, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB000017
 544         {   7, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 545         {   8, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 546         {   9, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00B22B
 547         {  10, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06000
 548         {  11, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2840020
 549         {  12, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFD26
 550         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 551         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB000019
 552         {  15, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00006
 553         {  16, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
 554         /* 17/17 */
 555         { -1, -1, -1 },
 556 };
 557 
 558 static FuncSig func_sig_strftime_1[] = {
 559         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4FFE
 560         {   1, 0xe00f9000, 0xf00ff000 }, // ldr:8:0xE59F940C
 561         {   2, 0xe1a0b000, 0xfdfff000 }, // mov:6:0xE3A0B025
 562         {   3, 0xe1a08000, 0xfdfff000 }, // mov:6:0xE1A08002
 563         {   4, 0xe0417000, 0xfdfff000 }, // sub:6:0xE2417001
 564         {   5, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06003
 565         {   6, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE3A05000
 566         {   7, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 567         {   8, 0xe080a000, 0xfdf0f000 }, // add:6:0xE289A01C
 568         {   9, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA00012F
 569         {  10, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500025
 570         {  11, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000004
 571         {  12, 0xe0805000, 0xfdf0f000 }, // add:6:0xE2855001
 572         {  13, 0xe1550000, 0xfdfff000 }, // cmp:7:0xE1550007
 573         {  14, 0x0a000000, 0x0f000000 }, // b, bl:3:0x8A000125
 574         {  15, 0xe5c40000, 0xfdfff000 }, // strb:4:0xE5C40000
 575         {  16, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA00011E
 576         {  18, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500059
 577         {  19, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00010C
 578         {  20, 0x0a000000, 0x0f000000 }, // b, bl:3:0xCA00003A
 579         {  21, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE350004D
 580         {  22, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A0000BE
 581         {  23, 0x0a000000, 0x0f000000 }, // b, bl:3:0xCA000023
 582         {  24, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500042
 583         {  25, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00007A
 584         {  26, 0x0a000000, 0x0f000000 }, // b, bl:3:0xCA000010
 585         {  27, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500025
 586         {  28, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00010E
 587         {  29, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500041
 588         {  30, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000112
 589         {  31, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1398
 590         /* 31/32 */
 591         { -1, -1, -1 },
 592 };
 593 
 594 static FuncSig func_sig_mktime_ext_1[] = {
 595         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 596         {   1, 0xe5905000, 0xfdfff000 }, // ldr:4:0xE5905024
 597         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 598         {   3, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
 599         {   4, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840024
 600         {   5, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 601         {   6, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFE4684
 602         {   7, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 603         {   8, 0x01e00000, 0xfdfff000 }, // mvn:6:0x03E00000
 604         {   9, 0x08bd0000, 0xffff0000 }, // ldm:5:0x08BD8070
 605         {  10, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFE3BDF
 606         {  11, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01000
 607         {  12, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 608         {  13, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFFC5
 609         {  14, 0xe5845000, 0xfdfff000 }, // str:4:0xE5845024
 610         {  15, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
 611         /* 16/16 */
 612         { -1, -1, -1 },
 613 };
 614 
 615 static FuncSig func_sig_DeleteFile_Fut_1[] = {
 616         {   0, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
 617         {   1, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA000192
 618         {   2, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 619         {   3, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA000190
 620         {   4, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 621         {   5, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 622         {   6, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
 623         {   7, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB0000FF
 624         {   8, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 625         {   9, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 626         {  10, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 627         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFEC4
 628         {  12, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 629         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 630         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB000102
 631         {  15, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 632         {  16, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
 633         {  17, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 634         {  18, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 635         {  19, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
 636         {  20, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB0000F2
 637         {  21, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 638         {  22, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 639         {  23, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00B394
 640         {  24, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 641         {  25, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 642         {  26, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB0000F6
 643         {  27, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 644         {  28, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
 645         {  29, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 646         {  30, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05001
 647         {  31, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
 648         /* 32/32 */
 649         { -1, -1, -1 },
 650 };
 651 
 652 static FuncSig func_sig_RenameFile_Fut_1[] = {
 653         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 654         {   1, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06001
 655         {   2, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
 656         {   3, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 657         {   4, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB000117
 658         {   5, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1604
 659         {   6, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 660         {   7, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00001
 661         {   8, 0xe5810000, 0xfdfff000 }, // str:4:0xE7810104
 662         {   9, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01006
 663         {  10, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 664         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB000137
 665         {  12, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 666         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 667         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB000117
 668         {  15, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 669         {  16, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
 670         /* 17/17 */
 671         { -1, -1, -1 },
 672 };
 673 
 674 static FuncSig func_sig_SetFileTimeStamp_1[] = {
 675         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D401C
 676         {   1, 0xe58d1000, 0xfdfff000 }, // str:4:0xE58D1004
 677         {   2, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D2000
 678         {   3, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A0200D
 679         {   4, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01002
 680         {   5, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 681         {   6, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFD4AC
 682         {   7, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 683         {   8, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000008
 684         {   9, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 685         {  10, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00A9F8
 686         {  11, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02000
 687         {  12, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 688         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 689         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFD4A4
 690         {  15, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 691         {  16, 0x01a00000, 0xfdfff000 }, // mov:6:0x03A00001
 692         {  17, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000000
 693         {  18, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
 694         {  19, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD801C
 695         /* 20/20 */
 696         { -1, -1, -1 },
 697 };
 698 
 699 static FuncSig func_sig_SetLogicalEventActive_1[] = {
 700         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 701         {   1, 0xe00f4000, 0xf00ff000 }, // ldr:8:0xE59F40C8
 702         {   2, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 703         {   4, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06001
 704         {   5, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500026
 705         {   6, 0x01a01000, 0xfdfff000 }, // mov:6:0x03A01E1B
 706         {   7, 0x000f0000, 0xf00ff000 }, // add:10:0x028F00B8
 707         {   8, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BFEC0E8
 708         {   9, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
 709         {  10, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00001A
 710         {  11, 0xe1700001, 0xfdffffff }, // cmn:7:0xE3700001
 711         {  13, 0x00801000, 0xfdf0f000 }, // add:6:0x02801001
 712         {  14, 0x05c41000, 0xfdfff000 }, // strb:4:0x05C41000
 713         {  15, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F1094
 714         {  16, 0xe5815000, 0xfdfff000 }, // str:4:0xE7815180
 715         {  17, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0810180
 716         {  18, 0xe5806000, 0xfdfff000 }, // str:4:0xE5806004
 717         {  19, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
 718         /* 18/20 */
 719         { -1, -1, -1 },
 720 };
 721 
 722 static FuncSig func_sig_GetFocusLensSubjectDistanceFromLens_1[] = {
 723         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D407C
 724         {   1, 0xe00f5000, 0xf00ff000 }, // ldr:8:0xE51F5DA4
 725         {   2, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950000
 726         {   3, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 727         {   4, 0x000f1000, 0xf00ff000 }, // ldr:8:0x059F1128
 728         {   5, 0x000f0000, 0xf00ff000 }, // sub:10:0x024F0EDD
 729         {   6, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BFC388C
 730         {   7, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFF34
 731         {   8, 0xe040c000, 0xfdfff000 }, // sub:6:0xE240CCFF
 732         {   9, 0xe05cc000, 0xfdfff000 }, // sub:6:0xE25CC0FF
 733         {  10, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 734         {  11, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00000B
 735         {  12, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02000
 736         {  13, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A0100D
 737         {  14, 0xe0800000, 0xfdf0f000 }, // add:6:0xE28D0004
 738         {  15, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB0015C7
 739         {  16, 0xe1dd1000, 0xfdfff000 }, // bic:6:0xE1DD10F4
 740         {  17, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950034
 741         {  18, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0800081
 742         {  19, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2800C01
 743         {  20, 0xe1d00000, 0xfdfff000 }, // bic:6:0xE1D00CB6
 744         {  21, 0xe0440000, 0xfdfff000 }, // sub:6:0xE0440000
 745         /* 22/22 */
 746         { -1, -1, -1 },
 747 };
 748 
 749 static FuncSig func_sig_set_control_event_1[] = {
 750         {   0, 0xe2001000, 0xfffff000 }, // and:7:0xE2001CFF
 751         {   1, 0xe200c000, 0xfffff000 }, // and:7:0xE200C101
 752         {   2, 0xe1700001, 0xfdffffff }, // cmn:7:0xE3700001
 753         {   3, 0xe1a0c000, 0xfdfff000 }, // mov:6:0xE1A0CF2C
 754         {   4, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01421
 755         {   5, 0xe2002000, 0xfffff000 }, // and:7:0xE20020FF
 756         {   6, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE1A03FA0
 757         {   8, 0xe15c0000, 0xfdfff000 }, // cmp:7:0xE35C0000
 758         {   9, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F02D0
 759         {  10, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000006
 760         {  11, 0xe1a0c000, 0xfdfff000 }, // mov:6:0xE3A0C001
 761         {  12, 0xe1530000, 0xfdfff000 }, // cmp:7:0xE3530000
 762         {  13, 0xe5903000, 0xfdfff000 }, // ldr:4:0xE7903101
 763         {  14, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A0221C
 764         {  15, 0x01e02000, 0xfdfff000 }, // mvn:6:0x01E02002
 765         {  18, 0xe5802000, 0xfdfff000 }, // str:4:0xE7802101
 766         /* 16/20 */
 767         { -1, -1, -1 },
 768 };
 769 
 770 static FuncSig func_sig_SetFileAttributes_1[] = {
 771         {   0, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A02001
 772         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 773         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 774         {   3, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01003
 775         {   4, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFD49A
 776         {   5, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 777         {   6, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000008
 778         {   7, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 779         {   8, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00A9E6
 780         {   9, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02000
 781         {  10, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 782         {  11, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 783         {  12, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFD492
 784         {  13, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 785         {  14, 0x01a00000, 0xfdfff000 }, // mov:6:0x03A00001
 786         {  15, 0x08bd0000, 0xffff0000 }, // ldm:5:0x08BD8010
 787         {  16, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
 788         {  17, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8010
 789         {  18, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A02001
 790         {  19, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 791         {  20, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 792         {  21, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01003
 793         {  22, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFD488
 794         {  23, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 795         {  24, 0x11a00000, 0xfdfff000 }, // mov:6:0x13A00000
 796         {  25, 0x18bd0000, 0xffff0000 }, // ldm:5:0x18BD8010
 797         {  26, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 798         {  27, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00A9D3
 799         {  28, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00001
 800         {  29, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8010
 801         {  30, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D43F8
 802         {  31, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE1A07000
 803         /* 32/32 */
 804         { -1, -1, -1 },
 805 };
 806 
 807 static FuncSig func_sig_kbd_pwr_off_2[] = {
 808         {   0, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
 809         {   1, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFFFEC5
 810         {   2, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900000
 811         {   3, 0xe2000000, 0xfffff000 }, // and:7:0xE2000001
 812         {   5, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801000
 813         {   7, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F107C
 814         {   8, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00020
 815         {   9, 0xe5810000, 0xfdfff000 }, // str:4:0xE581001C
 816         {  10, 0xe5810000, 0xfdfff000 }, // str:4:0xE5810024
 817         {  13, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
 818         {  14, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
 819         {  15, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F0044
 820         {  16, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE3A04000
 821         {  17, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900000
 822         {  18, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 823         {  19, 0x11a01000, 0xfdfff000 }, // mov:6:0x13A010D4
 824         {  20, 0x100f0000, 0xf00ff000 }, // add:10:0x128F0038
 825         {  21, 0x0b000000, 0x0f000000 }, // b, bl:3:0x1BFF64B5
 826         {  22, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F0040
 827         {  23, 0xe1550000, 0xfdfff000 }, // cmp:7:0xE3550000
 828         {  24, 0x05904000, 0xfdfff000 }, // ldr:4:0x0590401C
 829         {  25, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000005
 830         {  26, 0xe1550000, 0xfdfff000 }, // cmp:7:0xE3550001
 831         {  27, 0x05904000, 0xfdfff000 }, // ldr:4:0x05904024
 832         {  28, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000002
 833         {  29, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A010E5
 834         {  30, 0xe00f0000, 0xf00ff000 }, // add:10:0xE28F0010
 835         {  31, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFF64AB
 836         /* 28/32 */
 837         { -1, -1, -1 },
 838 };
 839 
 840 static FuncSig func_sig_kbd_pwr_on_2[] = {
 841         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 842         {   1, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00020
 843         {   2, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFED8
 844         {   3, 0xe00f2000, 0xf00ff000 }, // sub:10:0xE24F2020
 845         {   4, 0xe0801000, 0xfdf0f000 }, // add:6:0xE2821000
 846         {   5, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE3A03000
 847         {   6, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A0000A
 848         {   7, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB0096D6
 849         {   8, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
 850         {   9, 0x11500000, 0xfdfff000 }, // cmp:7:0x13500015
 851         {  10, 0x11a01000, 0xfdfff000 }, // mov:6:0x13A010F9
 852         {  11, 0x100f0000, 0xf00ff000 }, // add:10:0x128F00AC
 853         {  12, 0x0b000000, 0x0f000000 }, // b, bl:3:0x1BFF64D2
 854         {  13, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F009C
 855         {  14, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F10AC
 856         {  15, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900004
 857         {  16, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
 858         {  17, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE3A030FA
 859         {  18, 0xe00f2000, 0xf00ff000 }, // add:10:0xE28F2090
 860         {  19, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFF6485
 861         {  20, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
 862         {  21, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFFFEC5
 863         {  22, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900000
 864         {  23, 0xe2000000, 0xfffff000 }, // and:7:0xE2000001
 865         {  25, 0xe5801000, 0xfdfff000 }, // str:4:0xE5801000
 866         {  27, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F107C
 867         {  28, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00020
 868         {  29, 0xe5810000, 0xfdfff000 }, // str:4:0xE581001C
 869         {  30, 0xe5810000, 0xfdfff000 }, // str:4:0xE5810024
 870         /* 29/32 */
 871         { -1, -1, -1 },
 872 };
 873 
 874 static FuncSig func_sig_GetDrive_TotalClusters_3[] = {
 875         {   0, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
 876         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 877         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 878         {   3, 0x200f0000, 0xf00ff000 }, // ldr:8:0x251F032C
 879         {   4, 0x200f1000, 0xf00ff000 }, // ldr:8:0x259F131C
 880         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0x2BFECB4E
 881         {   6, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE51F1978
 882         {   7, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0840204
 883         {   8, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0810100
 884         {   9, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900034
 885         {  10, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8010
 886         /* 11/11 */
 887         { -1, -1, -1 },
 888 };
 889 
 890 static FuncSig func_sig_GetDrive_FreeClusters_3[] = {
 891         {   0, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
 892         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 893         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 894         {   3, 0x200f1000, 0xf00ff000 }, // ldr:8:0x259F12F8
 895         {   4, 0x200f0000, 0xf00ff000 }, // sub:10:0x224F0D26
 896         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0x2BFECB43
 897         {   6, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE51F0370
 898         {   7, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE7900104
 899         {   8, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8010
 900         /* 9/9 */
 901         { -1, -1, -1 },
 902 };
 903 
 904 static FuncSig func_sig_ReadFastDir_3[] = {
 905         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D41F0
 906         {   1, 0xe1b05000, 0xfdfff000 }, // mov:6:0xE1B05000
 907         {   2, 0xe04dd000, 0xfdfff000 }, // sub:6:0xE24DD040
 908         {   3, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04001
 909         {   4, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000060
 910         {   5, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950000
 911         {   6, 0xe1a08000, 0xfdfff000 }, // mov:6:0xE3A08001
 912         {   7, 0xe1700001, 0xfdffffff }, // cmn:7:0xE3700001
 913         {   8, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE3A07000
 914         {   9, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000032
 915         {  10, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE3A03001
 916         {  11, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02020
 917         {  12, 0xe98d0000, 0xffff0000 }, // stm:5:0xE98D000C
 918         {  13, 0xe0803000, 0xfdf0f000 }, // add:6:0xE28D3010
 919         {  14, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02000
 920         {  15, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
 921         {  16, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2850018
 922         {  17, 0xe58d4000, 0xfdfff000 }, // str:4:0xE58D4000
 923         {  18, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFDF916
 924         {  19, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 925         {  20, 0x0a000000, 0x0f000000 }, // b, bl:3:0xDA000021
 926         {  21, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE350000C
 927         {  22, 0xd5847000, 0xfdfff000 }, // str:4:0xD5847038
 928         {  23, 0x0a000000, 0x0f000000 }, // b, bl:3:0xDA000003
 929         {  24, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE350001F
 930         {  25, 0xe5848000, 0xfdfff000 }, // str:4:0xE5848038
 931         {  26, 0xc5c47000, 0xfdfff000 }, // strb:4:0xC5C4701F
 932         {  27, 0x0a000000, 0x0f000000 }, // b, bl:3:0xCA000000
 933         {  28, 0xe5c47000, 0xfdfff000 }, // strb:4:0xE7C47000
 934         {  29, 0xe1cd0000, 0xfdfff000 }, // bic:6:0xE1CD02D8
 935         {  30, 0xe1e02000, 0xfdfff000 }, // mvn:6:0xE3E02000
 936         {  31, 0xe1510000, 0xfdfff000 }, // cmp:7:0xE3510000
 937         /* 32/32 */
 938         { -1, -1, -1 },
 939 };
 940 
 941 static FuncSig func_sig_OpenFastDir_3[] = {
 942         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D43F8
 943         {   1, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06000
 944         {   3, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF7B22B
 945         {   4, 0xe1a08000, 0xfdfff000 }, // mov:6:0xE1A08000
 946         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF7B6AF
 947         {   6, 0xe1b05000, 0xfdfff000 }, // mov:6:0xE1B05000
 948         {   7, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000001
 949         {   8, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
 950         {   9, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD83F8
 951         {  10, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A0003C
 952         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF6EA10
 953         {  12, 0xe1b04000, 0xfdfff000 }, // mov:6:0xE1B04000
 954         {  13, 0x000f1000, 0xf00ff000 }, // ldr:8:0x059F12A4
 955         {  14, 0x000f0000, 0xf00ff000 }, // add:10:0x028F0FA9
 956         {  15, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BF681E6
 957         {  16, 0xe1550000, 0xfdfff000 }, // cmp:7:0xE3550004
 958         {  17, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE3A07000
 959         {  18, 0x05847000, 0xfdfff000 }, // str:4:0x05847004
 960         {  19, 0x05847000, 0xfdfff000 }, // str:4:0x05847008
 961         {  20, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000007
 962         {  21, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00902
 963         {  22, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF6EA32
 964         {  23, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01902
 965         {  24, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 966         {  25, 0xe9840000, 0xffff0000 }, // stm:5:0xE9840003
 967         {  26, 0x000f1000, 0xf00ff000 }, // ldr:8:0x059F1280
 968         {  27, 0x000f0000, 0xf00ff000 }, // add:10:0x028F0E27
 969         {  28, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BF681D9
 970         {  29, 0xe1e00000, 0xfdfff000 }, // mvn:6:0xE3E00000
 971         {  30, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840000
 972         {  31, 0xe5847000, 0xfdfff000 }, // str:4:0xE584700C
 973         /* 31/32 */
 974         { -1, -1, -1 },
 975 };
 976 
 977 static FuncSig func_sig_closedir_3[] = {
 978         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
 979         {   1, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
 980         {   2, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900004
 981         {   3, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
 982         {   4, 0x0b000000, 0x0f000000 }, // b, bl:3:0x1BF6EA65
 983         {   5, 0xe5940000, 0xfdfff000 }, // ldr:4:0xE5940000
 984         {   6, 0xe1700001, 0xfdffffff }, // cmn:7:0xE3700001
 985         {   7, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000001
 986         {   8, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF6DCDD
 987         {   9, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA000003
 988         {  10, 0xe5940000, 0xfdfff000 }, // ldr:4:0xE5940014
 989         {  11, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
 990         {  12, 0x00800000, 0xfdf0f000 }, // add:6:0x02840018
 991         {  13, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BF8A5A8
 992         {  14, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
 993         {  15, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
 994         {  16, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAF6EA1D
 995         /* 17/17 */
 996         { -1, -1, -1 },
 997 };
 998 
 999 static FuncSig func_sig_GetFocusLensSubjectDistanceFromLens_3[] = {
1000         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D407C
1001         {   1, 0xe00f5000, 0xf00ff000 }, // ldr:8:0xE59F5618
1002         {   2, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE5950000
1003         {   3, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1004         {   4, 0x000f1000, 0xf00ff000 }, // ldr:8:0x059F1624
1005         {   5, 0x000f0000, 0xf00ff000 }, // ldr:8:0x051F0290
1006         {   6, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BFB6DE1
1007         {   7, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFEE5
1008         {   8, 0xe1700001, 0xfdffffff }, // cmn:7:0xE3700001
1009         {   9, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1010         {  10, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000008
1011         {  11, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02000
1012         {  12, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A0100D
1013         {  13, 0xe0800000, 0xfdf0f000 }, // add:6:0xE28D0004
1014         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB001191
1015         {  15, 0xe1dd1000, 0xfdfff000 }, // bic:6:0xE1DD10F4
1016         {  16, 0xe5950000, 0xfdfff000 }, // ldr:4:0xE595002C
1017         {  17, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0800101
1018         {  18, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE59003A8
1019         {  19, 0xe0444000, 0xfdfff000 }, // sub:6:0xE0444000
1020         {  20, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
1021         {  21, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD807C
1022         /* 22/22 */
1023         { -1, -1, -1 },
1024 };
1025 
1026 static FuncSig func_sig_SetFileTimeStamp_3[] = {
1027         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D407C
1028         {   1, 0xe58d1000, 0xfdfff000 }, // str:4:0xE58D1004
1029         {   2, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A0100D
1030         {   3, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
1031         {   4, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D2000
1032         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB002D01
1033         {   6, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1034         {   7, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1035         {   8, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00CD58
1036         {   9, 0xe1540000, 0xfdfff000 }, // cmp:7:0xE3540000
1037         {  10, 0x01500000, 0xfdfff000 }, // cmp:7:0x03500001
1038         {  11, 0x11a00000, 0xfdfff000 }, // mov:6:0x13A00000
1039         {  12, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000002
1040         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1041         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00CCC2
1042         {  15, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00001
1043         {  16, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD807C
1044         /* 17/17 */
1045         { -1, -1, -1 },
1046 };
1047 
1048 static FuncSig func_sig_SetFileAttributes_3[] = {
1049         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
1050         {   1, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
1051         {   2, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB002DD8
1052         {   3, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1053         {   4, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1054         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00CD4A
1055         {   6, 0xe1540000, 0xfdfff000 }, // cmp:7:0xE3540000
1056         {   7, 0x01500000, 0xfdfff000 }, // cmp:7:0x03500001
1057         {   8, 0x11a00000, 0xfdfff000 }, // mov:6:0x13A00000
1058         {   9, 0x18bd0000, 0xffff0000 }, // ldm:5:0x18BD8070
1059         {  10, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1060         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00CCB4
1061         {  12, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00001
1062         {  13, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
1063         {  14, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
1064         {  15, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1065         {  16, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB002DCA
1066         {  17, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1067         {  18, 0x11a00000, 0xfdfff000 }, // mov:6:0x13A00000
1068         {  19, 0x18bd0000, 0xffff0000 }, // ldm:5:0x18BD8010
1069         {  20, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
1070         {  21, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00CCAA
1071         {  22, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00001
1072         {  23, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8010
1073         {  24, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEA00004F
1074         {  25, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
1075         {  26, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
1076         {  27, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB002BE6
1077         {  28, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1078         {  29, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1079         {  30, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00CD31
1080         {  31, 0xe1540000, 0xfdfff000 }, // cmp:7:0xE3540000
1081         /* 32/32 */
1082         { -1, -1, -1 },
1083 };
1084 
1085 static FuncSig func_sig_GetDrive_FreeClusters_4[] = {
1086         {   0, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1087         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
1088         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1089         {   3, 0x200f0000, 0xf00ff000 }, // ldr:8:0x251F03B0
1090         {   4, 0x200f1000, 0xf00ff000 }, // ldr:8:0x259F1320
1091         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0x2BFEA06D
1092         {   6, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE51F03CC
1093         {   7, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE7900104
1094         {   8, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8010
1095         /* 9/9 */
1096         { -1, -1, -1 },
1097 };
1098 
1099 static FuncSig func_sig_qsort_4[] = {
1100         {   0, 0xe52de000, 0xfdfff000 }, // str:4:0xE52DE004
1101         {   1, 0xe04dd000, 0xfdfff000 }, // sub:6:0xE24DD014
1102         {   2, 0xe1cd2000, 0xfdfff000 }, // bic:6:0xE1CD20F0
1103         {   4, 0xe1120003, 0xfdffffff }, // tst:7:0xE3120003
1104         {   5, 0x000f2000, 0xf00ff000 }, // ldr:8:0x059F202C
1105         {   6, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000002
1106         {   7, 0xe1120001, 0xfdffffff }, // tst:7:0xE3120001
1107         {   8, 0x100f2000, 0xf00ff000 }, // sub:10:0x124F2D13
1108         {   9, 0x000f2000, 0xf00ff000 }, // sub:10:0x024F2E4A
1109         {  10, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D2008
1110         {  11, 0xe00f2000, 0xf00ff000 }, // sub:10:0xE24F2FFF
1111         {  12, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D200C
1112         {  13, 0xe00f2000, 0xf00ff000 }, // ldr:8:0xE59F2010
1113         {  14, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D2010
1114         {  15, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A0200D
1115         {  16, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFFB9
1116         {  17, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD900F
1117         /* 17/18 */
1118         { -1, -1, -1 },
1119 };
1120 
1121 static FuncSig func_sig_SetFileTimeStamp_4[] = {
1122         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D407C
1123         {   1, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
1124         {   2, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE59F0240
1125         {   3, 0xe1510000, 0xfdfff000 }, // cmp:7:0xE1510000
1126         {   4, 0xb1a01000, 0xfdfff000 }, // mov:6:0xB1A01000
1127         {   5, 0xe1520000, 0xfdfff000 }, // cmp:7:0xE1520000
1128         {   6, 0xb1a02000, 0xfdfff000 }, // mov:6:0xB1A02000
1129         {   7, 0xe58d1000, 0xfdfff000 }, // str:4:0xE58D1004
1130         {   8, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A0100D
1131         {   9, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1132         {  10, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D2000
1133         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB003058
1134         {  12, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1135         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1136         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00F18A
1137         {  15, 0xe1540000, 0xfdfff000 }, // cmp:7:0xE3540000
1138         {  16, 0x01500000, 0xfdfff000 }, // cmp:7:0x03500001
1139         {  17, 0x11a00000, 0xfdfff000 }, // mov:6:0x13A00000
1140         {  18, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000002
1141         {  19, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1142         {  20, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00F0F4
1143         {  21, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00001
1144         {  22, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD807C
1145         /* 23/23 */
1146         { -1, -1, -1 },
1147 };
1148 
1149 static FuncSig func_sig_ReadFastDir_4[] = {
1150         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
1151         {   1, 0xe1b05000, 0xfdfff000 }, // mov:6:0xE1B05000
1152         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04001
1153         {   3, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00000F
1154         {   4, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE3A06000
1155         {   5, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01004
1156         {   6, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1157         {   7, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFF18
1158         {   8, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1159         {   9, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00000B
1160         {  10, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1161         {  11, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00000B
1162         {  12, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1163         {  13, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFEE2
1164         {  14, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1165         {  15, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0AFFFFF4
1166         {  16, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1167         {  17, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000005
1168         {  18, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500002
1169         {  19, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1AFFFFF0
1170         {  20, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
1171         {  21, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
1172         {  22, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00001
1173         {  23, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
1174         {  24, 0xe5c46000, 0xfdfff000 }, // strb:4:0xE5C46000
1175         {  25, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFFFFFB
1176         /* 26/26 */
1177         { -1, -1, -1 },
1178 };
1179 
1180 static FuncSig func_sig_OpenFastDir_4[] = {
1181         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D43F8
1182         {   1, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06000
1183         {   3, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF64AEF
1184         {   4, 0xe1a08000, 0xfdfff000 }, // mov:6:0xE1A08000
1185         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF64FBC
1186         {   6, 0xe1b05000, 0xfdfff000 }, // mov:6:0xE1B05000
1187         {   7, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000001
1188         {   8, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
1189         {   9, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD83F8
1190         {  10, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00044
1191         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF560E2
1192         {  12, 0xe1b04000, 0xfdfff000 }, // mov:6:0xE1B04000
1193         {  13, 0x01a01000, 0xfdfff000 }, // mov:6:0x03A01E1B
1194         {  14, 0x000f0000, 0xf00ff000 }, // add:10:0x028F0F9D
1195         {  15, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BF4F01D
1196         {  16, 0xe1550000, 0xfdfff000 }, // cmp:7:0xE3550004
1197         {  17, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE3A07000
1198         {  18, 0x05847000, 0xfdfff000 }, // str:4:0x05847004
1199         {  19, 0x05847000, 0xfdfff000 }, // str:4:0x05847008
1200         {  20, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000007
1201         {  21, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00902
1202         {  22, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF56104
1203         {  23, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01902
1204         {  24, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1205         {  25, 0xe9840000, 0xffff0000 }, // stm:5:0xE9840003
1206         {  26, 0x000f1000, 0xf00ff000 }, // ldr:8:0x059F1250
1207         {  27, 0x000f0000, 0xf00ff000 }, // add:10:0x028F0D09
1208         {  28, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BF4F010
1209         {  29, 0xe1e00000, 0xfdfff000 }, // mvn:6:0xE3E00000
1210         {  30, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840000
1211         {  31, 0xe5847000, 0xfdfff000 }, // str:4:0xE584700C
1212         /* 31/32 */
1213         { -1, -1, -1 },
1214 };
1215 
1216 static FuncSig func_sig_GetDrive_ClusterSize_5[] = {
1217         {   0, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1218         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
1219         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1220         {   3, 0x200f0000, 0xf00ff000 }, // ldr:8:0x251F03E4
1221         {   4, 0x200f1000, 0xf00ff000 }, // ldr:8:0x259F1270
1222         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0x2BFF154B
1223         {   6, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE51F097C
1224         {   7, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0800384
1225         {   8, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900054
1226         {   9, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
1227         {  10, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFFF30C
1228         /* 11/11 */
1229         { -1, 10, -2 },
1230         {   0, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1231         {   1, 0x15900064, 0xfdffffff }, // ldr:4:0x15900064
1232         {   2, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
1233         /* 3/4 */
1234         { -1, -1, -1 },
1235 };
1236 
1237 static FuncSig func_sig_GetDrive_TotalClusters_5[] = {
1238         {   0, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1239         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
1240         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1241         {   3, 0x200f1000, 0xf00ff000 }, // ldr:8:0x259F124C
1242         {   4, 0x200f0000, 0xf00ff000 }, // sub:10:0x224F0D26
1243         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0x2BFF1540
1244         {   6, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE51F09A8
1245         {   7, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0800384
1246         {   8, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900054
1247         {   9, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
1248         {  10, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFFF305
1249         /* 11/11 */
1250         { -1, 10, -2 },
1251         {   0, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1252         {   1, 0x15900054, 0xfdffffff }, // ldr:4:0x15900054
1253         {   2, 0x10400001, 0xfdffffff }, // sub:6:0x12400001
1254         {   3, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
1255         /* 4/5 */
1256         { -1, -1, -1 },
1257 };
1258 
1259 static FuncSig func_sig_GetDrive_FreeClusters_5[] = {
1260         {   0, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1261         {   1, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4010
1262         {   2, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1263         {   3, 0x200f0000, 0xf00ff000 }, // ldr:8:0x251F043C
1264         {   4, 0x200f1000, 0xf00ff000 }, // ldr:8:0x259F1220
1265         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0x2BFF1535
1266         {   6, 0xe00f0000, 0xf00ff000 }, // ldr:8:0xE51F09D4
1267         {   7, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0800384
1268         {   8, 0xe5900000, 0xfdfff000 }, // ldr:4:0xE5900054
1269         {   9, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD4010
1270         {  10, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFFF2FF
1271         /* 11/11 */
1272         { -1, 10, -2 },
1273         {   0, 0xe1500000, 0xfdffffff }, // cmp:7:0xE3500000
1274         {   1, 0x15900060, 0xfdffffff }, // ldr:4:0x15900060
1275         {   2, 0x01a00000, 0xfdffffff }, // mov:6:0x03A00000
1276         /* 3/4 */
1277         { -1, -1, -1 },
1278 };
1279 
1280 static FuncSig func_sig_Fgets_Fut_6[] = {
1281         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D41F0
1282         {   1, 0xe1b04000, 0xfdfff000 }, // mov:6:0xE1B04002
1283         {   2, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
1284         {   3, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06001
1285         {   4, 0x01a00000, 0xfdfff000 }, // mov:6:0x03A00000
1286         {   5, 0x08bd0000, 0xffff0000 }, // ldm:5:0x08BD81F0
1287         {   6, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
1288         {   7, 0xe0800000, 0xfdf0f000 }, // add:6:0xE2840020
1289         {   8, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00003C
1290         {   9, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE1A07000
1291         {  10, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A02004
1292         {  11, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01006
1293         {  12, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1294         {  13, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB010B0A
1295         {  14, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1296         {  15, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00007
1297         {  16, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB00003E
1298         {  17, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
1299         {  18, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD81F0
1300         /* 19/19 */
1301         { -1, -1, -1 },
1302 };
1303 
1304 static FuncSig func_sig_ReadFastDir_6[] = {
1305         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
1306         {   1, 0xe1b04000, 0xfdfff000 }, // mov:6:0xE1B04000
1307         {   2, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05001
1308         {   3, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00000F
1309         {   4, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE3A06000
1310         {   5, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01005
1311         {   6, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
1312         {   7, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFF19
1313         {   8, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1314         {   9, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00000B
1315         {  10, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1316         {  11, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00000B
1317         {  12, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
1318         {  13, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFEE4
1319         {  14, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1320         {  15, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0AFFFFF4
1321         {  16, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1322         {  17, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000005
1323         {  18, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500002
1324         {  19, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1AFFFFF0
1325         {  20, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
1326         {  21, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
1327         {  22, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00001
1328         {  23, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
1329         {  24, 0xe5c56000, 0xfdfff000 }, // strb:4:0xE5C56000
1330         {  25, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFFFFFB
1331         {  26, 0x0a000000, 0x0f000000 }, // b, bl:3:0xEAFFFF7B
1332         {  27, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D5FF0
1333         {  28, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05001
1334         {  29, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1335         {  30, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01000
1336         {  31, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02008
1337         /* 32/32 */
1338         { -1, -1, -1 },
1339 };
1340 
1341 static FuncSig func_sig_SetFileTimeStamp_6[] = {
1342         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D41FC
1343         {   1, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE1A07000
1344         {   3, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04001
1345         {   4, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05002
1346         {   5, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE3A06000
1347         {   6, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB0109BA
1348         {   7, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1349         {   8, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000012
1350         {   9, 0xe00f1000, 0xf00ff000 }, // ldr:8:0xE59F12E8
1351         {  10, 0xe1540000, 0xfdfff000 }, // cmp:7:0xE1540001
1352         {  11, 0xb1a04000, 0xfdfff000 }, // mov:6:0xB1A04001
1353         {  12, 0xe1550000, 0xfdfff000 }, // cmp:7:0xE1550001
1354         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00001
1355         {  14, 0xb1a05000, 0xfdfff000 }, // mov:6:0xB1A05000
1356         {  15, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A0100D
1357         {  16, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00007
1358         {  17, 0xe58d4000, 0xfdfff000 }, // str:4:0xE58D4004
1359         {  18, 0xe58d5000, 0xfdfff000 }, // str:4:0xE58D5000
1360         {  19, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB003297
1361         {  20, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1362         {  21, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000005
1363         {  22, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00007
1364         {  23, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB010297
1365         {  24, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1366         {  25, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06000
1367         {  26, 0x01a00000, 0xfdfff000 }, // mov:6:0x01A00007
1368         {  27, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0B010203
1369         {  28, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00006
1370         {  29, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD81FC
1371         {  30, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
1372         {  31, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
1373         /* 31/32 */
1374         { -1, -1, -1 },
1375 };
1376 
1377 static FuncSig func_sig__sqrt_6[] = {
1378         {   0, 0xe1a0c000, 0xfdfff000 }, // mov:6:0xE3A0C207
1379         {   2, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
1380         {   3, 0xe111000c, 0xfdffffff }, // tst:7:0xE111000C
1381         {   4, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000044
1382         {   5, 0xe1dce000, 0xfdfff000 }, // bic:6:0xE1DCE001
1383         {   6, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000047
1384         {   7, 0xe1110102, 0xfdffffff }, // tst:7:0xE3110102
1385         {   8, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A00004D
1386         {   9, 0xe1a0c000, 0xfdfff000 }, // mov:6:0xE1A0CA21
1387         {  10, 0xe1c11000, 0xfdfff000 }, // bic:6:0xE1C11A0C
1388         {  12, 0xe080c000, 0xfdf0f000 }, // add:6:0xE28CC0FD
1389         {  13, 0xe1b0c000, 0xfdfff000 }, // mov:6:0xE1B0C0AC
1390         {  14, 0xe080c000, 0xfdf0f000 }, // add:6:0xE28CCD06
1391         {  15, 0x0a000000, 0x0f000000 }, // b, bl:3:0x3A000001
1392         {  16, 0xe1b00000, 0xfdfff000 }, // mov:6:0xE1B00080
1393         {  18, 0xe1a03000, 0xfdfff000 }, // mov:6:0xE3A03000
1394         {  19, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02101
1395         {  20, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01501
1396         {  22, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00500
1397         {  23, 0xe0411000, 0xfdfff000 }, // sub:6:0xE2411101
1398         {  24, 0xe1a0e000, 0xfdfff000 }, // mov:6:0xE3A0E201
1399         {  25, 0xe0514000, 0xfdfff000 }, // sub:6:0xE0514002
1400         {  26, 0x20544000, 0xfdfff000 }, // sub:6:0x2054400E
1401         {  27, 0x20802000, 0xfdf0f000 }, // add:6:0x2082208E
1402         {  28, 0x21a01000, 0xfdfff000 }, // mov:6:0x21A01004
1403         {  29, 0xe1b00000, 0xfdfff000 }, // mov:6:0xE1B00080
1404         {  31, 0xe1b0e000, 0xfdfff000 }, // mov:6:0xE1B0E0AE
1405         /* 27/32 */
1406         { -1, -1, -1 },
1407 };
1408 
1409 static FuncSig func_sig_OpenFastDir_6[] = {
1410         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D43F8
1411         {   1, 0xe1a07000, 0xfdfff000 }, // mov:6:0xE1A07000
1412         {   3, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF631EB
1413         {   4, 0xe1a08000, 0xfdfff000 }, // mov:6:0xE1A08000
1414         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF636DA
1415         {   6, 0xe1b05000, 0xfdfff000 }, // mov:6:0xE1B05000
1416         {   7, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000001
1417         {   8, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
1418         {   9, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD83F8
1419         {  10, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00044
1420         {  11, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF5392B
1421         {  12, 0xe1b04000, 0xfdfff000 }, // mov:6:0xE1B04000
1422         {  13, 0x01a01000, 0xfdfff000 }, // mov:6:0x03A01E1B
1423         {  14, 0x000f0000, 0xf00ff000 }, // add:10:0x028F0F9D
1424         {  15, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BF4C665
1425         {  16, 0xe1550000, 0xfdfff000 }, // cmp:7:0xE3550004
1426         {  17, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE3A06000
1427         {  18, 0x05846000, 0xfdfff000 }, // str:4:0x05846004
1428         {  19, 0x05846000, 0xfdfff000 }, // str:4:0x05846008
1429         {  20, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000007
1430         {  21, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00902
1431         {  22, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBF5394D
1432         {  23, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01902
1433         {  24, 0xe9840000, 0xffff0000 }, // stm:5:0xE9840003
1434         {  25, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1435         {  26, 0x000f1000, 0xf00ff000 }, // ldr:8:0x059F1250
1436         {  27, 0x000f0000, 0xf00ff000 }, // add:10:0x028F0D09
1437         {  28, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0BF4C658
1438         {  29, 0xe1e00000, 0xfdfff000 }, // mvn:6:0xE3E00000
1439         {  30, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840000
1440         {  31, 0xe5846000, 0xfdfff000 }, // str:4:0xE584600C
1441         /* 31/32 */
1442         { -1, -1, -1 },
1443 };
1444 
1445 static FuncSig func_sig_qsort_6[] = {
1446         {   0, 0xe52de000, 0xfdfff000 }, // str:4:0xE52DE004
1447         {   1, 0xe04dd000, 0xfdfff000 }, // sub:6:0xE24DD014
1448         {   2, 0xe1cd2000, 0xfdfff000 }, // bic:6:0xE1CD20F0
1449         {   4, 0xe1120003, 0xfdffffff }, // tst:7:0xE3120003
1450         {   5, 0x000f2000, 0xf00ff000 }, // ldr:8:0x059F2030
1451         {   6, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A000002
1452         {   7, 0xe1120001, 0xfdffffff }, // tst:7:0xE3120001
1453         {   8, 0x100f2000, 0xf00ff000 }, // ldr:8:0x159F2028
1454         {   9, 0x000f2000, 0xf00ff000 }, // ldr:8:0x059F2028
1455         {  10, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D2008
1456         {  11, 0xe00f2000, 0xf00ff000 }, // ldr:8:0xE59F2024
1457         {  12, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D200C
1458         {  13, 0xe00f2000, 0xf00ff000 }, // ldr:8:0xE59F2020
1459         {  14, 0xe58d2000, 0xfdfff000 }, // str:4:0xE58D2010
1460         {  15, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE1A0200D
1461         {  16, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFFB9
1462         {  17, 0xe080d000, 0xfdf0f000 }, // add:6:0xE28DD014
1463         {  18, 0xe49df000, 0xfdfff000 }, // ldr:4:0xE49DF004
1464         /* 18/19 */
1465         { -1, -1, -1 },
1466 };
1467 
1468 static FuncSig func_sig_time_6[] = {
1469         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4038
1470         {   1, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
1471         {   2, 0xe00f4000, 0xf00ff000 }, // ldr:8:0xE51F41BC
1472         {   3, 0xe1e00000, 0xfdfff000 }, // mvn:6:0xE3E00000
1473         {   4, 0xe58d0000, 0xfdfff000 }, // str:4:0xE58D0000
1474         {   5, 0xe5940000, 0xfdfff000 }, // ldr:4:0xE5940000
1475         {   6, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1476         {   7, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000007
1477         {   8, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01001
1478         {   9, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE3A00000
1479         {  10, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFE9962
1480         {  11, 0xe1100001, 0xfdffffff }, // tst:7:0xE3100001
1481         {  12, 0x100f1000, 0xf00ff000 }, // ldr:8:0x159F1368
1482         {  13, 0xe5840000, 0xfdfff000 }, // str:4:0xE5840000
1483         {  14, 0x100f0000, 0xf00ff000 }, // sub:10:0x124F0F79
1484         {  15, 0x0b000000, 0x0f000000 }, // b, bl:3:0x1BFE287F
1485         {  16, 0xe5940000, 0xfdfff000 }, // ldr:4:0xE5940000
1486         {  17, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
1487         {  18, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFE99B5
1488         {  19, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A0000D
1489         {  20, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFE9A67
1490         {  21, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02001
1491         {  22, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE3A01000
1492         {  23, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A0000D
1493         {  24, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEBFFFFB4
1494         {  25, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1495         {  26, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000009
1496         {  27, 0xe5940000, 0xfdfff000 }, // ldr:4:0xE5940008
1497         {  28, 0xe5941000, 0xfdfff000 }, // ldr:4:0xE594100C
1498         {  29, 0xe1a02000, 0xfdfff000 }, // mov:6:0xE3A02000
1499         {  30, 0xe0800000, 0xfdf0f000 }, // add:6:0xE0800001
1500         {  31, 0xe59d1000, 0xfdfff000 }, // ldr:4:0xE59D1000
1501         /* 32/32 */
1502         { -1, -1, -1 },
1503 };
1504 
1505 static FuncSig func_sig_SetFileAttributes_6[] = {
1506         {   0, 0xe92d0000, 0xffff0000 }, // stm:5:0xE92D4070
1507         {   1, 0xe1a05000, 0xfdfff000 }, // mov:6:0xE1A05000
1508         {   3, 0xe1a06000, 0xfdfff000 }, // mov:6:0xE1A06001
1509         {   4, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE3A04000
1510         {   5, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB01099D
1511         {   6, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1512         {   7, 0x0a000000, 0x0f000000 }, // b, bl:3:0x0A00000A
1513         {   8, 0xe1a01000, 0xfdfff000 }, // mov:6:0xE1A01006
1514         {   9, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1515         {  10, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB003370
1516         {  11, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500000
1517         {  12, 0x0a000000, 0x0f000000 }, // b, bl:3:0x1A000005
1518         {  13, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00005
1519         {  14, 0x0b000000, 0x0f000000 }, // b, bl:3:0xEB010282
1520         {  15, 0xe1500000, 0xfdfff000 }, // cmp:7:0xE3500001
1521         {  16, 0xe1a04000, 0xfdfff000 }, // mov:6:0xE1A04000
1522         {  17, 0x01a00000, 0xfdfff000 }, // mov:6:0x01A00005
1523         {  18, 0x0b000000, 0x0f000000 }, // b, bl:3:0x0B0101EE
1524         {  19, 0xe1a00000, 0xfdfff000 }, // mov:6:0xE1A00004
1525         {  20, 0xe8bd0000, 0xffff0000 }, // ldm:5:0xE8BD8070
1526         /* 20/21 */
1527         { -1, -1, -1 },
1528 };
1529 
1530 FuncsList func_list[] = {
1531         { "CreateJumptable", func_sig_CreateJumptable_1, 1 },
1532         { "DeleteFile_Fut", func_sig_DeleteFile_Fut_1, 1 },
1533         { "Feof_Fut", func_sig_Feof_Fut_1, 1 },
1534         { "Fflush_Fut", func_sig_Fflush_Fut_1, 1 },
1535         { "Fgets_Fut", func_sig_Fgets_Fut_1, 1 },
1536         { "Fgets_Fut", func_sig_Fgets_Fut_6, 6 },
1537         { "GetDrive_ClusterSize", func_sig_GetDrive_ClusterSize_1, 1 },
1538         { "GetDrive_ClusterSize", func_sig_GetDrive_ClusterSize_5, 5 },
1539         { "GetDrive_FreeClusters", func_sig_GetDrive_FreeClusters_1, 1 },
1540         { "GetDrive_FreeClusters", func_sig_GetDrive_FreeClusters_3, 3 },
1541         { "GetDrive_FreeClusters", func_sig_GetDrive_FreeClusters_4, 4 },
1542         { "GetDrive_FreeClusters", func_sig_GetDrive_FreeClusters_5, 5 },
1543         { "GetDrive_TotalClusters", func_sig_GetDrive_TotalClusters_1, 1 },
1544         { "GetDrive_TotalClusters", func_sig_GetDrive_TotalClusters_3, 3 },
1545         { "GetDrive_TotalClusters", func_sig_GetDrive_TotalClusters_5, 5 },
1546         { "GetFocusLensSubjectDistanceFromLens", func_sig_GetFocusLensSubjectDistanceFromLens_1, 1 },
1547         { "GetFocusLensSubjectDistanceFromLens", func_sig_GetFocusLensSubjectDistanceFromLens_3, 3 },
1548         { "GetParameterData", func_sig_GetParameterData_1, 1 },
1549         { "OpenFastDir", func_sig_OpenFastDir_1, 1 },
1550         { "OpenFastDir", func_sig_OpenFastDir_3, 3 },
1551         { "OpenFastDir", func_sig_OpenFastDir_4, 4 },
1552         { "OpenFastDir", func_sig_OpenFastDir_6, 6 },
1553         { "ReadFastDir", func_sig_ReadFastDir_1, 1 },
1554         { "ReadFastDir", func_sig_ReadFastDir_3, 3 },
1555         { "ReadFastDir", func_sig_ReadFastDir_4, 4 },
1556         { "ReadFastDir", func_sig_ReadFastDir_6, 6 },
1557         { "RenameFile_Fut", func_sig_RenameFile_Fut_1, 1 },
1558         { "SetFileAttributes", func_sig_SetFileAttributes_1, 1 },
1559         { "SetFileAttributes", func_sig_SetFileAttributes_3, 3 },
1560         { "SetFileAttributes", func_sig_SetFileAttributes_6, 6 },
1561         { "SetFileTimeStamp", func_sig_SetFileTimeStamp_1, 1 },
1562         { "SetFileTimeStamp", func_sig_SetFileTimeStamp_3, 3 },
1563         { "SetFileTimeStamp", func_sig_SetFileTimeStamp_4, 4 },
1564         { "SetFileTimeStamp", func_sig_SetFileTimeStamp_6, 6 },
1565         { "SetLogicalEventActive", func_sig_SetLogicalEventActive_1, 1 },
1566         { "SetParameterData", func_sig_SetParameterData_1, 1 },
1567         { "_sqrt", func_sig__sqrt_1, 1 },
1568         { "_sqrt", func_sig__sqrt_6, 6 },
1569         { "closedir", func_sig_closedir_1, 1 },
1570         { "closedir", func_sig_closedir_3, 3 },
1571         { "kbd_pwr_off", func_sig_kbd_pwr_off_1, 1 },
1572         { "kbd_pwr_off", func_sig_kbd_pwr_off_2, 2 },
1573         { "kbd_pwr_on", func_sig_kbd_pwr_on_1, 1 },
1574         { "kbd_pwr_on", func_sig_kbd_pwr_on_2, 2 },
1575         { "mktime_ext", func_sig_mktime_ext_1, 1 },
1576         { "qsort", func_sig_qsort_1, 1 },
1577         { "qsort", func_sig_qsort_4, 4 },
1578         { "qsort", func_sig_qsort_6, 6 },
1579         { "set_control_event", func_sig_set_control_event_1, 1 },
1580         { "stat", func_sig_stat_1, 1 },
1581         { "strcat", func_sig_strcat_1, 1 },
1582         { "strchr", func_sig_strchr_1, 1 },
1583         { "strftime", func_sig_strftime_1, 1 },
1584         { "strncmp", func_sig_strncmp_1, 1 },
1585         { "strncpy", func_sig_strncpy_1, 1 },
1586         { "strrchr", func_sig_strrchr_1, 1 },
1587         { "time", func_sig_time_6, 6 },
1588 { NULL }};
1589 

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