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

Disassembly:
push 0xdc
mov eax, 0x476fa5
call fcn.00476acd
mov edi, edx
mov ebx, ecx
mov dword [ebp - 0xdc], ebx
xor eax, eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0xe0], eax
push 0x3c
mov dword [ebp - 4], eax
pop ecx
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], eax
call fcn.00440af0
mov ecx, eax
mov dword [ecx], ecx
mov dword [ecx + 4], ecx
mov dword [ecx + 8], ecx
mov word [ecx + 0xc], 0x101
mov dword [ebp - 0xb8], ecx
mov byte [ebp - 4], 1
mov ebx, dword [ebx]
add ebx, 0x7c
mov byte [ebp - 0x8d], 0
mov edx, dword [ebx]
jmp 0x441570
mov eax, dword [edx]
cmp byte [eax + 0x61], 0
jne 0x441577
add edx, 4
cmp edx, dword [ebx + 4]
jne 0x441565
jmp 0x44157e
mov byte [ebp - 0x8d], 1
test edi, edi
je 0x442098
xor edx, edx
cmp dword [edi + 0x1c], edx
je 0x442098
cmp dword [edi + 0x18], edx
je 0x442098
lea ecx, [ebp - 0xb8]
mov esi, 0x4943bc
xor eax, eax
lock cmpxchg dword [esi], ecx
test eax, eax
je 0x4415b9
mov esi, 0x139f
jmp 0x44207f
mov byte [ebp - 0xd7], 1
mov byte [ebp - 4], 2
mov al, byte [edi + 1]
mov byte [0x47f85f], al
mov al, byte [edi + 2]
mov byte [0x47f215], al
mov al, byte [edi + 6]
mov cl, byte [edi + 5]
mov byte [0x47f85a], al
mov al, byte [edi + 3]
mov byte [0x47f85e], al
mov al, byte [edi + 4]
mov byte [0x47f214], al
mov al, byte [edi]
mov byte [0x47f85c], al
mov eax, dword [edi + 0x1c]
mov dword [0x47f860], eax
mov al, byte [edi + 7]
mov byte [0x47f85b], al
mov al, byte [edi + 8]
mov byte [0x47f859], al
mov al, byte [edi + 9]
mov byte [0x47f858], al
mov eax, dword [edi + 0x20]
mov dword [0x47f850], eax
mov eax, dword [edi + 0xc]
mov byte [0x47f85d], cl
test eax, eax
je 0x441630
mov dword [section..data], eax
mov eax, dword [edi + 0x10]
test eax, eax
je 0x44163c
mov dword [0x47f854], eax
test cl, cl
je 0x44165e
mov esi, dword [edi + 0x14]
mov dword [ebp - 0x94], esi
test esi, esi
jne 0x44165e
xor eax, eax
mov ecx, 0x4943bc
xchg dword [ecx], eax
push 0x57
pop esi
jmp 0x44207f
mov al, byte [edi + 0xa]
mov cl, 2
cmp al, 1
je 0x441669
mov cl, al
mov dword [ebp - 0xb0], edx
mov byte [ebp - 0xac], dl
mov byte [ebp - 0xab], cl
mov dword [ebp - 0x8c], edx
mov byte [ebp - 0x88], dl
mov byte [ebp - 0x87], al
push eax
lea ecx, [ebp - 0x84]
call fcn.00440fa0
mov byte [ebp - 4], 5
lea edx, [ebp - 0x8c]
push dword [edi + 0x18]
mov eax, ecx
lea ecx, [ebp - 0xb0]
push dword [edi + 0x1c]
push eax
call fcn.00441004
mov esi, eax
test esi, esi
je 0x4416df
push esi
push dword [0x47f860]
push 0x416110
push 2
call sub.api_ms_win_crt_private_l1_1_0.dll__o___acrt_iob_func
pop ecx
push eax
call fcn.00476567
add esp, 0x10
jmp 0x441f56
cmp byte [0x47f85d], 0
lea ecx, [ebp - 0x8c]
je 0x44174e
push dword [0x4011a8]
push dword [0x4011a4]
call fcn.00440e28
push dword [ebp - 0x94]
lea eax, [ebp - 0x8c]
push 0x41618c
push eax
call fcn.00440df6
add esp, 0xc
lea ecx, [ebp - 0x8c]
push dword [0x4011b0]
push dword [0x4011ac]
call fcn.00440e28
cmp byte [0x47f215], 0
jne 0x441bb5
push dword [0x4011b8]
push dword [0x4011b4]
jmp 0x441baa
push dword [0x4010a8]
push dword [0x4010a4]
call fcn.00440e28
cmp byte [0x47f85c], 0
je 0x441bb5
cmp byte [0x47f215], 0
je 0x441782
mov eax, dword [0x4010ac]
mov ecx, dword [0x4010b0]
jmp 0x44178d
mov eax, dword [0x401164]
mov ecx, dword [0x401168]
push ecx
push eax
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push 0x19c
push 0x4161b0
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x4010b8]
lea ecx, [ebp - 0x8c]
push dword [0x4010b4]
call fcn.00440e28
cmp byte [0x47f215], 0
jne 0x4419e8
push 0x43
push 0x416350
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x4010c8]
lea ecx, [ebp - 0x8c]
push dword [0x4010c4]
call fcn.00440e28
cmp byte [0x47f215], 0
jne 0x4419e8
cmp byte [0x47f85f], 0
lea ecx, [ebp - 0x8c]
je 0x4418da
push dword [0x401130]
push dword [0x40112c]
call fcn.00440e28
push dword [0x401138]
lea ecx, [ebp - 0x8c]
push dword [0x401134]
call fcn.00440e28
push dword [0x401160]
lea ecx, [ebp - 0x8c]
push dword [0x40115c]
call fcn.00440e28
push 0x50
push 0x4165f8
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x401150]
lea ecx, [ebp - 0x8c]
push dword [0x40114c]
call fcn.00440e28
push dword [0x401158]
lea ecx, [ebp - 0x8c]
push dword [0x401154]
call fcn.00440e28
push dword [0x4010f8]
lea ecx, [ebp - 0x8c]
push dword [0x4010f4]
call fcn.00440e28
push dword [0x401148]
lea ecx, [ebp - 0x8c]
push dword [0x401144]
call fcn.00440e28
push dword [0x401140]
push dword [0x40113c]
jmp 0x441b5e
push dword [0x4010d0]
push dword [0x4010cc]
call fcn.00440e28
push dword [0x401170]
lea ecx, [ebp - 0x8c]
push dword [0x40116c]
call fcn.00440e28
push 0x45
push 0x416508
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x401180]
lea ecx, [ebp - 0x8c]
push dword [0x40117c]
call fcn.00440e28
push dword [0x4010f8]
lea ecx, [ebp - 0x8c]
push dword [0x4010f4]
call fcn.00440e28
push 0x22
push 0x416550
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push 0xe0
push 0x416650
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x401188]
lea ecx, [ebp - 0x8c]
push dword [0x401184]
call fcn.00440e28
push dword [0x401198]
lea ecx, [ebp - 0x8c]
push dword [0x401194]
call fcn.00440e28
push 0x3d
push 0x416734
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x401190]
lea ecx, [ebp - 0x8c]
push dword [0x40118c]
call fcn.00440e28
push dword [0x401178]
lea ecx, [ebp - 0x8c]
push dword [0x401174]
call fcn.00440e28
push dword [0x4011a0]
push dword [0x40119c]
jmp 0x441b5e
push dword [0x4010e8]
lea ecx, [ebp - 0x8c]
push dword [0x4010e4]
call fcn.00440e28
push dword [0x4010c8]
lea ecx, [ebp - 0x8c]
push dword [0x4010c4]
call fcn.00440e28
push ecx
push ecx
mov eax, esp
lea ecx, [ebp - 0x8c]
mov dword [eax], 0x416398
mov dword [eax + 4], 0x16b
call fcn.00440e28
push dword [0x4010d0]
lea ecx, [ebp - 0x8c]
push dword [0x4010cc]
call fcn.00440e28
push dword [0x4010d8]
lea ecx, [ebp - 0x8c]
push dword [0x4010d4]
call fcn.00440e28
push dword [0x4010e0]
lea ecx, [ebp - 0x8c]
push dword [0x4010dc]
call fcn.00440e28
push 0x45
push 0x416508
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x4010f8]
lea ecx, [ebp - 0x8c]
push dword [0x4010f4]
call fcn.00440e28
push 0x22
push 0x416550
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x401100]
lea ecx, [ebp - 0x8c]
push dword [0x4010fc]
call fcn.00440e28
push dword [0x401108]
lea ecx, [ebp - 0x8c]
push dword [0x401104]
call fcn.00440e28
cmp byte [ebp - 0x8d], 0
je 0x441b17
push dword [0x401110]
lea ecx, [ebp - 0x8c]
push dword [0x40110c]
call fcn.00440e28
push dword [0x401118]
lea ecx, [ebp - 0x8c]
push dword [0x401114]
call fcn.00440e28
push 0x51
push 0x416578
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x401120]
lea ecx, [ebp - 0x8c]
push dword [0x40111c]
call fcn.00440e28
push dword [0x401128]
lea ecx, [ebp - 0x8c]
push dword [0x401124]
call fcn.00440e28
push 0x28
push 0x4165cc
lea ecx, [ebp - 0x8c]
call fcn.00440e28
cmp byte [0x47f215], 0
jne 0x441b87
push 0x178
push 0x416778
lea ecx, [ebp - 0x8c]
call fcn.00440e28
push dword [0x4010f0]
lea ecx, [ebp - 0x8c]
push dword [0x4010ec]
call fcn.00440e28
push dword [0x4010c0]
push dword [0x4010bc]
lea ecx, [ebp - 0x8c]
call fcn.00440e28
mov eax, dword [ebx + 4]
lea ecx, [ebp - 0xe8]
sub eax, dword [ebx]
sar eax, 2
push eax
call fcn.004498f9
cmp byte [0x47f859], 0
jne 0x441bdb
cmp byte [0x47f858], 0
je 0x441c3a
mov edx, ebx
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x84]
call fcn.0044be40
mov esi, eax
test esi, esi
jne 0x441f56
call fcn.0044ae28
mov eax, dword [section..data]
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x5c], eax
call fcn.0044bdbd
mov esi, eax
test esi, esi
jne 0x441f56
mov edx, ebx
lea ecx, [ebp - 0x84]
call fcn.0044c7d6
push ecx
mov edx, ebx
lea ecx, [ebp - 0x84]
call fcn.0044c8ef
mov dword [ebp - 4], 5
mov eax, dword [ebx + 4]
xor edx, edx
mov ecx, dword [ebx]
sub eax, ecx
sar eax, 2
mov dword [ebp - 0x94], edx
test eax, eax
je 0x441ee1
mov esi, dword [ebp - 0xe8]
mov dword [ebp - 0xa4], esi
mov eax, edx
shl eax, 2
mov dword [ebp - 0xa8], eax
mov edx, dword [eax + ecx]
mov eax, ecx
cmp byte [edx + 0x5c], 0
je 0x441cac
cmp byte [0x47f214], 0
je 0x441cac
cmp byte [0x47f85c], 0
je 0x441cac
mov eax, dword [edx + 0x18]
test eax, eax
je 0x441c93
mov eax, dword [eax]
jmp 0x441c95
xor eax, eax
push eax
lea eax, [ebp - 0x8c]
push 0x4168f8
push eax
call fcn.00440df6
mov eax, dword [ebx]
add esp, 0xc
mov ecx, dword [ebp - 0xa8]
push esi
push dword [ecx + eax]
call fcn.0046cd90
mov dword [ebp - 0xbc], eax
test eax, eax
jns 0x441d05
cmp byte [0x47f214], 0
je 0x441d05
push eax
lea eax, [ebp - 0x8c]
push 0x416998
push eax
call fcn.00440df6
add esp, 0xc
push dword [ebp - 0xbc]
push dword [0x47f860]
push 0x4169e8
push 2
call sub.api_ms_win_crt_private_l1_1_0.dll__o___acrt_iob_func
pop ecx
push eax
call fcn.00476567
add esp, 0x10
mov eax, dword [ebx]
add eax, dword [ebp - 0xa8]
cmp byte [0x47f85d], 0
jne 0x441e1a
xor ecx, ecx
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0xc0], ecx
mov dword [ebp - 0xa0], ecx
mov dword [ebp - 0x9c], ecx
mov dword [ebp - 0x98], ecx
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0xa
push ecx
lea ecx, [ebp - 0xc8]
mov edx, esi
push ecx
lea ecx, [ebp - 0xd4]
push ecx
push dword [eax]
lea ecx, [ebp - 0x8c]
call fcn.004459ab
mov esi, eax
test esi, esi
jne 0x441e9b
cmp byte [0x47f859], al
jne 0x441d94
cmp byte [0x47f858], al
je 0x441dd0
mov eax, dword [ebx]
lea ecx, [ebp - 0xa0]
add eax, dword [ebp - 0xa8]
mov edx, dword [ebp - 0xa4]
push ecx
lea ecx, [ebp - 0xc8]
push ecx
lea ecx, [ebp - 0xd4]
push ecx
push ecx
push ecx
push dword [eax]
lea ecx, [ebp - 0x84]
call fcn.0044c033
mov esi, eax
test esi, esi
jne 0x441e9b
mov ecx, dword [ebp - 0xa0]
test ecx, ecx
je 0x441dfe
mov edx, dword [ebp - 0x98]
sub edx, ecx
and edx, 0xfffffffc
call fcn.00440d1d
xor eax, eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
lea ecx, [ebp - 0xc8]
call fcn.00449a6a
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 5
call fcn.00449a6a
jmp 0x441e33
push dword [eax]
mov edx, esi
lea ecx, [ebp - 0x8c]
call fcn.004451b8
mov esi, eax
test esi, esi
jne 0x441f56
cmp byte [0x47f85e], 0
je 0x441e6e
cmp dword [ebp - 0x94], 0
je 0x441e50
lea ecx, [ebp - 0xb0]
call fcn.00440f77
mov eax, dword [ebx]
mov ecx, dword [ebp - 0xa8]
mov edx, dword [ebp - 0xa4]
push dword [ecx + eax]
lea ecx, [ebp - 0xb0]
call fcn.004432b1
mov esi, eax
mov eax, dword [ebx + 4]
mov edx, dword [ebp - 0x94]
mov ecx, dword [ebx]
inc edx
add dword [ebp - 0xa4], 0xc
sub eax, ecx
sar eax, 2
mov dword [ebp - 0x94], edx
cmp edx, eax
jae 0x441ee1
mov esi, dword [ebp - 0xa4]
jmp 0x441c60
mov ecx, dword [ebp - 0xa0]
test ecx, ecx
je 0x441ec9
mov edx, dword [ebp - 0x98]
sub edx, ecx
and edx, 0xfffffffc
call fcn.00440d1d
xor eax, eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x98], eax
lea ecx, [ebp - 0xc8]
call fcn.00449a6a
lea ecx, [ebp - 0xd4]
call fcn.00449a6a
jmp 0x441f56
cmp byte [0x47f85c], 0
je 0x441f3c
cmp byte [0x47f85d], 0
lea ecx, [ebp - 0x8c]
je 0x441f1f
call fcn.00448eb1
mov esi, eax
test esi, esi
jne 0x441f56
cmp byte [0x47f215], al
jne 0x441f3c
lea ecx, [ebp - 0x8c]
call fcn.00449388
mov esi, eax
test esi, esi
jne 0x441f56
jmp 0x441f3c
call fcn.00447fe4
mov esi, eax
test esi, esi
jne 0x441f56
push 0x23
push 0x416a58
lea ecx, [ebp - 0x8c]
call fcn.00440e28
cmp byte [0x47f85d], 0
jne 0x441f56
mov edx, dword [ebp - 0xdc]
lea ecx, [ebp - 0x8c]
call fcn.0044137e
cmp dword [ebp - 0x8c], 0
je 0x441feb
push dword [ebp - 0x8c]
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o_ferror]
mov ebx, 0x416a7c
pop ecx
test eax, eax
je 0x441f9b
test esi, esi
jne 0x441f9b
push eax
push dword [0x47f860]
push ebx
push 2
call sub.api_ms_win_crt_private_l1_1_0.dll__o___acrt_iob_func
pop ecx
push eax
call fcn.00476567
add esp, 0x10
mov esi, 0x490
lea ecx, [ebp - 0x8c]
call fcn.0043d288
test eax, eax
je 0x441fcc
test esi, esi
jne 0x441fcc
push eax
push dword [0x47f860]
push ebx
push 2
call sub.api_ms_win_crt_private_l1_1_0.dll__o___acrt_iob_func
pop ecx
push eax
call fcn.00476567
add esp, 0x10
mov esi, 0x490
push dword [edi + 0x18]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x441feb
test al, 0x20
je 0x441feb
and eax, 0xffffffdf
push eax
push dword [edi + 0x18]
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test esi, esi
je 0x441ff8
push dword [edi + 0x18]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp byte [0x47f214], 0
lea ecx, [ebp - 0x84]
je 0x442043
call fcn.004420e8
cmp byte [ebp - 0x88], 0
je 0x442022
push dword [ebp - 0x8c]
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o_fclose]
pop ecx
cmp byte [ebp - 0xac], 0
je 0x442038
push dword [ebp - 0xb0]
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o_fclose]
pop ecx
xor eax, eax
mov ecx, 0x4943bc
xchg dword [ecx], eax
jmp 0x44207f
call fcn.004420e8
cmp byte [ebp - 0x88], 0
je 0x44205e
push dword [ebp - 0x8c]
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o_fclose]
pop ecx
cmp byte [ebp - 0xac], 0
je 0x442074
push dword [ebp - 0xb0]
call dword [sym.imp.api_ms_win_crt_private_l1_1_0.dll__o_fclose]
pop ecx
xor eax, eax
mov ecx, 0x4943bc
xchg dword [ecx], eax
xor esi, esi
mov eax, dword [ebp - 0xb8]
push dword [eax + 4]
lea eax, [ebp - 0xb8]
push eax
mov ecx, eax
call fcn.0044a0cd
jmp 0x4420ac
push dword [ecx + 4]
lea eax, [ebp - 0xb8]
push eax
mov ecx, eax
call fcn.0044a0cd
push 0x57
pop esi
mov ecx, dword [ebp - 0xb8]
push 0x3c
pop edx
call fcn.00440d1d
lea ecx, [ebp - 0xe8]
call fcn.00449980
mov eax, esi
call fcn.00476a77
ret