Function at 0x43bed0
Capabilities:
Check if file exists
Get file attributes
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x48a3b6
mov eax, dword fs:[0]
push eax
sub esp, 0x24c
mov eax, dword [0x4bdbb0]
xor eax, esp
mov dword [esp + 0x248], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4bdbb0]
xor eax, esp
push eax
lea eax, [esp + 0x260]
mov dword fs:[0], eax
mov eax, dword [esp + 0x270]
mov edi, dword [esp + 0x278]
push 1
mov esi, ecx
mov dword [esp + 0x20], eax
call fcn.0043a9c0
test al, al
je 0x43bf31
xor al, al
jmp 0x43c187
xor ebx, ebx
cmp byte [esi + 0xe4], bl
jne 0x43bf2a
lea ebp, [esi + 0x78]
mov ecx, ebp
call fcn.0043e340
cmp eax, 0xffffffff
je 0x43bf2a
mov ecx, esi
call fcn.0043b070
cmp eax, 0xffff
je 0x43bf2a
cmp edi, ebx
je 0x43bfa4
lea ecx, [esp + 0x30]
push ecx
push edi
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
call fcn.00441a7b
test eax, eax
je 0x43bf2a
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0x38]
push edx
call fcn.0043e0e0
push edi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 0x24], eax
cmp eax, 0xffffffff
je 0x43bf2a
lea ecx, [esi + 0x20]
call fcn.00440bc0
mov edx, dword [esp + 0x1c]
lea edi, [esi + 0xe8]
push edx
mov ecx, edi
call fcn.00440670
lea eax, [esp + 0x18]
push eax
mov ecx, esi
call fcn.0043ab10
mov ecx, eax
call fcn.0043e1d0
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x268], ebx
cmp dword [ecx - 0xc], ebx
jne 0x43c00e
mov ecx, esi
call fcn.0043b070
push eax
lea edx, [esp + 0x1c]
push str.file_i
push edx
call fcn.004135e0
mov eax, dword [esp + 0x24]
add esp, 0xc
push eax
mov ecx, esi
call fcn.0043ab10
mov ecx, eax
call fcn.0043dbf0
mov al, byte [esi + 0x15c]
cmp al, byte [edi + 0x74]
jne 0x43c02d
mov edi, dword [edi + 0x28]
push 1
mov ecx, edi
call fcn.00413360
push ebx
mov ecx, edi
call fcn.0043dc10
mov ecx, esi
call fcn.0043ab10
mov ecx, dword [eax + 0x24]
push ecx
mov ecx, esi
call fcn.0043abc0
cmp dword [esi + 0x10], ebx
mov ecx, ebp
setne byte [esp + 0x20]
mov edx, dword [esp + 0x20]
push edx
mov byte [esp + 0x1b], al
call fcn.0043e340
mov edi, dword [esp + 0x278]
cmp eax, 1
sete al
movzx ecx, al
push ecx
push edi
mov ecx, esi
call fcn.0043ab10
mov ecx, eax
call fcn.0043da90
test al, al
jne 0x43c084
push 0xffffffffffffff95
mov ecx, esi
call fcn.0043b5f0
push ebp
mov ecx, esi
call fcn.0043ab10
mov ecx, eax
call fcn.0043d930
cmp byte [esi + 0x15c], bl
je 0x43c0ae
mov edx, dword [esp + 0x18]
push edx
mov ecx, esi
call fcn.0043ab10
mov ecx, eax
call fcn.0043dbf0
cmp byte [esp + 0x20], bl
je 0x43c0ff
push ebx
push 0xc
lea ecx, [esp + 0x2c]
call fcn.0043f530
mov ecx, dword [esp + 0x1c]
movzx edx, word [ecx + 0x10]
lea eax, [esp + 0x24]
push eax
shl edx, 0x10
push edx
mov ecx, esi
mov byte [esp + 0x270], 1
call fcn.0043b510
mov eax, dword [esp + 0x28]
push ebx
push 0xc
push eax
mov ecx, ebp
call fcn.0043eeb0
lea ecx, [esp + 0x24]
mov byte [esp + 0x268], bl
call fcn.0043f560
mov ecx, dword [esi + 0x74]
mov edx, dword [esi + 0x70]
mov dword [esi + 0x64], ebx
mov dword [esi + 0x2c], ebx
mov dword [esi + 0x38], ecx
mov dword [esi + 0x34], edx
mov dword [esi + 0x30], ebx
mov dword [esi + 0x3c], ebx
cmp byte [esp + 0x17], bl
je 0x43c135
mov ecx, esi
call fcn.0043ab10
cmp word [eax + 0xe], bx
je 0x43c135
call fcn.0043ab10
xor ecx, ecx
mov word [eax + 0xe], cx
mov ecx, esi
call fcn.0043ab10
cmp word [eax + 0xe], 8
jne 0x43c175
cmp byte [esi + 4], bl
je 0x43c150
lea eax, [esi + 0xc8]
jmp 0x43c152
xor eax, eax
push 0x38
push 0x499f10
push ebx
push 8
push 0xfffffffffffffff1
push 8
push edi
lea edx, [esi + 0x28]
push edx
mov dword [esi + 0x50], eax
call fcn.00480630
push eax
mov ecx, esi
call fcn.0043b6a0
lea ecx, [esp + 0x18]
mov byte [esi + 0xe4], 1
call fcn.004111f0
mov al, 1
mov ecx, dword [esp + 0x260]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x248]
xor ecx, esp
call fcn.004644d0
add esp, 0x258
ret 0xc