Function at 0x1004cfa0
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100a99b5
mov eax, dword fs:[0]
push eax
sub esp, 0x218
mov eax, dword [0x100dc008]
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 esi, ecx
mov edi, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
test edi, edi
je 0x1004d322
cmp word [edi], 0
je 0x1004d322
call fcn.10051c40
push 0x324
lea eax, [esi + 0x2c]
mov dword [esi + 0x20], 0
push 0
push eax
mov dword [esi + 0x24], 0
call fcn.1008b230
add esp, 0xc
mov dword [esi + 0x350], 0
mov ecx, edi
call fcn.1001cf40
test eax, eax
je 0x1004d0eb
push 0x100dd790
push 0xe0
call fcn.1007c010
add esp, 8
mov dword [ebp - 0x224], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x1004d053
mov ecx, eax
call fcn.1004cb40
jmp 0x1004d055
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [esi + 0x10], eax
test eax, eax
jne 0x1004d06d
mov eax, 0x8007000e
jmp 0x1004d327
push ecx
push edi
mov ecx, eax
call fcn.1001cf90
test eax, eax
js 0x1004d327
cmp eax, 1
je 0x1004d327
mov ecx, dword [esi + 0x10]
push 0x2e
push edi
mov eax, dword [ecx + 0xd8]
mov dword [esi + 0x358], eax
mov eax, dword [ecx + 0xdc]
mov dword [esi + 0x35c], eax
call fcn.1008b0dd
add esp, 8
test eax, eax
je 0x1004d0dd
push str..nrg
push eax
call fcn.1009801b
add esp, 8
test eax, eax
jne 0x1004d0dd
mov ecx, esi
call fcn.1004f3d0
test eax, eax
jns 0x1004d327
cmp eax, 0xe003200b
jne 0x1004d327
push 0
mov ecx, esi
call fcn.100506f0
jmp 0x1004d327
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.1008b230
add esp, 0xc
lea eax, [ebp - 0x218]
mov ecx, esi
push eax
push edi
call fcn.10050070
test eax, eax
js 0x1004d327
cmp eax, 1
je 0x1004d327
mov eax, dword [esi + 0x24]
cmp eax, 0xa
jne 0x1004d13d
push ebx
lea eax, [ebp - 0x218]
mov ecx, esi
push eax
call fcn.1004d350
jmp 0x1004d327
cmp eax, 5
jne 0x1004d180
cmp dword [esi + 0x354], 0
mov ecx, esi
mov dword [esi + 0x20], 0
mov dword [esi + 0x14], 0x930
mov dword [esi + 0x360], 0x930
je 0x1004d16f
call fcn.10050a80
jmp 0x1004d327
lea eax, [ebp - 0x218]
push eax
call fcn.10050990
jmp 0x1004d327
cmp eax, 6
jne 0x1004d1c3
cmp dword [esi + 0x354], 0
mov ecx, esi
mov dword [esi + 0x20], 0
mov dword [esi + 0x14], 0x930
mov dword [esi + 0x360], 0x930
je 0x1004d1b2
call fcn.10050fe0
jmp 0x1004d327
lea eax, [ebp - 0x218]
push eax
call fcn.10050dc0
jmp 0x1004d327
cmp eax, 7
jne 0x1004d206
cmp dword [esi + 0x354], 0
mov ecx, esi
mov dword [esi + 0x20], 0
mov dword [esi + 0x14], 0x930
mov dword [esi + 0x360], 0x930
je 0x1004d1f5
call fcn.10051460
jmp 0x1004d327
lea eax, [ebp - 0x218]
push eax
call fcn.100512d0
jmp 0x1004d327
cmp dword [esi + 0x354], 0
je 0x1004d242
cmp eax, 8
jne 0x1004d238
mov ecx, esi
mov dword [esi + 0x20], 0x2c
mov dword [esi + 0x14], 0x930
mov dword [esi + 0x360], 0x930
call fcn.10051970
jmp 0x1004d327
mov eax, 0xe0032004
jmp 0x1004d327
push 0
push 0
push 3
push 0
push 1
push connect
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [esi + 0xc], eax
cmp eax, 0xffffffff
jne 0x1004d270
call fcn.10015440
jmp 0x1004d327
mov ecx, dword [esi + 0x24]
cmp ecx, 2
jne 0x1004d291
cmp dword [esi + 0x28], 0
je 0x1004d285
xor eax, eax
jmp 0x1004d327
mov ecx, esi
call fcn.1004e9e0
jmp 0x1004d327
cmp ecx, 1
jne 0x1004d2ac
mov ecx, esi
call fcn.1004f3d0
test eax, eax
js 0x1004d327
cmp eax, 1
je 0x1004d327
jmp 0x1004d278
lea ecx, [ebp - 0x220]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
je 0x1004d266
cmp dword [esi + 0x350], 0
je 0x1004d2fe
cmp dword [esi + 0x24], 8
mov eax, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x21c]
jne 0x1004d2f5
add eax, 0xffffffd4
mov dword [esi + 0x360], 0x930
mov dword [ebp - 0x220], eax
adc ecx, 0xffffffff
mov dword [ebp - 0x21c], ecx
push ecx
push eax
mov ecx, esi
call fcn.1004fc20
mov eax, dword [ebp - 0x220]
mov ecx, esi
push dword [esi + 0xc]
mov dword [esi + 0x358], eax
mov eax, dword [ebp - 0x21c]
mov dword [esi + 0x35c], eax
call fcn.100506f0
jmp 0x1004d327
mov eax, 0x80070057
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.1007bfb0
mov esp, ebp
pop ebp
ret 8