// File: /workspace/github_c_makefile_star2_O0/mikebdp2[P]AtomDis/./datastructs_gen.c
// Function: ATOM_PPLIB_POWERPLAYTABLE4_dumper
int ATOM_PPLIB_POWERPLAYTABLE4_dumper (uint8_t *start, uint8_t *data, int indent) {
  ATOM_PPLIB_POWERPLAYTABLE4 *d = (ATOM_PPLIB_POWERPLAYTABLE4 *) data;
  int i;
  if (d) {
    printf ("%s%04x:  ATOM_PPLIB_POWERPLAYTABLE3 basicTable3%s :\n", IND(indent), (int)(((uint8_t*)&d->basicTable3)-start), FILL(37)); ATOM_PPLIB_POWERPLAYTABLE3_dumper (start, (uint8_t*) &d->basicTable3, indent+1);
    printf ("%s%04x:  ULONG ulGoldenPPID%s = 0x%08x (%d)\n", IND(indent), (int)(((uint8_t*)&d->ulGoldenPPID)-start), FILL(17), d->ulGoldenPPID, d->ulGoldenPPID);
    printf ("%s%04x:  ULONG ulGoldenRevision%s = 0x%08x (%d)\n", IND(indent), (int)(((uint8_t*)&d->ulGoldenRevision)-start), FILL(21), d->ulGoldenRevision, d->ulGoldenRevision);
    printf ("%s%04x:  USHORT usVddcDependencyOnSCLKOffset%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usVddcDependencyOnSCLKOffset)-start), FILL(34), d->usVddcDependencyOnSCLKOffset, d->usVddcDependencyOnSCLKOffset);
    printf ("%s%04x:  USHORT usVddciDependencyOnMCLKOffset%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usVddciDependencyOnMCLKOffset)-start), FILL(35), d->usVddciDependencyOnMCLKOffset, d->usVddciDependencyOnMCLKOffset);
    printf ("%s%04x:  USHORT usVddcDependencyOnMCLKOffset%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usVddcDependencyOnMCLKOffset)-start), FILL(34), d->usVddcDependencyOnMCLKOffset, d->usVddcDependencyOnMCLKOffset);
    printf ("%s%04x:  USHORT usMaxClockVoltageOnDCOffset%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usMaxClockVoltageOnDCOffset)-start), FILL(33), d->usMaxClockVoltageOnDCOffset, d->usMaxClockVoltageOnDCOffset);
    for (i = 0; i < 2; i++) {
      printf ("%s%04x:  USHORT usReserved%s [%d] = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usReserved[i])-start), FILL(20+(i>9)), i, d->usReserved[i], d->usReserved[i]); }
  }
  return sizeof (ATOM_PPLIB_POWERPLAYTABLE4);
}

// 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 0x48ff8
movq 0x1b6f0(%rip), %rax     # 0x642a0
movq %rax, -0x30(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x48bc4
movl $0x19, %eax
movl %eax, -0x34(%rbp)
jmp 0x48bca
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 0x1b6ad(%rip), %rcx     # 0x642a0
addq $0x25, %rcx
leaq 0x12ed0(%rip), %rdi     # 0x5bace
movb $0x0, %al
callq 0x4090
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rsi
movl -0x14(%rbp), %edx
addl $0x1, %edx
callq 0x48980
movq 0x1b681(%rip), %rax     # 0x642a0
movq %rax, -0x40(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x48c33
movl $0x19, %eax
movl %eax, -0x44(%rbp)
jmp 0x48c39
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 $0x2e, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x1b63a(%rip), %rcx     # 0x642a0
addq $0x11, %rcx
movq -0x20(%rbp), %rax
movl 0x2e(%rax), %r8d
movq -0x20(%rbp), %rax
movl 0x2e(%rax), %r9d
leaq 0x12e82(%rip), %rdi     # 0x5bb03
movb $0x0, %al
callq 0x4090
movq 0x1b611(%rip), %rax     # 0x642a0
movq %rax, -0x50(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x48ca3
movl $0x19, %eax
movl %eax, -0x54(%rbp)
jmp 0x48ca9
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 $0x32, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x1b5ca(%rip), %rcx     # 0x642a0
addq $0x15, %rcx
movq -0x20(%rbp), %rax
movl 0x32(%rax), %r8d
movq -0x20(%rbp), %rax
movl 0x32(%rax), %r9d
leaq 0x12e3f(%rip), %rdi     # 0x5bb30
movb $0x0, %al
callq 0x4090
movq 0x1b5a1(%rip), %rax     # 0x642a0
movq %rax, -0x60(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x48d13
movl $0x19, %eax
movl %eax, -0x64(%rbp)
jmp 0x48d19
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 $0x36, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x1b55a(%rip), %rcx     # 0x642a0
addq $0x22, %rcx
movq -0x20(%rbp), %rax
movzwl 0x36(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x36(%rax), %r9d
leaq 0x12dfe(%rip), %rdi     # 0x5bb61
movb $0x0, %al
callq 0x4090
movq 0x1b52f(%rip), %rax     # 0x642a0
movq %rax, -0x70(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x48d85
movl $0x19, %eax
movl %eax, -0x74(%rbp)
jmp 0x48d8b
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 $0x38, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x1b4e8(%rip), %rcx     # 0x642a0
addq $0x23, %rcx
movq -0x20(%rbp), %rax
movzwl 0x38(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x38(%rax), %r9d
leaq 0x12dce(%rip), %rdi     # 0x5bba3
movb $0x0, %al
callq 0x4090
movq 0x1b4bd(%rip), %rax     # 0x642a0
movq %rax, -0x80(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x48dfa
movl $0x19, %eax
movl %eax, -0x84(%rbp)
jmp 0x48e03
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 $0x3a, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x1b46d(%rip), %rcx     # 0x642a0
addq $0x22, %rcx
movq -0x20(%rbp), %rax
movzwl 0x3a(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x3a(%rax), %r9d
leaq 0x12d96(%rip), %rdi     # 0x5bbe6
movb $0x0, %al
callq 0x4090
movq 0x1b442(%rip), %rax     # 0x642a0
movq %rax, -0x90(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x48e78
movl $0x19, %eax
movl %eax, -0x94(%rbp)
jmp 0x48e81
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 $0x3c, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x1b3ec(%rip), %rcx     # 0x642a0
addq $0x21, %rcx
movq -0x20(%rbp), %rax
movzwl 0x3c(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x3c(%rax), %r9d
leaq 0x12d57(%rip), %rdi     # 0x5bc28
movb $0x0, %al
callq 0x4090
movl $0x0, -0x24(%rbp)
cmpl $0x2, -0x24(%rbp)
jge 0x48ff6
movq 0x1b3b0(%rip), %rax     # 0x642a0
movq %rax, -0xa0(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0x48f0a
movl $0x19, %eax
movl %eax, -0xa4(%rbp)
jmp 0x48f13
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 $0x3e, %rax
movslq -0x24(%rbp), %rcx
shlq %rcx
addq %rcx, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, -0xb4(%rbp)
movq 0x1b344(%rip), %rax     # 0x642a0
movq %rax, -0xb0(%rbp)
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x14, %eax
cmpl $0x32, %eax
jle 0x48f84
movl $0x32, %eax
movl %eax, -0xc4(%rbp)
jmp 0x48f99
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x14, %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
movq -0x20(%rbp), %rax
movslq -0x24(%rbp), %rdi
movzwl 0x3e(%rax,%rdi,2), %r9d
movq -0x20(%rbp), %rax
movslq -0x24(%rbp), %rdi
movzwl 0x3e(%rax,%rdi,2), %eax
leaq 0xfd5d(%rip), %rdi      # 0x58d3b
movl %eax, (%rsp)
movb $0x0, %al
callq 0x4090
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0x48edf
jmp 0x48ff8
movl $0x42, %eax
addq $0xd0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)