#define NULL ((void *)0)
typedef unsigned long size_t; // Customize by platform.
typedef long intptr_t;
typedef unsigned long uintptr_t;
typedef long scalar_t__; // Either arithmetic or pointer type.
/* By default, we understand bool (as a convenience). */
typedef int bool;
#define false 0
#define true 1

/* Forward declarations */

/* Type definitions */

/* Variables and functions */
int /*<<< orphan*/ proc21(int, int, int);
void proc22() {
  proc21(0x804b4e4, 0x40000000, 0x41100000);
  proc21(0x804b4fa, 0x40000000, 0x41000000);
  proc21(0x804b500, 0x40400000, 0x41000000);
  proc21(0x804b52d, 0x40000000, 0x40f00000);
  proc21(0x804b540, 0x40400000, 0x40f00000);
  proc21(0x804b56d, 0x40000000, 0x40e00000);
  proc21(0x804b578, 0x40400000, 0x40e00000);
  proc21(0x804b58b, 0x40000000, 0x40d00000);
  proc21(0x804b58d, 0x40400000, 0x40d00000);
  proc21(0x804b5a8, 0x40000000, 0x40c00000);
  proc21(0x804b5ab, 0x40400000, 0x40c00000);
  proc21(0x804b5be, 0x40000000, 0x40b00000);
  proc21(0x804b5c1, 0x40400000, 0x40b00000);
  proc21(0x804b5d3, 0x40000000, 0x40a00000);
  proc21(0x804b5d6, 0x40400000, 0x40a00000);
  proc21(0x804b5eb, 0x40000000, 0x40900000);
  proc21(0x804b5ee, 0x40400000, 0x40900000);
  proc21(0x804b604, 0x40000000, 0x40800000);
  proc21(0x804b607, 0x40400000, 0x40800000);
  proc21(0x804b619, 0x40000000, 0x40400000);
  proc21(0x804b620, 0x40400000, 0x40400000);
  proc21(0x804b64a, 0x40000000, 0x40200000);
  proc21(0x804b660, 0x40400000, 0x40200000);
  proc21(0x804b68a, 0x40000000, 0x40000000);
  proc21(0x804b68f, 0x40400000, 0x40000000);
  proc21(0x804b6a2, 0x40000000, 0x3fc00000);
  proc21(0x804b6a8, 0x40400000, 0x3fc00000);
  proc21(0x804b6c2, 0x40000000, 0x3f800000);
  proc21(0x804b6c4, 0x40400000, 0x3f800000);
  proc21(0x804b6df, 0x40000000, 0x3f000000);
  proc21(0x804b6e1, 0x40400000, 0x3f000000);
  return;
}


