Function at 0x4168f6
Capabilities:
Check if file exists
Create thread

Disassembly:
mov eax, 0x431ae4
call fcn.0042e690
sub esp, 0xecc
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 0xed8], esi
xor edi, edi
mov dword [ebp - 0x42c], edi
push dword [0x443b00]
call dword [0x432520]
test eax, eax
jne 0x416978
mov eax, dword [esi + 0x20]
push str.4.0.0.6
push eax
call fcn.0042042f
pop ecx
pop ecx
test eax, eax
jge 0x416978
lea eax, [ebp - 0x434]
push eax
push edi
push edi
push 0x4168ec
push edi
push edi
call dword [0x432274]
mov dword [ebp - 0x42c], eax
push edi
push 0x80
push 4
push edi
push 1
push 0xc0000000
push dword [0x443b00]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ecx, esi
call fcn.00416fcd
push 0x1e
push dword [ebp + 8]
mov ecx, dword [esi + 4]
call fcn.0041babc
lea eax, [esi + 0x2c]
push eax
lea eax, [esi + 0x38]
push eax
mov ecx, 0x443b10
call fcn.0041bb3b
mov word [ebp - 0x420], di
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x41e]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov dword [ebp - 0x424], 1
mov dword [ebp - 0x430], 0x104
lea eax, [ebp - 0x430]
push eax
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x424]
push eax
push str.Check_Associations
mov ebx, str.softwareMicrosoftInternet_ExplorerMain
push ebx
push 0x80000001
call dword [0x432514]
lea eax, [ebp - 0x420]
push eax
mov edi, 0x43e1ac
push edi
call dword [0x432510]
test eax, eax
je 0x416a22
push 4
push edi
push 1
push str.Check_Associations
push ebx
push 0x80000001
call dword [0x43254c]
xor edx, edx
mov eax, dword [esi + 4]
mov eax, dword [eax + 4]
cmp eax, 7
jl 0x416a37
cmp eax, 9
jg 0x416a37
push 1
pop edx
and word [ebp - 0x218], 0
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x216]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
and dword [ebp - 4], 0
push 0x103
lea eax, [ebp - 0x218]
push eax
push edx
call fcn.004082d1
add esp, 0xc
test eax, eax
je 0x416a9e
mov eax, dword [esi + 0x28]
mov dword [ebp - 0xe94], eax
push eax
lea eax, [ebp - 0x218]
push eax
push str.PriorDefBro
push 0x43e18c
mov ebx, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
call ebx
jmp 0x416aa4
mov ebx, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
or dword [ebp - 4], 0xffffffff
mov eax, dword [esi + 4]
xor edi, edi
cmp dword [eax + 8], edi
jne 0x416b02
push dword [esi + 0x30]
call dword [0x432520]
test eax, eax
je 0x416b6d
mov word [ebp - 0x63c], di
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x63a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push dword [esi + 0x30]
push str.__s___tp:10__v:1
push 0x103
lea eax, [ebp - 0x63c]
push eax
call dword [0x4323e4]
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp - 0x63c]
jmp 0x416b64
mov eax, dword [esi + 0x20]
push str.4.0.0.0
push eax
call fcn.0042042f
pop ecx
pop ecx
test eax, eax
jge 0x416b6d
push dword [esi + 0x30]
call dword [0x432520]
test eax, eax
je 0x416b6d
mov word [ebp - 0x844], di
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0x842]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push dword [esi + 0x30]
push str.__s___tp:14
push 0x103
lea eax, [ebp - 0x844]
push eax
call dword [0x4323e4]
push 0
push 0x4e20
push 0
lea eax, [ebp - 0x844]
push eax
call fcn.0041ff69
add esp, 0x20
mov ecx, esi
call fcn.004170e1
push 0x23
mov edi, dword [ebp + 8]
push edi
mov ecx, dword [esi + 4]
call fcn.0041babc
push edi
mov ecx, esi
call fcn.004177b2
push 0x41
push edi
mov ecx, dword [esi + 4]
call fcn.0041babc
cmp dword [esi + 0x7c], 0
je 0x416b9f
push 0
jmp 0x416ba1
push 1
mov ecx, esi
call fcn.004159fc
push edi
mov ecx, esi
call fcn.00417ecb
push 0x46
push edi
mov ecx, dword [esi + 4]
call fcn.0041babc
mov ecx, esi
call fcn.0041a105
mov ecx, esi
call fcn.00418232
push dword [esi + 0x28]
push 0xffffffffffffffff
push str.isinit
push 0x43e128
call dword [0x4322a8]
cmp eax, 1
je 0x416bfa
push dword [esi + 0x28]
mov edi, 0x439628
push edi
push str.isinit
push 0x43e18c
call ebx
jmp 0x416bff
mov edi, 0x439628
push dword [esi + 0x28]
push 0xffffffffffffffff
push str.isinit2
push 0x43e128
call dword [0x4322a8]
cmp eax, 1
je 0x416c29
push dword [esi + 0x28]
push edi
push str.isinit2
push 0x43e18c
call ebx
mov eax, dword [0x43950c]
mov dword [ebp - 0x858], eax
push str.360seie6.ini
push 0x43a148
mov eax, dword [esi + 4]
push dword [eax + 0x18]
push str._s_s_s
lea eax, [ebp - 0x858]
push eax
call fcn.0040a3c5
add esp, 0x14
push dword [ebp - 0x858]
mov ecx, esi
call fcn.00414948
push dword [ebp - 0x858]
push 0xffffffffffffffff
push str.isinit
push 0x43e128
call dword [0x4322a8]
cmp eax, 1
je 0x416c95
push dword [ebp - 0x858]
push edi
push str.isinit
push 0x43e18c
call ebx
push dword [ebp - 0x858]
push 0xffffffffffffffff
push str.isinit2
push 0x43e128
call dword [0x4322a8]
cmp eax, 1
je 0x416cc5
push dword [ebp - 0x858]
push edi
push str.isinit2
push 0x43e18c
call ebx
lea ecx, [ebp - 0x858]
call fcn.00404c0d
push 0x4b
push dword [ebp + 8]
mov ecx, dword [esi + 4]
call fcn.0041babc
mov ecx, esi
call int.00418a5a
mov ecx, esi
call fcn.0041872d
mov ecx, esi
call fcn.00418fdb
push 0x55
push dword [ebp + 8]
mov ecx, dword [esi + 4]
call fcn.0041babc
mov eax, dword [esi + 4]
cmp dword [eax + 8], 0
jle 0x416e29
and word [ebp - 0xa64], 0
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0xa62]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov dword [ebp - 0x85c], 1
mov dword [ebp - 0xa68], 0x104
lea eax, [ebp - 0xa68]
push eax
lea eax, [ebp - 0xa64]
push eax
lea eax, [ebp - 0x85c]
push eax
push str.DownProgID
push 0x439698
push 0x80000001
call dword [0x432514]
cmp word [ebp - 0xa64], 0
jne 0x416e24
mov eax, dword [0x43950c]
mov dword [ebp - 0xa6c], eax
push dword [esi + 0x2c]
push str._sextensionsExtDownloadExtDownload.ini
lea eax, [ebp - 0xa6c]
push eax
call fcn.0040a3c5
add esp, 0xc
push dword [ebp - 0xa6c]
call dword [0x432520]
test eax, eax
je 0x416e19
and word [ebp - 0xc74], 0
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0xc72]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push dword [ebp - 0xa6c]
push 0x104
lea eax, [ebp - 0xc74]
push eax
push 0x441ed4
mov edi, str.DownProgID
push edi
push str.Download
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
cmp word [ebp - 0xc74], 0
je 0x416e19
lea eax, [ebp - 0xc74]
push eax
call dword [0x43242c]
pop ecx
shl eax, 1
push eax
lea eax, [ebp - 0xc74]
push eax
push 1
push edi
push 0x439698
push 0x80000001
call dword [0x43254c]
lea ecx, [ebp - 0xa6c]
call fcn.00404c0d
mov edi, 0x439628
mov ecx, esi
call fcn.00415728
push 0x5a
push dword [ebp + 8]
mov ecx, dword [esi + 4]
call fcn.0041babc
mov ecx, esi
call fcn.0041584a
mov ecx, esi
call fcn.004158f1
push 0x5f
push dword [ebp + 8]
mov ecx, dword [esi + 4]
call fcn.0041babc
cmp dword [0x443a6c], 0
je 0x416f82
push dword [esi + 0x28]
push edi
push str.UseSkin
push str.Main
call ebx
push dword [esi + 0x28]
push 0x43e058
push 0x43e04c
push 0x4391f8
call ebx
push dword [esi + 0x28]
push edi
push str.IE6Mode
push 0x439550
call ebx
push dword [esi + 0x28]
push edi
push str.IsIE6Setup
push 0x439550
call ebx
mov eax, dword [0x43950c]
mov dword [ebp - 0xe84], eax
push str.360seie6.ini
push 0x43a148
mov eax, dword [esi + 4]
push dword [eax + 0x18]
push str._s_s_s
lea eax, [ebp - 0xe84]
push eax
call fcn.0040a3c5
add esp, 0x14
push dword [ebp - 0xe84]
mov ecx, esi
call fcn.00414948
push dword [ebp - 0xe84]
push edi
push str.UseSkin
push str.Main
call ebx
push dword [ebp - 0xe84]
push str.IE6Default
push 0x43e04c
push 0x4391f8
call ebx
push dword [ebp + 8]
mov ecx, esi
call fcn.00417315
and word [ebp - 0xe80], 0
mov ecx, 0x81
xor eax, eax
lea edi, [ebp - 0xe7e]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push dword [esi + 0x2c]
push str._sie6_mode
push 0x103
lea eax, [ebp - 0xe80]
push eax
call dword [0x4323e4]
add esp, 0x10
push 0
push 0x20
push 2
push 0
push 1
push 0x40000000
lea eax, [ebp - 0xe80]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
cmp eax, 0xffffffff
je 0x416f77
push eax
call dword [0x432270]
lea ecx, [ebp - 0xe84]
call fcn.00404c0d
mov ecx, esi
call fcn.00419cda
push 0x64
push dword [ebp + 8]
mov ecx, dword [esi + 4]
call fcn.0041babc
cmp dword [ebp - 0x42c], 0
je 0x416fbc
push 0x2710
push dword [ebp - 0x42c]
call dword [0x432298]
push dword [ebp - 0x42c]
call dword [0x432270]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret 4