Function at 0x40d4a0
Capabilities:
Check if file exists
Check internet connectivity via wininet
Contain obfuscated stackstrings
Copy file
Create directory
Delete file
Get file attributes
Get local ipv4 addresses
Get mac address on windows
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x451923
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x1d58
call fcn.00431df0
push ebx
push esi
push edi
mov ebx, ecx
xor esi, esi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], esi
call fcn.004166f7
cmp eax, esi
jne 0x41074a
call fcn.0041660b
cmp eax, esi
jne 0x41074a
cmp dword [ebx + 0x110], esi
jne 0x410718
cmp dword [ebx + 0x14c], esi
jne 0x410718
cmp dword [ebx + 0x108], esi
je 0x40d9f7
add ebx, 0x1c4
mov ecx, ebx
call fcn.0041d3af
push eax
call fcn.00444fcd
push eax
push 0x4818c8
lea ecx, [ebp - 0x630]
call fcn.0040ba00
lea ecx, [ebp - 0x630]
mov byte [ebp - 4], 1
call fcn.00409a10
xor ecx, ecx
cmp eax, esi
setne cl
mov eax, ecx
cmp eax, esi
jne 0x40d581
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
push eax
call fcn.0041676d
add esp, 4
push eax
push str.Failure_to_initialize_dialog
push str._s_failed_returning__s_n
push 0x471d20
call fcn.00415dff
add esp, 0x10
call edi
jmp 0x40d625
lea ecx, [ebp - 0x630]
call fcn.004446a5
mov dl, byte [0x471b14]
mov esi, eax
mov ecx, dword [ebp - 0x5d0]
xor eax, eax
mov dword [ebp - 0x3f], eax
mov byte [ebp - 0x40], dl
mov dword [ebp - 0x3b], eax
push ecx
mov dword [ebp - 0x37], eax
lea edx, [ebp - 0x40]
mov dword [ebp - 0x33], eax
push 0x4663e4
mov word [ebp - 0x2f], ax
push edx
mov byte [ebp - 0x2d], al
call fcn.0043110a
mov eax, dword [ebp - 0x58c]
add esp, 0xc
lea ecx, [ebp - 0x40]
push eax
push ecx
push str.Exiting_dialog____s____s
push 1
push 0x471d20
call fcn.00401200
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
add esp, 0x14
call edi
cmp esi, 1
jl 0x40d5fd
cmp esi, 0x7d00
mov ecx, 0x20
jle 0x40d602
mov ecx, 0x400
mov edx, dword [ebp - 0x58c]
push eax
mov eax, dword [ebp - 0x5d0]
push edx
push eax
push esi
push str.Unexpected_result__d_when_in_Dialog_ID_d__s__exitCode_d
push ecx
push 0x471d20
call fcn.00401200
add esp, 0x1c
mov ecx, ebx
call fcn.0041d3af
push eax
call fcn.00444fcd
push eax
push 0x4818c8
lea ecx, [ebp - 0xc94]
call fcn.00412820
lea ecx, [ebp - 0xc94]
mov byte [ebp - 4], 2
call fcn.00409a10
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
test eax, eax
jne 0x40d689
call edi
push eax
call fcn.0041676d
add esp, 4
push eax
push str.Failure_to_initialize_dialog
push str._s_failed_returning__s_n
push 0x471d20
call fcn.00415dff
add esp, 0x10
call edi
jmp 0x40d727
lea ecx, [ebp - 0xc94]
call fcn.004446a5
mov dl, byte [0x471b14]
mov esi, eax
mov ecx, dword [ebp - 0xc34]
xor eax, eax
mov dword [ebp - 0x3f], eax
mov byte [ebp - 0x40], dl
mov dword [ebp - 0x3b], eax
push ecx
mov dword [ebp - 0x37], eax
lea edx, [ebp - 0x40]
mov dword [ebp - 0x33], eax
push 0x4663e4
mov word [ebp - 0x2f], ax
push edx
mov byte [ebp - 0x2d], al
call fcn.0043110a
mov eax, dword [ebp - 0xbf0]
add esp, 0xc
lea ecx, [ebp - 0x40]
push eax
push ecx
push str.Exiting_dialog____s____s
push 1
push 0x471d20
call fcn.00401200
add esp, 0x14
call edi
cmp esi, 1
jl 0x40d6ff
cmp esi, 0x7d00
mov ecx, 0x20
jle 0x40d704
mov ecx, 0x400
mov edx, dword [ebp - 0xbf0]
push eax
mov eax, dword [ebp - 0xc34]
push edx
push eax
push esi
push str.Unexpected_result__d_when_in_Dialog_ID_d__s__exitCode_d
push ecx
push 0x471d20
call fcn.00401200
add esp, 0x1c
mov ecx, ebx
call fcn.0041d3af
push eax
call fcn.00444fcd
push eax
push 0x4818c8
lea ecx, [ebp - 0x33c]
call fcn.00401080
lea ecx, [ebp - 0x33c]
mov byte [ebp - 4], 3
call fcn.00409a10
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
test eax, eax
jne 0x40d78b
call edi
push eax
call fcn.0041676d
add esp, 4
push eax
push str.Failure_to_initialize_dialog
push str._s_failed_returning__s_n
push 0x471d20
call fcn.00415dff
add esp, 0x10
call edi
jmp 0x40d829
lea ecx, [ebp - 0x33c]
call fcn.004446a5
mov dl, byte [0x471b14]
mov esi, eax
mov ecx, dword [ebp - 0x2dc]
xor eax, eax
mov dword [ebp - 0x3f], eax
mov byte [ebp - 0x40], dl
mov dword [ebp - 0x3b], eax
push ecx
mov dword [ebp - 0x37], eax
lea edx, [ebp - 0x40]
mov dword [ebp - 0x33], eax
push 0x4663e4
mov word [ebp - 0x2f], ax
push edx
mov byte [ebp - 0x2d], al
call fcn.0043110a
mov eax, dword [ebp - 0x298]
add esp, 0xc
lea ecx, [ebp - 0x40]
push eax
push ecx
push str.Exiting_dialog____s____s
push 1
push 0x471d20
call fcn.00401200
add esp, 0x14
call edi
cmp esi, 1
jl 0x40d801
cmp esi, 0x7d00
mov ecx, 0x20
jle 0x40d806
mov ecx, 0x400
mov edx, dword [ebp - 0x298]
push eax
mov eax, dword [ebp - 0x2dc]
push edx
push eax
push esi
push str.Unexpected_result__d_when_in_Dialog_ID_d__s__exitCode_d
push ecx
push 0x471d20
call fcn.00401200
add esp, 0x1c
mov ecx, ebx
call fcn.0041d3af
push eax
call fcn.00444fcd
push eax
push 0x4818c8
lea ecx, [ebp - 0x23c]
call fcn.004122f0
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 4
call fcn.00409a10
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
test eax, eax
jne 0x40d88d
call edi
push eax
call fcn.0041676d
add esp, 4
push eax
push str.Failure_to_initialize_dialog
push str._s_failed_returning__s_n
push 0x471d20
call fcn.00415dff
add esp, 0x10
call edi
jmp 0x40d92b
lea ecx, [ebp - 0x23c]
call fcn.004446a5
mov dl, byte [0x471b14]
mov esi, eax
mov ecx, dword [ebp - 0x1dc]
xor eax, eax
mov dword [ebp - 0x3f], eax
mov byte [ebp - 0x40], dl
mov dword [ebp - 0x3b], eax
push ecx
mov dword [ebp - 0x37], eax
lea edx, [ebp - 0x40]
mov dword [ebp - 0x33], eax
push 0x4663e4
mov word [ebp - 0x2f], ax
push edx
mov byte [ebp - 0x2d], al
call fcn.0043110a
mov eax, dword [ebp - 0x198]
add esp, 0xc
lea ecx, [ebp - 0x40]
push eax
push ecx
push str.Exiting_dialog____s____s
push 1
push 0x471d20
call fcn.00401200
add esp, 0x14
call edi
cmp esi, 1
jl 0x40d903
cmp esi, 0x7d00
mov ecx, 0x20
jle 0x40d908
mov ecx, 0x400
mov edx, dword [ebp - 0x198]
push eax
mov eax, dword [ebp - 0x1dc]
push edx
push eax
push esi
push str.Unexpected_result__d_when_in_Dialog_ID_d__s__exitCode_d
push ecx
push 0x471d20
call fcn.00401200
add esp, 0x1c
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + 0xc0], 0
call fcn.00447b82
push str.RUN:_PreInstallUpdate_Plug_In_exits_from__testLoc__mode__n
push 1
push 0x471d20
call fcn.00401200
mov ecx, dword [ebp - 0x1c]
add esp, 0xc
mov edx, dword [ecx]
call dword [edx + 0x68]
mov esi, eax
lea ecx, [ebp - 0x180]
mov byte [ebp - 4], 5
call fcn.00443a2a
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 3
call fcn.00409c80
lea ecx, [ebp - 0x280]
mov byte [ebp - 4], 6
call fcn.00443a2a
lea ecx, [ebp - 0x33c]
mov byte [ebp - 4], 2
call fcn.00409c80
lea ecx, [ebp - 0xc94]
mov byte [ebp - 4], 1
call fcn.004147f0
push 1
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 9
call fcn.004017f0
lea ecx, [ebp - 0x4e8]
mov byte [ebp - 4], 8
call fcn.0040c3e0
lea ecx, [ebp - 0x574]
mov byte [ebp - 4], 7
call fcn.0040c3e0
lea ecx, [ebp - 0x630]
mov byte [ebp - 4], 0
call fcn.00409c80
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp - 0x1c]
xor edi, edi
push str.BOTH
mov dword [ebp - 0x18], edi
lea esi, [ebx + 0x1c4]
mov dword [ebp - 0x74], 1
mov ecx, esi
mov dword [ebp - 0xe0], edi
call fcn.0041e080
cmp eax, edi
jne 0x40dc24
cmp dword [ebx + 0x10c], edi
jne 0x40dc24
cmp dword [ebx + 0x2d4], edi
jne 0x40dc24
mov ecx, esi
call fcn.0041d3af
push eax
call fcn.00444fcd
push eax
push 0x4818c8
lea ecx, [ebp - 0x630]
call fcn.0040ba00
lea ecx, [ebp - 0x630]
mov byte [ebp - 4], 0xa
call fcn.00409a10
xor ecx, ecx
cmp eax, edi
setne cl
mov eax, ecx
cmp eax, edi
jne 0x40daa8
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
push eax
call fcn.0041676d
add esp, 4
push eax
push str.Failure_to_initialize_dialog
push str._s_failed_returning__s_n
push 0x471d20
call fcn.00415dff
add esp, 0x10
call esi
jmp 0x40db4c
lea ecx, [ebp - 0x630]
call fcn.004446a5
mov dl, byte [0x471b14]
mov esi, eax
mov ecx, dword [ebp - 0x5d0]
xor eax, eax
mov dword [ebp - 0x3f], eax
mov byte [ebp - 0x40], dl
mov dword [ebp - 0x3b], eax
push ecx
mov dword [ebp - 0x37], eax
lea edx, [ebp - 0x40]
mov dword [ebp - 0x33], eax
push 0x4663e4
mov word [ebp - 0x2f], ax
push edx
mov byte [ebp - 0x2d], al
call fcn.0043110a
mov eax, dword [ebp - 0x58c]
add esp, 0xc
lea ecx, [ebp - 0x40]
push eax
push ecx
push str.Exiting_dialog____s____s
push 1
push 0x471d20
call fcn.00401200
add esp, 0x14
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp esi, 1
jl 0x40db22
cmp esi, 0x7d00
mov ecx, 0x20
jle 0x40db27
mov ecx, 0x400
mov edx, dword [ebp - 0x58c]
push eax
mov eax, dword [ebp - 0x5d0]
push edx
push eax
push esi
push str.Unexpected_result__d_when_in_Dialog_ID_d__s__exitCode_d
push ecx
push 0x471d20
call fcn.00401200
add esp, 0x1c
mov eax, esi
cmp eax, 2
mov dword [ebp - 0xe0], eax
jne 0x40dbbb
mov edx, dword [ebx]
mov ecx, ebx
mov dword [ebx + 0xc0], 0x642
call dword [edx + 0x68]
mov esi, eax
push 1
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 0xd
call fcn.004017f0
lea ecx, [ebp - 0x4e8]
mov byte [ebp - 4], 0xc
call fcn.0040c3e0
lea ecx, [ebp - 0x574]
mov byte [ebp - 4], 0xb
call fcn.0040c3e0
lea ecx, [ebp - 0x630]
mov byte [ebp - 4], 0
call fcn.00409c80
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor ecx, ecx
cmp eax, 1
sete cl
push ecx
mov ecx, ebx
call fcn.00411a40
cmp eax, edi
je 0x40dbe4
push eax
push str.Error_storing_opt_in_values:_0x_x
push 8
push 0x471d20
call fcn.00401200
add esp, 0x10
push 1
lea ecx, [ebp - 0x458]
mov byte [ebp - 4], 0x10
call fcn.004017f0
lea ecx, [ebp - 0x4e8]
mov byte [ebp - 4], 0xf
call fcn.0040c3e0
lea ecx, [ebp - 0x574]
mov byte [ebp - 4], 0xe
call fcn.0040c3e0
lea ecx, [ebp - 0x630]
mov byte [ebp - 4], 0
call fcn.00409c80
jmp 0x40dc3b
push str.This_is_a_reinstall__or_restart_so_were_going_to_skip_checking_the_web_for_updates
push 1
push 0x471d20
call fcn.00401200
add esp, 0xc
mov dword [ebp - 0x74], edi
lea edx, [ebp - 0x11]
lea ecx, [ebp - 0x3c]
push edx
call fcn.004082a0
push eax
push str.onlyoptin
lea ecx, [ebx + 0x1c8]
mov byte [ebp - 4], 0x11
call fcn.0041d056
push 1
lea ecx, [ebp - 0x3c]
mov esi, eax
mov byte [ebp - 4], 0
call fcn.004017f0
cmp esi, edi
je 0x40dc8e
mov eax, dword [ebx]
mov ecx, ebx
mov dword [ebx + 0xc0], edi
call dword [eax + 0x68]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x84]
push ecx
mov ecx, ebx
call fcn.00410800
mov dl, byte [ebp - 0x84]
push edi
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
mov byte [ebp - 0x70], dl
call fcn.004017f0
mov eax, dword [0x455554]
lea ecx, [ebp - 0x84]
push eax
push edi
push ecx
lea ecx, [ebp - 0x70]
call fcn.00404f70
mov edi, str.autorun.inf
or ecx, 0xffffffff
xor eax, eax
mov byte [ebp - 4], 0x13
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.autorun.inf
lea ecx, [ebp - 0x70]
call fcn.00404eb0
mov dl, byte [0x471b14]
mov ecx, 0x40
xor eax, eax
lea edi, [ebp - 0x54b]
mov byte [ebp - 0x54c], dl
xor esi, esi
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebp - 0x6c]
cmp eax, esi
jne 0x40dd15
mov eax, 0x45561c
lea ecx, [ebp - 0x54c]
push esi
push ecx
push 0x104
push eax
call dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
lea edi, [ebp - 0x54c]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x54c]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
lea ecx, [ebp - 0x70]
call fcn.00405170
lea eax, [ebp - 0x54c]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x40df09
lea ecx, [ebp - 0x50]
lea edx, [ebp - 0xac]
push ecx
lea eax, [ebp - 0xb0]
push edx
lea ecx, [ebp - 0x88]
push eax
push ecx
mov ecx, ebx
mov dword [ebp - 0xdc], esi
mov dword [ebp - 0x54], esi
mov dword [ebp - 0xb4], esi
mov dword [ebp - 0xb8], esi
mov dword [ebp - 0x88], esi
mov dword [ebp - 0xb0], esi
mov dword [ebp - 0xac], esi
mov dword [ebp - 0x50], esi
call fcn.00403560
cmp eax, esi
je 0x40deea
mov eax, dword [ebp - 0x6c]
cmp eax, esi
jne 0x40ddbd
mov eax, 0x45561c
push eax
lea edx, [ebp - 0xb8]
lea eax, [ebp - 0xb4]
push edx
lea ecx, [ebp - 0x54]
push eax
lea edx, [ebp - 0xdc]
push ecx
push edx
call fcn.00403450
add esp, 0x14
cmp eax, esi
je 0x40deea
mov eax, dword [ebx + 0x2d4]
mov ecx, dword [ebp - 0xdc]
mov edx, dword [ebp - 0x88]
cmp eax, esi
jne 0x40de8e
cmp ecx, edx
ja 0x40de8e
jne 0x40de39
mov eax, dword [ebp - 0x54]
mov edi, dword [ebp - 0xb0]
cmp eax, edi
ja 0x40de8e
jne 0x40de39
mov eax, dword [ebp - 0xb4]
mov edi, dword [ebp - 0xac]
cmp eax, edi
ja 0x40de8e
jne 0x40de39
mov eax, dword [ebp - 0xb8]
mov edi, dword [ebp - 0x50]
cmp eax, edi
ja 0x40de8e
mov eax, dword [ebp - 0x6c]
cmp eax, esi
jne 0x40de45
mov eax, 0x45561c
mov edi, dword [ebp - 0x50]
push edi
mov edi, dword [ebp - 0xac]
push edi
mov edi, dword [ebp - 0xb0]
push edi
push edx
mov edx, dword [ebp - 0xb8]
push edx
mov edx, dword [ebp - 0xb4]
push edx
mov edx, dword [ebp - 0x54]
push edx
push ecx
push eax
push str.Ignoring_existing_updated_autorun.inf___s__with_version__d._d._d._d.__Is_OLDER_than_our_current_version__d._d._d._d_____
push 1
push 0x471d20
call fcn.00401200
add esp, 0x30
push esi
call fcn.0041f283
add esp, 4
jmp 0x40df2a
mov eax, dword [ebp - 0x6c]
cmp eax, esi
jne 0x40de9a
mov eax, 0x45561c
mov edi, dword [ebp - 0x50]
push edi
mov edi, dword [ebp - 0xac]
push edi
mov edi, dword [ebp - 0xb0]
push edi
push edx
mov edx, dword [ebp - 0xb8]
push edx
mov edx, dword [ebp - 0xb4]
push edx
mov edx, dword [ebp - 0x54]
push edx
push ecx
push eax
push str.Found_existing_updated_autorun.inf___s__with_version__d._d._d._d.__Is_NEWER_than_our_current_version__d._d._d._d
push 1
push 0x471d20
call fcn.00401200
add esp, 0x30
mov dword [ebp - 0x18], 1
mov dword [ebp - 0x74], esi
push esi
call fcn.0041f283
add esp, 4
jmp 0x40df2a
push str.Could_not_get_DriverVer_from_current_or_updated_autorun.inf
push 1
push 0x471d20
call fcn.00401200
add esp, 0xc
push esi
call fcn.0041f283
add esp, 4
jmp 0x40df2a
mov eax, dword [ebp - 0x6c]
cmp eax, esi
jne 0x40df15
mov eax, 0x45561c
push eax
push str.File__s_does_not_exist.__No_updates_exist_on_the_PC
push 1
push 0x471d20
call fcn.00401200
add esp, 0x10
cmp dword [ebp - 0x74], esi
je 0x40e26d
mov eax, dword [str.0000.000.0000.0000]
mov ecx, dword [0x4683b8]
mov edx, dword [0x4683bc]
mov dword [ebp - 0x120], eax
mov eax, dword [0x4683c0]
mov dword [ebp - 0x11c], ecx
mov cx, word [0x4683c4]
mov dword [ebp - 0x114], eax
xor eax, eax
mov word [ebp - 0x110], cx
mov dword [ebp - 0x10d], eax
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x109], eax
mov dword [ebp - 0x118], edx
mov dl, byte [0x4683c6]
mov dword [ebp - 0x105], eax
push ecx
mov ecx, ebx
mov byte [ebp - 0x10e], dl
mov byte [ebp - 0x101], al
call fcn.00411110
cmp eax, esi
je 0x40e6f0
lea edx, [ebp - 0x120]
mov ecx, ebx
push edx
call fcn.00411370
push edx
push eax
mov ecx, ebx
call fcn.004112d0
cmp eax, esi
jne 0x40e007
mov eax, dword [ebx + 0x3ec]
cmp eax, esi
jne 0x40dfd5
mov eax, 0x45561c
push eax
lea eax, [ebp - 0x120]
push eax
push str.Will_not_run_PreinstallUpdatePlugIn_plug_in.__Current_IE_version___s__is_less_than_min___s___n
push 1
push 0x471d20
call fcn.00401200
mov edx, dword [ebx]
add esp, 0x14
mov ecx, ebx
mov dword [ebx + 0xc0], 0
call dword [edx + 0x68]
jmp 0x40e643
mov ecx, ebx
call fcn.00447b6d
xor edi, edi
lea eax, [ebp - 0x50]
push edi
push eax
mov dword [ebp - 0x50], edi
call dword [sym.imp.WININET.dll_InternetGetConnectedState]
mov esi, eax
mov dword [ebp - 0x54], esi
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp esi, edi
mov ecx, str.connection_is_present._n
jne 0x40e037
mov ecx, str.connection_is_NOT_present._n
push ecx
push eax
push str.PreInstallUpdate_Plug_In_InternetGetConnectedState_returns__d.__s
push 1
push 0x471d20
call fcn.00401200
mov al, byte [ebp - 0x50]
add esp, 0x14
test al, 0x40
je 0x40e068
push str.Local_system_has_a_valid_connection_to_the_Internet._n
push 1
push 0x471d20
call fcn.00401200
add esp, 0xc
test byte [ebp - 0x50], 2
je 0x40e082
push str.Local_system_uses_a_local_area_network_to_connect_to_the_Internet._n
push 1
push 0x471d20
call fcn.00401200
add esp, 0xc
test byte [ebp - 0x50], 1
je 0x40e09c
push str.Local_system_uses_a_modem_to_connect_to_the_Internet._n
push 1
push 0x471d20
call fcn.00401200
add esp, 0xc
test byte [ebp - 0x50], 0x10
je 0x40e0b6
push str.Local_system_has_RAS_installed._n
push 1
push 0x471d20
call fcn.00401200
add esp, 0xc
cmp esi, edi
je 0x40e1e0
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x74], edi
push ecx
push edi
call sub.iphlpapi.dll_GetAdaptersInfo
cmp eax, 0x6f
je 0x40e0d8
cmp eax, edi
jne 0x40e1dc
mov eax, dword [ebp - 0x74]
cmp eax, edi
je 0x40e1dc
push eax
call fcn.00447dd1
add esp, 4
lea edx, [ebp - 0x74]
mov dword [ebp - 0x88], eax
push edx
push eax
call sub.iphlpapi.dll_GetAdaptersInfo
cmp eax, edi
jne 0x40e1c5
mov esi, dword [ebp - 0x88]
xor ebx, ebx
xor eax, eax
lea edi, [esi + 0x1d8]
mov al, byte [esi + 0x19b]
xor ecx, ecx
mov cl, byte [esi + 0x19a]
push edi
push eax
xor edx, edx
mov dl, byte [esi + 0x199]
push ecx
xor eax, eax
xor ecx, ecx
mov al, byte [esi + 0x198]
mov cl, byte [esi + 0x197]
push edx
push eax
xor edx, edx
push ecx
mov dl, byte [esi + 0x196]
xor eax, eax
mov al, byte [esi + 0x195]
xor ecx, ecx
mov cl, byte [esi + 0x194]
push edx
push eax
lea edx, [esi + 0x1b0]
push ecx
push edx
push str.IP_s__MAC_.2x__.2x__.2x__.2x__.2x__.2x__.2x__.2x__GW_s
push 0x20
push 0x471d20
call fcn.00401200
or ecx, 0xffffffff
xor eax, eax
add esp, 0x34
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x40e1a2
call fcn.004165ed
test eax, eax
je 0x40e192
mov ebx, 1
jmp 0x40e1ac
mov eax, dword [esi + 0x1a0]
xor ebx, ebx
cmp eax, 6
sete bl
jmp 0x40e1ac
mov esi, dword [esi]
test esi, esi
jne 0x40e10c
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x40e1be
test ebx, ebx
mov dword [ebp - 0x54], 1
jne 0x40e1c5
mov dword [ebp - 0x54], 0
mov eax, dword [ebp - 0x88]
push eax
call fcn.00447dfa
mov esi, dword [ebp - 0x54]
mov ebx, dword [ebp - 0x1c]
add esp, 4
xor edi, edi
cmp esi, edi
jne 0x40e246
mov cl, byte [ebp - 0x11]
push edi
mov byte [ebp - 0x3c], cl
lea ecx, [ebp - 0x3c]
call fcn.004017f0
lea edx, [ebp - 0x3c]
lea ecx, [ebx + 0x1c8]
push edx
push str.alwayswup
mov byte [ebp - 4], 0x14
call fcn.0041d056
push 1
lea ecx, [ebp - 0x3c]
mov esi, eax
mov byte [ebp - 4], 0x13
call fcn.004017f0
cmp esi, edi
jne 0x40e246
mov ecx, ebx
call fcn.00447b82
push edi
push str.PreInstallUpdate_Plug_In_exits__not_connected__returning__d_n
push 1
push 0x471d20
mov dword [ebx + 0xc0], edi
call fcn.00401200
mov eax, dword [ebx]
add esp, 0x10
mov ecx, ebx
jmp 0x40e640
cmp dword [ebp - 0xe0], 3
jne 0x40e478
push str.PreInstallUpdate_Plug_In_will_exit_due_to_user_canceling_permission_dialog_n
push 1
push 0x471d20
mov dword [ebx + 0xc0], edi
call fcn.00401200
add esp, 0xc
mov ebx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
xor edi, edi
cmp eax, edi
mov dword [ebx + 0xc0], edi
je 0x4105ad
push str.PreInstallUpdate_Plug_In___Found_updates__start_re_install_here_using_new_content_n
push 1
push 0x471d20
call fcn.00401200
add esp, 0xc
lea ecx, [ebp - 0x1c8]
call fcn.00416a89
mov eax, dword [ebp - 0x6c]
mov byte [ebp - 4], 0x19
cmp eax, edi
jne 0x40e2b2
mov eax, 0x45561c
mov cx, word [ebx + 0x104]
push edi
push str..._
push 1
push ecx
push eax
lea ecx, [ebp - 0x1c8]
call fcn.00417b07
sub esp, 0x88
lea edx, [ebp - 0x1c8]
mov esi, esp
mov dword [ebp - 0x18], esp
push edx
mov ecx, esi
mov dword [ebp - 0x18], esi
call fcn.00404980
lea eax, [ebp - 0x1b8]
lea ecx, [esi + 0x10]
push eax
mov byte [ebp - 4], 0x1a
call fcn.00404980
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x1b
push ecx
lea ecx, [esi + 0x20]
call fcn.00404980
lea edx, [ebp - 0x198]
lea ecx, [esi + 0x30]
push edx
mov byte [ebp - 4], 0x1c
call fcn.00404980
lea eax, [ebp - 0x188]
lea ecx, [esi + 0x40]
push eax
mov byte [ebp - 4], 0x1d
call fcn.00404980
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x1e
push ecx
lea ecx, [esi + 0x50]
call fcn.00404980
lea edx, [ebp - 0x168]
lea ecx, [esi + 0x60]
push edx
mov byte [ebp - 4], 0x1f
call fcn.00404980
mov ax, word [ebp - 0x158]
lea ecx, [ebp - 0x154]
push ecx
lea ecx, [esi + 0x74]
mov byte [ebp - 4], 0x20
mov word [esi + 0x70], ax
call fcn.00410a60
mov edx, dword [ebp - 0x144]
lea eax, [ebp - 0x70]
push eax
mov ecx, ebx
mov dword [esi + 0x84], edx
mov byte [ebp - 4], 0x19
call fcn.00411430
cmp eax, edi
jne 0x40e717
push str.PreInstallUpdate_Plug_In_exits__no_autorun_in_Updates_Folder__returning
push 1
push 0x471d20
mov dword [ebx + 0xc0], edi
call fcn.00401200
mov edx, dword [ebx]
add esp, 0xc
mov ecx, ebx
call dword [edx + 0x68]
mov esi, eax
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x27
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x26
call fcn.004017f0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x25
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x24
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x23
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x22
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x21
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [ebx + 0x1c4]
mov byte [ebp - 4], 0x15
call fcn.0041d3af
push eax
call fcn.00444fcd
push eax
push 0x4818c8
lea ecx, [ebp - 0x7ec]
call fcn.00412820
mov cl, byte [ebp - 0x11]
mov bl, 0x16
mov byte [ebp - 0x3c], cl
push 0
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], bl
call fcn.004017f0
mov edi, dword [ebp - 0x1c]
lea edx, [ebp - 0x3c]
push edx
push str.noupdates
lea ecx, [edi + 0x1c8]
mov byte [ebp - 4], 0x17
call fcn.0041d056
push 1
lea ecx, [ebp - 0x3c]
mov esi, eax
mov byte [ebp - 4], bl
call fcn.004017f0
lea ecx, [ebp - 0x7ec]
mov dword [ebp - 0x5e8], esi
call fcn.00409a10
xor ebx, ebx
xor ecx, ecx
cmp eax, ebx
setne cl
mov eax, ecx
cmp eax, ebx
jne 0x40e52f
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
push eax
call fcn.0041676d
add esp, 4
push eax
push str.Failure_to_initialize_dialog
push str._s_failed_returning__s_n
push 0x471d20
call fcn.00415dff
add esp, 0x10
call esi
mov esi, eax
jmp 0x40e5d1
lea ecx, [ebp - 0x7ec]
call fcn.004446a5
mov dl, byte [0x471b14]
mov esi, eax
mov ecx, dword [ebp - 0x78c]
xor eax, eax
mov dword [ebp - 0x3f], eax
mov byte [ebp - 0x40], dl
mov dword [ebp - 0x3b], eax
push ecx
mov dword [ebp - 0x37], eax
lea edx, [ebp - 0x40]
mov dword [ebp - 0x33], eax
push 0x4663e4
mov word [ebp - 0x2f], ax
push edx
mov byte [ebp - 0x2d], al
call fcn.0043110a
mov eax, dword [ebp - 0x748]
add esp, 0xc
lea ecx, [ebp - 0x40]
push eax
push ecx
push str.Exiting_dialog____s____s
push 1
push 0x471d20
call fcn.00401200
add esp, 0x14
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp esi, 1
jl 0x40e5a9
cmp esi, 0x7d00
mov ecx, 0x20
jle 0x40e5ae
mov ecx, 0x400
mov edx, dword [ebp - 0x748]
push eax
mov eax, dword [ebp - 0x78c]
push edx
push eax
push esi
push str.Unexpected_result__d_when_in_Dialog_ID_d__s__exitCode_d
push ecx
push 0x471d20
call fcn.00401200
add esp, 0x1c
lea ecx, [ebp - 0x7ec]
mov byte [ebp - 4], 0x15
call fcn.004147f0
cmp esi, 2
mov dword [ebp - 4], 0x13
jne 0x40e616
mov ecx, edi
call fcn.00447b82
push str.PreInstallUpdate_Plug_In_will_exit_due_to_user_canceling__updates__dialog_n
push 1
push 0x471d20
mov dword [edi + 0xc0], ebx
call fcn.00401200
mov edx, dword [edi]
add esp, 0xc
mov ecx, edi
call dword [edx + 0x68]
jmp 0x40e643
cmp esi, 5
jne 0x40e677
mov ecx, edi
call fcn.00447b82
push str.PreInstallUpdate_Plug_In_will_exit_due_to_IDIGNORE_returned_from__updates__dialog_n
push 1
push 0x471d20
mov dword [edi + 0xc0], ebx
call fcn.00401200
mov eax, dword [edi]
add esp, 0xc
mov ecx, edi
call dword [eax + 0x68]
push 1
lea ecx, [ebp - 0x70]
mov esi, eax
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp esi, 0xb
jne 0x40e26d
mov dword [ebp - 0x18], 1
jmp 0x40e26d
push str.Will_not_run_PreinstallUpdatePlugIn_plug_in.__Cant_get_IE_version._May_be_less_than_MIN_SUPPORTED_IE__n
push 1
push 0x471d20
call fcn.00401200
mov eax, dword [ebx]
add esp, 0xc
mov dword [ebx + 0xc0], 0
mov ecx, ebx
jmp 0x40e640
mov al, byte [0x471b14]
mov ecx, 0x40
mov byte [ebp - 0x344], al
xor eax, eax
lea edi, [ebp - 0x343]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebx + 0x2d4]
test eax, eax
je 0x40e94c
mov eax, dword [ebx + 0x2d8]
test eax, eax
je 0x40e86d
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x40e75c
mov eax, 0x45561c
mov cx, word [ebx + 0x104]
lea edx, [ebp - 0x344]
push ecx
push 0x104
push edx
push str._SourcePath_
push str.Strings
push eax
lea ecx, [ebp - 0x1c8]
call fcn.00419cf3
test eax, eax
jne 0x40e9ba
push str.PreInstallUpdate_Plug_In_exits__no_valid_sections_in_autorun__returning
push 1
push 0x471d20
call fcn.00401200
mov eax, dword [ebx]
add esp, 0xc
mov ecx, ebx
mov dword [ebx + 0xc0], 0
call dword [eax + 0x68]
mov esi, eax
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x2e
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x2d
call fcn.004017f0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x2c
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x2b
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x2a
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x29
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x28
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.PreInstallUpdate_Plug_In_exits__no_valid_sections_in_autorun__returning
push 1
push 0x471d20
call fcn.00401200
mov edx, dword [ebx]
add esp, 0xc
mov ecx, ebx
mov dword [ebx + 0xc0], 0
call dword [edx + 0x68]
mov esi, eax
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x35
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x34
call fcn.004017f0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x33
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x32
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x31
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x30
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x2f
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x344]
push eax
call fcn.0041a7eb
mov eax, dword [ebx + 0xd0]
add esp, 4
test eax, eax
jne 0x40e96a
mov eax, 0x45561c
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x344]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea eax, [ebp - 0x344]
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
call fcn.0041a877
add esp, 4
push str.We__dont_have_skipDownload_and_SourcePath_is_from_this_EXE:__s_n_sourcePath
push 1
push 0x471d20
call fcn.00401200
add esp, 0xc
lea ecx, [ebp - 0xa8]
push ecx
mov ecx, ebx
call fcn.00410930
mov eax, dword [ebp - 0xa0]
xor esi, esi
cmp eax, esi
mov byte [ebp - 4], 0x36
jne 0x40eac8
push str.PreInstallUpdate_Plug_In_exits__no_valid_path_to_merge_folder__returning
push 1
push 0x471d20
call fcn.00401200
mov edx, dword [ebx]
add esp, 0xc
mov ecx, ebx
mov dword [ebx + 0xc0], esi
call dword [edx + 0x68]
push 1
lea ecx, [ebp - 0xa8]
mov esi, eax
mov byte [ebp - 4], 0x19
call fcn.004017f0
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x3d
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x3c
call fcn.004017f0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x3b
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x3a
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x39
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x38
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x37
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov al, byte [ebp - 0xa8]
push esi
lea ecx, [ebp - 0x98]
mov byte [ebp - 0x98], al
call fcn.004017f0
mov ecx, dword [0x455554]
lea edx, [ebp - 0xa8]
push ecx
push esi
push edx
lea ecx, [ebp - 0x98]
call fcn.00404f70
mov edi, str.autorun.inf
or ecx, 0xffffffff
xor eax, eax
mov byte [ebp - 4], 0x3e
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.autorun.inf
lea ecx, [ebp - 0x98]
call fcn.00404eb0
cmp dword [ebx + 0x2d8], esi
je 0x40f946
mov al, byte [0x471b14]
mov ecx, 0x40
mov byte [ebp - 0x54c], al
xor eax, eax
lea edi, [ebp - 0x54b]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebp - 0x94]
cmp eax, esi
jne 0x40eb56
mov eax, 0x45561c
lea ecx, [ebp - 0x54c]
push esi
push ecx
push 0x104
push eax
call dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
lea edi, [ebp - 0x54c]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x54c]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
lea ecx, [ebp - 0x98]
call fcn.00405170
lea eax, [ebp - 0x54c]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x40f946
mov cl, byte [ebp - 0x11]
push esi
mov byte [ebp - 0x60], cl
push esi
lea ecx, [ebp - 0x60]
call fcn.00405580
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], esi
mov dl, byte [ebp - 0x11]
push esi
push esi
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x3f
mov byte [ebp - 0x4c], dl
call fcn.00405580
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], esi
push 0x4818c8
lea ecx, [ebp - 0x1d68]
mov byte [ebp - 4], 0x40
call fcn.00406ce0
mov al, byte [0x471b14]
mov ecx, 0x40
mov byte [ebp - 0x8f0], al
xor eax, eax
lea edi, [ebp - 0x8ef]
mov byte [ebp - 4], 0x41
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebx + 0x41c]
cmp eax, esi
jne 0x40ec17
mov eax, 0x45561c
mov ecx, dword [ebp - 0x6c]
cmp ecx, esi
jne 0x40ec23
mov ecx, 0x45561c
push 0x800
lea edx, [ebp - 0x8f0]
push 0x104
push edx
push str.Renum
push eax
push ecx
lea ecx, [ebp - 0x1c8]
call fcn.00419cf3
lea eax, [ebp - 0x8f0]
push esi
push eax
call fcn.0041a90f
add esp, 8
lea ecx, [ebp - 0x1d68]
push eax
call fcn.00408260
mov eax, dword [ebx + 0x41c]
mov byte [ebp - 0x8f0], 0
cmp eax, esi
mov ecx, 0x45561c
je 0x40ec7a
mov ecx, eax
mov eax, dword [ebp - 0x6c]
cmp eax, esi
jne 0x40ec86
mov eax, 0x45561c
push 0x800
lea edx, [ebp - 0x8f0]
push 0x104
push edx
push str.RenumFiles
push ecx
push eax
lea ecx, [ebp - 0x1c8]
call fcn.00419cf3
lea eax, [ebp - 0x8f0]
push esi
push eax
call fcn.0041a90f
add esp, 8
lea ecx, [ebp - 0x1d68]
push eax
call fcn.00408270
mov eax, dword [ebx + 0x41c]
mov byte [ebp - 0x8f0], 0
cmp eax, esi
mov ecx, 0x45561c
je 0x40ecdd
mov ecx, eax
mov eax, dword [ebp - 0x6c]
cmp eax, esi
jne 0x40ece9
mov eax, 0x45561c
push 0x800
lea edx, [ebp - 0x8f0]
push 0x104
push edx
push 0x467e28
push ecx
push eax
lea ecx, [ebp - 0x1c8]
call fcn.00419cf3
lea eax, [ebp - 0x8f0]
push esi
push eax
call fcn.0041a90f
add esp, 8
lea ecx, [ebp - 0x1d68]
push eax
call fcn.00408280
mov eax, dword [ebx + 0x42c]
mov ecx, 0x45561c
cmp eax, esi
je 0x40ed39
mov ecx, eax
mov eax, dword [ebp - 0x6c]
cmp eax, esi
jne 0x40ed45
mov eax, 0x45561c
push 1
lea edx, [ebp - 0x60]
push esi
push edx
push esi
push ecx
push eax
mov ecx, ebx
call fcn.00403bf0
mov eax, dword [ebp - 0xa4]
cmp eax, esi
jne 0x40ed65
mov eax, 0x45561c
push esi
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
je 0x40ed9d
mov eax, dword [ebp - 0xa4]
cmp eax, esi
jne 0x40ed80
mov eax, 0x45561c
push eax
push str.Created_folder__s
push 0x20
push 0x471d20
call fcn.00401200
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
add esp, 0x10
jmp 0x40edcb
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ebx
cmp eax, 0xb7
jne 0x40fb8f
mov eax, dword [ebp - 0xa4]
test eax, eax
jne 0x40edbf
mov eax, 0x45561c
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov al, byte [ebp - 0x11]
push 0
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x140], al
call fcn.004017f0
lea edi, [ebp - 0x344]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [ebp - 0x344]
push ecx
lea ecx, [ebp - 0x140]
call fcn.00405170
mov edi, str.autorun.inf
or ecx, 0xffffffff
xor eax, eax
mov byte [ebp - 4], 0x49
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.autorun.inf
lea ecx, [ebp - 0x140]
call fcn.00404eb0
mov dl, byte [ebp - 0x11]
push 0
lea ecx, [ebp - 0x130]
mov byte [ebp - 0x130], dl
call fcn.004017f0
lea edi, [ebp - 0x344]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [ebp - 0x344]
push ecx
push eax
lea ecx, [ebp - 0x130]
call fcn.00405170
mov cl, byte [0x471b14]
xor eax, eax
mov byte [ebp - 0x54c], cl
mov ecx, 0x40
lea edi, [ebp - 0x54b]
mov byte [ebp - 4], 0x4a
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x13c]
stosw word es:[edi], ax
test ecx, ecx
stosb byte es:[edi], al
jne 0x40ee92
mov ecx, 0x45561c
mov esi, dword [ebp - 0x1c]
lea edx, [ebp - 0x54c]
mov ax, word [esi + 0x104]
add esi, 0x1fc
push eax
push 0x104
push edx
push str.InfrastructureDatabaseList
push str.Version
push ecx
mov ecx, esi
call fcn.00419cf3
test eax, eax
je 0x40eed9
push str.PreInstallUpdate_Plug_In_cannot_read_InfrastructureDatabaseListKey
push 1
push 0x471d20
call fcn.00401200
add esp, 0xc
lea edi, [ebp - 0x54c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [ebp - 0x54c]
push ecx
push eax
lea ecx, [ebp - 0x130]
call fcn.00404eb0
push 0x800
lea ecx, [ebp - 0x130]
push 0
push ecx
mov ecx, esi
call fcn.00419b4c
mov dl, byte [ebp - 0xa8]
push 0
lea ecx, [ebp - 0xf0]
mov byte [ebp - 0xf0], dl
call fcn.004017f0
mov eax, dword [0x455554]
lea ecx, [ebp - 0xa8]
push eax
push 0
push ecx
lea ecx, [ebp - 0xf0]
call fcn.00404f70
lea edi, [ebp - 0x54c]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebp - 0x54c]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [ebp - 4], 0x4b
push ecx
push edx
lea ecx, [ebp - 0xf0]
call fcn.00404eb0
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x40ef7a
mov eax, 0x45561c
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x40ef91
call ebx
cmp eax, 2
jne 0x40efa5
push str.PreInstallUpdate_Plug_In_did___no_infrastructure_file_originally_in_merge_folder_or_cannot_set_attributes
push 0x20
push 0x471d20
call fcn.00401200
add esp, 0xc
mov ecx, dword [ebp - 0xec]
test ecx, ecx
jne 0x40efb4
mov ecx, 0x45561c
mov eax, dword [ebp - 0x12c]
test eax, eax
jne 0x40efc3
mov eax, 0x45561c
push 0
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov esi, eax
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x40efde
mov eax, 0x45561c
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test esi, esi
jne 0x40f04f
call ebx
cmp eax, 5
jne 0x40f01b
mov eax, dword [ebp - 0xec]
test eax, eax
jne 0x40f004
mov eax, 0x45561c
push eax
push str.The_file_is_on_the_system_is_read_only_s_n
push 8
push 0x471d20
call fcn.00401200
add esp, 0x10
jmp 0x40f04f
mov ecx, dword [ebp - 0xec]
test ecx, ecx
jne 0x40f02a
mov ecx, 0x45561c
mov eax, dword [ebp - 0x12c]
test eax, eax
jne 0x40f039
mov eax, 0x45561c
push ecx
push eax
push str.Could_not_copy__s_to__s_n
push 8
push 0x471d20
call fcn.00401200
add esp, 0x14
mov eax, dword [ebp - 0x5c]
mov ebx, dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov edi, dword [eax]
cmp dword [ebp - 0x5c], edi
je 0x40f392
mov cl, byte [ebp - 0x84]
push 0
mov byte [ebp - 0x3c], cl
lea ecx, [ebp - 0x3c]
call fcn.004017f0
mov edx, dword [0x455554]
lea eax, [ebp - 0x84]
push edx
push 0
push eax
lea ecx, [ebp - 0x3c]
call fcn.00404f70
mov cl, byte [ebp - 0xa8]
push 0
mov byte [ebp - 0x110], cl
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x4c
call fcn.004017f0
mov edx, dword [0x455554]
lea eax, [ebp - 0xa8]
push edx
push 0
push eax
lea ecx, [ebp - 0x110]
call fcn.00404f70
mov ecx, dword [0x455554]
lea esi, [edi + 8]
push ecx
push 0
push esi
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x4d
call fcn.00404dd0
mov edx, dword [0x455554]
lea ecx, [ebp - 0x110]
push edx
push 0
push esi
call fcn.00404dd0
mov eax, dword [ebp - 0x10c]
test eax, eax
jne 0x40f103
mov eax, 0x45561c
push 0x80
push eax
call ebx
mov eax, dword [ebp - 0x10c]
mov ecx, 0x45561c
test eax, eax
je 0x40f11c
mov ecx, eax
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40f128
mov eax, 0x45561c
push 0
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x40f2fa
mov eax, dword [ebp - 0x38]
test eax, eax
jne 0x40f146
mov eax, 0x45561c
push eax
push str.Failed_to_copy__s_file_to_Mege_folder
push 1
push 0x471d20
call fcn.00401200
mov ecx, dword [ebp - 0x1c]
xor edi, edi
add esp, 0x10
mov eax, dword [ecx]
mov dword [ecx + 0xc0], edi
call dword [eax + 0x68]
push 1
lea ecx, [ebp - 0x110]
mov esi, eax
mov byte [ebp - 4], 0x4c
call fcn.004017f0
push 1
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x4b
call fcn.004017f0
push 1
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x4a
call fcn.004017f0
push 1
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x49
call fcn.004017f0
push 1
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x41
call fcn.004017f0
lea ecx, [ebp - 0x1d68]
mov byte [ebp - 4], 0x40
call fcn.00406d50
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x3f
push eax
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x4c]
call fcn.004054f0
mov edx, dword [ebp - 0x48]
push edx
call fcn.00447dfa
mov eax, dword [ebp - 0x5c]
add esp, 4
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], edi
mov ecx, dword [eax]
push eax
lea eax, [ebp - 0x18]
push ecx
push eax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x3e
call fcn.004054f0
mov ecx, dword [ebp - 0x5c]
push ecx
call fcn.00447dfa
add esp, 4
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x58], edi
push 1
mov byte [ebp - 4], 0x36
call fcn.004017f0
push 1
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x19
call fcn.004017f0
mov byte [ebp - 4], 0x54
lea ecx, [ebp - 0x154]
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x53
call fcn.004017f0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x52
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x51
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x50
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x4f
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x4e
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x10c]
test eax, eax
jne 0x40f309
mov eax, 0x45561c
push 0x80
push eax
call ebx
mov eax, dword [ebp - 0xa8]
mov ecx, dword [ebp - 0xa4]
sub esp, 0x10
mov edx, esp
sub esp, 0x10
mov dword [edx], eax
mov eax, dword [ebp - 0xa0]
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x9c]
mov dword [edx + 8], eax
mov eax, dword [ebp - 0x84]
mov dword [edx + 0xc], ecx
mov ecx, dword [ebp - 0x80]
mov edx, esp
push str.Copying_files_from__s_folder_to__s_folder_n
push 4
push 0x471d20
mov dword [edx], eax
mov eax, dword [ebp - 0x7c]
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x78]
mov dword [edx + 8], eax
mov dword [edx + 0xc], ecx
call fcn.00401200
add esp, 0x2c
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 0x4c
push 1
call fcn.004017f0
push 1
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x4b
call fcn.004017f0
mov edi, dword [edi]
jmp 0x40f05a
mov edi, dword [ebp - 0x1c]
mov ecx, 0x45561c
mov eax, dword [edi + 0x41c]
test eax, eax
je 0x40f3a6
mov ecx, eax
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x40f3b2
mov eax, 0x45561c
push 1
lea edx, [ebp - 0x4c]
push 0
push edx
push 0
push ecx
push eax
mov ecx, edi
call fcn.00403bf0
mov eax, dword [ebp - 0x48]
xor ebx, ebx
mov esi, dword [eax]
cmp eax, esi
je 0x40f3ee
mov eax, dword [0x455554]
lea edx, [edi + 0x3f8]
push eax
push ebx
push edx
lea ecx, [esi + 8]
push ebx
call fcn.00411e00
mov esi, dword [esi]
mov eax, dword [ebp - 0x48]
jmp 0x40f3cc
mov eax, dword [eax]
lea ecx, [ebp - 0x140]
push ecx
lea edx, [ebp - 0x18]
push eax
push edx
lea ecx, [ebp - 0x4c]
call fcn.00405490
cmp dword [ebp - 0x1d5c], ebx
jne 0x40f67f
lea eax, [ebp - 0x98]
lea ecx, [ebp - 0x4c]
push eax
push ecx
lea ecx, [ebp - 0x1d68]
call fcn.00408230
cmp eax, ebx
je 0x40f67f
mov dl, byte [ebp - 0x11]
push ebx
lea ecx, [ebp - 0x3c]
mov byte [ebp - 0x3c], dl
call fcn.004017f0
xor eax, eax
mov byte [ebp - 4], 0x5c
mov ax, word [edi + 0x104]
push eax
push 0x138d
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
lea ecx, [ebp - 0x3c]
call fcn.00422b1c
push ebx
lea edx, [ebp - 0x3c]
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x18], esp
push edx
call fcn.00404980
mov ecx, edi
call fcn.00403d20
mov eax, dword [ebp - 0x94]
cmp eax, ebx
jne 0x40f488
mov eax, 0x45561c
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
push eax
call esi
push ebx
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [ebp - 0x94]
cmp eax, ebx
jne 0x40f4a7
mov eax, 0x45561c
lea ecx, [ebp - 0x4c]
push ecx
push eax
lea ecx, [ebp - 0x1d68]
call fcn.00406dd0
cmp eax, ebx
je 0x40f671
push eax
push str.IniMerge_process_failed_with_error:_d
push 1
push 0x471d20
call fcn.00401200
mov eax, dword [ebp - 0x94]
add esp, 0x10
cmp eax, ebx
jne 0x40f4e3
mov eax, 0x45561c
push eax
call esi
mov edx, dword [edi]
mov ecx, edi
mov dword [edi + 0xc0], ebx
call dword [edx + 0x68]
push 1
lea ecx, [ebp - 0x3c]
mov esi, eax
mov byte [ebp - 4], 0x4b
call fcn.004017f0
push 1
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x4a
call fcn.004017f0
push 1
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x49
call fcn.004017f0
push 1
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x41
call fcn.004017f0
lea ecx, [ebp - 0x1d68]
mov byte [ebp - 4], 0x40
call fcn.00406d50
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x3f
push eax
mov ecx, dword [eax]
lea eax, [ebp - 0x18]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.004054f0
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00447dfa
mov eax, dword [ebp - 0x5c]
add esp, 4
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov ecx, dword [eax]
push eax
lea edx, [ebp - 0x18]
push ecx
push edx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x3e
call fcn.004054f0
mov eax, dword [ebp - 0x5c]
push eax
call fcn.00447dfa
add esp, 4
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], ebx
push 1
mov byte [ebp - 4], 0x36
call fcn.004017f0
push 1
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x19
call fcn.004017f0
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x63
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x62
call fcn.004017f0
mov byte [ebp - 4], 0x61
push 1
lea ecx, [ebp - 0x178]
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x60
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x5f
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x5e
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x5d
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 0x4b
call fcn.004017f0
mov cl, byte [0x471b14]
xor eax, eax
mov byte [ebp - 0x448], cl
mov ecx, 0x40
lea edi, [ebp - 0x447]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebp - 0x94]
cmp eax, ebx
jne 0x40f6ac
mov eax, 0x45561c
xor esi, esi
lea edx, [ebp - 0x448]
push esi
push edx
push 0x104
push eax
call dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
lea edi, [ebp - 0x448]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [ebp - 0x98]
push ebx
call fcn.00401860
test al, al
je 0x40f710
mov edi, dword [ebp - 0x94]
mov ecx, ebx
mov eax, ecx
lea esi, [ebp - 0x448]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x98]
call fcn.00401840
xor esi, esi
lea ecx, [ebp - 0x448]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x40f8b8
push str.IniMerge_failed_to_create_autorun.inf_in_Mege_folder
push 1
push 0x471d20
call fcn.00401200
mov ecx, dword [ebp - 0x1c]
add esp, 0xc
mov edx, dword [ecx]
mov dword [ecx + 0xc0], esi
call dword [edx + 0x68]
push 1
lea ecx, [ebp - 0xf0]
mov edi, eax
mov byte [ebp - 4], 0x4a
call fcn.004017f0
push 1
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x49
call fcn.004017f0
push 1
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x41
call fcn.004017f0
lea ecx, [ebp - 0x1d68]
mov byte [ebp - 4], 0x40
call fcn.00406d50
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x3f
push eax
mov ecx, dword [eax]
lea eax, [ebp - 0x18]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.004054f0
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00447dfa
mov eax, dword [ebp - 0x5c]
add esp, 4
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x44], esi
mov ecx, dword [eax]
push eax
lea edx, [ebp - 0x18]
push ecx
push edx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x3e
call fcn.004054f0
mov eax, dword [ebp - 0x5c]
push eax
call fcn.00447dfa
add esp, 4
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x58], esi
push 1
mov byte [ebp - 4], 0x36
call fcn.004017f0
push 1
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x19
call fcn.004017f0
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x6a
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x69
call fcn.004017f0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x68
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x67
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x66
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x65
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x64
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x4a
call fcn.004017f0
push 1
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x49
call fcn.004017f0
push 1
lea ecx, [ebp - 0x140]
mov byte [ebp - 4], 0x41
call fcn.004017f0
lea ecx, [ebp - 0x1d68]
mov byte [ebp - 4], 0x40
call fcn.00406d50
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x3f
push eax
mov ecx, dword [eax]
push ecx
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x4c]
call fcn.004054f0
mov edx, dword [ebp - 0x48]
push edx
call fcn.00447dfa
mov eax, dword [ebp - 0x5c]
add esp, 4
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x44], esi
mov ecx, dword [eax]
push eax
lea eax, [ebp - 0x18]
push ecx
push eax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x3e
call fcn.004054f0
mov ecx, dword [ebp - 0x5c]
push ecx
call fcn.00447dfa
add esp, 4
mov cl, byte [ebp - 0x11]
push 0
mov byte [ebp - 0xc8], cl
lea ecx, [ebp - 0xc8]
call fcn.004017f0
mov edi, str._setupName_
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [ebp - 0xc8]
push ebx
call fcn.00401860
test al, al
je 0x40f9a6
mov edi, dword [ebp - 0xc4]
mov ecx, ebx
mov edx, ecx
mov esi, str._setupName_
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0xc8]
call fcn.00401840
push 0x800
lea eax, [ebp - 0xc8]
push 0
push eax
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x6b
call fcn.00419b4c
test eax, eax
jne 0x40fa1b
mov esi, dword [ebp - 0x1c]
push 0x800
lea ecx, [ebp - 0xc8]
push eax
push ecx
lea ecx, [esi + 0x1fc]
call fcn.00419b4c
test eax, eax
je 0x410606
mov ecx, dword [ebp - 0xc4]
test ecx, ecx
jne 0x40f9f9
mov ecx, 0x45561c
mov eax, dword [ebp - 0x6c]
test eax, eax
jne 0x40fa05
mov eax, 0x45561c
push ecx
push eax
push str.Could_not_expand_setupName_macro_using_new_dat_file__s.__Expanded_to__s_using_original_dat_file
push 1
push 0x471d20
call fcn.00401200
add esp, 0x14
mov dl, byte [ebp - 0x11]
push 0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2c], dl
call fcn.004017f0
mov edi, 0x471b14
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [ebp - 0x2c]
push ebx
call fcn.00401860
test al, al
je 0x40fa6c
mov edi, dword [ebp - 0x28]
mov ecx, ebx
mov eax, ecx
mov esi, 0x471b14
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c]
call fcn.00401840
mov cl, byte [ebp - 0x11]
push 0
mov byte [ebp - 0xd8], cl
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x73
call fcn.004017f0
mov edi, 0x471b14
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [ebp - 0xd8]
push ebx
call fcn.00401860
test al, al
je 0x40fad0
mov edi, dword [ebp - 0xd4]
mov ecx, ebx
mov edx, ecx
mov esi, 0x471b14
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0xd8]
call fcn.00401840
mov al, byte [ebp - 0x11]
push 0
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 0x74
mov byte [ebp - 0x100], al
call fcn.004017f0
mov edi, 0x471b14
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [ebp - 0x100]
push ebx
call fcn.00401860
test al, al
je 0x40fb34
mov edi, dword [ebp - 0xfc]
mov ecx, ebx
mov edx, ecx
mov esi, 0x471b14
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x100]
call fcn.00401840
mov esi, dword [ebp - 0x1c]
mov byte [ebp - 4], 0x75
mov eax, dword [esi + 0x2d8]
test eax, eax
mov eax, dword [0x455554]
push eax
push 0
je 0x40fd01
lea ecx, [ebp - 0xa8]
push ecx
lea ecx, [ebp - 0x100]
call fcn.00404f70
mov edx, dword [0x455554]
lea eax, [ebp - 0xa8]
push edx
push 0
push eax
lea ecx, [ebp - 0x2c]
call fcn.00404f70
mov ecx, dword [0x455554]
lea edx, [ebp - 0x98]
push ecx
push 0
jmp 0x40fd37
mov ecx, dword [ebp - 0xa4]
xor edi, edi
cmp ecx, edi
jne 0x40fba0
mov ecx, 0x45561c
push eax
push ecx
push str.CreateDirectory___s__failed.__error0x_x_n
push 8
push 0x471d20
call fcn.00401200
mov ecx, dword [ebp - 0x1c]
add esp, 0x14
mov edx, dword [ecx]
mov dword [ecx + 0xc0], edi
call dword [edx + 0x68]
lea ecx, [ebp - 0x1d68]
mov esi, eax
mov byte [ebp - 4], 0x40
call fcn.00406d50
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x3f
push eax
mov ecx, dword [eax]
lea eax, [ebp - 0x18]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.004054f0
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.00447dfa
mov eax, dword [ebp - 0x5c]
add esp, 4
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], edi
mov ecx, dword [eax]
push eax
lea edx, [ebp - 0x18]
push ecx
push edx
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x3e
call fcn.004054f0
mov eax, dword [ebp - 0x5c]
push eax
call fcn.00447dfa
add esp, 4
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x58], edi
push 1
mov byte [ebp - 4], 0x36
call fcn.004017f0
push 1
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x19
call fcn.004017f0
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x48
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x47
call fcn.004017f0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x46
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x45
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x44
call fcn.004017f0
mov byte [ebp - 4], 0x43
push 1
lea ecx, [ebp - 0x1a8]
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x42
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x84]
push ecx
lea ecx, [ebp - 0x100]
call fcn.00404f70
mov edx, dword [0x455554]
lea eax, [ebp - 0x84]
push edx
push 0
push eax
lea ecx, [ebp - 0x2c]
call fcn.00404f70
mov ecx, dword [0x455554]
lea edx, [ebp - 0x70]
push ecx
push 0
push edx
lea ecx, [ebp - 0xd8]
call fcn.00404f70
mov eax, dword [0x455554]
lea ecx, [ebp - 0xc8]
push eax
push 0
push ecx
lea ecx, [ebp - 0x2c]
call fcn.00404dd0
push 0x800
lea edx, [ebp - 0x2c]
push 0
push edx
lea ecx, [esi + 0x1fc]
call fcn.00419b4c
mov al, byte [0x471b14]
mov ecx, 0x40
mov byte [ebp - 0x448], al
xor eax, eax
lea edi, [ebp - 0x447]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x40fd99
mov eax, 0x45561c
lea ecx, [ebp - 0x448]
push 0
push ecx
push 0x104
push eax
call dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
lea edi, [ebp - 0x448]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
lea ecx, [ebp - 0x2c]
push ebx
call fcn.00401860
test al, al
je 0x40fdf1
mov edi, dword [ebp - 0x28]
mov ecx, ebx
mov edx, ecx
lea esi, [ebp - 0x448]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c]
call fcn.00401840
lea eax, [ebp - 0x448]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x40ffd7
mov esi, dword [ebp - 0x1c]
mov eax, dword [esi + 0x2d4]
test eax, eax
je 0x40ff5a
push str.Could_not_findsetup.exe_filename_in_Merge_folder
push 1
push 0x471d20
call fcn.00401200
mov edx, dword [esi]
add esp, 0xc
mov ecx, esi
mov dword [esi + 0xc0], 0
call dword [edx + 0x68]
push 1
lea ecx, [ebp - 0x100]
mov esi, eax
mov byte [ebp - 4], 0x74
call fcn.004017f0
push 1
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x73
call fcn.004017f0
push 1
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x6b
call fcn.004017f0
push 1
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 0x3e
call fcn.004017f0
push 1
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x36
call fcn.004017f0
push 1
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x19
call fcn.004017f0
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x7c
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x7b
call fcn.004017f0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x7a
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x79
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x78
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x77
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x76
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x40ff66
mov eax, 0x45561c
push eax
push str.New_setup.exe_does_not_exist_in_updates_folder___s___so_using_original_one
push 1
push 0x471d20
call fcn.00401200
mov edi, str._CDRoot_
or ecx, 0xffffffff
xor eax, eax
add esp, 0x10
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 1
mov ebx, ecx
lea ecx, [ebp - 0x2c]
push ebx
call fcn.00401860
test al, al
je 0x40ffbd
mov edi, dword [ebp - 0x28]
mov ecx, ebx
mov eax, ecx
mov esi, str._CDRoot_
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x24], ebx
mov byte [ebx + ecx], 0
mov edx, dword [0x455554]
lea eax, [ebp - 0xc8]
push edx
push 0
push eax
lea ecx, [ebp - 0x2c]
call fcn.00404dd0
jmp 0x40fff8
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x40ffe3
mov eax, 0x45561c
push eax
push str.New_setup.exe_exists_in_updates_folder___s___so_using_it
push 1
push 0x471d20
call fcn.00401200
add esp, 0x10
mov edi, 0x467af4
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebp - 0x24]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
mov ecx, dword [0x455554]
sub ecx, edx
cmp ecx, esi
ja 0x41001d
call fcn.00441cc0
test esi, esi
jbe 0x41005d
mov edx, dword [ebp - 0x24]
push 0
lea ecx, [ebp - 0x2c]
lea ebx, [edx + esi]
push ebx
call fcn.00401860
test al, al
je 0x41005d
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
push ebx
lea edi, [ecx + eax]
mov ecx, esi
mov edx, ecx
mov esi, 0x467af4
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c]
call fcn.00401840
mov edi, 0x467af0
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebp - 0x24]
repne scasb al, byte es:[edi]
mov eax, dword [0x455554]
not ecx
dec ecx
sub eax, edx
mov esi, ecx
cmp eax, esi
ja 0x410081
call fcn.00441cc0
test esi, esi
jbe 0x4100c1
mov ecx, dword [ebp - 0x24]
push 0
lea ebx, [ecx + esi]
lea ecx, [ebp - 0x2c]
push ebx
call fcn.00401860
test al, al
je 0x4100c1
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, esi
mov esi, 0x467af0
lea edi, [eax + edx]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c]
call fcn.00401840
mov edi, 0x466884
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebp - 0x24]
repne scasb al, byte es:[edi]
mov eax, dword [0x455554]
not ecx
dec ecx
sub eax, edx
mov esi, ecx
cmp eax, esi
ja 0x4100e5
call fcn.00441cc0
test esi, esi
jbe 0x410125
mov ecx, dword [ebp - 0x24]
push 0
lea ebx, [ecx + esi]
lea ecx, [ebp - 0x2c]
push ebx
call fcn.00401860
test al, al
je 0x410125
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, esi
mov esi, 0x466884
lea edi, [eax + edx]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c]
call fcn.00401840
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x18], 0x45561c
test eax, eax
je 0x410139
mov dword [ebp - 0x18], eax
mov edi, dword [ebp - 0x18]
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebp - 0x24]
repne scasb al, byte es:[edi]
mov eax, dword [0x455554]
not ecx
dec ecx
sub eax, edx
mov esi, ecx
cmp eax, esi
ja 0x41015b
call fcn.00441cc0
test esi, esi
jbe 0x410199
mov ecx, dword [ebp - 0x24]
push 0
lea ebx, [ecx + esi]
lea ecx, [ebp - 0x2c]
push ebx
call fcn.00401860
test al, al
je 0x410199
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, esi
mov esi, dword [ebp - 0x18]
lea edi, [eax + edx]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c]
call fcn.00401840
mov edi, 0x466880
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebp - 0x24]
repne scasb al, byte es:[edi]
mov eax, dword [0x455554]
not ecx
dec ecx
sub eax, edx
mov esi, ecx
cmp eax, esi
ja 0x4101bd
call fcn.00441cc0
test esi, esi
jbe 0x4101fd
mov ecx, dword [ebp - 0x24]
push 0
lea ebx, [ecx + esi]
lea ecx, [ebp - 0x2c]
push ebx
call fcn.00401860
test al, al
je 0x4101fd
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, esi
mov esi, 0x466880
lea edi, [eax + edx]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c]
call fcn.00401840
mov edi, str.__nosplash
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebp - 0x24]
repne scasb al, byte es:[edi]
mov eax, dword [0x455554]
not ecx
dec ecx
sub eax, edx
mov esi, ecx
cmp eax, esi
ja 0x410221
call fcn.00441cc0
test esi, esi
jbe 0x410261
mov ecx, dword [ebp - 0x24]
push 0
lea ebx, [esi + ecx]
lea ecx, [ebp - 0x2c]
push ebx
call fcn.00401860
test al, al
je 0x410261
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, esi
mov esi, str.__nosplash
lea edi, [eax + edx]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c]
call fcn.00401840
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x2d8]
test ecx, ecx
je 0x4102d2
mov edi, str.__checkPath
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebp - 0x24]
repne scasb al, byte es:[edi]
mov eax, dword [0x455554]
not ecx
dec ecx
sub eax, edx
mov esi, ecx
cmp eax, esi
ja 0x410292
call fcn.00441cc0
test esi, esi
jbe 0x4102d2
mov ecx, dword [ebp - 0x24]
push 0
lea ebx, [esi + ecx]
lea ecx, [ebp - 0x2c]
push ebx
call fcn.00401860
test al, al
je 0x4102d2
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov ecx, esi
mov esi, str.__checkPath
lea edi, [eax + edx]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c]
call fcn.00401840
mov eax, dword [ebp - 0xd4]
test eax, eax
jne 0x4102e1
mov eax, 0x45561c
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x41031c
mov esi, dword [ebp - 0x94]
test esi, esi
jne 0x410300
mov esi, 0x45561c
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push str._We_failed_to_set_the_file_attributes_of__s.__error_d.
push 1
push 0x471d20
call fcn.00401200
add esp, 0x14
mov eax, dword [ebp - 0xd4]
test eax, eax
jne 0x41032b
mov eax, 0x45561c
mov ecx, dword [ebp - 0x1c]
mov dx, word [ecx + 0x104]
lea ecx, [ebp - 0x344]
push edx
push ecx
push str._SourcePath_
push str.Strings
push eax
call fcn.004202e1
add esp, 0x14
test eax, eax
je 0x410451
mov ecx, dword [ebp - 0xfc]
test ecx, ecx
jne 0x410367
mov ecx, 0x45561c
mov eax, dword [ebp - 0xd4]
test eax, eax
jne 0x410376
mov eax, 0x45561c
mov edx, dword [ebp - 0x1c]
mov dx, word [edx + 0x104]
push edx
push ecx
push str.UpdateFolder
push 0x467a84
push eax
call fcn.004202e1
add esp, 0x14
test eax, eax
je 0x410451
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x4103a9
mov eax, 0x45561c
mov ecx, dword [ebp - 0x1c]
mov dx, word [ecx + 0x104]
push edx
push eax
mov eax, dword [ecx + 0xec]
push str.SETUP_RESTART
push str.Version
push eax
call fcn.004202e1
add esp, 0x14
test eax, eax
je 0x410439
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0x2d4]
test ecx, ecx
je 0x41040c
mov dword [eax + 0xc0], 0xb0000bc3
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x4103f5
mov eax, 0x45561c
push eax
push str.Returns_ERROR_SUCCESS_RESTART_SETUP_NO_PARAMETERS_and_writes__s_n
push 1
push 0x471d20
call fcn.00401200
add esp, 0x10
jmp 0x410479
mov dword [eax + 0xc0], 0xc0000bc3
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x410422
mov eax, 0x45561c
push eax
push str.Returns_ERROR_SUCCESS_RESTART_SETUP_and_writes__s_n
push 1
push 0x471d20
call fcn.00401200
add esp, 0x10
jmp 0x410479
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x1c]
push eax
mov edx, dword [ecx + 0xec]
push edx
push str._Couldnt_write_setup_restart_key_to__s.__error_d.__Ignoring_updates.
jmp 0x41046a
mov esi, dword [ebp - 0x6c]
test esi, esi
jne 0x41045d
mov esi, 0x45561c
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push str._We_failed_to_write_sourcepath_or_updateFolder_to_the_strings_section_of__s.__GetLastError_d.___We_cannot_continue_without_writing_the_sourcepath_to_the_file___Ignoring_updates
push 1
push 0x471d20
call fcn.00401200
add esp, 0x14
mov eax, dword [ebp - 0xfc]
xor esi, esi
cmp eax, esi
je 0x4104a2
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x410499
cmp al, 0xff
je 0x410499
dec al
mov byte [ecx], al
jmp 0x4104a2
push ecx
call fcn.00447dfa
add esp, 4
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0xfc], esi
cmp eax, esi
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0xf4], esi
je 0x4104db
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4104d2
cmp al, 0xff
je 0x4104d2
dec al
mov byte [ecx], al
jmp 0x4104db
push ecx
call fcn.00447dfa
add esp, 4
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0xd4], esi
cmp eax, esi
mov dword [ebp - 0xd0], esi
mov dword [ebp - 0xcc], esi
je 0x410511
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x410508
cmp al, 0xff
je 0x410508
dec al
mov byte [ecx], al
jmp 0x410511
push ecx
call fcn.00447dfa
add esp, 4
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x28], esi
cmp eax, esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], esi
je 0x410541
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x410538
cmp al, 0xff
je 0x410538
dec al
mov byte [ecx], al
jmp 0x410541
push ecx
call fcn.00447dfa
add esp, 4
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0xc4], esi
cmp eax, esi
mov dword [ebp - 0xc0], esi
mov dword [ebp - 0xbc], esi
je 0x41057a
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x410571
cmp al, 0xff
je 0x410571
dec al
mov byte [ecx], al
jmp 0x41057a
push ecx
call fcn.00447dfa
add esp, 4
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x94], esi
mov dword [ebp - 0x90], esi
mov dword [ebp - 0x8c], esi
mov byte [ebp - 4], 0x19
call fcn.004017b0
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.00401e30
mov ebx, dword [ebp - 0x1c]
mov ecx, ebx
call fcn.00447b82
mov ecx, dword [ebx + 0xc0]
push ecx
push str.PreInstallUpdate_Plug_In_exits_returning__d_n
push 1
push 0x471d20
call fcn.00401200
mov edx, dword [ebx]
add esp, 0x10
mov ecx, ebx
call dword [edx + 0x68]
lea ecx, [ebp - 0x70]
mov esi, eax
mov byte [ebp - 4], 0x12
call fcn.004017b0
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017b0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.Could_not_figure_out_what_the_filename_of_setup.exe_should_be___
push 1
push 0x471d20
call fcn.00401200
mov eax, dword [esi]
add esp, 0xc
mov ecx, esi
mov dword [esi + 0xc0], 0
call dword [eax + 0x68]
push 1
lea ecx, [ebp - 0xc8]
mov esi, eax
mov byte [ebp - 4], 0x3e
call fcn.004017f0
push 1
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x36
call fcn.004017f0
push 1
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x19
call fcn.004017f0
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 0x72
call fcn.00404be0
push 1
lea ecx, [ebp - 0x168]
mov byte [ebp - 4], 0x71
call fcn.004017f0
push 1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x70
call fcn.004017f0
push 1
lea ecx, [ebp - 0x188]
mov byte [ebp - 4], 0x6f
call fcn.004017f0
push 1
lea ecx, [ebp - 0x198]
mov byte [ebp - 4], 0x6e
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1a8]
mov byte [ebp - 4], 0x6d
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x6c
call fcn.004017f0
push 1
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x13
call fcn.004017f0
push 1
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x12
call fcn.004017f0
push 1
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0
call fcn.004017f0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.Will_not_run_PreinstallUpdatePlugIn_plug_in.__PreLoad_or_PreInstall_option_passed.
push 1
push 0x471d20
call fcn.00401200
mov eax, dword [ebx]
add esp, 0xc
mov ecx, ebx
mov dword [ebx + 0xc0], esi
call dword [eax + 0x68]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.Will_not_run_PreinstallUpdatePlugIn_plug_in.__OS_is_95_or_NT4_n
push 1
push 0x471d20
call fcn.00401200
mov edx, dword [ebx]
add esp, 0xc
mov ecx, ebx
mov dword [ebx + 0xc0], esi
call dword [edx + 0x68]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret