Function at 0x415a09
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4445ec
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x42c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov byte [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x2c]
call fcn.0040b920
mov dword [ebp - 4], 0
mov dword [ebp - 0x30], 0x400
mov byte [ebp - 4], 1
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
push str._ClsInternetExplorerSettings::ChangeWPAD_Checking_Registry_for_WPAD_info...
call fcn.004288c1
add esp, 4
push 0xf003f
lea eax, [ebp - 0x434]
push eax
push 0x45f4ec
push SysReAllocStringLen
call fcn.0041cb30
add esp, 0x10
and eax, 0xff
test eax, eax
je 0x415b01
lea ecx, [ebp - 0x18]
push ecx
push 0x45f534
mov edx, dword [ebp - 0x434]
push edx
call fcn.0041ccb6
add esp, 0xc
and eax, 0xff
test eax, eax
je 0x415ae8
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax + 8]
xor ecx, 8
mov edx, dword [ebp - 0x18]
mov byte [edx + 8], cl
mov eax, dword [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
push 3
push 0
push 0x45f550
mov edx, dword [ebp - 0x434]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
neg eax
sbb eax, eax
inc eax
mov byte [ebp - 0x14], al
jmp 0x415afc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x45f56c
call fcn.004288c1
add esp, 8
jmp 0x415bf9
lea ecx, [ebp - 0x2c]
call fcn.0040b9e0
and eax, 0xff
test eax, eax
je 0x415bec
push str._ClsWinInetEnvironment::ChangeWPAD_RegKey_not_on_current_user__looking_on_HKEY_USERS
call fcn.004288c1
add esp, 4
push 0x45f600
lea ecx, [ebp - 0x2c]
call fcn.0040bb60
push eax
push 0x45f648
lea eax, [ebp - 0x430]
push eax
call fcn.0042a288
add esp, 0x10
push 0xf003f
lea ecx, [ebp - 0x434]
push ecx
lea edx, [ebp - 0x430]
push edx
push SysReAllocStringLen
call fcn.0041cb30
add esp, 0x10
and eax, 0xff
test eax, eax
je 0x415bdd
lea eax, [ebp - 0x18]
push eax
push 0x45f650
mov ecx, dword [ebp - 0x434]
push ecx
call fcn.0041ccb6
add esp, 0xc
and eax, 0xff
test eax, eax
je 0x415bc7
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx + 8]
xor eax, 8
mov ecx, dword [ebp - 0x18]
mov byte [ecx + 8], al
mov edx, dword [ebp - 0x30]
push edx
lea eax, [ebp - 0x18]
push eax
push 3
push 0
push str.DefaultConnectionSettings
mov ecx, dword [ebp - 0x434]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
neg eax
sbb eax, eax
inc eax
mov byte [ebp - 0x14], al
jmp 0x415bdb
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._ClsInternetExplorerSettings::ChangeWPAD_unknown_error__ld
call fcn.004288c1
add esp, 8
jmp 0x415bea
push str._ClsInternetExplorerSettings::ChangeWPAD_RegKey_not_on_HKEYUSERS
call fcn.004288c1
add esp, 4
jmp 0x415bf9
push str.No_SID_info_for_current_user
call fcn.004288c1
add esp, 4
mov edx, dword [ebp - 0x434]
push edx
call fcn.0041cf17
add esp, 4
lea eax, [ebp - 0x18]
push eax
call fcn.004267ad
add esp, 4
mov ecx, dword [ebp - 0x14]
and ecx, 0xff
test ecx, ecx
je 0x415c2d
mov dword [ebp - 0x43c], str.successfully
jmp 0x415c37
mov dword [ebp - 0x43c], str.with_errors
mov edx, dword [ebp - 0x43c]
push edx
push str.WPAD_changed__s.
call fcn.004288c1
add esp, 8
jmp 0x415c60
mov dword [ebp - 4], 0
mov al, byte [ebp - 0x14]
mov byte [ebp - 0x438], al
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.0040b960
mov al, byte [ebp - 0x438]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret