Function at 0x1509ed00
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x15103cea
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x14
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov ebx, ecx
mov dword [ebp - 4], 0
mov edi, dword [ebp + 8]
cmp dword [sym.Core.dll_int_GUnicodeOS], 0
je 0x1509ed51
push 0
push 0x80
push 3
push 0
push 1
push 0x80000000
push edi
call dword [sym.imp.kernel32.dll_CreateFileW]
jmp 0x1509eda5
push edi
call sym.Core.dll_int___cdecl_winGetSizeANSI_wchar_t_const__
add esp, 4
test eax, eax
jne 0x1509ed62
xor esi, esi
jmp 0x1509ed7b
push edi
call sym.Core.dll_int___cdecl_winGetSizeANSI_wchar_t_const__
add esp, 4
add eax, 7
and eax, 0xfffffff8
call fcn.15097370
mov dword [ebp - 0x10], esp
mov esi, esp
push 0
push 0x80
push 3
push 0
push 1
push 0x80000000
push edi
call sym.Core.dll_int___cdecl_winGetSizeANSI_wchar_t_const__
push eax
push edi
push esi
call sym.Core.dll_char____cdecl_winToANSI_char___wchar_t_const___int_
add esp, 0x10
push eax
call dword [sym.imp.kernel32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x1509eddd
test byte [ebp + 0xc], 1
je 0x1509edd6
push edi
cmp dword [sym.Core.dll_int_GLanguageType], 0
jne 0x1509edc3
push 0x15118d98
jmp 0x1509edc8
push 0x15118e00
push dword [sym.Core.dll_class_FOutputDeviceError__GError]
call sym.Core.dll_public:_void___cdecl_FOutputDevice::Logf_wchar_t_const__
add esp, 0xc
xor eax, eax
jmp 0x1509eec7
mov edx, 0x15118e94
mov ecx, 0x4c
call fcn.15031720
mov dword [ebp + 8], eax
test eax, eax
je 0x1509ee0e
push edi
push 0
push esi
call dword [sym.imp.kernel32.dll_GetFileSize]
push eax
push dword [ebp + 0x10]
push esi
mov ecx, dword [ebp + 8]
call fcn.15030a80
mov esi, eax
jmp 0x1509ee10
xor esi, esi
push edi
push 0x15118ebc
call fcn.1505453a
add esp, 8
test eax, eax
jne 0x1509eedd
test esi, esi
je 0x1509ee30
mov eax, dword [esi + 0x40]
mov dword [ebx + 4], eax
cmp dword [ebx + 4], 0x19d
je 0x1509ee58
cmp dword [sym.Core.dll_int_GIsUCC], 0
jne 0x1509ee58
push 0x15118ed0
push 0
call sym.Core.dll_int___cdecl_appMsgf_int__wchar_t_const__const
push 0
call sym.Core.dll_void___cdecl_appRequestExit_int_
add esp, 0xc
cmp dword [esi + 0x40], 0x19d
jne 0x1509efb3
mov dword [ebp + 8], 0x15116c9c
mov dword [ebp + 8], sym.Core.dll_const_FL2RSACodec::vftable
mov byte [ebp - 4], 1
mov edx, 0x15118f24
mov ecx, 0x4c
call fcn.15031720
mov edi, eax
test edi, edi
je 0x1509ee9f
mov ecx, esi
call fcn.15030dc0
push eax
mov ecx, edi
call fcn.15030180
mov edi, eax
jmp 0x1509eea1
xor edi, edi
push edi
push esi
lea ecx, [ebp + 8]
call sym.Core.dll_public_virtual:_int___thiscall_FL2RSACodec::Decode_class_FArchive___class_FArchive__
mov ecx, edi
call fcn.15030320
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
mov byte [ebp - 4], 0
mov dword [ebp + 8], sym.Core.dll_const_FL2RSACodec::vftable
mov eax, edi
lea esp, [ebp - 0x2c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push edi
push 0x151181a8
call fcn.1505453a
add esp, 8
test eax, eax
jne 0x1509ef97
test esi, esi
je 0x1509eefd
mov eax, dword [esi + 0x40]
mov dword [ebx + 8], eax
cmp dword [ebx + 8], 0x19d
je 0x1509ef25
cmp dword [sym.Core.dll_int_GIsUCC], 0
jne 0x1509ef25
push 0x15118f40
push 0
call sym.Core.dll_int___cdecl_appMsgf_int__wchar_t_const__const
push 0
call sym.Core.dll_void___cdecl_appRequestExit_int_
add esp, 0xc
cmp dword [esi + 0x40], 0x19d
jne 0x1509efb3
mov dword [ebp + 0xc], 0x15116c9c
mov dword [ebp + 0xc], sym.Core.dll_const_FL2RSACodec::vftable
mov byte [ebp - 4], 2
mov edx, 0x15118f24
mov ecx, 0x4c
call fcn.15031720
mov edi, eax
test edi, edi
je 0x1509ef6c
mov ecx, esi
call fcn.15030dc0
push eax
mov ecx, edi
call fcn.15030180
mov edi, eax
jmp 0x1509ef6e
xor edi, edi
push edi
push esi
lea ecx, [ebp + 0xc]
call sym.Core.dll_public_virtual:_int___thiscall_FL2RSACodec::Decode_class_FArchive___class_FArchive__
mov ecx, edi
call fcn.15030320
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
mov byte [ebp - 4], 0
mov dword [ebp + 0xc], sym.Core.dll_const_FL2RSACodec::vftable
jmp 0x1509eec5
push edi
push 0x15118f98
call fcn.1505453a
add esp, 8
test eax, eax
jne 0x1509efba
test esi, esi
je 0x1509efb3
mov eax, dword [esi + 0x40]
mov dword [ebx + 0xc], eax
mov eax, esi
jmp 0x1509eec7
push 0x15118fb0
push edi
call sym.Core.dll_wchar_t____cdecl_appStristr_wchar_t_const___wchar_t_const__
add esp, 8
test eax, eax
je 0x1509f020
test esi, esi
je 0x1509efb3
cmp dword [esi + 0x40], 0x79
je 0x1509efb3
cmp dword [sym.Core.dll_int_GIsUCC], 0
jne 0x1509efb3
cmp dword [sym.Core.dll_int_GL2ReplayMode], 0
je 0x1509eff1
cmp dword [sym.Core.dll_int_GL2ReplayLoadResource], 0
jne 0x1509efb3
push 0x15118fbc
push edi
call sym.Core.dll_wchar_t____cdecl_appStristr_wchar_t_const___wchar_t_const__
add esp, 8
test eax, eax
jne 0x1509efb3
push edi
push 0x15118fd0
push eax
call sym.Core.dll_int___cdecl_appMsgf_int__wchar_t_const__const
push 0
call sym.Core.dll_void___cdecl_appRequestExit_int_
add esp, 0x10
mov eax, esi
jmp 0x1509eec7
push 0x15119034
push edi
call sym.Core.dll_wchar_t____cdecl_appStristr_wchar_t_const___wchar_t_const__
add esp, 8
test eax, eax
je 0x1509efb3
cmp dword [esi + 0x40], 0x137
jne 0x1509efb3
mov edx, 0x15118f24
mov ecx, 0x4c
call fcn.15031720
mov edi, eax
test edi, edi
je 0x1509f067
mov ecx, esi
call fcn.15030dc0
push eax
mov ecx, edi
call fcn.15030180
mov edi, eax
jmp 0x1509f069
xor edi, edi
mov ecx, dword [sym.Core.dll_class_FCodec__GL2DESCodec]
mov eax, dword [ecx]
push edi
push esi
call dword [eax + 0x10]
mov ecx, edi
call fcn.15030320
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
jmp 0x1509eec5