Function at 0x10003cab
Capabilities:
Reference sql statements

Disassembly:
push 0x34
mov eax, 0x10015145
call fcn.10013ae5
mov edi, ecx
mov dword [ebp - 0x3c], edi
call fcn.10001479
push eax
lea ecx, [ebp - 0x1c]
call fcn.10001710
xor esi, esi
mov dword [ebp - 4], esi
call fcn.10001479
push eax
lea ecx, [ebp - 0x40]
call fcn.10001710
push str.SELECT__Target__FROM__CustomAction__WHERE__Action__s
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.1000161a
push str.UPDATE__CustomAction__SET__Target__s_WHERE__Action__s
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 2
call fcn.1000161a
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], esi
push str.SetReg_SD
mov byte [ebp - 4], 5
lea eax, [ebp - 0x1c]
push dword [ebp - 0x30]
push eax
call fcn.10002864
mov ebx, dword [sym.imp.msi.dll_MsiConfigureFeatureFromDescriptorA]
add esp, 0xc
cmp dword [ebp - 0x10], esi
je 0x10003d2d
push dword [ebp - 0x10]
call ebx
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], esi
mov esi, dword [ebp - 0x1c]
push eax
push esi
push edi
call dword [sym.imp.msi.dll_MsiEnumClientsA]
test eax, eax
jne 0x10003ea3
xor edi, edi
push edi
push dword [ebp - 0x10]
call dword [sym.imp.msi.dll_MsiViewModify]
test eax, eax
jne 0x10003ea3
cmp dword [ebp - 0x14], edi
je 0x10003d65
push dword [ebp - 0x14]
call ebx
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], edi
push eax
push dword [ebp - 0x10]
call dword [sym.imp.msi.dll_MsiDatabaseIsTablePersistentA]
test eax, eax
jne 0x10003ea3
mov edx, dword [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x24]
call fcn.10001c89
pop ecx
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x24]
cmp dword [eax - 0xc], 0
je 0x10003e9b
call fcn.10001479
push eax
lea ecx, [ebp - 0x18]
call fcn.10001710
mov byte [ebp - 4], 7
call fcn.10001479
push eax
lea ecx, [ebp - 0x20]
call fcn.10001710
mov byte [ebp - 4], 8
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x34], 0x3b
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x28]
push eax
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x38]
call fcn.10001b44
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 9
call fcn.100022db
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x38]
add ecx, 0xfffffff0
call fcn.1000145d
mov ebx, dword [ebp - 0x20]
cmp dword [ebx - 0xc], edi
je 0x10003e32
push ecx
push str.GenericAskToolbar.dll
lea ecx, [ebp - 0x20]
call fcn.100023e2
cmp eax, 0xffffffff
jne 0x10003e32
mov eax, dword [ebp - 0x18]
cmp dword [eax - 0xc], edi
je 0x10003e26
push ecx
lea ecx, [ebp - 0x18]
call fcn.10002329
push dword [ebx - 0xc]
lea ecx, [ebp - 0x18]
push ebx
call fcn.100027d3
cmp dword [ebp - 0x28], 0xffffffff
jne 0x10003dc9
mov edi, dword [ebp - 0x18]
lea eax, [ebp - 0x1c]
push str.SetReg_SD
push edi
push dword [ebp - 0x2c]
push eax
call fcn.10002864
add esp, 0x10
cmp dword [ebp - 0x10], 0
je 0x10003e5f
push dword [ebp - 0x10]
call dword [sym.imp.msi.dll_MsiConfigureFeatureFromDescriptorA]
mov esi, dword [ebp - 0x1c]
lea eax, [ebp - 0x10]
and dword [ebp - 0x10], 0
push eax
push esi
push dword [ebp - 0x3c]
call dword [sym.imp.msi.dll_MsiEnumClientsA]
test eax, eax
jne 0x10003e82
push eax
push dword [ebp - 0x10]
call dword [sym.imp.msi.dll_MsiViewModify]
lea ecx, [ebx - 0x10]
call fcn.1000145d
lea ecx, [edi - 0x10]
call fcn.1000145d
mov eax, dword [ebp - 0x24]
mov ebx, dword [sym.imp.msi.dll_MsiConfigureFeatureFromDescriptorA]
lea ecx, [eax - 0x10]
call fcn.1000145d
cmp dword [ebp - 0x14], 0
je 0x10003eae
push dword [ebp - 0x14]
call ebx
cmp dword [ebp - 0x10], 0
je 0x10003eb9
push dword [ebp - 0x10]
call ebx
mov ecx, dword [ebp - 0x2c]
lea ecx, [ecx - 0x10]
call fcn.1000145d
mov ecx, dword [ebp - 0x30]
lea ecx, [ecx - 0x10]
call fcn.1000145d
mov ecx, dword [ebp - 0x40]
lea ecx, [ecx - 0x10]
call fcn.1000145d
lea ecx, [esi - 0x10]
call fcn.1000145d
call fcn.10013ac2
ret