// File: /workspace/github_cpp_makefile_star2_O3/merelin[P]mediasmartserverd/src/led_hpex485.h
// Function: LedHpEx48X::Init()
virtual bool Init( ) {
		// initialise SCH5127
		if ( !LedControlSCH5127Base::Init() ) return false;
		
		// set up io permissions to other ports we may use
		if ( ioperm(io_sch5127_regs_ + REG_HWM_INDEX, 1, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_sch5127_regs_ + REG_HWM_DATA,  1, 1) ) throw ErrnoException("ioperm");
		
		//
		if ( ioperm(io_lpc_gpiobase_ + GPO_BLINK,	4, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_lpc_gpiobase_ + GP_IO_SEL,	4, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_lpc_gpiobase_ + GP_IO_SEL2,	4, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_lpc_gpiobase_ + GP_LVL,		4, 1) ) throw ErrnoException("ioperm");
		if ( ioperm(io_lpc_gpiobase_ + GP_LVL2,		4, 1) ) throw ErrnoException("ioperm");
		
		enableLeds_( );
		
		return true;
	}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x28, %rsp
movq %rdi, %r14
callq 0x868e
movl %eax, %ebx
testb %al, %al
je 0xa311
movl 0xc(%r14), %edi
addl $0x70, %edi
movl $0x1, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa31e
movl 0xc(%r14), %edi
addl $0x71, %edi
movl $0x1, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa380
movl 0x8(%r14), %edi
addl $0x18, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa3e2
movl 0x8(%r14), %edi
addl $0x4, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa444
movl 0x8(%r14), %edi
addl $0x34, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa4a6
movl 0x8(%r14), %edi
addl $0xc, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa508
movl 0x8(%r14), %edi
addl $0x38, %edi
movl $0x4, %esi
movl $0x1, %edx
callq 0x44b0
testl %eax, %eax
jne 0xa567
movq %r14, %rdi
movl $0x186020b0, %esi       # imm = 0x186020B0
callq 0x8e16
movl %ebx, %eax
addq $0x28, %rsp
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x17e7(%rip), %rsi      # 0xbb22
leaq 0x17e6(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e90
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be6
xorl %ebp, %ebp
leaq 0x5414(%rip), %rsi      # 0xf780
movq 0x5c2d(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5c4
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x1785(%rip), %rsi      # 0xbb22
leaq 0x1784(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e90
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be6
xorl %ebp, %ebp
leaq 0x53b2(%rip), %rsi      # 0xf780
movq 0x5bcb(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5c4
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x1723(%rip), %rsi      # 0xbb22
leaq 0x1722(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e90
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be6
xorl %ebp, %ebp
leaq 0x5350(%rip), %rsi      # 0xf780
movq 0x5b69(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5c4
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x16c1(%rip), %rsi      # 0xbb22
leaq 0x16c0(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e90
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be6
xorl %ebp, %ebp
leaq 0x52ee(%rip), %rsi      # 0xf780
movq 0x5b07(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5c4
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x165f(%rip), %rsi      # 0xbb22
leaq 0x165e(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e90
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be6
xorl %ebp, %ebp
leaq 0x528c(%rip), %rsi      # 0xf780
movq 0x5aa5(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5c4
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x15fd(%rip), %rsi      # 0xbb22
leaq 0x15fc(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e90
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be6
xorl %ebp, %ebp
leaq 0x522a(%rip), %rsi      # 0xf780
movq 0x5a43(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5c4
movl $0x10, %edi
callq 0x4140
movq %rax, %rbx
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x159e(%rip), %rsi      # 0xbb22
leaq 0x159d(%rip), %rdx      # 0xbb28
leaq 0x8(%rsp), %rdi
callq 0x5e90
callq 0x4030
movl (%rax), %edx
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x5be6
xorl %ebp, %ebp
leaq 0x51cb(%rip), %rsi      # 0xf780
movq 0x59e4(%rip), %rdx      # 0xffa0
movq %rbx, %rdi
callq 0x4520
jmp 0xa5dc
jmp 0xa5fd
jmp 0xa5dc
jmp 0xa5fd
jmp 0xa5dc
jmp 0xa5fd
jmp 0xa5dc
jmp 0xa5fd
jmp 0xa5dc
jmp 0xa5fd
jmp 0xa5dc
jmp 0xa5fd
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0xa5f6
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x42c0
testb %bpl, %bpl
jne 0xa600
jmp 0xa608
movq %rax, %r14
movq %rbx, %rdi
callq 0x41e0
movq %r14, %rdi
callq 0x4550