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

```asm
<priorityScheduler>:
  endbr64
  push   %rbx
  mov    (%rdx),%r10d
  mov    %rdx,%rax
  mov    %rdi,%rcx
  mov    0x4(%rdx),%r9d
  mov    $0x1,%edx
  cmp    %r9d,%r10d
  jg     L13
  mov    %r10d,%r9d
  xor    %edx,%edx
L13:
  mov    0x8(%rax),%edi
  cmp    %edi,%r9d
  jle    L32
  mov    %edi,%r9d
  mov    $0x2,%edx
L32:
  mov    0xc(%rax),%edi
  lea    0xc(%rax),%r8
  cmp    %edi,%r9d
  jle    L41
  mov    %edi,%r9d
  mov    $0x3,%edx
L41:
  mov    0x10(%rax),%r11d
  lea    0x10(%rax),%rdi
  cmp    %r11d,%r9d
  jle    L14
  mov    %rdi,%rbx
  mov    $0x10,%edx
L55:
  lea    (%rsi,%rdx,1),%r9
  mov    %r11d,(%rax)
  add    %rcx,%rdx
  mov    %r10d,(%rbx)
  mov    (%rsi),%r10d
  mov    (%r9),%r11d
  mov    %r11d,(%rsi)
  mov    %r10d,(%r9)
  mov    (%rdx),%r10d
  mov    (%rcx),%r9d
  mov    %r10d,(%rcx)
  mov    %r9d,(%rdx)
  mov    0x4(%rax),%r10d
  mov    $0x2,%edx
  mov    0x8(%rax),%r9d
  cmp    %r9d,%r10d
  jg     L10
  mov    %r10d,%r9d
  mov    $0x1,%edx
L10:
  mov    0xc(%rax),%r11d
  cmp    %r11d,%r9d
  jle    L67
  mov    %r11d,%r9d
  mov    $0x3,%edx
L67:
  mov    0x10(%rax),%r11d
  cmp    %r11d,%r9d
  jg     L0
  shl    $0x2,%rdx
  mov    %r9d,%r11d
  lea    (%rax,%rdx,1),%rbx
L117:
  lea    (%rsi,%rdx,1),%r9
  mov    %r11d,0x4(%rax)
  add    %rcx,%rdx
  mov    %r10d,(%rbx)
  mov    0x4(%rsi),%r10d
  mov    (%r9),%r11d
  mov    %r11d,0x4(%rsi)
  mov    %r10d,(%r9)
  mov    (%rdx),%r10d
  mov    0x4(%rcx),%r9d
  mov    %r10d,0x4(%rcx)
  mov    %r9d,(%rdx)
  mov    0x8(%rax),%r10d
  mov    $0x3,%edx
  mov    0xc(%rax),%r9d
  cmp    %r9d,%r10d
  jg     L39
  mov    %r10d,%r9d
  mov    $0x2,%edx
L39:
  mov    0x10(%rax),%r11d
  cmp    %r11d,%r9d
  jg     L30
  shl    $0x2,%rdx
  mov    %r9d,%r11d
  lea    (%rax,%rdx,1),%rbx
L5:
  lea    (%rsi,%rdx,1),%r9
  mov    %r11d,0x8(%rax)
  add    %rcx,%rdx
  mov    %r10d,(%rbx)
  mov    0x8(%rsi),%r10d
  mov    (%r9),%r11d
  mov    %r11d,0x8(%rsi)
  mov    %r10d,(%r9)
  mov    (%rdx),%r10d
  mov    0x8(%rcx),%r9d
  mov    %r10d,0x8(%rcx)
  mov    %r9d,(%rdx)
  mov    0xc(%rax),%r9d
  mov    $0x10,%edx
  mov    0x10(%rax),%r10d
  cmp    %r10d,%r9d
  jg     L58
  mov    %r9d,%r10d
  mov    %r8,%rdi
  mov    $0xc,%edx
L58:
  mov    %r10d,0xc(%rax)
  lea    (%rsi,%rdx,1),%rax
  add    %rcx,%rdx
  mov    %r9d,(%rdi)
  mov    0xc(%rsi),%edi
  mov    (%rax),%r8d
  mov    %r8d,0xc(%rsi)
  mov    %edi,(%rax)
  mov    0xc(%rcx),%eax
  mov    (%rdx),%esi
  mov    %esi,0xc(%rcx)
  mov    %eax,(%rdx)
  pop    %rbx
  ret
  nop
L14:
  shl    $0x2,%rdx
  mov    %r9d,%r11d
  lea    (%rax,%rdx,1),%rbx
  jmp    L55
L30:
  mov    %rdi,%rbx
  mov    $0x10,%edx
  jmp    L5
  nopl   (%rax)
L0:
  mov    %rdi,%rbx
  mov    $0x10,%edx
  jmp    L117
```

assistant: ```c
void priorityScheduler(int process[], int burstTime[], int priority[]) {
  int i, j, temp, pos;
  for (i = 0; i < 5; i++) {
    pos = i;
    for (j = i + 1; j < 5; j++) {
      if (priority[j] < priority[pos])
        pos = j;
    }
    temp = priority[i];
    priority[i] = priority[pos];
    priority[pos] = temp;
    temp = burstTime[i];
    burstTime[i] = burstTime[pos];
    burstTime[pos] = temp;
    temp = process[i];
    process[i] = process[pos];
    process[pos] = temp;
  }
}
```