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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x28
mov eax, dword [ebp + 8]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], 0xf6a7fb1e
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
sub eax, 0x8414e044
je 0x40c148
jmp 0x40be5b
mov eax, dword [ebp - 0x28]
sub eax, 0x9f32dca4
je 0x40c287
jmp 0x40be6e
mov eax, dword [ebp - 0x28]
sub eax, 0xaa0e1d50
je 0x40c16a
jmp 0x40be81
mov eax, dword [ebp - 0x28]
sub eax, 0xce67a9de
je 0x40c250
jmp 0x40be94
mov eax, dword [ebp - 0x28]
sub eax, 0xe58d4cad
je 0x40c00c
jmp 0x40bea7
mov eax, dword [ebp - 0x28]
sub eax, 0xf0259033
je 0x40c018
jmp 0x40beba
mov eax, dword [ebp - 0x28]
sub eax, 0xf1567850
je 0x40c11a
jmp 0x40becd
mov eax, dword [ebp - 0x28]
sub eax, 0xf6a7fb1e
je 0x40bf6a
jmp 0x40bee0
mov eax, dword [ebp - 0x28]
sub eax, 0xfaabb293
je 0x40c269
jmp 0x40bef3
mov eax, dword [ebp - 0x28]
sub eax, 0x24b69b97
je 0x40bfb8
jmp 0x40bf06
mov eax, dword [ebp - 0x28]
sub eax, 0x2708caa0
je 0x40c257
jmp 0x40bf19
mov eax, dword [ebp - 0x28]
sub eax, 0x3a79900b
je 0x40c0ff
jmp 0x40bf2c
mov eax, dword [ebp - 0x28]
sub eax, 0x481d2d7c
je 0x40c083
jmp 0x40bf3f
mov eax, dword [ebp - 0x28]
sub eax, 0x5d76db69
je 0x40c1dd
jmp 0x40bf52
mov eax, dword [ebp - 0x28]
sub eax, 0x7414b078
je 0x40c12c
jmp 0x40bf65
jmp 0x40c28e
mov eax, dword [0x43d554]
mov ecx, dword [0x43d550]
mov edx, eax
sub edx, 0x56a8f7b4
sub edx, 1
add edx, 0x56a8f7b4
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, 0x2708caa0
mov ecx, 0x24b69b97
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x40c28e
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x18], eax
mov eax, dword [0x43d554]
mov ecx, dword [0x43d550]
mov edx, eax
add edx, 0x5c356952
sub edx, 1
sub edx, 0x5c356952
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, 0x2708caa0
mov ecx, 0xe58d4cad
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x40c28e
mov dword [ebp - 0x20], 0xf0259033
jmp 0x40c28e
mov ecx, dword [0x43d554]
mov eax, dword [0x43d550]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
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, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xfaabb293
mov ecx, 0x481d2d7c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x40c28e
mov eax, dword [ebp - 0x18]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
sub esp, 4
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
mov edx, 0xffffffff
xor edx, 2
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0
sete al
and al, 1
mov byte [ebp - 0x11], al
mov eax, dword [0x43d554]
mov ecx, dword [0x43d550]
mov edx, eax
sub edx, 0xd99a8c7c
sub edx, 1
add edx, 0xd99a8c7c
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, 0xfaabb293
mov ecx, 0x3a79900b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x40c28e
mov dl, byte [ebp - 0x11]
mov eax, 0xaa0e1d50
mov ecx, 0xf1567850
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x40c28e
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], 0x7414b078
jmp 0x40c28e
mov ecx, dword [ebp - 0x10]
mov eax, ecx
and eax, 2
xor ecx, 2
or eax, ecx
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x20], 0x8414e044
jmp 0x40c28e
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0xc]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
sub esp, 8
mov dword [ebp - 0x20], 0xaa0e1d50
jmp 0x40c28e
mov ecx, dword [0x43d554]
mov eax, dword [0x43d550]
mov edx, ecx
add edx, 0x502d8eaf
sub edx, 1
sub edx, 0x502d8eaf
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, 0x9f32dca4
mov ecx, 0x5d76db69
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x40c28e
mov ecx, dword [0x43d554]
mov eax, dword [0x43d550]
mov edx, ecx
sub edx, 0x917258b0
sub edx, 1
add edx, 0x917258b0
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, 0x9f32dca4
mov ecx, 0xce67a9de
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x40c28e
add esp, 0x28
pop esi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x20], 0x24b69b97
jmp 0x40c28e
mov eax, dword [ebp - 0x18]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
sub esp, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], 0x481d2d7c
jmp 0x40c28e
mov dword [ebp - 0x20], 0x5d76db69
jmp 0x40be45