Function at 0x421220
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push 0x50
mov eax, 0x67aa89
call fcn.005b852e
mov ebx, ecx
mov dword [ebp - 0x1c], ebx
xor esi, esi
mov dword [ebp - 0x10], esi
cmp dword [ebx + 0x48], esi
jne 0x421489
mov eax, dword [0x7534c4]
mov eax, dword [eax + 0xec]
sub eax, 0x10
push eax
call fcn.0040149c
lea edi, [eax + 0x10]
pop ecx
mov dword [ebp - 0x20], edi
push edi
mov dword [ebp - 4], esi
call dword [0x69b370]
cmp eax, 0xffffffff
jne 0x421275
mov dword [ebp - 0x10], 1
jmp 0x42147f
push ecx
mov eax, esp
add ebx, 8
mov ecx, ebx
mov dword [ebp - 0x18], esp
mov dword [eax], edi
call fcn.00417026
test al, al
jne 0x421384
lea ecx, [ebp - 0x5c]
call fcn.00455344
push ecx
lea eax, [edi - 0x10]
mov dword [ebp - 0x18], esp
mov dword [ebp - 0x14], esp
push eax
mov byte [ebp - 4], 1
call fcn.0040149c
pop ecx
mov ecx, dword [ebp - 0x14]
add eax, 0x10
mov dword [ecx], eax
lea ecx, [ebp - 0x5c]
call fcn.00455873
cmp eax, esi
jne 0x421378
push 0x69fb20
lea ecx, [ebp - 0x14]
call fcn.00401b65
mov esi, 0x69d18c
push esi
mov byte [ebp - 4], 2
call fcn.005b80b0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x14]
call fcn.00403c44
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00455405
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x14]
push eax
mov byte [ebp - 4], 3
call fcn.00403c44
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
mov byte [ebp - 4], 2
call fcn.0040124d
mov eax, dword [ebp - 0x14]
push ecx
add eax, 0xfffffff0
mov dword [ebp - 0x18], esp
mov esi, esp
push eax
call fcn.0040149c
pop ecx
add eax, 0x10
lea ecx, [ebp - 0x5c]
mov dword [esi], eax
call fcn.004555cd
push ecx
lea eax, [edi - 0x10]
mov dword [ebp - 0x18], esp
mov esi, esp
push eax
call fcn.0040149c
pop ecx
add eax, 0x10
lea ecx, [ebp - 0x5c]
mov dword [esi], eax
call fcn.004554c1
push ecx
mov eax, esp
mov ecx, ebx
mov dword [ebp - 0x18], esp
mov dword [eax], edi
call fcn.00417026
test al, al
jne 0x421437
mov dword [ebp - 0x10], 2
jmp 0x421437
mov dword [ebp - 0x10], 2
jmp 0x421444
push 0x10
mov ecx, ebx
mov dword [ebx + 8], esi
mov dword [ebx + 0xc], esi
mov dword [ebx + 0x10], esi
mov dword [ebx + 0x20], esi
mov dword [ebx + 0x24], esi
mov dword [ebx + 0x1c], esi
call fcn.00414b7c
test eax, eax
jne 0x421455
lea ecx, [ebp - 0x5c]
call fcn.00455344
push ecx
mov dword [ebp - 0x18], esp
lea eax, [edi - 0x10]
mov dword [ebp - 0x18], esp
push eax
mov byte [ebp - 4], 4
call fcn.0040149c
pop ecx
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
lea ecx, [ebp - 0x5c]
call fcn.00455873
cmp eax, esi
jne 0x421444
push 0x69fb20
lea ecx, [ebp - 0x14]
call fcn.00401b65
mov esi, 0x69d18c
push esi
mov byte [ebp - 4], 5
call fcn.005b80b0
pop ecx
push eax
push esi
lea ecx, [ebp - 0x14]
call fcn.00403c44
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00455405
mov eax, dword [eax]
push dword [eax - 0xc]
lea ecx, [ebp - 0x14]
push eax
mov byte [ebp - 4], 6
call fcn.00403c44
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
mov byte [ebp - 4], 5
call fcn.0040124d
lea eax, [ebp - 0x14]
push eax
mov ecx, ebx
call fcn.004167b9
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
call fcn.0040124d
xor esi, esi
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0
call fcn.004553c3
cmp dword [ebp - 0x10], esi
jne 0x42147f
push ecx
mov eax, esp
mov ecx, ebx
mov dword [ebp - 0x18], esp
mov dword [eax], str.SUF70UninstallData
call fcn.0041379b
test al, al
jne 0x421475
mov dword [ebp - 0x10], 3
jmp 0x42147f
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0x48], 1
lea ecx, [edi - 0x10]
call fcn.0040124d
jmp 0x4214c5
lea ecx, [ebx + 8]
mov dword [ecx + 8], esi
mov dword [ecx + 0xc], esi
mov dword [ecx + 0x1c], esi
xor edx, edx
cmp dword [ecx + 0xc], esi
push ecx
setne dl
mov eax, esp
mov dword [ecx + 0x10], esi
mov dword [ecx + 0x20], esi
mov dword [ecx + 0x24], esi
mov dword [ebp - 0x20], esp
mov dword [ecx + 0x1c], edx
mov dword [eax], str.SUF70UninstallData
call fcn.0041379b
test al, al
jne 0x4214c5
mov dword [ebp - 0x10], 3
mov eax, dword [ebp - 0x10]
call fcn.005b8606
ret