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

Disassembly:
push 0x408
mov eax, 0x545428
call fcn.00506b61
mov ebx, dword [ebp + 8]
and dword [ebp - 0x410], 0
push 0x58
pop ecx
mov esi, str.qa5ppPSTEBaZ8f3UADoZG5mgUXgDRoqwuyebcwMylZWboksMk2aMRHAvhaz8BUQn6K1eFTzrT0gUiJmJvpXwBdtxHzKDpGR3ex9kp06PVIaz8QAXkYhgVHPCZDY26J9vZ4tIwbwr6B5sJhXeGl220YPkBtRagDhHOPy47qx7LMACrN6cj6SYCWZaaYlPG9BF6mcoluxzNKVTYEZDE5L0Elt4vjcrxwwiqUC9PT6iejLIvKhbGZhBHpEgp04m4cJMnflXGpEUDMR0Z4VtGJPMWqLFOT1ioxwhpdluY7H8Ja0NdfznsYdBqf1rfKmqh0UVmTzSijAhmnhXqD1tVqWgfIf0Lej0KnQm
and dword [ebp - 4], 0
lea edi, [ebp - 0x174]
rep movsd dword es:[edi], dword [esi]
push 0x73
pop ecx
movsb byte es:[edi], byte [esi]
mov esi, str.5aO93TSp2saz4gSowQwCP9Y3fGcgKo1QPIojNgmv82k6AMQH2GrCQ6JwxI7VK5eqjXkv70JLKShbWeVgngfaGJomZPBo9WjDXFkAept8ODcsDAKu1kfcBB15ctzW7gpXEFGLmpQaxzEZ5BXfRsZvlpQ2HKOiwweneMB6p7qgsrQHzzPTSv1WJHGx1QntwC2UTh9CO4jbItof5U3P3oPRsSPHfY4XcPJxWYMzlcShKRTbO6cL0AnFzdxiHIyL24xVfEdU2OD5vv7NfwARZe0BrKmkS00sGzVke6wenNgbF8VyqRVvUo0KnuMIeR2ouX9PrXTPwEwDkpBWTzhpjZ7Tv0IjBF5sBzJnYwr5gDfnZMMntHGFU8ZxuIcmYSH3TgawkH92RNXYSO3KUxyqwX5Ozr2IyaGzEJSfVXxDF9I53qTUzPuH3TROjZTHw3WG73LjfyzF3PN7CviqO
lea edi, [ebp - 0x344]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
xor esi, esi
mov dword [ebp - 0x408], esi
mov dword [ebp - 0x404], esi
mov dword [ebp - 0x400], esi
lea eax, [ebp - 0x174]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x374]
call fcn.00405820
lea eax, [ebp - 0x374]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x408]
call fcn.00407e30
push esi
push 1
lea ecx, [ebp - 0x374]
mov byte [ebp - 4], 1
call fcn.0046d37e
lea eax, [ebp - 0x344]
push eax
lea ecx, [ebp - 0x374]
call fcn.00405820
lea eax, [ebp - 0x374]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x408]
call fcn.00407e30
push esi
push 1
lea ecx, [ebp - 0x374]
mov byte [ebp - 4], 1
call fcn.0046d37e
push esi
xor eax, eax
mov dword [ebp - 0x348], 7
push 0x63d8a0
lea ecx, [ebp - 0x35c]
mov dword [ebp - 0x34c], esi
mov word [ebp - 0x35c], ax
call fcn.00402650
lea ecx, [ebp - 0x3f8]
mov byte [ebp - 4], 4
call fcn.004dadcd
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 0x4ce7cd
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 connect
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov edi, eax
cmp edi, 0xffffffff
jne 0x4ce6d4
push 0x63d8a0
mov ecx, ebx
call fcn.004024f0
jmp 0x4ce7db
push esi
push edi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x3fc], eax
inc eax
push eax
mov dword [ebp - 0x40c], eax
call fcn.0046831d
mov esi, eax
pop ecx
test esi, esi
jne 0x4ce721
push 0x63d8a0
mov ecx, ebx
call fcn.004024f0
push esi
push 1
lea ecx, [ebp - 0x35c]
call fcn.00402590
lea ecx, [ebp - 0x408]
call fcn.0046d3d0
push esi
jmp 0x4ce7f5
push dword [ebp - 0x40c]
push 0
push esi
call fcn.004e37a0
add esp, 0xc
lea eax, [ebp - 0x414]
push 0
push eax
push dword [ebp - 0x3fc]
push esi
push edi
call dword [sym.imp.KERNEL32.dll_ReadFile]
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x3fc]
lea ecx, [ebp - 0x3f8]
push esi
call fcn.004db799
push esi
call fcn.00468326
pop ecx
lea eax, [ebp - 0x374]
push eax
lea ecx, [ebp - 0x3f8]
call fcn.004dafe7
push eax
lea eax, [ebp - 0x38c]
mov byte [ebp - 4], 5
push eax
call fcn.004cd1cb
pop ecx
pop ecx
xor esi, esi
mov byte [ebp - 4], 7
push esi
push 1
lea ecx, [ebp - 0x374]
call fcn.0046d37e
cmp dword [ebp - 0x37c], esi
jbe 0x4ce7bf
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x38c]
push eax
lea ecx, [ebp - 0x35c]
call fcn.004028b0
push esi
push 1
lea ecx, [ebp - 0x38c]
call fcn.00402590
lea eax, [ebp - 0x35c]
mov ecx, ebx
push eax
call fcn.00404660
push esi
push 1
lea ecx, [ebp - 0x35c]
call fcn.00402590
lea ecx, [ebp - 0x408]
call fcn.0046d3d0
push esi
push 1
lea ecx, [ebp + 0xc]
call fcn.00402590
mov eax, ebx
call fcn.00506b0b
ret