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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x546847
mov eax, dword fs:[0]
push eax
sub esp, 0xcc
mov eax, dword [0x58d038]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov cl, byte [ebp + 0x14]
mov eax, dword [ebp + 0x10]
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov byte [ebp - 0xbc], cl
mov edx, dword [ebp - 0xbc]
push edx
xor edi, edi
push edi
mov dword [ebp - 0xc4], eax
lea eax, [ebp - 0x9c]
push 3
push eax
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 0xd8], edi
call fcn.004730d0
push 0x554500
push eax
lea ecx, [ebp - 0x80]
push ecx
mov dword [ebp - 4], edi
call fcn.0046fab0
push ebx
push eax
lea edx, [ebp - 0xb8]
push edx
mov byte [ebp - 4], 1
call fcn.0046eae0
add esp, 0x28
mov ebx, 8
cmp dword [ebp - 0x6c], ebx
jb 0x477d27
mov eax, dword [ebp - 0x80]
push eax
call fcn.00480102
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x6c], 7
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], cx
mov byte [ebp - 4], 4
cmp dword [ebp - 0x88], ebx
jb 0x477d52
mov edx, dword [ebp - 0x9c]
push edx
call fcn.00480102
add esp, 4
xor eax, eax
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x88], 7
mov dword [ebp - 0x8c], edi
mov word [ebp - 0x9c], ax
call fcn.0046e670
mov ecx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xc0]
push ecx
lea edx, [ebp - 0x2c]
push edx
push eax
mov byte [ebp - 4], 5
call fcn.00477630
add esp, 0xc
test al, al
je 0x477e99
push 0x554500
lea ecx, [ebp - 0x2c]
push ecx
lea edx, [ebp - 0x9c]
push edx
call fcn.0046fab0
mov ecx, dword [ebp - 0xc4]
push ecx
push eax
lea edx, [ebp - 0x80]
push edx
mov byte [ebp - 4], 6
call fcn.0046eae0
add esp, 0x18
mov byte [ebp - 4], bl
cmp dword [ebp - 0x88], ebx
jb 0x477de0
mov eax, dword [ebp - 0x9c]
push eax
call fcn.00480102
add esp, 4
xor ecx, ecx
mov word [ebp - 0x9c], cx
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x88], 7
mov dword [ebp - 0x8c], edi
call fcn.00401530
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x477e84
push 0xffffffffffffffff
push edi
lea eax, [ebp - 0x2c]
xor edx, edx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], edi
push eax
mov ecx, esi
mov word [esi], dx
call fcn.00401a70
cmp dword [ebp - 0x6c], ebx
jb 0x477e3b
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.00480102
add esp, 4
xor edx, edx
mov dword [ebp - 0x6c], 7
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], dx
cmp dword [ebp - 0x18], ebx
jb 0x477e5c
mov eax, dword [ebp - 0x2c]
push eax
call fcn.00480102
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], cx
cmp dword [ebp - 0xa4], ebx
jb 0x4780f8
mov edx, dword [ebp - 0xb8]
push edx
jmp 0x4780f0
mov byte [ebp - 4], 5
cmp dword [ebp - 0x6c], ebx
jb 0x477e99
mov eax, dword [ebp - 0x80]
push eax
call fcn.00480102
add esp, 4
lea ecx, [ebp - 0x48]
call fcn.0046e670
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 9
call fcn.0046e670
mov ecx, dword [ebp - 0xbc]
push ecx
mov ecx, dword [ebp - 0xc0]
lea edx, [ebp - 0x64]
push edx
lea eax, [ebp - 0x48]
push eax
push ecx
mov byte [ebp - 4], 0xa
call fcn.00476dc0
add esp, 0x10
test al, al
jne 0x477f72
push 0xffffffffffffffff
push edi
lea eax, [ebp - 0xb8]
xor edx, edx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], edi
push eax
mov ecx, esi
mov word [esi], dx
call fcn.00401a70
cmp dword [ebp - 0x50], ebx
jb 0x477f08
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.00480102
add esp, 4
xor edx, edx
mov word [ebp - 0x64], dx
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x50], 7
cmp dword [ebp - 0x34], ebx
jb 0x477f29
mov eax, dword [ebp - 0x48]
push eax
call fcn.00480102
add esp, 4
xor ecx, ecx
mov word [ebp - 0x48], cx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], 7
cmp dword [ebp - 0x18], ebx
jb 0x477f4a
mov edx, dword [ebp - 0x2c]
push edx
call fcn.00480102
add esp, 4
xor eax, eax
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], ax
cmp dword [ebp - 0xa4], ebx
jb 0x4780f8
mov ecx, dword [ebp - 0xb8]
push ecx
jmp 0x4780f0
push 0x5540e0
lea ecx, [ebp - 0x80]
call fcn.0046f5e0
push 1
push 1
lea edx, [ebp - 0x80]
push edx
lea eax, [ebp - 0xd4]
push eax
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0xb
call fcn.00471890
mov byte [ebp - 4], 0xd
cmp dword [ebp - 0x6c], ebx
jb 0x477faf
mov ecx, dword [ebp - 0x80]
push ecx
call fcn.00480102
add esp, 4
mov ecx, dword [ebp - 0xd4]
xor edx, edx
mov eax, 7
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], dx
cmp ecx, dword [ebp - 0xd0]
jne 0x477ff8
push 0xffffffffffffffff
mov dword [esi + 0x14], eax
push edi
lea eax, [ebp - 0xb8]
mov dword [esi + 0x10], edi
push eax
mov ecx, esi
mov word [esi], dx
call fcn.00401a70
lea ecx, [ebp - 0xd4]
call fcn.00402a70
jmp 0x477ef7
mov ecx, dword [ebp - 0xc0]
lea edx, [ebp - 0xd4]
push edx
lea eax, [ebp - 0x48]
push eax
push ecx
lea edx, [ebp - 0x9c]
push edx
call fcn.00476860
add esp, 0x10
push 0xffffffffffffffff
push edi
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xe
call fcn.00401a70
mov byte [ebp - 4], 0xd
cmp dword [ebp - 0x88], ebx
jb 0x478044
mov eax, dword [ebp - 0x9c]
push eax
call fcn.00480102
add esp, 4
lea ecx, [ebp - 0x2c]
call fcn.0046dda0
xor ecx, ecx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], edi
push 0xffffffffffffffff
mov word [esi], cx
push edi
mov ecx, esi
lea edx, [ebp - 0xb8]
test al, al
jne 0x47806d
lea edx, [ebp - 0x2c]
push edx
call fcn.00401a70
lea ecx, [ebp - 0xd4]
call fcn.00402a70
cmp dword [ebp - 0x50], ebx
jb 0x47808f
mov eax, dword [ebp - 0x64]
push eax
call fcn.00480102
add esp, 4
xor ecx, ecx
mov word [ebp - 0x64], cx
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x50], 7
cmp dword [ebp - 0x34], ebx
jb 0x4780b0
mov edx, dword [ebp - 0x48]
push edx
call fcn.00480102
add esp, 4
xor eax, eax
mov word [ebp - 0x48], ax
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], 7
cmp dword [ebp - 0x18], ebx
jb 0x4780d1
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.00480102
add esp, 4
xor edx, edx
mov word [ebp - 0x2c], dx
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x18], 7
cmp dword [ebp - 0xa4], ebx
jb 0x4780f8
mov eax, dword [ebp - 0xb8]
push eax
call fcn.00480102
add esp, 4
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00480264
mov esp, ebp
pop ebp
ret