// File: /workspace/github_c_makefile_star2_O0/mikebdp2[P]AtomDis/./datastructs_gen.c
// Function: SET_CRTC_OVERSCAN_PARAMETERS_dumper
int SET_CRTC_OVERSCAN_PARAMETERS_dumper (uint8_t *start, uint8_t *data, int indent) {
  SET_CRTC_OVERSCAN_PARAMETERS *d = (SET_CRTC_OVERSCAN_PARAMETERS *) data;
  int i;
  if (d) {
    printf ("%s%04x:  USHORT usOverscanRight%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usOverscanRight)-start), FILL(21), d->usOverscanRight, d->usOverscanRight);
    printf ("%s%04x:  USHORT usOverscanLeft%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usOverscanLeft)-start), FILL(20), d->usOverscanLeft, d->usOverscanLeft);
    printf ("%s%04x:  USHORT usOverscanBottom%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usOverscanBottom)-start), FILL(22), d->usOverscanBottom, d->usOverscanBottom);
    printf ("%s%04x:  USHORT usOverscanTop%s = 0x%04x     (%d)\n", IND(indent), (int)(((uint8_t*)&d->usOverscanTop)-start), FILL(19), d->usOverscanTop, d->usOverscanTop);
    printf ("%s%04x:  UCHAR ucCRTC%s = 0x%02x       (%d)\n", IND(indent), (int)(((uint8_t*)&d->ucCRTC)-start), FILL(11), d->ucCRTC, d->ucCRTC);
    for (i = 0; i < 3; i++) {
      printf ("%s%04x:  UCHAR ucPadding%s [%d] = 0x%02x       (%d)\n", IND(indent), (int)(((uint8_t*)&d->ucPadding[i])-start), FILL(18+(i>9)), i, d->ucPadding[i], d->ucPadding[i]); }
  }
  return sizeof (SET_CRTC_OVERSCAN_PARAMETERS);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %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 0xe9e4
movq 0x55c00(%rip), %rax     # 0x642a0
movq %rax, -0x30(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0xe6b4
movl $0x19, %eax
movl %eax, -0x34(%rbp)
jmp 0xe6ba
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 0x55bbd(%rip), %rcx     # 0x642a0
addq $0x15, %rcx
movq -0x20(%rbp), %rax
movzwl (%rax), %r8d
movq -0x20(%rbp), %rax
movzwl (%rax), %r9d
leaq 0x40ad7(%rip), %rdi     # 0x4f1d5
movb $0x0, %al
callq 0x4090
movq 0x55b94(%rip), %rax     # 0x642a0
movq %rax, -0x40(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0xe720
movl $0x19, %eax
movl %eax, -0x44(%rbp)
jmp 0xe726
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 0x55b4d(%rip), %rcx     # 0x642a0
addq $0x14, %rcx
movq -0x20(%rbp), %rax
movzwl 0x2(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x2(%rax), %r9d
leaq 0x40a9a(%rip), %rdi     # 0x4f20a
movb $0x0, %al
callq 0x4090
movq 0x55b22(%rip), %rax     # 0x642a0
movq %rax, -0x50(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0xe792
movl $0x19, %eax
movl %eax, -0x54(%rbp)
jmp 0xe798
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 0x55adb(%rip), %rcx     # 0x642a0
addq $0x16, %rcx
movq -0x20(%rbp), %rax
movzwl 0x4(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x4(%rax), %r9d
leaq 0x40a5c(%rip), %rdi     # 0x4f23e
movb $0x0, %al
callq 0x4090
movq 0x55ab0(%rip), %rax     # 0x642a0
movq %rax, -0x60(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0xe804
movl $0x19, %eax
movl %eax, -0x64(%rbp)
jmp 0xe80a
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 0x55a69(%rip), %rcx     # 0x642a0
addq $0x13, %rcx
movq -0x20(%rbp), %rax
movzwl 0x6(%rax), %r8d
movq -0x20(%rbp), %rax
movzwl 0x6(%rax), %r9d
leaq 0x40a20(%rip), %rdi     # 0x4f274
movb $0x0, %al
callq 0x4090
movq 0x55a3e(%rip), %rax     # 0x642a0
movq %rax, -0x70(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0xe876
movl $0x19, %eax
movl %eax, -0x74(%rbp)
jmp 0xe87c
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 $0x8, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, %edx
movq 0x559f7(%rip), %rcx     # 0x642a0
addq $0xb, %rcx
movq -0x20(%rbp), %rax
movzbl 0x8(%rax), %r8d
movq -0x20(%rbp), %rax
movzbl 0x8(%rax), %r9d
leaq 0x40813(%rip), %rdi     # 0x4f0d9
movb $0x0, %al
callq 0x4090
movl $0x0, -0x24(%rbp)
cmpl $0x3, -0x24(%rbp)
jge 0xe9e2
movq 0x559bb(%rip), %rax     # 0x642a0
movq %rax, -0x80(%rbp)
cmpl $0x19, -0x14(%rbp)
jle 0xe8fc
movl $0x19, %eax
movl %eax, -0x84(%rbp)
jmp 0xe905
movl -0x14(%rbp), %eax
movl %eax, -0x84(%rbp)
movq -0x80(%rbp), %rax
movl -0x84(%rbp), %edx
shll %edx
movl $0x32, %ecx
subl %edx, %ecx
movslq %ecx, %rcx
addq %rcx, %rax
movq %rax, -0xa0(%rbp)
movq -0x20(%rbp), %rax
addq $0x9, %rax
movslq -0x24(%rbp), %rcx
addq %rcx, %rax
movq -0x8(%rbp), %rcx
subq %rcx, %rax
movl %eax, -0x94(%rbp)
movq 0x55958(%rip), %rax     # 0x642a0
movq %rax, -0x90(%rbp)
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x12, %eax
cmpl $0x32, %eax
jle 0xe970
movl $0x32, %eax
movl %eax, -0xa4(%rbp)
jmp 0xe985
cmpl $0x9, -0x24(%rbp)
setg %al
andb $0x1, %al
movzbl %al, %eax
addl $0x12, %eax
movl %eax, -0xa4(%rbp)
movl -0x94(%rbp), %edx
movq -0xa0(%rbp), %rsi
movq -0x90(%rbp), %rcx
movl -0xa4(%rbp), %eax
cltq
addq %rax, %rcx
movl -0x24(%rbp), %r8d
movq -0x20(%rbp), %rax
movslq -0x24(%rbp), %rdi
movzbl 0x9(%rax,%rdi), %r9d
movq -0x20(%rbp), %rax
movslq -0x24(%rbp), %rdi
movzbl 0x9(%rax,%rdi), %eax
leaq 0x3fea7(%rip), %rdi     # 0x4e871
movl %eax, (%rsp)
movb $0x0, %al
callq 0x4090
movl -0x24(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x24(%rbp)
jmp 0xe8d4
jmp 0xe9e4
movl $0xc, %eax
addq $0xb0, %rsp
popq %rbp
retq
nopw %cs:(%rax,%rax)