📄 asm02e.s
字号:
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 + -