Function at 0x40e560
Capabilities:
Create thread

Disassembly:
push 0x24
mov eax, 0x435a45
call fcn.0041c590
mov ebx, ecx
push str.RunPreInstallActions_
lea ecx, [ebp - 0x10]
call fcn.00402168
xor edi, edi
lea ecx, [ebp - 0x14]
push 0x43f73c
mov dword [ebp - 4], edi
call fcn.00402168
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call fcn.00404630
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x20], esp
push 0x440590
call fcn.004022cc
push ecx
mov byte [ebp - 4], 2
mov esi, esp
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.004028c8
add eax, 0x10
mov dword [esi], eax
mov byte [ebp - 4], 1
call fcn.0040d9e7
pop ecx
mov ecx, esp
push str.visible
call fcn.004022cc
call fcn.0040daf8
add esp, 0x18
test al, al
je 0x40e68f
lea eax, [ebp - 0x20]
push eax
push edi
push edi
push 0x416f07
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebx + 0x4c], eax
test eax, eax
jne 0x40e68f
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
test esi, esi
je 0x40e68f
push ecx
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.df9e414d_88e5_4351_9a1d_0ff7c8544ae3
call fcn.00402168
push ecx
mov byte [ebp - 4], 3
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 4
mov ecx, esp
mov dword [ebp - 0x18], esp
push str.CRITICAL
call fcn.00402168
push ecx
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.STARTUI
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 6
push str.CLARA
call fcn.00402168
mov ecx, esi
mov byte [ebp - 4], 1
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push esi
push str._StartUI_failed_with_error__d
push eax
call fcn.00403208
add esp, 0xc
call fcn.0040886a
mov edi, eax
test edi, edi
je 0x40e717
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.df9e414d_88e5_4351_9a1d_0ff7c8544ae3
call fcn.00402168
push ecx
mov byte [ebp - 4], 7
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 8
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.CRITICAL
call fcn.00402168
push ecx
mov byte [ebp - 4], 9
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.GENERATEDPARAM_SETUPAPPUID
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0xa
push str.WIN32
call fcn.00402168
mov ecx, edi
mov byte [ebp - 4], 1
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push edi
push str._GeneratedParam::SetUpAppUid_failed_with_error__d
push eax
call fcn.00403208
add esp, 0xc
sub esp, 0x18
mov ecx, esp
push str.bagkey
call fcn.004022cc
call fcn.0040daf8
add esp, 0x18
test al, al
je 0x40e811
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.Bagkey
call fcn.0040232d
sub esp, 0x18
mov byte [ebp - 4], 0xb
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.SOFTWAREClara
call fcn.0040232d
push ecx
mov esi, esp
mov byte [ebp - 4], 0xc
sub esp, 0x18
mov ecx, esp
push str.bagkey
call fcn.004022cc
mov ecx, esi
call fcn.0040d88f
add esp, 0x18
mov byte [ebp - 4], 1
mov dl, 1
xor ecx, ecx
call fcn.00403995
mov edi, eax
add esp, 0x34
test edi, edi
je 0x40e811
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.df9e414d_88e5_4351_9a1d_0ff7c8544ae3
call fcn.00402168
push ecx
mov byte [ebp - 4], 0xd
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0xe
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.CRITICAL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0xf
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.REGISTERS_SETVALUE
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x10
push str.WIN32
call fcn.00402168
mov ecx, edi
mov byte [ebp - 4], 1
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push edi
push str._Set_bagkey_in_Clara_registry_failed_with_error__d
push eax
call fcn.00403208
add esp, 0xc
sub esp, 0x18
mov ecx, esp
push str.configid
call fcn.004022cc
call fcn.0040daf8
add esp, 0x18
test al, al
je 0x40e8eb
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.ConfigId
call fcn.0040232d
sub esp, 0x18
mov byte [ebp - 4], 0x11
mov ecx, esp
push str.SOFTWAREClara
call fcn.0040232d
mov byte [ebp - 4], 1
xor edx, edx
mov ecx, dword [ebx + 0x54]
push 1
call fcn.00410857
mov edi, eax
add esp, 0x34
test edi, edi
je 0x40e8eb
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.df9e414d_88e5_4351_9a1d_0ff7c8544ae3
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x12
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x13
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.CRITICAL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x14
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.REGISTERS_SETVALUE
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x15
push str.WIN32
call fcn.00402168
mov ecx, edi
mov byte [ebp - 4], 1
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push edi
push str._Set_ConfigId_in_Clara_registry_failed_with_error__d
push eax
call fcn.00403208
add esp, 0xc
sub esp, 0x18
mov ecx, esp
push str.refererid
call fcn.004022cc
call fcn.0040daf8
add esp, 0x18
test al, al
je 0x40e9e5
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.RefererId
call fcn.0040232d
sub esp, 0x18
mov byte [ebp - 4], 0x16
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.SOFTWAREClara
call fcn.0040232d
push ecx
mov esi, esp
mov byte [ebp - 4], 0x17
sub esp, 0x18
mov ecx, esp
push str.refererid
call fcn.004022cc
mov ecx, esi
call fcn.0040d88f
add esp, 0x18
mov byte [ebp - 4], 1
mov dl, 1
xor ecx, ecx
call fcn.00403995
mov edi, eax
add esp, 0x34
test edi, edi
je 0x40e9e5
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.df9e414d_88e5_4351_9a1d_0ff7c8544ae3
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x18
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x19
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.CRITICAL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x1a
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.REGISTERS_SETVALUE
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x1b
push str.WIN32
call fcn.00402168
mov ecx, edi
mov byte [ebp - 4], 1
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push edi
push str._Set_refererid_in_Clara_registry_failed_with_error__d
push eax
call fcn.00403208
add esp, 0xc
test byte [ebx + 0x54], 1
je 0x40ec55
push ecx
mov ecx, esp
mov esi, str.dde5a5b2_e3f2_4725_94b9_0e16aa7fec5d
push esi
call fcn.00402168
mov ecx, dword [ebx + 0x6c]
lea eax, [ebp - 0x30]
push eax
call fcn.00415a17
mov byte [ebp - 4], 0x1c
cmp dword [ebp - 0x30], 0
je 0x40ebc5
sub esp, 0x1c
mov ecx, esp
push dword [ebp - 0x30]
call fcn.0040f05a
mov ecx, ebx
call fcn.00401aca
mov esi, eax
test esi, esi
je 0x40eaf4
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.dde5a5b2_e3f2_4725_94b9_0e16aa7fec5d
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x1d
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x1e
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.CRITICAL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x1f
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.BOBOBJ_IMPORTFROMBOBPRODUCT
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x20
push str.CLARA
call fcn.00402168
mov ecx, esi
mov byte [ebp - 4], 0x1c
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push esi
push str._m_bobObj.ImportFromBobProduct_failed_with_error__d
push eax
call fcn.00403208
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x18]
add esp, 0xc
push 0x8000
push eax
call fcn.00414edf
mov ecx, eax
mov byte [ebp - 4], 0x21
call fcn.0040227d
push ecx
mov ecx, esp
push eax
call fcn.00402168
mov edx, 0x484
mov ecx, esi
call fcn.00407a4a
pop ecx
pop ecx
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.004045c1
mov ecx, ebx
call fcn.00401943
mov edi, eax
test edi, edi
je 0x40ec45
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.dde5a5b2_e3f2_4725_94b9_0e16aa7fec5d
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x22
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x23
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.WARNING
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x24
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.BOBOBJ_IMPORTFROMBOBPRODUCT
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x25
push str.CLARA
call fcn.00402168
mov ecx, edi
mov byte [ebp - 4], 0x1c
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push edi
push str._m_bobObj.SetPreferencesInRegistry_failed_with_error__d
push eax
call fcn.00403208
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x18]
add esp, 0xc
push 0x8000
push eax
call fcn.00414edf
mov ecx, eax
mov byte [ebp - 4], 0x26
call fcn.0040227d
push ecx
mov ecx, esp
push eax
call fcn.00402168
mov edx, 0x484
mov ecx, edi
call fcn.00407a4a
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.004045c1
jmp 0x40ec45
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push esi
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x27
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x28
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.CRITICAL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x29
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.PRODUCTLISTMNGR_GETPRODUCTBYAPIKEY
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x2a
push str.CLARA
call fcn.00402168
mov ecx, 0x3f0
mov byte [ebp - 4], 0x1c
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push 0x3f0
push str._m_productListMngr__GetProductByApiKey_failed_with_error__d
push eax
call fcn.00403208
add esp, 0xc
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x40ec55
call fcn.0040e13a
test byte [ebx + 0x54], 0x20
je 0x40eec3
push ecx
mov ecx, esp
mov esi, str.bd0021e2_5794_4e04_b6ae_b69930f0bf22
push esi
call fcn.00402168
mov ecx, dword [ebx + 0x6c]
lea eax, [ebp - 0x30]
push eax
call fcn.00415a17
mov byte [ebp - 4], 0x2b
cmp dword [ebp - 0x30], 0
je 0x40ee33
sub esp, 0x1c
mov ecx, esp
push dword [ebp - 0x30]
call fcn.0040f05a
lea ecx, [ebx + 0x24]
call fcn.00401aca
mov edi, eax
test edi, edi
je 0x40ed61
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push esi
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x2c
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x2d
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.CRITICAL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x2e
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.BOBOBJ_IMPORTFROMBOBPRODUCT
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x2f
push str.CLARA
call fcn.00402168
mov ecx, edi
mov byte [ebp - 4], 0x2b
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push edi
push str._m_bobObj.ImportFromBobProduct_failed_with_error__d
push eax
call fcn.00403208
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x18]
add esp, 0xc
push 0x8000
push eax
call fcn.00414edf
mov ecx, eax
mov byte [ebp - 4], 0x30
call fcn.0040227d
push ecx
mov ecx, esp
push eax
call fcn.00402168
mov edx, 0x484
mov ecx, edi
call fcn.00407a4a
pop ecx
pop ecx
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.004045c1
lea ecx, [ebx + 0x24]
call fcn.00401943
mov edi, eax
test edi, edi
je 0x40eeb3
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push str.bd0021e2_5794_4e04_b6ae_b69930f0bf22
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x31
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x32
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.WARNING
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x33
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.BOBOBJ_IMPORTFROMBOBPRODUCT
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x34
push str.CLARA
call fcn.00402168
mov ecx, edi
mov byte [ebp - 4], 0x2b
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push edi
push str._m_bobObj.SetPreferencesInRegistry_failed_with_error__d
push eax
call fcn.00403208
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x18]
add esp, 0xc
push 0x8000
push eax
call fcn.00414edf
mov ecx, eax
mov byte [ebp - 4], 0x35
call fcn.0040227d
push ecx
mov ecx, esp
push eax
call fcn.00402168
mov edx, 0x484
mov ecx, edi
call fcn.00407a4a
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.004045c1
jmp 0x40eeb3
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push esi
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x36
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x37
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.CRITICAL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x38
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.PRODUCTLISTMNGR_GETPRODUCTBYAPIKEY
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x39
push str.CLARA
call fcn.00402168
mov ecx, 0x3f0
mov byte [ebp - 4], 0x2b
call fcn.0040e166
add esp, 0x14
lea eax, [ebp - 0x10]
push 0x3f0
push str._m_productListMngr__GetProductByApiKey_failed_with_error__d
push eax
call fcn.00403208
add esp, 0xc
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x40eec3
call fcn.0040e13a
test byte [ebx + 0x54], 2
je 0x40efed
push ecx
mov ecx, esp
mov esi, str.3c91fcc2_ce59_42b3_b901_f68079520898
push esi
call fcn.00402168
mov ecx, dword [ebx + 0x6c]
lea eax, [ebp - 0x30]
push eax
call fcn.00415a17
mov byte [ebp - 4], 0x3a
cmp dword [ebp - 0x30], 0
je 0x40ef55
lea eax, [ebp - 0x20]
push eax
call fcn.00407fc3
mov esi, eax
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x3b
mov ecx, dword [ebp - 0x30]
push eax
call fcn.00414ebe
push esi
mov edx, eax
mov byte [ebp - 4], 0x3c
lea ecx, [ebp - 0x18]
call fcn.0041044d
pop ecx
mov byte [ebp - 4], 0x3d
lea eax, [ebp - 0x18]
mov ecx, dword [ebp - 0x30]
push eax
lea ecx, [ecx + 0x14]
call fcn.004021b6
mov ecx, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
call fcn.004045c1
mov ecx, dword [ebp - 0x1c]
lea ecx, [ecx - 0x10]
call fcn.004045c1
mov ecx, dword [ebp - 0x20]
lea ecx, [ecx - 0x10]
call fcn.004045c1
jmp 0x40efdd
push ecx
mov ecx, esp
mov dword [ebp - 0x28], esp
push esi
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x3e
mov ecx, esp
mov dword [ebp - 0x24], esp
push str.AREA_PREINSTALL
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x3f
mov ecx, esp
mov dword [ebp - 0x20], esp
push str.WARNING
call fcn.00402168
push ecx
mov byte [ebp - 4], 0x40
mov ecx, esp
mov dword [ebp - 0x1c], esp
push str.PRODUCTLISTMNGR_GETPRODUCTBYAPIKEY
call fcn.00402168
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x41
push str.CLARA
call fcn.00402168
mov edi, 0x3f1
mov byte [ebp - 4], 0x3a
mov ecx, edi
call fcn.0040e166
add esp, 0x14
push 0x8000
push ecx
mov ecx, esp
push esi
call fcn.00402168
mov edx, 0x484
mov ecx, edi
call fcn.00407a4a
pop ecx
pop ecx
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x40efed
call fcn.0040e13a
push 1
push 0x44006c
lea ecx, [ebp - 0x10]
call fcn.00402d4e
test edi, edi
je 0x40f03c
push ecx
mov ecx, dword [ebp - 0x10]
mov esi, esp
add ecx, 0xfffffff0
mov dword [ebp - 0x28], esp
call fcn.004028c8
add eax, 0x10
mov dword [esi], eax
push ecx
mov ecx, esp
mov byte [ebp - 4], 0x42
push 0x43f73c
call fcn.00402168
mov edx, 0x8000
mov byte [ebp - 4], 1
mov ecx, 0x484
call fcn.00407b92
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.004045c1
mov ecx, dword [ebp - 0x10]
lea ecx, [ecx - 0x10]
call fcn.004045c1
mov eax, edi
call fcn.0041c55e
ret