x86 assembly (clang, -O0):
<proc22>:
push   %rbp
mov    %rsp,%rbp
mov    $0x804b4e4,%edi
mov    $0x40000000,%esi
mov    $0x41100000,%edx
call   1030 <proc21@plt>
mov    $0x804b4fa,%edi
mov    $0x40000000,%esi
mov    $0x41000000,%edx
call   1030 <proc21@plt>
mov    $0x804b500,%edi
mov    $0x40400000,%esi
mov    $0x41000000,%edx
call   1030 <proc21@plt>
mov    $0x804b52d,%edi
mov    $0x40000000,%esi
mov    $0x40f00000,%edx
call   1030 <proc21@plt>
mov    $0x804b540,%edi
mov    $0x40400000,%esi
mov    $0x40f00000,%edx
call   1030 <proc21@plt>
mov    $0x804b56d,%edi
mov    $0x40000000,%esi
mov    $0x40e00000,%edx
call   1030 <proc21@plt>
mov    $0x804b578,%edi
mov    $0x40400000,%esi
mov    $0x40e00000,%edx
call   1030 <proc21@plt>
mov    $0x804b58b,%edi
mov    $0x40000000,%esi
mov    $0x40d00000,%edx
call   1030 <proc21@plt>
mov    $0x804b58d,%edi
mov    $0x40400000,%esi
mov    $0x40d00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5a8,%edi
mov    $0x40000000,%esi
mov    $0x40c00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5ab,%edi
mov    $0x40400000,%esi
mov    $0x40c00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5be,%edi
mov    $0x40000000,%esi
mov    $0x40b00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5c1,%edi
mov    $0x40400000,%esi
mov    $0x40b00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5d3,%edi
mov    $0x40000000,%esi
mov    $0x40a00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5d6,%edi
mov    $0x40400000,%esi
mov    $0x40a00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5eb,%edi
mov    $0x40000000,%esi
mov    $0x40900000,%edx
call   1030 <proc21@plt>
mov    $0x804b5ee,%edi
mov    $0x40400000,%esi
mov    $0x40900000,%edx
call   1030 <proc21@plt>
mov    $0x804b604,%edi
mov    $0x40000000,%esi
mov    $0x40800000,%edx
call   1030 <proc21@plt>
mov    $0x804b607,%edi
mov    $0x40400000,%esi
mov    $0x40800000,%edx
call   1030 <proc21@plt>
mov    $0x804b619,%edi
mov    $0x40000000,%esi
mov    $0x40400000,%edx
call   1030 <proc21@plt>
mov    $0x804b620,%edi
mov    $0x40400000,%edx
mov    %edx,%esi
call   1030 <proc21@plt>
mov    $0x804b64a,%edi
mov    $0x40000000,%esi
mov    $0x40200000,%edx
call   1030 <proc21@plt>
mov    $0x804b660,%edi
mov    $0x40400000,%esi
mov    $0x40200000,%edx
call   1030 <proc21@plt>
mov    $0x804b68a,%edi
mov    $0x40000000,%edx
mov    %edx,%esi
call   1030 <proc21@plt>
mov    $0x804b68f,%edi
mov    $0x40400000,%esi
mov    $0x40000000,%edx
call   1030 <proc21@plt>
mov    $0x804b6a2,%edi
mov    $0x40000000,%esi
mov    $0x3fc00000,%edx
call   1030 <proc21@plt>
mov    $0x804b6a8,%edi
mov    $0x40400000,%esi
mov    $0x3fc00000,%edx
call   1030 <proc21@plt>
mov    $0x804b6c2,%edi
mov    $0x40000000,%esi
mov    $0x3f800000,%edx
call   1030 <proc21@plt>
mov    $0x804b6c4,%edi
mov    $0x40400000,%esi
mov    $0x3f800000,%edx
call   1030 <proc21@plt>
mov    $0x804b6df,%edi
mov    $0x40000000,%esi
mov    $0x3f000000,%edx
call   1030 <proc21@plt>
mov    $0x804b6e1,%edi
mov    $0x40400000,%esi
mov    $0x3f000000,%edx
call   1030 <proc21@plt>
pop    %rbp
ret

