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

Disassembly:
push 0x564
mov eax, 0x7b1bcf
call fcn.00772fd1
mov ebx, dword [ebp + 8]
xor esi, esi
mov dword [ebp - 0x56c], esi
push esi
xor eax, eax
mov dword [ebp - 4], esi
push 0x8b08c8
lea ecx, [ebp - 0x4d0]
mov dword [ebp - 0x4bc], 7
mov dword [ebp - 0x4c0], esi
mov word [ebp - 0x4d0], ax
call fcn.00402820
lea ecx, [ebp - 0x554]
mov byte [ebp - 4], 1
call fcn.00745786
call fcn.006f2cfd
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 0x72e242
call fcn.006ed813
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 dword [ebp - 0x564], eax
mov dword [ebp - 0x560], esi
mov dword [ebp - 0x55c], esi
mov dword [ebp - 0x558], esi
cmp eax, 0xffffffff
jne 0x72e0d1
push 0x74
pop ecx
mov esi, str.zLClF0n4TWZAu5151Kqj5oYuzICYKKCfZCctbXlx5ml1SYupsbGBH1Dfl0Gb1R6xiUcr79XJAUqMLdyv24kJgFFNYJrCbXwWcnelyDHzLOPSIn4fky1FeY5j8AYWgJimtZpj54vCzKak5thybpNAP3qcD8Xh2uzEkDQYVYZeRk3hOhxY3topbFL3bVQxX8QMxCCSiWeCGAlNSrqE0vxSdwVRsoovjM5oGypHsBO5DiAdqJWDGSAzLlY4hIZaXuYB7tohDCZINL2qOOh0FXhhfB2fg4y0P0YUOADwUzKZapBsJqpC3vevCLcP7dL612paSRHvTXBNKNJh2Ad5JyyWI4zoF1576XI85Ruu4kcdAON6VjJi535KlYqBxPpSCuRDJPY17OLbzOjF79nkpiIrTIIjvWZ5r21F34xTi90m0Gl2HTeE0TzFHycrhIZTJo0ml43IYzhP6FImumOAus
mov byte [ebp - 4], 2
lea edi, [ebp - 0x4a0]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x4a0]
push eax
lea ecx, [ebp - 0x4b8]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
call fcn.00405a50
lea eax, [ebp - 0x4b8]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x560]
call fcn.004082f0
xor esi, esi
mov byte [ebp - 4], 2
push esi
push 1
lea ecx, [ebp - 0x4b8]
call fcn.004096c0
push 0x8b08c8
mov ecx, ebx
call fcn.004026c0
jmp 0x72e2b1
push 0x4a
pop ecx
mov esi, str.cC1v257oazy4CCEQKGCxnc7PCeMwUvO3wvYrDyf10zTidpNiwDbvd7x57Di86xG6Neo3tvb2578IthqLa60s9eSYIerCWwFpKEFWYGSt6IeDJAKNZ9W1SQU1Ucj5XiAasJhTibntDERF32zi424bK2e8UL18ATBtQJQpKxEc30PE2g2gONJiewk1vJdvKkgLUcJ6ICWGbXG4xaXYz7iUpadlHXDINtQ6zLIbK1QiIfq5eYq84mpXxeZcxraeIU7zed1feDNgwviWnK8M7A1bleAgeB0V4PkSX41OagIM2O
mov byte [ebp - 4], 4
lea edi, [ebp - 0x13c]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x13c]
push eax
lea ecx, [ebp - 0x4b8]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
call fcn.00405a50
lea eax, [ebp - 0x4b8]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x560]
call fcn.004082f0
push 0
push 1
lea ecx, [ebp - 0x4b8]
mov byte [ebp - 4], 4
call fcn.004096c0
mov esi, dword [ebp - 0x564]
push 0
push esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x564], eax
inc eax
push eax
mov dword [ebp - 0x568], eax
call fcn.006e70fd
mov edi, eax
pop ecx
test edi, edi
jne 0x72e177
push 0x8b08c8
mov ecx, ebx
call fcn.004026c0
lea ecx, [ebp - 0x560]
call fcn.006ec102
push edi
push 1
lea ecx, [ebp - 0x4d0]
call fcn.00402760
push edi
jmp 0x72e2cb
call fcn.00402330
push dword [ebp - 0x568]
push 0
push edi
call fcn.0074fc20
add esp, 0xc
lea eax, [ebp - 0x570]
push 0
push eax
push dword [ebp - 0x564]
push edi
push esi
call dword [sym.imp.KERNEL32.dll_ReadFile]
call fcn.00402330
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push dword [ebp - 0x564]
lea ecx, [ebp - 0x554]
push edi
call fcn.00746152
push edi
call fcn.006e7106
pop ecx
lea eax, [ebp - 0x4b8]
push eax
lea ecx, [ebp - 0x554]
call fcn.007459a0
push eax
lea eax, [ebp - 0x4e8]
mov byte [ebp - 4], 6
push eax
call fcn.007370a2
pop ecx
pop ecx
xor esi, esi
mov byte [ebp - 4], 8
push esi
push 1
lea ecx, [ebp - 0x4b8]
call fcn.004096c0
call fcn.006ee7e0
cmp dword [ebp - 0x4d8], esi
jbe 0x72e229
call fcn.006ee6e2
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x4e8]
push eax
lea ecx, [ebp - 0x4d0]
call fcn.00402aa0
push esi
push 1
lea ecx, [ebp - 0x4e8]
call fcn.00402760
lea ecx, [ebp - 0x560]
call fcn.006ec102
mov dword [ebp - 0x560], esi
mov dword [ebp - 0x55c], esi
mov dword [ebp - 0x558], esi
push 0x63
pop ecx
mov esi, str.0HCLyzPJ0c1f8wcGtiRXrwLevlk0W4xaeJhvjNu9sajoFhIVviCJWvY1bm8YK0Vg0Hc5XjE5XNEqS4NGsKh8yjbAAkuQff5TKVT4MXc2szmztEw8CATYe00ardBYXsVwMPavuGszmfClkRjq9NowHTH42CTliblL44QCHkiedE0eCwsgNIrXmlKyqBpapCrtu4rOfe2L3nM1yOVXmNdB5UfCwqwpHO3zdPvsRtBDKS2BDbdQBb9FVtDZHW4DfZz9TqZTFeFSQWRrbYwOmf14ivcs0OkmrbSDmNrOVSAHQRLtrWzMp6htolsMlSXE23Hy8ejyed4UmNUSOgweN4XBGgQyTdAl4OcW9p74GXrycNSZ3JFvkg3YeM1KP0ahPbVIqsVWXNwf6qRFNB
mov byte [ebp - 4], 9
lea edi, [ebp - 0x2cc]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x2cc]
push eax
lea ecx, [ebp - 0x4b8]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
call fcn.00405a50
lea eax, [ebp - 0x4b8]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x560]
call fcn.004082f0
xor esi, esi
lea ecx, [ebp - 0x4b8]
push esi
push 1
call fcn.004096c0
lea eax, [ebp - 0x4d0]
mov ecx, ebx
push eax
call fcn.00404890
lea ecx, [ebp - 0x560]
call fcn.006ec102
push esi
push 1
lea ecx, [ebp - 0x4d0]
call fcn.00402760
push esi
push 1
lea ecx, [ebp + 0xc]
call fcn.00402760
mov eax, ebx
call fcn.00772f7b
ret 0x1c