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

📄 asm02e.s

📁 十七种模拟器源代码 非常有用的作课程设计不可缺少的
💻 S
📖 第 1 页 / 共 5 页
字号:
FUNC(op_d0fb)	subl	$16,%esp	shrl	$9,%eax	andl	$7,%eax	movl	GLOBL(regs)+88,%ecx	movl	%eax,28-16(%esp)	movl	%ecx,%edx	movl	%ecx,24-16(%esp)	addl	$2,%edx	addl	$4,%ecx	movl	%edx,GLOBL(regs)+88/APP	xorl	%esi,%esi	movw	0x2164334A(%edx),%siRR0_e000:	rolw	$8,%si/NO_APP	movl	%esi,%eax	movl	%ecx,20-16(%esp)	shrl	$10,%eax	movl	%ecx,GLOBL(regs)+88	andl	$60,%eax	movl	%edx,%ebx	movl	GLOBL(regs)(%eax),%edi	testl	$2048,%esi	jne	L_e_407	movswl	%di,%ediL_e_407:	movl	%esi,%eax	shrl	$9,%eax	movl	%eax,%ecx	andl	$3,%ecx	sall	%cl,%edi	testl	$256,%esi	je	L_e_408	xorl	%ebp,%ebp	movl	%esi,%ecx	testb	%cl,%cl	jge	L_e_409	movl	%ebp,%ebxL_e_409:	testl	$64,%esi	je	L_e_410	movl	%ebp,%ediL_e_410:	movl	%esi,%edx	andl	$48,%edx	cmpl	$32,%edx	jne	L_e_411	movl	20-16(%esp),%ecx/APP	xorl	%eax,%eax	movw	0x2164334A(%ecx),%axRR0_e001:	rolw	$8,%ax/NO_APP	movl	24-16(%esp),%ecx	cwtl	addl	$6,%ecx	addl	%eax,%ebx	movl	%ecx,GLOBL(regs)+88L_e_411:	cmpl	$48,%edx	jne	L_e_414	movl	GLOBL(regs)+88,%eax	movl	0x2164334A(%eax),%edxRR0_e002:/APP	bswapl	%edx/NO_APP	addl	$4,%eax	addl	%edx,%ebx	movl	%eax,GLOBL(regs)+88L_e_414:	movl	%esi,%ecx	andl	$3,%ecx	movl	%ecx,16-16(%esp)	cmpl	$2,%ecx	jne	L_e_417	movl	GLOBL(regs)+88,%eax/APP	xorl	%edx,%edx	movw	0x2164334A(%eax),%dxRR0_e003:	rolw	$8,%dx/NO_APP	addl	$2,%eax	movswl	%dx,%ebp	movl	%eax,GLOBL(regs)+88L_e_417:	cmpl	$3,16-16(%esp)	jne	L_e_420	movl	GLOBL(regs)+88,%eax	movl	0x2164334A(%eax),%edxRR0_e004:/APP	bswapl	%edx/NO_APP	addl	$4,%eax	movl	%edx,%ebp	movl	%eax,GLOBL(regs)+88L_e_420:	andl	$4,%esi	jne	L_e_423	addl	%edi,%ebxL_e_423:	cmpl	$0,16-16(%esp)	je	L_e_424	movl	%ebx,%edx	movl	%ebx,%eax	shrl	$14,%edx	andl	$65535,%eax	andl	$1020,%edx	addl	GLOBL(R24)(%edx),%eax	movl	(%eax),%ebx/APP	bswapl	%ebx/NO_APPL_e_424:	testl	%esi,%esi	je	L_e_427	addl	%edi,%ebxL_e_427:	leal	(%ebp,%ebx),%eax	jmp	L_e_428	.align	2,0x90L_e_408:	movl	%esi,%ecx	movsbl	%cl,%eax	addl	%edx,%eax	addl	%edi,%eaxL_e_428:	movl	%eax,%edx	shrl	$14,%edx	andl	$65535,%eax	andl	$1020,%edx	addl	GLOBL(R24)(%edx),%eax/APP	xorl	%ecx,%ecx	movw	(%eax),%cx	rolw	$8,%cx/NO_APP	movl	28-16(%esp),%edx	movl	%ecx,%eax	addl	$8,%edx	cwtl	addl	%eax,GLOBL(regs)(,%edx,4)	addl	$16,%esp	popl	%eax	decl	%eax	jl	JJ_e000	pushl	%eax	movl	GLOBL(regs)+88,%ebx	xorl	%eax,%eax	movw	0x2164334A(%ebx),%axRR0_e005:	movl	GLOBL(cpufunctbl)(,%eax,4),%ebx	rolw	$8,%ax	jmp	*%ebxJJ_e000:	retFUNC(op_d100)	subl	$4,%esp	movl	%eax,%edx	shrl	$9,%edx	movl	%edx,%ebp	andl	$7,%ebp	movl	$GLOBL(regs),%edx	andl	$7,%eax	movsbl	(%edx,%ebp,4),%ecx	movsbl	(%edx,%eax,4),%eax	leal	(%eax,%ecx),%edi	testb	$1,regflags+4	je	L_e_440	incl	%ediL_e_440:	movl	%eax,%esi	movl	%edi,%ebx	shrl	$31,%esi	movsbl	%bl,%eax	shrl	$31,%eax	movl	%eax,16-16(%esp)	shrl	$31,%ecx	xorl	%eax,%eax	testl	%esi,%esi	je	L_e_449	testl	%ecx,%ecx	je	L_e_441	cmpl	$0,16-16(%esp)	je	L_e_442	jmp	L_e_441	.align	2,0x90L_e_449:	testl	%ecx,%ecx	jne	L_e_441	cmpl	$0,16-16(%esp)	je	L_e_441L_e_442:	movl	$1,%eaxL_e_441:	movb	%al,%dl	andb	$1,%dl	movb	regflags+1,%al	salb	$3,%dl	andb	$247,%al	orb	%dl,%al	xorl	%edx,%edx	movb	%al,regflags+1	testl	%esi,%esi	je	L_e_446	testl	%ecx,%ecx	jne	L_e_445L_e_446:	cmpl	$0,16-16(%esp)	jne	L_e_444	testl	%ecx,%ecx	jne	L_e_445	testl	%esi,%esi	je	L_e_444L_e_445:	movl	$1,%edxL_e_444:	movb	%dl,%al	movb	regflags,%cl	andb	$1,%al	andb	$254,%cl	orb	%al,%cl	movb	regflags+4,%al	andb	$254,%al	movl	%edi,%ebx	orb	%dl,%al	movb	%cl,regflags	movb	%al,regflags+4	testb	%bl,%bl	je	L_e_447	andb	$191,%cl	movb	%cl,regflagsL_e_447:	movl	%edi,%edx	movb	regflags,%al	andb	$128,%dl	andb	$127,%al	orb	%dl,%al	movl	%edi,%ebx	movb	%al,regflags	movb	%bl,GLOBL(regs)(,%ebp,4)	addl	$2,GLOBL(regs)+88	addl	$4,%esp	popl	%eax	decl	%eax	jl	JJ_e001	pushl	%eax	movl	GLOBL(regs)+88,%ebx	xorl	%eax,%eax	movw	0x2164334A(%ebx),%axRR0_e006:	movl	GLOBL(cpufunctbl)(,%eax,4),%ebx	rolw	$8,%ax	jmp	*%ebxJJ_e001:	retFUNC(op_d108)	subl	$8,%esp	movl	%eax,%edx	andl	$7,%eax	movl	$GLOBL(areg_byteinc),%ebp	movl	$GLOBL(regs),%edi	movl	%edx,%esi	leal	8(%eax),%ebx	shrl	$9,%esi	sall	$2,%ebx	movl	(%ebp,%eax,4),%eax	movl	(%ebx,%edi),%edx	subl	%eax,%edx	movl	%edx,%eax	shrl	$14,%eax	movl	%edx,%ecx	andl	$1020,%eax	andl	$65535,%ecx	movl	GLOBL(R24)(%eax),%eax	movb	(%ecx,%eax),%cl	movb	%cl,23-16(%esp)	andl	$7,%esi	movl	%edx,(%ebx,%edi)	leal	8(%esi),%edx	sall	$2,%edx	movl	(%ebp,%esi,4),%eax	movl	(%edx,%edi),%ebp	subl	%eax,%ebp	movl	%ebp,%eax	shrl	$14,%eax	movl	%ebp,%ecx	andl	$1020,%eax	andl	$65535,%ecx	movl	GLOBL(R24)(%eax),%eax	movb	(%ecx,%eax),%al	movl	%ebp,(%edx,%edi)	movsbl	%al,%eax	movsbl	23-16(%esp),%edx	leal	(%edx,%eax),%edi	testb	$1,regflags+4	je	L_e_453	incl	%ediL_e_453:	movl	%eax,%ecx	movl	%edi,%ebx	shrl	$31,%ecx	movsbl	%bl,%eax	shrl	$31,%eax	movl	%edx,%esi	movl	%eax,16-16(%esp)	shrl	$31,%esi	xorl	%eax,%eax	testl	%esi,%esi	je	L_e_463	testl	%ecx,%ecx	je	L_e_454	cmpl	$0,16-16(%esp)	je	L_e_455	jmp	L_e_454	.align	2,0x90L_e_463:	testl	%ecx,%ecx	jne	L_e_454	cmpl	$0,16-16(%esp)	je	L_e_454L_e_455:	movl	$1,%eaxL_e_454:	movb	%al,%dl	andb	$1,%dl	movb	regflags+1,%al	salb	$3,%dl	andb	$247,%al	orb	%dl,%al	xorl	%edx,%edx	movb	%al,regflags+1	testl	%esi,%esi	je	L_e_459	testl	%ecx,%ecx	jne	L_e_458L_e_459:	cmpl	$0,16-16(%esp)	jne	L_e_457	testl	%ecx,%ecx	jne	L_e_458	testl	%esi,%esi	je	L_e_457L_e_458:	movl	$1,%edxL_e_457:	movb	%dl,%al	movb	regflags,%cl	andb	$1,%al	andb	$254,%cl	orb	%al,%cl	movb	regflags+4,%al	andb	$254,%al	movl	%edi,%ebx	orb	%dl,%al	movb	%cl,regflags	movb	%al,regflags+4	testb	%bl,%bl	je	L_e_460	andb	$191,%cl	movb	%cl,regflagsL_e_460:	movl	%edi,%edx	movb	regflags,%al	andb	$128,%dl	andb	$127,%al	orb	%dl,%al	movb	%al,regflags	movl	%ebp,%eax	shrl	$14,%eax	movl	%ebp,%edx	andl	$1020,%eax	andl	$65535,%edx	movl	GLOBL(W24)(%eax),%eax	movl	%edi,%ebx	movb	%bl,(%edx,%eax)	addl	$2,GLOBL(regs)+88	addl	$8,%esp	popl	%eax	decl	%eax	jl	JJ_e002	pushl	%eax	movl	GLOBL(regs)+88,%ebx	xorl	%eax,%eax	movw	0x2164334A(%ebx),%axRR0_e007:	movl	GLOBL(cpufunctbl)(,%eax,4),%ebx	rolw	$8,%ax	jmp	*%ebxJJ_e002:	retFUNC(op_d130)	subl	$16,%esp	movl	%eax,%edx	shrl	$7,%eax	andl	$28,%eax	andl	$7,%edx	movb	GLOBL(regs)(%eax),%al	movl	GLOBL(regs)+88,%ecx	movb	%al,31-16(%esp)	addl	$8,%edx	movl	%ecx,%eax	movl	%ecx,24-16(%esp)	addl	$2,%eax	addl	$4,%ecx	movl	%eax,GLOBL(regs)+88/APP	xorl	%esi,%esi	movw	0x2164334A(%eax),%siRR0_e008:	rolw	$8,%si/NO_APP	movl	GLOBL(regs)(,%edx,4),%edx	movl	%esi,%eax	movl	%ecx,20-16(%esp)	shrl	$10,%eax	movl	%ecx,GLOBL(regs)+88	andl	$60,%eax	movl	%edx,%ebx	movl	GLOBL(regs)(%eax),%edi	testl	$2048,%esi	jne	L_e_501	movswl	%di,%ediL_e_501:	movl	%esi,%eax	shrl	$9,%eax	movl	%eax,%ecx	andl	$3,%ecx	sall	%cl,%edi	testl	$256,%esi	je	L_e_502	xorl	%ebp,%ebp	movl	%esi,%ecx	testb	%cl,%cl	jge	L_e_503	movl	%ebp,%ebxL_e_503:	testl	$64,%esi	je	L_e_504	movl	%ebp,%ediL_e_504:	movl	%esi,%edx	andl	$48,%edx	cmpl	$32,%edx	jne	L_e_505	movl	20-16(%esp),%ecx/APP	xorl	%eax,%eax	movw	0x2164334A(%ecx),%axRR0_e009:	rolw	$8,%ax/NO_APP	movl	24-16(%esp),%ecx	cwtl	addl	$6,%ecx	addl	%eax,%ebx	movl	%ecx,GLOBL(regs)+88L_e_505:	cmpl	$48,%edx	jne	L_e_508	movl	GLOBL(regs)+88,%eax	movl	0x2164334A(%eax),%edxRR0_e010:/APP	bswapl	%edx/NO_APP	addl	$4,%eax	addl	%edx,%ebx	movl	%eax,GLOBL(regs)+88L_e_508:	movl	%esi,%ecx	andl	$3,%ecx	movl	%ecx,16-16(%esp)	cmpl	$2,%ecx	jne	L_e_511	movl	GLOBL(regs)+88,%eax/APP	xorl	%edx,%edx	movw	0x2164334A(%eax),%dxRR0_e011:	rolw	$8,%dx/NO_APP	addl	$2,%eax	movswl	%dx,%ebp	movl	%eax,GLOBL(regs)+88L_e_511:	cmpl	$3,16-16(%esp)	jne	L_e_514	movl	GLOBL(regs)+88,%eax	movl	0x2164334A(%eax),%edxRR0_e012:/APP	bswapl	%edx/NO_APP	addl	$4,%eax	movl	%edx,%ebp	movl	%eax,GLOBL(regs)+88L_e_514:	andl	$4,%esi	jne	L_e_517	addl	%edi,%ebxL_e_517:	cmpl	$0,16-16(%esp)	je	L_e_518	movl	%ebx,%edx	movl	%ebx,%eax	shrl	$14,%edx	andl	$65535,%eax	andl	$1020,%edx	addl	GLOBL(R24)(%edx),%eax	movl	(%eax),%ebx/APP	bswapl	%ebx/NO_APPL_e_518:	testl	%esi,%esi	je	L_e_521	addl	%edi,%ebxL_e_521:	leal	(%ebp,%ebx),%edx	jmp	L_e_522	.align	2,0x90L_e_502:	movl	%esi,%ecx	movsbl	%cl,%eax	addl	%edx,%eax	leal	(%edi,%eax),%edxL_e_522:	movl	%edx,%eax	shrl	$14,%eax	movl	%edx,%ecx	andl	$1020,%eax	andl	$65535,%ecx	movl	GLOBL(R24)(%eax),%edx	movb	(%ecx,%edx),%dl/APP	addb	31-16(%esp),%dl	pushfl	popl	%ebx	movl	%ebx,regflags	movl	%ebx,regflags+4/NO_APP	movl	GLOBL(W24)(%eax),%eax	movb	%dl,(%ecx,%eax)	addl	$16,%esp	popl	%eax	decl	%eax	jl	JJ_e003	pushl	%eax	movl	GLOBL(regs)+88,%ebx	xorl	%eax,%eax	movw	0x2164334A(%ebx),%axRR0_e013:	movl	GLOBL(cpufunctbl)(,%eax,4),%ebx	rolw	$8,%ax	jmp	*%ebxJJ_e003:	retFUNC(op_d140)	movl	%eax,%edx	pushl	%edi	shrl	$9,%edx	pushl	%esi	movl	%edx,%ebp	pushl	%ebx	andl	$7,%ebp	movl	$GLOBL(regs),%edx	andl	$7,%eax	movswl	(%edx,%ebp,4),%ecx	movswl	(%edx,%eax,4),%eax	leal	(%eax,%ecx),%edi	testb	$1,regflags+4	je	L_e_548	incl	%ediL_e_548:	movl	%eax,%esi	shrl	$31,%esi	movswl	%di,%eax	movl	%eax,%ebx	shrl	$31,%ecx	shrl	$31,%ebx	xorl	%eax,%eax	testl	%esi,%esi	je	L_e_557	testl	%ecx,%ecx	je	L_e_549	testl	%ebx,%ebx	je	L_e_550	jmp	L_e_549	.align	2,0x90L_e_557:	testl	%ecx,%ecx	jne	L_e_549	testl	%ebx,%ebx	je	L_e_549L_e_550:	movl	$1,%eaxL_e_549:	movb	%al,%dl	andb	$1,%dl	movb	regflags+1,%al	salb	$3,%dl	andb	$247,%al	orb	%dl,%al	xorl	%edx,%edx	movb	%al,regflags+1	testl	%esi,%esi	je	L_e_554	testl	%ecx,%ecx	jne	L_e_553L_e_554:	testl	%ebx,%ebx	jne	L_e_552	testl	%ecx,%ecx	jne	L_e_553	testl	%esi,%esi	je	L_e_552L_e_553:	movl	$1,%edxL_e_552:	movb	%dl,%al	movb	regflags,%cl	andb	$1,%al	andb	$254,%cl	orb	%al,%cl	movb	regflags+4,%al	andb	$254,%al	orb	%dl,%al	movb	%cl,regflags	movb	%al,regflags+4	testw	%di,%di	je	L_e_555	andb	$191,%cl	movb	%cl,regflagsL_e_555:	movl	%edi,%eax	shrl	$8,%eax	movb	%al,%dl	andb	$128,%dl	movb	regflags,%al	andb	$127,%al	orb	%dl,%al	movb	%al,regflags	movw	%di,GLOBL(regs)(,%ebp,4)	popl	%ebx	popl	%esi	popl	%edi	addl	$2,GLOBL(regs)+88	popl	%eax	decl	%eax	jl	JJ_e004	pushl	%eax	movl	GLOBL(regs)+88,%ebx	xorl	%eax,%eax	movw	0x2164334A(%ebx),%axRR0_e014:	movl	GLOBL(cpufunctbl)(,%eax,4),%ebx	rolw	$8,%ax	jmp	*%ebxJJ_e004:	retFUNC(op_d148)	subl	$8,%esp	movl	%eax,%esi	andl	$7,%esi	addl	$8,%esi	sall	$2,%esi	movl	GLOBL(regs)(%esi),%ebx	movl	%eax,%ecx	addl	$-2,%ebx	shrl	$9,%ecx	movl	%ebx,%edx	movl	%ebx,%eax	shrl	$14,%edx	andl	$65535,%eax	andl	$1020,%edx	andl	$7,%ecx	addl	GLOBL(R24)(%edx),%eax/APP	xorl	%edi,%edi	movw	(%eax),%di	rolw	$8,%di/NO_APP	movl	%edi,%eax	addl	$8,%ecx	movw	%ax,22-16(%esp)	sall	$2,%ecx	movl	%ebx,GLOBL(regs)(%esi)	movl	GLOBL(regs)(%ecx),%ebp	addl	$-2,%ebp	movl	%ebp,%edx	movl	%ebp,%eax	shrl	$14,%edx	andl	$65535,%eax	andl	$1020,%edx	addl	GLOBL(R24)(%edx),%eax/APP	xorl	%edi,%edi	movw	(%eax),%di	rolw	$8,%di/NO_APP	movl	%edi,%eax	movl	%ebp,GLOBL(regs)(%ecx)	movswl	%ax,%edx	movswl	22-16(%esp),%eax	leal	(%eax,%edx),%ecx	testb	$1,regflags+4	je	L_e_563	incl	%ecxL_e_563:	shrl	$31,%eax	movl	%eax,16-16(%esp)	movswl	%cx,%eax	movl	%edx,%ebx	movl	%eax,%esi	shrl	$31,%ebx	shrl	$31,%esi	xorl	%eax,%eax	cmpl	$0,16-16(%esp)	je	L_e_574	testl	%ebx,%ebx	je	L_e_564	testl	%esi,%esi	je	L_e_565	jmp	L_e_564	.align	2,0x90L_e_574:	testl	%ebx,%ebx	jne	L_e_564	testl	%esi,%esi	je	L_e_564L_e_565:	movl	$1,%eaxL_e_564:	movb	%al,%dl	andb	$1,%dl	movb	regflags+1,%al	salb	$3,%dl	andb	$247,%al	orb	%dl,%al	xorl	%edx,%edx	movb	%al,regflags+1	cmpl	$0,16-16(%esp)	je	L_e_569	testl	%ebx,%ebx	jne	L_e_568L_e_569:	testl	%esi,%esi	jne	L_e_567	testl	%ebx,%ebx	jne	L_e_568	cmpl	$0,16-16(%esp)	je	L_e_567L_e_568:	movl	$1,%edxL_e_567:	movb	%dl,%al	movb	regflags,%bl	andb	$1,%al	andb	$254,%bl	orb	%al,%bl	movb	regflags+4,%al	andb	$254,%al	orb	%dl,%al	movb	%bl,regflags	movb	%al,regflags+4	testw	%cx,%cx	je	L_e_570	andb	$191,%bl	movb	%bl,regflagsL_e_570:	movl	%ecx,%eax	shrl	$8,%eax	movb	%al,%dl	andb	$128,%dl	movb	regflags,%al	andb	$127,%al	orb	%dl,%al	movb	%al,regflags	movl	%ebp,%eax	movl	%ebp,%edx	shrl	$14,%eax	andl	$65535,%edx	andl	$1020,%eax	andl	$65535,%ecx	addl	GLOBL(W24)(%eax),%edx	movl	%ecx,%eax/APP	rolw	$8,%ax/NO_APP	movw	%ax,(%edx)	addl	$2,GLOBL(regs)+88	addl	$8,%esp	popl	%eax	decl	%eax	jl	JJ_e005	pushl	%eax	movl	GLOBL(regs)+88,%ebx	xorl	%eax,%eax	movw	0x2164334A(%ebx),%axRR0_e015:	movl	GLOBL(cpufunctbl)(,%eax,4),%ebx	rolw	$8,%ax	jmp	*%ebxJJ_e005:	retFUNC(op_d170)	subl	$16,%esp	movl	%eax,%edx	movl	$GLOBL(regs),%ecx	shrl	$7,%eax	andl	$28,%eax	andl	$7,%edx	movw	(%eax,%ecx),%ax	movl	GLOBL(regs)+88,%ebx	movw	%ax,30-16(%esp)	addl	$8,%edx	movl	%ebx,%eax	movl	%ebx,24-16(%esp)	addl	$2,%eax	addl	$4,%ebx	movl	%eax,GLOBL(regs)+88/APP	xorl	%esi,%esi	movw	0x2164334A(%eax),%siRR0_e016:	rolw	$8,%si/NO_APP	movl	(%ecx,%edx,4),%edx	movl	%ebx,20-16(%esp)	movl	%esi,%eax	movl	%ebx,GLOBL(regs)+88	shrl	$10,%eax	movl	%edx,16-16(%esp)	andl	$60,%eax

⌨️ 快捷键说明

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