Function at 0x41057a
Capabilities:
Get file size
Read file on windows

Disassembly:
push 0x350
mov eax, 0x438e4c
call fcn.00423bda
mov eax, dword [ebp + 8]
xor esi, esi
mov edi, dword [ebp + 0x14]
xor ecx, ecx
mov dword [ebp - 0x348], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x34c], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x350], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x220], 7
mov dword [ebp - 0x224], esi
mov word [ebp - 0x234], cx
push eax
lea eax, [ebp - 0x258]
mov dword [ebp - 4], esi
push eax
mov ecx, edi
call fcn.004158d4
or dword [ebp - 0x32c], 0xffffffff
lea eax, [ebp - 0x21c]
mov ebx, 0x104
mov dword [ebp - 0x334], esi
push ebx
push eax
push esi
mov dword [ebp - 0x328], esi
mov byte [ebp - 4], 2
call dword [0x4512f4]
test eax, eax
je 0x410a73
cmp eax, ebx
je 0x410a73
mov ecx, dword [ebp - 0x248]
test ecx, ecx
sete al
test al, al
jne 0x410879
test ecx, ecx
je 0x410879
push 8
pop ebx
cmp dword [ebp - 0x244], ebx
lea eax, [ebp - 0x258]
mov ecx, edi
cmovae eax, dword [ebp - 0x258]
push eax
call fcn.00415a48
test al, al
jne 0x410879
xor eax, eax
mov dword [ebp - 0x25c], 7
mov dword [ebp - 0x260], esi
mov word [ebp - 0x270], ax
push str.__parentPath:SYS.WIN.PACKAGEPATH_
lea ecx, [ebp - 0x288]
mov byte [ebp - 4], 3
call fcn.00402bca
cmp dword [ebp - 0x274], ebx
lea eax, [ebp - 0x288]
mov ecx, edi
mov byte [ebp - 4], 4
cmovae eax, dword [ebp - 0x288]
push eax
lea eax, [ebp - 0x324]
push eax
call fcn.00415344
push eax
lea ecx, [ebp - 0x270]
call fcn.00407e0a
push esi
push 1
lea ecx, [ebp - 0x324]
call fcn.00401f44
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x270]
push eax
lea ecx, [ebp - 0x234]
call fcn.00410b58
mov edi, 0x43ff40
push edi
call fcn.00402b0e
pop ecx
push eax
push edi
lea ecx, [ebp - 0x234]
call fcn.00410bfe
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x258]
push eax
lea ecx, [ebp - 0x234]
call fcn.00410b58
mov edi, 0x451150
push str.OPatchInstall:_Getting_the_data_from_the_file_
mov ecx, edi
call fcn.0041b07a
cmp dword [ebp - 0x220], ebx
lea eax, [ebp - 0x234]
lea ecx, [ebp - 0x308]
cmovae eax, dword [ebp - 0x234]
push 3
mov dword [ebp - 0x30c], ecx
lea ecx, [ebp - 0x30c]
push eax
call fcn.00401973
push dword [ebp - 0x30c]
mov ecx, edi
mov byte [ebp - 4], 5
call fcn.0041b07a
lea eax, [ebp - 0x308]
mov byte [ebp - 4], 4
cmp dword [ebp - 0x30c], eax
je 0x410770
push dword [ebp - 0x30c]
call fcn.0042ea16
pop ecx
push 0x43b304
mov ecx, edi
call fcn.0041b07a
push 0x43b300
mov ecx, edi
call fcn.0041b07a
cmp dword [ebp - 0x220], ebx
lea eax, [ebp - 0x234]
push esi
cmovae eax, dword [ebp - 0x234]
push 0x8000080
push 3
push esi
push 1
push SysReAllocString
push eax
call dword [0x4512f0]
mov ebx, eax
mov dword [ebp - 0x32c], ebx
cmp ebx, 0xffffffff
jne 0x4107e2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x338]
call fcn.00402c97
push 0x44b5a0
lea eax, [ebp - 0x338]
push eax
call fcn.00425e44
push esi
push ebx
mov dword [ebp - 0x238], esi
call dword [sym.imp.KERNEL32.dll_GetFileSize]
push esi
push 1
lea ecx, [ebp - 0x288]
mov dword [ebp - 0x23c], eax
call fcn.00401f44
push esi
push 1
lea ecx, [ebp - 0x270]
call fcn.00401f44
push str.OPatchInstall:_Successfully_retrieved_the_data_location_and_size
mov ecx, edi
mov dword [ebp - 4], 1
call fcn.0041b07a
push 0x43b300
mov ecx, edi
call fcn.0041b07a
mov eax, dword [ebp - 0x348]
mov ecx, dword [ebp - 0x34c]
push esi
push 1
mov dword [eax], ebx
mov eax, dword [ebp - 0x238]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x350]
mov eax, dword [ebp - 0x23c]
mov dword [ecx], eax
lea ecx, [ebp - 0x258]
call fcn.00401f44
push esi
push 1
lea ecx, [ebp - 0x234]
call fcn.00401f44
call fcn.00423b2b
ret 0x14
mov edi, 0x451150
push str.OPatchInstall:_Getting_the_data_from_the_file_
mov ecx, edi
call fcn.0041b07a
lea eax, [ebp - 0x308]
mov dword [ebp - 0x30c], eax
lea ecx, [ebp - 0x30c]
push 3
lea eax, [ebp - 0x21c]
push eax
call fcn.00401973
push dword [ebp - 0x30c]
mov ecx, edi
mov byte [ebp - 4], 6
call fcn.0041b07a
lea eax, [ebp - 0x308]
mov byte [ebp - 4], 2
cmp dword [ebp - 0x30c], eax
je 0x4108d9
push dword [ebp - 0x30c]
call fcn.0042ea16
pop ecx
push 0x43b304
mov ecx, edi
call fcn.0041b07a
push 0x43b300
mov ecx, edi
call fcn.0041b07a
push esi
push 0x8000080
push 3
push esi
push 1
push SysReAllocString
lea eax, [ebp - 0x21c]
push eax
call dword [0x4512f0]
mov ebx, eax
mov dword [ebp - 0x32c], ebx
cmp ebx, 0xffffffff
jne 0x41093d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x33c]
call fcn.00402c97
push 0x44b5a0
lea eax, [ebp - 0x33c]
jmp 0x4107dc
push esi
push esi
push 0x38
push ebx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
jne 0x41096f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x340]
call fcn.00402c97
push 0x44b5a0
lea eax, [ebp - 0x340]
jmp 0x4107dc
push esi
lea eax, [ebp - 0x328]
push eax
push 4
lea eax, [ebp - 0x334]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x410a51
cmp dword [ebp - 0x328], 4
jb 0x410a51
push esi
push esi
push dword [ebp - 0x334]
push ebx
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
jne 0x4109d2
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x344]
call fcn.00402c97
push 0x44b5a0
lea eax, [ebp - 0x344]
jmp 0x4107dc
push esi
lea eax, [ebp - 0x328]
push eax
push 0xc
lea eax, [ebp - 0x240]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x410a2f
cmp dword [ebp - 0x328], 0xc
jb 0x410a2f
cmp dword [ebp - 0x240], 0xfafbfcfd
je 0x410812
push str.OPatchInstall:_The_package_seems_to_be_corrupted_or_the_data_is_missing
mov ecx, edi
call fcn.0041b07a
push 0x43b300
mov ecx, edi
call fcn.0041b07a
push 0x44d16c
lea eax, [ebp - 0x32d]
jmp 0x4107dc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x354]
call fcn.00402c97
push 0x44b5a0
lea eax, [ebp - 0x354]
jmp 0x4107dc
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x358]
call fcn.00402c97
push 0x44b5a0
lea eax, [ebp - 0x358]
jmp 0x4107dc
mov edi, 0x451150
push str.OPatchInstall:_Failed_to_get_the_path_to_the_EXE
mov ecx, edi
call fcn.0041b07a
push 0x43b300
mov ecx, edi
call fcn.0041b07a
push 0x7b
lea ecx, [ebp - 0x35c]
call fcn.00402c97
push 0x44b5a0
lea eax, [ebp - 0x35c]
jmp 0x4107dc