Function at 0x415e00
Capabilities:
Get proxy
Get session user name
Persist via windows service
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4afbb1
mov eax, dword fs:[0]
push eax
sub esp, 0x27c
mov eax, dword [0x4e506c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
push str.SystemCurrentControlSetServices_
lea ecx, [ebp - 0x264]
mov byte [ebp - 0x285], 0
mov dword [ebp - 0x26c], 0
mov dword [ebp - 0x268], 0
call fcn.00404c00
push 0x14
push str.MBAMInstallerService
lea ecx, [ebp - 0x264]
mov dword [ebp - 4], 0
call fcn.0040c200
cmp dword [ebp - 0x250], 8
lea ecx, [ebp - 0x26c]
push ecx
push 0x2001f
lea eax, [ebp - 0x264]
cmovae eax, dword [ebp - 0x264]
push 0
push eax
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov esi, eax
test esi, esi
je 0x415f26
lea ecx, [ebp - 0x230]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 1
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x1ff
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_open_service_registry:
mov ecx, eax
call fcn.0040f6d0
push esi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 2
call fcn.00404c50
xor bl, bl
jmp 0x417fff
push 0
lea eax, [ebp - 0x268]
push eax
push 0
push 0x2001f
push 0
push 0
push 0
push 0x4c8b7c
push dword [ebp - 0x26c]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov esi, eax
test esi, esi
je 0x415fe1
lea ecx, [ebp - 0x230]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 4
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x206
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_create_service_parameters_registry:
mov ecx, eax
call fcn.0040f6d0
push esi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 5
call fcn.00404c50
push dword [ebp - 0x26c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor bl, bl
jmp 0x417fff
cmp byte [ebp + 0xc], 0
je 0x4162ae
mov ecx, dword [0x4e5e90]
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetKeyValueW]
test ecx, ecx
je 0x4160a1
cmp dword [0x4e5e94], 8
lea ecx, [ecx*2 + 2]
push ecx
mov eax, 0x4e5e80
cmovae eax, dword [0x4e5e80]
push eax
push 1
push str.ProxyServer
push 0
push dword [ebp - 0x268]
call esi
mov edi, eax
test edi, edi
je 0x4160a1
lea ecx, [ebp - 0x230]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 7
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x214
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_ProxyServer_value:
mov ecx, eax
call fcn.0040f6d0
push edi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 8
call fcn.00404c50
mov byte [ebp - 4], 0
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x416145
push 4
mov dword [ebp - 0x218], eax
lea eax, [ebp - 0x218]
push eax
push 4
push 0
push str.ProxyPort
push dword [ebp - 0x268]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov edi, eax
test edi, edi
je 0x416145
lea ecx, [ebp - 0x230]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 9
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x21e
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_ProxyPort_value:
mov ecx, eax
call fcn.0040f6d0
push edi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0xa
call fcn.00404c50
mov byte [ebp - 4], 0
mov ecx, dword [0x4e5ea8]
test ecx, ecx
je 0x4161f5
cmp dword [0x4e5eac], 8
lea ecx, [ecx*2 + 2]
push ecx
mov eax, 0x4e5e98
cmovae eax, dword [0x4e5e98]
push eax
push 1
push str.ProxyUsername
push 0
push dword [ebp - 0x268]
call esi
mov edi, eax
test edi, edi
je 0x4161f5
lea ecx, [ebp - 0x230]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0xb
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x226
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_ProxyUsername_value:
mov ecx, eax
call fcn.0040f6d0
push edi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0xc
call fcn.00404c50
mov byte [ebp - 4], 0
mov ecx, dword [0x4e5ec0]
test ecx, ecx
je 0x416583
cmp dword [0x4e5ec4], 8
lea ecx, [ecx*2 + 2]
push ecx
mov eax, 0x4e5eb0
cmovae eax, dword [0x4e5eb0]
push eax
push 1
push str.ProxyPassword
push 0
push dword [ebp - 0x268]
call esi
mov esi, eax
test esi, esi
je 0x416583
lea ecx, [ebp - 0x230]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0xd
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x22e
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_ProxyPassword_value:
mov ecx, eax
call fcn.0040f6d0
push esi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0xe
call fcn.00404c50
mov byte [ebp - 4], 0
jmp 0x416583
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 0xf
call fcn.00404cb0
lea ecx, [ebp - 0x24c]
call fcn.00404cd0
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x11
call fcn.00404cb0
lea ecx, [ebp - 0x230]
call fcn.00404cd0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x24c]
mov ecx, ebx
push eax
push 1
call fcn.00415470
lea ecx, [ebp - 0x284]
test al, al
je 0x4164f7
mov byte [ebp - 0x285], 1
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x13
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x23a
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Found_proxy_settings:
mov ecx, eax
call fcn.0040f6d0
lea edx, [ebp - 0x24c]
mov ecx, eax
call fcn.0040f6b0
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x14
call fcn.00404c50
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x23c]
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetKeyValueW]
test ecx, ecx
je 0x416443
cmp dword [ebp - 0x238], 8
lea ecx, [ecx*2 + 2]
push ecx
lea eax, [ebp - 0x24c]
cmovae eax, dword [ebp - 0x24c]
push eax
push 1
push str.Proxy
push 0
push dword [ebp - 0x268]
call esi
mov edi, eax
test edi, edi
je 0x416443
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x15
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x23f
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_Proxy_value:
mov ecx, eax
call fcn.0040f6d0
push edi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x16
call fcn.00404c50
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x220]
test ecx, ecx
je 0x416554
cmp dword [ebp - 0x21c], 8
lea ecx, [ecx*2 + 2]
push ecx
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
push 1
push str.ProxyBypass
push 0
push dword [ebp - 0x268]
call esi
mov esi, eax
test esi, esi
je 0x416554
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x17
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x246
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_ProxyBypass_value:
mov ecx, eax
call fcn.0040f6d0
push esi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x18
jmp 0x416549
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x19
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x24c
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Did_not_find_proxy_settings
mov ecx, eax
call fcn.0040f6d0
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x284]
call fcn.00404c50
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x1b
call fcn.00404c50
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 0x1c
call fcn.00404c50
cmp byte [ebp - 0x285], 0
mov byte [ebp - 4], 0
je 0x416620
push 4
lea eax, [ebp - 0x218]
mov dword [ebp - 0x218], 1
push eax
push 4
push 0
push str.SetProxyConfigOnSDK
push dword [ebp - 0x268]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov esi, eax
test esi, esi
je 0x416620
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x1d
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x257
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_SetProxyConfigOnSDK_value:
mov ecx, eax
call fcn.0040f6d0
push esi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x1e
call fcn.00404c50
mov byte [ebp - 4], 0
push 0x202
lea eax, [ebp - 0x214]
push 0
push eax
call fcn.004864f0
add esp, 0xc
mov dword [ebp - 0x234], 0xff
lea eax, [ebp - 0x234]
push eax
lea eax, [ebp - 0x214]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
mov edi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
je 0x416745
lea eax, [ebp - 0x214]
push eax
lea ecx, [ebp - 0x230]
call fcn.00404c00
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x220]
test ecx, ecx
je 0x416739
cmp dword [ebp - 0x21c], 8
lea ecx, [ecx*2 + 2]
push ecx
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
push 1
push str.UserName
push 0
push dword [ebp - 0x268]
call dword [sym.imp.ADVAPI32.dll_RegSetKeyValueW]
mov esi, eax
test esi, esi
je 0x416739
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x20
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x266
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_userName_value:
mov ecx, eax
call fcn.0040f6d0
push esi
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x21
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x230]
jmp 0x4167b3
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x23
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x26e
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Error_calling_GetUserName:
mov ecx, eax
call fcn.0040f6d0
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov ecx, esi
call fcn.004194b0
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x284]
call fcn.00404c50
mov byte [ebp - 4], 0
mov eax, dword [ebx + 0x30]
test eax, eax
je 0x416872
cmp dword [ebx + 0x34], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0x20]
jb 0x4167d9
mov eax, dword [eax]
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetKeyValueW]
push ecx
push eax
push 1
push str.ProductCode
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x416878
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x25
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x276
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_ProductCode_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x26
jmp 0x416cc8
mov esi, dword [sym.imp.ADVAPI32.dll_RegSetKeyValueW]
mov eax, dword [ebx + 0x48]
test eax, eax
je 0x41692c
cmp dword [ebx + 0x4c], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0x38]
jb 0x416895
mov eax, dword [eax]
push ecx
push eax
push 1
push str.ProductBuild
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x4169ee
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x28
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x283
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_ProductBuild_2__value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x29
jmp 0x416cc8
cmp dword [ebx + 0x30], 0
je 0x4169ee
cmp dword [ebx + 0x34], 8
lea eax, [ebx + 0x20]
jb 0x416941
mov eax, dword [eax]
push eax
push str.MDAM_B
call fcn.0048c547
add esp, 8
test eax, eax
jne 0x4169ee
push 0x12
push str.business
push 1
push str.ProductBuild
push eax
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x4169ee
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x2b
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x28d
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_ProductBuild_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x2c
jmp 0x416cc8
mov eax, dword [ebx + 0x78]
test eax, eax
je 0x416a9e
cmp dword [ebx + 0x7c], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0x68]
jb 0x416a0b
mov eax, dword [eax]
push ecx
push eax
push 1
push str.ProgramDirectory
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x416a9e
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x2e
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x298
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_ProgramDirectory_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x2f
jmp 0x416cc8
mov eax, dword [ebx + 0x90]
test eax, eax
je 0x416b57
cmp dword [ebx + 0x94], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0x80]
jb 0x416ac4
mov eax, dword [eax]
push ecx
push eax
push 1
push str.DataDirectory
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x416b57
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x31
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x2a3
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_DataDirectory_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x32
jmp 0x416cc8
mov eax, dword [ebx + 0x150]
test eax, eax
je 0x416c10
cmp dword [ebx + 0x154], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0x140]
jb 0x416b7d
mov eax, dword [eax]
push ecx
push eax
push 1
push str.LocalAppDataDir
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x416c10
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x34
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x2af
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_LocalAppDataDir_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x35
jmp 0x416cc8
mov eax, dword [ebx + 0xa8]
test eax, eax
je 0x416cea
cmp dword [ebx + 0xac], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0x98]
jb 0x416c36
mov eax, dword [eax]
push ecx
push eax
push 1
push str.Build
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x416cea
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x37
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x2ba
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_Build_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x284]
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
cmp byte [ebp + 8], 0
je 0x416dff
push 0x4c8fb8
lea ecx, [ebp - 0x230]
call fcn.00404c00
mov byte [ebp - 4], 0x3a
mov eax, dword [ebp - 0x220]
cmp dword [ebp - 0x21c], 8
lea ecx, [eax*2 + 2]
push ecx
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
push 1
push str.UseLocalISvcForUninst
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x416dec
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x3b
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x2c7
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_UseLocalISvcForUninst_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x3c
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x3d
call fcn.00404c50
xor bl, bl
jmp 0x417fff
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x3f
call fcn.00404c50
mov byte [ebp - 4], 0
mov eax, dword [ebx + 0xc0]
test eax, eax
je 0x416ed9
cmp dword [ebx + 0xc4], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0xb0]
jb 0x416e25
mov eax, dword [eax]
push ecx
push eax
push 1
push str.Channel
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x416ed9
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x40
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x2d2
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_Channel_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x41
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov eax, dword [ebx + 0xf0]
test eax, eax
je 0x416fb3
cmp dword [ebx + 0xf4], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0xe0]
jb 0x416eff
mov eax, dword [eax]
push ecx
push eax
push 1
push str.ServiceChannel
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x416fb3
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x43
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x2dd
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_ServiceChannel_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x44
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov eax, dword [ebx + 0x108]
test eax, eax
je 0x41708d
cmp dword [ebx + 0x10c], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0xf8]
jb 0x416fd9
mov eax, dword [eax]
push ecx
push eax
push 1
push str.ControllerChannel
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x41708d
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x46
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x2e8
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_ControllerChannel_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x47
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov eax, dword [ebx + 0x120]
test eax, eax
je 0x417167
cmp dword [ebx + 0x124], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0x110]
jb 0x4170b3
mov eax, dword [eax]
push ecx
push eax
push 1
push str.DBChannel
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x417167
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x49
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x2f3
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_DBChannel_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x4a
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov eax, dword [ebx + 0x138]
test eax, eax
je 0x417241
cmp dword [ebx + 0x13c], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 0x128]
jb 0x41718d
mov eax, dword [eax]
push ecx
push eax
push 1
push 0x4c9110
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x417241
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x4c
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x2fe
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_Key_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x4d
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov eax, dword [ebx + 0x18]
test eax, eax
je 0x417312
cmp dword [ebx + 0x1c], 8
lea ecx, [eax*2 + 2]
lea eax, [ebx + 8]
jb 0x41725e
mov eax, dword [eax]
push ecx
push eax
push 1
push str.Installer
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x417312
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x4f
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x309
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_installer_Path_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x50
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov cl, byte [ebx + 0x158]
xor eax, eax
test cl, cl
mov edx, str.false
sete al
test cl, cl
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, edx
push eax
push 1
push str.Silent
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x4173e9
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x52
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x313
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_Silent_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x53
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov cl, byte [ebx + 0x159]
xor eax, eax
test cl, cl
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, ecx
push eax
push 1
push str.Reboot
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x4174c0
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x55
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x31c
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_Reboot_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x56
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov cl, byte [ebx + 5]
xor eax, eax
test cl, cl
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, ecx
push eax
push 1
push str.Staging
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x417594
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x58
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x325
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_Staging_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x59
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov cl, byte [ebx + 0x15a]
xor eax, eax
test cl, cl
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, ecx
push eax
push 1
push str.CreateIcon
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x41766b
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x5b
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x32e
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_CreateIcon_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x5c
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
cmp byte [ebx + 0x15b], 0
je 0x417731
push 0xa
push str.true
push 1
push str.Uninstall
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x417731
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x5e
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x338
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_uninstall_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x5f
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
cmp byte [ebx + 0x15c], 0
je 0x4177f7
push 0xa
push str.true
push 1
push str.BifurcationShown
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x4177f7
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x61
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x343
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_bifurcationShown_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
mov ecx, eax
call fcn.00419660
push eax
call fcn.0040fa40
add esp, 4
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x62
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
mov cl, byte [ebx + 0x15d]
xor eax, eax
test cl, cl
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, ecx
push eax
push 1
push 0x4c92d4
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x417899
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x64
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x34d
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_start_trial_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
jmp 0x417b95
mov cl, byte [ebx + 0x15e]
xor eax, eax
test cl, cl
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, ecx
push eax
push 1
push str.SkipOnboarding
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x41793b
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x65
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x356
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_skip_onboarding_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
jmp 0x417b95
mov cl, byte [ebx + 0x15f]
xor eax, eax
test cl, cl
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, ecx
push eax
push 1
push str.LogTelemetry
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x4179d1
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x66
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x35f
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_LogTelemetry_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
jmp 0x417b95
mov cl, byte [ebx + 0x160]
xor eax, eax
test cl, cl
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, ecx
push eax
push 1
push str.DebugLogging
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x417a67
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x67
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x368
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_DebugLogging_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
jmp 0x417b95
mov cl, byte [ebx + 0x162]
xor eax, eax
test cl, cl
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, ecx
push eax
push 1
push str.FoundIFEOKey
push 0
push dword [ebp - 0x268]
call esi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x417afd
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x68
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x371
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_FoundIFEOKey_value:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
jmp 0x417b95
mov cl, byte [ebx + 0x161]
xor eax, eax
test cl, cl
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.true
cmove eax, ecx
push eax
push 1
push str.LanguageSet
push 0
push dword [ebp - 0x268]
call esi
mov esi, eax
test esi, esi
je 0x417bca
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x69
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x37a
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_Language_set_value:
mov ecx, eax
call fcn.0040f6d0
push esi
mov ecx, eax
call fcn.00419660
push fcn.0040fa40
mov ecx, eax
call fcn.0040de80
lea ecx, [ebp - 0x284]
call fcn.00404c50
push dword [ebp - 0x268]
call edi
push dword [ebp - 0x26c]
call edi
xor bl, bl
jmp 0x417fff
lea ecx, [ebx + 0x164]
call fcn.004194a0
lea ecx, [ebx + 0x164]
lea edi, [eax*2 + 2]
call fcn.0040c350
push edi
push eax
push 1
push str.Language
push 0
push dword [ebp - 0x268]
call dword [sym.imp.ADVAPI32.dll_RegSetKeyValueW]
mov esi, eax
test esi, esi
je 0x417c59
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x6a
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x383
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_language_code:
jmp 0x417fa7
lea ecx, [ebx + 0x17c]
call fcn.004194a0
lea ecx, [ebx + 0x17c]
lea edi, [eax*2 + 2]
call fcn.0040c350
push edi
push eax
push 1
push str.Affiliate
push 0
push dword [ebp - 0x268]
call dword [sym.imp.ADVAPI32.dll_RegSetKeyValueW]
mov esi, eax
test esi, esi
je 0x417ce8
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x6b
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x38c
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_affiliate_name:
jmp 0x417fa7
lea ecx, [ebx + 0x194]
call fcn.004194a0
lea ecx, [ebx + 0x194]
lea edi, [eax*2 + 2]
call fcn.0040c350
push edi
mov edi, dword [sym.imp.ADVAPI32.dll_RegSetKeyValueW]
push eax
push 1
push str.AffiliateId
push 0
push dword [ebp - 0x268]
call edi
mov esi, eax
test esi, esi
je 0x417d79
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x6c
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x395
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_affiliate_id:
jmp 0x417fa7
lea ecx, [ebx + 0x1ac]
call fcn.0040bf30
test al, al
jne 0x417e07
lea ecx, [ebx + 0x1ac]
call fcn.004194a0
lea ecx, [ebx + 0x1ac]
lea esi, [eax*2 + 2]
call fcn.0040c350
push esi
push eax
push 1
push str.InstUUID
push 0
push dword [ebp - 0x268]
call edi
mov esi, eax
test esi, esi
je 0x417e07
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x6d
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x3a0
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_InstUUID:
jmp 0x417fa7
mov cl, byte [ebx + 0x1c4]
xor eax, eax
test cl, cl
mov esi, str.true
sete al
test cl, cl
mov ecx, str.false
lea eax, [eax*2 + 0xa]
push eax
mov eax, esi
cmove eax, ecx
push eax
push 1
push str.InstallBrowserGuard
push 0
push dword [ebp - 0x268]
call edi
mov dword [ebp - 0x218], eax
test eax, eax
je 0x417eab
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x6e
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x3aa
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_InstallBrowserGuard:
mov ecx, eax
call fcn.0040f6d0
push dword [ebp - 0x218]
jmp 0x417faf
mov cl, byte [ebx + 0x1c5]
xor eax, eax
test cl, cl
sete al
test cl, cl
lea eax, [eax*2 + 0xa]
push eax
mov eax, str.false
cmove esi, eax
push esi
push 1
push str.UseStagingLicense
push 0
push dword [ebp - 0x268]
call edi
mov esi, eax
test esi, esi
je 0x417f28
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x6f
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x3b3
mov ecx, eax
call fcn.0040dcd0
mov edx, str.:_Failed_to_set_UseStagingLicense_value:
jmp 0x417fa7
cmp byte [ebx + 0x1c7], 0
je 0x417fe7
push 0xa
push str.true
push 1
push str.InstallCTSDKApp
push 0
push dword [ebp - 0x268]
call edi
mov esi, eax
test esi, esi
je 0x417fe7
lea ecx, [ebp - 0x284]
call fcn.0045e700
mov edx, eax
mov byte [ebp - 4], 0x70
mov ecx, 0x4e94e0
call fcn.0040f6b0
mov edx, 0x4c8438
mov ecx, eax
call fcn.0040f6d0
mov edx, 0x4c8124
mov ecx, eax
call fcn.0040f6d0
push 0x3be
mov ecx, eax
call fcn.0040dcd0
mov edx, 0x4c834c
mov ecx, eax
call fcn.0040f6d0
mov edx, str.Failed_to_set_InstallCTSDKApp_value:
mov ecx, eax
call fcn.0040f6d0
push esi
mov ecx, eax
call fcn.00419660
push fcn.0040fa40
mov ecx, eax
call fcn.0040de80
lea ecx, [ebp - 0x284]
call fcn.00404c50
push dword [ebp - 0x268]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call esi
push dword [ebp - 0x26c]
call esi
xor bl, bl
jmp 0x417fff
push dword [ebp - 0x268]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call esi
push dword [ebp - 0x26c]
call esi
mov bl, 1
lea ecx, [ebp - 0x264]
call fcn.00404c50
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0046de82
mov esp, ebp
pop ebp
ret 0x18