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

📄 bn-win32n.asm

📁 cryptlib安全工具包
💻 ASM
📖 第 1 页 / 共 3 页
字号:
	mov	ecx,		DWORD [8+esi]	mov	edx,		DWORD [8+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [8+ebx],	ecx	; Round 3	mov	ecx,		DWORD [12+esi]	mov	edx,		DWORD [12+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [12+ebx],	ecx	; Round 4	mov	ecx,		DWORD [16+esi]	mov	edx,		DWORD [16+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [16+ebx],	ecx	; Round 5	mov	ecx,		DWORD [20+esi]	mov	edx,		DWORD [20+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [20+ebx],	ecx	; Round 6	mov	ecx,		DWORD [24+esi]	mov	edx,		DWORD [24+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [24+ebx],	ecx	; Round 7	mov	ecx,		DWORD [28+esi]	mov	edx,		DWORD [28+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [28+ebx],	ecx	;	add	esi,		32	add	edi,		32	add	ebx,		32	sub	ebp,		8	jnz NEAR	L018aw_loopL017aw_finish:	mov	ebp,		DWORD [32+esp]	and	ebp,		7	jz NEAR	L019aw_end	; Tail Round 0	mov	ecx,		DWORD [esi]	mov	edx,		DWORD [edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [ebx],	ecx	add	esi,		4	add	edi,		4	add	ebx,		4	dec	ebp	jz NEAR	L019aw_end	; Tail Round 1	mov	ecx,		DWORD [esi]	mov	edx,		DWORD [edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [ebx],	ecx	add	esi,		4	add	edi,		4	add	ebx,		4	dec	ebp	jz NEAR	L019aw_end	; Tail Round 2	mov	ecx,		DWORD [esi]	mov	edx,		DWORD [edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [ebx],	ecx	add	esi,		4	add	edi,		4	add	ebx,		4	dec	ebp	jz NEAR	L019aw_end	; Tail Round 3	mov	ecx,		DWORD [esi]	mov	edx,		DWORD [edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [ebx],	ecx	add	esi,		4	add	edi,		4	add	ebx,		4	dec	ebp	jz NEAR	L019aw_end	; Tail Round 4	mov	ecx,		DWORD [esi]	mov	edx,		DWORD [edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [ebx],	ecx	add	esi,		4	add	edi,		4	add	ebx,		4	dec	ebp	jz NEAR	L019aw_end	; Tail Round 5	mov	ecx,		DWORD [esi]	mov	edx,		DWORD [edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [ebx],	ecx	add	esi,		4	add	edi,		4	add	ebx,		4	dec	ebp	jz NEAR	L019aw_end	; Tail Round 6	mov	ecx,		DWORD [esi]	mov	edx,		DWORD [edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [ebx],	ecx	add	esi,		4	add	edi,		4	add	ebx,		4L019aw_end:	cmp	DWORD [36+esp],	0	je NEAR	L020pw_end	mov	ebp,		DWORD [36+esp]	cmp	ebp,		0	je NEAR	L020pw_end	jge NEAR	L021pw_pos	; pw_neg	mov	edx,		0	sub	edx,		ebp	mov	ebp,		edx	and	ebp,		4294967288	jz NEAR	L022pw_neg_finishL023pw_neg_loop:	; dl<0 Round 0	mov	ecx,		0	mov	edx,		DWORD [edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [ebx],	ecx	; dl<0 Round 1	mov	ecx,		0	mov	edx,		DWORD [4+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [4+ebx],	ecx	; dl<0 Round 2	mov	ecx,		0	mov	edx,		DWORD [8+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [8+ebx],	ecx	; dl<0 Round 3	mov	ecx,		0	mov	edx,		DWORD [12+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [12+ebx],	ecx	; dl<0 Round 4	mov	ecx,		0	mov	edx,		DWORD [16+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [16+ebx],	ecx	; dl<0 Round 5	mov	ecx,		0	mov	edx,		DWORD [20+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [20+ebx],	ecx	; dl<0 Round 6	mov	ecx,		0	mov	edx,		DWORD [24+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [24+ebx],	ecx	; dl<0 Round 7	mov	ecx,		0	mov	edx,		DWORD [28+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [28+ebx],	ecx	;	add	edi,		32	add	ebx,		32	sub	ebp,		8	jnz NEAR	L023pw_neg_loopL022pw_neg_finish:	mov	edx,		DWORD [36+esp]	mov	ebp,		0	sub	ebp,		edx	and	ebp,		7	jz NEAR	L020pw_end	; dl<0 Tail Round 0	mov	ecx,		0	mov	edx,		DWORD [edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	dec	ebp	mov	DWORD [ebx],	ecx	jz NEAR	L020pw_end	; dl<0 Tail Round 1	mov	ecx,		0	mov	edx,		DWORD [4+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	dec	ebp	mov	DWORD [4+ebx],	ecx	jz NEAR	L020pw_end	; dl<0 Tail Round 2	mov	ecx,		0	mov	edx,		DWORD [8+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	dec	ebp	mov	DWORD [8+ebx],	ecx	jz NEAR	L020pw_end	; dl<0 Tail Round 3	mov	ecx,		0	mov	edx,		DWORD [12+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	dec	ebp	mov	DWORD [12+ebx],	ecx	jz NEAR	L020pw_end	; dl<0 Tail Round 4	mov	ecx,		0	mov	edx,		DWORD [16+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	dec	ebp	mov	DWORD [16+ebx],	ecx	jz NEAR	L020pw_end	; dl<0 Tail Round 5	mov	ecx,		0	mov	edx,		DWORD [20+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	dec	ebp	mov	DWORD [20+ebx],	ecx	jz NEAR	L020pw_end	; dl<0 Tail Round 6	mov	ecx,		0	mov	edx,		DWORD [24+edi]	sub	ecx,		eax	mov	eax,		0	adc	eax,		eax	sub	ecx,		edx	adc	eax,		0	mov	DWORD [24+ebx],	ecx	jmp	L020pw_endL021pw_pos:	and	ebp,		4294967288	jz NEAR	L024pw_pos_finishL025pw_pos_loop:	; dl>0 Round 0	mov	ecx,		DWORD [esi]	sub	ecx,		eax	mov	DWORD [ebx],	ecx	jnc NEAR	L026pw_nc0	; dl>0 Round 1	mov	ecx,		DWORD [4+esi]	sub	ecx,		eax	mov	DWORD [4+ebx],	ecx	jnc NEAR	L027pw_nc1	; dl>0 Round 2	mov	ecx,		DWORD [8+esi]	sub	ecx,		eax	mov	DWORD [8+ebx],	ecx	jnc NEAR	L028pw_nc2	; dl>0 Round 3	mov	ecx,		DWORD [12+esi]	sub	ecx,		eax	mov	DWORD [12+ebx],	ecx	jnc NEAR	L029pw_nc3	; dl>0 Round 4	mov	ecx,		DWORD [16+esi]	sub	ecx,		eax	mov	DWORD [16+ebx],	ecx	jnc NEAR	L030pw_nc4	; dl>0 Round 5	mov	ecx,		DWORD [20+esi]	sub	ecx,		eax	mov	DWORD [20+ebx],	ecx	jnc NEAR	L031pw_nc5	; dl>0 Round 6	mov	ecx,		DWORD [24+esi]	sub	ecx,		eax	mov	DWORD [24+ebx],	ecx	jnc NEAR	L032pw_nc6	; dl>0 Round 7	mov	ecx,		DWORD [28+esi]	sub	ecx,		eax	mov	DWORD [28+ebx],	ecx	jnc NEAR	L033pw_nc7	;	add	esi,		32	add	ebx,		32	sub	ebp,		8	jnz NEAR	L025pw_pos_loopL024pw_pos_finish:	mov	ebp,		DWORD [36+esp]	and	ebp,		7	jz NEAR	L020pw_end	; dl>0 Tail Round 0	mov	ecx,		DWORD [esi]	sub	ecx,		eax	mov	DWORD [ebx],	ecx	jnc NEAR	L034pw_tail_nc0	dec	ebp	jz NEAR	L020pw_end	; dl>0 Tail Round 1	mov	ecx,		DWORD [4+esi]	sub	ecx,		eax	mov	DWORD [4+ebx],	ecx	jnc NEAR	L035pw_tail_nc1	dec	ebp	jz NEAR	L020pw_end	; dl>0 Tail Round 2	mov	ecx,		DWORD [8+esi]	sub	ecx,		eax	mov	DWORD [8+ebx],	ecx	jnc NEAR	L036pw_tail_nc2	dec	ebp	jz NEAR	L020pw_end	; dl>0 Tail Round 3	mov	ecx,		DWORD [12+esi]	sub	ecx,		eax	mov	DWORD [12+ebx],	ecx	jnc NEAR	L037pw_tail_nc3	dec	ebp	jz NEAR	L020pw_end	; dl>0 Tail Round 4	mov	ecx,		DWORD [16+esi]	sub	ecx,		eax	mov	DWORD [16+ebx],	ecx	jnc NEAR	L038pw_tail_nc4	dec	ebp	jz NEAR	L020pw_end	; dl>0 Tail Round 5	mov	ecx,		DWORD [20+esi]	sub	ecx,		eax	mov	DWORD [20+ebx],	ecx	jnc NEAR	L039pw_tail_nc5	dec	ebp	jz NEAR	L020pw_end	; dl>0 Tail Round 6	mov	ecx,		DWORD [24+esi]	sub	ecx,		eax	mov	DWORD [24+ebx],	ecx	jnc NEAR	L040pw_tail_nc6	mov	eax,		1	jmp	L020pw_endL041pw_nc_loop:	mov	ecx,		DWORD [esi]	mov	DWORD [ebx],	ecxL026pw_nc0:	mov	ecx,		DWORD [4+esi]	mov	DWORD [4+ebx],	ecxL027pw_nc1:	mov	ecx,		DWORD [8+esi]	mov	DWORD [8+ebx],	ecxL028pw_nc2:	mov	ecx,		DWORD [12+esi]	mov	DWORD [12+ebx],	ecxL029pw_nc3:	mov	ecx,		DWORD [16+esi]	mov	DWORD [16+ebx],	ecxL030pw_nc4:	mov	ecx,		DWORD [20+esi]	mov	DWORD [20+ebx],	ecxL031pw_nc5:	mov	ecx,		DWORD [24+esi]	mov	DWORD [24+ebx],	ecxL032pw_nc6:	mov	ecx,		DWORD [28+esi]	mov	DWORD [28+ebx],	ecxL033pw_nc7:	;	add	esi,		32	add	ebx,		32	sub	ebp,		8	jnz NEAR	L041pw_nc_loop	mov	ebp,		DWORD [36+esp]	and	ebp,		7	jz NEAR	L042pw_nc_end	mov	ecx,		DWORD [esi]	mov	DWORD [ebx],	ecxL034pw_tail_nc0:	dec	ebp	jz NEAR	L042pw_nc_end	mov	ecx,		DWORD [4+esi]	mov	DWORD [4+ebx],	ecxL035pw_tail_nc1:	dec	ebp	jz NEAR	L042pw_nc_end	mov	ecx,		DWORD [8+esi]	mov	DWORD [8+ebx],	ecxL036pw_tail_nc2:	dec	ebp	jz NEAR	L042pw_nc_end	mov	ecx,		DWORD [12+esi]	mov	DWORD [12+ebx],	ecxL037pw_tail_nc3:	dec	ebp	jz NEAR	L042pw_nc_end	mov	ecx,		DWORD [16+esi]	mov	DWORD [16+ebx],	ecxL038pw_tail_nc4:	dec	ebp	jz NEAR	L042pw_nc_end	mov	ecx,		DWORD [20+esi]	mov	DWORD [20+ebx],	ecxL039pw_tail_nc5:	dec	ebp	jz NEAR	L042pw_nc_end	mov	ecx,		DWORD [24+esi]	mov	DWORD [24+ebx],	ecxL040pw_tail_nc6:L042pw_nc_end:	mov	eax,		0L020pw_end:	pop	edi	pop	esi	pop	ebx	pop	ebp	ret	; Don't even think of reading this code	; It was automatically generated by co-586.pl	; Which is a perl program used to generate the x86 assember for	; any of ELF, a.out, COFF, Win32, ...	; eric <eaycryptsoft.com>	;global	_bn_mul_comba8_bn_mul_comba8:	push	esi	mov	esi,		DWORD [12+esp]	push	edi	mov	edi,		DWORD [20+esp]	push	ebp	push	ebx	xor	ebx,		ebx	mov	eax,		DWORD [esi]	xor	ecx,		ecx	mov	edx,		DWORD [edi]	; ################## Calculate word 0	xor	ebp,		ebp	; mul a[0]*b[0]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [20+esp]	adc	ecx,		edx	mov	edx,		DWORD [edi]	adc	ebp,		0	mov	DWORD [eax],	ebx	mov	eax,		DWORD [4+esi]	; saved r[0]	; ################## Calculate word 1	xor	ebx,		ebx	; mul a[1]*b[0]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [esi]	adc	ebp,		edx	mov	edx,		DWORD [4+edi]	adc	ebx,		0	; mul a[0]*b[1]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [20+esp]	adc	ebp,		edx	mov	edx,		DWORD [edi]	adc	ebx,		0	mov	DWORD [4+eax],	ecx	mov	eax,		DWORD [8+esi]	; saved r[1]	; ################## Calculate word 2	xor	ecx,		ecx	; mul a[2]*b[0]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [4+esi]	adc	ebx,		edx	mov	edx,		DWORD [4+edi]	adc	ecx,		0	; mul a[1]*b[1]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [esi]	adc	ebx,		edx	mov	edx,		DWORD [8+edi]	adc	ecx,		0	; mul a[0]*b[2]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [20+esp]	adc	ebx,		edx	mov	edx,		DWORD [edi]	adc	ecx,		0	mov	DWORD [8+eax],	ebp	mov	eax,		DWORD [12+esi]	; saved r[2]	; ################## Calculate word 3	xor	ebp,		ebp	; mul a[3]*b[0]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [8+esi]	adc	ecx,		edx	mov	edx,		DWORD [4+edi]	adc	ebp,		0	; mul a[2]*b[1]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [4+esi]	adc	ecx,		edx	mov	edx,		DWORD [8+edi]	adc	ebp,		0	; mul a[1]*b[2]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [esi]	adc	ecx,		edx	mov	edx,		DWORD [12+edi]	adc	ebp,		0	; mul a[0]*b[3]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [20+esp]	adc	ecx,		edx	mov	edx,		DWORD [edi]	adc	ebp,		0	mov	DWORD [12+eax],	ebx	mov	eax,		DWORD [16+esi]	; saved r[3]	; ################## Calculate word 4	xor	ebx,		ebx	; mul a[4]*b[0]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [12+esi]	adc	ebp,		edx	mov	edx,		DWORD [4+edi]	adc	ebx,		0	; mul a[3]*b[1]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [8+esi]	adc	ebp,		edx	mov	edx,		DWORD [8+edi]	adc	ebx,		0	; mul a[2]*b[2]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [4+esi]	adc	ebp,		edx	mov	edx,		DWORD [12+edi]	adc	ebx,		0	; mul a[1]*b[3]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [esi]	adc	ebp,		edx	mov	edx,		DWORD [16+edi]	adc	ebx,		0	; mul a[0]*b[4]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [20+esp]	adc	ebp,		edx	mov	edx,		DWORD [edi]	adc	ebx,		0	mov	DWORD [16+eax],	ecx	mov	eax,		DWORD [20+esi]	; saved r[4]	; ################## Calculate word 5	xor	ecx,		ecx	; mul a[5]*b[0]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [16+esi]	adc	ebx,		edx	mov	edx,		DWORD [4+edi]	adc	ecx,		0	; mul a[4]*b[1]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [12+esi]	adc	ebx,		edx	mov	edx,		DWORD [8+edi]	adc	ecx,		0	; mul a[3]*b[2]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [8+esi]	adc	ebx,		edx	mov	edx,		DWORD [12+edi]	adc	ecx,		0	; mul a[2]*b[3]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [4+esi]	adc	ebx,		edx	mov	edx,		DWORD [16+edi]	adc	ecx,		0	; mul a[1]*b[4]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [esi]	adc	ebx,		edx	mov	edx,		DWORD [20+edi]	adc	ecx,		0	; mul a[0]*b[5]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [20+esp]	adc	ebx,		edx	mov	edx,		DWORD [edi]	adc	ecx,		0	mov	DWORD [20+eax],	ebp	mov	eax,		DWORD [24+esi]	; saved r[5]	; ################## Calculate word 6	xor	ebp,		ebp	; mul a[6]*b[0]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [20+esi]	adc	ecx,		edx	mov	edx,		DWORD [4+edi]	adc	ebp,		0	; mul a[5]*b[1]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [16+esi]	adc	ecx,		edx	mov	edx,		DWORD [8+edi]	adc	ebp,		0	; mul a[4]*b[2]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [12+esi]	adc	ecx,		edx	mov	edx,		DWORD [12+edi]	adc	ebp,		0	; mul a[3]*b[3]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [8+esi]	adc	ecx,		edx	mov	edx,		DWORD [16+edi]	adc	ebp,		0	; mul a[2]*b[4]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [4+esi]	adc	ecx,		edx	mov	edx,		DWORD [20+edi]	adc	ebp,		0	; mul a[1]*b[5]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [esi]	adc	ecx,		edx	mov	edx,		DWORD [24+edi]	adc	ebp,		0	; mul a[0]*b[6]	mul	edx	add	ebx,		eax	mov	eax,		DWORD [20+esp]	adc	ecx,		edx	mov	edx,		DWORD [edi]	adc	ebp,		0	mov	DWORD [24+eax],	ebx	mov	eax,		DWORD [28+esi]	; saved r[6]	; ################## Calculate word 7	xor	ebx,		ebx	; mul a[7]*b[0]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [24+esi]	adc	ebp,		edx	mov	edx,		DWORD [4+edi]	adc	ebx,		0	; mul a[6]*b[1]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [20+esi]	adc	ebp,		edx	mov	edx,		DWORD [8+edi]	adc	ebx,		0	; mul a[5]*b[2]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [16+esi]	adc	ebp,		edx	mov	edx,		DWORD [12+edi]	adc	ebx,		0	; mul a[4]*b[3]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [12+esi]	adc	ebp,		edx	mov	edx,		DWORD [16+edi]	adc	ebx,		0	; mul a[3]*b[4]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [8+esi]	adc	ebp,		edx	mov	edx,		DWORD [20+edi]	adc	ebx,		0	; mul a[2]*b[5]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [4+esi]	adc	ebp,		edx	mov	edx,		DWORD [24+edi]	adc	ebx,		0	; mul a[1]*b[6]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [esi]	adc	ebp,		edx	mov	edx,		DWORD [28+edi]	adc	ebx,		0	; mul a[0]*b[7]	mul	edx	add	ecx,		eax	mov	eax,		DWORD [20+esp]	adc	ebp,		edx	mov	edx,		DWORD [4+edi]	adc	ebx,		0	mov	DWORD [28+eax],	ecx	mov	eax,		DWORD [28+esi]	; saved r[7]	; ################## Calculate word 8	xor	ecx,		ecx	; mul a[7]*b[1]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [24+esi]	adc	ebx,		edx	mov	edx,		DWORD [8+edi]	adc	ecx,		0	; mul a[6]*b[2]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [20+esi]	adc	ebx,		edx	mov	edx,		DWORD [12+edi]	adc	ecx,		0	; mul a[5]*b[3]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [16+esi]	adc	ebx,		edx	mov	edx,		DWORD [16+edi]	adc	ecx,		0	; mul a[4]*b[4]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [12+esi]	adc	ebx,		edx	mov	edx,		DWORD [20+edi]	adc	ecx,		0	; mul a[3]*b[5]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [8+esi]	adc	ebx,		edx	mov	edx,		DWORD [24+edi]	adc	ecx,		0	; mul a[2]*b[6]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [4+esi]	adc	ebx,		edx	mov	edx,		DWORD [28+edi]	adc	ecx,		0	; mul a[1]*b[7]	mul	edx	add	ebp,		eax	mov	eax,		DWORD [20+esp]	adc	ebx,		edx	mov	edx,		DWORD [8+edi]	adc	ecx,		0	mov	DWORD [32+eax],	ebp	mov	eax,		DWORD [28+esi]	; saved r[8]	; ################## Calculate word 9	xor	ebp,		ebp	; mul a[7]*b[2]	mul	edx

⌨️ 快捷键说明

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