// File: /workspace/github_c_makefile_star2_O2/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
pushq $0x1
popq %rsi
pushq $0x2
popq %rdx
movq %r15, %rdi
movq %r14, %rcx
callq 0x1080
movzwl (%r15), %r15d
movl %r15d, %eax
rolw $0x8, %ax
movw %ax, -0x2a(%rbp)
movzwl %ax, %esi
leaq 0x617b(%rip), %rdi      # 0x7474
xorl %eax, %eax
callq 0x10b0
testw %r15w, %r15w
je 0x1768
xorl %r12d, %r12d
cmpw -0x2a(%rbp), %r12w
jae 0x1768
leaq -0x2c(%rbp), %rdi
pushq $0x1
popq %rbx
movq %rbx, %rsi
pushq $0x2
popq %rdx
movq %r14, %rcx
callq 0x1080
movzwl -0x2c(%rbp), %eax
rolw $0x8, %ax
movzwl %ax, %r13d
leaq 0x614c(%rip), %rdi      # 0x748c
movl %r13d, %esi
xorl %eax, %eax
callq 0x10b0
leaq -0x30(%rbp), %rdi
movq %rbx, %rsi
pushq $0x4
popq %rdx
movq %r14, %rcx
callq 0x1080
movl -0x30(%rbp), %r15d
movl %r15d, %ebx
bswapl %ebx
leaq 0x613c(%rip), %rdi      # 0x74a8
movl %ebx, %esi
xorl %eax, %eax
callq 0x10b0
testl %r15d, %r15d
je 0x1702
movq -0x40(%rbp), %rax
movq (%rax,%r13,8), %r13
movq %r13, %rdi
leaq 0x6130(%rip), %rsi      # 0x74c0
callq 0x10d0
testl %eax, %eax
je 0x1662
movq %r13, %rdi
leaq 0x6127(%rip), %rsi      # 0x74ce
callq 0x10d0
testl %eax, %eax
je 0x166f
movq %r13, %rdi
leaq 0x6115(%rip), %rsi      # 0x74d3
callq 0x10d0
testl %eax, %eax
je 0x1680
movq %r13, %rdi
leaq 0x610c(%rip), %rsi      # 0x74e1
callq 0x10d0
testl %eax, %eax
je 0x168a
movq %r13, %rdi
leaq 0x6100(%rip), %rsi      # 0x74ec
callq 0x10d0
testl %eax, %eax
je 0x1694
movq %r13, %rdi
leaq 0x60f6(%rip), %rsi      # 0x74f9
callq 0x10d0
testl %eax, %eax
je 0x169e
movq %r13, %rdi
leaq 0x60ef(%rip), %rsi      # 0x7509
callq 0x10d0
testl %eax, %eax
je 0x1702
movq %r13, %rdi
leaq 0x60e2(%rip), %rsi      # 0x7513
callq 0x10d0
testl %eax, %eax
je 0x16a8
movq %r13, %rdi
leaq 0x60d5(%rip), %rsi      # 0x751d
callq 0x10d0
testl %eax, %eax
je 0x16b2
movq %r13, %rdi
leaq 0x60c9(%rip), %rsi      # 0x7528
callq 0x10d0
testl %eax, %eax
je 0x16bc
movq %r13, %rdi
leaq 0x60c7(%rip), %rsi      # 0x753d
callq 0x10d0
testl %eax, %eax
je 0x16c8
movq %r13, %rdi
leaq 0x60c0(%rip), %rsi      # 0x754d
callq 0x10d0
testl %eax, %eax
je 0x16d2
movq %r13, %rdi
leaq 0x60bc(%rip), %rsi      # 0x7560
callq 0x10d0
testl %eax, %eax
je 0x16dc
movq %r13, %rdi
leaq 0x60bc(%rip), %rsi      # 0x7577
callq 0x10d0
testl %eax, %eax
je 0x1702
movq %r13, %rdi
leaq 0x60b0(%rip), %rsi      # 0x7582
callq 0x10d0
testl %eax, %eax
je 0x16e6
movq %r13, %rdi
leaq 0x60b3(%rip), %rsi      # 0x759c
callq 0x10d0
testl %eax, %eax
je 0x16e6
movq %r13, %rdi
leaq 0x60b8(%rip), %rsi      # 0x75b8
callq 0x10d0
testl %eax, %eax
je 0x16f0
movq %r13, %rdi
leaq 0x60c4(%rip), %rsi      # 0x75db
callq 0x10d0
testl %eax, %eax
je 0x16f0
movq %r13, %rdi
leaq 0x60d2(%rip), %rsi      # 0x7600
callq 0x10d0
testl %eax, %eax
je 0x16fa
movq %r13, %rdi
leaq 0x60d9(%rip), %rsi      # 0x761e
callq 0x10d0
testl %eax, %eax
je 0x16fa
movq %r13, %rdi
leaq 0x60e2(%rip), %rsi      # 0x763e
callq 0x10d0
testl %eax, %eax
je 0x170a
movq %r13, %rdi
leaq 0x60dd(%rip), %rsi      # 0x7650
callq 0x10d0
testl %eax, %eax
je 0x1714
movq %r13, %rdi
leaq 0x60d7(%rip), %rsi      # 0x7661
callq 0x10d0
testl %eax, %eax
je 0x171e
movq %r13, %rdi
leaq 0x60d1(%rip), %rsi      # 0x7672
callq 0x10d0
testl %eax, %eax
je 0x1728
movq %r13, %rdi
leaq 0x60c1(%rip), %rsi      # 0x7679
callq 0x10d0
testl %eax, %eax
je 0x1732
movq %r13, %rdi
leaq 0x60b9(%rip), %rsi      # 0x7688
callq 0x10d0
testl %eax, %eax
je 0x173c
movq %r13, %rdi
leaq 0x60b2(%rip), %rsi      # 0x7698
callq 0x10d0
testl %eax, %eax
je 0x1754
movq %r13, %rdi
leaq 0x60a4(%rip), %rsi      # 0x76a1
callq 0x10d0
testl %eax, %eax
je 0x175e
movq %rsp, -0x48(%rbp)
movl %ebx, %r13d
movq %rsp, %r15
leaq 0xf(%r13), %rax
andq $-0x10, %rax
subq %rax, %r15
movq %r15, %rsp
leaq 0x6084(%rip), %rdi      # 0x76ad
xorl %eax, %eax
callq 0x10b0
subq $0x1, %r13
jb 0x1746
movq %r15, %rdi
pushq $0x1
popq %rdx
movq %rdx, %rsi
movq %r14, %rcx
callq 0x1080
movzbl (%r15), %esi
leaq 0x605d(%rip), %rdi      # 0x76b3
xorl %eax, %eax
callq 0x10b0
incq %r15
jmp 0x1630
movq %r14, %rdi
callq 0x1777
jmp 0x1702
movq %r14, %rdi
movq -0x40(%rbp), %rsi
callq 0x17b0
jmp 0x1702
movq %r14, %rdi
callq 0x3a86
jmp 0x1702
movq %r14, %rdi
callq 0x3ca5
jmp 0x1702
movq %r14, %rdi
callq 0x3d65
jmp 0x1702
movq %r14, %rdi
callq 0x3e8c
jmp 0x1702
movq %r14, %rdi
callq 0x3f14
jmp 0x1702
movq %r14, %rdi
callq 0x3f4d
jmp 0x1702
movq %r14, %rdi
movl %ebx, %esi
callq 0x3f86
jmp 0x1702
movq %r14, %rdi
callq 0x3ff3
jmp 0x1702
movq %r14, %rdi
callq 0x40b6
jmp 0x1702
movq %r14, %rdi
callq 0x4208
jmp 0x1702
movq %r14, %rdi
callq 0x4e31
jmp 0x1702
movq %r14, %rdi
callq 0x4e89
jmp 0x1702
movq %r14, %rdi
callq 0x4fb1
incl %r12d
jmp 0x130d
movq %r14, %rdi
callq 0x5441
jmp 0x1702
movq %r14, %rdi
callq 0x43a6
jmp 0x1702
movq %r14, %rdi
callq 0x44f1
jmp 0x1702
movq %r14, %rdi
callq 0x45a9
jmp 0x1702
movq %r14, %rdi
callq 0x4b9b
jmp 0x1702
movq %r14, %rdi
callq 0x4c5b
jmp 0x1702
pushq $0xa
popq %rdi
callq 0x1040
movq -0x48(%rbp), %rsp
jmp 0x1702
movq %r14, %rdi
callq 0x4c94
jmp 0x1702
movq %r14, %rdi
callq 0x4ccd
jmp 0x1702
leaq -0x28(%rbp), %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq