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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x2c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], 0xb5a0a9a3
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
sub eax, 0x9eb4930a
je 0x40d927
jmp 0x40d6fc
mov eax, dword [ebp - 0x2c]
sub eax, 0xaab7f1d6
je 0x40d8a0
jmp 0x40d70f
mov eax, dword [ebp - 0x2c]
sub eax, 0xb5a0a9a3
je 0x40d80b
jmp 0x40d722
mov eax, dword [ebp - 0x2c]
sub eax, 0xd7d6889c
je 0x40db26
jmp 0x40d735
mov eax, dword [ebp - 0x2c]
sub eax, 0xda2632e2
je 0x40da7e
jmp 0x40d748
mov eax, dword [ebp - 0x2c]
sub eax, 0xe558ca90
je 0x40db12
jmp 0x40d75b
mov eax, dword [ebp - 0x2c]
sub eax, 0xf5bb0215
je 0x40da50
jmp 0x40d76e
mov eax, dword [ebp - 0x2c]
sub eax, 0x5f456c
je 0x40db4d
jmp 0x40d781
mov eax, dword [ebp - 0x2c]
sub eax, 0x3ebf9b9
je 0x40d990
jmp 0x40d794
mov eax, dword [ebp - 0x2c]
sub eax, 0x176a1de9
je 0x40da5c
jmp 0x40d7a7
mov eax, dword [ebp - 0x2c]
sub eax, 0x2303080c
je 0x40d942
jmp 0x40d7ba
mov eax, dword [ebp - 0x2c]
sub eax, 0x3e0290c9
je 0x40dacc
jmp 0x40d7cd
mov eax, dword [ebp - 0x2c]
sub eax, 0x7269fdbb
je 0x40db59
jmp 0x40d7e0
mov eax, dword [ebp - 0x2c]
sub eax, 0x73467b90
je 0x40db1e
jmp 0x40d7f3
mov eax, dword [ebp - 0x2c]
sub eax, 0x7bb9b96b
je 0x40d835
jmp 0x40d806
jmp 0x40db60
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
sub esp, 4
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x24], 0x7bb9b96b
jmp 0x40db60
mov ecx, dword [0x43e534]
mov eax, dword [0x43e530]
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, 0xd7d6889c
mov ecx, 0xaab7f1d6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db60
mov ecx, dword [ebp - 0x18]
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 ecx, dword [0x43e534]
mov eax, dword [0x43e530]
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, 0xd7d6889c
mov ecx, 0x9eb4930a
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db60
mov dl, byte [ebp - 0x11]
mov eax, 0x73467b90
mov ecx, 0x2303080c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db60
mov eax, dword [0x43e534]
mov ecx, dword [0x43e530]
mov edx, eax
add edx, 0x11d91d18
sub edx, 1
sub edx, 0x11d91d18
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, 0x5f456c
mov ecx, 0x3ebf9b9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db60
mov ecx, dword [ebp - 0x20]
mov eax, ecx
xor eax, 0xffffffff
mov dword [ebp - 0x30], eax
mov esi, 0xffffffff
xor esi, 2
mov edx, 0xffffffff
xor edx, 0x8b76059d
and eax, 0x8b76059d
and ecx, edx
mov edi, esi
and edi, 0x8b76059d
mov ebx, edx
and ebx, 2
or eax, ecx
mov ecx, dword [ebp - 0x30]
or edi, ebx
xor eax, edi
or ecx, esi
xor ecx, 0xffffffff
or edx, 0x8b76059d
and ecx, edx
or eax, ecx
mov dword [ebp - 0x10], eax
mov ecx, dword [0x43e534]
mov eax, dword [0x43e530]
mov edx, ecx
sub edx, 0xf7ca6a02
sub edx, 1
add edx, 0xf7ca6a02
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, 0x5f456c
mov ecx, 0xf5bb0215
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db60
mov dword [ebp - 0x24], 0x176a1de9
jmp 0x40db60
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
sub esp, 8
mov dword [ebp - 0x24], 0xda2632e2
jmp 0x40db60
mov eax, dword [0x43e534]
mov ecx, dword [0x43e530]
mov edx, eax
sub edx, 0x9595954
sub edx, 1
add edx, 0x9595954
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, 0x7269fdbb
mov ecx, 0x3e0290c9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db60
mov eax, dword [0x43e534]
mov ecx, dword [0x43e530]
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, 0x7269fdbb
mov ecx, 0xe558ca90
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x24], eax
jmp 0x40db60
mov dword [ebp - 0x24], 0x73467b90
jmp 0x40db60
add esp, 0x2c
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], 0xaab7f1d6
jmp 0x40db60
mov dword [ebp - 0x24], 0x3ebf9b9
jmp 0x40db60
mov dword [ebp - 0x24], 0x3e0290c9
jmp 0x40d6e6