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

📄 sx86unix.cpp

📁 openssl是ssl的开源项目
💻 CPP
📖 第 1 页 / 共 3 页
字号:
/* Run the C pre-processor over this file with one of the following defined * ELF - elf object files, * OUT - a.out object files, * BSDI - BSDI style a.out object files * SOL - Solaris style elf */#define TYPE(a,b)       .type   a,b#define SIZE(a,b)       .size   a,b#if defined(OUT) || defined(BSDI)#define sha1_block_x86 _sha1_block_x86#endif#ifdef OUT#define OK	1#define ALIGN	4#endif#ifdef BSDI#define OK              1#define ALIGN           4#undef SIZE#undef TYPE#define SIZE(a,b)#define TYPE(a,b)#endif#if defined(ELF) || defined(SOL)#define OK              1#define ALIGN           16#endif#ifndef OKYou need to define one ofELF - elf systems - linux-elf, NetBSD and DG-UXOUT - a.out systems - linux-a.out and FreeBSDSOL - solaris systems, which are elf with strange comment linesBSDI - a.out with a very primative version of as.#endif/* Let the Assembler begin :-) */	/* Don't even think of reading this code */	/* It was automatically generated by sha1-586.pl */	/* Which is a perl program used to generate the x86 assember for */	/* any of elf, a.out, BSDI,Win32, or Solaris */	/* eric <eay@cryptsoft.com> */	.file	"sha1-586.s"	.version	"01.01"gcc2_compiled.:.text	.align ALIGN.globl sha1_block_x86	TYPE(sha1_block_x86,@function)sha1_block_x86:	pushl	%esi	pushl	%ebp	movl	20(%esp),	%eax	movl	16(%esp),	%esi	addl	%esi,		%eax	movl	12(%esp),	%ebp	pushl	%ebx	subl	$64,		%eax	pushl	%edi	movl	4(%ebp),	%ebx	subl	$72,		%esp	movl	12(%ebp),	%edx	movl	16(%ebp),	%edi	movl	8(%ebp),	%ecx	movl	%eax,		68(%esp)	/* First we need to setup the X array */	movl	(%esi),		%eax.L000start:	/* First, load the words onto the stack in network byte order */.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		(%esp)	movl	4(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		4(%esp)	movl	8(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		8(%esp)	movl	12(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		12(%esp)	movl	16(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		16(%esp)	movl	20(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		20(%esp)	movl	24(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		24(%esp)	movl	28(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		28(%esp)	movl	32(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		32(%esp)	movl	36(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		36(%esp)	movl	40(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		40(%esp)	movl	44(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		44(%esp)	movl	48(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		48(%esp)	movl	52(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		52(%esp)	movl	56(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		56(%esp)	movl	60(%esi),	%eax.byte 15.byte 200		/* bswapl  %eax */	movl	%eax,		60(%esp)	/* We now have the X array on the stack */	/* starting at sp-4 */	movl	%esi,		64(%esp)	/* Start processing */	movl	(%ebp),		%eax	/* 00_15 0 */	movl	%ecx,		%esi	movl	%eax,		%ebp	xorl	%edx,		%esi	roll	$5,		%ebp	andl	%ebx,		%esi	addl	%edi,		%ebp.byte 209.byte 203		/* rorl $1 %ebx */	movl	(%esp),		%edi.byte 209.byte 203		/* rorl $1 %ebx */	xorl	%edx,		%esi	leal	1518500249(%ebp,%edi,1),%ebp	movl	%ebx,		%edi	addl	%ebp,		%esi	xorl	%ecx,		%edi	movl	%esi,		%ebp	andl	%eax,		%edi	roll	$5,		%ebp	addl	%edx,		%ebp	movl	4(%esp),	%edx.byte 209.byte 200		/* rorl $1 %eax */	xorl	%ecx,		%edi.byte 209.byte 200		/* rorl $1 %eax */	leal	1518500249(%ebp,%edx,1),%ebp	addl	%ebp,		%edi	/* 00_15 2 */	movl	%eax,		%edx	movl	%edi,		%ebp	xorl	%ebx,		%edx	roll	$5,		%ebp	andl	%esi,		%edx	addl	%ecx,		%ebp.byte 209.byte 206		/* rorl $1 %esi */	movl	8(%esp),	%ecx.byte 209.byte 206		/* rorl $1 %esi */	xorl	%ebx,		%edx	leal	1518500249(%ebp,%ecx,1),%ebp	movl	%esi,		%ecx	addl	%ebp,		%edx	xorl	%eax,		%ecx	movl	%edx,		%ebp	andl	%edi,		%ecx	roll	$5,		%ebp	addl	%ebx,		%ebp	movl	12(%esp),	%ebx.byte 209.byte 207		/* rorl $1 %edi */	xorl	%eax,		%ecx.byte 209.byte 207		/* rorl $1 %edi */	leal	1518500249(%ebp,%ebx,1),%ebp	addl	%ebp,		%ecx	/* 00_15 4 */	movl	%edi,		%ebx	movl	%ecx,		%ebp	xorl	%esi,		%ebx	roll	$5,		%ebp	andl	%edx,		%ebx	addl	%eax,		%ebp.byte 209.byte 202		/* rorl $1 %edx */	movl	16(%esp),	%eax.byte 209.byte 202		/* rorl $1 %edx */	xorl	%esi,		%ebx	leal	1518500249(%ebp,%eax,1),%ebp	movl	%edx,		%eax	addl	%ebp,		%ebx	xorl	%edi,		%eax	movl	%ebx,		%ebp	andl	%ecx,		%eax	roll	$5,		%ebp	addl	%esi,		%ebp	movl	20(%esp),	%esi.byte 209.byte 201		/* rorl $1 %ecx */	xorl	%edi,		%eax.byte 209.byte 201		/* rorl $1 %ecx */	leal	1518500249(%ebp,%esi,1),%ebp	addl	%ebp,		%eax	/* 00_15 6 */	movl	%ecx,		%esi	movl	%eax,		%ebp	xorl	%edx,		%esi	roll	$5,		%ebp	andl	%ebx,		%esi	addl	%edi,		%ebp.byte 209.byte 203		/* rorl $1 %ebx */	movl	24(%esp),	%edi.byte 209.byte 203		/* rorl $1 %ebx */	xorl	%edx,		%esi	leal	1518500249(%ebp,%edi,1),%ebp	movl	%ebx,		%edi	addl	%ebp,		%esi	xorl	%ecx,		%edi	movl	%esi,		%ebp	andl	%eax,		%edi	roll	$5,		%ebp	addl	%edx,		%ebp	movl	28(%esp),	%edx.byte 209.byte 200		/* rorl $1 %eax */	xorl	%ecx,		%edi.byte 209.byte 200		/* rorl $1 %eax */	leal	1518500249(%ebp,%edx,1),%ebp	addl	%ebp,		%edi	/* 00_15 8 */	movl	%eax,		%edx	movl	%edi,		%ebp	xorl	%ebx,		%edx	roll	$5,		%ebp	andl	%esi,		%edx	addl	%ecx,		%ebp.byte 209.byte 206		/* rorl $1 %esi */	movl	32(%esp),	%ecx.byte 209.byte 206		/* rorl $1 %esi */	xorl	%ebx,		%edx	leal	1518500249(%ebp,%ecx,1),%ebp	movl	%esi,		%ecx	addl	%ebp,		%edx	xorl	%eax,		%ecx	movl	%edx,		%ebp	andl	%edi,		%ecx	roll	$5,		%ebp	addl	%ebx,		%ebp	movl	36(%esp),	%ebx.byte 209.byte 207		/* rorl $1 %edi */	xorl	%eax,		%ecx.byte 209.byte 207		/* rorl $1 %edi */	leal	1518500249(%ebp,%ebx,1),%ebp	addl	%ebp,		%ecx	/* 00_15 10 */	movl	%edi,		%ebx	movl	%ecx,		%ebp	xorl	%esi,		%ebx	roll	$5,		%ebp	andl	%edx,		%ebx	addl	%eax,		%ebp.byte 209.byte 202		/* rorl $1 %edx */	movl	40(%esp),	%eax.byte 209.byte 202		/* rorl $1 %edx */	xorl	%esi,		%ebx	leal	1518500249(%ebp,%eax,1),%ebp	movl	%edx,		%eax	addl	%ebp,		%ebx	xorl	%edi,		%eax	movl	%ebx,		%ebp	andl	%ecx,		%eax	roll	$5,		%ebp	addl	%esi,		%ebp	movl	44(%esp),	%esi.byte 209.byte 201		/* rorl $1 %ecx */	xorl	%edi,		%eax.byte 209.byte 201		/* rorl $1 %ecx */	leal	1518500249(%ebp,%esi,1),%ebp	addl	%ebp,		%eax	/* 00_15 12 */	movl	%ecx,		%esi	movl	%eax,		%ebp	xorl	%edx,		%esi	roll	$5,		%ebp	andl	%ebx,		%esi	addl	%edi,		%ebp.byte 209.byte 203		/* rorl $1 %ebx */	movl	48(%esp),	%edi.byte 209.byte 203		/* rorl $1 %ebx */	xorl	%edx,		%esi	leal	1518500249(%ebp,%edi,1),%ebp	movl	%ebx,		%edi	addl	%ebp,		%esi	xorl	%ecx,		%edi	movl	%esi,		%ebp	andl	%eax,		%edi	roll	$5,		%ebp	addl	%edx,		%ebp	movl	52(%esp),	%edx.byte 209.byte 200		/* rorl $1 %eax */	xorl	%ecx,		%edi.byte 209.byte 200		/* rorl $1 %eax */	leal	1518500249(%ebp,%edx,1),%ebp	addl	%ebp,		%edi	/* 00_15 14 */	movl	%eax,		%edx	movl	%edi,		%ebp	xorl	%ebx,		%edx	roll	$5,		%ebp	andl	%esi,		%edx	addl	%ecx,		%ebp.byte 209.byte 206		/* rorl $1 %esi */	movl	56(%esp),	%ecx.byte 209.byte 206		/* rorl $1 %esi */	xorl	%ebx,		%edx	leal	1518500249(%ebp,%ecx,1),%ebp	movl	%esi,		%ecx	addl	%ebp,		%edx	xorl	%eax,		%ecx	movl	%edx,		%ebp	andl	%edi,		%ecx	roll	$5,		%ebp	addl	%ebx,		%ebp	movl	60(%esp),	%ebx.byte 209.byte 207		/* rorl $1 %edi */	xorl	%eax,		%ecx.byte 209.byte 207		/* rorl $1 %edi */	leal	1518500249(%ebp,%ebx,1),%ebp	addl	%ebp,		%ecx	/* 16_19 16 */	nop	movl	(%esp),		%ebp	movl	8(%esp),	%ebx	xorl	%ebp,		%ebx	movl	32(%esp),	%ebp	xorl	%ebp,		%ebx	movl	52(%esp),	%ebp	xorl	%ebp,		%ebx	movl	%edi,		%ebp.byte 209.byte 195		/* roll $1 %ebx */	xorl	%esi,		%ebp	movl	%ebx,		(%esp)	andl	%edx,		%ebp	leal	1518500249(%ebx,%eax,1),%ebx	xorl	%esi,		%ebp	movl	%ecx,		%eax	addl	%ebp,		%ebx	roll	$5,		%eax.byte 209.byte 202		/* rorl $1 %edx */	addl	%eax,		%ebx	movl	4(%esp),	%eax	movl	12(%esp),	%ebp	xorl	%ebp,		%eax	movl	36(%esp),	%ebp	xorl	%ebp,		%eax	movl	56(%esp),	%ebp.byte 209.byte 202		/* rorl $1 %edx */	xorl	%ebp,		%eax.byte 209.byte 192		/* roll $1 %eax */	movl	%edx,		%ebp	xorl	%edi,		%ebp	movl	%eax,		4(%esp)	andl	%ecx,		%ebp	leal	1518500249(%eax,%esi,1),%eax	xorl	%edi,		%ebp	movl	%ebx,		%esi	roll	$5,		%esi.byte 209.byte 201		/* rorl $1 %ecx */	addl	%esi,		%eax.byte 209.byte 201		/* rorl $1 %ecx */	addl	%ebp,		%eax	/* 16_19 18 */	movl	8(%esp),	%ebp	movl	16(%esp),	%esi	xorl	%ebp,		%esi	movl	40(%esp),	%ebp	xorl	%ebp,		%esi	movl	60(%esp),	%ebp	xorl	%ebp,		%esi	movl	%ecx,		%ebp.byte 209.byte 198		/* roll $1 %esi */	xorl	%edx,		%ebp	movl	%esi,		8(%esp)	andl	%ebx,		%ebp	leal	1518500249(%esi,%edi,1),%esi	xorl	%edx,		%ebp	movl	%eax,		%edi	addl	%ebp,		%esi	roll	$5,		%edi.byte 209.byte 203		/* rorl $1 %ebx */	addl	%edi,		%esi	movl	12(%esp),	%edi	movl	20(%esp),	%ebp	xorl	%ebp,		%edi	movl	44(%esp),	%ebp	xorl	%ebp,		%edi	movl	(%esp),		%ebp.byte 209.byte 203		/* rorl $1 %ebx */	xorl	%ebp,		%edi.byte 209.byte 199		/* roll $1 %edi */	movl	%ebx,		%ebp	xorl	%ecx,		%ebp	movl	%edi,		12(%esp)	andl	%eax,		%ebp	leal	1518500249(%edi,%edx,1),%edi	xorl	%ecx,		%ebp	movl	%esi,		%edx	roll	$5,		%edx.byte 209.byte 200		/* rorl $1 %eax */	addl	%edx,		%edi.byte 209.byte 200		/* rorl $1 %eax */	addl	%ebp,		%edi	/* 20_39 20 */	movl	16(%esp),	%edx	movl	24(%esp),	%ebp	xorl	%ebp,		%edx	movl	48(%esp),	%ebp	xorl	%ebp,		%edx	movl	4(%esp),	%ebp	xorl	%ebp,		%edx	movl	%esi,		%ebp.byte 209.byte 194		/* roll $1 %edx */	xorl	%eax,		%ebp	movl	%edx,		16(%esp)	xorl	%ebx,		%ebp	leal	1859775393(%edx,%ecx,1),%edx	movl	%edi,		%ecx	roll	$5,		%ecx.byte 209.byte 206		/* rorl $1 %esi */	addl	%ebp,		%ecx.byte 209.byte 206		/* rorl $1 %esi */	addl	%ecx,		%edx	/* 20_39 21 */	movl	20(%esp),	%ecx	movl	28(%esp),	%ebp	xorl	%ebp,		%ecx	movl	52(%esp),	%ebp	xorl	%ebp,		%ecx	movl	8(%esp),	%ebp	xorl	%ebp,		%ecx	movl	%edi,		%ebp.byte 209.byte 193		/* roll $1 %ecx */	xorl	%esi,		%ebp	movl	%ecx,		20(%esp)	xorl	%eax,		%ebp	leal	1859775393(%ecx,%ebx,1),%ecx	movl	%edx,		%ebx	roll	$5,		%ebx.byte 209.byte 207		/* rorl $1 %edi */	addl	%ebp,		%ebx.byte 209.byte 207		/* rorl $1 %edi */	addl	%ebx,		%ecx	/* 20_39 22 */	movl	24(%esp),	%ebx	movl	32(%esp),	%ebp	xorl	%ebp,		%ebx	movl	56(%esp),	%ebp	xorl	%ebp,		%ebx	movl	12(%esp),	%ebp	xorl	%ebp,		%ebx	movl	%edx,		%ebp.byte 209.byte 195		/* roll $1 %ebx */	xorl	%edi,		%ebp	movl	%ebx,		24(%esp)	xorl	%esi,		%ebp	leal	1859775393(%ebx,%eax,1),%ebx	movl	%ecx,		%eax	roll	$5,		%eax.byte 209.byte 202		/* rorl $1 %edx */	addl	%ebp,		%eax.byte 209.byte 202		/* rorl $1 %edx */	addl	%eax,		%ebx	/* 20_39 23 */	movl	28(%esp),	%eax	movl	36(%esp),	%ebp	xorl	%ebp,		%eax	movl	60(%esp),	%ebp	xorl	%ebp,		%eax	movl	16(%esp),	%ebp	xorl	%ebp,		%eax	movl	%ecx,		%ebp.byte 209.byte 192		/* roll $1 %eax */	xorl	%edx,		%ebp	movl	%eax,		28(%esp)	xorl	%edi,		%ebp	leal	1859775393(%eax,%esi,1),%eax	movl	%ebx,		%esi	roll	$5,		%esi.byte 209.byte 201		/* rorl $1 %ecx */	addl	%ebp,		%esi.byte 209.byte 201		/* rorl $1 %ecx */	addl	%esi,		%eax	/* 20_39 24 */	movl	32(%esp),	%esi	movl	40(%esp),	%ebp	xorl	%ebp,		%esi	movl	(%esp),		%ebp	xorl	%ebp,		%esi	movl	20(%esp),	%ebp	xorl	%ebp,		%esi	movl	%ebx,		%ebp.byte 209.byte 198		/* roll $1 %esi */	xorl	%ecx,		%ebp	movl	%esi,		32(%esp)	xorl	%edx,		%ebp	leal	1859775393(%esi,%edi,1),%esi	movl	%eax,		%edi	roll	$5,		%edi.byte 209.byte 203		/* rorl $1 %ebx */	addl	%ebp,		%edi.byte 209.byte 203		/* rorl $1 %ebx */	addl	%edi,		%esi	/* 20_39 25 */	movl	36(%esp),	%edi	movl	44(%esp),	%ebp	xorl	%ebp,		%edi	movl	4(%esp),	%ebp	xorl	%ebp,		%edi	movl	24(%esp),	%ebp	xorl	%ebp,		%edi	movl	%eax,		%ebp.byte 209.byte 199		/* roll $1 %edi */	xorl	%ebx,		%ebp	movl	%edi,		36(%esp)	xorl	%ecx,		%ebp	leal	1859775393(%edi,%edx,1),%edi	movl	%esi,		%edx	roll	$5,		%edx.byte 209.byte 200		/* rorl $1 %eax */	addl	%ebp,		%edx.byte 209.byte 200		/* rorl $1 %eax */	addl	%edx,		%edi	/* 20_39 26 */	movl	40(%esp),	%edx	movl	48(%esp),	%ebp	xorl	%ebp,		%edx	movl	8(%esp),	%ebp	xorl	%ebp,		%edx	movl	28(%esp),	%ebp	xorl	%ebp,		%edx	movl	%esi,		%ebp.byte 209.byte 194		/* roll $1 %edx */	xorl	%eax,		%ebp	movl	%edx,		40(%esp)	xorl	%ebx,		%ebp	leal	1859775393(%edx,%ecx,1),%edx	movl	%edi,		%ecx	roll	$5,		%ecx.byte 209.byte 206		/* rorl $1 %esi */	addl	%ebp,		%ecx.byte 209.byte 206		/* rorl $1 %esi */	addl	%ecx,		%edx	/* 20_39 27 */	movl	44(%esp),	%ecx	movl	52(%esp),	%ebp	xorl	%ebp,		%ecx	movl	12(%esp),	%ebp	xorl	%ebp,		%ecx	movl	32(%esp),	%ebp	xorl	%ebp,		%ecx	movl	%edi,		%ebp.byte 209.byte 193		/* roll $1 %ecx */	xorl	%esi,		%ebp	movl	%ecx,		44(%esp)	xorl	%eax,		%ebp	leal	1859775393(%ecx,%ebx,1),%ecx	movl	%edx,		%ebx	roll	$5,		%ebx

⌨️ 快捷键说明

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