Function at 0x10003550
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
push eax
mov eax, 0x21ec
call fcn.10007518
sub esp, eax
mov eax, dword [esp + eax]
mov ebx, eax
mov eax, dword [ecx + 8]
test byte [0x10008050], 8
jne 0x10003740
cmp eax, 0xffffff36
je 0x10003590
xor eax, eax
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
xor eax, eax
mov dword [esp + 0xc], 0x824
mov word [ebp - 0x209c], ax
lea eax, [ebp - 0x209c]
mov dword [esp + 8], eax
mov dword [esp + 4], 0x3e8
mov dword [esp], ebx
call dword [sym.imp.user32.dll_GetDlgItemTextW]
sub esp, 0x10
test byte [0x10008050], 8
jne 0x100038b0
mov dword [ebp - 0x21cc], 0x824
mov dword [esp], str.shdocvw.dll
call dword [sym.imp.kernel32.dll_LoadLibraryA]
sub esp, 4
mov esi, eax
mov dword [esp + 4], 0xaa
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_GetProcAddress]
sub esp, 8
test eax, eax
je 0x10003788
lea edi, [ebp - 0x1054]
lea edx, [ebp - 0x21cc]
mov dword [esp + 0xc], 0
mov dword [ebp - 0x21d0], edi
mov dword [esp + 4], edi
lea edi, [ebp - 0x209c]
mov dword [esp + 8], edx
mov dword [esp], edi
call eax
sub esp, 0x10
mov edi, eax
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_FreeLibrary]
mov dword [ebp - 0x21d4], edi
sub esp, 4
test byte [0x10008050], 8
jne 0x100037c4
mov edi, dword [ebp - 0x21d4]
test edi, edi
je 0x1000357f
mov eax, dword [ebp - 0x21d0]
mov dword [esp + 4], eax
lea eax, [ebp - 0x209c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_lstrcmpW]
sub esp, 8
test eax, eax
jne 0x10003a48
lea eax, [ebp - 0x21c8]
mov dword [esp + 4], str.SoftwareMicrosoftInternet_ExplorerMain
mov dword [esp + 8], eax
mov dword [esp], 0x80000001
call dword [sym.imp.advapi32.dll_RegOpenKeyW]
mov edx, eax
sub esp, 0xc
xor eax, eax
test edx, edx
jne 0x10003581
cmp word [ebp - 0x1054], 0
je 0x10003cc1
mov eax, dword [ebp - 0x21d0]
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x100036d0
sub eax, dword [ebp - 0x21d0]
add eax, 2
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x21d0]
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x21c8]
mov dword [esp + 8], 0
mov dword [esp + 4], str.Start_Page
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegSetValueExW]
mov ebx, eax
mov eax, dword [ebp - 0x21c8]
sub esp, 0x18
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegCloseKey]
xor eax, eax
sub esp, 4
test ebx, ebx
sete al
jmp 0x10003581
mov dword [esp + 0x20], eax
mov eax, dword [ecx]
mov esi, ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], str.WM_NOTIFY___p__0x_Ix__0x_Ix__from__p_with_code:__d_n
mov dword [esp + 8], str.general_on_notify
mov dword [esp + 4], 0x10008050
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_2
mov eax, dword [esi + 8]
jmp 0x10003578
test byte [0x10008050], 2
jne 0x10003bb8
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_FreeLibrary]
sub esp, 4
test byte [0x10008050], 8
je 0x1000357f
mov dword [ebp - 0x21d4], 0
lea eax, [ebp - 0x1054]
mov dword [ebp - 0x21d0], eax
mov eax, dword [ebp - 0x21d0]
shr eax, 0x10
je 0x100039a0
mov edi, dword [ebp - 0x21d0]
mov dword [esp + 4], 0xffffffff
mov dword [esp], edi
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov edx, 0x1000a2fe
sub esp, 8
test eax, eax
jne 0x100039b9
cmp word [ebp - 0x1054], 0
je 0x10003c82
mov ecx, edi
lea esi, [esi]
mov edx, eax
lea eax, [eax + 1]
cmp word [ecx + edx*2 + 2], 0
jne 0x10003810
mov esi, 0x224c
mov dword [ebp - 0x21d8], ebx
mov edi, dword [ebp - 0x21d0]
lea ecx, [ebp - 0x21c6]
mov word [ebp - 0x21c8], si
jmp 0x1000387b
cmp ax, 9
je 0x10003a70
cmp ax, 0xa
jne 0x10003b1e
mov eax, 0x6e5c
add ecx, 2
mov word [ecx - 2], ax
lea ebx, [ebp - 0x20a6]
lea eax, [edx - 1]
cmp ecx, ebx
ja 0x10003bf0
test edx, edx
jle 0x10003bf0
mov edx, eax
movzx eax, word [edi]
add edi, 2
cmp ax, 0xd
je 0x10003ba0
jbe 0x10003840
cmp ax, 0x22
je 0x10003b70
cmp ax, 0x5c
jne 0x10003b11
mov ebx, 0x5c5c
add ecx, 2
mov word [ecx - 2], bx
jmp 0x10003860
lea eax, [ebp - 0x209c]
shr eax, 0x10
je 0x100039f0
lea eax, [ebp - 0x209c]
mov dword [esp + 4], 0xffffffff
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov edx, 0x1000a2fe
sub esp, 8
test eax, eax
jne 0x10003a15
cmp word [ebp - 0x209c], 0
je 0x10003ca3
lea esi, [esi]
mov edx, eax
lea eax, [eax + 1]
cmp word [ebp + edx*2 - 0x209a], 0
jne 0x100038f8
mov eax, 0x224c
mov dword [ebp - 0x21d0], ebx
lea ecx, [ebp - 0x1052]
lea esi, [ebp - 0x209c]
mov word [ebp - 0x1054], ax
jmp 0x1000396b
cmp ax, 9
je 0x10003a88
cmp ax, 0xa
jne 0x10003aa6
mov eax, 0x6e5c
add ecx, 2
mov word [ecx - 2], ax
lea eax, [edx - 1]
test edx, edx
jle 0x10003c30
lea edi, [ebp - 0xf32]
cmp ecx, edi
ja 0x10003c30
mov edx, eax
movzx eax, word [esi]
add esi, 2
cmp ax, 0xd
je 0x10003b88
jbe 0x10003930
cmp ax, 0x22
je 0x10003b00
cmp ax, 0x5c
jne 0x10003a99
mov ebx, 0x5c5c
add ecx, 2
mov word [ecx - 2], bx
jmp 0x10003950
movzx eax, word [ebp - 0x21d0]
mov dword [esp], 0x1000a2f8
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0_1
mov edx, eax
mov eax, dword [ebp - 0x21d4]
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], str.got__ld_with__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.general_on_notify
mov dword [esp + 4], 0x10008050
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_2
jmp 0x10003655
lea eax, [ebp - 0x209c]
mov dword [esp], 0x1000a2f8
mov dword [ebp - 0x21d0], eax
movzx eax, word [ebp - 0x21d0]
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0_1
mov edx, eax
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], str.EDITTEXT_has__s_n
mov dword [esp + 8], str.general_on_notify
mov dword [esp + 4], 0x10008050
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_2
jmp 0x100035cc
mov eax, dword [ebp - 0x21d0]
mov dword [esp + 4], 0x3e8
mov dword [esp], ebx
mov dword [esp + 8], eax
call dword [sym.imp.user32.dll_SetDlgItemTextW]
sub esp, 0xc
jmp 0x10003687
mov eax, 0x745c
add ecx, 2
mov word [ecx - 2], ax
jmp 0x10003860
mov eax, 0x745c
add ecx, 2
mov word [ecx - 2], ax
jmp 0x10003950
lea edi, [eax - 0x20]
cmp di, 0x5e
jbe 0x10003c78
mov edi, eax
mov byte [ecx], 0x5c
add ecx, 5
shr di, 0xc
movzx edi, di
movzx ebx, byte [edi + str.0123456789abcdefparse_url_from_outside]
mov edi, eax
shr di, 8
and edi, 0xf
mov byte [ecx - 4], bl
movzx ebx, byte [edi + str.0123456789abcdefparse_url_from_outside]
mov edi, eax
and eax, 0xf
shr di, 4
movzx eax, byte [eax + str.0123456789abcdefparse_url_from_outside]
and edi, 0xf
mov byte [ecx - 3], bl
movzx ebx, byte [edi + str.0123456789abcdefparse_url_from_outside]
mov byte [ecx - 1], al
mov byte [ecx - 2], bl
jmp 0x10003950
mov edi, 0x225c
add ecx, 2
mov word [ecx - 2], di
jmp 0x10003950
lea esi, [eax - 0x20]
cmp si, 0x5e
jbe 0x10003c68
mov esi, eax
mov byte [ecx], 0x5c
add ecx, 5
shr si, 0xc
movzx esi, si
movzx ebx, byte [esi + str.0123456789abcdefparse_url_from_outside]
mov esi, eax
shr si, 8
and esi, 0xf
mov byte [ecx - 4], bl
movzx ebx, byte [esi + str.0123456789abcdefparse_url_from_outside]
mov esi, eax
and eax, 0xf
shr si, 4
movzx eax, byte [eax + str.0123456789abcdefparse_url_from_outside]
and esi, 0xf
mov byte [ecx - 3], bl
movzx ebx, byte [esi + str.0123456789abcdefparse_url_from_outside]
mov byte [ecx - 1], al
mov byte [ecx - 2], bl
jmp 0x10003860
mov esi, 0x225c
add ecx, 2
mov word [ecx - 2], si
jmp 0x10003860
mov eax, 0x725c
add ecx, 2
mov word [ecx - 2], ax
jmp 0x10003950
mov eax, 0x725c
add ecx, 2
mov word [ecx - 2], ax
jmp 0x10003860
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 0xc], str.failed_to_get_ordinal_170:__ld_n
mov dword [esp + 8], 0x1000a3c0
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x10008050
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_2
jmp 0x10003795
mov byte [ecx], 0x22
mov ebx, dword [ebp - 0x21d8]
test eax, eax
jle 0x10003c9b
mov edx, 0x2e2e
mov byte [ecx + 3], 0x2e
lea eax, [ecx + 4]
mov word [ecx + 1], dx
mov byte [eax], 0
lea eax, [ebp - 0x21c8]
mov dword [esp], eax
call sym.___wine_dbg_strdup
mov edx, eax
jmp 0x100039b9
mov byte [ecx], 0x22
mov ebx, dword [ebp - 0x21d0]
test eax, eax
jle 0x10003cbc
mov edx, 0x2e2e
mov byte [ecx + 3], 0x2e
lea eax, [ecx + 4]
mov word [ecx + 1], dx
mov byte [eax], 0
lea eax, [ebp - 0x1054]
mov dword [esp], eax
call sym.___wine_dbg_strdup
mov edx, eax
jmp 0x10003a15
mov byte [ecx], al
add ecx, 1
jmp 0x10003860
mov byte [ecx], al
add ecx, 1
jmp 0x10003950
mov byte [ebp - 0x21c6], 0x22
mov ecx, 0x224c
mov word [ebp - 0x21c8], cx
lea ecx, [ebp - 0x21c6]
lea eax, [ecx + 1]
jmp 0x10003c11
mov edx, 0x224c
mov byte [ebp - 0x1052], 0x22
lea ecx, [ebp - 0x1052]
mov word [ebp - 0x1054], dx
lea eax, [ecx + 1]
jmp 0x10003c4d
mov eax, 2
jmp 0x100036e2