Function at 0x483f90
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x78
call fcn.00484740
mov ecx, dword [ebp + 8]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x68]
call fcn.004ddfd0
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
call eax
sub esp, 4
mov dword [esp + 0x64], eax
cmp dword [esp + 0x64], 0xffffffff
jne 0x4844ee
mov eax, dword [0x88c650]
mov ecx, dword [0x88c654]
mov edx, eax
mov edx, eax
sub edx, 0x45ccae05
add edx, 0xffffffff
add edx, 0x45ccae05
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x484027
jmp 0x484695
mov ecx, dword [esp + 0x68]
mov eax, esp
mov dword [eax + 4], 0xffffffff
call fcn.00484750
call fcn.00406430
sub esp, 8
mov dword [esp + 0x60], eax
cmp dword [esp + 0x60], 0xffffffff
setne dl
mov eax, dword [0x88c650]
mov ecx, dword [0x88c654]
mov esi, eax
sub esi, 0xc4c9d5f3
sub esi, 1
add esi, 0xc4c9d5f3
imul eax, esi
and eax, 1
cmp eax, 0
sete dh
cmp ecx, 0xa
setl bl
mov bh, dh
and bh, bl
xor dh, bl
or bh, dh
test bh, 1
mov byte [esp + 0x3f], dl
jne 0x4840a2
jmp 0x484695
mov al, byte [esp + 0x3f]
test al, 1
jne 0x4840b3
jmp 0x48414a
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x60]
mov esi, esp
call fcn.00484760
lea edx, [esp + 0x48]
mov dword [esi], edx
mov dword [esi + 4], 0
mov dword [esp + 0x38], eax
call fcn.00498be0
sub esp, 0xc
lea eax, [esp + 0x48]
mov dword [esp], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
call fcn.00483f90
mov byte [esp + 0x37], al
mov al, 1
mov cl, byte [esp + 0x37]
xor cl, 1
and cl, 1
mov dl, al
xor dl, 1
mov ah, byte [esp + 0x37]
and ah, dl
xor al, 1
and al, 1
and dl, 1
or cl, ah
or al, dl
xor cl, al
lea esi, [esp + 0x48]
mov byte [esp + 0x36], cl
mov ecx, esi
call fcn.00551e20
mov al, byte [esp + 0x36]
test al, 1
jne 0x48413b
jmp 0x484145
mov byte [esp + 0x73], 0
jmp 0x484684
jmp 0x48414a
mov eax, dword [0x88c650]
mov ecx, dword [0x88c654]
mov edx, 0x437228
mov edx, eax
add edx, 0xcaa91074
sub edx, 1
sub edx, 0xcaa91074
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x48419c
jmp 0x4846bb
mov eax, 0
cmp dword [0x87f9bc], 0
setne cl
mov edx, dword [0x88c650]
mov esi, dword [0x88c654]
add eax, 0xffffffff
mov edi, edx
add edi, eax
imul edx, edi
and edx, 1
cmp edx, 0
sete ch
cmp esi, 0xa
setl bl
mov bh, ch
and bh, bl
xor ch, bl
or bh, ch
test bh, 1
mov byte [esp + 0x35], cl
jne 0x4841f9
jmp 0x4846bb
mov al, byte [esp + 0x35]
test al, 1
jne 0x48420a
jmp 0x4843c7
mov al, 1
mov ecx, 0
mov edx, dword [0x88c650]
mov esi, dword [0x88c654]
sub ecx, 1
mov edi, edx
add edi, ecx
imul edx, edi
and edx, 1
cmp edx, 0
sete ah
push edx
mov edx, 0xa4fa7730
xor edx, 0xa4fa773a
cmp esi, edx
pop edx
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x484284
jmp 0x4846c0
mov eax, dword [0x88c650]
mov ecx, dword [0x88c654]
mov edx, eax
add edx, 0x9a612663
add edx, 0xffffffff
sub edx, 0x9a612663
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x4842d1
jmp 0x4846f9
mov eax, dword [0x87f9bc]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x30], eax
call fcn.004ddfd0
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov eax, dword [esp + 0x30]
call eax
sub esp, 8
mov dl, 1
mov ecx, 0
mov esi, dword [0x88c650]
mov edi, dword [0x88c654]
sub ecx, 1
mov ebx, esi
add ebx, ecx
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl cl
mov ch, dh
xor ch, 1
mov bl, cl
xor bl, 1
xor dl, 1
mov bh, ch
and bh, 1
and dh, dl
mov dword [esp + 0x2c], eax
mov al, bl
and al, 1
and cl, dl
or bh, dh
or al, cl
xor bh, al
or ch, bl
xor ch, 1
or dl, 1
and ch, dl
or bh, ch
test bh, 1
jne 0x48436d
jmp 0x4846f9
mov eax, dword [0x88c650]
mov ecx, dword [0x88c654]
mov edx, eax
add edx, 0x93ac5b70
add edx, 0xffffffff
sub edx, 0x93ac5b70
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x4843ba
jmp 0x4846c0
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x28], eax
jmp 0x4843d5
mov eax, 0
mov dword [esp + 0x28], eax
jmp 0x4843d5
mov eax, dword [esp + 0x28]
mov cl, 1
mov edx, dword [0x88c650]
mov esi, dword [0x88c654]
mov edi, edx
add edi, 0x505a5f78
sub edi, 1
sub edi, 0x505a5f78
imul edx, edi
and edx, 1
cmp edx, 0
sete ch
cmp esi, 0xa
setl bl
mov bh, ch
xor bh, 1
mov dl, bl
xor dl, 1
xor cl, 0
mov dh, bh
and dh, 0
and ch, cl
mov dword [esp + 0x24], eax
mov al, dl
and al, 0
and bl, cl
or dh, ch
or al, bl
xor dh, al
or bh, dl
xor bh, 1
or cl, 0
and bh, cl
or dh, bh
test dh, 1
jne 0x484454
jmp 0x484728
mov eax, 0
mov ecx, dword [esp + 0x24]
cmp ecx, 0
setne dl
mov esi, dword [0x88c650]
mov edi, dword [0x88c654]
sub eax, 1
mov ebx, ecx
mov ebx, esi
add ebx, eax
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl al
mov ah, dh
and ah, al
xor dh, al
or ah, dh
test ah, 1
mov byte [esp + 0x23], dl
jne 0x4844b2
jmp 0x484728
mov al, byte [esp + 0x23]
test al, 1
jne 0x4844cd
jmp 0x4844c3
mov byte [esp + 0x73], 0
jmp 0x484684
mov eax, dword [esp + 0x68]
mov ecx, esp
mov dword [ecx], eax
mov ecx, 0x88ab58
call fcn.004a27b0
sub esp, 4
mov eax, dword [esp + 0x6c]
mov byte [eax], 0
jmp 0x48467f
mov eax, 0xffffffff
mov ecx, dword [esp + 0x64]
xor eax, 0x410
mov edx, ecx
xor edx, eax
and edx, ecx
push eax
mov eax, 0x7b636e8b
xor eax, 0x7b636e8b
cmp edx, eax
pop eax
jne 0x4845c2
call fcn.00484770
mov ecx, dword [0x88c654]
mov edx, ebx
mov edx, eax
add edx, 0xf8866353
sub edx, 1
sub edx, 0xf8866353
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x484566
jmp 0x4846ef
mov byte [esp + 0x73], 0
mov eax, dword [0x88c650]
mov ecx, dword [0x88c654]
mov edx, 0x10000
mov edx, eax
sub edx, 0x838a2088
add edx, 0xffffffff
add edx, 0x838a2088
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x4845bd
jmp 0x4846ef
jmp 0x484684
mov eax, dword [0x88c650]
mov ecx, dword [0x88c654]
mov edx, 0x80000
mov edx, eax
sub edx, 0x6453ec4
add edx, 0xffffffff
sub edx, 0xf9bac13c
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
push ebx
mov ebx, 0x87e13339
xor ebx, 0x87e13333
cmp ecx, ebx
pop ebx
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x48461d
jmp 0x48472d
mov eax, dword [esp + 0x6c]
mov byte [eax], 1
mov eax, dword [0x88c650]
mov ecx, dword [0x88c654]
mov edx, eax
sub edx, 0xdfeaf106
sub edx, 1
sub edx, 0x20150efa
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
push edx
mov edx, 0x83d08130
xor edx, 0x83d0813a
cmp ecx, edx
pop edx
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x48467a
jmp 0x48472d
jmp 0x48467f
mov byte [esp + 0x73], 1
mov al, byte [esp + 0x73]
and al, 1
movzx eax, al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esp + 0x68]
mov eax, ecx
mov eax, esp
mov dword [eax + 4], 0xffffffff
mov dword [eax], 0x88ab0c
call fcn.00406430
sub esp, 8
mov dword [esp + 0x60], eax
jmp 0x484027
jmp 0x48419c
mov eax, dword [0x87f9bc]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x1c], eax
call fcn.004ddfd0
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov eax, dword [esp + 0x1c]
call eax
sub esp, 8
mov dword [esp + 0x18], eax
jmp 0x484284
mov byte [esp + 0x73], 0
jmp 0x484566
mov eax, dword [0x87f9bc]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x14], eax
call fcn.004ddfd0
mov ecx, esp
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov eax, dword [esp + 0x14]
call eax
sub esp, 8
mov dword [esp + 0x10], eax
jmp 0x4842d1
jmp 0x484454
mov eax, dword [esp + 0x6c]
mov byte [eax], 1
jmp 0x48461d