Function at 0x434580
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x437216
mov eax, dword fs:[0]
push eax
sub esp, 0x4dc
mov eax, dword [0x443574]
xor eax, ebp
mov dword [ebp - 0x14], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, dword [ebp + 8]
call fcn.0042bcf0
test eax, eax
jne 0x4345c1
mov eax, 0xffffe89d
jmp 0x434912
push 0
push 0xffffffffffffffff
push 0x43a29c
lea ecx, [ebp - 0x4b8]
call fcn.0042b7f0
mov dword [ebp - 4], 0
push 0
lea eax, [ebp - 0x4b8]
push eax
mov ecx, dword [ebp + 8]
call fcn.0042c540
xor ecx, ecx
cmp eax, 0xffffffff
setne cl
mov byte [ebp - 0x49d], cl
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4b8]
call fcn.00408010
movzx edx, byte [ebp - 0x49d]
test edx, edx
je 0x434622
mov eax, 0xffffe8c2
jmp 0x434912
lea eax, [ebp - 0x264]
push eax
mov ecx, dword [ebp + 8]
call fcn.0042bd10
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xffffffff
jne 0x43485f
lea ecx, [ebp - 0x478]
push ecx
lea edx, [ebp - 0x474]
push edx
push 0x105
mov ecx, dword [ebp + 8]
call fcn.0042bd10
push eax
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
mov dword [ebp - 0x47c], eax
cmp dword [ebp - 0x47c], 0
jne 0x434680
mov eax, 1
jmp 0x434912
cmp dword [ebp - 0x47c], 0x20a
jbe 0x434696
mov eax, 0xffffe8c1
jmp 0x434912
mov eax, dword [ebp - 0x47c]
push eax
lea ecx, [ebp - 0x474]
push ecx
lea ecx, [ebp - 0x494]
call fcn.0042b8a0
mov dword [ebp - 4], 1
lea edx, [ebp - 0x494]
push edx
call fcn.00434960
add esp, 4
test eax, eax
je 0x434725
mov eax, dword [ebp + 0xc]
mov dword [eax], 2
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 4], 0
mov edx, dword [ebp + 0xc]
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov eax, dword [ebp + 0xc]
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
mov dword [ebp - 0x4bc], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x494]
call fcn.00408010
mov eax, dword [ebp - 0x4bc]
jmp 0x434912
mov ecx, dword [ebp - 0x47c]
movzx edx, word [ebp + ecx*2 - 0x476]
push edx
call fcn.00434930
add esp, 4
movzx eax, al
test eax, eax
jne 0x4347b4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x498], eax
cmp dword [ebp - 0x498], 2
je 0x434761
cmp dword [ebp - 0x498], 3
jne 0x434788
mov dword [ebp - 0x4c0], 0xffffe8c2
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x494]
call fcn.00408010
mov eax, dword [ebp - 0x4c0]
jmp 0x434912
mov dword [ebp - 0x4c4], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x494]
call fcn.00408010
mov eax, dword [ebp - 0x4c4]
jmp 0x434912
xor ecx, ecx
mov edx, dword [ebp - 0x47c]
mov word [ebp + edx*2 - 0x476], cx
lea eax, [ebp - 0x264]
push eax
lea ecx, [ebp - 0x474]
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xffffffff
jne 0x43484d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x49c], eax
cmp dword [ebp - 0x49c], 2
je 0x4347ff
cmp dword [ebp - 0x49c], 3
jne 0x434826
mov dword [ebp - 0x4c8], 0xffffe8c2
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x494]
call fcn.00408010
mov eax, dword [ebp - 0x4c8]
jmp 0x434912
mov dword [ebp - 0x4cc], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x494]
call fcn.00408010
mov eax, dword [ebp - 0x4cc]
jmp 0x434912
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x494]
call fcn.00408010
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, dword [ebp - 0x264]
and eax, 0x10
je 0x43487f
mov ecx, dword [ebp + 0xc]
mov dword [ecx], 2
jmp 0x434888
mov edx, dword [ebp + 0xc]
mov dword [edx], 1
cmp dword [ebp - 0x248], 0
je 0x4348b2
push str.file_size_larger_than_4GB_encountered
lea ecx, [ebp - 0x4e8]
call fcn.0042c390
push 0x43bbcc
lea eax, [ebp - 0x4e8]
push eax
call sub.MSVCR90.dll__CxxThrowException
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x244]
mov dword [ecx + 4], edx
mov eax, dword [ebp + 0xc]
add eax, 0x10
push eax
lea ecx, [ebp - 0x250]
push ecx
call fcn.00434520
add esp, 8
cmp dword [ebp - 0x260], 0
jne 0x4348fa
cmp dword [ebp - 0x25c], 0
jne 0x4348fa
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x10]
mov dword [edx + 8], ecx
mov eax, dword [eax + 0x14]
mov dword [edx + 0xc], eax
jmp 0x434910
mov ecx, dword [ebp + 0xc]
add ecx, 8
push ecx
lea edx, [ebp - 0x260]
push edx
call fcn.00434520
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0043539d
mov esp, ebp
pop ebp
ret