// File: /workspace/github_c_makefile_star2_O3/CheneyThinker[P]jbyte/src/jbyte_attribute.c
// Function: analyzer_attributes
void analyzer_attributes(FILE* pReadFile, u1** constant_pool) {
  PRINTF_U2(attributes_count)
  if (attributes_count > 0) {
    for (u2 attributes_count_index = 0; attributes_count_index < attributes_count; attributes_count_index++) {
      PRINTF_U2(attribute_name_index)
      PRINTF_U4(attribute_length)
      if (attribute_length > 0) {
        u1* attribute_name = constant_pool[attribute_name_index];
        if (strcmp(attribute_name, "ConstantValue") == 0) {
          ConstantValue_attribute(pReadFile);
        } else if (strcmp(attribute_name, "Code") == 0) {
          Code_attribute(pReadFile, constant_pool);
        } else if (strcmp(attribute_name, "StackMapTable") == 0) {
          StackMapTable_attribute(pReadFile);
        } else if (strcmp(attribute_name, "Exceptions") == 0) {
          Exceptions_attribute(pReadFile);
        } else if (strcmp(attribute_name, "InnerClasses") == 0) {
          InnerClasses_attribute(pReadFile);
        } else if (strcmp(attribute_name, "EnclosingMethod") == 0) {
          EnclosingMethod_attribute(pReadFile);
        } else if (strcmp(attribute_name, "Synthetic") == 0) {
          Synthetic_attribute(pReadFile);
        } else if (strcmp(attribute_name, "Signature") == 0) {
          Signature_attribute(pReadFile);
        } else if (strcmp(attribute_name, "SourceFile") == 0) {
          SourceFile_attribute(pReadFile);
        } else if (strcmp(attribute_name, "SourceDebugExtension") == 0) {
          SourceDebugExtension_attribute(pReadFile, attribute_length);
        } else if (strcmp(attribute_name, "LineNumberTable") == 0) {
          LineNumberTable_attribute(pReadFile);
        } else if (strcmp(attribute_name, "LocalVariableTable") == 0) {
          LocalVariableTable_attribute(pReadFile);
        } else if (strcmp(attribute_name, "LocalVariableTypeTable") == 0) {
          LocalVariableTypeTable_attribute(pReadFile);
        } else if (strcmp(attribute_name, "Deprecated") == 0) {
          Deprecated_attribute(pReadFile);
        } else if (strcmp(attribute_name, "RuntimeVisibleAnnotations") == 0) {
          RuntimeVisibleAnnotations_attribute(pReadFile);
        } else if (strcmp(attribute_name, "RuntimeInvisibleAnnotations") == 0) {
          RuntimeInvisibleAnnotations_attribute(pReadFile);
        } else if (strcmp(attribute_name, "RuntimeVisibleParameterAnnotations") == 0) {
          RuntimeVisibleParameterAnnotations_attribute(pReadFile);
        } else if (strcmp(attribute_name, "RuntimeInvisibleParameterAnnotations") == 0) {
          RuntimeInvisibleParameterAnnotations_attribute(pReadFile);
        } else if (strcmp(attribute_name, "RuntimeVisibleTypeAnnotations") == 0) {
          RuntimeVisibleTypeAnnotations_attribute(pReadFile);
        } else if (strcmp(attribute_name, "RuntimeInvisibleTypeAnnotations") == 0) {
          RuntimeInvisibleTypeAnnotations_attribute(pReadFile);
        } else if (strcmp(attribute_name, "AnnotationDefault") == 0) {
          AnnotationDefault_attribute(pReadFile);
        } else if (strcmp(attribute_name, "BootstrapMethods") == 0) {
          BootstrapMethods_attribute(pReadFile);
        } else if (strcmp(attribute_name, "MethodParameters") == 0) {
          MethodParameters_attribute(pReadFile);
        } else if (strcmp(attribute_name, "Module") == 0) {
          Module_attribute(pReadFile);
        } else if (strcmp(attribute_name, "ModulePackages") == 0) {
          ModulePackages_attribute(pReadFile);
        } else if (strcmp(attribute_name, "ModuleMainClass") == 0) {
          ModuleMainClass_attribute(pReadFile);
        } else if (strcmp(attribute_name, "NestHost") == 0) {
          NestHost_attribute(pReadFile);
        } else if (strcmp(attribute_name, "NestMembers") == 0) {
          NestMembers_attribute(pReadFile);
        } else {
          u1 info[attribute_length];
          printf("info:");
          for (u4 attribute_length_index = 0; attribute_length_index < attribute_length; attribute_length_index++) {
            fread(&info[attribute_length_index], 1, sizeof(u1), pReadFile);
            printf(" %02x", info[attribute_length_index]);
          }
          printf("\n");
        }
      }
    }
  }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rsi, -0x40(%rbp)
movq %rdi, %r14
leaq -0x32(%rbp), %r15
movl $0x1, %esi
movl $0x2, %edx
movq %r15, %rdi
movq %r14, %rcx
callq 0x1080
movzwl (%r15), %ebx
movl %ebx, %eax
rolw $0x8, %ax
movw %ax, -0x2a(%rbp)
movzwl %ax, %esi
leaq 0x7178(%rip), %rdi      # 0x8474
xorl %eax, %eax
callq 0x10b0
testw %bx, %bx
je 0x177a
xorl %ebx, %ebx
movl $0x1, %esi
movl $0x2, %edx
leaq -0x2c(%rbp), %rdi
movq %r14, %rcx
callq 0x1080
movzwl -0x2c(%rbp), %eax
rolw $0x8, %ax
movzwl %ax, %r13d
leaq 0x7155(%rip), %rdi      # 0x848c
movl %r13d, %esi
xorl %eax, %eax
callq 0x10b0
movl $0x1, %esi
movl $0x4, %edx
leaq -0x30(%rbp), %rdi
movq %r14, %rcx
callq 0x1080
movl -0x30(%rbp), %r15d
movl %r15d, %r12d
bswapl %r12d
leaq 0x7140(%rip), %rdi      # 0x84a8
movl %r12d, %esi
xorl %eax, %eax
callq 0x10b0
testl %r15d, %r15d
je 0x171c
movq -0x40(%rbp), %rax
movq (%rax,%r13,8), %r13
movq %r13, %rdi
leaq 0x7133(%rip), %rsi      # 0x84c0
callq 0x10d0
testl %eax, %eax
je 0x167b
movq %r13, %rdi
leaq 0x712a(%rip), %rsi      # 0x84ce
callq 0x10d0
testl %eax, %eax
je 0x1688
movq %r13, %rdi
leaq 0x7118(%rip), %rsi      # 0x84d3
callq 0x10d0
testl %eax, %eax
je 0x1699
movq %r13, %rdi
leaq 0x710f(%rip), %rsi      # 0x84e1
callq 0x10d0
testl %eax, %eax
je 0x16a3
movq %r13, %rdi
leaq 0x7103(%rip), %rsi      # 0x84ec
callq 0x10d0
testl %eax, %eax
je 0x16ad
movq %r13, %rdi
leaq 0x70f9(%rip), %rsi      # 0x84f9
callq 0x10d0
testl %eax, %eax
je 0x16b7
movq %r13, %rdi
leaq 0x70f2(%rip), %rsi      # 0x8509
callq 0x10d0
testl %eax, %eax
je 0x171c
movq %r13, %rdi
leaq 0x70e5(%rip), %rsi      # 0x8513
callq 0x10d0
testl %eax, %eax
je 0x16c1
movq %r13, %rdi
leaq 0x70d8(%rip), %rsi      # 0x851d
callq 0x10d0
testl %eax, %eax
je 0x16cb
movq %r13, %rdi
leaq 0x70cc(%rip), %rsi      # 0x8528
callq 0x10d0
testl %eax, %eax
je 0x16d5
movq %r13, %rdi
leaq 0x70ca(%rip), %rsi      # 0x853d
callq 0x10d0
testl %eax, %eax
je 0x16e2
movq %r13, %rdi
leaq 0x70c3(%rip), %rsi      # 0x854d
callq 0x10d0
testl %eax, %eax
je 0x16ec
movq %r13, %rdi
leaq 0x70bf(%rip), %rsi      # 0x8560
callq 0x10d0
testl %eax, %eax
je 0x16f6
movq %r13, %rdi
leaq 0x70bf(%rip), %rsi      # 0x8577
callq 0x10d0
testl %eax, %eax
je 0x171c
movq %r13, %rdi
leaq 0x70b3(%rip), %rsi      # 0x8582
callq 0x10d0
testl %eax, %eax
je 0x1700
movq %r13, %rdi
leaq 0x70b6(%rip), %rsi      # 0x859c
callq 0x10d0
testl %eax, %eax
je 0x1700
movq %r13, %rdi
leaq 0x70bb(%rip), %rsi      # 0x85b8
callq 0x10d0
testl %eax, %eax
je 0x170a
movq %r13, %rdi
leaq 0x70c7(%rip), %rsi      # 0x85db
callq 0x10d0
testl %eax, %eax
je 0x170a
movq %r13, %rdi
leaq 0x70d5(%rip), %rsi      # 0x8600
callq 0x10d0
testl %eax, %eax
je 0x1714
movq %r13, %rdi
leaq 0x70dc(%rip), %rsi      # 0x861e
callq 0x10d0
testl %eax, %eax
je 0x1714
movq %r13, %rdi
leaq 0x70e5(%rip), %rsi      # 0x863e
callq 0x10d0
testl %eax, %eax
je 0x172a
movq %r13, %rdi
leaq 0x70e0(%rip), %rsi      # 0x8650
callq 0x10d0
testl %eax, %eax
je 0x1734
movq %r13, %rdi
leaq 0x70da(%rip), %rsi      # 0x8661
callq 0x10d0
testl %eax, %eax
je 0x173e
movq %r13, %rdi
leaq 0x70d4(%rip), %rsi      # 0x8672
callq 0x10d0
testl %eax, %eax
je 0x1748
movq %r13, %rdi
leaq 0x70c4(%rip), %rsi      # 0x8679
callq 0x10d0
testl %eax, %eax
je 0x1752
movq %r13, %rdi
leaq 0x70bc(%rip), %rsi      # 0x8688
callq 0x10d0
testl %eax, %eax
je 0x175c
movq %r13, %rdi
leaq 0x70b5(%rip), %rsi      # 0x8698
callq 0x10d0
testl %eax, %eax
je 0x1766
movq %r13, %rdi
leaq 0x70a7(%rip), %rsi      # 0x86a1
callq 0x10d0
testl %eax, %eax
je 0x1770
movq %rsp, -0x48(%rbp)
movl %r12d, %eax
movq %rsp, %r13
addq $0xf, %rax
andq $-0x10, %rax
subq %rax, %r13
movq %r13, %rsp
leaq 0x7087(%rip), %rdi      # 0x86ad
xorl %eax, %eax
callq 0x10b0
cmpl $0x1, %r12d
adcl $0x0, %r12d
leaq 0x7077(%rip), %r15      # 0x86b3
movl $0x1, %esi
movl $0x1, %edx
movq %r13, %rdi
movq %r14, %rcx
callq 0x1080
movzbl (%r13), %esi
movq %r15, %rdi
xorl %eax, %eax
callq 0x10b0
incq %r13
decq %r12
jne 0x163c
movl $0xa, %edi
callq 0x1040
movq -0x48(%rbp), %rsp
jmp 0x171c
movq %r14, %rdi
callq 0x1789
jmp 0x171c
movq %r14, %rdi
movq -0x40(%rbp), %rsi
callq 0x17c6
jmp 0x171c
movq %r14, %rdi
callq 0x3bcc
jmp 0x171c
movq %r14, %rdi
callq 0x3e4d
jmp 0x171c
movq %r14, %rdi
callq 0x3f24
jmp 0x171c
movq %r14, %rdi
callq 0x4066
jmp 0x171c
movq %r14, %rdi
callq 0x40e6
jmp 0x171c
movq %r14, %rdi
callq 0x4123
jmp 0x171c
movq %r14, %rdi
movl %r12d, %esi
callq 0x4160
jmp 0x171c
movq %r14, %rdi
callq 0x41d4
jmp 0x171c
movq %r14, %rdi
callq 0x42ad
jmp 0x171c
movq %r14, %rdi
callq 0x441e
jmp 0x171c
movq %r14, %rdi
callq 0x516f
jmp 0x171c
movq %r14, %rdi
callq 0x51e1
jmp 0x171c
movq %r14, %rdi
callq 0x5318
incl %ebx
cmpw -0x2a(%rbp), %bx
jb 0x130e
jmp 0x177a
movq %r14, %rdi
callq 0x58b4
jmp 0x171c
movq %r14, %rdi
callq 0x45db
jmp 0x171c
movq %r14, %rdi
callq 0x474a
jmp 0x171c
movq %r14, %rdi
callq 0x4809
jmp 0x171c
movq %r14, %rdi
callq 0x4e97
jmp 0x171c
movq %r14, %rdi
callq 0x4f6e
jmp 0x171c
movq %r14, %rdi
callq 0x4fab
jmp 0x171c
movq %r14, %rdi
callq 0x4fe8
jmp 0x171c
leaq -0x28(%rbp), %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq