The portion of the generated assembly code implementing the C function int (int x, int y, int z) is as follows: Based on this assembly code, fill in the missing portions of the C code. Verify your answer using gcc compiler. Note: x in %edi, y in %esi, z in %edx.
Extracted text: func (int, int, int): pushq %rbp movq %rsp, %rbp movl %edi, -20(%rbp) movl %esi, -24(%rbp) movl %edx, -28(%rbp) movl -20 ( %rbp), %edx movl -24 ( %rbp), %eax addl $edx, %eaх $11, %eax Fill in this c code based on the assembly code: addl movl Веax, -4 (8rbp) movl -4 ( %rbp), %eax Int func(int x, int y, int z){ subl $4, %eax movl веах, -8(8rbp) } int main(){ } movl -8 ( %rbp), %eax popq %rbp ret main: pushq %rbp movq %rsp, %rbp subq $16, %rsp movl $3, %edx movl $2, %esi movl $1, %edi call func(int, int, int) movl %eax, -4(%rbp) movl $0, %eax leave ret