⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tlsbinpic.s

📁 GNU binutils是GNU交叉工具链中的一个源码包
💻 S
字号:
	/* Force .got aligned to 4K, so it very likely gets at 0x804a100	   (0x60 bytes .tdata and 0xa0 bytes .dynamic)  */	.section ".tdata", "awT", @progbits	.balign	4096	.globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8	.globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8	.hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8sg1:	.long 17sg2:	.long 18sg3:	.long 19sg4:	.long 20sg5:	.long 21sg6:	.long 22sg7:	.long 23sg8:	.long 24sl1:	.long 65sl2:	.long 66sl3:	.long 67sl4:	.long 68sl5:	.long 69sl6:	.long 70sl7:	.long 71sl8:	.long 72sh1:	.long 257sh2:	.long 258sh3:	.long 259sh4:	.long 260sh5:	.long 261sh6:	.long 262sh7:	.long 263sh8:	.long 264	/* Force .text aligned to 4K, so it very likely gets at 0x8049000.  */	.text	.balign	4096	.globl	fn2	.type	fn2,@functionfn2:	pushl	%ebp	movl	%esp, %ebp	pushl	%ebx	pushl	%eax	call	1f1:	popl	%ebx	addl	$_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx	nop;nop;nop;nop	/* GD -> IE because variable is not defined in executable */	leal	sG1@tlsgd(,%ebx,1), %eax	call	___tls_get_addr@plt	nop;nop;nop;nop	/* GD -> IE because variable is not defined in executable where	   the variable is referenced through @gottpoff too */	leal	sG2@tlsgd(,%ebx,1), %eax	call	___tls_get_addr@plt	nop;nop;nop;nop	/* GD -> IE because variable is not defined in executable where	   the variable is referenced through @gotntpoff too */	leal	sG3@tlsgd(,%ebx,1), %eax	call	___tls_get_addr@plt	nop;nop;nop;nop	/* GD -> IE because variable is not defined in executable where	   the variable is referenced through @gottpoff and @gotntpoff too */	leal	sG4@tlsgd(,%ebx,1), %eax	call	___tls_get_addr@plt	nop;nop;nop;nop	/* GD -> LE with global variable defined in executable */	leal	sg1@tlsgd(,%ebx,1), %eax	call	___tls_get_addr@plt	nop;nop;nop;nop	/* GD -> LE with local variable defined in executable */	leal	sl1@tlsgd(,%ebx,1), %eax	call	___tls_get_addr@plt	nop;nop;nop;nop	/* GD -> LE with hidden variable defined in executable */	leal	sh1@tlsgd(,%ebx,1), %eax	call	___tls_get_addr@plt	nop;nop;nop;nop	/* LD -> LE */	leal	sl1@tlsldm(%ebx), %eax	call	___tls_get_addr@PLT	nop;nop	leal	sl1@dtpoff(%eax), %edx	nop;nop	leal	sl2@dtpoff(%eax), %ecx	nop;nop;nop;nop	/* LD -> LE against hidden variables */	leal	sh1@tlsldm(%ebx), %eax	call	___tls_get_addr@PLT	nop;nop	leal	sh1@dtpoff(%eax), %edx	nop;nop	leal	sh2@dtpoff(%eax), %ecx	nop;nop;nop;nop	/* @gottpoff IE against global var  */	movl	%gs:0, %ecx	nop;nop	subl	sG2@gottpoff(%ebx), %ecx	nop;nop;nop;nop	/* @gottpoff IE against global var  */	movl	%gs:0, %eax	nop;nop	subl	sG4@gottpoff(%ebx), %eax	nop;nop;nop;nop	/* @gotntpoff IE against global var  */	movl	%gs:0, %ecx	nop;nop	addl	sG3@gotntpoff(%ebx), %ecx	nop;nop;nop;nop	/* @gotntpoff IE against global var  */	movl	%gs:0, %eax	nop;nop	addl	sG4@gotntpoff(%ebx), %eax	nop;nop;nop;nop	/* @gottpoff IE -> LE against global var defined in exec */	movl	%gs:0, %ecx	nop;nop	subl	sg1@gottpoff(%ebx), %ecx	nop;nop;nop;nop	/* @gotntpoff IE -> LE against local var */	movl	%gs:0, %ecx	nop;nop	addl	sl1@gotntpoff(%ebx), %eax	nop;nop;nop;nop	/* @gottpoff IE -> LE against hidden var */	movl	%gs:0, %ecx	nop;nop	subl	sh1@gottpoff(%ebx), %ecx	nop;nop;nop;nop	/* Direct access through %gs  */	/* @gotntpoff IE against global var  */	movl	sG5@gotntpoff(%ebx), %ecx	nop;nop	movl	%gs:(%ecx), %edx	nop;nop;nop;nop	/* @gotntpoff IE->LE against local var  */	movl	sl5@gotntpoff(%ebx), %eax	nop;nop	movl	%gs:(%eax), %edx	nop;nop;nop;nop	/* @gotntpoff IE->LE against hidden var  */	movl	sh5@gotntpoff(%ebx), %edx	nop;nop	movl	%gs:(%edx), %edx	nop;nop;nop;nop	movl    -4(%ebp), %ebx	leave	ret

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -