Function at 0x4f84c0
Capabilities:
Delete file

Disassembly:
sub esp, 0x28
push esi
mov esi, ecx
push edi
mov eax, dword [esi + 0x520]
test eax, eax
je 0x4f85b2
lea edi, [esi + 0x210]
push 0
push edi
call fcn.0055b320
add esp, 8
test eax, eax
je 0x4f84f5
pop edi
mov eax, 0x12
pop esi
add esp, 0x28
ret
lea eax, [esi + 8]
push 0
push eax
call fcn.0055b320
add esp, 8
test eax, eax
je 0x4f8512
pop edi
mov eax, 0x12
pop esi
add esp, 0x28
ret
mov ecx, esi
call fcn.004f9490
test eax, eax
jne 0x4f8913
mov ecx, esi
call fcn.004f98c0
test eax, eax
jne 0x4f8913
lea ecx, [esp + 0xc]
push ecx
push edi
call fcn.0055eddb
add esp, 8
test eax, eax
je 0x4f854d
pop edi
mov eax, 4
pop esi
add esp, 0x28
ret
lea edx, [esi + 0x548]
mov ecx, esi
push edx
mov dword [esi + 0x558], 0
call fcn.004f9bf0
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esi + 0x534], eax
mov eax, dword [esi + 0x55c]
sub ecx, eax
sub edx, eax
push ecx
push edx
mov ecx, esi
call fcn.004f9ab0
mov dword [esi + 0x52c], eax
lea eax, [esi + 0x418]
push 0
push eax
call fcn.0055b320
add esp, 8
mov dword [esi + 0x520], 1
neg eax
sbb eax, eax
inc eax
mov dword [esi + 0x51c], eax
mov eax, dword [esi + 0x51c]
test eax, eax
jne 0x4f87b9
lea ecx, [esi + 0x418]
push 0x66bf00
push ecx
call fcn.0055bc33
mov edi, eax
add esp, 8
test edi, edi
je 0x4f87b9
mov edx, dword [0x6811f8]
push edx
push str.GID:__lu_n
push edi
call fcn.0055bbc6
add esp, 0xc
lea eax, [esi + 8]
push eax
push str.KeyFile:__s_n
push edi
call fcn.0055bbc6
add esp, 0xc
lea ecx, [esi + 0x10c]
push ecx
push str.UsrFile:__s_n
push edi
call fcn.0055bbc6
add esp, 0xc
lea edx, [esi + 0x210]
push edx
push str.RtmFile:__s_n
push edi
call fcn.0055bbc6
add esp, 0xc
lea eax, [esi + 0x314]
push eax
push str.TmpFile:__s_n
push edi
call fcn.0055bbc6
mov ecx, dword [esi + 0x524]
add esp, 0xc
push ecx
push str.LevelNeeded:______________lu_n
push edi
call fcn.0055bbc6
mov edx, dword [esi + 0x528]
add esp, 0xc
push edx
push str.SessionTimeOut:___________x_n
push edi
call fcn.0055bbc6
mov eax, dword [esi + 0x530]
add esp, 0xc
push eax
push str.ThisComputerNameHash:_____x_n
push edi
call fcn.0055bbc6
mov ecx, dword [esi + 0x534]
add esp, 0xc
push ecx
push str.KeyComputerNameHash:______x_n
push edi
call fcn.0055bbc6
add esp, 0xc
lea edx, [esi + 0x538]
push edx
push str.ThisComputerName:_________s_n
push edi
call fcn.0055bbc6
add esp, 0xc
lea eax, [esi + 0x548]
push eax
push str.KeyComputerName:__________s_n
push edi
call fcn.0055bbc6
mov ecx, dword [esi + 0x578]
add esp, 0xc
push ecx
push str.LicenseComputerNameHash:__x_n
push edi
call fcn.0055bbc6
mov edx, dword [esi + 0x558]
add esp, 0xc
push edx
push str.LicenseDurationDaysLeft:__lu_n
push edi
call fcn.0055bbc6
mov eax, dword [esi + 0x564]
add esp, 0xc
push eax
push str.LicenseType:______________lu_n
push edi
call fcn.0055bbc6
mov ecx, dword [esi + 0x568]
add esp, 0xc
push ecx
push str.LicenseLevel:_____________lu_n
push edi
call fcn.0055bbc6
mov edx, dword [esi + 0x56c]
add esp, 0xc
push edx
push str.LicenseConcurrentUsers:___lu_n
push edi
call fcn.0055bbc6
mov eax, dword [esi + 0x570]
add esp, 0xc
push eax
push str.LicenseDurationDays:______lu_n
push edi
call fcn.0055bbc6
mov ecx, dword [esp + 0x38]
add esp, 0xc
push ecx
push str.StatCreate:_______________x_n
push edi
call fcn.0055bbc6
mov edx, dword [esp + 0x34]
add esp, 0xc
push edx
push str.StatMod:__________________x_n
push edi
call fcn.0055bbc6
mov eax, dword [esi + 0x55c]
add esp, 0xc
push eax
push str.DiffToUTC:________________x_n
push edi
call fcn.0055bbc6
mov ecx, dword [esi + 0x574]
add esp, 0xc
push ecx
push str.LicenseDateTime:__________x_n
push edi
call fcn.0055bbc6
mov edx, dword [esi + 0x52c]
add esp, 0xc
push edx
push str.KeyFileCreateTime:________x_n
push edi
call fcn.0055bbc6
add esp, 0xc
push 0x66bc90
push edi
call fcn.0055bbc6
push edi
call fcn.0055bb49
add esp, 0xc
mov eax, dword [esi + 0x568]
mov ecx, dword [esi + 0x524]
cmp eax, ecx
jle 0x4f87d4
pop edi
mov eax, 7
pop esi
add esp, 0x28
ret
mov eax, dword [esi + 0x574]
mov ecx, dword [esi + 0x52c]
cmp eax, ecx
je 0x4f8807
sub eax, ecx
mov ecx, dword [esi + 0x560]
cdq
xor eax, edx
sub eax, edx
cmp eax, ecx
je 0x4f87fc
cmp eax, 0xe10
jne 0x4f8807
pop edi
mov eax, 8
pop esi
add esp, 0x28
ret
mov eax, dword [esi + 0x578]
mov ecx, dword [esi + 0x534]
cmp eax, ecx
je 0x4f8822
pop edi
mov eax, 9
pop esi
add esp, 0x28
ret
mov ecx, dword [esi + 0x564]
test ecx, ecx
jne 0x4f883f
cmp eax, dword [esi + 0x530]
jne 0x4f883f
pop edi
mov eax, 0xa
pop esi
add esp, 0x28
ret
mov eax, dword [esi + 0x570]
mov edi, 0xff
cmp eax, edi
je 0x4f88fe
lea ecx, [esp + 8]
push ecx
mov ecx, esi
call fcn.004f9a00
test eax, eax
je 0x4f8913
mov ecx, dword [esp + 8]
mov eax, dword [esi + 0x574]
sub ecx, eax
jns 0x4f889e
mov edi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea edx, [esi + 0x210]
push edx
call edi
lea eax, [esi + 8]
push eax
call edi
mov dword [esi + 0x520], 0
pop edi
mov eax, 0xd
pop esi
add esp, 0x28
ret
mov eax, dword [esi + 0x570]
lea eax, [eax + eax*2]
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea eax, [eax + eax*8]
shl eax, 7
cmp ecx, eax
jle 0x4f88e1
mov edi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [esi + 0x210]
push ecx
call edi
lea edx, [esi + 8]
push edx
call edi
mov dword [esi + 0x520], 0
pop edi
mov eax, 0xe
pop esi
add esp, 0x28
ret
sub eax, ecx
mov ecx, eax
mov eax, 0xc22e4507
imul ecx
add edx, ecx
sar edx, 0x10
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [esi + 0x558], edx
cmp dword [esi + 0x56c], edi
je 0x4f8911
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 4]
test eax, eax
je 0x4f8913
xor eax, eax
pop edi
pop esi
add esp, 0x28
ret