// File: /workspace/github_c_makefile_star2_O0/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
subq $0x50, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rcx
leaq -0x12(%rbp), %rdi
movl $0x1, %esi
movl $0x2, %edx
callq 0x1050
movzwl -0x12(%rbp), %eax
shll $0x8, %eax
andl $0xff00, %eax           # imm = 0xFF00
movzwl -0x12(%rbp), %ecx
sarl $0x8, %ecx
andl $0xff, %ecx
orl %ecx, %eax
movw %ax, -0x12(%rbp)
movzwl -0x12(%rbp), %esi
leaq 0xa2c7(%rip), %rdi      # 0xb648
movb $0x0, %al
callq 0x1090
movzwl -0x12(%rbp), %eax
cmpl $0x0, %eax
jle 0x192c
movw $0x0, -0x14(%rbp)
movzwl -0x14(%rbp), %eax
movzwl -0x12(%rbp), %ecx
cmpl %ecx, %eax
jge 0x192a
movq -0x8(%rbp), %rcx
leaq -0x16(%rbp), %rdi
movl $0x1, %esi
movl $0x2, %edx
callq 0x1050
movzwl -0x16(%rbp), %eax
shll $0x8, %eax
andl $0xff00, %eax           # imm = 0xFF00
movzwl -0x16(%rbp), %ecx
sarl $0x8, %ecx
andl $0xff, %ecx
orl %ecx, %eax
movw %ax, -0x16(%rbp)
movzwl -0x16(%rbp), %esi
leaq 0xa274(%rip), %rdi      # 0xb660
movb $0x0, %al
callq 0x1090
movq -0x8(%rbp), %rcx
leaq -0x1c(%rbp), %rdi
movl $0x1, %esi
movl $0x4, %edx
callq 0x1050
movl -0x1c(%rbp), %eax
shll $0x18, %eax
andl $0xff000000, %eax       # imm = 0xFF000000
movl -0x1c(%rbp), %ecx
shll $0x8, %ecx
andl $0xff0000, %ecx         # imm = 0xFF0000
orl %ecx, %eax
movl -0x1c(%rbp), %ecx
shrl $0x18, %ecx
andl $0xff, %ecx
orl %ecx, %eax
movl -0x1c(%rbp), %ecx
shrl $0x8, %ecx
andl $0xff00, %ecx           # imm = 0xFF00
orl %ecx, %eax
movl %eax, -0x1c(%rbp)
movl -0x1c(%rbp), %esi
leaq 0xa230(%rip), %rdi      # 0xb67c
movb $0x0, %al
callq 0x1090
cmpl $0x0, -0x1c(%rbp)
jbe 0x1917
movq -0x10(%rbp), %rax
movzwl -0x16(%rbp), %ecx
movq (%rax,%rcx,8), %rax
movq %rax, -0x28(%rbp)
movq -0x28(%rbp), %rdi
leaq 0xa21c(%rip), %rsi      # 0xb694
callq 0x10b0
cmpl $0x0, %eax
jne 0x1490
movq -0x8(%rbp), %rdi
callq 0x1940
jmp 0x1915
movq -0x28(%rbp), %rdi
leaq 0xa207(%rip), %rsi      # 0xb6a2
callq 0x10b0
cmpl $0x0, %eax
jne 0x14b7
movq -0x8(%rbp), %rdi
movq -0x10(%rbp), %rsi
callq 0x19a0
jmp 0x1913
movq -0x28(%rbp), %rdi
leaq 0xa1e5(%rip), %rsi      # 0xb6a7
callq 0x10b0
cmpl $0x0, %eax
jne 0x14da
movq -0x8(%rbp), %rdi
callq 0x5340
jmp 0x1911
movq -0x28(%rbp), %rdi
leaq 0xa1d0(%rip), %rsi      # 0xb6b5
callq 0x10b0
cmpl $0x0, %eax
jne 0x14fd
movq -0x8(%rbp), %rdi
callq 0x5730
jmp 0x190f
movq -0x28(%rbp), %rdi
leaq 0xa1b8(%rip), %rsi      # 0xb6c0
callq 0x10b0
cmpl $0x0, %eax
jne 0x1520
movq -0x8(%rbp), %rdi
callq 0x5860
jmp 0x190d
movq -0x28(%rbp), %rdi
leaq 0xa1a2(%rip), %rsi      # 0xb6cd
callq 0x10b0
cmpl $0x0, %eax
jne 0x1543
movq -0x8(%rbp), %rdi
callq 0x5a10
jmp 0x190b
movq -0x28(%rbp), %rdi
leaq 0xa18f(%rip), %rsi      # 0xb6dd
callq 0x10b0
cmpl $0x0, %eax
jne 0x1566
movq -0x8(%rbp), %rdi
callq 0x5ac0
jmp 0x1909
movq -0x28(%rbp), %rdi
leaq 0xa176(%rip), %rsi      # 0xb6e7
callq 0x10b0
cmpl $0x0, %eax
jne 0x1589
movq -0x8(%rbp), %rdi
callq 0x5ad0
jmp 0x1907
movq -0x28(%rbp), %rdi
leaq 0xa15d(%rip), %rsi      # 0xb6f1
callq 0x10b0
cmpl $0x0, %eax
jne 0x15ac
movq -0x8(%rbp), %rdi
callq 0x5b30
jmp 0x1905
movq -0x28(%rbp), %rdi
leaq 0xa145(%rip), %rsi      # 0xb6fc
callq 0x10b0
cmpl $0x0, %eax
jne 0x15d2
movq -0x8(%rbp), %rdi
movl -0x1c(%rbp), %esi
callq 0x5b90
jmp 0x1903
movq -0x28(%rbp), %rdi
leaq 0xa134(%rip), %rsi      # 0xb711
callq 0x10b0
cmpl $0x0, %eax
jne 0x15f5
movq -0x8(%rbp), %rdi
callq 0x5c30
jmp 0x1901
movq -0x28(%rbp), %rdi
leaq 0xa121(%rip), %rsi      # 0xb721
callq 0x10b0
cmpl $0x0, %eax
jne 0x1618
movq -0x8(%rbp), %rdi
callq 0x5d50
jmp 0x18ff
movq -0x28(%rbp), %rdi
leaq 0xa111(%rip), %rsi      # 0xb734
callq 0x10b0
cmpl $0x0, %eax
jne 0x163b
movq -0x8(%rbp), %rdi
callq 0x5f50
jmp 0x18fd
movq -0x28(%rbp), %rdi
leaq 0xa105(%rip), %rsi      # 0xb74b
callq 0x10b0
cmpl $0x0, %eax
jne 0x165e
movq -0x8(%rbp), %rdi
callq 0x6150
jmp 0x18fb
movq -0x28(%rbp), %rdi
leaq 0xa0ed(%rip), %rsi      # 0xb756
callq 0x10b0
cmpl $0x0, %eax
jne 0x1681
movq -0x8(%rbp), %rdi
callq 0x6160
jmp 0x18f9
movq -0x28(%rbp), %rdi
leaq 0xa0e4(%rip), %rsi      # 0xb770
callq 0x10b0
cmpl $0x0, %eax
jne 0x16a4
movq -0x8(%rbp), %rdi
callq 0x6180
jmp 0x18f7
movq -0x28(%rbp), %rdi
leaq 0xa0dd(%rip), %rsi      # 0xb78c
callq 0x10b0
cmpl $0x0, %eax
jne 0x16c7
movq -0x8(%rbp), %rdi
callq 0x61a0
jmp 0x18f5
movq -0x28(%rbp), %rdi
leaq 0xa0dd(%rip), %rsi      # 0xb7af
callq 0x10b0
cmpl $0x0, %eax
jne 0x16ea
movq -0x8(%rbp), %rdi
callq 0x61c0
jmp 0x18f3
movq -0x28(%rbp), %rdi
leaq 0xa0df(%rip), %rsi      # 0xb7d4
callq 0x10b0
cmpl $0x0, %eax
jne 0x170d
movq -0x8(%rbp), %rdi
callq 0x61e0
jmp 0x18f1
movq -0x28(%rbp), %rdi
leaq 0xa0da(%rip), %rsi      # 0xb7f2
callq 0x10b0
cmpl $0x0, %eax
jne 0x1730
movq -0x8(%rbp), %rdi
callq 0x6200
jmp 0x18ef
movq -0x28(%rbp), %rdi
leaq 0xa0d7(%rip), %rsi      # 0xb812
callq 0x10b0
cmpl $0x0, %eax
jne 0x1753
movq -0x8(%rbp), %rdi
callq 0x6220
jmp 0x18ed
movq -0x28(%rbp), %rdi
leaq 0xa0c6(%rip), %rsi      # 0xb824
callq 0x10b0
cmpl $0x0, %eax
jne 0x1776
movq -0x8(%rbp), %rdi
callq 0x6240
jmp 0x18eb
movq -0x28(%rbp), %rdi
leaq 0xa0b4(%rip), %rsi      # 0xb835
callq 0x10b0
cmpl $0x0, %eax
jne 0x1799
movq -0x8(%rbp), %rdi
callq 0x6430
jmp 0x18e9
movq -0x28(%rbp), %rdi
leaq 0xa0a2(%rip), %rsi      # 0xb846
callq 0x10b0
cmpl $0x0, %eax
jne 0x17bc
movq -0x8(%rbp), %rdi
callq 0x6530
jmp 0x18e7
movq -0x28(%rbp), %rdi
leaq 0xa086(%rip), %rsi      # 0xb84d
callq 0x10b0
cmpl $0x0, %eax
jne 0x17df
movq -0x8(%rbp), %rdi
callq 0x6f10
jmp 0x18e5
movq -0x28(%rbp), %rdi
leaq 0xa072(%rip), %rsi      # 0xb85c
callq 0x10b0
cmpl $0x0, %eax
jne 0x1802
movq -0x8(%rbp), %rdi
callq 0x7040
jmp 0x18e3
movq -0x28(%rbp), %rdi
leaq 0xa05f(%rip), %rsi      # 0xb86c
callq 0x10b0
cmpl $0x0, %eax
jne 0x1825
movq -0x8(%rbp), %rdi
callq 0x70a0
jmp 0x18e1
movq -0x28(%rbp), %rdi
leaq 0xa045(%rip), %rsi      # 0xb875
callq 0x10b0
cmpl $0x0, %eax
jne 0x1848
movq -0x8(%rbp), %rdi
callq 0x7100
jmp 0x18df
movl -0x1c(%rbp), %eax
movq %rsp, %rcx
movq %rcx, -0x30(%rbp)
movq %rax, %rdx
addq $0xf, %rdx
andq $-0x10, %rdx
movq %rsp, %rcx
subq %rdx, %rcx
movq %rcx, -0x48(%rbp)
movq %rcx, %rsp
movq %rax, -0x38(%rbp)
leaq 0xa00c(%rip), %rdi      # 0xb881
movb $0x0, %al
callq 0x1090
movl $0x0, -0x3c(%rbp)
movl -0x3c(%rbp), %eax
cmpl -0x1c(%rbp), %eax
jae 0x18ca
movq -0x48(%rbp), %rdi
movl -0x3c(%rbp), %eax
addq %rax, %rdi
movq -0x8(%rbp), %rcx
movl $0x1, %edx
movq %rdx, %rsi
callq 0x1050
movq -0x48(%rbp), %rax
movl -0x3c(%rbp), %ecx
movzbl (%rax,%rcx), %esi
leaq 0x9fcf(%rip), %rdi      # 0xb887
movb $0x0, %al
callq 0x1090
movl -0x3c(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x3c(%rbp)
jmp 0x1883
leaq 0xbb91(%rip), %rdi      # 0xd462
movb $0x0, %al
callq 0x1090
movq -0x30(%rbp), %rax
movq %rax, %rsp
jmp 0x18e1
jmp 0x18e3
jmp 0x18e5
jmp 0x18e7
jmp 0x18e9
jmp 0x18eb
jmp 0x18ed
jmp 0x18ef
jmp 0x18f1
jmp 0x18f3
jmp 0x18f5
jmp 0x18f7
jmp 0x18f9
jmp 0x18fb
jmp 0x18fd
jmp 0x18ff
jmp 0x1901
jmp 0x1903
jmp 0x1905
jmp 0x1907
jmp 0x1909
jmp 0x190b
jmp 0x190d
jmp 0x190f
jmp 0x1911
jmp 0x1913
jmp 0x1915
jmp 0x1917
jmp 0x1919
movw -0x14(%rbp), %ax
addw $0x1, %ax
movw %ax, -0x14(%rbp)
jmp 0x139b
jmp 0x192c
movq %rbp, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)