1 .text 2 .globl fc1 3 .type fc1,@function 4fc1: 5 pushl %ebp 6 movl %esp, %ebp 7 pushl %ebx 8 pushl %eax 9 call 1f 101: popl %ebx 11 addl $_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx 12 nop;nop;nop;nop 13 14 /* @gottpoff IE against global var */ 15 movl %gs:0, %ecx 16 nop;nop 17 subl sG3@gottpoff(%ebx), %ecx 18 nop;nop;nop;nop 19 20 /* @gotntpoff IE against global var */ 21 movl %gs:0, %ecx 22 nop;nop 23 addl sG4@gotntpoff(%ebx), %ecx 24 nop;nop;nop;nop 25 26 /* GD */ 27 leal sG1@tlsgd(,%ebx,1), %eax 28 call ___tls_get_addr@plt 29 nop;nop;nop;nop 30 31 /* GD */ 32 leal sG1@tlsdesc(%ebx), %eax 33 call *sG1@tlscall(%eax) 34 nop;nop;nop;nop 35 36 /* GD */ 37 leal sG2@tlsdesc(%ebx), %eax 38 call *sG2@tlscall(%eax) 39 nop;nop;nop;nop 40 41 /* GD */ 42 leal sG2@tlsgd(,%ebx,1), %eax 43 call ___tls_get_addr@plt 44 nop;nop;nop;nop 45 46 /* GD -> IE tpoff */ 47 leal sG3@tlsgd(,%ebx,1), %eax 48 call ___tls_get_addr@plt 49 nop;nop;nop;nop 50 51 /* GD -> IE tpoff */ 52 leal sG3@tlsdesc(%ebx), %eax 53 call *sG3@tlscall(%eax) 54 nop;nop;nop;nop 55 56 /* GD -> IE ntpoff */ 57 leal sG4@tlsdesc(%ebx), %eax 58 call *sG4@tlscall(%eax) 59 nop;nop;nop;nop 60 61 /* GD -> IE ntpoff */ 62 leal sG4@tlsgd(,%ebx,1), %eax 63 call ___tls_get_addr@plt 64 nop;nop;nop;nop 65 66 /* GD -> IE ntpoff */ 67 leal sG5@tlsgd(,%ebx,1), %eax 68 call ___tls_get_addr@plt 69 nop;nop;nop;nop 70 71 /* GD -> IE ntpoff */ 72 leal sG5@tlsdesc(%ebx), %eax 73 call *sG5@tlscall(%eax) 74 nop;nop;nop;nop 75 76 /* GD -> IE tpoff */ 77 leal sG6@tlsdesc(%ebx), %eax 78 call *sG6@tlscall(%eax) 79 nop;nop;nop;nop 80 81 /* GD -> IE tpoff */ 82 leal sG6@tlsgd(,%ebx,1), %eax 83 call ___tls_get_addr@plt 84 nop;nop;nop;nop 85 86 /* @gotntpoff IE against global var */ 87 movl %gs:0, %ecx 88 nop;nop 89 addl sG5@gotntpoff(%ebx), %ecx 90 nop;nop;nop;nop 91 92 /* @gottpoff IE against global var */ 93 movl %gs:0, %ecx 94 nop;nop 95 subl sG6@gottpoff(%ebx), %ecx 96 nop;nop;nop;nop 97 98 movl -4(%ebp), %ebx 99 leave 100 ret 101