Function at 0x409790
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2dc
push esi
push edi
lea edi, [ebp - 0x2dc]
mov ecx, 0xb7
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [0x4c3500]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x4c71d8], 0
je 0x409810
mov esi, esp
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
push 0x4a6a54
push 0x4c71e0
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
cmp esi, esp
call fcn.004487d0
mov esi, esp
push 0x40004
push 0
push 0x4c71e0
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp esi, esp
call fcn.004487d0
cmp eax, 6
jne 0x40980b
int3
jmp 0x409a5a
cmp dword [ebp + 0x10], 0
je 0x409838
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
push 0x4a6a80
lea eax, [ebp - 0x108]
push eax
call fcn.0044a530
add esp, 0x14
jmp 0x409854
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
push 0x4a6a98
lea eax, [ebp - 0x108]
push eax
call fcn.0044a530
add esp, 0x10
mov byte [ebp - 0x228], 0
push 0xff
push 0
lea ecx, [ebp - 0x227]
push ecx
call fcn.00446570
add esp, 0xc
mov esi, esp
lea edx, [ebp - 0x120]
push edx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
cmp esi, esp
call fcn.004487d0
movzx eax, word [ebp - 0x11a]
push eax
movzx ecx, word [ebp - 0x11e]
push ecx
movzx edx, word [ebp - 0x120]
push edx
push str.._Log_Assert__4d_02d_02d.txt
lea eax, [ebp - 0x228]
push eax
call fcn.0044a530
add esp, 0x14
cmp dword [0x4c72f0], 0
jne 0x409a5a
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x244], 0
mov byte [ebp - 0x2d0], 0
push 0x87
push 0
lea ecx, [ebp - 0x2cf]
push ecx
call fcn.00446570
add esp, 0xc
mov esi, esp
push 0
lea edx, [ebp - 0x2d0]
push edx
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.KERNEL32.dll_OpenFile]
cmp esi, esp
call fcn.004487d0
mov dword [ebp - 0x244], eax
cmp dword [ebp - 0x244], 0xffffffff
jne 0x4099a1
mov esi, esp
mov ecx, dword [ebp - 0x244]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004487d0
push 0x4a6ac8
lea edx, [ebp - 0x228]
push edx
call fcn.0044a290
add esp, 8
mov dword [ebp - 0x2d8], eax
cmp dword [ebp - 0x2d8], 0
je 0x40999c
call fcn.00409af0
push eax
lea eax, [ebp - 0x108]
push eax
push 0x4a6acc
mov ecx, dword [ebp - 0x2d8]
push ecx
call fcn.00447050
add esp, 0x10
mov edx, dword [ebp - 0x2d8]
push edx
call fcn.00449f20
add esp, 4
jmp 0x409a5a
mov esi, esp
lea eax, [ebp - 0x23c]
push eax
mov ecx, dword [ebp - 0x244]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
cmp esi, esp
call fcn.004487d0
mov dword [ebp - 0x234], eax
mov edx, dword [ebp - 0x23c]
shl edx, 0x10
or edx, dword [ebp - 0x234]
mov dword [ebp - 0x230], edx
mov esi, esp
mov eax, dword [ebp - 0x244]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, esp
call fcn.004487d0
cmp dword [ebp - 0x230], 0xf4240
ja 0x409a50
push 0x4a6ad8
lea ecx, [ebp - 0x228]
push ecx
call fcn.0044a290
add esp, 8
mov dword [ebp - 0x2dc], eax
cmp dword [ebp - 0x2dc], 0
je 0x409a4e
call fcn.00409af0
push eax
lea edx, [ebp - 0x108]
push edx
push str._stime:_s_n
mov eax, dword [ebp - 0x2dc]
push eax
call fcn.00447050
add esp, 0x10
mov ecx, dword [ebp - 0x2dc]
push ecx
call fcn.00449f20
add esp, 4
jmp 0x409a5a
mov dword [0x4c72f0], 1
push edx
mov ecx, ebp
push eax
lea edx, [0x409a88]
call fcn.00448770
pop eax
pop edx
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00448800
add esp, 0x2dc
cmp ebp, esp
call fcn.004487d0
mov esp, ebp
pop ebp
ret