Function at 0x4071b0
Capabilities:
Check if file exists
Delete file
Get file attributes

Disassembly:
sub esp, 0x208
push ebx
push ebp
push esi
mov esi, dword [esp + 0x218]
xor ebx, ebx
xor ebp, ebp
cmp esi, ebx
push edi
je 0x40721c
cmp byte [esi], bl
je 0x40721c
mov al, byte [0x419ee4]
push esi
cmp al, bl
push 0x419b08
je 0x4071e8
lea eax, [esp + 0x18]
push str._s_s
push eax
jmp 0x4071f2
lea ecx, [esp + 0x18]
push str._s___s
push ecx
call fcn.004080ec
add esp, 0x10
mov byte [esi], bl
mov eax, dword [0x419448]
lea edx, [esp + 0x10]
push edx
push eax
mov ebp, 1
call fcn.00402b80
add esp, 8
test eax, eax
je 0x40771f
cmp dword [0x419ed0], ebx
jne 0x40724f
mov ecx, dword [0x419448]
push 0x800
push 0x2000
push 0x419788
push 0x419788
push ecx
call fcn.00402730
add esp, 0x14
test eax, eax
je 0x40771f
push 0x419788
call fcn.00401000
add esp, 4
test eax, eax
jne 0x40726a
push str.Configuration_file_not_found.__Aborting.
jmp 0x407717
push ebx
push 0x80
push 0x419888
push 0x417660
push str.HEADER
call fcn.004012d0
push ebx
push 0x80
push 0x419a08
push 0x41765c
push str.HEADER
call fcn.004012d0
push ebx
push 0x80
push 0x419908
push str.PRODUCT
push str.HEADER
call fcn.004012d0
mov edi, 0x419a08
or ecx, 0xffffffff
xor eax, eax
add esp, 0x3c
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x4072e6
push 0x419a08
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x4072e6
push str.ERROR:_Resource_file_could_not_be_found_or_opened.
jmp 0x407717
mov edi, 0x419908
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x407309
push str.your_NovaLogic_product
push 0x419908
call fcn.004080ec
add esp, 8
call fcn.00405290
cmp ebp, ebx
jne 0x4073d6
push ebx
lea edx, [esp + 0x14]
push 0x80
push edx
push str.REVEXE
push str.PRECHECK
call fcn.004012d0
add esp, 0x14
test eax, eax
je 0x407361
lea eax, [esp + 0x10]
push 4
push eax
call fcn.004051b0
add esp, 8
cmp eax, ebx
je 0x407712
push eax
push 0x415074
push 0x419e08
call fcn.004080ec
add esp, 0xc
push ebx
lea ecx, [esp + 0x14]
push 0x80
push ecx
push 0x417608
push str.PRECHECK
call fcn.004012d0
lea edx, [esp + 0x24]
push 4
push edx
call fcn.004051b0
add esp, 0x1c
test eax, eax
je 0x407712
push ebx
lea eax, [esp + 0x14]
push 0x80
push eax
push str.RESEXE
push str.PRECHECK
call fcn.004012d0
lea ecx, [esp + 0x24]
push 4
push ecx
call fcn.004051b0
add esp, 0x1c
cmp eax, ebx
je 0x407712
push eax
push 0x415074
push 0x419a88
call fcn.004080ec
add esp, 0xc
push ebx
lea edx, [esp + 0x14]
push 0x80
push edx
push 0x4175fc
push str.PRECHECK
call fcn.004012d0
lea eax, [esp + 0x24]
push 4
push eax
call fcn.004051b0
add esp, 0x1c
cmp eax, ebx
je 0x407712
push eax
push 0x415074
push 0x419988
call fcn.004080ec
push ebx
lea ecx, [esp + 0x20]
push 0x80
push ecx
push str.CCBIN
push str.PRECHECK
call fcn.004012d0
add esp, 0x20
test eax, eax
je 0x407462
lea edx, [esp + 0x10]
push 4
push edx
call fcn.004051b0
add esp, 8
cmp eax, ebx
je 0x407712
push eax
push 0x415074
push 0x419d88
call fcn.004080ec
add esp, 0xc
push ebx
lea eax, [esp + 0x14]
push 0x80
push eax
push 0x416008
push str.PRECHECK
call fcn.004012d0
add esp, 0x14
test eax, eax
je 0x4074ad
lea ecx, [esp + 0x10]
push 4
push ecx
call fcn.004051b0
add esp, 8
cmp eax, ebx
je 0x407712
push eax
push 0x415074
push 0x419d08
call fcn.004080ec
add esp, 0xc
call fcn.00405390
push 4
call fcn.00405480
mov eax, dword [0x419eb4]
add esp, 4
cmp eax, ebx
jne 0x40771f
cmp dword [0x419eb8], ebx
jne 0x40771f
cmp dword [0x419ebc], ebx
jne 0x40771f
push str.EXECUTE
call fcn.004011c0
add esp, 4
test eax, eax
je 0x407541
push ebx
lea edx, [esp + 0x14]
push 0x80
push edx
push 0x417660
call fcn.00401470
add esp, 0x10
test eax, eax
je 0x407541
lea eax, [esp + 0x10]
push 1
push eax
call fcn.004051b0
add esp, 8
test eax, eax
je 0x4076f3
push ebx
lea ecx, [esp + 0x14]
push 0x80
push ecx
push 0x417660
call fcn.00401470
add esp, 0x10
test eax, eax
jne 0x40750e
push str.COPY
call fcn.004011c0
add esp, 4
test eax, eax
je 0x4075a0
push ebx
lea edx, [esp + 0x14]
push 0x80
push edx
push str.COPY
call fcn.00401470
add esp, 0x10
test eax, eax
je 0x4075a0
lea eax, [esp + 0x10]
push ebx
push eax
call fcn.004051b0
add esp, 8
test eax, eax
je 0x4076f3
push ebx
lea ecx, [esp + 0x14]
push 0x80
push ecx
push str.COPY
call fcn.00401470
add esp, 0x10
test eax, eax
jne 0x40756e
push str.REMOVE
call fcn.004011c0
add esp, 4
test eax, eax
je 0x407600
push ebx
lea edx, [esp + 0x14]
push 0x80
push edx
push str.REMOVE
call fcn.00401470
add esp, 0x10
test eax, eax
je 0x407600
lea eax, [esp + 0x10]
push 5
push eax
call fcn.004051b0
add esp, 8
test eax, eax
je 0x4076f3
push ebx
lea ecx, [esp + 0x14]
push 0x80
push ecx
push str.REMOVE
call fcn.00401470
add esp, 0x10
test eax, eax
jne 0x4075cd
call fcn.00401130
push 0x419988
push 0x419a08
push 0x419a88
lea edx, [esp + 0x1c]
push str._s__s__s__WORK
push edx
call fcn.004080ec
push str._tmpexec.___
push ebx
lea eax, [esp + 0x2c]
push 1
push eax
call fcn.00402420
add esp, 0x24
push str._tmpexec.___
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push str.update.lst
call fcn.00401000
add esp, 4
test eax, eax
je 0x4076b5
push 0x4175c8
call fcn.004011c0
add esp, 4
test eax, eax
je 0x4076b0
push ebx
lea ecx, [esp + 0x14]
push 0x80
push ecx
push str.FILE
call fcn.00401470
add esp, 0x10
test eax, eax
je 0x4076b0
lea edx, [esp + 0x10]
push 2
push edx
call fcn.004051b0
add esp, 8
test eax, eax
je 0x4076f3
push ebx
lea eax, [esp + 0x14]
push 0x80
push eax
push str.FILE
call fcn.00401470
add esp, 0x10
test eax, eax
jne 0x407681
call fcn.00401130
mov dword [0x419e94], ebx
mov dword [0x419e9c], ebx
mov dword [0x419ea8], ebx
mov dword [0x419e98], ebx
mov dword [0x419ea4], ebx
mov dword [0x419ea0], ebx
call fcn.00405390
call fcn.00405410
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x208
ret
push str.ERROR:_Could_not_allocate_memory_for_ADDLINK.
call fcn.00405ef0
add esp, 4
call fcn.00401130
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x208
ret
push str.ERROR:_Could_not_allocate_memory_for_ADDLINK.
call fcn.00405ef0
add esp, 4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x208
ret