Function at 0x47e210
Capabilities:
Delete file

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x4d9776
push eax
mov eax, 0x49f4
mov dword fs:[0], esp
call fcn.004d3780
push ebx
push ebp
push esi
push edi
xor esi, esi
mov ecx, 0x412
xor eax, eax
lea edi, [esp + 0x840]
mov dword [esp + 0x374c], esi
mov dword [esp + 0x83c], esi
rep stosd dword es:[edi], eax
mov ecx, 0x412
lea edi, [esp + 0x1888]
rep stosd dword es:[edi], eax
mov ecx, 0x82
lea edi, [esp + 0x28d0]
rep stosd dword es:[edi], eax
mov ecx, 0x82
lea edi, [esp + 0x2ad8]
rep stosd dword es:[edi], eax
mov ecx, 0x82
lea edi, [esp + 0x2ce0]
rep stosd dword es:[edi], eax
mov ecx, 0x82
lea edi, [esp + 0x30f0]
rep stosd dword es:[edi], eax
mov ecx, 0x82
lea edi, [esp + 0x2ee8]
rep stosd dword es:[edi], eax
mov ecx, 0x40
lea edi, [esp + 0x3510]
rep stosd dword es:[edi], eax
mov ecx, 0x40
lea edi, [esp + 0x3610]
rep stosd dword es:[edi], eax
mov ecx, 0x82
lea edi, [esp + 0x32f8]
rep stosd dword es:[edi], eax
or ebp, 0xffffffff
mov edx, 1
mov ecx, 0x1e
lea edi, [esp + 0x3754]
mov dword [esp + 0x3500], esi
mov dword [esp + 0x3728], esi
mov dword [esp + 0x350c], esi
mov dword [esp + 0x3710], esi
mov dword [esp + 0x3714], ebp
mov dword [esp + 0x3718], ebp
mov dword [esp + 0x371c], ebp
mov dword [esp + 0x3720], ebp
mov dword [esp + 0x3504], esi
mov dword [esp + 0x3740], edx
mov dword [esp + 0x372c], ebp
mov dword [esp + 0x3730], esi
mov dword [esp + 0x3734], esi
mov dword [esp + 0x3738], esi
mov dword [esp + 0x373c], esi
mov dword [esp + 0x3744], edx
mov dword [esp + 0x3748], edx
mov dword [esp + 0x3508], esi
mov dword [esp + 0x37cc], esi
mov dword [esp + 0x3724], esi
mov dword [esp + 0x37d0], 0x2fb8
mov dword [esp + 0x3750], esi
rep stosd dword es:[edi], eax
mov ebx, 0x80004005
mov dword [esp + 0x10], esi
mov dword [esp + 0x37d4], esi
mov dword [esp + 0x37d8], ebp
mov dword [esp + 0x37dc], ebp
mov dword [esp + 0x37e0], ebp
mov dword [esp + 0x37e4], ebp
mov dword [esp + 0x37e8], ebp
mov dword [esp + 0x37ec], ebp
mov dword [esp + 0x37f0], ebp
mov eax, dword [esp + 0x4a14]
sub eax, esi
je 0x47e691
dec eax
jne 0x47ea74
mov eax, dword [esp + 0x4a18]
cmp eax, esi
jne 0x47e442
mov ax, word [0x4ffec0]
mov edx, dword [esp + 0x4a1c]
mov word [esp + 0x1c], ax
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x1e]
rep stosd dword es:[edi], eax
push esi
lea ecx, [esp + 0x20]
push 0x103
push ecx
push edx
mov ecx, 0x6b8dd4
mov ebx, 2
stosw word es:[edi], ax
call fcn.004774b0
test eax, eax
je 0x47ea74
mov eax, dword [esp + 0x4a20]
lea ecx, [esp + 0x1c]
push eax
mov ebx, 1
push ecx
jmp 0x47e70d
cmp eax, edx
jne 0x47ea74
mov dx, word [0x4ffec0]
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x1e]
mov word [esp + 0x1c], dx
mov word [esp + 0x42c], dx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x42e]
push esi
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [esp + 0x4a20]
lea edx, [esp + 0x430]
push 0x103
push edx
push eax
mov ecx, 0x6b8dd4
call fcn.004774b0
test eax, eax
jne 0x47e4bb
mov edx, dword [0x6dcf80]
lea ecx, [esp + 0x1c]
push 0x104
push ecx
push 0x14b
push edx
jmp 0x47e4f1
mov eax, dword [esp + 0x4a20]
lea ecx, [esp + 0x42c]
push eax
push ecx
call dword [sym.imp.MSVCRT.dll_wcscmp]
add esp, 8
test eax, eax
push 0x104
jge 0x47e654
mov eax, dword [0x6dcf80]
lea edx, [esp + 0x20]
push edx
push 0x14c
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
mov ecx, dword [esp + 0x4a24]
push ecx
mov ecx, 0x6b7ebc
call fcn.00423680
mov ebx, eax
cmp ebx, esi
je 0x47e5dd
cmp dword [ebx + 0x2ed4], 2
jne 0x47e585
mov dx, word [0x4ffec0]
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x226]
mov word [esp + 0x224], dx
push 0x104
rep stosd dword es:[edi], eax
mov ecx, dword [0x6dcf80]
stosw word es:[edi], ax
lea eax, [esp + 0x228]
push eax
push 0x14d
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
mov esi, dword [0x68f38c]
push 0x40
push 0xf
call fcn.004ae820
add esp, 4
lea edx, [esp + 0x228]
push eax
push edx
push esi
call dword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
jmp 0x47ea76
mov ax, word [0x4ffec0]
mov ecx, 0x81
mov word [esp + 0x224], ax
xor eax, eax
lea edi, [esp + 0x226]
lea edx, [esp + 0x28d0]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x2ad8]
stosw word es:[edi], ax
push ecx
lea eax, [esp + 0x228]
push edx
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea ecx, [esp + 0x224]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push esi
push ebx
mov ecx, 0x6b7ebc
call fcn.004236e0
lea ecx, [esp + 0x37f4]
call fcn.00411240
mov edi, 1
lea ecx, [esp + 0x37f4]
push edi
push edi
mov dword [esp + 0x4a14], edi
call fcn.004112d0
lea edx, [esp + 0x1c]
push esi
push edx
lea ecx, [esp + 0x37fc]
call fcn.00411260
mov eax, dword [0x68f38c]
lea ecx, [esp + 0x37f4]
push eax
call fcn.004112f0
cmp eax, edi
jne 0x47e63a
mov dword [esp + 0x10], edi
mov dword [esp + 0x83c], 3
lea ecx, [esp + 0x37f4]
xor ebx, ebx
mov dword [esp + 0x4a0c], ebp
call fcn.00437c40
jmp 0x47e972
mov ecx, dword [0x6dcf80]
lea eax, [esp + 0x20]
push eax
push 0x14a
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
mov esi, dword [0x68f38c]
push 0x40
push 0xf
call fcn.004ae820
add esp, 4
lea edx, [esp + 0x20]
push eax
push edx
push esi
call dword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
jmp 0x47ea76
call fcn.004c4d80
mov edx, eax
cmp edx, esi
mov dword [esp + 0x14], edx
je 0x47ea74
mov eax, dword [esp + 0x4a18]
cmp eax, esi
jne 0x47e725
mov ax, word [0x4ffec0]
mov ecx, 0x81
mov word [esp + 0x224], ax
xor eax, eax
lea edi, [esp + 0x226]
push 0x103
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov eax, dword [esp + 0x4a20]
lea ecx, [esp + 0x228]
push ecx
push eax
mov ecx, edx
mov ebx, 2
call fcn.004c4e40
test eax, eax
je 0x47ea74
mov ecx, dword [esp + 0x4a20]
lea edx, [esp + 0x224]
push ecx
mov ebx, 1
push edx
call dword [sym.imp.MSVCRT.dll_wcscmp]
add esp, 8
test eax, eax
jl 0x47ea74
xor ebx, ebx
jmp 0x47ea74
cmp eax, 1
jne 0x47ea74
mov dx, word [0x4ffec0]
mov dword [esp + 0x18], eax
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x226]
mov word [esp + 0x224], dx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x1e]
mov word [esp + 0x1c], dx
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x4a1c]
push 0x103
stosw word es:[edi], ax
lea eax, [esp + 0x228]
push eax
push ecx
mov ecx, dword [esp + 0x20]
call fcn.004c4e40
test eax, eax
jne 0x47e7a4
mov eax, dword [0x6dcf80]
lea edx, [esp + 0x1c]
push 0x104
push edx
push 0x144
mov dword [esp + 0x24], esi
push eax
jmp 0x47e7db
mov ecx, dword [esp + 0x4a20]
lea edx, [esp + 0x224]
push ecx
push edx
call dword [sym.imp.MSVCRT.dll_wcscmp]
add esp, 8
test eax, eax
jge 0x47e941
mov ecx, dword [0x6dcf80]
lea eax, [esp + 0x1c]
push 0x104
push eax
push 0x145
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
mov edx, dword [esp + 0x4a24]
mov ecx, 0x6b7ebc
push edx
call fcn.00423680
mov ebx, eax
cmp ebx, esi
je 0x47e8c7
cmp dword [ebx + 0x2ed4], 2
jne 0x47e86e
mov ax, word [0x4ffec0]
mov edx, dword [0x6dcf80]
mov word [esp + 0x42c], ax
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x42e]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x42c]
push 0x104
push ecx
push 0x149
push edx
stosw word es:[edi], ax
call dword [sym.imp.USER32.dll_LoadStringW]
mov esi, dword [0x68f38c]
push 0x40
push 0xf
call fcn.004ae820
add esp, 4
push eax
lea eax, [esp + 0x434]
push eax
push esi
call dword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
jmp 0x47ea76
mov cx, word [0x4ffec0]
xor eax, eax
mov word [esp + 0x42c], cx
mov ecx, 0x81
lea edi, [esp + 0x42e]
lea edx, [esp + 0x2ad8]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x28d0]
push edx
lea ecx, [esp + 0x430]
push eax
push ecx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea edx, [esp + 0x42c]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push esi
push ebx
mov ecx, 0x6b7ebc
call fcn.004236e0
lea ecx, [esp + 0x37f4]
call fcn.00411240
push 1
push 1
lea ecx, [esp + 0x37fc]
mov dword [esp + 0x4a14], esi
call fcn.004112d0
lea eax, [esp + 0x1c]
push esi
push eax
lea ecx, [esp + 0x37fc]
call fcn.00411260
mov eax, dword [0x68f38c]
lea ecx, [esp + 0x37f4]
push eax
call fcn.004112f0
cmp eax, 1
jne 0x47e926
mov dword [esp + 0x10], eax
xor edi, edi
mov dword [esp + 0x83c], 2
jmp 0x47e92a
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x37f4]
mov dword [esp + 0x4a0c], ebp
call fcn.00437c40
cmp edi, esi
je 0x47e970
mov ecx, dword [esp + 0x4a1c]
push ecx
mov ecx, dword [esp + 0x18]
push 1
call fcn.004c4f80
mov edx, dword [0x68f38c]
push 0x1018
push 0x2005
push 0x1400
push edx
call dword [sym.imp.USER32.dll_PostMessageW]
xor ebx, ebx
cmp dword [esp + 0x10], esi
je 0x47ea74
mov eax, dword [esp + 0x4a24]
mov esi, dword [sym.imp.MSVCRT.dll__snwprintf]
push eax
push 0x4eb504
lea ecx, [esp + 0x848]
push 0x823
push ecx
call esi
mov edi, dword [esp + 0x4a2c]
add esp, 0x10
lea edx, [esp + 0x2ad8]
push edi
push str._s.zip
push 0x103
push edx
call esi
mov ecx, dword [0x6dcf84]
push str.Update_
lea eax, [esp + 0x28e4]
push 0x103
push eax
push ecx
call fcn.004a7ac0
add esp, 0x20
lea edx, [esp + 0x2ce0]
push edi
push 0x4eb504
push 0x103
push edx
call esi
mov eax, dword [esp + 0x4a30]
add esp, 0x10
lea ecx, [esp + 0x30f0]
push eax
push 0x4eb504
push 0x103
push ecx
call esi
mov dx, word [0x4ffec0]
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x646]
mov word [esp + 0x644], dx
add esp, 0x10
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x2ad8]
lea ecx, [esp + 0x28d0]
push eax
lea edx, [esp + 0x638]
push ecx
push edx
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea eax, [esp + 0x634]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [esp + 0x83c]
push ecx
mov ecx, 0x6b7ebc
call fcn.00419d50
mov eax, ebx
mov ecx, dword [esp + 0x4a04]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x4a00
ret 0x14