Function at 0x430450
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
sub esp, 0x28
push edi
test eax, eax
je 0x43086c
mov edi, dword [ebp + 0xc]
test edi, edi
je 0x43086c
lea ecx, [ebp - 8]
push ecx
lea ecx, [ebp + 8]
push ecx
push eax
call fcn.004300a0
add esp, 0xc
test eax, eax
jne 0x43086c
push ebx
push esi
mov esi, dword [0x471c88]
mov ecx, esi
mov eax, dword [esi]
call dword [eax + 0x64]
mov ecx, edi
call fcn.004117d0
mov ebx, eax
test ebx, ebx
jne 0x4304b4
mov edx, dword [esi]
mov ecx, esi
xor bl, bl
call dword [edx + 0x68]
pop esi
mov al, bl
pop ebx
pop edi
mov esp, ebp
pop ebp
ret
lea eax, [edi + 8]
push eax
push 0x45a288
push dword [ebp + 8]
call fcn.00430230
lea eax, [edi + 0x14]
push eax
push str.Trans
push dword [ebp + 8]
call fcn.004302e0
push 0x63ac24
push str.bgColor
push dword [ebp + 8]
call fcn.00430160
push 0x63ac34
push str.gColor
push dword [ebp + 8]
call fcn.00430160
push 0x63abc4
push str.lColor
push dword [ebp + 8]
call fcn.00430160
push 0x63abd4
push str.aColor
push dword [ebp + 8]
call fcn.00430160
add esp, 0x48
push 0x63abb8
push str.lightrot
push dword [ebp + 8]
call fcn.00430230
add esp, 0xc
mov ecx, edi
call fcn.0042e4f0
push eax
mov ecx, ebx
call fcn.00411410
mov ecx, dword [eax + 4]
add ecx, eax
push ecx
push str.sequence
push dword [ebp + 8]
call fcn.004302a0
add esp, 0xc
mov ecx, edi
push 0
call fcn.0042e320
push eax
mov ecx, ebx
call fcn.00411410
mov ecx, dword [eax + 4]
add ecx, eax
push ecx
push str.overlaySequence0
push dword [ebp + 8]
call fcn.004302a0
add esp, 0xc
mov ecx, edi
push 0
call fcn.0042e390
push ecx
fstp dword [esp]
push str.overlayWeight0
push dword [ebp + 8]
call fcn.004301d0
add esp, 0xc
mov ecx, edi
push 1
call fcn.0042e320
push eax
mov ecx, ebx
call fcn.00411410
mov ecx, dword [eax + 4]
add ecx, eax
push ecx
push str.overlaySequence1
push dword [ebp + 8]
call fcn.004302a0
add esp, 0xc
mov ecx, edi
push 1
call fcn.0042e390
push ecx
fstp dword [esp]
push str.overlayWeight1
push dword [ebp + 8]
call fcn.004301d0
add esp, 0xc
mov ecx, edi
push 2
call fcn.0042e320
push eax
mov ecx, ebx
call fcn.00411410
mov ecx, dword [eax + 4]
add ecx, eax
push ecx
push str.overlaySequence2
push dword [ebp + 8]
call fcn.004302a0
add esp, 0xc
mov ecx, edi
push 2
call fcn.0042e390
push ecx
fstp dword [esp]
push str.overlayWeight2
push dword [ebp + 8]
call fcn.004301d0
add esp, 0xc
mov ecx, edi
push 3
call fcn.0042e320
push eax
mov ecx, ebx
call fcn.00411410
mov edx, dword [eax + 4]
add edx, eax
push edx
push str.overlaySequence3
push dword [ebp + 8]
call fcn.004302a0
add esp, 0xc
mov ecx, edi
push 3
call fcn.0042e390
push ecx
fstp dword [esp]
push str.overlayWeight3
push dword [ebp + 8]
call fcn.004301d0
fld dword [0x63ac08]
add esp, 8
fstp dword [esp]
push str.speedscale
push dword [ebp + 8]
call fcn.004301d0
mov eax, dword [0x63ab90]
add esp, 0xc
mov ebx, dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push 4
push eax
push 4
push 0
push str.viewermode
push dword [ebp + 8]
call ebx
mov eax, dword [0x63ac50]
push 4
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.thumbnailsize
push dword [ebp + 8]
call ebx
mov eax, dword [0x63ac54]
mov dword [ebp - 4], eax
push 4
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.thumbnailsizeanim
push dword [ebp + 8]
call ebx
mov eax, dword [0x63ac58]
push 4
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.speechapiindex
push dword [ebp + 8]
call ebx
mov eax, dword [0x63ac5c]
push 4
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.cclanguageid
push dword [ebp + 8]
call ebx
movzx eax, byte [0x63abed]
push 4
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.showground
push dword [ebp + 8]
call ebx
movzx eax, byte [0x63abec]
push 4
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.showbackground
push dword [ebp + 8]
call ebx
movzx eax, byte [0x63abf0]
push 4
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.showshadow
push dword [ebp + 8]
call ebx
movzx eax, byte [0x63aba2]
push 4
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.showillumpos
push dword [ebp + 8]
call ebx
movzx eax, byte [0x63ab9f]
push 4
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.enablenormalmapping
push dword [ebp + 8]
call ebx
movzx eax, byte [0x63aba3]
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push 4
push eax
push 4
push 0
push str.playsounds
push dword [ebp + 8]
call ebx
movzx eax, byte [0x63ac00]
push 4
mov dword [ebp - 4], eax
lea eax, [ebp - 4]
push eax
push 4
push 0
push str.showoriginaxis
push dword [ebp + 8]
call ebx
fld dword [0x63ac04]
push ecx
fstp dword [esp]
push str.originaxislength
push dword [ebp + 8]
call fcn.004301d0
add esp, 0xc
mov edi, 0x63ac63
xor ebx, ebx
lea esp, [esp]
inc ebx
lea eax, [ebp - 0x28]
push ebx
push str.merge_d
push 0x20
push eax
call fcn.00439790
mov ecx, edi
add esp, 0x10
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x430830
sub ecx, edx
lea eax, [ebp - 0x28]
push ecx
push edi
push 1
push 0
push eax
push dword [ebp + 8]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
add edi, 0x100
cmp edi, 0x63b863
jl 0x430810
mov edx, dword [esi]
mov ecx, esi
mov bl, 1
call dword [edx + 0x68]
pop esi
mov al, bl
pop ebx
pop edi
mov esp, ebp
pop ebp
ret
xor al, al
pop edi
mov esp, ebp
pop ebp
ret