Function at 0x42d0a0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x597f30
mov eax, dword fs:[0]
push eax
sub esp, 0xe0
mov eax, dword [0x616738]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x6c], 1
lea ecx, [ebp - 0x74]
call fcn.004a2910
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.004a2910
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.004a2910
mov byte [ebp - 4], 2
mov eax, dword [ebp + 8]
push eax
push 0x5a6e3c
lea ecx, [ebp - 0x88]
push ecx
call fcn.00498fb0
add esp, 4
mov dword [ebp - 0xc4], eax
mov edx, dword [ebp - 0xc4]
mov dword [ebp - 0xc8], edx
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0xc8]
call fcn.004090f0
push eax
lea eax, [ebp - 0x8c]
push eax
call fcn.0049e7a0
add esp, 0xc
mov dword [ebp - 0xcc], eax
mov ecx, dword [ebp - 0xcc]
mov dword [ebp - 0xd0], ecx
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0xd0]
mov eax, dword [edx]
push eax
push 0x5a6e50
lea ecx, [ebp - 0x10]
push ecx
call fcn.004098b0
add esp, 0x10
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x8c]
call fcn.00408330
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x88]
call fcn.00408330
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
push 0x5a6496
push 0x5a6e68
push 0x5a6e70
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov dword [ebp - 0x78], 0
jmp 0x42d1d9
mov edx, dword [ebp - 0x78]
add edx, 1
mov dword [ebp - 0x78], edx
mov ecx, dword [ebp - 0xc0]
call fcn.00423470
cmp dword [ebp - 0x78], eax
jae 0x42d383
cmp dword [0x61c720], 0
je 0x42d231
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x90], eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00408330
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00408330
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00408330
mov eax, dword [ebp - 0x90]
jmp 0x42dab5
mov ecx, dword [ebp - 0x78]
push ecx
mov ecx, dword [ebp - 0xc0]
call fcn.00491ff0
mov edx, dword [eax]
mov dword [ebp - 0x68], edx
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x98]
push ecx
mov ecx, dword [ebp - 0x68]
call fcn.0040ecb0
mov dword [ebp - 0xd4], eax
mov ecx, dword [ebp - 0xd4]
call fcn.004090f0
push eax
call fcn.0042e230
add esp, 8
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x91], al
lea ecx, [ebp - 0x98]
call fcn.00408330
movzx edx, byte [ebp - 0x91]
test edx, edx
je 0x42d37e
mov eax, dword [ebp - 0x68]
push eax
mov ecx, dword [ebp - 0xc0]
call fcn.00427470
push 0
lea ecx, [ebp - 0x9c]
push ecx
mov ecx, dword [ebp - 0x68]
call fcn.0040eab0
mov dword [ebp - 0xd8], eax
mov edx, dword [ebp - 0xd8]
mov dword [ebp - 0xdc], edx
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0xdc]
push eax
lea ecx, [ebp - 0x74]
call fcn.00409070
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x9c]
call fcn.00408330
push 1
lea ecx, [ebp - 0xa0]
push ecx
mov ecx, dword [ebp - 0x68]
call fcn.0040eab0
mov dword [ebp - 0xe0], eax
mov edx, dword [ebp - 0xe0]
mov dword [ebp - 0xe4], edx
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0xe4]
push eax
lea ecx, [ebp - 0x14]
call fcn.00409070
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xa0]
call fcn.00408330
push 0
mov ecx, dword [ebp - 0x68]
call fcn.0040c720
test eax, eax
jne 0x42d37c
mov dword [ebp - 0xa4], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00408330
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00408330
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00408330
mov eax, dword [ebp - 0xa4]
jmp 0x42dab5
jmp 0x42d383
jmp 0x42d1d0
cmp dword [ebp - 0x68], 0
jne 0x42d3c5
mov dword [ebp - 0xa8], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00408330
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00408330
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00408330
mov eax, dword [ebp - 0xa8]
jmp 0x42dab5
mov ecx, dword [ebp - 0x68]
call fcn.0042dc90
movzx ecx, al
cmp ecx, 5
je 0x42d634
mov ecx, dword [ebp - 0x68]
call fcn.0040c710
mov dword [ebp - 0x7c], eax
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
push 0x5a6e7c
push 0x5a6e80
push 0x5a6e88
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x7c]
add ecx, 4
call fcn.004090f0
push eax
push 0x5a6e94
push 0x5a6e9c
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x7c]
add ecx, 8
call fcn.004090f0
push eax
push 0x5a6ea8
push 0x5a6eb4
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x7c]
add ecx, 0x34
call fcn.004090f0
push eax
push 0x5a6ec0
push 0x5a6ec8
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x7c]
add ecx, 0x2c
call fcn.004090f0
push eax
push 0x5a6ed4
push 0x5a6edc
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x7c]
add ecx, 0x1c
call fcn.004090f0
push eax
push 0x5a6ee8
push 0x5a6ef4
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x74]
call fcn.004090f0
push eax
push 0x5a6f00
push 0x5a6f0c
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x5a6f18
push 0x5a6f1c
lea ecx, [ebp - 0x14]
call fcn.0040f800
push 0x5a6f20
push 0x5a6f24
lea ecx, [ebp - 0x14]
call fcn.0040f800
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x14]
call fcn.004090f0
push eax
push 0x5a6f28
push 0x5a6f34
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov edx, dword [ebp - 0x7c]
add edx, 0x6c
push edx
lea ecx, [ebp - 0x80]
call fcn.00408fd0
mov byte [ebp - 4], 7
push 0x5a6f40
push 0x5a6f44
lea ecx, [ebp - 0x80]
call fcn.0040f800
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x80]
call fcn.004090f0
push eax
push 0x5a6f48
push 0x5a6f58
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x7c]
add ecx, 0x68
call fcn.004090f0
push eax
push 0x5a6f64
push 0x5a6f74
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
push 0x5a6497
push 0x5a6f80
push 0x5a6f90
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [ebp - 0x7c]
cmp dword [eax + 0x70], 0
je 0x42d5c2
mov dword [ebp - 0xe8], 0x5a6f9c
jmp 0x42d5cc
mov dword [ebp - 0xe8], 0x5a6fa0
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0xe8]
push ecx
push 0x5a6fa4
push 0x5a6fb4
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov dword [ebp - 0xac], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x80]
call fcn.00408330
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00408330
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00408330
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00408330
mov eax, dword [ebp - 0xac]
jmp 0x42dab5
push 0x42a960
mov ecx, dword [ebp - 0x68]
call fcn.0040ea90
mov ecx, dword [ebp - 0x68]
call fcn.0040ccd0
test eax, eax
jne 0x42d689
mov dword [ebp - 0xb0], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00408330
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00408330
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00408330
mov eax, dword [ebp - 0xb0]
jmp 0x42dab5
push 0x42a960
mov ecx, dword [ebp - 0x68]
call fcn.0040ea90
push 0
mov ecx, dword [ebp - 0x68]
call fcn.0040cda0
test eax, eax
jne 0x42d6e0
mov dword [ebp - 0xb4], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00408330
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00408330
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00408330
mov eax, dword [ebp - 0xb4]
jmp 0x42dab5
push 0
mov ecx, dword [ebp - 0x68]
call fcn.0040f2c0
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x42d72f
mov dword [ebp - 0xb8], 0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00408330
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00408330
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00408330
mov eax, dword [ebp - 0xb8]
jmp 0x42dab5
mov edx, dword [ebp - 0x1c]
push edx
lea ecx, [ebp - 0x64]
call fcn.0042dcb0
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x68]
call fcn.0040c710
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
push 0x5a6fc0
push str.Updated
push 0x5a6fcc
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x18]
add ecx, 4
call fcn.004090f0
push eax
push str.EngName
push 0x5a6fe0
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x18]
add ecx, 8
call fcn.004090f0
push eax
push str.LocalName
push 0x5a6ff8
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x18]
add ecx, 0x34
call fcn.004090f0
push eax
push str.Mutex
push 0x5a700c
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x18]
add ecx, 0x2c
call fcn.004090f0
push eax
push str.MainApp
push 0x5a7020
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x18]
add ecx, 0x1c
call fcn.004090f0
push eax
push str.NewVersion
push 0x5a7038
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x74]
call fcn.004090f0
push eax
push str.Descript1
push 0x5a7050
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x5a705c
push 0x5a7060
lea ecx, [ebp - 0x14]
call fcn.0040f800
push 0x5a7064
push 0x5a7068
lea ecx, [ebp - 0x14]
call fcn.0040f800
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x14]
call fcn.004090f0
push eax
push str.Descript2
push 0x5a7078
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [ebp - 0x18]
add eax, 0x6c
push eax
lea ecx, [ebp - 0x70]
call fcn.00408fd0
mov byte [ebp - 4], 9
push 0x5a7084
push 0x5a7088
lea ecx, [ebp - 0x70]
call fcn.0040f800
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x70]
call fcn.004090f0
push eax
push str.SimpleDescript
push 0x5a709c
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov ecx, dword [ebp - 0x18]
add ecx, 0x68
call fcn.004090f0
push eax
push str.LogoImageURL
push 0x5a70b8
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov ecx, dword [ebp - 0x18]
cmp dword [ecx + 0x70], 0
je 0x42d90a
mov dword [ebp - 0xec], 0x5a70c4
jmp 0x42d914
mov dword [ebp - 0xec], 0x5a70c8
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
mov edx, dword [ebp - 0xec]
push edx
push str.isAutoUpdate
push str.ProductInfo
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x48]
call fcn.00408290
movzx eax, al
test eax, eax
jne 0x42d9ae
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x48]
call fcn.004090f0
push eax
push 0x5a70e8
push 0x5a70f8
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x24]
call fcn.004090f0
push eax
push 0x5a7104
push 0x5a7110
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x28]
call fcn.004090f0
push eax
push 0x5a711c
push 0x5a7120
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp 0x42da66
lea ecx, [ebp - 0x84]
call fcn.004a2910
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x64]
push ecx
mov edx, dword [ebp - 0x50]
push edx
push 0x5a712c
lea eax, [ebp - 0x84]
push eax
call fcn.004098b0
add esp, 0x10
push 0x5a7134
push 0x5a7138
lea ecx, [ebp - 0x84]
call fcn.0040f800
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x84]
call fcn.004090f0
push eax
push str.DownloadedPath
push 0x5a714c
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x24]
call fcn.004090f0
push eax
push str.Checksum
push 0x5a7164
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [ebp - 0x10]
call fcn.004090f0
push eax
lea ecx, [ebp - 0x28]
call fcn.004090f0
push eax
push 0x5a7170
push str.FileInfo
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x84]
call fcn.00408330
mov dword [ebp - 0xbc], 1
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x70]
call fcn.00408330
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x64]
call fcn.0040f720
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10]
call fcn.00408330
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00408330
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00408330
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov esp, ebp
pop ebp
ret 4