x86 assembly (clang, -O2):
<proc22>:
push   %rax
mov    $0x804b4e4,%edi
mov    $0x40000000,%esi
mov    $0x41100000,%edx
call   1030 <proc21@plt>
mov    $0x804b4fa,%edi
mov    $0x40000000,%esi
mov    $0x41000000,%edx
call   1030 <proc21@plt>
mov    $0x804b500,%edi
mov    $0x40400000,%esi
mov    $0x41000000,%edx
call   1030 <proc21@plt>
mov    $0x804b52d,%edi
mov    $0x40000000,%esi
mov    $0x40f00000,%edx
call   1030 <proc21@plt>
mov    $0x804b540,%edi
mov    $0x40400000,%esi
mov    $0x40f00000,%edx
call   1030 <proc21@plt>
mov    $0x804b56d,%edi
mov    $0x40000000,%esi
mov    $0x40e00000,%edx
call   1030 <proc21@plt>
mov    $0x804b578,%edi
mov    $0x40400000,%esi
mov    $0x40e00000,%edx
call   1030 <proc21@plt>
mov    $0x804b58b,%edi
mov    $0x40000000,%esi
mov    $0x40d00000,%edx
call   1030 <proc21@plt>
mov    $0x804b58d,%edi
mov    $0x40400000,%esi
mov    $0x40d00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5a8,%edi
mov    $0x40000000,%esi
mov    $0x40c00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5ab,%edi
mov    $0x40400000,%esi
mov    $0x40c00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5be,%edi
mov    $0x40000000,%esi
mov    $0x40b00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5c1,%edi
mov    $0x40400000,%esi
mov    $0x40b00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5d3,%edi
mov    $0x40000000,%esi
mov    $0x40a00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5d6,%edi
mov    $0x40400000,%esi
mov    $0x40a00000,%edx
call   1030 <proc21@plt>
mov    $0x804b5eb,%edi
mov    $0x40000000,%esi
mov    $0x40900000,%edx
call   1030 <proc21@plt>
mov    $0x804b5ee,%edi
mov    $0x40400000,%esi
mov    $0x40900000,%edx
call   1030 <proc21@plt>
mov    $0x804b604,%edi
mov    $0x40000000,%esi
mov    $0x40800000,%edx
call   1030 <proc21@plt>
mov    $0x804b607,%edi
mov    $0x40400000,%esi
mov    $0x40800000,%edx
call   1030 <proc21@plt>
mov    $0x804b619,%edi
mov    $0x40000000,%esi
mov    $0x40400000,%edx
call   1030 <proc21@plt>
mov    $0x804b620,%edi
mov    $0x40400000,%esi
mov    $0x40400000,%edx
call   1030 <proc21@plt>
mov    $0x804b64a,%edi
mov    $0x40000000,%esi
mov    $0x40200000,%edx
call   1030 <proc21@plt>
mov    $0x804b660,%edi
mov    $0x40400000,%esi
mov    $0x40200000,%edx
call   1030 <proc21@plt>
mov    $0x804b68a,%edi
mov    $0x40000000,%esi
mov    $0x40000000,%edx
call   1030 <proc21@plt>
mov    $0x804b68f,%edi
mov    $0x40400000,%esi
mov    $0x40000000,%edx
call   1030 <proc21@plt>
mov    $0x804b6a2,%edi
mov    $0x40000000,%esi
mov    $0x3fc00000,%edx
call   1030 <proc21@plt>
mov    $0x804b6a8,%edi
mov    $0x40400000,%esi
mov    $0x3fc00000,%edx
call   1030 <proc21@plt>
mov    $0x804b6c2,%edi
mov    $0x40000000,%esi
mov    $0x3f800000,%edx
call   1030 <proc21@plt>
mov    $0x804b6c4,%edi
mov    $0x40400000,%esi
mov    $0x3f800000,%edx
call   1030 <proc21@plt>
mov    $0x804b6df,%edi
mov    $0x40000000,%esi
mov    $0x3f000000,%edx
call   1030 <proc21@plt>
mov    $0x804b6e1,%edi
mov    $0x40400000,%esi
mov    $0x3f000000,%edx
pop    %rax
jmp    1030 <proc21@plt>

LLVM IR (-O0):
define void @proc22() {
%1 = call i32 @proc21(i32 134526180, i32 1073741824, i32 1091567616)
%2 = call i32 @proc21(i32 134526202, i32 1073741824, i32 1090519040)
%3 = call i32 @proc21(i32 134526208, i32 1077936128, i32 1090519040)
%4 = call i32 @proc21(i32 134526253, i32 1073741824, i32 1089470464)
%5 = call i32 @proc21(i32 134526272, i32 1077936128, i32 1089470464)
%6 = call i32 @proc21(i32 134526317, i32 1073741824, i32 1088421888)
%7 = call i32 @proc21(i32 134526328, i32 1077936128, i32 1088421888)
%8 = call i32 @proc21(i32 134526347, i32 1073741824, i32 1087373312)
%9 = call i32 @proc21(i32 134526349, i32 1077936128, i32 1087373312)
%10 = call i32 @proc21(i32 134526376, i32 1073741824, i32 1086324736)
%11 = call i32 @proc21(i32 134526379, i32 1077936128, i32 1086324736)
%12 = call i32 @proc21(i32 134526398, i32 1073741824, i32 1085276160)
%13 = call i32 @proc21(i32 134526401, i32 1077936128, i32 1085276160)
%14 = call i32 @proc21(i32 134526419, i32 1073741824, i32 1084227584)
%15 = call i32 @proc21(i32 134526422, i32 1077936128, i32 1084227584)
%16 = call i32 @proc21(i32 134526443, i32 1073741824, i32 1083179008)
%17 = call i32 @proc21(i32 134526446, i32 1077936128, i32 1083179008)
%18 = call i32 @proc21(i32 134526468, i32 1073741824, i32 1082130432)
%19 = call i32 @proc21(i32 134526471, i32 1077936128, i32 1082130432)
%20 = call i32 @proc21(i32 134526489, i32 1073741824, i32 1077936128)
%21 = call i32 @proc21(i32 134526496, i32 1077936128, i32 1077936128)
%22 = call i32 @proc21(i32 134526538, i32 1073741824, i32 1075838976)
%23 = call i32 @proc21(i32 134526560, i32 1077936128, i32 1075838976)
%24 = call i32 @proc21(i32 134526602, i32 1073741824, i32 1073741824)
%25 = call i32 @proc21(i32 134526607, i32 1077936128, i32 1073741824)
%26 = call i32 @proc21(i32 134526626, i32 1073741824, i32 1069547520)
%27 = call i32 @proc21(i32 134526632, i32 1077936128, i32 1069547520)
%28 = call i32 @proc21(i32 134526658, i32 1073741824, i32 1065353216)
%29 = call i32 @proc21(i32 134526660, i32 1077936128, i32 1065353216)
%30 = call i32 @proc21(i32 134526687, i32 1073741824, i32 1056964608)
%31 = call i32 @proc21(i32 134526689, i32 1077936128, i32 1056964608)
ret void
}

