1 #source: tlsbinpic.s 2 #source: tlsbin.s 3 #as: --32 4 #ld: -melf_i386 tmpdir/libtlslib.so --no-ld-generated-unwind-info 5 #objdump: -drj.text 6 #target: i?86-*-* 7 8 # PT_TLS layout is: 9 # Offset from Offset from Name 10 # TCB base TCB end 11 # 0x00 -0xa0 sg1..sg8 12 # 0x20 -0x80 sl1..sl8 13 # 0x40 -0x60 sh1..sh8 14 # 0x60 -0x40 bg1..bg8 15 # 0x80 -0x20 bl1..bl8 16 17 .*: +file format elf32-i386.* 18 19 Disassembly of section .text: 20 21 [0-9a-f]+ <fn2>: 22 +[0-9a-f]+: 55[ ]+push %ebp 23 +[0-9a-f]+: 89 e5[ ]+mov %esp,%ebp 24 +[0-9a-f]+: 53[ ]+push %ebx 25 +[0-9a-f]+: 50[ ]+push %eax 26 +[0-9a-f]+: e8 00 00 00 00[ ]+call [0-9a-f]+ <fn2\+0xa> 27 +[0-9a-f]+: 5b[ ]+pop %ebx 28 +[0-9a-f]+: 81 c3 ([0-9a-f]{2} ){4}[ ]+add \$0x[0-9a-f]+,%ebx 29 +[0-9a-f]+: 90[ ]+nop * 30 +[0-9a-f]+: 90[ ]+nop * 31 +[0-9a-f]+: 90[ ]+nop * 32 +[0-9a-f]+: 90[ ]+nop * 33 # GD -> IE because variable is not defined in executable 34 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 35 +[0-9a-f]+: 2b 83 f8 ff ff ff[ ]+sub -0x8\(%ebx\),%eax 36 # ->R_386_TLS_TPOFF32 sG1 37 +[0-9a-f]+: 90[ ]+nop * 38 +[0-9a-f]+: 90[ ]+nop * 39 +[0-9a-f]+: 90[ ]+nop * 40 +[0-9a-f]+: 90[ ]+nop * 41 # GD -> IE because variable is not defined in executable where 42 # the variable is referenced through @gottpoff too 43 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 44 +[0-9a-f]+: 2b 83 e8 ff ff ff[ ]+sub -0x18\(%ebx\),%eax 45 # ->R_386_TLS_TPOFF32 sG2 46 +[0-9a-f]+: 90[ ]+nop * 47 +[0-9a-f]+: 90[ ]+nop * 48 +[0-9a-f]+: 90[ ]+nop * 49 +[0-9a-f]+: 90[ ]+nop * 50 # GD -> IE because variable is not defined in executable where 51 # the variable is referenced through @gotntpoff too 52 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 53 +[0-9a-f]+: 03 83 dc ff ff ff[ ]+add -0x24\(%ebx\),%eax 54 # ->R_386_TLS_TPOFF sG3 55 +[0-9a-f]+: 90[ ]+nop * 56 +[0-9a-f]+: 90[ ]+nop * 57 +[0-9a-f]+: 90[ ]+nop * 58 +[0-9a-f]+: 90[ ]+nop * 59 # GD -> IE because variable is not defined in executable where 60 # the variable is referenced through @gottpoff and @gotntpoff too 61 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 62 +[0-9a-f]+: 2b 83 ec ff ff ff[ ]+sub -0x14\(%ebx\),%eax 63 # ->R_386_TLS_TPOFF32 sG4 64 +[0-9a-f]+: 90[ ]+nop * 65 +[0-9a-f]+: 90[ ]+nop * 66 +[0-9a-f]+: 90[ ]+nop * 67 +[0-9a-f]+: 90[ ]+nop * 68 # GD -> LE with global variable defined in executable 69 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 70 +[0-9a-f]+: 81 e8 00 10 00 00[ ]+sub \$0x1000,%eax 71 # sg1 72 +[0-9a-f]+: 90[ ]+nop * 73 +[0-9a-f]+: 90[ ]+nop * 74 +[0-9a-f]+: 90[ ]+nop * 75 +[0-9a-f]+: 90[ ]+nop * 76 # GD -> LE with local variable defined in executable 77 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 78 +[0-9a-f]+: 81 e8 e0 0f 00 00[ ]+sub \$0xfe0,%eax 79 # sl1 80 +[0-9a-f]+: 90[ ]+nop * 81 +[0-9a-f]+: 90[ ]+nop * 82 +[0-9a-f]+: 90[ ]+nop * 83 +[0-9a-f]+: 90[ ]+nop * 84 # GD -> LE with hidden variable defined in executable 85 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 86 +[0-9a-f]+: 81 e8 c0 0f 00 00[ ]+sub \$0xfc0,%eax 87 # sh1 88 +[0-9a-f]+: 90[ ]+nop * 89 +[0-9a-f]+: 90[ ]+nop * 90 +[0-9a-f]+: 90[ ]+nop * 91 +[0-9a-f]+: 90[ ]+nop * 92 # LD -> LE 93 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 94 +[0-9a-f]+: 90[ ]+nop * 95 +[0-9a-f]+: 8d 74 26 00[ ]+lea 0x0\(%esi,%eiz,1\),%esi 96 +[0-9a-f]+: 90[ ]+nop * 97 +[0-9a-f]+: 90[ ]+nop * 98 +[0-9a-f]+: 8d 90 20 f0 ff ff[ ]+lea -0xfe0\(%eax\),%edx 99 # sl1 100 +[0-9a-f]+: 90[ ]+nop * 101 +[0-9a-f]+: 90[ ]+nop * 102 +[0-9a-f]+: 8d 88 24 f0 ff ff[ ]+lea -0xfdc\(%eax\),%ecx 103 # sl2 104 +[0-9a-f]+: 90[ ]+nop * 105 +[0-9a-f]+: 90[ ]+nop * 106 +[0-9a-f]+: 90[ ]+nop * 107 +[0-9a-f]+: 90[ ]+nop * 108 # LD -> LE against hidden variables 109 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 110 +[0-9a-f]+: 90[ ]+nop * 111 +[0-9a-f]+: 8d 74 26 00[ ]+lea 0x0\(%esi,%eiz,1\),%esi 112 +[0-9a-f]+: 90[ ]+nop * 113 +[0-9a-f]+: 90[ ]+nop * 114 +[0-9a-f]+: 8d 90 40 f0 ff ff[ ]+lea -0xfc0\(%eax\),%edx 115 # sh1 116 +[0-9a-f]+: 90[ ]+nop * 117 +[0-9a-f]+: 90[ ]+nop * 118 +[0-9a-f]+: 8d 88 44 f0 ff ff[ ]+lea -0xfbc\(%eax\),%ecx 119 # sh2 120 +[0-9a-f]+: 90[ ]+nop * 121 +[0-9a-f]+: 90[ ]+nop * 122 +[0-9a-f]+: 90[ ]+nop * 123 +[0-9a-f]+: 90[ ]+nop * 124 # @gottpoff IE against global var 125 +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 126 +[0-9a-f]+: 90[ ]+nop * 127 +[0-9a-f]+: 90[ ]+nop * 128 +[0-9a-f]+: 2b 8b e8 ff ff ff[ ]+sub -0x18\(%ebx\),%ecx 129 # ->R_386_TLS_TPOFF32 sG2 130 +[0-9a-f]+: 90[ ]+nop * 131 +[0-9a-f]+: 90[ ]+nop * 132 +[0-9a-f]+: 90[ ]+nop * 133 +[0-9a-f]+: 90[ ]+nop * 134 # @gottpoff IE against global var 135 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 136 +[0-9a-f]+: 90[ ]+nop * 137 +[0-9a-f]+: 90[ ]+nop * 138 +[0-9a-f]+: 2b 83 ec ff ff ff[ ]+sub -0x14\(%ebx\),%eax 139 # ->R_386_TLS_TPOFF32 sG4 140 +[0-9a-f]+: 90[ ]+nop * 141 +[0-9a-f]+: 90[ ]+nop * 142 +[0-9a-f]+: 90[ ]+nop * 143 +[0-9a-f]+: 90[ ]+nop * 144 # @gotntpoff IE against global var 145 +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 146 +[0-9a-f]+: 90[ ]+nop * 147 +[0-9a-f]+: 90[ ]+nop * 148 +[0-9a-f]+: 03 8b dc ff ff ff[ ]+add -0x24\(%ebx\),%ecx 149 # ->R_386_TLS_TPOFF sG3 150 +[0-9a-f]+: 90[ ]+nop * 151 +[0-9a-f]+: 90[ ]+nop * 152 +[0-9a-f]+: 90[ ]+nop * 153 +[0-9a-f]+: 90[ ]+nop * 154 # @gotntpoff IE against global var 155 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 156 +[0-9a-f]+: 90[ ]+nop * 157 +[0-9a-f]+: 90[ ]+nop * 158 +[0-9a-f]+: 03 83 f0 ff ff ff[ ]+add -0x10\(%ebx\),%eax 159 # ->R_386_TLS_TPOFF sG4 160 +[0-9a-f]+: 90[ ]+nop * 161 +[0-9a-f]+: 90[ ]+nop * 162 +[0-9a-f]+: 90[ ]+nop * 163 +[0-9a-f]+: 90[ ]+nop * 164 # @gottpoff IE -> LE against global var defined in exec 165 +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 166 +[0-9a-f]+: 90[ ]+nop * 167 +[0-9a-f]+: 90[ ]+nop * 168 +[0-9a-f]+: 81 e9 00 10 00 00[ ]+sub \$0x1000,%ecx 169 # sg1 170 +[0-9a-f]+: 90[ ]+nop * 171 +[0-9a-f]+: 90[ ]+nop * 172 +[0-9a-f]+: 90[ ]+nop * 173 +[0-9a-f]+: 90[ ]+nop * 174 # @gotntpoff IE -> LE against local var 175 +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 176 +[0-9a-f]+: 90[ ]+nop * 177 +[0-9a-f]+: 90[ ]+nop * 178 +[0-9a-f]+: 81 c0 20 f0 ff ff[ ]+add \$0xfffff020,%eax 179 # sl1 180 +[0-9a-f]+: 90[ ]+nop * 181 +[0-9a-f]+: 90[ ]+nop * 182 +[0-9a-f]+: 90[ ]+nop * 183 +[0-9a-f]+: 90[ ]+nop * 184 # @gottpoff IE -> LE against hidden var 185 +[0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 186 +[0-9a-f]+: 90[ ]+nop * 187 +[0-9a-f]+: 90[ ]+nop * 188 +[0-9a-f]+: 81 e9 c0 0f 00 00[ ]+sub \$0xfc0,%ecx 189 # sh1 190 +[0-9a-f]+: 90[ ]+nop * 191 +[0-9a-f]+: 90[ ]+nop * 192 +[0-9a-f]+: 90[ ]+nop * 193 +[0-9a-f]+: 90[ ]+nop * 194 # Direct access through %gs 195 # @gotntpoff IE against global var 196 +[0-9a-f]+: 8b 8b e0 ff ff ff[ ]+mov -0x20\(%ebx\),%ecx 197 # ->R_386_TLS_TPOFF sG5 198 +[0-9a-f]+: 90[ ]+nop * 199 +[0-9a-f]+: 90[ ]+nop * 200 +[0-9a-f]+: 65 8b 11[ ]+mov %gs:\(%ecx\),%edx 201 +[0-9a-f]+: 90[ ]+nop * 202 +[0-9a-f]+: 90[ ]+nop * 203 +[0-9a-f]+: 90[ ]+nop * 204 +[0-9a-f]+: 90[ ]+nop * 205 # @gotntpoff IE->LE against local var 206 +[0-9a-f]+: c7 c0 30 f0 ff ff[ ]+mov \$0xfffff030,%eax 207 # sl5 208 +[0-9a-f]+: 90[ ]+nop * 209 +[0-9a-f]+: 90[ ]+nop * 210 +[0-9a-f]+: 65 8b 10[ ]+mov %gs:\(%eax\),%edx 211 +[0-9a-f]+: 90[ ]+nop * 212 +[0-9a-f]+: 90[ ]+nop * 213 +[0-9a-f]+: 90[ ]+nop * 214 +[0-9a-f]+: 90[ ]+nop * 215 # @gotntpoff IE->LE against hidden var 216 +[0-9a-f]+: c7 c2 50 f0 ff ff[ ]+mov \$0xfffff050,%edx 217 # sh5 218 +[0-9a-f]+: 90[ ]+nop * 219 +[0-9a-f]+: 90[ ]+nop * 220 +[0-9a-f]+: 65 8b 12[ ]+mov %gs:\(%edx\),%edx 221 +[0-9a-f]+: 90[ ]+nop * 222 +[0-9a-f]+: 90[ ]+nop * 223 +[0-9a-f]+: 90[ ]+nop * 224 +[0-9a-f]+: 90[ ]+nop * 225 # GD -> IE because variable is not defined in executable 226 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 227 +[0-9a-f]+: 2b 83 f8 ff ff ff[ ]+sub -0x8\(%ebx\),%eax 228 # ->R_386_TLS_TPOFF32 sG1 229 +[0-9a-f]+: 90[ ]+nop * 230 +[0-9a-f]+: 90[ ]+nop * 231 +[0-9a-f]+: 90[ ]+nop * 232 +[0-9a-f]+: 90[ ]+nop * 233 +[0-9a-f]+: 8b 5d fc[ ]+mov -0x4\(%ebp\),%ebx 234 +[0-9a-f]+: c9[ ]+leave * 235 +[0-9a-f]+: c3[ ]+ret * 236 237 [0-9a-f]+ <_start>: 238 +[0-9a-f]+: 55[ ]+push %ebp 239 +[0-9a-f]+: 89 e5[ ]+mov %esp,%ebp 240 +[0-9a-f]+: e8 00 00 00 00[ ]+call [0-9a-f]+ <_start\+0x8> 241 +[0-9a-f]+: 59[ ]+pop %ecx 242 +[0-9a-f]+: 81 c1 ([0-9a-f]{2} ){4}[ ]+add \$0x[0-9a-f]*f94,%ecx 243 +[0-9a-f]+: 90[ ]+nop * 244 +[0-9a-f]+: 90[ ]+nop * 245 +[0-9a-f]+: 90[ ]+nop * 246 +[0-9a-f]+: 90[ ]+nop * 247 # @gottpoff IE against global var 248 +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 249 +[0-9a-f]+: 90[ ]+nop * 250 +[0-9a-f]+: 90[ ]+nop * 251 +[0-9a-f]+: 2b 91 f4 ff ff ff[ ]+sub -0xc\(%ecx\),%edx 252 # ->R_386_TLS_TPOFF32 sG6 253 +[0-9a-f]+: 90[ ]+nop * 254 +[0-9a-f]+: 90[ ]+nop * 255 +[0-9a-f]+: 90[ ]+nop * 256 +[0-9a-f]+: 90[ ]+nop * 257 # @indntpoff IE against global var 258 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 259 +[0-9a-f]+: 90[ ]+nop * 260 +[0-9a-f]+: 90[ ]+nop * 261 +[0-9a-f]+: 03 05 ([0-9a-f]{2} ){4}[ ]+add 0x[0-9a-f]+108,%eax 262 # ->R_386_TLS_TPOFF sG7 263 +[0-9a-f]+: 90[ ]+nop * 264 +[0-9a-f]+: 90[ ]+nop * 265 +[0-9a-f]+: 90[ ]+nop * 266 +[0-9a-f]+: 90[ ]+nop * 267 # @indntpoff direct %gs access IE against global var 268 +[0-9a-f]+: 8b 15 ([0-9a-f]{2} ){4}[ ]+mov 0x[0-9a-f]+120,%edx 269 # ->R_386_TLS_TPOFF sG8 270 +[0-9a-f]+: 90[ ]+nop * 271 +[0-9a-f]+: 90[ ]+nop * 272 +[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax 273 +[0-9a-f]+: 90[ ]+nop * 274 +[0-9a-f]+: 90[ ]+nop * 275 +[0-9a-f]+: 90[ ]+nop * 276 +[0-9a-f]+: 90[ ]+nop * 277 # @gottpoff IE -> LE against global var defined in exec 278 +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 279 +[0-9a-f]+: 90[ ]+nop * 280 +[0-9a-f]+: 90[ ]+nop * 281 +[0-9a-f]+: 81 ea 8c 0f 00 00[ ]+sub \$0xf8c,%edx 282 # bg6 283 +[0-9a-f]+: 90[ ]+nop * 284 +[0-9a-f]+: 90[ ]+nop * 285 +[0-9a-f]+: 90[ ]+nop * 286 +[0-9a-f]+: 90[ ]+nop * 287 # @indntpoff IE -> LE against global var defined in exec 288 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 289 +[0-9a-f]+: 90[ ]+nop * 290 +[0-9a-f]+: 90[ ]+nop * 291 +[0-9a-f]+: 81 c0 78 f0 ff ff[ ]+add \$0xfffff078,%eax 292 # bg7 293 +[0-9a-f]+: 90[ ]+nop * 294 +[0-9a-f]+: 90[ ]+nop * 295 +[0-9a-f]+: 90[ ]+nop * 296 +[0-9a-f]+: 90[ ]+nop * 297 # @indntpoff direct %gs access IE -> LE against global var defined 298 # in exec 299 +[0-9a-f]+: c7 c2 7c f0 ff ff[ ]+mov \$0xfffff07c,%edx 300 # bg8 301 +[0-9a-f]+: 90[ ]+nop * 302 +[0-9a-f]+: 90[ ]+nop * 303 +[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax 304 +[0-9a-f]+: 90[ ]+nop * 305 +[0-9a-f]+: 90[ ]+nop * 306 +[0-9a-f]+: 90[ ]+nop * 307 +[0-9a-f]+: 90[ ]+nop * 308 # @gottpoff IE -> LE against local var 309 +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 310 +[0-9a-f]+: 90[ ]+nop * 311 +[0-9a-f]+: 90[ ]+nop * 312 +[0-9a-f]+: 81 ea 6c 0f 00 00[ ]+sub \$0xf6c,%edx 313 # bl6 314 +[0-9a-f]+: 90[ ]+nop * 315 +[0-9a-f]+: 90[ ]+nop * 316 +[0-9a-f]+: 90[ ]+nop * 317 +[0-9a-f]+: 90[ ]+nop * 318 # @indntpoff IE -> LE against local var 319 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 320 +[0-9a-f]+: 90[ ]+nop * 321 +[0-9a-f]+: 90[ ]+nop * 322 +[0-9a-f]+: 81 c0 98 f0 ff ff[ ]+add \$0xfffff098,%eax 323 # bl7 324 +[0-9a-f]+: 90[ ]+nop * 325 +[0-9a-f]+: 90[ ]+nop * 326 +[0-9a-f]+: 90[ ]+nop * 327 +[0-9a-f]+: 90[ ]+nop * 328 # @indntpoff direct %gs access IE -> LE against local var 329 +[0-9a-f]+: c7 c2 9c f0 ff ff[ ]+mov \$0xfffff09c,%edx 330 # bl8 331 +[0-9a-f]+: 90[ ]+nop * 332 +[0-9a-f]+: 90[ ]+nop * 333 +[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax 334 +[0-9a-f]+: 90[ ]+nop * 335 +[0-9a-f]+: 90[ ]+nop * 336 +[0-9a-f]+: 90[ ]+nop * 337 +[0-9a-f]+: 90[ ]+nop * 338 # @gottpoff IE -> LE against hidden but not local var 339 +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 340 +[0-9a-f]+: 90[ ]+nop * 341 +[0-9a-f]+: 90[ ]+nop * 342 +[0-9a-f]+: 81 ea ac 0f 00 00[ ]+sub \$0xfac,%edx 343 # sh6 344 +[0-9a-f]+: 90[ ]+nop * 345 +[0-9a-f]+: 90[ ]+nop * 346 +[0-9a-f]+: 90[ ]+nop * 347 +[0-9a-f]+: 90[ ]+nop * 348 # @indntpoff IE -> LE against hidden but not local var 349 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 350 +[0-9a-f]+: 90[ ]+nop * 351 +[0-9a-f]+: 90[ ]+nop * 352 +[0-9a-f]+: 81 c0 58 f0 ff ff[ ]+add \$0xfffff058,%eax 353 # sh7 354 +[0-9a-f]+: 90[ ]+nop * 355 +[0-9a-f]+: 90[ ]+nop * 356 +[0-9a-f]+: 90[ ]+nop * 357 +[0-9a-f]+: 90[ ]+nop * 358 # @indntpoff direct %gs access IE -> LE against hidden but not 359 # local var 360 +[0-9a-f]+: c7 c2 5c f0 ff ff[ ]+mov \$0xfffff05c,%edx 361 # sh8 362 +[0-9a-f]+: 90[ ]+nop * 363 +[0-9a-f]+: 90[ ]+nop * 364 +[0-9a-f]+: 65 8b 02[ ]+mov %gs:\(%edx\),%eax 365 +[0-9a-f]+: 90[ ]+nop * 366 +[0-9a-f]+: 90[ ]+nop * 367 +[0-9a-f]+: 90[ ]+nop * 368 +[0-9a-f]+: 90[ ]+nop * 369 # LE @tpoff, global var defined in exec 370 +[0-9a-f]+: ba 00 10 00 00[ ]+mov \$0x1000,%edx 371 # sg1 372 +[0-9a-f]+: 90[ ]+nop * 373 +[0-9a-f]+: 90[ ]+nop * 374 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 375 +[0-9a-f]+: 90[ ]+nop * 376 +[0-9a-f]+: 90[ ]+nop * 377 +[0-9a-f]+: 29 d0[ ]+sub %edx,%eax 378 +[0-9a-f]+: 90[ ]+nop * 379 +[0-9a-f]+: 90[ ]+nop * 380 +[0-9a-f]+: 90[ ]+nop * 381 +[0-9a-f]+: 90[ ]+nop * 382 # LE @tpoff, local var 383 +[0-9a-f]+: b8 7f 0f 00 00[ ]+mov \$0xf7f,%eax 384 # bl1+1 385 +[0-9a-f]+: 90[ ]+nop * 386 +[0-9a-f]+: 90[ ]+nop * 387 +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 388 +[0-9a-f]+: 90[ ]+nop * 389 +[0-9a-f]+: 90[ ]+nop * 390 +[0-9a-f]+: 29 c2[ ]+sub %eax,%edx 391 +[0-9a-f]+: 90[ ]+nop * 392 +[0-9a-f]+: 90[ ]+nop * 393 +[0-9a-f]+: 90[ ]+nop * 394 +[0-9a-f]+: 90[ ]+nop * 395 # LE @tpoff, hidden var defined in exec 396 +[0-9a-f]+: b8 bd 0f 00 00[ ]+mov \$0xfbd,%eax 397 # sh1+3 398 +[0-9a-f]+: 90[ ]+nop * 399 +[0-9a-f]+: 90[ ]+nop * 400 +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 401 +[0-9a-f]+: 90[ ]+nop * 402 +[0-9a-f]+: 90[ ]+nop * 403 +[0-9a-f]+: 29 c2[ ]+sub %eax,%edx 404 +[0-9a-f]+: 90[ ]+nop * 405 +[0-9a-f]+: 90[ ]+nop * 406 +[0-9a-f]+: 90[ ]+nop * 407 +[0-9a-f]+: 90[ ]+nop * 408 # LE @ntpoff, global var defined in exec 409 +[0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 410 +[0-9a-f]+: 90[ ]+nop * 411 +[0-9a-f]+: 90[ ]+nop * 412 +[0-9a-f]+: 8d 90 04 f0 ff ff[ ]+lea -0xffc\(%eax\),%edx 413 # sg2 414 +[0-9a-f]+: 90[ ]+nop * 415 +[0-9a-f]+: 90[ ]+nop * 416 +[0-9a-f]+: 90[ ]+nop * 417 +[0-9a-f]+: 90[ ]+nop * 418 # LE @ntpoff, local var, non-canonical sequence 419 +[0-9a-f]+: b8 86 f0 ff ff[ ]+mov \$0xfffff086,%eax 420 # bl2+2 421 +[0-9a-f]+: 90[ ]+nop * 422 +[0-9a-f]+: 90[ ]+nop * 423 +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 424 +[0-9a-f]+: 90[ ]+nop * 425 +[0-9a-f]+: 90[ ]+nop * 426 +[0-9a-f]+: 01 c2[ ]+add %eax,%edx 427 +[0-9a-f]+: 90[ ]+nop * 428 +[0-9a-f]+: 90[ ]+nop * 429 +[0-9a-f]+: 90[ ]+nop * 430 +[0-9a-f]+: 90[ ]+nop * 431 # LE @ntpoff, hidden var defined in exec, non-canonical sequence 432 +[0-9a-f]+: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 433 +[0-9a-f]+: 90[ ]+nop * 434 +[0-9a-f]+: 90[ ]+nop * 435 +[0-9a-f]+: 81 c2 45 f0 ff ff[ ]+add \$0xfffff045,%edx 436 # sh2+1 437 +[0-9a-f]+: 90[ ]+nop * 438 +[0-9a-f]+: 90[ ]+nop * 439 +[0-9a-f]+: 90[ ]+nop * 440 +[0-9a-f]+: 90[ ]+nop * 441 # LE @ntpoff, global var defined in exec 442 +[0-9a-f]+: 65 a1 08 f0 ff ff[ ]+mov %gs:0xfffff008,%eax 443 # sg3 444 +[0-9a-f]+: 90[ ]+nop * 445 +[0-9a-f]+: 90[ ]+nop * 446 +[0-9a-f]+: 90[ ]+nop * 447 +[0-9a-f]+: 90[ ]+nop * 448 # LE @ntpoff, local var 449 +[0-9a-f]+: 65 8b 15 8b f0 ff ff[ ]+mov %gs:0xfffff08b,%edx 450 # bl3+3 451 +[0-9a-f]+: 90[ ]+nop * 452 +[0-9a-f]+: 90[ ]+nop * 453 +[0-9a-f]+: 90[ ]+nop * 454 +[0-9a-f]+: 90[ ]+nop * 455 # LE @ntpoff, hidden var defined in exec 456 +[0-9a-f]+: 65 8b 15 49 f0 ff ff[ ]+mov %gs:0xfffff049,%edx 457 # sh3+1 458 +[0-9a-f]+: 90[ ]+nop * 459 +[0-9a-f]+: 90[ ]+nop * 460 +[0-9a-f]+: 90[ ]+nop * 461 +[0-9a-f]+: 90[ ]+nop * 462 +[0-9a-f]+: 8b 5d fc[ ]+mov -0x4\(%ebp\),%ebx 463 +[0-9a-f]+: c9[ ]+leave * 464 +[0-9a-f]+: c3[ ]+ret * 465