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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0x24
mov eax, dword [ebp + 8]
mov dword [ebp - 0x20], 0xa68d5a2a
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
sub eax, 0x87ce59bb
je 0x409c61
jmp 0x4099d8
mov eax, dword [ebp - 0x24]
sub eax, 0x883cba80
je 0x409e06
jmp 0x4099eb
mov eax, dword [ebp - 0x24]
sub eax, 0x90e38daa
je 0x409d07
jmp 0x4099fe
mov eax, dword [ebp - 0x24]
sub eax, 0xa68d5a2a
je 0x409b20
jmp 0x409a11
mov eax, dword [ebp - 0x24]
sub eax, 0xb051977d
je 0x409dd8
jmp 0x409a24
mov eax, dword [ebp - 0x24]
sub eax, 0xc1577179
je 0x409be2
jmp 0x409a37
mov eax, dword [ebp - 0x24]
sub eax, 0xc64353f8
je 0x409bee
jmp 0x409a4a
mov eax, dword [ebp - 0x24]
sub eax, 0xd254c6ec
je 0x409cda
jmp 0x409a5d
mov eax, dword [ebp - 0x24]
sub eax, 0xd2815429
je 0x409ec7
jmp 0x409a70
mov eax, dword [ebp - 0x24]
sub eax, 0xe57e4590
je 0x409de4
jmp 0x409a83
mov eax, dword [ebp - 0x24]
sub eax, 0xfac7a0a7
je 0x409d55
jmp 0x409a96
mov eax, dword [ebp - 0x24]
sub eax, 0xfe568575
je 0x409eec
jmp 0x409aa9
mov eax, dword [ebp - 0x24]
sub eax, 0xe8f39d1
je 0x409e79
jmp 0x409abc
mov eax, dword [ebp - 0x24]
sub eax, 0x1f544633
je 0x409efb
jmp 0x409acf
mov eax, dword [ebp - 0x24]
sub eax, 0x35cdd455
je 0x409cf5
jmp 0x409ae2
mov eax, dword [ebp - 0x24]
sub eax, 0x378902e0
je 0x409b6e
jmp 0x409af5
mov eax, dword [ebp - 0x24]
sub eax, 0x43711890
je 0x409f1f
jmp 0x409b08
mov eax, dword [ebp - 0x24]
sub eax, 0x472d5d6b
je 0x409ece
jmp 0x409b1b
jmp 0x409f26
mov eax, dword [0x43456c]
mov ecx, dword [0x434568]
mov edx, eax
sub edx, 0xafbadfcc
sub edx, 1
add edx, 0xafbadfcc
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, 0x472d5d6b
mov ecx, 0x378902e0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x409f26
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 ecx, dword [ebp - 0x1c]
mov edx, 0xffffffff
xor edx, 2
mov eax, ecx
xor eax, edx
and eax, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [0x43456c]
mov ecx, dword [0x434568]
mov edx, eax
sub edx, 0xc979883f
sub edx, 1
add edx, 0xc979883f
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, 0x472d5d6b
mov ecx, 0xc1577179
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x409f26
mov dword [ebp - 0x20], 0xc64353f8
jmp 0x409f26
mov ecx, dword [0x43456c]
mov eax, dword [0x434568]
mov edx, ecx
sub edx, 0x97615e6
sub edx, 1
add edx, 0x97615e6
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, 0xfe568575
mov ecx, 0x87ce59bb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x409f26
mov eax, dword [ebp - 0x18]
cmp eax, 0
sete al
and al, 1
mov byte [ebp - 0x11], al
mov ecx, dword [0x43456c]
mov eax, dword [0x434568]
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, 0xfe568575
mov ecx, 0xd254c6ec
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x409f26
mov dl, byte [ebp - 0x11]
mov eax, 0x883cba80
mov ecx, 0x35cdd455
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x409f26
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], 0x90e38daa
jmp 0x409f26
mov eax, dword [0x43456c]
mov ecx, dword [0x434568]
mov edx, eax
sub edx, 0x891932e2
sub edx, 1
add edx, 0x891932e2
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, 0x1f544633
mov ecx, 0xfac7a0a7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x409f26
mov ecx, dword [ebp - 0x10]
mov eax, ecx
and eax, 2
xor ecx, 2
or eax, ecx
mov dword [ebp - 0xc], eax
mov ecx, dword [0x43456c]
mov eax, dword [0x434568]
mov edx, ecx
sub edx, 0x5094b5e9
sub edx, 1
add edx, 0x5094b5e9
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, 0x1f544633
mov ecx, 0xb051977d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x409f26
mov dword [ebp - 0x20], 0xe57e4590
jmp 0x409f26
mov ecx, dword [ebp + 8]
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], 0x883cba80
jmp 0x409f26
mov ecx, dword [0x43456c]
mov eax, dword [0x434568]
mov edx, ecx
add edx, 0xbb29311d
sub edx, 1
sub edx, 0xbb29311d
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, 0x43711890
mov ecx, 0xe8f39d1
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x409f26
mov eax, dword [0x43456c]
mov ecx, dword [0x434568]
mov edx, eax
add edx, 0xa67b2d77
sub edx, 1
sub edx, 0xa67b2d77
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, 0x43711890
mov ecx, 0xd2815429
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x20], eax
jmp 0x409f26
add esp, 0x24
pop esi
pop ebx
pop ebp
ret
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 dword [ebp - 0x20], 0x378902e0
jmp 0x409f26
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], 0x87ce59bb
jmp 0x409f26
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x20], 0xfac7a0a7
jmp 0x409f26
mov dword [ebp - 0x20], 0xe8f39d1
jmp 0x4099c2