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

Disassembly:
mov eax, 0x4a0b69
call fcn.00497cb0
sub esp, 0xa34
push ebx
push esi
mov esi, ecx
add esi, 5
mov dword [ebp - 0x1c], esi
mov al, byte [esi]
cmp al, 0x20
je 0x414099
cmp al, 9
jne 0x41409c
inc esi
jmp 0x41408f
mov ebx, dword [sym.imp.MSVCR71.dll_isdigit]
jmp 0x4140a5
inc esi
movsx eax, byte [esi]
push eax
call ebx
test eax, eax
pop ecx
jne 0x4140a4
mov al, byte [esi]
cmp al, 0x20
je 0x4140ba
cmp al, 9
jne 0x4140bd
inc esi
jmp 0x4140b0
lea eax, [ebp - 0x18]
push eax
push 0x4a5014
push dword [ebp - 0x1c]
xor ebx, ebx
mov dword [ebp - 0x18], ebx
call dword [sym.imp.MSVCR71.dll_sscanf]
add esp, 0xc
cmp dword [ebp - 0x18], ebx
je 0x414365
push esi
call sub.MSVCR71.dll_strlen
test eax, eax
pop ecx
je 0x414365
push esi
lea ecx, [ebp - 0x88]
call fcn.00483361
lea eax, [ebp - 0x88]
push eax
lea eax, [ebp - 0x64]
push eax
mov dword [ebp - 4], ebx
push dword [edi + 0x84b8]
call fcn.00404e9e
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 2
call fcn.004835c3
xor bl, bl
lea eax, [ebp - 0x64]
mov byte [ebp - 0x13], bl
mov byte [ebp - 0x14], bl
call fcn.00412f5a
test al, al
je 0x41413d
mov byte [ebp - 0x13], 1
jmp 0x41415f
lea eax, [ebp - 0x64]
call fcn.00404e88
test al, al
je 0x41414f
mov byte [ebp - 0x14], 1
jmp 0x41415f
lea eax, [ebp - 0x64]
push eax
call fcn.00404e6e
test al, al
pop ecx
je 0x41415f
mov bl, 1
mov eax, dword [ebp - 0x18]
xor edx, edx
mov ecx, 0x3e8
div ecx
push 0x64
pop ecx
mov eax, edx
xor edx, edx
div ecx
cmp eax, 4
mov dword [ebp - 0x18], eax
je 0x414185
cmp eax, 5
mov byte [ebp - 0x11], 0
jne 0x414189
mov byte [ebp - 0x11], 1
test eax, eax
je 0x414196
cmp eax, 1
mov byte [ebp - 0x12], 0
jne 0x41419a
mov byte [ebp - 0x12], 1
test bl, bl
mov eax, dword [edi + 0x815c]
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0xa3c], 7
je 0x4141be
mov dword [ebp - 0xa3c], 0xe
lea eax, [edi + 0x8449]
push eax
lea eax, [ebp - 0xa05]
push eax
call sub.MSVCR71.dll_strcpy
lea eax, [edi + 0x8e31]
push eax
lea eax, [ebp - 0xa37]
push eax
call sub.MSVCR71.dll_strcpy
mov eax, dword [ebp - 0x5c]
add esp, 0x10
cmp dword [ebp - 0x48], 0x10
jae 0x4141f3
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x9f0]
push eax
call sub.MSVCR71.dll_strcpy
mov eax, dword [edi + 0x8164]
mov dword [ebp - 0x9f4], eax
mov al, byte [0x4bb21b]
mov byte [ebp - 0xa38], al
mov eax, dword [0x4bb2cc]
test eax, eax
pop ecx
pop ecx
je 0x41422f
lea ecx, [ebp - 0xa3c]
push ecx
push eax
call fcn.0042b730
cmp byte [ebp - 0x12], 0
je 0x414245
cmp byte [edi + 0x8d28], 0
je 0x414245
mov byte [ebp - 0xa38], 0
cmp byte [ebp - 0xa38], 0
jne 0x414261
cmp dword [edi + 0x84c0], 0
jne 0x414261
mov ecx, 0x4b3
jmp 0x414315
cmp byte [ebp - 0x13], 0
jne 0x414333
test bl, bl
jne 0x414278
cmp byte [ebp - 0x14], bl
je 0x414333
mov esi, dword [edi + 0x84c0]
test esi, esi
je 0x414292
cmp byte [ebp - 0xa38], 0
jne 0x414292
mov bl, 1
call fcn.00456f34
cmp dword [ebp - 0x48], 0x10
mov eax, dword [ebp - 0x5c]
jae 0x41429e
lea eax, [ebp - 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x4142b0
mov byte [ebp - 0x11], 0
jmp 0x4142e6
cmp byte [ebp - 0x11], 0
je 0x4142bb
or eax, 1
jmp 0x4142be
and eax, 0xfffffffe
cmp byte [ebp - 0x12], 0
je 0x4142c9
or eax, 2
jmp 0x4142cc
and eax, 0xfffffffd
cmp dword [ebp - 0x48], 0x10
mov ecx, dword [ebp - 0x5c]
jae 0x4142d8
lea ecx, [ebp - 0x5c]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
setne byte [ebp - 0x11]
mov esi, dword [edi + 0x84c0]
test esi, esi
je 0x4142f7
xor bl, bl
call fcn.00456f34
cmp byte [ebp - 0x11], 0
jne 0x414310
cmp dword [ebp - 0x24], 0x10
mov eax, dword [ebp - 0x38]
jae 0x414309
lea eax, [ebp - 0x38]
mov ecx, 0x4b5
jmp 0x414344
mov ecx, 0x4b6
push 0xffffffffffffffff
call fcn.004075db
push eax
mov ecx, edi
call fcn.0040e512
or dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x64]
push eax
call fcn.00414041
jmp 0x414379
cmp dword [ebp - 0x24], 0x10
mov eax, dword [ebp - 0x38]
jae 0x41433f
lea eax, [ebp - 0x38]
mov ecx, 0x4b4
push eax
push 0xffffffffffffffff
call fcn.004075db
push eax
lea eax, [ebp - 0x1ec]
push eax
call dword [sym.imp.MSVCR71.dll_sprintf]
add esp, 0xc
lea eax, [ebp - 0x1ec]
jmp 0x41431c
push 0xffffffffffffffff
mov ecx, 0x4b2
call fcn.004075db
push eax
mov ecx, edi
call fcn.0040e512
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret