unsigned char
ieee_p_2592010699_sub_381458914702604565_503743352(char *t1, unsigned char t2) {
  char t4[8];
  unsigned char t0;
  char *t5;
  char *t6;
  static char *nl0[] = {&&LAB3, &&LAB3, &&LAB4, &&LAB4, &&LAB3,
                        &&LAB3, &&LAB4, &&LAB4, &&LAB3};
LAB0:
  t5 = (t4 + 4U);
  *((unsigned char *)t5) = t2;
  t6 = (char *)((nl0) + t2);
  goto **((char **)t6);
LAB2:
  t0 = (unsigned char)0;
LAB1:
  return t0;
LAB3:
  t0 = (unsigned char)1;
  goto LAB1;
LAB4:
  goto LAB2;
LAB5:
  goto LAB2;
LAB6:;
}


x86 assembly (clang, -O0):
<ieee_p_2592010699_sub_381458914702604565_503743352>:
push   %rbp
mov    %rsp,%rbp
mov    %sil,%al
mov    %rdi,-0x10(%rbp)
mov    %al,-0x11(%rbp)
lea    -0x19(%rbp),%rax
add    $0x4,%rax
mov    %rax,-0x28(%rbp)
mov    -0x11(%rbp),%cl
mov    -0x28(%rbp),%rax
mov    %cl,(%rax)
movzbl -0x11(%rbp),%eax
movslq %eax,%rcx
lea    0x2eff(%rip),%rax
shl    $0x3,%rcx
add    %rcx,%rax
mov    %rax,-0x30(%rbp)
mov    -0x30(%rbp),%rax
mov    (%rax),%rax
mov    %rax,-0x38(%rbp)
jmp    116f <ieee_p_2592010699_sub_381458914702604565_503743352+0x6f>
movb   $0x0,-0x1a(%rbp)
mov    -0x1a(%rbp),%al
mov    %al,-0x1(%rbp)
jmp    1169 <ieee_p_2592010699_sub_381458914702604565_503743352+0x69>
movb   $0x1,-0x1a(%rbp)
jmp    1150 <ieee_p_2592010699_sub_381458914702604565_503743352+0x50>
jmp    114c <ieee_p_2592010699_sub_381458914702604565_503743352+0x4c>
movzbl -0x1(%rbp),%eax
pop    %rbp
ret
mov    -0x38(%rbp),%rax
jmp    *%rax

x86 assembly (clang, -O2):
<ieee_p_2592010699_sub_381458914702604565_503743352>:
mov    %esi,%eax
lea    0x2cf7(%rip),%rcx
jmp    *(%rcx,%rax,8)
mov    $0x1,%al
ret
xor    %eax,%eax
ret

LLVM IR (-O0):
@ieee_p_2592010699_sub_381458914702604565_503743352.nl0 = internal global [9 x i8*] [i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %26), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %26), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %27), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %27), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %26), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %26), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %27), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %27), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %26)]
define zeroext i8 @ieee_p_2592010699_sub_381458914702604565_503743352(i8* %0, i8 zeroext %1) {
%3 = alloca i8
%4 = alloca i8*
%5 = alloca i8
%6 = alloca [8 x i8]
%7 = alloca i8
%8 = alloca i8*
%9 = alloca i8*
store i8* %0, i8** %4
store i8 %1, i8* %5
br label %10
10: ; preds = %2
%11 = getelementptr inbounds [8 x i8], [8 x i8]* %6, i64 0, i64 0
%12 = getelementptr inbounds i8, i8* %11, i64 4
store i8* %12, i8** %8
%13 = load i8, i8* %5
%14 = load i8*, i8** %8
store i8 %13, i8* %14
%15 = load i8, i8* %5
%16 = zext i8 %15 to i32
%17 = sext i32 %16 to i64
%18 = getelementptr inbounds i8*, i8** getelementptr inbounds ([9 x i8*], [9 x i8*]* @ieee_p_2592010699_sub_381458914702604565_503743352.nl0, i64 0, i64 0), i64 %17
%19 = bitcast i8** %18 to i8*
store i8* %19, i8** %9
%20 = load i8*, i8** %9
%21 = bitcast i8* %20 to i8**
%22 = load i8*, i8** %21
br label %32
23: ; preds = %28, %27
store i8 0, i8* %7
br label %24
24: ; preds = %26, %23
%25 = load i8, i8* %7
store i8 %25, i8* %3
br label %30
26: ; preds = %32, %32, %32, %32, %32
store i8 1, i8* %7
br label %24
27: ; preds = %32, %32, %32, %32
br label %23
28: ; No predecessors!
br label %23
29: ; No predecessors!
br label %30
30: ; preds = %29, %24
%31 = load i8, i8* %3
ret i8 %31
32: ; preds = %10
%33 = phi i8* [ %22, %10 ]
indirectbr i8* %33, [label %26, label %26, label %27, label %27, label %26, label %26, label %27, label %27, label %26]
}

LLVM IR (-O2):
@ieee_p_2592010699_sub_381458914702604565_503743352.nl0 = internal unnamed_addr constant [9 x i8*] [i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %6), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %6), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %8), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %8), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %6), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %6), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %8), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %8), i8* blockaddress(@ieee_p_2592010699_sub_381458914702604565_503743352, %6)]
define zeroext i8 @ieee_p_2592010699_sub_381458914702604565_503743352(i8* nocapture readnone %0, i8 zeroext %1) {
%3 = zext i8 %1 to i64
%4 = getelementptr inbounds [9 x i8*], [9 x i8*]* @ieee_p_2592010699_sub_381458914702604565_503743352.nl0, i64 0, i64 %3
%5 = load i8*, i8** %4
indirectbr i8* %5, [label %6, label %8]
6: ; preds = %2, %8
%7 = phi i8 [ 0, %8 ], [ 1, %2 ]
ret i8 %7
8: ; preds = %2
br label %6
}