// File: /workspace/github_c_makefile_star2_O0/mikebdp2[P]AtomDis/main.c
// Function: do_dump
void do_dump (uint8_t *data, int start, int end)
{
    int i, j;

    for (i = start & -16; i < end; i += 16) {
	fprintf (stdout, "  %08x: ", i);
	for (j = i; j < i+16; j++) {
	    if (j >= start && j < end)
		fprintf (stdout, "%02x", data[j]);
	    else
		fputs ("  ", stdout);
	    if ((j & 1) == 1)
		putc (' ', stdout);
	    if ((j & 3) == 3)
		putc (' ', stdout);
	}
	fputs ("  ", stdout);
	for (j = i; j < i+16; j++) {
	    if (j >= start && j < end) {
		if (isprint (data[j]))
		    putc (data[j], stdout);
		else
		    putc ('.', stdout);
	    } else
		putc (' ', stdout);
	}
	putc ('\n', stdout);
    }
    putc ('\n', stdout);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movl %esi, -0xc(%rbp)
movl %edx, -0x10(%rbp)
movl -0xc(%rbp), %eax
andl $-0x10, %eax
movl %eax, -0x14(%rbp)
movl -0x14(%rbp), %eax
cmpl -0x10(%rbp), %eax
jge 0x5dee
movq 0x5e372(%rip), %rax     # 0x63fc0
movq (%rax), %rdi
movl -0x14(%rbp), %edx
leaq 0x46a7d(%rip), %rsi     # 0x4c6d8
movb $0x0, %al
callq 0x4130
movl -0x14(%rbp), %eax
movl %eax, -0x18(%rbp)
movl -0x18(%rbp), %eax
movl -0x14(%rbp), %ecx
addl $0x10, %ecx
cmpl %ecx, %eax
jge 0x5d13
movl -0x18(%rbp), %eax
cmpl -0xc(%rbp), %eax
jl 0x5caf
movl -0x18(%rbp), %eax
cmpl -0x10(%rbp), %eax
jge 0x5caf
movq 0x5e330(%rip), %rax     # 0x63fc0
movq (%rax), %rdi
movq -0x8(%rbp), %rax
movslq -0x18(%rbp), %rcx
movzbl (%rax,%rcx), %edx
leaq 0x46793(%rip), %rsi     # 0x4c439
movb $0x0, %al
callq 0x4130
jmp 0x5cc5
movq 0x5e30a(%rip), %rax     # 0x63fc0
movq (%rax), %rsi
leaq 0x467be(%rip), %rdi     # 0x4c47e
callq 0x40a0
movl -0x18(%rbp), %eax
andl $0x1, %eax
cmpl $0x1, %eax
jne 0x5ce4
movq 0x5e2e9(%rip), %rax     # 0x63fc0
movq (%rax), %rsi
movl $0x20, %edi
callq 0x4120
movl -0x18(%rbp), %eax
andl $0x3, %eax
cmpl $0x3, %eax
jne 0x5d03
movq 0x5e2ca(%rip), %rax     # 0x63fc0
movq (%rax), %rsi
movl $0x20, %edi
callq 0x4120
jmp 0x5d05
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x5c68
movq 0x5e2a6(%rip), %rax     # 0x63fc0
movq (%rax), %rsi
leaq 0x4675a(%rip), %rdi     # 0x4c47e
callq 0x40a0
movl -0x14(%rbp), %eax
movl %eax, -0x18(%rbp)
movl -0x18(%rbp), %eax
movl -0x14(%rbp), %ecx
addl $0x10, %ecx
cmpl %ecx, %eax
jge 0x5dcc
movl -0x18(%rbp), %eax
cmpl -0xc(%rbp), %eax
jl 0x5da8
movl -0x18(%rbp), %eax
cmpl -0x10(%rbp), %eax
jge 0x5da8
callq 0x41e0
movq (%rax), %rax
movq -0x8(%rbp), %rcx
movslq -0x18(%rbp), %rdx
movzbl (%rcx,%rdx), %ecx
movslq %ecx, %rcx
movzwl (%rax,%rcx,2), %eax
andl $0x4000, %eax           # imm = 0x4000
cmpl $0x0, %eax
je 0x5d92
movq -0x8(%rbp), %rax
movslq -0x18(%rbp), %rcx
movzbl (%rax,%rcx), %edi
movq 0x5e238(%rip), %rax     # 0x63fc0
movq (%rax), %rsi
callq 0x4120
jmp 0x5da6
movq 0x5e227(%rip), %rax     # 0x63fc0
movq (%rax), %rsi
movl $0x2e, %edi
callq 0x4120
jmp 0x5dbc
movq 0x5e211(%rip), %rax     # 0x63fc0
movq (%rax), %rsi
movl $0x20, %edi
callq 0x4120
jmp 0x5dbe
movl -0x18(%rbp), %eax
addl $0x1, %eax
movl %eax, -0x18(%rbp)
jmp 0x5d2f
movq 0x5e1ed(%rip), %rax     # 0x63fc0
movq (%rax), %rsi
movl $0xa, %edi
callq 0x4120
movl -0x14(%rbp), %eax
addl $0x10, %eax
movl %eax, -0x14(%rbp)
jmp 0x5c3b
movq 0x5e1cb(%rip), %rax     # 0x63fc0
movq (%rax), %rsi
movl $0xa, %edi
callq 0x4120
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax,%rax)