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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x24
mov eax, dword [ebp + 8]
mov eax, dword [ebp + 8]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
sub esp, 4
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 2
mov ecx, 0xffffffff
xor ecx, 0x5be90c9c
or eax, edx
or ecx, 0x5be90c9c
xor eax, 0xffffffff
and eax, ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x20], 0xb4cf9db6
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
sub eax, 0x8ec4adb8
je 0x408ce6
jmp 0x408ac4
mov eax, dword [ebp - 0x24]
sub eax, 0x94204503
je 0x408c3c
jmp 0x408ad7
mov eax, dword [ebp - 0x24]
sub eax, 0xb4cf9db6
je 0x408b61
jmp 0x408aea
mov eax, dword [ebp - 0x24]
sub eax, 0xd1033839
je 0x408c30
jmp 0x408afd
mov eax, dword [ebp - 0x24]
sub eax, 0xf3668995
je 0x408cd2
jmp 0x408b10
mov eax, dword [ebp - 0x24]
sub eax, 0x1691ecfe
je 0x408cde
jmp 0x408b23
mov eax, dword [ebp - 0x24]
sub eax, 0x21217482
je 0x408c69
jmp 0x408b36
mov eax, dword [ebp - 0x24]
sub eax, 0x222e99e4
je 0x408baf
jmp 0x408b49
mov eax, dword [ebp - 0x24]
sub eax, 0x7c0c6747
je 0x408c57
jmp 0x408b5c
jmp 0x408cf0
mov eax, dword [0x43a554]
mov ecx, dword [0x43a550]
mov edx, eax
sub edx, 0xf3a52304
sub edx, 1
add edx, 0xf3a52304
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x8ec4adb8
mov ecx, 0x222e99e4
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x408cf0
mov eax, dword [ebp - 0x18]
cmp eax, 0
sete al
and al, 1
mov byte [ebp - 0x11], al
mov ecx, dword [0x43a554]
mov eax, dword [0x43a550]
mov edx, ecx
sub edx, 0xf9e8daad
sub edx, 1
add edx, 0xf9e8daad
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x8ec4adb8
mov ecx, 0xd1033839
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x408cf0
mov dword [ebp - 0x20], 0x94204503
jmp 0x408cf0
mov dl, byte [ebp - 0x11]
mov eax, 0x1691ecfe
mov ecx, 0x7c0c6747
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x408cf0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], 0x21217482
jmp 0x408cf0
mov ecx, dword [ebp - 0x10]
mov eax, ecx
xor eax, 0xffffffff
mov dword [ebp - 0x28], eax
mov esi, 0xffffffff
xor esi, 2
mov edx, 0xffffffff
xor edx, 0xcb6235a6
and eax, 0xcb6235a6
and ecx, edx
mov edi, esi
and edi, 0xcb6235a6
mov ebx, edx
and ebx, 2
or eax, ecx
mov ecx, dword [ebp - 0x28]
or edi, ebx
xor eax, edi
or ecx, esi
xor ecx, 0xffffffff
or edx, 0xcb6235a6
and ecx, edx
or eax, ecx
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
sub esp, 8
mov dword [ebp - 0x20], 0xf3668995
jmp 0x408cf0
mov dword [ebp - 0x20], 0x1691ecfe
jmp 0x408cf0
add esp, 0x24
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], 0x222e99e4
jmp 0x408aae