LLVM IR (-O2):
define void @proc22() {
%1 = tail call i32 @proc21(i32 134526180, i32 1073741824, i32 1091567616)
%2 = tail call i32 @proc21(i32 134526202, i32 1073741824, i32 1090519040)
%3 = tail call i32 @proc21(i32 134526208, i32 1077936128, i32 1090519040)
%4 = tail call i32 @proc21(i32 134526253, i32 1073741824, i32 1089470464)
%5 = tail call i32 @proc21(i32 134526272, i32 1077936128, i32 1089470464)
%6 = tail call i32 @proc21(i32 134526317, i32 1073741824, i32 1088421888)
%7 = tail call i32 @proc21(i32 134526328, i32 1077936128, i32 1088421888)
%8 = tail call i32 @proc21(i32 134526347, i32 1073741824, i32 1087373312)
%9 = tail call i32 @proc21(i32 134526349, i32 1077936128, i32 1087373312)
%10 = tail call i32 @proc21(i32 134526376, i32 1073741824, i32 1086324736)
%11 = tail call i32 @proc21(i32 134526379, i32 1077936128, i32 1086324736)
%12 = tail call i32 @proc21(i32 134526398, i32 1073741824, i32 1085276160)
%13 = tail call i32 @proc21(i32 134526401, i32 1077936128, i32 1085276160)
%14 = tail call i32 @proc21(i32 134526419, i32 1073741824, i32 1084227584)
%15 = tail call i32 @proc21(i32 134526422, i32 1077936128, i32 1084227584)
%16 = tail call i32 @proc21(i32 134526443, i32 1073741824, i32 1083179008)
%17 = tail call i32 @proc21(i32 134526446, i32 1077936128, i32 1083179008)
%18 = tail call i32 @proc21(i32 134526468, i32 1073741824, i32 1082130432)
%19 = tail call i32 @proc21(i32 134526471, i32 1077936128, i32 1082130432)
%20 = tail call i32 @proc21(i32 134526489, i32 1073741824, i32 1077936128)
%21 = tail call i32 @proc21(i32 134526496, i32 1077936128, i32 1077936128)
%22 = tail call i32 @proc21(i32 134526538, i32 1073741824, i32 1075838976)
%23 = tail call i32 @proc21(i32 134526560, i32 1077936128, i32 1075838976)
%24 = tail call i32 @proc21(i32 134526602, i32 1073741824, i32 1073741824)
%25 = tail call i32 @proc21(i32 134526607, i32 1077936128, i32 1073741824)
%26 = tail call i32 @proc21(i32 134526626, i32 1073741824, i32 1069547520)
%27 = tail call i32 @proc21(i32 134526632, i32 1077936128, i32 1069547520)
%28 = tail call i32 @proc21(i32 134526658, i32 1073741824, i32 1065353216)
%29 = tail call i32 @proc21(i32 134526660, i32 1077936128, i32 1065353216)
%30 = tail call i32 @proc21(i32 134526687, i32 1073741824, i32 1056964608)
%31 = tail call i32 @proc21(i32 134526689, i32 1077936128, i32 1056964608)
ret void
}