Function at 0x4e41c4
Capabilities:
Check if file exists

Disassembly:
push 0x148
mov eax, 0x523a87
call fcn.00519636
mov edi, ecx
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x58]
push ebx
push eax
call fcn.004dad52
and dword [ebp - 4], 0
lea eax, [ebp - 0x58]
cmp dword [ebp - 0x44], 8
cmovae eax, dword [ebp - 0x58]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.004d978b
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.004db1b2
add esp, 0x18
mov esi, dword [edi]
mov byte [ebp - 4], 2
jmp 0x4e425e
cmp dword [esi + 0x14], 0x10
jb 0x4e4230
mov eax, dword [esi]
jmp 0x4e4232
mov eax, esi
push eax
lea ecx, [ebp - 0x40]
call fcn.00418a40
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x40]
call fcn.004e3595
neg eax
lea ecx, [ebp - 0x40]
push 0
sbb al, al
push 1
add al, 1
jne 0x4e4295
call fcn.004dbc24
add esi, 0x18
cmp esi, dword [edi + 4]
jne 0x4e4226
xor ebx, ebx
mov esi, ebx
push ebx
push 1
lea ecx, [ebp - 0x70]
call fcn.004dbc24
push ebx
push 1
lea ecx, [ebp - 0x88]
call fcn.0041c110
push ebx
push 1
lea ecx, [ebp - 0x58]
call fcn.0041c110
mov eax, esi
call fcn.005195e0
ret 0xc
call fcn.004dbc24
lea esi, [edi + 0x10]
cmp esi, ebx
je 0x4e42ad
push 0xffffffffffffffff
push 0
push ebx
mov ecx, esi
call fcn.004182e0
mov eax, dword [ebp - 0x90]
lea ecx, [edi + 0x28]
cmp ecx, eax
je 0x4e42c4
push 0xffffffffffffffff
push 0
push eax
call fcn.004182e0
push esi
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.004e3f28
cmp byte [ebp + 0x10], 0
mov byte [ebp - 4], 3
je 0x4e42fb
push esi
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.004e403b
push eax
lea ecx, [ebp - 0x28]
call fcn.00422520
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.0041c110
mov esi, dword [ebp - 0x90]
cmp dword [esi + 0x10], 0
jbe 0x4e448b
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4e4360
lea eax, [ebp - 0x40]
push ebx
push eax
call fcn.004dad52
sub esp, 0x10
mov byte [ebp - 4], 4
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.004d8c03
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.004e3dd0
lea ecx, [ebp - 0x40]
test al, al
je 0x4e447f
push 0
push 1
mov byte [ebp - 4], 3
call fcn.0041c110
push esi
sub esp, 0x18
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.004d8c03
mov ecx, edi
call fcn.004e3c43
test al, al
jne 0x4e43d7
lea eax, [ebp - 0x40]
push ebx
push eax
call fcn.004dad52
sub esp, 0x10
mov byte [ebp - 4], 5
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.004d8c03
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.004e3dd0
test al, al
je 0x4e447c
push esi
sub esp, 0x18
lea eax, [ebp - 0x28]
mov ecx, esp
push eax
call fcn.004d8c03
mov ecx, edi
call fcn.004e3c43
test al, al
je 0x4e447c
push 0
push 1
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 3
call fcn.0041c110
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4e448b
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push 1
cmovae eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x154]
push 0x40
push 0x25
push eax
call fcn.004e388b
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x154]
call fcn.004e4b9b
mov esi, dword [eax + 8]
add esi, dword [eax]
lea eax, [esi + 0xa]
push eax
call fcn.00427781
lea ecx, [esi + 1]
mov dword [edi + 0x54], eax
push ecx
xor ebx, ebx
push ebx
push eax
call fcn.004f1300
add esp, 0x10
lea ecx, [ebp - 0x154]
push ebx
push ebx
push ebx
call fcn.004e4a60
push ebx
push esi
push dword [edi + 0x54]
lea ecx, [ebp - 0x154]
call fcn.004e491d
lea ecx, [ebp - 0x154]
call fcn.004e48eb
lea ecx, [ebp - 0x154]
mov byte [ebp - 4], 3
call fcn.004e3b0b
jmp 0x4e44a1
lea ecx, [ebp - 0x40]
xor ebx, ebx
push ebx
push 1
call fcn.0041c110
jmp 0x4e44a5
sub esp, 0x18
mov ecx, esp
push ebx
call fcn.004d8bb8
mov ecx, edi
call fcn.004e3cc5
xor ebx, ebx
mov esi, eax
test esi, esi
jne 0x4e44a9
mov esi, ebx
jmp 0x4e4517
lea ecx, [ebp - 0x89]
mov dword [ebp - 0x9c], ebx
mov dword [ebp - 0x98], ebx
call fcn.0041f340
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x9c]
push eax
push esi
push dword [edi + 0x54]
lea ecx, [ebp - 0x89]
call fcn.004e556b
cmp dword [ebp - 0x9c], 0
je 0x4e450a
cmp dword [ebp - 0x98], 0
je 0x4e450a
push dword [ebp - 0x98]
push dword [ebp - 0x9c]
call fcn.004e52de
pop ecx
pop ecx
mov esi, eax
jmp 0x4e450c
mov esi, ebx
lea ecx, [ebp - 0x89]
call fcn.0044f850
push ebx
push 1
lea ecx, [ebp - 0x28]
call fcn.0041c110
jmp 0x4e4267