Function at 0x422850
Capabilities:
Get file attributes
Set file attributes

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xa
push 0
push 0
dec ecx
jne 0x422858
push ecx
push ebx
push esi
push edi
xor eax, eax
push ebp
push 0x422cf8
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x422c45
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.00415484
lea edx, [ebp - 0x14]
call fcn.00416638
mov eax, 0x422d10
call fcn.004128ac
xor eax, eax
push ebp
push 0x422c31
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.00415484
add eax, 0x20
push eax
call fcn.004226d0
pop edx
mov dword [edx + 4], eax
mov dword [edx], 0x42272c
call fcn.00415484
call fcn.004167cc
dec eax
jle 0x42292c
call fcn.00412a1c
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0xb
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x28], 0xb
lea edx, [ebp - 0x34]
mov ecx, 1
mov eax, 0x422d2c
call fcn.0040bc08
mov eax, dword [ebp - 0xc]
call fcn.00416a40
push 0x40030
push 0x422d50
mov eax, dword [ebp - 0xc]
call fcn.0040489c
push eax
push 0
call sub.user32.dll_MessageBoxA_1
call fcn.00403e58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x422cc8
call fcn.00415484
call fcn.00415558
test al, al
jne 0x422971
call fcn.00412a1c
mov eax, 0x422d60
call fcn.00416a40
push 0x40030
push 0x422d50
push 0x422d74
push 0
call sub.user32.dll_MessageBoxA_1
call fcn.00403e58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x422cc8
mov eax, 0x422d8c
call fcn.00416a40
call fcn.00415484
lea edx, [ebp - 0x10]
call fcn.00415d38
cmp dword [ebp - 0x10], 0
jne 0x422a21
call fcn.00415484
cmp byte [eax + 0x28], 0
je 0x4229b8
push 0x40030
push 0x422d50
push 0x422d9c
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x422c14
call fcn.00415484
mov ecx, dword [eax + 8]
lea eax, [ebp - 0x38]
mov edx, 0x422dc0
call fcn.004046e8
mov eax, dword [ebp - 0x38]
call fcn.00416a40
push 0x40030
push 0x422d50
push 0x422dd0
push 0
call sub.user32.dll_MessageBoxA_1
call fcn.004226d0
lea ecx, [ebp - 0xc]
mov edx, 0x422e0c
call fcn.00422758
test al, al
jne 0x422c14
mov eax, 0x422e1c
call fcn.00416a40
call fcn.00403e58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x422cc8
lea eax, [ebp - 0x3c]
mov ecx, dword [ebp - 0x10]
mov edx, 0x422e38
call fcn.004046e8
mov eax, dword [ebp - 0x3c]
call fcn.00416a40
call fcn.00415484
lea edx, [ebp - 4]
call fcn.004165ec
cmp dword [ebp - 4], 0
jne 0x422ad5
mov eax, 0x422e50
call fcn.00416a40
push 0x40030
push 0x422d50
lea eax, [ebp - 0x40]
push eax
mov eax, 0x422e78
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0xb
xor eax, eax
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x28], 0xb
lea edx, [ebp - 0x34]
mov ecx, 1
mov eax, 0x422e8c
call fcn.0040bc08
mov eax, dword [ebp - 0x40]
call fcn.0040489c
push eax
push 0
call sub.user32.dll_MessageBoxA_1
call fcn.004226d0
lea ecx, [ebp - 0xc]
mov edx, 0x422e0c
call fcn.00422758
test al, al
jne 0x422c14
mov eax, 0x422ee0
call fcn.00416a40
call fcn.00403e58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x422cc8
mov eax, 0x422efc
call fcn.00416a40
lea eax, [ebp - 0x44]
mov ecx, 0x422f1c
mov edx, dword [ebp - 4]
call fcn.004046e8
mov eax, dword [ebp - 0x44]
xor edx, edx
call fcn.00414ac0
test al, al
jne 0x422bac
mov eax, 0x422f34
call fcn.00416a40
mov eax, 0x422f64
call fcn.004128ac
call fcn.004226d0
call fcn.00423060
test al, al
jne 0x422c14
mov eax, 0x422f88
call fcn.00416a40
push 0x40030
push 0x422d50
lea eax, [ebp - 0x48]
push eax
mov eax, 0x422fbc
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x30], 0xb
xor eax, eax
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x28], 0xb
lea edx, [ebp - 0x34]
mov eax, 0x422e8c
mov ecx, 1
call fcn.0040bc08
mov eax, dword [ebp - 0x48]
call fcn.0040489c
push eax
push 0
call sub.user32.dll_MessageBoxA_1
call fcn.004226d0
lea ecx, [ebp - 0xc]
mov edx, 0x422e0c
call fcn.00422758
test al, al
jne 0x422c14
mov eax, 0x422ee0
call fcn.00416a40
call fcn.00403e58
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x422cc8
push 0x422fd0
push dword [ebp - 4]
push 0x422f1c
lea eax, [ebp - 0x4c]
mov edx, 3
call fcn.0040475c
mov eax, dword [ebp - 0x4c]
call fcn.00416a40
lea eax, [ebp - 0x50]
push eax
mov ecx, 3
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.004048f4
mov edx, dword [ebp - 0x50]
lea eax, [ebp - 8]
mov ecx, 0x422fe0
call fcn.004046e8
mov eax, dword [ebp - 8]
call fcn.0040489c
push eax
call sub.kernel32.dll_GetFileAttributesA
or eax, 2
push eax
mov eax, dword [ebp - 8]
call fcn.0040489c
push eax
call sub.kernel32.dll_SetFileAttributesA
mov eax, 0x422ff8
call fcn.00416a40
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x422c38
call fcn.00412a1c
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x422cff
lea eax, [ebp - 0x54]
mov edx, 8
call fcn.004043f0
lea eax, [ebp - 0x24]
call fcn.004043cc
lea eax, [ebp - 0x14]
mov edx, 5
call fcn.004043f0
ret