Function at 0x407440
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 - 0x2c], eax
mov eax, dword [0x436080]
xor eax, ebp
mov dword [ebp - 0xc], eax
mov ecx, dword [0x43756c]
mov eax, dword [0x437568]
mov edx, ecx
sub edx, 0x9a3135a4
sub edx, 1
add edx, 0x9a3135a4
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x22], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x21], al
mov dword [ebp - 0x28], 0x5284fcdb
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
sub eax, 0x8c13a15a
je 0x4076ef
jmp 0x4074ae
mov eax, dword [ebp - 0x30]
sub eax, 0x9776cfc3
je 0x4077de
jmp 0x4074c1
mov eax, dword [ebp - 0x30]
sub eax, 0xb48f48c6
je 0x407644
jmp 0x4074d4
mov eax, dword [ebp - 0x30]
sub eax, 0xc9eae847
je 0x407650
jmp 0x4074e7
mov eax, dword [ebp - 0x30]
sub eax, 0xcdc7b4b4
je 0x4076e3
jmp 0x4074fa
mov eax, dword [ebp - 0x30]
sub eax, 0xcdec97ce
je 0x4075e2
jmp 0x40750d
mov eax, dword [ebp - 0x30]
sub eax, 0xf6bfb6cf
je 0x40775a
jmp 0x407520
mov eax, dword [ebp - 0x30]
sub eax, 0xf835e887
je 0x40766e
jmp 0x407533
mov eax, dword [ebp - 0x30]
sub eax, 0x240eda13
je 0x4076b5
jmp 0x407546
mov eax, dword [ebp - 0x30]
sub eax, 0x4dd9e901
je 0x4077cd
jmp 0x407559
mov eax, dword [ebp - 0x30]
sub eax, 0x5284fcdb
je 0x407597
jmp 0x40756c
mov eax, dword [ebp - 0x30]
sub eax, 0x69d1ec49
je 0x4077f2
jmp 0x40757f
mov eax, dword [ebp - 0x30]
sub eax, 0x75cd7ca2
je 0x4076a1
jmp 0x407592
jmp 0x4077f9
mov bl, byte [ebp - 0x22]
mov dh, byte [ebp - 0x21]
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, 0x9776cfc3
mov ecx, 0xcdec97ce
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4077f9
mov ecx, dword [ebp - 0x2c]
push eax
mov eax, esp
mov dword [ebp - 0x20], eax
push eax
mov eax, esp
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x20]
mov dword [eax], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [0x43756c]
mov ecx, dword [0x437568]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
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, 0x9776cfc3
mov ecx, 0xb48f48c6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4077f9
mov dword [ebp - 0x28], 0xc9eae847
jmp 0x4077f9
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x28], 0xf835e887
jmp 0x4077f9
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x14]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov ecx, 0xffffffff
xor ecx, 2
mov edx, eax
xor edx, ecx
and edx, eax
mov eax, 0x8c13a15a
mov ecx, 0x75cd7ca2
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4077f9
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x28], 0x240eda13
jmp 0x4077f9
mov ecx, dword [ebp - 0x10]
mov eax, ecx
and eax, 2
xor ecx, 2
or eax, ecx
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov dword [ebp - 0x28], 0xcdc7b4b4
jmp 0x4077f9
mov dword [ebp - 0x28], 0x8c13a15a
jmp 0x4077f9
mov ecx, dword [0x43756c]
mov eax, dword [0x437568]
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, 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, 0x69d1ec49
mov ecx, 0xf6bfb6cf
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4077f9
mov ecx, dword [0x43756c]
mov eax, dword [0x437568]
mov edx, ecx
sub edx, 0xf002d9df
sub edx, 1
add edx, 0xf002d9df
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, 0x69d1ec49
mov ecx, 0x4dd9e901
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x28], eax
jmp 0x4077f9
mov ecx, dword [ebp - 0xc]
xor ecx, ebp
call fcn.0041f610
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov ecx, dword [ebp - 0x2c]
push eax
mov eax, esp
mov dword [eax], ecx
mov dword [ebp - 0x28], 0xcdec97ce
jmp 0x4077f9
mov dword [ebp - 0x28], 0xf6bfb6cf
jmp 0x407498