Function at 0x4215c0
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push esi
mov esi, 1
add word [0x44d508], si
fld dword [0x44d420]
fld dword [0x44d4c0]
movzx eax, word [0x44d508]
movsx ecx, ax
mov dword [ebp - 4], ecx
push edi
fild dword [ebp - 4]
faddp st(1)
fsubp st(1)
fstp dword [0x44d420]
movzx edx, word [0x44d310]
imul edx, edx, 0x50698b1c
mov word [0x44d310], dx
fld dword [0x44d2a0]
movzx eax, word [0x44d1a4]
fsubr qword [0x4463c8]
add word [0x44d1a4], si
movsx ecx, ax
add ecx, 0x7567198
mov dword [ebp - 4], ecx
fild dword [ebp - 4]
fucompp
fnstsw ax
fld dword [0x44d2a0]
fld1
fsub st(1), st(0)
fxch st(1)
fstp dword [0x44d2a0]
test ah, 0x44
jp 0x421674
fld qword [0x44d058]
fistp qword [ebp - 8]
mov dx, word [ebp - 8]
mov word [0x44d0b4], dx
fadd qword [0x44d058]
fstp qword [0x44d058]
jmp 0x421676
fstp st(0)
mov eax, dword [ebp + 8]
push 0
push 0
push 3
push 0
push 0
push 0
push eax
call dword [0x44d8d8]
fld dword [0x44d150]
fsub qword [0x4463c0]
mov edi, eax
fcomp qword [0x4463b8]
fnstsw ax
test ah, 1
jne 0x4216d5
add dword [0x44d39c], esi
fld qword [0x44d540]
fsub qword [0x4463b0]
fld qword [0x44d038]
mov ecx, dword [0x44d39c]
mov dword [ebp - 4], ecx
fild dword [ebp - 4]
fsubp st(2)
fsubrp st(1)
fstp qword [0x44d038]
cmp edi, 0xffffffff
jne 0x4216f4
fld dword [0x44d1a0]
or eax, edi
fsub qword [0x4463a8]
pop edi
pop esi
fstp dword [0x44d1a0]
mov esp, ebp
pop ebp
ret
fld dword [0x44d478]
mov dx, word [0x44d270]
movsx eax, dx
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x10]
push ecx
fild dword [ebp - 4]
lea edx, [ebp - 0x18]
push edx
lea eax, [ebp - 0x20]
fsubp st(1)
push eax
push edi
fstp dword [0x44d478]
call dword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
jne 0x421777
fld qword [0x44d188]
mov ecx, dword [0x44d04c]
add ecx, 0x6e40d95f
mov dword [ebp - 4], ecx
fild dword [ebp - 4]
push edi
fsubp st(1)
fstp qword [0x44d188]
call dword [0x44d8d4]
mov dx, word [0x44d0b4]
mov ecx, dword [0x44d114]
movsx eax, dx
add eax, 0x8edf999d
add ecx, eax
pop edi
mov word [0x44d0b4], cx
or eax, 0xffffffff
pop esi
mov esp, ebp
pop ebp
ret
fld dword [0x44d2c8]
push 0
fld1
push 0x989680
fsub st(1), st(0)
mov edx, 0x2681
fxch st(1)
fstp dword [0x44d2c8]
fld dword [0x44d2c8]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc]
fstp qword [0x44d3e8]
add eax, 0x2ac18000
adc ecx, 0xfe624e21
push ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], ecx
mov word [0x44d434], dx
push eax
call fcn.00441530
fld qword [0x44d008]
fsub qword [0x4463a0]
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xc], edx
fstp qword [0x44d008]
mov ecx, dword [ebp - 0xc]
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], ecx
fld qword [0x44d178]
mov edx, dword [0x44d054]
fadd qword [0x446398]
mov dword [ebp - 4], edx
fild dword [ebp - 4]
push 0
push edi
fmulp st(1)
fistp qword [ebp - 8]
mov eax, dword [ebp - 8]
mov dword [0x44d054], eax
fsubr qword [0x44d178]
fstp qword [0x44d178]
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [esi + 0x14], eax
mov ecx, dword [0x44d04c]
mov dword [0x44d154], ecx
inc dword [0x44d04c]
push edi
call dword [0x44d8d4]
fld dword [0x44d08c]
fmul qword [0x446390]
fstp dword [0x44d08c]
cmp dword [esi + 0x14], 0xffffffff
jne 0x421887
mov dx, word [0x44d2e0]
movsx eax, dx
mov dword [ebp - 4], eax
pop edi
pop esi
fild dword [ebp - 4]
fadd qword [0x44d138]
fstp qword [0x44d138]
dec word [0x44d2e0]
or eax, 0xffffffff
mov esp, ebp
pop ebp
ret
fld dword [0x44d0b0]
pop edi
fld dword [0x44d2a4]
xor eax, eax
fsub qword [0x446388]
pop esi
fsubp st(1)
fstp dword [0x44d0b0]
mov esp, ebp
pop ebp
ret