// File: /workspace/github_c_makefile_star2_O0/mikebdp2[P]AtomDis/./datastructs_gen.c
// Function: VBE_FP_INFO_dumper
int VBE_FP_INFO_dumper (uint8_t *start, uint8_t *data, int indent) {
  VBE_FP_INFO *d = (VBE_FP_INFO *) data;
  int i;
  if (d) {
    printf ("%s%04x:  USHORT HSize%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->HSize)-start), FILL(11), d->HSize, d->HSize);
    printf ("%s%04x:  USHORT VSize%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->VSize)-start), FILL(11), d->VSize, d->VSize);
    printf ("%s%04x:  USHORT FPType%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->FPType)-start), FILL(12), d->FPType, d->FPType);
    printf ("%s%04x:  UCHAR RedBPP%s = 0x%02x       (%d)\n", IND(indent), (int)(((uint8_t*)&d->RedBPP)-start), FILL(11), d->RedBPP, d->RedBPP);
    printf ("%s%04x:  UCHAR GreenBPP%s = 0x%02x       (%d)\n", IND(indent), (int)(((uint8_t*)&d->GreenBPP)-start), FILL(13), d->GreenBPP, d->GreenBPP);
    printf ("%s%04x:  UCHAR BlueBPP%s = 0x%02x       (%d)\n", IND(indent), (int)(((uint8_t*)&d->BlueBPP)-start), FILL(12), d->BlueBPP, d->BlueBPP);
    printf ("%s%04x:  UCHAR ReservedBPP%s = 0x%02x       (%d)\n", IND(indent), (int)(((uint8_t*)&d->ReservedBPP)-start), FILL(16), d->ReservedBPP, d->ReservedBPP);
    printf ("%s%04x:  ULONG RsvdOffScrnMemSize%s = 0x%08x (%d)\n", IND(indent), (int)(((uint8_t*)&d->RsvdOffScrnMemSize)-start), FILL(23), d->RsvdOffScrnMemSize, d->RsvdOffScrnMemSize);
    printf ("%s%04x:  ULONG RsvdOffScrnMEmPtr%s = 0x%08x (%d)\n", IND(indent), (int)(((uint8_t*)&d->RsvdOffScrnMEmPtr)-start), FILL(22), d->RsvdOffScrnMEmPtr, d->RsvdOffScrnMEmPtr);
    for (i = 0; i < 14; i++) {
      printf ("%s%04x:  UCHAR Reserved%s [%d] = 0x%02x       (%d)\n", IND(indent), (int)(((uint8_t*)&d->Reserved[i])-start), FILL(17+(i>9)), i, d->Reserved[i], d->Reserved[i]); }
  }
  return sizeof (VBE_FP_INFO);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xf0, %rsp
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movl %edx, -0x14(%rbp)
movq -0x10(%rbp), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x3fb74
movq 0x24c70(%rip), %rax     # 0x642a0
movq %rax, -0x30(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3f644
movl $0x19, %eax
movl %eax, -0x34(%rbp)
jmp 0x3f64a
movl -0x14(%rbp), %eax
movl %eax, -0x34(%rbp)
movq -0x30(%rbp), %rsi
movl -0x34(%rbp), %ecx
shll %ecx
movl $0x32, %eax
subl %ecx, %eax
cltq
addq %rax, %rsi
movq -0x20(%rbp), %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x24c2d(%rip), %rcx     # 0x642a0
addq $0xb, %rcx
movq -0x20(%rbp), %rax
movzwl (%rax), %r8d
movq -0x20(%rbp), %rax
movzwl (%rax), %r9d
leaq 0x19c25(%rip), %rdi     # 0x592b3
movb $0x0, %al
callq 0x4090
movq 0x24c04(%rip), %rax     # 0x642a0
movq %rax, -0x40(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3f6b0
movl $0x19, %eax
movl %eax, -0x44(%rbp)
jmp 0x3f6b6
movl -0x14(%rbp), %eax
movl %eax, -0x44(%rbp)
movq -0x40(%rbp), %rsi
movl -0x44(%rbp), %ecx
shll %ecx
movl $0x32, %eax
subl %ecx, %eax
cltq
addq %rax, %rsi
movq -0x20(%rbp), %rax
addq $0x2, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x24bbd(%rip), %rcx     # 0x642a0
addq $0xb, %rcx
movq -0x20(%rbp), %rax
movzwl 0x2(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x2(%rax), %r9d
leaq 0x19bde(%rip), %rdi     # 0x592de
movb $0x0, %al
callq 0x4090
movq 0x24b92(%rip), %rax     # 0x642a0
movq %rax, -0x50(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3f722
movl $0x19, %eax
movl %eax, -0x54(%rbp)
jmp 0x3f728
movl -0x14(%rbp), %eax
movl %eax, -0x54(%rbp)
movq -0x50(%rbp), %rsi
movl -0x54(%rbp), %ecx
shll %ecx
movl $0x32, %eax
subl %ecx, %eax
cltq
addq %rax, %rsi
movq -0x20(%rbp), %rax
addq $0x4, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x24b4b(%rip), %rcx     # 0x642a0
addq $0xc, %rcx
movq -0x20(%rbp), %rax
movzwl 0x4(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x4(%rax), %r9d
leaq 0x19b97(%rip), %rdi     # 0x59309
movb $0x0, %al
callq 0x4090
movq 0x24b20(%rip), %rax     # 0x642a0
movq %rax, -0x60(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3f794
movl $0x19, %eax
movl %eax, -0x64(%rbp)
jmp 0x3f79a
movl -0x14(%rbp), %eax
movl %eax, -0x64(%rbp)
movq -0x60(%rbp), %rsi
movl -0x64(%rbp), %ecx
shll %ecx
movl $0x32, %eax
subl %ecx, %eax
cltq
addq %rax, %rsi
movq -0x20(%rbp), %rax
addq $0x6, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x24ad9(%rip), %rcx     # 0x642a0
addq $0xb, %rcx
movq -0x20(%rbp), %rax
movzbl 0x6(%rax), %r8d
movq -0x20(%rbp), %rax
movzbl 0x6(%rax), %r9d
leaq 0x19b51(%rip), %rdi     # 0x59335
movb $0x0, %al
callq 0x4090
movq 0x24aae(%rip), %rax     # 0x642a0
movq %rax, -0x70(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3f806
movl $0x19, %eax
movl %eax, -0x74(%rbp)
jmp 0x3f80c
movl -0x14(%rbp), %eax
movl %eax, -0x74(%rbp)
movq -0x70(%rbp), %rsi
movl -0x74(%rbp), %ecx
shll %ecx
movl $0x32, %eax
subl %ecx, %eax
cltq
addq %rax, %rsi
movq -0x20(%rbp), %rax
addq $0x7, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x24a67(%rip), %rcx     # 0x642a0
addq $0xd, %rcx
movq -0x20(%rbp), %rax
movzbl 0x7(%rax), %r8d
movq -0x20(%rbp), %rax
movzbl 0x7(%rax), %r9d
leaq 0x19b0c(%rip), %rdi     # 0x59362
movb $0x0, %al
callq 0x4090
movq 0x24a3c(%rip), %rax     # 0x642a0
movq %rax, -0x80(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3f87b
movl $0x19, %eax
movl %eax, -0x84(%rbp)
jmp 0x3f884
movl -0x14(%rbp), %eax
movl %eax, -0x84(%rbp)
movq -0x80(%rbp), %rsi
movl -0x84(%rbp), %ecx
shll %ecx
movl $0x32, %eax
subl %ecx, %eax
cltq
addq %rax, %rsi
movq -0x20(%rbp), %rax
addq $0x8, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x249ec(%rip), %rcx     # 0x642a0
addq $0xc, %rcx
movq -0x20(%rbp), %rax
movzbl 0x8(%rax), %r8d
movq -0x20(%rbp), %rax
movzbl 0x8(%rax), %r9d
leaq 0x19ac0(%rip), %rdi     # 0x59391
movb $0x0, %al
callq 0x4090
movq 0x249c1(%rip), %rax     # 0x642a0
movq %rax, -0x90(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3f8f9
movl $0x19, %eax
movl %eax, -0x94(%rbp)
jmp 0x3f902
movl -0x14(%rbp), %eax
movl %eax, -0x94(%rbp)
movq -0x90(%rbp), %rsi
movl -0x94(%rbp), %ecx
shll %ecx
movl $0x32, %eax
subl %ecx, %eax
cltq
addq %rax, %rsi
movq -0x20(%rbp), %rax
addq $0x9, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x2496b(%rip), %rcx     # 0x642a0
addq $0x10, %rcx
movq -0x20(%rbp), %rax
movzbl 0x9(%rax), %r8d
movq -0x20(%rbp), %rax
movzbl 0x9(%rax), %r9d
leaq 0x19a6d(%rip), %rdi     # 0x593bf
movb $0x0, %al
callq 0x4090
movq 0x24940(%rip), %rax     # 0x642a0
movq %rax, -0xa0(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3f97a
movl $0x19, %eax
movl %eax, -0xa4(%rbp)
jmp 0x3f983
movl -0x14(%rbp), %eax
movl %eax, -0xa4(%rbp)
movq -0xa0(%rbp), %rsi
movl -0xa4(%rbp), %ecx
shll %ecx
movl $0x32, %eax
subl %ecx, %eax
cltq
addq %rax, %rsi
movq -0x20(%rbp), %rax
addq $0xa, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x248ea(%rip), %rcx     # 0x642a0
addq $0x17, %rcx
movq -0x20(%rbp), %rax
movl 0xa(%rax), %r8d
movq -0x20(%rbp), %rax
movl 0xa(%rax), %r9d
leaq 0x19a20(%rip), %rdi     # 0x593f1
movb $0x0, %al
callq 0x4090
movq 0x248c1(%rip), %rax     # 0x642a0
movq %rax, -0xb0(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3f9f9
movl $0x19, %eax
movl %eax, -0xb4(%rbp)
jmp 0x3fa02
movl -0x14(%rbp), %eax
movl %eax, -0xb4(%rbp)
movq -0xb0(%rbp), %rsi
movl -0xb4(%rbp), %ecx
shll %ecx
movl $0x32, %eax
subl %ecx, %eax
cltq
addq %rax, %rsi
movq -0x20(%rbp), %rax
addq $0xe, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x2486b(%rip), %rcx     # 0x642a0
addq $0x16, %rcx
movq -0x20(%rbp), %rax
movl 0xe(%rax), %r8d
movq -0x20(%rbp), %rax
movl 0xe(%rax), %r9d
leaq 0x199d4(%rip), %rdi     # 0x59424
movb $0x0, %al
callq 0x4090
movl $0x0, -0x24(%rbp)
cmpl $0xe, -0x24(%rbp)
jge 0x3fb72
movq 0x24831(%rip), %rax     # 0x642a0
movq %rax, -0xc0(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x3fa89
movl $0x19, %eax
movl %eax, -0xc4(%rbp)
jmp 0x3fa92
movl -0x14(%rbp), %eax
movl %eax, -0xc4(%rbp)
movq -0xc0(%rbp), %rax
movl -0xc4(%rbp), %edx
shll %edx
movl $0x32, %ecx
subl %edx, %ecx
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, -0xe0(%rbp)
movq -0x20(%rbp), %rax
addq $0x12, %rax
movslq -0x24(%rbp), %rcx
addq %rcx, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, -0xd4(%rbp)
movq 0x247c8(%rip), %rax     # 0x642a0
movq %rax, -0xd0(%rbp)
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x11, %eax
cmpl $0x32, %eax
jle 0x3fb00
movl $0x32, %eax
movl %eax, -0xe4(%rbp)
jmp 0x3fb15
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x11, %eax
movl %eax, -0xe4(%rbp)
movl -0xd4(%rbp), %edx
movq -0xe0(%rbp), %rsi
movq -0xd0(%rbp), %rcx
movl -0xe4(%rbp), %eax
cltq
addq %rax, %rcx
movl -0x24(%rbp), %r8d
movq -0x20(%rbp), %rax
movslq -0x24(%rbp), %rdi
movzbl 0x12(%rax,%rdi), %r9d
movq -0x20(%rbp), %rax
movslq -0x24(%rbp), %rdi
movzbl 0x12(%rax,%rdi), %eax
leaq 0x157a0(%rip), %rdi     # 0x552fa
movl %eax, (%rsp)
movb $0x0, %al
callq 0x4090
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0x3fa5e
jmp 0x3fb74
movl $0x20, %eax
addq $0xf0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)