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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0040939f
add esp, 8
test eax, eax
jne 0x42b489
mov edx, dword [ebp + 8]
push edx
call fcn.0042a6a0
add esp, 4
mov dword [ebp - 0x10], eax
push 0
push 0x80
push 3
push 0
push 3
push connect
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0xffffffff
je 0x42b47d
lea ecx, [ebp - 8]
push ecx
lea edx, [ebp - 0x20]
push edx
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileTime]
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x24], 0
je 0x42b47d
cmp dword [ebp - 0x10], 0
jne 0x42b404
mov eax, dword [ebp + 0xc]
add eax, 0x28
push eax
lea ecx, [ebp - 8]
push ecx
call fcn.0042a6c0
add esp, 8
cmp dword [ebp - 0x20], 0
jne 0x42b3a8
cmp dword [ebp - 0x1c], 0
je 0x42b3bd
mov edx, dword [ebp + 0xc]
add edx, 0x20
push edx
lea eax, [ebp - 0x20]
push eax
call fcn.0042a6c0
add esp, 8
jmp 0x42b3cf
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x28]
mov dword [ecx + 0x20], eax
mov edx, dword [edx + 0x2c]
mov dword [ecx + 0x24], edx
cmp dword [ebp - 0x18], 0
jne 0x42b3db
cmp dword [ebp - 0x14], 0
je 0x42b3f0
mov eax, dword [ebp + 0xc]
add eax, 0x30
push eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.0042a6c0
add esp, 8
jmp 0x42b402
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x28]
mov dword [edx + 0x30], ecx
mov eax, dword [eax + 0x2c]
mov dword [edx + 0x34], eax
jmp 0x42b47d
mov ecx, dword [ebp + 0xc]
add ecx, 0x28
push ecx
lea edx, [ebp - 8]
push edx
call fcn.0042b070
add esp, 8
cmp dword [ebp - 0x20], 0
jne 0x42b423
cmp dword [ebp - 0x1c], 0
je 0x42b438
mov eax, dword [ebp + 0xc]
add eax, 0x20
push eax
lea ecx, [ebp - 0x20]
push ecx
call fcn.0042b070
add esp, 8
jmp 0x42b44a
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x28]
mov dword [edx + 0x20], ecx
mov eax, dword [eax + 0x2c]
mov dword [edx + 0x24], eax
cmp dword [ebp - 0x18], 0
jne 0x42b456
cmp dword [ebp - 0x14], 0
je 0x42b46b
mov ecx, dword [ebp + 0xc]
add ecx, 0x30
push ecx
lea edx, [ebp - 0x18]
push edx
call fcn.0042b070
add esp, 8
jmp 0x42b47d
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x28]
mov dword [eax + 0x30], edx
mov ecx, dword [ecx + 0x2c]
mov dword [eax + 0x34], ecx
xor eax, eax
jmp 0x42b513
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0xffffffff
je 0x42b510
mov eax, dword [ebp - 0x28]
and eax, 0x10
je 0x42b510
push 0x38
push 0
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00408e40
add esp, 0xc
push 0x210000
call fcn.00427e20
add esp, 4
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x28], eax
mov dword [ecx + 0x2c], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x28]
mov dword [edx + 0x30], ecx
mov eax, dword [eax + 0x2c]
mov dword [edx + 0x34], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x30]
mov dword [ecx + 0x20], eax
mov edx, dword [edx + 0x34]
mov dword [ecx + 0x24], edx
mov eax, dword [ebp - 0x28]
and eax, 1
neg eax
sbb eax, eax
and eax, 0xffffff80
add eax, 0x80
or eax, 0x4100
mov ecx, dword [ebp + 0xc]
mov word [ecx + 6], ax
xor eax, eax
jmp 0x42b513
or eax, 0xffffffff
mov esp, ebp
pop ebp
ret