📄 fec.s.980621e
字号:
.file "fec.c"gcc2_compiled.:___gnu_compiled_c:.globl _allPp.data .align 2 .type _allPp,@object_allPp: .long 0 .long 0 .long LC0 .long LC1 .long LC2 .long LC3 .long LC4 .long LC5 .long LC6 .long LC7 .long LC8 .long LC9 .long LC10 .long LC11 .long LC12 .long LC13 .long LC14.textLC14: .ascii "11010000000010001\0"LC13: .ascii "1100000000000001\0"LC12: .ascii "110000100010001\0"LC11: .ascii "11011000000001\0"LC10: .ascii "1100101000001\0"LC9: .ascii "101000000001\0"LC8: .ascii "10010000001\0"LC7: .ascii "1000100001\0"LC6: .ascii "101110001\0"LC5: .ascii "10010001\0"LC4: .ascii "1100001\0"LC3: .ascii "101001\0"LC2: .ascii "11001\0"LC1: .ascii "1101\0"LC0: .ascii "111\0" .size _allPp,68 .align 2 .type _init_mul_table,@function_init_mul_table: pushl %ebp movl %esp,%ebp subl $4,%esp pushl %edi pushl %esi pushl %ebx movl $_gf_log,%esi movl $_gf_mul_table,-4(%ebp) .align 2,0x90L24: xorl %ecx,%ecx movl -4(%ebp),%edi .align 2,0x90L28: movl (%esi),%eax addl _gf_log(,%ecx,4),%eax cmpl $254,%eax jle L75 .align 2,0x90L76: addl $-255,%eax movl %eax,%edx sarl $8,%edx andl $255,%eax addl %edx,%eax cmpl $254,%eax jg L76L75: andl $255,%eax movb _gf_exp(%eax),%al movb %al,(%ecx,%edi) leal 1(%ecx),%ebx movl (%esi),%eax addl _gf_log(,%ebx,4),%eax cmpl $254,%eax jle L79 .align 2,0x90L80: addl $-255,%eax movl %eax,%edx sarl $8,%edx andl $255,%eax addl %edx,%eax cmpl $254,%eax jg L80L79: andl $255,%eax movb _gf_exp(%eax),%al movb %al,(%ebx,%edi) leal 2(%ecx),%ebx movl (%esi),%eax addl _gf_log(,%ebx,4),%eax cmpl $254,%eax jle L83 .align 2,0x90L84: addl $-255,%eax movl %eax,%edx sarl $8,%edx andl $255,%eax addl %edx,%eax cmpl $254,%eax jg L84L83: andl $255,%eax movb _gf_exp(%eax),%al movb %al,(%ebx,%edi) leal 3(%ecx),%ebx movl (%esi),%eax addl _gf_log(,%ebx,4),%eax cmpl $254,%eax jle L87 .align 2,0x90L88: addl $-255,%eax movl %eax,%edx sarl $8,%edx andl $255,%eax addl %edx,%eax cmpl $254,%eax jg L88L87: andl $255,%eax movb _gf_exp(%eax),%al movb %al,(%ebx,%edi) addl $4,%ecx cmpl $255,%ecx jle L28 addl $4,%esi addl $256,-4(%ebp) cmpl $_gf_log+1020,%esi jle L24 xorl %ecx,%ecx movl $_gf_mul_table,%eax .align 2,0x90L39: movb $0,(%eax) movb $0,_gf_mul_table(%ecx) movb $0,256(%eax) movb $0,_gf_mul_table+1(%ecx) movb $0,512(%eax) movb $0,_gf_mul_table+2(%ecx) movb $0,768(%eax) movb $0,_gf_mul_table+3(%ecx) movb $0,1024(%eax) movb $0,_gf_mul_table+4(%ecx) movb $0,1280(%eax) movb $0,_gf_mul_table+5(%ecx) movb $0,1536(%eax) movb $0,_gf_mul_table+6(%ecx) movb $0,1792(%eax) movb $0,_gf_mul_table+7(%ecx) movb $0,2048(%eax) movb $0,_gf_mul_table+8(%ecx) movb $0,2304(%eax) movb $0,_gf_mul_table+9(%ecx) movb $0,2560(%eax) movb $0,_gf_mul_table+10(%ecx) movb $0,2816(%eax) movb $0,_gf_mul_table+11(%ecx) movb $0,3072(%eax) movb $0,_gf_mul_table+12(%ecx) movb $0,3328(%eax) movb $0,_gf_mul_table+13(%ecx) movb $0,3584(%eax) movb $0,_gf_mul_table+14(%ecx) movb $0,3840(%eax) movb $0,_gf_mul_table+15(%ecx) addl $4096,%eax addl $16,%ecx cmpl $255,%ecx jle L39 leal -16(%ebp),%esp popl %ebx popl %esi popl %edi leave retLfe1: .size _init_mul_table,Lfe1-_init_mul_tableLC15: .ascii "-- malloc failure allocating %s\12\0" .align 2 .type _my_malloc,@function_my_malloc: pushl %ebp movl %esp,%ebp pushl 8(%ebp) call _malloc addl $4,%esp testl %eax,%eax jne L91 pushl 12(%ebp) pushl $LC15 pushl $___sF+176 call _fprintf pushl $1 call _exit .align 2,0x90L91: leave retLfe2: .size _my_malloc,Lfe2-_my_malloc .align 2 .type _generate_gf,@function_generate_gf: pushl %ebp movl %esp,%ebp subl $40,%esp pushl %edi pushl %esi pushl %ebx movl _allPp+32,%ecx movb $1,%dl movb $0,_gf_exp+8 movb $1,_gf_exp movl $0,_gf_log+4 cmpb $49,(%ecx) jne L139 movb $1,_gf_exp+8L139: addb %dl,%dl movb %dl,_gf_exp+1 movzbl %dl,%eax movl $1,_gf_log(,%eax,4) cmpb $49,1(%ecx) jne L142 xorb %dl,_gf_exp+8L142: addb %dl,%dl movb %dl,_gf_exp+2 movzbl %dl,%eax movl $2,_gf_log(,%eax,4) cmpb $49,2(%ecx) jne L145 xorb %dl,_gf_exp+8L145: addb %dl,%dl movb %dl,_gf_exp+3 movzbl %dl,%eax movl $3,_gf_log(,%eax,4) cmpb $49,3(%ecx) jne L148 xorb %dl,_gf_exp+8L148: addb %dl,%dl movb %dl,_gf_exp+4 movzbl %dl,%eax movl $4,_gf_log(,%eax,4) cmpb $49,4(%ecx) jne L151 xorb %dl,_gf_exp+8L151: addb %dl,%dl movb %dl,_gf_exp+5 movzbl %dl,%eax movl $5,_gf_log(,%eax,4) cmpb $49,5(%ecx) jne L154 xorb %dl,_gf_exp+8L154: addb %dl,%dl movb %dl,_gf_exp+6 movzbl %dl,%eax movl $6,_gf_log(,%eax,4) cmpb $49,6(%ecx) jne L157 xorb %dl,_gf_exp+8L157: addb %dl,%dl movb %dl,_gf_exp+7 movzbl %dl,%eax movl $7,_gf_log(,%eax,4) cmpb $49,7(%ecx) jne L160 xorb %dl,_gf_exp+8L160: movzbl _gf_exp+8,%eax movl $8,_gf_log(,%eax,4) movb $128,%dl movl $9,%ecx movl $_gf_exp+9,-4(%ebp) movl $_gf_exp+9,-8(%ebp) movl $_gf_exp+8,-12(%ebp) movl $_gf_exp+9,%edi movl $_gf_exp+8,-40(%ebp) movl $_gf_exp+8,-36(%ebp) .align 2,0x90L102: movl -36(%ebp),%ebx cmpb %dl,(%ebx) jb L116 movb %dl,%al movl -40(%ebp),%esi xorb (%esi),%al addb %al,%al xorb _gf_exp+8,%al movb %al,(%edi) jmp L117 .align 2,0x90L116: movl -12(%ebp),%ebx movb (%ebx),%bl addb %bl,%bl movl -8(%ebp),%esi movb %bl,(%esi)L117: movl -4(%ebp),%esi movzbl (%esi),%eax movl %ecx,_gf_log(,%eax,4) leal 1(%ecx),%ebx movl %ebx,-16(%ebp) movl -36(%ebp),%esi cmpb %dl,1(%esi) jb L120 movb %dl,%al movl -40(%ebp),%ebx xorb 1(%ebx),%al addb %al,%al xorb _gf_exp+8,%al movb %al,1(%edi) jmp L121 .align 2,0x90L120: movl -12(%ebp),%ebx movb 1(%ebx),%bl addb %bl,%bl movl -8(%ebp),%esi movb %bl,1(%esi)L121: movl -4(%ebp),%esi movzbl 1(%esi),%eax movl -16(%ebp),%ebx movl %ebx,_gf_log(,%eax,4) leal 2(%ecx),%esi movl %esi,-20(%ebp) movl -36(%ebp),%ebx cmpb %dl,2(%ebx) jb L124 movb %dl,%al movl -40(%ebp),%esi xorb 2(%esi),%al addb %al,%al xorb _gf_exp+8,%al movb %al,2(%edi) jmp L125 .align 2,0x90L124: movl -12(%ebp),%ebx movb 2(%ebx),%bl addb %bl,%bl movl -8(%ebp),%esi movb %bl,2(%esi)L125: movl -4(%ebp),%esi movzbl 2(%esi),%eax movl -20(%ebp),%ebx movl %ebx,_gf_log(,%eax,4) leal 3(%ecx),%esi movl %esi,-24(%ebp) movl -36(%ebp),%ebx cmpb %dl,3(%ebx) jb L128 movb %dl,%al movl -40(%ebp),%esi xorb 3(%esi),%al addb %al,%al xorb _gf_exp+8,%al movb %al,3(%edi) jmp L129 .align 2,0x90L128: movl -12(%ebp),%ebx movb 3(%ebx),%bl addb %bl,%bl movl -8(%ebp),%esi movb %bl,3(%esi)L129: movl -4(%ebp),%esi movzbl 3(%esi),%eax movl -24(%ebp),%ebx movl %ebx,_gf_log(,%eax,4) leal 4(%ecx),%esi movl %esi,-28(%ebp) movl -36(%ebp),%ebx cmpb %dl,4(%ebx) jb L132 movb %dl,%al movl -40(%ebp),%esi xorb 4(%esi),%al addb %al,%al xorb _gf_exp+8,%al movb %al,4(%edi) jmp L133 .align 2,0x90L132: movl -12(%ebp),%ebx movb 4(%ebx),%bl addb %bl,%bl movl -8(%ebp),%esi movb %bl,4(%esi)L133: movl -4(%ebp),%esi movzbl 4(%esi),%eax movl -28(%ebp),%ebx movl %ebx,_gf_log(,%eax,4) leal 5(%ecx),%esi movl %esi,-32(%ebp) movl -36(%ebp),%ebx cmpb %dl,5(%ebx) jb L136 movb %dl,%al movl -40(%ebp),%esi xorb 5(%esi),%al addb %al,%al xorb _gf_exp+8,%al movb %al,5(%edi) jmp L137 .align 2,0x90L136: movl -12(%ebp),%ebx movb 5(%ebx),%bl addb %bl,%bl movl -8(%ebp),%esi movb %bl,5(%esi)L137: movl -4(%ebp),%esi movzbl 5(%esi),%eax movl -32(%ebp),%ebx movl %ebx,_gf_log(,%eax,4) addl $6,%esi movl %esi,-4(%ebp) addl $6,-8(%ebp) addl $6,%edi addl $6,-12(%ebp) addl $6,-40(%ebp) addl $6,-36(%ebp) addl $6,%ecx cmpl $254,%ecx jle L102 movl $255,_gf_log movb $0,_gf_exp+255 movb $0,_inverse movb $1,_inverse+1 movl $2,%ecx .align 2,0x90L109: movl $_gf_exp+255,%eax subl _gf_log(,%ecx,4),%eax movb (%eax),%al movb %al,_inverse(%ecx) leal 1(%ecx),%edx movl $_gf_exp+255,%eax subl _gf_log(,%edx,4),%eax movb (%eax),%al movb %al,_inverse(%edx) addl $2,%ecx cmpl $255,%ecx jle L109 leal -52(%ebp),%esp popl %ebx popl %esi popl %edi leave retLfe3: .size _generate_gf,Lfe3-_generate_gf .align 2 .type _addmul1,@function_addmul1: pushl %ebp movl %esp,%ebp subl $16,%esp pushl %edi pushl %esi pushl %ebx movl 8(%ebp),%ebx movl 12(%ebp),%esi movb 16(%ebp),%cl movb %cl,-4(%ebp) xorl %edx,%edx movl 20(%ebp),%edi addl $-16,%edi movl %edi,-8(%ebp) cmpl %edi,%edx jge L165 movzbl %cl,%eax sall $8,%eax addl $_gf_mul_table,%eax movl %eax,-12(%ebp) movl %ebx,-16(%ebp) movl -12(%ebp),%edi .align 2,0x90L167: movw (%edx,%esi),%cx movzbl %cl, %eax movzbl %ch, %ecx movb (%eax,%edi),%al movb (%ecx,%edi),%ah xorw %ax,0(%ebx,%edx) movw 2(%esi,%edx),%cx movzbl %cl, %eax movzbl %ch, %ecx movb (%eax,%edi),%al movb (%ecx,%edi),%ah xorw %ax,2(%ebx,%edx) movw 4(%esi,%edx),%cx movzbl %cl, %eax movzbl %ch, %ecx movb (%eax,%edi),%al movb (%ecx,%edi),%ah xorw %ax,4(%ebx,%edx) movw 6(%esi,%edx),%cx movzbl %cl, %eax movzbl %ch, %ecx movb (%eax,%edi),%al movb (%ecx,%edi),%ah xorw %ax,6(%ebx,%edx) movw 8(%esi,%edx),%cx movzbl %cl, %eax movzbl %ch, %ecx movb (%eax,%edi),%al movb (%ecx,%edi),%ah xorw %ax,8(%ebx,%edx) movw 10(%esi,%edx),%cx movzbl %cl, %eax movzbl %ch, %ecx movb (%eax,%edi),%al movb (%ecx,%edi),%ah xorw %ax,10(%ebx,%edx) movw 12(%esi,%edx),%cx movzbl %cl, %eax movzbl %ch, %ecx movb (%eax,%edi),%al movb (%ecx,%edi),%ah xorw %ax,12(%ebx,%edx) movw 14(%esi,%edx),%cx movzbl %cl, %eax movzbl %ch, %ecx movb (%eax,%edi),%al movb (%ecx,%edi),%ah xorw %ax,14(%ebx,%edx) addl $16,%edx cmpl %edx,-8(%ebp) jg L167L165: cmpl %edx,20(%ebp) jle L174 movzbl -4(%ebp),%eax sall $8,%eax addl $_gf_mul_table,%eax movl %eax,-16(%ebp) addl %edx,%ebx movl %ebx,-12(%ebp) movl 20(%ebp),%eax subl %edx,%eax andl $3,%eax je L176 cmpl $1,%eax jle L177 cmpl $2,%eax jle L178 movzbl (%edx,%esi),%eax movl -16(%ebp),%ecx movb (%eax,%ecx),%al xorb %al,(%ebx) incl -12(%ebp) incl %edxL178: movzbl (%edx,%esi),%eax movl -16(%ebp),%edi movb (%eax,%edi),%al movl -12(%ebp),%edi xorb %al,(%edi) incl %edi movl %edi,-12(%ebp) incl %edxL177: movzbl (%edx,%esi),%eax movl -16(%ebp),%ecx movb (%eax,%ecx),%al movl -12(%ebp),%ecx xorb %al,(%ecx) incl %ecx movl %ecx,-12(%ebp) incl %edx cmpl %edx,20(%ebp) jle L174L176: movl -12(%ebp),%ebx movl %ebx,-12(%ebp) .align 2,0x90L172: movzbl (%edx,%esi),%eax movl -12(%ebp),%ecx movb (%ecx),%cl movl -16(%ebp),%edi xorb (%eax,%edi),%cl movb %cl,(%ebx) movzbl 1(%esi,%edx),%eax movl -12(%ebp),%ecx movb 1(%ecx),%cl xorb (%eax,%edi),%cl movb %cl,1(%ebx) movzbl 2(%esi,%edx),%eax movl -12(%ebp),%ecx movb 2(%ecx),%cl xorb (%eax,%edi),%cl movb %cl,2(%ebx) movzbl 3(%esi,%edx),%eax movl -12(%ebp),%ecx movb 3(%ecx),%cl xorb (%eax,%edi),%cl movb %cl,3(%ebx) addl $4,%ebx addl $4,-12(%ebp) addl $4,%edx cmpl %edx,20(%ebp) jg L172L174: leal -28(%ebp),%esp popl %ebx popl %esi popl %edi leave retLfe4: .size _addmul1,Lfe4-_addmul1 .align 2 .type _matmul,@function_matmul: pushl %ebp movl %esp,%ebp subl $20,%esp pushl %edi pushl %esi pushl %ebx movl $0,-4(%ebp) movl 20(%ebp),%edi cmpl %edi,-4(%ebp) jge L196 movl $0,-12(%ebp) movl $0,-16(%ebp) .align 2,0x90L198: movl $0,-8(%ebp) jmp L229 .align 2,0x90 .align 2,0x90L202: movl 8(%ebp),%esi addl -16(%ebp),%esi movl 12(%ebp),%ecx addl -8(%ebp),%ecx xorb %bl,%bl movl $0,-20(%ebp) movl 24(%ebp),%edi cmpl %edi,-20(%ebp) jge L204 movl %edi,%eax andl $3,%eax je L206 cmpl $1,%eax jle L212 cmpl $2,%eax jle L213 movzbl (%esi),%eax sall $8,%eax movzbl (%ecx),%edx movb _gf_mul_table(%edx,%eax),%bl incl -20(%ebp) incl %esi addl 28(%ebp),%ecxL213: movzbl (%esi),%eax sall $8,%eax movzbl (%ecx),%edx xorb _gf_mul_table(%edx,%eax),%bl incl -20(%ebp) incl %esi addl 28(%ebp),%ecxL212: movzbl (%esi),%eax sall $8,%eax movzbl (%ecx),%edx xorb _gf_mul_table(%edx,%eax),%bl incl -20(%ebp) incl %esi jmp L230 .align 2,0x90 .align 2,0x90L206: movzbl (%esi),%edx sall $8,%edx movzbl (%ecx),%eax xorb _gf_mul_table(%eax,%edx),%bl addl 28(%ebp),%ecx movzbl 1(%esi),%edx sall $8,%edx movzbl (%ecx),%eax xorb _gf_mul_table(%eax,%edx),%bl addl 28(%ebp),%ecx movzbl 2(%esi),%edx sall $8,%edx movzbl (%ecx),%eax xorb _gf_mul_table(%eax,%edx),%bl addl 28(%ebp),%ecx movzbl 3(%esi),%edx sall $8,%edx movzbl (%ecx),%eax xorb _gf_mul_table(%eax,%edx),%bl addl $4,-20(%ebp) addl $4,%esiL230: addl 28(%ebp),%ecx movl 24(%ebp),%edi cmpl %edi,-20(%ebp) jl L206L204: movl -12(%ebp),%eax addl -8(%ebp),%eax movl 16(%ebp),%edi movb %bl,(%eax,%edi) incl -8(%ebp)L229: movl 28(%ebp),%edi cmpl %edi,-8(%ebp) jl L202 movl 28(%ebp),%edi addl %edi,-12(%ebp) movl 24(%ebp),%edi addl %edi,-16(%ebp) incl -4(%ebp) movl 20(%ebp),%edi cmpl %edi,-4(%ebp) jl L198L196: leal -32(%ebp),%esp popl %ebx popl %esi popl %edi leave retLfe5: .size _matmul,Lfe5-_matmul .align 2 .type _is_identity,@function_is_identity: pushl %ebp movl %esp,%ebp pushl %esi pushl %ebx movl 8(%ebp),%edx movl 12(%ebp),%esi xorl %ebx,%ebx cmpl %esi,%ebx jge L233 .align 2,0x90L235: xorl %ecx,%ecx cmpl %esi,%ecx jge L234 movl %esi,%eax andl $3,%eax je L239 cmpl $1,%eax jle L250 cmpl $2,%eax jle L251 testl %ebx,%ebx jne L256 cmpb $1,(%edx) jne L285 jmp L254 .align 2,0x90L256: cmpb $0,(%edx) jne L285L254: incl %edx incl %ecxL251: cmpl %ecx,%ebx jne L261 cmpb $1,(%edx) jne L285 jmp L259 .align 2,0x90L261: cmpb $0,(%edx) jne L285L259: incl %edx incl %ecxL250: cmpl %ecx,%ebx jne L266 cmpb $1,(%edx)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -