Function at 0x413910
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 - 0x30], eax
mov eax, dword [0x444080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x44552c]
mov eax, dword [0x445528]
mov edx, ecx
sub edx, 0x7928b99c
sub edx, 1
add edx, 0x7928b99c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x26], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x25], al
mov dword [ebp - 0x2c], 0xb4d1826
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x34], eax
sub eax, 0x9856bdd6
je 0x413d16
jmp 0x41397f
mov eax, dword [ebp - 0x34]
sub eax, 0xad5d01b9
je 0x413c1d
jmp 0x413992
mov eax, dword [ebp - 0x34]
sub eax, 0xae40c0ef
je 0x413ab3
jmp 0x4139a5
mov eax, dword [ebp - 0x34]
sub eax, 0xaf99e072
je 0x413cec
jmp 0x4139b8
mov eax, dword [ebp - 0x34]
sub eax, 0xb4d1826
je 0x413a68
jmp 0x4139cb
mov eax, dword [ebp - 0x34]
sub eax, 0xe917ebd
je 0x413d0a
jmp 0x4139de
mov eax, dword [ebp - 0x34]
sub eax, 0x2dcfde54
je 0x413b3e
jmp 0x4139f1
mov eax, dword [ebp - 0x34]
sub eax, 0x2f5df563
je 0x413cf8
jmp 0x413a04
mov eax, dword [ebp - 0x34]
sub eax, 0x368fa444
je 0x413c6b
jmp 0x413a17
mov eax, dword [ebp - 0x34]
sub eax, 0x3c5d0c56
je 0x413b32
jmp 0x413a2a
mov eax, dword [ebp - 0x34]
sub eax, 0x481deece
je 0x413bae
jmp 0x413a3d
mov eax, dword [ebp - 0x34]
sub eax, 0x523785a5
je 0x413c09
jmp 0x413a50
mov eax, dword [ebp - 0x34]
sub eax, 0x794d9222
je 0x413b72
jmp 0x413a63
jmp 0x413d33
mov bl, byte [ebp - 0x26]
mov dh, byte [ebp - 0x25]
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, 0xe917ebd
mov ecx, 0xae40c0ef
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x2c], eax
jmp 0x413d33
push eax
mov eax, esp
mov dword [ebp - 0x24], eax
push eax
mov eax, esp
mov dword [ebp - 0x20], eax
mov ecx, dword [0x44552c]
mov eax, dword [0x445528]
mov edx, ecx
add edx, 0x5983a015
sub edx, 1
sub edx, 0x5983a015
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, 0xe917ebd
mov ecx, 0x3c5d0c56
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x2c], eax
jmp 0x413d33
mov dword [ebp - 0x2c], 0x2dcfde54
jmp 0x413d33
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
mov dword [eax], ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov ecx, eax
mov eax, dword [ebp - 0x20]
mov dword [eax], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x2c], 0x794d9222
jmp 0x413d33
mov edx, dword [ebp - 0x1c]
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 2
mov eax, 0xffffffff
xor eax, 0x5abd369c
or edx, ecx
or eax, 0x5abd369c
xor edx, 0xffffffff
and edx, eax
mov eax, 0x2f5df563
mov ecx, 0x481deece
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0x2c], eax
jmp 0x413d33
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
mov eax, ecx
xor eax, 0xffffffff
mov dword [ebp - 0x38], eax
mov esi, 0xffffffff
xor esi, 2
mov edx, 0xffffffff
xor edx, 0xcbe8b0ef
and eax, 0xcbe8b0ef
and ecx, edx
mov edi, esi
and edi, 0xcbe8b0ef
mov ebx, edx
and ebx, 2
or eax, ecx
mov ecx, dword [ebp - 0x38]
or edi, ebx
xor eax, edi
or ecx, esi
xor ecx, 0xffffffff
or edx, 0xcbe8b0ef
and ecx, edx
or eax, ecx
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2c], 0x523785a5
jmp 0x413d33
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x2c], 0xad5d01b9
jmp 0x413d33
mov eax, dword [0x44552c]
mov ecx, dword [0x445528]
mov edx, eax
add edx, 0xb3ae2cb5
sub edx, 1
sub edx, 0xb3ae2cb5
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, 0x9856bdd6
mov ecx, 0x368fa444
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x2c], eax
jmp 0x413d33
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov ecx, dword [0x44552c]
mov eax, dword [0x445528]
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, 0x9856bdd6
mov ecx, 0xaf99e072
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x2c], eax
jmp 0x413d33
mov dword [ebp - 0x2c], 0x2f5df563
jmp 0x413d33
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042cfd0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x2c], 0xae40c0ef
jmp 0x413d33
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov dword [ebp - 0x2c], 0x368fa444
jmp 0x413969