Function at 0x48d480
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x532fd6
mov eax, dword fs:[0]
push eax
sub esp, 0x260
mov eax, dword [0x5c6150]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x26c], ecx
mov ebx, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
push 0x360
call fcn.004d7188
mov esi, eax
mov ecx, esi
mov dword [ebp - 0x268], esi
call fcn.0045c820
mov dword [esi + method.t_byteStreamRead.virtual_0], vtable.t_byteStreamRead.0
mov ecx, esi
push 0
push edi
mov dword [esi], vtable.t_fileRead.1.0
mov dword [esi + method.t_fileRead.virtual_0], vtable.t_fileRead.0
mov dword [esi + 0x358], 0
mov dword [esi + 0x35c], 0
push ebx
mov byte [esi + 0x350], 1
call fcn.0045c980
test al, al
je 0x48d54f
lea eax, [ebp - 0x268]
mov dword [ebp - 0x268], 0
push eax
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
cmp edi, 0xffffffff
jne 0x48d544
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x48d544
xor edi, edi
mov dword [esi + 0x358], edi
jmp 0x48d6bc
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax]
push 0x360
call fcn.004d7188
mov esi, eax
mov ecx, esi
mov dword [ebp - 0x268], esi
call fcn.0045c820
push 0
push 0
push 0
push 0
mov dword [esi + method.t_byteStreamRead.virtual_0], vtable.t_byteStreamRead.0
lea ecx, [ebp - 0x138]
push 0
push str..sgbak
mov dword [esi], vtable.t_fileRead.1.0
mov dword [esi + method.t_fileRead.virtual_0], vtable.t_fileRead.0
mov dword [esi + 0x358], 0
mov dword [esi + 0x35c], 0
call fcn.00451610
lea eax, [ebp - 0x138]
mov dword [ebp - 4], 0
push eax
lea eax, [ebp - 0x260]
mov ecx, edi
push eax
call fcn.00451d20
push 0
push eax
push ebx
mov ecx, esi
mov byte [ebp - 4], 1
call fcn.0045c980
test al, al
jne 0x48d5f0
mov byte [ebp - 0x261], 1
jmp 0x48d62a
lea eax, [ebp - 0x268]
mov dword [ebp - 0x268], 0
push eax
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
cmp edi, 0xffffffff
jne 0x48d61d
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x48d61d
xor edi, edi
mov dword [esi + 0x358], edi
mov byte [ebp - 0x261], 0
cmp byte [ebp - 0x144], 0
mov dword [ebp - method.t_str.virtual_0], vtable.t_str.0
jne 0x48d656
mov eax, dword [ebp - 0x258]
lea ecx, [ebp - 0x254]
cmp eax, ecx
je 0x48d656
push eax
call fcn.004e1b56
add esp, 4
mov dword [ebp - 4], 0xffffffff
cmp byte [ebp - 0x1c], 0
mov dword [ebp - 0x138], vtable.t_str.0
jne 0x48d686
mov eax, dword [ebp - 0x130]
lea ecx, [ebp - 0x12c]
cmp eax, ecx
je 0x48d686
push eax
call fcn.004e1b56
add esp, 4
cmp byte [ebp - 0x261], 0
je 0x48d6b5
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax]
mov ecx, ebx
call fcn.00450c80
push 0x597610
push 0x5971f4
push eax
call fcn.00450580
add esp, 0xc
xor al, al
jmp 0x48d726
mov ecx, ebx
call fcn.00450cd0
lea eax, [ebp - 0x268]
mov dword [ebp - 0x268], 0
push eax
push dword [esi + 4]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
cmp edi, 0xffffffff
jne 0x48d6e9
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x48d6e9
xor edi, edi
mov eax, dword [ebp - 0x26c]
push edi
mov dword [eax + 8], edi
call fcn.004e1b5b
mov ecx, dword [ebp - 0x26c]
add esp, 4
push dword [ecx + 8]
mov dword [ecx + 4], eax
lea ecx, [esi + 0x354]
push eax
push ebx
call fcn.00469aa0
test al, al
mov ecx, esi
mov eax, dword [esi]
push 1
je 0x48d695
call dword [eax]
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004d6cfd
mov esp, ebp
pop ebp
ret 0x14