Function at 0x10004252
Capabilities:
Create process on windows

Disassembly:
mov eax, 0x10042270
call fcn.10035ae0
sub esp, 0x98
mov al, byte [ebp - 0xd]
push ebx
push esi
xor ebx, ebx
push edi
push ebx
lea ecx, [ebp - 0x70]
mov byte [ebp - 0x70], al
call fcn.100149cc
push 1
mov dword [ebp - 4], ebx
pop edi
push edi
call fcn.10003742
lea eax, [ebp - 0x24]
push eax
call fcn.10002fa0
pop ecx
pop ecx
push str.Cache
push eax
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 1
push eax
call fcn.100041a8
mov esi, dword [eax]
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 2
mov byte [ebp - 0x20], al
call fcn.100149cc
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x20]
call fcn.10015611
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
jne 0x100042d2
mov eax, 0x10047534
push eax
call fcn.1003677c
pop ecx
push edi
lea ecx, [ebp - 0x20]
call fcn.100149cc
lea ecx, [ebp - 0x58]
call fcn.10001a89
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], bl
call fcn.10001a89
lea eax, [ebp - 0x34]
push eax
call fcn.10001957
pop ecx
mov dword [ebp - 0x24], eax
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 3
mov byte [ebp - 0x20], al
call fcn.100149cc
mov esi, str.toolbar_id
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x20]
call fcn.10015611
push dword [ebp - 0x24]
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 4
push eax
call fcn.10002575
pop ecx
mov byte [ebp - 4], 3
pop ecx
push edi
lea ecx, [ebp - 0x20]
call fcn.100149cc
push edi
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], bl
call fcn.100149cc
lea eax, [ebp - 0x74]
push eax
call fcn.10002fa0
mov dword [esp], str.version.txt
push eax
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 5
push eax
call fcn.100041a8
mov esi, dword [eax]
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 6
mov byte [ebp - 0x84], al
call fcn.100149cc
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x84]
call fcn.10015611
lea ecx, [ebp - 0x24]
call fcn.10001a89
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 8
call fcn.10001a89
mov eax, dword [ebp - 0x80]
cmp eax, ebx
jne 0x100043c3
mov eax, 0x10047534
push 0x100548b4
push eax
call fcn.10036769
pop ecx
cmp eax, ebx
pop ecx
mov dword [ebp - 0x58], eax
je 0x10004485
push 0x800
call fcn.100356f9
push dword [ebp - 0x58]
mov esi, eax
mov dword [ebp - 0x60], esi
push 0x400
push esi
call fcn.100366d6
mov al, byte [ebp - 0xd]
add esp, 0x10
lea ecx, [ebp - 0x54]
mov byte [ebp - 0x54], al
push ebx
call fcn.100149cc
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x54]
call fcn.10015611
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0xa
mov byte [ebp - 0x20], al
call fcn.100149cc
mov esi, str.toolbar_version
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x20]
call fcn.10015611
lea eax, [ebp - 0x54]
mov byte [ebp - 4], 0xb
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.10002575
pop ecx
mov byte [ebp - 4], 0xa
pop ecx
push edi
lea ecx, [ebp - 0x20]
call fcn.100149cc
push edi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 8
call fcn.100149cc
push dword [ebp - 0x60]
call fcn.10032e05
push dword [ebp - 0x58]
call fcn.10036659
pop ecx
pop ecx
jmp 0x10004500
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x20]
mov byte [ebp - 0x20], al
call fcn.100149cc
mov esi, str.undefined
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x20]
call fcn.10015611
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xc
mov byte [ebp - 0x54], al
call fcn.100149cc
mov esi, str.toolbar_version
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x54]
call fcn.10015611
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.10002575
pop ecx
mov byte [ebp - 4], 0xc
pop ecx
push edi
lea ecx, [ebp - 0x54]
call fcn.100149cc
push edi
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 8
call fcn.100149cc
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x5c], ebx
mov byte [ebp - 0x20], al
call fcn.100149cc
mov esi, 0x10054578
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x20]
call fcn.10015611
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0xe
mov byte [ebp - 0x54], al
call fcn.100149cc
mov esi, str.firstTime
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x54]
call fcn.10015611
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.10002575
pop ecx
mov byte [ebp - 4], 0xe
pop ecx
push edi
lea ecx, [ebp - 0x54]
call fcn.100149cc
push edi
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 8
call fcn.100149cc
lea eax, [ebp - 0x5c]
push ebx
push eax
call fcn.1000342e
push 0x10059de0
call fcn.10002cd8
add esp, 0xc
test al, al
je 0x100045a8
push 0x10059e60
call fcn.10002cd8
test al, al
pop ecx
je 0x100045d3
push edi
lea ecx, [ebp - 0x70]
call fcn.10013536
push ecx
mov ecx, esp
mov dword [ebp - 0x60], esp
push eax
call fcn.10001065
mov ecx, 0x10059e74
call fcn.1001d920
push eax
push dword [ebp - 0x5c]
call fcn.100034c8
add esp, 0x10
mov eax, dword [ebp - 0x5c]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x80]
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x20]
mov byte [ebp - 0x20], al
call fcn.100149cc
mov esi, 0x1005457c
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x20]
call fcn.10015611
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x10
mov byte [ebp - 0x54], al
call fcn.100149cc
push str.Updating
call fcn.10035bc0
pop ecx
push eax
push str.Updating
lea ecx, [ebp - 0x54]
call fcn.10015611
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.10002a7b
add esp, 0xc
push edi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x14
call fcn.100149cc
push edi
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x13
call fcn.100149cc
push esi
lea ecx, [ebp - 0xa4]
call fcn.1001a2f3
test eax, eax
jne 0x10004728
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x34]
mov byte [ebp - 0x34], al
call fcn.100149cc
mov edi, 0x10059ef8
push edi
call fcn.10035bc0
pop ecx
push eax
push edi
lea ecx, [ebp - 0x34]
call fcn.10015611
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x15
mov byte [ebp - 0x44], al
call fcn.100149cc
mov edi, str.firstURL
push edi
call fcn.10035bc0
pop ecx
push eax
push edi
lea ecx, [ebp - 0x44]
call fcn.10015611
lea eax, [ebp - 0x34]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x94]
push eax
call fcn.10002a7b
add esp, 0xc
push dword [0x10047530]
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x17
push ebx
push eax
call fcn.10014664
push 1
lea ecx, [ebp - 0x94]
pop edi
mov byte [ebp - 4], 0x16
push edi
call fcn.100149cc
push edi
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x15
call fcn.100149cc
push edi
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x13
call fcn.100149cc
jmp 0x1000484d
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x44]
mov byte [ebp - 0x44], al
call fcn.100149cc
mov edi, 0x10059ef8
push edi
call fcn.10035bc0
pop ecx
push eax
push edi
lea ecx, [ebp - 0x44]
call fcn.10015611
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x18
mov byte [ebp - 0x34], al
call fcn.100149cc
mov edi, str.urlAfterUpdate
push edi
call fcn.10035bc0
pop ecx
push eax
push edi
lea ecx, [ebp - 0x34]
call fcn.10015611
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x94]
push eax
call fcn.10002a7b
add esp, 0xc
push dword [0x10047530]
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x1a
push ebx
push eax
call fcn.10014664
push 1
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x19
call fcn.100149cc
push 1
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x18
call fcn.100149cc
push 1
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x13
call fcn.100149cc
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x44]
mov byte [ebp - 0x44], al
call fcn.100149cc
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.10015611
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x1b
mov byte [ebp - 0x34], al
call fcn.100149cc
mov edi, str.Updating
push edi
call fcn.10035bc0
pop ecx
push eax
push edi
lea ecx, [ebp - 0x34]
call fcn.10015611
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.10002575
pop ecx
mov byte [ebp - 4], 0x1b
pop ecx
push 1
lea ecx, [ebp - 0x34]
call fcn.100149cc
push 1
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x13
call fcn.100149cc
push 1
pop edi
lea eax, [ebp - 0x70]
push eax
call fcn.100112d4
mov dword [esp], 0x10059de0
call fcn.10002cd8
test al, al
pop ecx
jne 0x10004888
mov eax, dword [ebp - 0x6c]
cmp eax, ebx
jne 0x10004873
mov eax, 0x10047534
push 5
push ebx
push eax
push str.iexplore.exe
push str.open
push ebx
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x44]
mov byte [ebp - 0x44], al
call fcn.100149cc
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x44]
call fcn.10015611
mov al, byte [ebp - 0xd]
push ebx
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x1d
mov byte [ebp - 0x34], al
call fcn.100149cc
mov esi, str.FirstTime
push esi
call fcn.10035bc0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x34]
call fcn.10015611
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.10002575
pop ecx
mov byte [ebp - 4], 0x1d
pop ecx
push edi
lea ecx, [ebp - 0x34]
call fcn.100149cc
push edi
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x13
call fcn.100149cc
push edi
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 8
call fcn.100149cc
push edi
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], bl
call fcn.100149cc
or dword [ebp - 4], 0xffffffff
push edi
lea ecx, [ebp - 0x70]
call fcn.100149cc
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret