// File: /workspace/github_cpp_makefile_star2_O2/ticky[P]ps2iconsys/src/iconsys_builder.cpp
// Function: ProcessParameters(IconSys*)
void ProcessParameters(IconSys* icon_sys)
{
	if(verbose_output) 
		std::cout << " * Adjusting parameters...";
	if(title_string) {
		icon_sys->SetTitle(title_string);
	}
	icon_sys->SetLinebreak(title_linebreak);
	if(icon_string) {
		try {
			icon_sys->SetIconFilename(icon_string);
			icon_sys->SetIconCopyFilename(icon_string);
			icon_sys->SetIconDeleteFilename(icon_string);
		} catch (Ghulbus::gbException e) {
			std::cout << "Icon filename exceeds character limit." << std::endl;
			exit(1);
		}
	}
	if(icon_copy_string) {
		try {
			icon_sys->SetIconCopyFilename(icon_copy_string);
		} catch (Ghulbus::gbException e) {
			std::cout << "Copy icon filename exceeds character limit." << std::endl;
			exit(1);
		}
	}
	if(icon_delete_string) {
		try {
			icon_sys->SetIconDeleteFilename(icon_delete_string);
		} catch (Ghulbus::gbException e) {
			std::cout << "Delete icon name exceeds character limit." << std::endl;
			exit(1);
		}
	}
	icon_sys->SetBackgroundOpacity(bg_opacity);
	if(light1_dir) { icon_sys->SetLight1Dir( IconSys::IconSys_LightVec(light1_dir) ); }
	if(light2_dir) { icon_sys->SetLight2Dir( IconSys::IconSys_LightVec(light2_dir) ); }
	if(light3_dir) { icon_sys->SetLight3Dir( IconSys::IconSys_LightVec(light3_dir) ); }
	if(light1_color) { 
		float tmp[4];
		for(int i=0; i<4; i++) { tmp[i] = static_cast<float>(light1_color[i]) / 255.0f; }
		icon_sys->SetLight1Color( IconSys::IconSys_LightColor(tmp) ); 
	}
	if(light2_color) { 
		float tmp[4];
		for(int i=0; i<4; i++) { tmp[i] = static_cast<float>(light2_color[i]) / 255.0f; }
		icon_sys->SetLight2Color( IconSys::IconSys_LightColor(tmp) ); 
	}
	if(light3_color) { 
		float tmp[4];
		for(int i=0; i<4; i++) { tmp[i] = static_cast<float>(light3_color[i]) / 255.0f; }
		icon_sys->SetLight3Color( IconSys::IconSys_LightColor(tmp) ); 
	}
	if(ambient_color) { 
		float tmp[4];
		for(int i=0; i<4; i++) { tmp[i] = static_cast<float>(ambient_color[i]) / 255.0f; }
		icon_sys->SetLightAmbientColor( IconSys::IconSys_LightColor(tmp) ); 
	}
	if(bg_color_ul) { icon_sys->SetBackgroundColor_UL( IconSys::IconSys_Color( bg_color_ul ) ); }
	if(bg_color_ur) { icon_sys->SetBackgroundColor_UR( IconSys::IconSys_Color( bg_color_ur ) ); }
	if(bg_color_ll) { icon_sys->SetBackgroundColor_LL( IconSys::IconSys_Color( bg_color_ll ) ); }
	if(bg_color_lr) { icon_sys->SetBackgroundColor_LR( IconSys::IconSys_Color( bg_color_lr ) ); }
	if(verbose_output) 
		std::cout << "done." << std::endl;
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x28, %rsp
movq %rdi, %rbx
cmpb $0x1, 0x7e7d(%rip)      # 0x10261
jne 0x83f9
movq 0x7beb(%rip), %rdi      # 0xffd8
leaq 0x2e16(%rip), %rsi      # 0xb20a
callq 0x2190
movq 0x7e68(%rip), %rsi      # 0x10268
testq %rsi, %rsi
je 0x840d
movq %rbx, %rdi
callq 0x45a8
movl 0x7dd5(%rip), %esi      # 0x101e8
movq %rbx, %rdi
callq 0x4798
movq 0x7e4e(%rip), %rsi      # 0x10270
testq %rsi, %rsi
je 0x844d
movq %rbx, %rdi
callq 0x462e
movq 0x7e3a(%rip), %rsi      # 0x10270
movq %rbx, %rdi
callq 0x46a4
movq 0x7e2b(%rip), %rsi      # 0x10270
movq %rbx, %rdi
callq 0x471a
movq 0x7e24(%rip), %rsi      # 0x10278
testq %rsi, %rsi
je 0x8461
movq %rbx, %rdi
callq 0x46a4
movq 0x7e18(%rip), %rsi      # 0x10280
testq %rsi, %rsi
je 0x8475
movq %rbx, %rdi
callq 0x471a
movl 0x7e0d(%rip), %esi      # 0x10288
movq %rbx, %rdi
callq 0x487a
movq 0x7e06(%rip), %rsi      # 0x10290
testq %rsi, %rsi
je 0x84ad
movq %rsp, %r14
movq %r14, %rdi
callq 0x4fbc
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4acc
movq %rsp, %rdi
callq 0x5000
movq 0x7de4(%rip), %rsi      # 0x10298
testq %rsi, %rsi
je 0x84d7
movq %rsp, %r14
movq %r14, %rdi
callq 0x4fbc
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4b28
movq %rsp, %rdi
callq 0x5000
movq 0x7dc2(%rip), %rsi      # 0x102a0
testq %rsi, %rsi
je 0x8501
movq %rsp, %r14
movq %r14, %rdi
callq 0x4fbc
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4b5c
movq %rsp, %rdi
callq 0x5000
movq 0x7da0(%rip), %rax      # 0x102a8
testq %rax, %rax
je 0x8555
xorl %ecx, %ecx
movss 0x1cfd(%rip), %xmm0     # 0xa214
cmpq $0x4, %rcx
je 0x8530
cvtsi2ssl (%rax,%rcx,4), %xmm1
divss %xmm0, %xmm1
movss %xmm1, (%rsp,%rcx,4)
incq %rcx
jmp 0x8517
leaq 0x18(%rsp), %r14
movq %rsp, %rsi
movq %r14, %rdi
callq 0x4dd4
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4986
leaq 0x18(%rsp), %rdi
callq 0x4ea0
movq 0x7d54(%rip), %rax      # 0x102b0
testq %rax, %rax
je 0x85a9
xorl %ecx, %ecx
movss 0x1ca9(%rip), %xmm0     # 0xa214
cmpq $0x4, %rcx
je 0x8584
cvtsi2ssl (%rax,%rcx,4), %xmm1
divss %xmm0, %xmm1
movss %xmm1, (%rsp,%rcx,4)
incq %rcx
jmp 0x856b
leaq 0x18(%rsp), %r14
movq %rsp, %rsi
movq %r14, %rdi
callq 0x4dd4
movq %rbx, %rdi
movq %r14, %rsi
callq 0x49f8
leaq 0x18(%rsp), %rdi
callq 0x4ea0
movq 0x7d08(%rip), %rax      # 0x102b8
testq %rax, %rax
je 0x85fd
xorl %ecx, %ecx
movss 0x1c55(%rip), %xmm0     # 0xa214
cmpq $0x4, %rcx
je 0x85d8
cvtsi2ssl (%rax,%rcx,4), %xmm1
divss %xmm0, %xmm1
movss %xmm1, (%rsp,%rcx,4)
incq %rcx
jmp 0x85bf
leaq 0x18(%rsp), %r14
movq %rsp, %rsi
movq %r14, %rdi
callq 0x4dd4
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4a42
leaq 0x18(%rsp), %rdi
callq 0x4ea0
movq 0x7cbc(%rip), %rax      # 0x102c0
testq %rax, %rax
je 0x8651
xorl %ecx, %ecx
movss 0x1c01(%rip), %xmm0     # 0xa214
cmpq $0x4, %rcx
je 0x862c
cvtsi2ssl (%rax,%rcx,4), %xmm1
divss %xmm0, %xmm1
movss %xmm1, (%rsp,%rcx,4)
incq %rcx
jmp 0x8613
leaq 0x18(%rsp), %r14
movq %rsp, %rsi
movq %r14, %rdi
callq 0x4dd4
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4a8c
leaq 0x18(%rsp), %rdi
callq 0x4ea0
movq 0x7c70(%rip), %rsi      # 0x102c8
testq %rsi, %rsi
je 0x867b
movq %rsp, %r14
movq %r14, %rdi
callq 0x4c5c
movq %rbx, %rdi
movq %r14, %rsi
callq 0x48c6
movq %rsp, %rdi
callq 0x4d1c
movq 0x7c4e(%rip), %rsi      # 0x102d0
testq %rsi, %rsi
je 0x86a5
movq %rsp, %r14
movq %r14, %rdi
callq 0x4c5c
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4908
movq %rsp, %rdi
callq 0x4d1c
movq 0x7c2c(%rip), %rsi      # 0x102d8
testq %rsi, %rsi
je 0x86cf
movq %rsp, %r14
movq %r14, %rdi
callq 0x4c5c
movq %rbx, %rdi
movq %r14, %rsi
callq 0x4932
movq %rsp, %rdi
callq 0x4d1c
movq 0x7c0a(%rip), %rsi      # 0x102e0
testq %rsi, %rsi
je 0x86f9
movq %rsp, %r14
movq %r14, %rdi
callq 0x4c5c
movq %rbx, %rdi
movq %r14, %rsi
callq 0x495c
movq %rsp, %rdi
callq 0x4d1c
cmpb $0x1, 0x7b61(%rip)      # 0x10261
jne 0x871d
movq 0x78cf(%rip), %rdi      # 0xffd8
leaq 0x2b92(%rip), %rsi      # 0xb2a2
callq 0x2190
movq %rax, %rdi
callq 0x20d0
addq $0x28, %rsp
popq %rbx
popq %r14
retq
jmp 0x872b
jmp 0x872b
jmp 0x872b
movq %rax, %rbx
movq %rsp, %rdi
callq 0x4d1c
jmp 0x886f
jmp 0x8741
jmp 0x8741
jmp 0x8741
movq %rax, %rbx
leaq 0x18(%rsp), %rdi
callq 0x4ea0
jmp 0x886f
jmp 0x8757
jmp 0x8757
movq %rax, %rbx
movq %rsp, %rdi
callq 0x5000
jmp 0x886f
movq %rax, %rbx
cmpl $0x1, %edx
jne 0x886f
movq %rbx, %rdi
callq 0x2210
movq %rsp, %rdi
movq %rax, %rsi
callq 0x764a
movq %rbx, %rdi
callq 0x20a0
movq 0x7843(%rip), %rdi      # 0xffd8
leaq 0x2adc(%rip), %rsi      # 0xb278
callq 0x2190
movq %rax, %rdi
callq 0x20d0
jmp 0x8857
movq %rax, %rbx
movq %rsp, %rdi
callq 0x7664
callq 0x22f0
jmp 0x886f
movq %rax, %rbx
cmpl $0x1, %edx
jne 0x886f
movq %rbx, %rdi
callq 0x2210
movq %rsp, %rdi
movq %rax, %rsi
callq 0x764a
movq %rbx, %rdi
callq 0x20a0
movq 0x77e7(%rip), %rdi      # 0xffd8
leaq 0x2a54(%rip), %rsi      # 0xb24c
callq 0x2190
movq %rax, %rdi
callq 0x20d0
jmp 0x8857
movq %rax, %rbx
movq %rsp, %rdi
callq 0x7664
callq 0x22f0
jmp 0x886f
movq %rax, %rbx
cmpl $0x1, %edx
jne 0x886f
movq %rbx, %rdi
callq 0x2210
movq %rsp, %rdi
movq %rax, %rsi
callq 0x764a
movq %rbx, %rdi
callq 0x20a0
movq 0x7795(%rip), %rdi      # 0xffd8
leaq 0x29db(%rip), %rsi      # 0xb225
callq 0x2190
movq %rax, %rdi
callq 0x20d0
pushq $0x1
popq %rdi
callq 0x21f0
movq %rax, %rbx
movq %rsp, %rdi
callq 0x7664
callq 0x22f0
movq %rbx, %rdi
callq 0x2330
movq %rax, %rdi
callq 0x399a