📄 f.elf
字号:
movl 28(%esp), %edi movl 32(%esp), %ebp xorl %eax, %eax andl $4294967288, %ebp jz .L014aw_finish.L015aw_loop: # Round 0 movl (%esi), %ecx movl (%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax movl %ecx, (%ebx) # Round 1 movl 4(%esi), %ecx movl 4(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax movl %ecx, 4(%ebx) # Round 2 movl 8(%esi), %ecx movl 8(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax movl %ecx, 8(%ebx) # Round 3 movl 12(%esi), %ecx movl 12(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax movl %ecx, 12(%ebx) # Round 4 movl 16(%esi), %ecx movl 16(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax movl %ecx, 16(%ebx) # Round 5 movl 20(%esi), %ecx movl 20(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax movl %ecx, 20(%ebx) # Round 6 movl 24(%esi), %ecx movl 24(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax movl %ecx, 24(%ebx) # Round 7 movl 28(%esi), %ecx movl 28(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax movl %ecx, 28(%ebx) addl $32, %esi addl $32, %edi addl $32, %ebx subl $8, %ebp jnz .L015aw_loop.L014aw_finish: movl 32(%esp), %ebp andl $7, %ebp jz .L016aw_end # Tail Round 0 movl (%esi), %ecx movl (%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax decl %ebp movl %ecx, (%ebx) jz .L016aw_end # Tail Round 1 movl 4(%esi), %ecx movl 4(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax decl %ebp movl %ecx, 4(%ebx) jz .L016aw_end # Tail Round 2 movl 8(%esi), %ecx movl 8(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax decl %ebp movl %ecx, 8(%ebx) jz .L016aw_end # Tail Round 3 movl 12(%esi), %ecx movl 12(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax decl %ebp movl %ecx, 12(%ebx) jz .L016aw_end # Tail Round 4 movl 16(%esi), %ecx movl 16(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax decl %ebp movl %ecx, 16(%ebx) jz .L016aw_end # Tail Round 5 movl 20(%esi), %ecx movl 20(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax decl %ebp movl %ecx, 20(%ebx) jz .L016aw_end # Tail Round 6 movl 24(%esi), %ecx movl 24(%edi), %edx subl %eax, %ecx movl $0, %eax adcl %eax, %eax subl %edx, %ecx adcl $0, %eax movl %ecx, 24(%ebx).L016aw_end: popl %edi popl %esi popl %ebx popl %ebp ret.bn_sub_words_end: .size bn_sub_words,.bn_sub_words_end-bn_sub_words.ident "bn_sub_words".text .align 16.globl bn_mul_comba8 .type bn_mul_comba8,@functionbn_mul_comba8: pushl %esi movl 12(%esp), %esi pushl %edi movl 20(%esp), %edi pushl %ebp pushl %ebx xorl %ebx, %ebx movl (%esi), %eax xorl %ecx, %ecx movl (%edi), %edx # ################## Calculate word 0 xorl %ebp, %ebp # mul a[0]*b[0] mull %edx addl %eax, %ebx movl 20(%esp), %eax adcl %edx, %ecx movl (%edi), %edx adcl $0, %ebp movl %ebx, (%eax) movl 4(%esi), %eax # saved r[0] # ################## Calculate word 1 xorl %ebx, %ebx # mul a[1]*b[0] mull %edx addl %eax, %ecx movl (%esi), %eax adcl %edx, %ebp movl 4(%edi), %edx adcl $0, %ebx # mul a[0]*b[1] mull %edx addl %eax, %ecx movl 20(%esp), %eax adcl %edx, %ebp movl (%edi), %edx adcl $0, %ebx movl %ecx, 4(%eax) movl 8(%esi), %eax # saved r[1] # ################## Calculate word 2 xorl %ecx, %ecx # mul a[2]*b[0] mull %edx addl %eax, %ebp movl 4(%esi), %eax adcl %edx, %ebx movl 4(%edi), %edx adcl $0, %ecx # mul a[1]*b[1] mull %edx addl %eax, %ebp movl (%esi), %eax adcl %edx, %ebx movl 8(%edi), %edx adcl $0, %ecx # mul a[0]*b[2] mull %edx addl %eax, %ebp movl 20(%esp), %eax adcl %edx, %ebx movl (%edi), %edx adcl $0, %ecx movl %ebp, 8(%eax) movl 12(%esi), %eax # saved r[2] # ################## Calculate word 3 xorl %ebp, %ebp # mul a[3]*b[0] mull %edx addl %eax, %ebx movl 8(%esi), %eax adcl %edx, %ecx movl 4(%edi), %edx adcl $0, %ebp # mul a[2]*b[1] mull %edx addl %eax, %ebx movl 4(%esi), %eax adcl %edx, %ecx movl 8(%edi), %edx adcl $0, %ebp # mul a[1]*b[2] mull %edx addl %eax, %ebx movl (%esi), %eax adcl %edx, %ecx movl 12(%edi), %edx adcl $0, %ebp # mul a[0]*b[3] mull %edx addl %eax, %ebx movl 20(%esp), %eax adcl %edx, %ecx movl (%edi), %edx adcl $0, %ebp movl %ebx, 12(%eax) movl 16(%esi), %eax # saved r[3] # ################## Calculate word 4 xorl %ebx, %ebx # mul a[4]*b[0] mull %edx addl %eax, %ecx movl 12(%esi), %eax adcl %edx, %ebp movl 4(%edi), %edx adcl $0, %ebx # mul a[3]*b[1] mull %edx addl %eax, %ecx movl 8(%esi), %eax adcl %edx, %ebp movl 8(%edi), %edx adcl $0, %ebx # mul a[2]*b[2] mull %edx addl %eax, %ecx movl 4(%esi), %eax adcl %edx, %ebp movl 12(%edi), %edx adcl $0, %ebx # mul a[1]*b[3] mull %edx addl %eax, %ecx movl (%esi), %eax adcl %edx, %ebp movl 16(%edi), %edx adcl $0, %ebx # mul a[0]*b[4] mull %edx addl %eax, %ecx movl 20(%esp), %eax adcl %edx, %ebp movl (%edi), %edx adcl $0, %ebx movl %ecx, 16(%eax) movl 20(%esi), %eax # saved r[4] # ################## Calculate word 5 xorl %ecx, %ecx # mul a[5]*b[0] mull %edx addl %eax, %ebp movl 16(%esi), %eax adcl %edx, %ebx movl 4(%edi), %edx adcl $0, %ecx # mul a[4]*b[1] mull %edx addl %eax, %ebp movl 12(%esi), %eax adcl %edx, %ebx movl 8(%edi), %edx adcl $0, %ecx # mul a[3]*b[2] mull %edx addl %eax, %ebp movl 8(%esi), %eax adcl %edx, %ebx movl 12(%edi), %edx adcl $0, %ecx # mul a[2]*b[3] mull %edx addl %eax, %ebp movl 4(%esi), %eax adcl %edx, %ebx movl 16(%edi), %edx adcl $0, %ecx # mul a[1]*b[4] mull %edx addl %eax, %ebp movl (%esi), %eax adcl %edx, %ebx movl 20(%edi), %edx adcl $0, %ecx # mul a[0]*b[5] mull %edx addl %eax, %ebp movl 20(%esp), %eax adcl %edx, %ebx movl (%edi), %edx adcl $0, %ecx movl %ebp, 20(%eax) movl 24(%esi), %eax # saved r[5] # ################## Calculate word 6 xorl %ebp, %ebp # mul a[6]*b[0] mull %edx addl %eax, %ebx movl 20(%esi), %eax adcl %edx, %ecx movl 4(%edi), %edx adcl $0, %ebp # mul a[5]*b[1] mull %edx addl %eax, %ebx movl 16(%esi), %eax adcl %edx, %ecx movl 8(%edi), %edx adcl $0, %ebp # mul a[4]*b[2] mull %edx addl %eax, %ebx movl 12(%esi), %eax adcl %edx, %ecx movl 12(%edi), %edx adcl $0, %ebp # mul a[3]*b[3] mull %edx addl %eax, %ebx movl 8(%esi), %eax adcl %edx, %ecx movl 16(%edi), %edx adcl $0, %ebp # mul a[2]*b[4] mull %edx addl %eax, %ebx movl 4(%esi), %eax adcl %edx, %ecx movl 20(%edi), %edx adcl $0, %ebp # mul a[1]*b[5] mull %edx addl %eax, %ebx movl (%esi), %eax adcl %edx, %ecx movl 24(%edi), %edx adcl $0, %ebp # mul a[0]*b[6] mull %edx addl %eax, %ebx movl 20(%esp), %eax adcl %edx, %ecx movl (%edi), %edx adcl $0, %ebp movl %ebx, 24(%eax) movl 28(%esi), %eax # saved r[6] # ################## Calculate word 7 xorl %ebx, %ebx # mul a[7]*b[0] mull %edx addl %eax, %ecx movl 24(%esi), %eax adcl %edx, %ebp movl 4(%edi), %edx adcl $0, %ebx # mul a[6]*b[1] mull %edx addl %eax, %ecx movl 20(%esi), %eax adcl %edx, %ebp movl 8(%edi), %edx adcl $0, %ebx # mul a[5]*b[2] mull %edx addl %eax, %ecx movl 16(%esi), %eax adcl %edx, %ebp movl 12(%edi), %edx adcl $0, %ebx # mul a[4]*b[3] mull %edx addl %eax, %ecx movl 12(%esi), %eax adcl %edx, %ebp movl 16(%edi), %edx adcl $0, %ebx # mul a[3]*b[4] mull %edx addl %eax, %ecx movl 8(%esi), %eax adcl %edx, %ebp movl 20(%edi), %edx adcl $0, %ebx # mul a[2]*b[5] mull %edx addl %eax, %ecx movl 4(%esi), %eax adcl %edx, %ebp movl 24(%edi), %edx adcl $0, %ebx # mul a[1]*b[6] mull %edx addl %eax, %ecx movl (%esi), %eax adcl %edx, %ebp movl 28(%edi), %edx adcl $0, %ebx # mul a[0]*b[7] mull %edx addl %eax, %ecx movl 20(%esp), %eax adcl %edx, %ebp movl 4(%edi), %edx adcl $0, %ebx movl %ecx, 28(%eax) movl 28(%esi), %eax # saved r[7] # ################## Calculate word 8 xorl %ecx, %ecx # mul a[7]*b[1] mull %edx addl %eax, %ebp movl 24(%esi), %eax adcl %edx, %ebx movl 8(%edi), %edx adcl $0, %ecx # mul a[6]*b[2] mull %edx addl %eax, %ebp movl 20(%esi), %eax adcl %edx, %ebx movl 12(%edi), %edx adcl $0, %ecx # mul a[5]*b[3] mull %edx addl %eax, %ebp movl 16(%esi), %eax adcl %edx, %ebx movl 16(%edi), %edx adcl $0, %ecx # mul a[4]*b[4] mull %edx addl %eax, %ebp movl 12(%esi), %eax adcl %edx, %ebx movl 20(%edi), %edx adcl $0, %ecx # mul a[3]*b[5] mull %edx addl %eax, %ebp movl 8(%esi), %eax adcl %edx, %ebx movl 24(%edi), %edx adcl $0, %ecx # mul a[2]*b[6] mull %edx addl %eax, %ebp movl 4(%esi), %eax adcl %edx, %ebx movl 28(%edi), %edx adcl $0, %ecx # mul a[1]*b[7] mull %edx addl %eax, %ebp movl 20(%esp), %eax adcl %edx, %ebx movl 8(%edi), %edx adcl $0, %ecx movl %ebp, 32(%eax) movl 28(%esi), %eax # saved r[8] # ################## Calculate word 9 xorl %ebp, %ebp # mul a[7]*b[2] mull %edx addl %eax, %ebx movl 24(%esi), %eax adcl %edx, %ecx movl 12(%edi), %edx adcl $0, %ebp # mul a[6]*b[3] mull %edx addl %eax, %ebx movl 20(%esi), %eax adcl %edx, %ecx movl 16(%edi), %edx adcl $0, %ebp # mul a[5]*b[4] mull %edx addl %eax, %ebx movl 16(%esi), %eax adcl %edx, %ecx movl 20(%edi), %edx adcl $0, %ebp # mul a[4]*b[5] mull %edx addl %eax, %ebx movl 12(%esi), %eax adcl %edx, %ecx movl 24(%edi), %edx adcl $0, %ebp # mul a[3]*b[6] mull %edx addl %eax, %ebx movl 8(%esi), %eax adcl %edx, %ecx movl 28(%edi), %edx adcl $0, %ebp # mul a[2]*b[7] mull %edx addl %eax, %ebx movl 20(%esp), %eax adcl %edx, %ecx movl 12(%edi), %edx adcl $0, %ebp movl %ebx, 36(%eax) movl 28(%esi), %eax # saved r[9] # ################## Calculate word 10 xorl %ebx, %ebx # mul a[7]*b[3] mull %edx addl %eax, %ecx movl 24(%esi), %eax adcl %edx, %ebp movl 16(%edi), %edx adcl $0, %ebx # mul a[6]*b[4] mull %edx addl %eax, %ecx movl 20(%esi), %eax adcl %edx, %ebp movl 20(%edi), %edx adcl $0, %ebx # mul a[5]*b[5] mull %edx addl %eax, %ecx movl 16(%esi), %eax adcl %edx, %ebp movl 24(%edi), %edx adcl $0, %ebx # mul a[4]*b[6] mull %edx addl %eax, %ecx movl 12(%esi), %eax adcl %edx, %ebp movl 28(%edi), %edx adcl $0, %ebx # mul a[3]*b[7] mull %edx addl %eax, %ecx movl 20(%esp), %eax adcl %edx, %ebp movl 16(%edi), %edx adcl $0, %ebx movl %ecx, 40(%eax) movl 28(%esi), %eax # saved r[10] # ################## Calculate word 11 xorl %ecx, %ecx # mul a[7]*b[4] mull %edx addl %eax, %ebp movl 24(%esi), %eax adcl %edx, %ebx movl 20(%edi), %edx adcl $0, %ecx # mul a[6]*b[5] mull %edx addl %eax, %ebp movl 20(%esi), %eax adcl %edx, %ebx movl 24(%edi), %edx adcl $0, %ecx # mul a[5]*b[6] mull %edx addl %eax, %ebp movl 16(%esi), %eax adcl %edx, %ebx movl 28(%edi), %edx adcl $0, %ecx # mul a[4]*b[7] mull %edx addl %eax, %ebp movl 20(%esp), %eax adcl %edx, %ebx movl 20(%edi), %edx adcl $0, %ecx movl %ebp, 44(%eax) movl 28(%esi), %eax # saved r[11] # ################## Calculate word 12 xorl %ebp, %ebp # mul a[7]*b[5] mull %edx addl %eax, %ebx movl 24(%esi), %eax adcl %edx, %ecx movl 24(%edi), %edx adcl $0, %ebp # mul a[6]*b[6] mull %edx addl %eax, %ebx movl 20(%esi), %eax adcl %edx, %ecx movl 28(%edi), %edx adcl $0, %ebp # mul a[5]*b[7] mull %edx addl %eax, %ebx movl 20(%esp), %eax adcl %edx, %ecx movl 24(%edi), %edx adcl $0, %ebp movl %ebx, 48(%eax) movl 28(%esi), %eax # saved r[12] # ################## Calculate word 13 xorl %ebx, %ebx # mul a[7]*b[6] mull %edx addl %eax, %ecx movl 24(%esi), %eax adcl %edx, %ebp movl 28(%edi), %edx adcl $0, %ebx # mul a[6]*b[7] mull %edx addl %eax, %ecx movl 20(%esp), %eax adcl %edx, %ebp movl 28(%edi), %edx adcl $0, %ebx movl %ecx, 52(%eax) movl 28(%esi), %eax # saved r[13] # ################## Calculate word 14 xorl %ecx, %ecx # mul a[7]*b[7] mull %edx addl %eax, %ebp movl 20(%esp), %eax adcl %edx, %ebx adcl $0, %ecx movl %ebp, 56(%eax) # saved r[14] # save r[15] movl %ebx, 60(%eax) popl %ebx popl %ebp popl %edi popl %esi ret.bn_mul_comba8_end: .size bn_mul_comba8,.bn_mul_comba8_end-bn_mul_comba8
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -