Function at 0x100778a0
Capabilities:
Get file attributes

Disassembly:
push 0xffffffffffffffff
push 0x1009f238
mov eax, dword fs:[0]
push eax
sub esp, 0x24
mov eax, dword [0x100c60c8]
xor eax, esp
mov dword [esp + 0x20], eax
push ebx
push esi
push edi
mov eax, dword [0x100c60c8]
xor eax, esp
push eax
lea eax, [esp + 0x34]
mov dword fs:[0], eax
mov eax, dword [esp + 0x44]
xor esi, esi
push 0xffffffffffffffff
mov dword [esp + 0x14], ecx
push esi
lea ecx, [esp + 0x1c]
mov dword [esp + 0x34], 7
mov dword [esp + 0x30], esi
mov word [esp + 0x20], si
call fcn.100076e0
mov dword [esp + 0x3c], esi
lea ebx, [esp + 0x14]
call fcn.1006b100
mov ecx, dword [esp + 0x28]
cmp ecx, 2
jbe 0x10077ab9
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x18]
mov edi, 8
cmp edx, edi
mov eax, esi
jae 0x10077929
lea eax, [esp + 0x18]
cmp word [eax], 0x5c
mov ebx, dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
jne 0x10077986
cmp ecx, 1
jae 0x10077948
call ebx
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x18]
cmp edx, edi
mov eax, esi
jae 0x10077952
lea eax, [esp + 0x18]
cmp word [eax + 2], 0x5c
jne 0x10077986
mov dword [esp + 0x3c], 0xffffffff
cmp dword [esp + 0x2c], edi
jb 0x10077974
mov edx, dword [esp + 0x18]
push edx
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
xor eax, eax
mov dword [esp + 0x28], eax
mov word [esp + 0x18], ax
mov al, 1
jmp 0x10077b32
cmp edx, edi
mov eax, esi
jae 0x10077990
lea eax, [esp + 0x18]
cmp word [eax], 0x2f
jne 0x100779e1
cmp ecx, 1
jae 0x100779a5
call ebx
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x18]
cmp edx, edi
mov eax, esi
jae 0x100779af
lea eax, [esp + 0x18]
cmp word [eax + 2], 0x2f
jne 0x100779e1
mov dword [esp + 0x3c], 0xffffffff
cmp dword [esp + 0x2c], edi
jb 0x100779d1
mov eax, dword [esp + 0x18]
push eax
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
xor eax, eax
mov dword [esp + 0x28], eax
mov word [esp + 0x18], ax
jmp 0x10077b30
push 0x5c
push 0x2f
lea edi, [esp + 0x1c]
call fcn.1006af50
add esp, 8
cmp dword [esp + 0x28], 1
jae 0x100779fa
call ebx
mov ecx, dword [esp + 0x2c]
cmp ecx, 8
mov edx, dword [esp + 0x18]
mov eax, edx
jae 0x10077a0d
lea eax, [esp + 0x18]
cmp word [eax + 2], 0x3a
jne 0x10077b09
cmp dword [esp + 0x28], 2
jae 0x10077a29
call ebx
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x18]
cmp ecx, 8
mov eax, edx
jae 0x10077a34
lea eax, [esp + 0x18]
cmp word [eax + 4], 0x5c
jne 0x10077b09
cmp ecx, 8
mov eax, edx
jae 0x10077a4a
lea eax, [esp + 0x18]
cmp word [eax], 0x61
jb 0x10077b09
xor edi, edi
lea eax, [esp + 0x14]
call fcn.1002b820
cmp word [eax], 0x7a
ja 0x10077b09
cmp dword [esp + 0x2c], 8
mov eax, dword [esp + 0x18]
jae 0x10077a78
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
or ecx, 0xffffffff
cmp eax, ecx
je 0x10077aa5
mov edx, dword [esp + 0x10]
shr eax, 4
and al, 1
mov byte [edx], al
mov dword [esp + 0x3c], ecx
lea esi, [esp + 0x14]
call fcn.10006e70
mov al, 1
jmp 0x10077b3a
mov dword [esp + 0x3c], ecx
lea esi, [esp + 0x14]
call fcn.10006e70
xor al, al
jmp 0x10077b3a
jne 0x10077b0b
mov edx, dword [esp + 0x2c]
cmp edx, 8
mov eax, dword [esp + 0x18]
mov ecx, eax
jae 0x10077ace
lea ecx, [esp + 0x18]
cmp word [ecx + 2], 0x3a
jne 0x10077b0b
cmp edx, 8
jae 0x10077ade
lea eax, [esp + 0x18]
cmp word [eax], 0x61
jb 0x10077b0b
xor edi, edi
lea eax, [esp + 0x14]
call fcn.1002b820
cmp word [eax], 0x7a
ja 0x10077b09
lea eax, [esp + 0x14]
push eax
mov edx, 0x100aad64
call fcn.10010280
jmp 0x10077a69
xor esi, esi
mov dword [esp + 0x3c], 0xffffffff
cmp dword [esp + 0x2c], 8
jb 0x10077b27
mov eax, dword [esp + 0x18]
push eax
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
mov dword [esp + 0x28], esi
mov word [esp + 0x18], si
xor al, al
mov dword [esp + 0x2c], 7
mov ecx, dword [esp + 0x34]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x20]
xor ecx, esp
call fcn.1009176c
add esp, 0x30
ret