Function at 0x4157b9
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x44140c
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.0040b8d0
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.0042571d
add esp, 4
push 0xf003f
lea eax, [ebp - 0x434]
push eax
push 0x45b6b8
push SysReAllocStringLen
call fcn.0041b200
add esp, 0x10
and eax, 0xff
test eax, eax
je 0x4158b1
lea ecx, [ebp - 0x18]
push ecx
push 0x45b700
mov edx, dword [ebp - 0x434]
push edx
call fcn.0041b386
add esp, 0xc
and eax, 0xff
test eax, eax
je 0x415898
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 0x45b71c
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 0x4158ac
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x45b738
call fcn.0042571d
add esp, 8
jmp 0x4159a9
lea ecx, [ebp - 0x2c]
call fcn.0040b990
and eax, 0xff
test eax, eax
je 0x41599c
push str._ClsWinInetEnvironment::ChangeWPAD_RegKey_not_on_current_user__looking_on_HKEY_USERS
call fcn.0042571d
add esp, 4
push 0x45b7cc
lea ecx, [ebp - 0x2c]
call fcn.0040bb10
push eax
push 0x45b814
lea eax, [ebp - 0x430]
push eax
call fcn.004270d8
add esp, 0x10
push 0xf003f
lea ecx, [ebp - 0x434]
push ecx
lea edx, [ebp - 0x430]
push edx
push SysReAllocStringLen
call fcn.0041b200
add esp, 0x10
and eax, 0xff
test eax, eax
je 0x41598d
lea eax, [ebp - 0x18]
push eax
push 0x45b81c
mov ecx, dword [ebp - 0x434]
push ecx
call fcn.0041b386
add esp, 0xc
and eax, 0xff
test eax, eax
je 0x415977
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 0x41598b
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._ClsInternetExplorerSettings::ChangeWPAD_unknown_error__ld
call fcn.0042571d
add esp, 8
jmp 0x41599a
push str._ClsInternetExplorerSettings::ChangeWPAD_RegKey_not_on_HKEYUSERS
call fcn.0042571d
add esp, 4
jmp 0x4159a9
push str.No_SID_info_for_current_user
call fcn.0042571d
add esp, 4
mov edx, dword [ebp - 0x434]
push edx
call fcn.0041b5e7
add esp, 4
lea eax, [ebp - 0x18]
push eax
call fcn.004234c1
add esp, 4
mov ecx, dword [ebp - 0x14]
and ecx, 0xff
test ecx, ecx
je 0x4159dd
mov dword [ebp - 0x43c], str.successfully
jmp 0x4159e7
mov dword [ebp - 0x43c], str.with_errors
mov edx, dword [ebp - 0x43c]
push edx
push str.WPAD_changed__s.
call fcn.0042571d
add esp, 8
jmp 0x415a10
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.0040b910
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