Function at 0x458c80
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7a0
mov eax, dword [0x5159c4]
xor eax, ebp
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x79c], ecx
mov ecx, dword [ebp - 0x79c]
add ecx, 0x30
call fcn.004a04e0
push ecx
push esp
call fcn.00459d50
add esp, 4
mov ecx, dword [ebp - 0x79c]
call fcn.004925a0
mov eax, dword [ebp - 0x79c]
add eax, 0xc8
push eax
mov ecx, dword [ebp - 0x79c]
call fcn.00493c00
mov dword [ebp - 4], eax
mov dword [ebp - 0x10], 0
push 0x4fe4d0
lea ecx, [ebp - 0xc]
call fcn.00413a00
push 0x4fe4d4
lea ecx, [ebp - 8]
call fcn.00413a00
lea ecx, [ebp - 0x18]
push ecx
mov ecx, dword [ebp - 0x79c]
add ecx, 0xc8
call fcn.0045a330
jmp 0x458d1f
push 0
lea edx, [ebp - 0x284]
push edx
lea ecx, [ebp - 0x18]
call fcn.0045a8f0
lea eax, [ebp - 0x28c]
push eax
mov ecx, dword [ebp - 0x79c]
add ecx, 0xc8
call fcn.0045a360
push eax
lea ecx, [ebp - 0x18]
call fcn.0045a930
movzx ecx, al
test ecx, ecx
je 0x4592cb
mov dword [ebp - 0x10], 0
lea edx, [ebp - 0x20]
push edx
lea ecx, [ebp - 0x18]
call fcn.0045a8d0
add eax, 4
mov ecx, eax
call fcn.0045a220
jmp 0x458d7b
push 0
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x20]
call fcn.0045a980
lea ecx, [ebp - 0x29c]
push ecx
lea ecx, [ebp - 0x18]
call fcn.0045a8d0
add eax, 4
mov ecx, eax
call fcn.0045a250
push eax
lea ecx, [ebp - 0x20]
call fcn.0045a9c0
movzx edx, al
test edx, edx
je 0x458e6c
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 0xc]
push ecx
lea ecx, [ebp - 0x20]
call fcn.0045a960
push ecx
mov ecx, esp
push eax
call fcn.004139e0
mov ecx, dword [ebp - 0x79c]
add ecx, 0x30
call fcn.004a0910
test eax, eax
je 0x458ddf
mov dword [ebp - 0x10], 1
jmp 0x458e6c
push 0x4fe4d8
lea ecx, [ebp - 0x20]
call fcn.0045a960
push eax
call fcn.00459f40
add esp, 8
movzx edx, al
test edx, edx
je 0x458e23
lea eax, [ebp - 8]
push eax
mov ecx, dword [ebp - 0x79c]
call fcn.00459950
lea ecx, [ebp - 8]
call fcn.00412400
movzx ecx, al
test ecx, ecx
jne 0x458e23
mov dword [ebp - 0x10], 1
jmp 0x458e6c
push 0x4fe4e4
lea ecx, [ebp - 0x20]
call fcn.0045a960
push eax
call fcn.00459f40
add esp, 8
movzx edx, al
test edx, edx
je 0x458e67
lea eax, [ebp - 8]
push eax
mov ecx, dword [ebp - 0x79c]
call fcn.00459aa0
lea ecx, [ebp - 8]
call fcn.00412400
movzx ecx, al
test ecx, ecx
jne 0x458e67
mov dword [ebp - 0x10], 1
jmp 0x458e6c
jmp 0x458d6a
cmp dword [ebp - 0x10], 0
je 0x4592c6
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x18]
call fcn.0045a8d0
add eax, 0x1c
mov ecx, eax
call fcn.0045a280
jmp 0x458e9f
push 0
lea eax, [ebp - 0x2a8]
push eax
lea ecx, [ebp - 0x28]
call fcn.0045aa10
lea ecx, [ebp - 0x2b0]
push ecx
lea ecx, [ebp - 0x18]
call fcn.0045a8d0
add eax, 0x1c
mov ecx, eax
call fcn.0045a2b0
push eax
lea ecx, [ebp - 0x28]
call fcn.0045aa50
movzx edx, al
test edx, edx
je 0x4592c6
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
push eax
lea ecx, [ebp - 0x30]
call fcn.00413a00
push 0x4fe4f0
lea ecx, [ebp - 0x2c]
call fcn.00413a00
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
cmp dword [eax + 0x41c], 0
je 0x458f06
lea eax, [ebp - 0xc]
mov dword [ebp - 0x7a0], eax
jmp 0x458f0f
lea ecx, [ebp - 8]
mov dword [ebp - 0x7a0], ecx
mov edx, dword [ebp - 0x7a0]
mov dword [ebp - 0x2b8], edx
lea eax, [ebp - 0x2c]
push eax
push ecx
mov ecx, esp
mov edx, dword [ebp - 0x2b8]
push edx
call fcn.004139e0
lea ecx, [ebp - 0x30]
call fcn.00413b20
push eax
call fcn.0042ecb0
add esp, 0xc
test eax, eax
je 0x458f79
push 0x208
push 0
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
push eax
call fcn.004c62e0
add esp, 0xc
lea ecx, [ebp - 0x2c]
call fcn.00413b20
push eax
push 0x208
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
push eax
call fcn.00422b70
jmp 0x458f9e
lea ecx, [ebp - 0x2c]
call fcn.00413a40
lea ecx, [ebp - 0x30]
call fcn.00413a40
lea ecx, [ebp - 8]
call fcn.00413a40
lea ecx, [ebp - 0xc]
call fcn.00413a40
jmp 0x4592db
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4592b1
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
cmp dword [eax + 0x410], 1
jne 0x45905c
xor eax, eax
mov dword [ebp - 0x38], eax
lea ecx, [ebp - 0x34]
call fcn.004139c0
mov dword [ebp - 0x38], 0
push 0x4fe4f4
lea ecx, [ebp - 0x34]
call fcn.00413a60
sub esp, 8
mov ecx, esp
lea edx, [ebp - 0x38]
push edx
call fcn.00459db0
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
push eax
lea eax, [ebp - 0x2d4]
push eax
call fcn.0045f5e0
add esp, 0x10
push eax
lea ecx, [ebp - 0x2c4]
call fcn.0045f600
lea ecx, [ebp - 0x2c4]
push ecx
lea edx, [ebp - 0x2e0]
push edx
mov ecx, dword [ebp - 0x79c]
add ecx, 0x48
call fcn.0045a460
lea ecx, [ebp - 0x2c4]
call fcn.00459e00
lea ecx, [ebp - 0x2d4]
call fcn.00459de0
lea ecx, [ebp - 0x38]
call fcn.00459d90
jmp 0x4592b1
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
cmp dword [eax + 0x410], 2
jne 0x459142
lea ecx, [ebp - 0x268]
call fcn.00459e20
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
add eax, 0x208
push eax
push 0x208
lea eax, [ebp - 0x268]
push eax
call fcn.00422b70
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
mov ecx, dword [eax + 0x414]
mov dword [ebp - 0x60], ecx
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
add eax, 0x420
push eax
lea ecx, [ebp - 0x58]
call fcn.0045a090
sub esp, 0x228
mov ecx, esp
lea edx, [ebp - 0x268]
push edx
call fcn.00459e60
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
push eax
lea eax, [ebp - 0x73c]
push eax
call fcn.0045f630
add esp, 0x230
push eax
lea ecx, [ebp - 0x50c]
call fcn.0045f660
lea ecx, [ebp - 0x50c]
push ecx
lea edx, [ebp - 0x748]
push edx
mov ecx, dword [ebp - 0x79c]
add ecx, 0x88
call fcn.0045a700
lea ecx, [ebp - 0x50c]
call fcn.00459ee0
lea ecx, [ebp - 0x73c]
call fcn.00459ec0
lea ecx, [ebp - 0x268]
call fcn.00459e40
jmp 0x4592b1
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
cmp dword [eax + 0x410], 3
jne 0x4591fb
xor eax, eax
mov dword [ebp - 0x270], eax
lea ecx, [ebp - 0x26c]
call fcn.004139c0
mov dword [ebp - 0x270], 0
push 0x4fe4f8
lea ecx, [ebp - 0x26c]
call fcn.00413a60
sub esp, 8
mov ecx, esp
lea edx, [ebp - 0x270]
push edx
call fcn.00459db0
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
push eax
lea eax, [ebp - 0x764]
push eax
call fcn.0045f5e0
add esp, 0x10
push eax
lea ecx, [ebp - 0x754]
call fcn.0045f600
lea ecx, [ebp - 0x754]
push ecx
lea edx, [ebp - 0x770]
push edx
mov ecx, dword [ebp - 0x79c]
add ecx, 0x68
call fcn.0045a460
lea ecx, [ebp - 0x754]
call fcn.00459e00
lea ecx, [ebp - 0x764]
call fcn.00459de0
lea ecx, [ebp - 0x270]
call fcn.00459d90
jmp 0x4592b1
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
cmp dword [eax + 0x410], 4
jne 0x4592b1
xor eax, eax
mov dword [ebp - 0x278], eax
lea ecx, [ebp - 0x274]
call fcn.004139c0
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
add eax, 0x208
push eax
lea ecx, [ebp - 0x274]
call fcn.00413a60
sub esp, 8
mov ecx, esp
lea edx, [ebp - 0x278]
push edx
call fcn.00459db0
lea ecx, [ebp - 0x28]
call fcn.0045a9f0
push eax
lea eax, [ebp - 0x78c]
push eax
call fcn.0045f5e0
add esp, 0x10
push eax
lea ecx, [ebp - 0x77c]
call fcn.0045f600
lea ecx, [ebp - 0x77c]
push ecx
lea edx, [ebp - 0x798]
push edx
mov ecx, dword [ebp - 0x79c]
add ecx, 0xa8
call fcn.0045a460
lea ecx, [ebp - 0x77c]
call fcn.00459e00
lea ecx, [ebp - 0x78c]
call fcn.00459de0
lea ecx, [ebp - 0x278]
call fcn.00459d90
lea ecx, [ebp - 0x2c]
call fcn.00413a40
lea ecx, [ebp - 0x30]
call fcn.00413a40
jmp 0x458e8e
jmp 0x458d0e
lea ecx, [ebp - 8]
call fcn.00413a40
lea ecx, [ebp - 0xc]
call fcn.00413a40
mov ecx, dword [ebp - 0x3c]
xor ecx, ebp
call fcn.004c62c9
mov esp, ebp
pop ebp
ret