// File: /workspace/github_c_makefile_star2_O0/mikebdp2[P]AtomDis/./datastructs_gen.c
// Function: ATOM_ASIC_PROFILE_VOLTAGE_dumper
int ATOM_ASIC_PROFILE_VOLTAGE_dumper (uint8_t *start, uint8_t *data, int indent) {
  ATOM_ASIC_PROFILE_VOLTAGE *d = (ATOM_ASIC_PROFILE_VOLTAGE *) data;
  int i;
  if (d) {
    printf ("%s%04x:  UCHAR ucProfileId%s = 0x%02x       (%d)\n", IND(indent), (int)(((uint8_t*)&d->ucProfileId)-start), FILL(16), d->ucProfileId, d->ucProfileId);
    printf ("%s%04x:  UCHAR ucReserved%s = 0x%02x       (%d)\n", IND(indent), (int)(((uint8_t*)&d->ucReserved)-start), FILL(15), d->ucReserved, d->ucReserved);
    printf ("%s%04x:  USHORT usSize%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usSize)-start), FILL(12), d->usSize, d->usSize);
    printf ("%s%04x:  USHORT usEfuseSpareStartAddr%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usEfuseSpareStartAddr)-start), FILL(27), d->usEfuseSpareStartAddr, d->usEfuseSpareStartAddr);
    for (i = 0; i < 8; i++) {
      printf ("%s%04x:  USHORT usFuseIndex%s [%d] = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usFuseIndex[i])-start), FILL(21+(i>9)), i, d->usFuseIndex[i], d->usFuseIndex[i]); }
    for (i = 0; i < ((d->usSize - offsetof(ATOM_ASIC_PROFILE_VOLTAGE,asLeakVol)) / sizeof(ATOM_LEAKID_VOLTAGE)); i++) {
      printf ("%s%04x:  ATOM_LEAKID_VOLTAGE asLeakVol%s [%d] :\n", IND(indent), (int)(((uint8_t*)&d->asLeakVol[i])-start), FILL(32+(i>9)), i); ATOM_LEAKID_VOLTAGE_dumper (start, (uint8_t*) &d->asLeakVol[i], indent+1); }
  }
  return sizeof (ATOM_ASIC_PROFILE_VOLTAGE);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xd0, %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 0x2f30c
movq 0x35390(%rip), %rax     # 0x642a0
movq %rax, -0x30(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x2ef24
movl $0x19, %eax
movl %eax, -0x34(%rbp)
jmp 0x2ef2a
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 0x3534d(%rip), %rcx     # 0x642a0
addq $0x10, %rcx
movq -0x20(%rbp), %rax
movzbl (%rax), %r8d
movq -0x20(%rbp), %rax
movzbl (%rax), %r9d
leaq 0x27396(%rip), %rdi     # 0x56304
movb $0x0, %al
callq 0x4090
movq 0x35324(%rip), %rax     # 0x642a0
movq %rax, -0x40(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x2ef90
movl $0x19, %eax
movl %eax, -0x44(%rbp)
jmp 0x2ef96
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 $0x1, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x352dd(%rip), %rcx     # 0x642a0
addq $0xf, %rcx
movq -0x20(%rbp), %rax
movzbl 0x1(%rax), %r8d
movq -0x20(%rbp), %rax
movzbl 0x1(%rax), %r9d
leaq 0x1e01d(%rip), %rdi     # 0x4cffd
movb $0x0, %al
callq 0x4090
movq 0x352b2(%rip), %rax     # 0x642a0
movq %rax, -0x50(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x2f002
movl $0x19, %eax
movl %eax, -0x54(%rbp)
jmp 0x2f008
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 $0x2, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x3526b(%rip), %rcx     # 0x642a0
addq $0xc, %rcx
movq -0x20(%rbp), %rax
movzwl 0x2(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x2(%rax), %r9d
leaq 0x25b87(%rip), %rdi     # 0x54bd9
movb $0x0, %al
callq 0x4090
movq 0x35240(%rip), %rax     # 0x642a0
movq %rax, -0x60(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x2f074
movl $0x19, %eax
movl %eax, -0x64(%rbp)
jmp 0x2f07a
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 $0x4, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x351f9(%rip), %rcx     # 0x642a0
addq $0x1b, %rcx
movq -0x20(%rbp), %rax
movzwl 0x4(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x4(%rax), %r9d
leaq 0x27272(%rip), %rdi     # 0x56336
movb $0x0, %al
callq 0x4090
movl $0x0, -0x24(%rbp)
cmpl $0x8, -0x24(%rbp)
jge 0x2f1d4
movq 0x351bd(%rip), %rax     # 0x642a0
movq %rax, -0x70(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x2f0f7
movl $0x19, %eax
movl %eax, -0x74(%rbp)
jmp 0x2f0fd
movl -0x14(%rbp), %eax
movl %eax, -0x74(%rbp)
movq -0x70(%rbp), %rax
movl -0x74(%rbp), %edx
shll %edx
movl $0x32, %ecx
subl %edx, %ecx
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, -0x90(%rbp)
movq -0x20(%rbp), %rax
addq $0x6, %rax
movslq -0x24(%rbp), %rcx
shlq %rcx
addq %rcx, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, -0x84(%rbp)
movq 0x35160(%rip), %rax     # 0x642a0
movq %rax, -0x80(%rbp)
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x15, %eax
cmpl $0x32, %eax
jle 0x2f165
movl $0x32, %eax
movl %eax, -0x94(%rbp)
jmp 0x2f17a
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x15, %eax
movl %eax, -0x94(%rbp)
movl -0x84(%rbp), %edx
movq -0x90(%rbp), %rsi
movq -0x80(%rbp), %rcx
movl -0x94(%rbp), %eax
cltq
addq %rax, %rcx
movl -0x24(%rbp), %r8d
movq -0x20(%rbp), %rax
movslq -0x24(%rbp), %rdi
movzwl 0x6(%rax,%rdi,2), %r9d
movq -0x20(%rbp), %rax
movslq -0x24(%rbp), %rdi
movzwl 0x6(%rax,%rdi,2), %eax
leaq 0x271b5(%rip), %rdi     # 0x56371
movl %eax, (%rsp)
movb $0x0, %al
callq 0x4090
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0x2f0d2
movl $0x0, -0x24(%rbp)
movslq -0x24(%rbp), %rax
movq -0x20(%rbp), %rcx
movzwl 0x2(%rcx), %ecx
subq $0x16, %rcx
shrq $0x2, %rcx
cmpq %rcx, %rax
jae 0x2f30a
movq 0x350a1(%rip), %rax     # 0x642a0
movq %rax, -0xa0(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x2f219
movl $0x19, %eax
movl %eax, -0xa4(%rbp)
jmp 0x2f222
movl -0x14(%rbp), %eax
movl %eax, -0xa4(%rbp)
movq -0xa0(%rbp), %rax
movl -0xa4(%rbp), %edx
shll %edx
movl $0x32, %ecx
subl %edx, %ecx
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, -0xc0(%rbp)
movq -0x20(%rbp), %rax
addq $0x16, %rax
movslq -0x24(%rbp), %rcx
shlq $0x2, %rcx
addq %rcx, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, -0xb4(%rbp)
movq 0x35034(%rip), %rax     # 0x642a0
movq %rax, -0xb0(%rbp)
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x20, %eax
cmpl $0x32, %eax
jle 0x2f294
movl $0x32, %eax
movl %eax, -0xc4(%rbp)
jmp 0x2f2a9
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x20, %eax
movl %eax, -0xc4(%rbp)
movl -0xb4(%rbp), %edx
movq -0xc0(%rbp), %rsi
movq -0xb0(%rbp), %rcx
movl -0xc4(%rbp), %eax
cltq
addq %rax, %rcx
movl -0x24(%rbp), %r8d
leaq 0x270d4(%rip), %rdi     # 0x563a7
movb $0x0, %al
callq 0x4090
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rsi
addq $0x16, %rsi
movslq -0x24(%rbp), %rax
shlq $0x2, %rax
addq %rax, %rsi
movl -0x14(%rbp), %edx
addl $0x1, %edx
callq 0x2ed50
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0x2f1db
jmp 0x2f30c
movl $0x1e, %eax
addq $0xd0, %rsp
popq %rbp
retq
nopw (%rax,%rax)