Function at 0x42a220
Capabilities:
Get common file path
Get file size

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x42f657
mov eax, dword fs:[0]
push eax
sub esp, 0x16c
mov eax, dword [0x4411c4]
xor eax, ebp
mov dword [ebp - 0x20], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x1c], 0
cmp dword [ebp + 8], 0
jne 0x42a39c
mov ecx, dword [ebp - 0x168]
call fcn.0042a130
movzx eax, al
test eax, eax
jne 0x42a2c9
mov ecx, dword [ebp - 0x168]
add ecx, 0x38
call fcn.004014a0
push eax
mov ecx, dword [ebp - 0x168]
add ecx, 0x38
call fcn.00401870
push 0
mov ecx, dword [ebp - 0x168]
add ecx, 0x38
call fcn.00404ec0
push eax
call fcn.00425f90
add esp, 4
movzx ecx, al
test ecx, ecx
jne 0x42a2c9
push 0x433066
mov ecx, dword [ebp - 0x168]
add ecx, 0x38
call fcn.004013a0
jmp 0x42a4a3
push 0x438a34
mov edx, dword [ebp - 0x168]
add edx, 0x38
push edx
lea eax, [ebp - 0x148]
push eax
call fcn.00403570
add esp, 0xc
mov dword [ebp - 0x16c], eax
mov ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x170], ecx
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x170]
push edx
mov ecx, dword [ebp - 0x168]
add ecx, 0x1c
call fcn.00401380
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x148]
call fcn.00401360
mov eax, dword [ebp - 0x168]
push eax
mov ecx, dword [ebp - 0x168]
add ecx, 0x1c
push ecx
lea edx, [ebp - 0x164]
push edx
call fcn.00403600
add esp, 0xc
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x178], eax
mov dword [ebp - 4], 1
mov ecx, dword [ebp - 0x178]
push ecx
mov ecx, dword [ebp - 0x168]
add ecx, 0x1c
call fcn.00401380
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x164]
call fcn.00401360
push str..log
mov ecx, dword [ebp - 0x168]
add ecx, 0x1c
call fcn.00401750
jmp 0x42a403
push 0x438a40
mov edx, dword [ebp + 8]
push edx
call fcn.00415d01
add esp, 8
test eax, eax
jne 0x42a403
push 0x104
push 0
lea eax, [ebp - 0x12c]
push eax
call fcn.004097d0
add esp, 0xc
lea ecx, [ebp - 0x12c]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea edx, [ebp - 0x12c]
push edx
mov ecx, dword [ebp - 0x168]
add ecx, 0x1c
call fcn.004013a0
mov eax, dword [ebp - 0x168]
push eax
mov ecx, dword [ebp - 0x168]
add ecx, 0x1c
call fcn.004013c0
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 0
push 0x80
push 4
push 0
push 0
push 0x80000001
mov ecx, dword [ebp - 0x168]
add ecx, 0x1c
call fcn.004014a0
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffffff
jne 0x42a451
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c], eax
push str.Could_not_open_file.
call fcn.0042a070
add esp, 4
mov dword [ebp - 0x10], 0
lea ecx, [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x14]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x18], 0
jne 0x42a47b
jmp 0x42a4a3
cmp dword [ebp - 0x10], 0
jne 0x42a48c
cmp dword [ebp - 0x18], 0x19000
jae 0x42a48c
jmp 0x42a4a3
mov ecx, dword [ebp - 0x168]
add ecx, 0x1c
call fcn.004014a0
push eax
call fcn.00425fe0
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x20]
xor ecx, ebp
call fcn.00407a6c
mov esp, ebp
pop ebp
ret 4