user: 请将以下的汇编代码转换成C语言代码：

```asm
<test_int_range>:
  endbr64
  push   %rbp
  mov    %rsp,%rbp
  sub    $0x20,%rsp
  mov    %edi,-0x14(%rbp)
  movl   $0x80000000,-0x8(%rbp)
  movl   $0x7fffffff,-0x4(%rbp)
  mov    -0x14(%rbp),%eax
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    -0x8(%rbp),%eax
  mov    $0x4d2,%esi
  mov    %eax,%edi
  call   <signed_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    $0xffffffff,%esi
  mov    $0xfffffffe,%edi
  call   <signed_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    $0x929,%esi
  mov    $0x4d3,%edi
  call   <signed_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    -0x4(%rbp),%eax
  lea    -0x1(%rax),%edx
  mov    -0x4(%rbp),%eax
  mov    %eax,%esi
  mov    %edx,%edi
  call   <signed_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    $0x1,%esi
  mov    $0xffffffff,%edi
  call   <signed_anti_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    $0xc,%esi
  mov    $0xfffffffe,%edi
  call   <signed_anti_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    $0x7b,%esi
  mov    $0xfffffffd,%edi
  call   <signed_anti_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    $0x4d2,%esi
  mov    $0xfffffffc,%edi
  call   <signed_anti_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    -0x8(%rbp),%eax
  add    $0x1,%eax
  mov    $0x4d1,%esi
  mov    %eax,%edi
  call   <signed_anti_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    -0x8(%rbp),%eax
  add    $0x2,%eax
  mov    $0x4d3,%esi
  mov    %eax,%edi
  call   <signed_anti_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    -0x4(%rbp),%eax
  mov    %eax,%esi
  mov    $0x0,%edi
  call   <signed_anti_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    -0x4(%rbp),%eax
  mov    %eax,%esi
  mov    $0x1,%edi
  call   <signed_anti_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  mov    -0x4(%rbp),%eax
  mov    %eax,%esi
  mov    $0x2,%edi
  call   <signed_anti_range@plt>
  mov    %eax,%edi
  call   <f_int_1@plt>
  mov    %eax,%edi
  call   <sink@plt>
  nop
  leave
  ret
```

assistant: ```c
void test_int_range(int n) {
  const int min = (-0x7fffffff - 1);
  const int max = 0x7fffffff;
  sink(f_int_1(n));
  sink(f_int_1(signed_range(min, 1234)));
  sink(f_int_1(signed_range(-2, -1)));
  sink(f_int_1(signed_range(1235, 2345)));
  sink(f_int_1(signed_range(max - 1, max)));
  sink(f_int_1(signed_anti_range(-1, 1)));
  sink(f_int_1(signed_anti_range(-2, 12)));
  sink(f_int_1(signed_anti_range(-3, 123)));
  sink(f_int_1(signed_anti_range(-4, 1234)));
  sink(f_int_1(signed_anti_range(min + 1, 1233)));
  sink(f_int_1(signed_anti_range(min + 2, 1235)));
  sink(f_int_1(signed_anti_range(0, max)));
  sink(f_int_1(signed_anti_range(1, max)));
  sink(f_int_1(signed_anti_range(2, max)));
}
```