Function at 0x4dc14f
Capabilities:
Check if file exists
Get file size
Read file on windows

Disassembly:
push 0x3c8
mov eax, 0x555282
call fcn.00514880
mov ebx, dword [ebp + 8]
and dword [ebp - 0x3d0], 0
push 0x70
pop ecx
mov esi, str.PX4tRodW0rmnIRmvhGjooOF3XpCWh7u06CTQhIftqVxJxValvdrRhTNjg3CQmMHUjlxKiK4V2NVF7WdoFnM7mhCmPDBo4zH3xcTXrbVl9YtbhpNq4QHUisTTfVI4k1f21lriLGC52QqC1ePaJxLpJaRQPp1XilhZbpj3Jx3RRXgchP2pdYSMvIz7w1t0jswA6shApToRVNQtah0NTf33CMrFHPpaiESI9wrTuElYFrcuzY2lpWN8NOlqKYBZyCrTaLcrrbJc6DeZle1A9r5AGjQQK4OqPAuxOaUkUo4P4jqqb7s6av7XzNfpWkRBuaz5W3NggP0ySk2Bo7EB42zvYaqFKa3CoVQepSs4LMIz1gmINbRU9hbpio71FbTa7pvSaMNBV3wT9TeHWFqJcESNrvK52GL9vIRA5XwlqPiCEFifT5o6QkfVuSyZAUsFsEvRR
and dword [ebp - 4], 0
lea edi, [ebp - 0x304]
rep movsd dword es:[edi], dword [esi]
push 0x4c
pop ecx
movsw word es:[edi], word [esi]
mov esi, str.5jvgdzbmdJbgb4Fm4d6viuMvNo8GMttK2AVmgyGv5IcOmTK3F5ciwqYvzSlOX6Lo7GPyfvPuhuCP0x4gQESkkDZEZGez24Cdn5sQpIFvYAV5oAQNcONXePCe4U3HwBT0fyjTHKXT66lgVAONfR0ZfCXjjCt1aCRmRs0GIO0UYlHRbYppniNEABFEqXZM4RHi0plc0zhOB37qt4MXb3XyEGtyI3dz4mVuhUhvGMu7BwvrgKnQNUpOJjGChsalutMT3HS1bEmZpzu7m4X1aNzdYnZSH3Vfx6vP6W0AHJorrnK80DU
lea edi, [ebp - 0x140]
rep movsd dword es:[edi], dword [esi]
xor esi, esi
mov dword [ebp - 0x3c8], esi
mov dword [ebp - 0x3c4], esi
mov dword [ebp - 0x3c0], esi
lea eax, [ebp - 0x304]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x334]
call fcn.004057d0
lea eax, [ebp - 0x334]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x3c8]
call fcn.00407f90
push esi
push 1
lea ecx, [ebp - 0x334]
mov byte [ebp - 4], 1
call fcn.00479e2e
lea eax, [ebp - 0x140]
push eax
lea ecx, [ebp - 0x334]
call fcn.004057d0
lea eax, [ebp - 0x334]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x3c8]
call fcn.00407f90
push esi
push 1
lea ecx, [ebp - 0x334]
mov byte [ebp - 4], 1
call fcn.00479e2e
push esi
xor eax, eax
mov dword [ebp - 0x308], 7
push 0x657910
lea ecx, [ebp - 0x31c]
mov dword [ebp - 0x30c], esi
mov word [ebp - 0x31c], ax
call fcn.00402650
lea ecx, [ebp - 0x3b8]
mov byte [ebp - 4], 4
call fcn.004e7d36
cmp dword [ebp + 0x20], 8
lea eax, [ebp + 0xc]
cmovae eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x4dc3a0
cmp dword [ebp + 0x20], 8
lea eax, [ebp + 0xc]
push esi
cmovae eax, dword [ebp + 0xc]
push 0x80
push 4
push esi
push 1
push SysReAllocString
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
cmp edi, 0xffffffff
jne 0x4dc2a7
push 0x657910
mov ecx, ebx
call fcn.004024f0
jmp 0x4dc3ae
push esi
push edi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x3bc], eax
inc eax
push eax
mov dword [ebp - 0x3cc], eax
call fcn.00474ddd
mov esi, eax
pop ecx
test esi, esi
jne 0x4dc2f4
push 0x657910
mov ecx, ebx
call fcn.004024f0
push esi
push 1
lea ecx, [ebp - 0x31c]
call fcn.00402590
lea ecx, [ebp - 0x3c8]
call fcn.00479e80
push esi
jmp 0x4dc3c8
push dword [ebp - 0x3cc]
push 0
push esi
call fcn.004f14e0
add esp, 0xc
lea eax, [ebp - 0x3d4]
push 0
push eax
push dword [ebp - 0x3bc]
push esi
push edi
call dword [sym.imp.KERNEL32.dll_ReadFile]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x3bc]
lea ecx, [ebp - 0x3b8]
push esi
call fcn.004e8702
push esi
call fcn.00474de6
pop ecx
lea eax, [ebp - 0x334]
push eax
lea ecx, [ebp - 0x3b8]
call fcn.004e7f50
push eax
lea eax, [ebp - 0x34c]
mov byte [ebp - 4], 5
push eax
call fcn.004dadb1
pop ecx
pop ecx
xor esi, esi
mov byte [ebp - 4], 7
push esi
push 1
lea ecx, [ebp - 0x334]
call fcn.00479e2e
cmp dword [ebp - 0x33c], esi
jbe 0x4dc392
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x34c]
push eax
lea ecx, [ebp - 0x31c]
call fcn.00402880
push esi
push 1
lea ecx, [ebp - 0x34c]
call fcn.00402590
lea eax, [ebp - 0x31c]
mov ecx, ebx
push eax
call fcn.00404610
push esi
push 1
lea ecx, [ebp - 0x31c]
call fcn.00402590
lea ecx, [ebp - 0x3c8]
call fcn.00479e80
push esi
push 1
lea ecx, [ebp + 0xc]
call fcn.00402590
mov eax, ebx
call fcn.0051483b
ret