Function at 0x590e7b
Capabilities:
Get disk size
Timestomp file

Disassembly:
push 0x258
mov eax, 0x6824ca
call fcn.005f14c3
mov edi, ecx
mov eax, dword [ebp + 0x10]
lea ebx, [edi + 0x14]
mov esi, dword [ebp + 8]
mov ecx, ebx
mov dword [ebp - 0x244], eax
call fcn.00403c51
xor eax, eax
test dword [ebp + 0xc], 0x1000
mov dword [ebp - 0x23c], eax
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x228], eax
je 0x590fdb
push eax
lea eax, [ebp - 0x23c]
push eax
push esi
call fcn.00422690
test eax, eax
je 0x590fdb
lea ecx, [ebp - 0x240]
call fcn.004026b1
and dword [ebp - 4], 0
lea eax, [ebp - 0x240]
push eax
push esi
call fcn.0048b6d2
lea eax, [ebp - 0x260]
xor ebx, ebx
push eax
lea eax, [ebp - 0x258]
push eax
lea eax, [ebp - 0x254]
push eax
lea eax, [ebp - 0x250]
push eax
push dword [ebp - 0x240]
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceA]
test eax, eax
je 0x590f49
mov ebx, dword [ebp - 0x250]
imul ebx, dword [ebp - 0x254]
imul ebx, dword [ebp - 0x258]
mov eax, dword [ebp - 0x224]
mov ecx, dword [ebp - 0x220]
shld ecx, eax, 1
add eax, eax
mov dword [ebp - 0x248], eax
mov eax, ebx
cdq
cmp edx, ecx
jb 0x590fc6
ja 0x590f72
cmp eax, dword [ebp - 0x248]
jbe 0x590fc6
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x114]
push eax
push 0x104
push esi
call dword [sym.imp.KERNEL32.dll_GetFullPathNameA]
mov eax, dword [ebp - 0x248]
lea ebx, [edi + 0x14]
mov ecx, ebx
mov byte [eax], 0
mov eax, 0x105
push eax
push eax
call fcn.004061cf
push eax
lea eax, [ebp - 0x114]
push 0x6ba260
push eax
call fcn.0058f8c4
add esp, 0x10
mov ecx, ebx
push 0xffffffffffffffff
call fcn.0040645e
jmp 0x590fc9
lea ebx, [edi + 0x14]
mov ecx, dword [ebp - 0x240]
or dword [ebp - 4], 0xffffffff
lea ecx, [ecx - 0x10]
call fcn.00406421
mov eax, dword [ebx]
cmp dword [eax - 0xc], 0
je 0x5910cc
push dword [ebp - 0x244]
mov ecx, edi
push dword [ebp + 0xc]
push eax
call fcn.0048be2d
test eax, eax
je 0x5910cc
test esi, esi
jne 0x591008
xor eax, eax
jmp 0x59100f
push esi
call fcn.0060fe00
pop ecx
push eax
push esi
lea ecx, [edi + 0xc]
call fcn.004065bc
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x264]
push eax
push dword [edi + 4]
call dword [sym.imp.KERNEL32.dll_GetFileTime]
test eax, eax
je 0x59106e
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp - 0x23c]
push eax
call fcn.0042200d
pop ecx
pop ecx
lea eax, [ebp - 0x24c]
push eax
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0x264]
push eax
push dword [edi + 4]
call dword [sym.imp.KERNEL32.dll_SetFileTime]
xor ecx, ecx
lea eax, [ebp - 0x240]
push eax
push ecx
push ecx
push 4
push esi
mov dword [ebp - 0x240], ecx
call dword [sym.imp.ADVAPI32.dll_GetFileSecurityA]
test eax, eax
je 0x5910c7
push dword [ebp - 0x240]
call fcn.004389fd
pop ecx
mov edi, eax
lea eax, [ebp - 0x240]
push eax
push dword [ebp - 0x240]
push edi
push 4
push esi
call dword [sym.imp.ADVAPI32.dll_GetFileSecurityA]
test eax, eax
je 0x5910c0
push edi
push 4
push dword [ebx]
call dword [sym.imp.ADVAPI32.dll_SetFileSecurityA]
push edi
call fcn.00438a06
pop ecx
xor eax, eax
inc eax
jmp 0x5910e4
mov ecx, ebx
call fcn.00403c51
push dword [ebp - 0x244]
mov ecx, edi
push dword [ebp + 0xc]
push esi
call fcn.0048be2d
call fcn.005f1472
ret 0xc