Function at 0x44f312
Capabilities:
Check if file exists
Delete file
Enumerate processes

Disassembly:
push 0x2ec
mov eax, 0x4d193e
call fcn.004a9f73
mov dword [ebp - 0x2f0], ecx
push str.CGameDesktopShellLink::DoAskCreateIcon_In
push ecx
call fcn.0044d523
pop ecx
push eax
call fcn.0044d561
pop ecx
pop ecx
xor ebx, ebx
or edi, 0xffffffff
push 0xf
mov esi, ebx
mov dword [ebp - 0x30], ebx
pop eax
mov dword [ebp - 0x2f8], esi
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x40], bl
mov dword [ebp - 4], ebx
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], ebx
mov byte [ebp - 0x58], bl
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 1
call fcn.00450d1e
mov byte [ebp - 4], 2
call fcn.004517f1
push ebx
push 2
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x2f4], edi
mov dword [ebp - 0x2e8], 0x128
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov ebx, eax
cmp ebx, edi
jne 0x44f3a1
mov eax, edi
jmp 0x44f3e1
lea eax, [ebp - 0x2e8]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_Process32First]
test eax, eax
je 0x44f3d4
mov esi, edi
lea eax, [ebp - 0x2e8]
inc esi
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_Process32Next]
test eax, eax
jne 0x44f3b5
mov dword [ebp - 0x2f4], esi
mov esi, dword [ebp - 0x2f8]
push ebx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x2f4]
mov dword [ebp - 0x120], eax
lea eax, [ebp - 0x104]
push eax
call fcn.0044fd47
lea eax, [ebp - 0x11c]
push eax
call fcn.00451826
lea ecx, [ebp - 0x160]
call fcn.00450754
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x160]
test eax, eax
je 0x44f424
xor esi, esi
mov edi, eax
inc esi
jmp 0x44f73f
call fcn.00450aea
test al, al
jne 0x44f435
push 2
pop esi
jmp 0x44f739
call fcn.004365ba
push eax
push str.LastAskedDay
push str.GameLink
push ecx
call fcn.0044a20d
pop ecx
mov ecx, eax
call fcn.0044a637
mov ecx, dword [ebp - 0xfc]
lea eax, [ecx - 1]
cmp eax, 0x16b
ja 0x44f47c
push ecx
push str.AskInterval
push str.GameLink
push ecx
call fcn.0044a20d
pop ecx
mov ecx, eax
call fcn.0044a637
cmp dword [ebp - 0xf8], 0
jne 0x44f4b7
xor ebx, ebx
push ebx
push str.CGameDesktopShellLink::DoAskCreateIcon_out_Excute:_d
call fcn.0044d523
push eax
call fcn.0044d561
add esp, 0xc
lea ecx, [ebp - 0x160]
call fcn.00450dd2
push ebx
push 1
lea ecx, [ebp - 0x58]
call fcn.00404b60
push ebx
jmp 0x44f7e9
mov eax, dword [ebp - 0xf0]
sub eax, dword [ebp - 0xf4]
sar eax, 4
cmp eax, 1
jae 0x44f4d2
push 8
jmp 0x44f42f
lea ecx, [ebp - 0xe8]
call fcn.00450508
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xe8]
push dword [ebp - 0xf4]
call fcn.00450593
test al, al
je 0x44f6fa
lea ecx, [ebp - 0xe8]
call fcn.0045063b
test al, al
je 0x44f6fa
cmp dword [ebp - 0xb0], 0x10
lea eax, [ebp - 0xc4]
cmovae eax, dword [ebp - 0xc4]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00451770
mov byte [ebp - 4], 4
cmp dword [ebp - 0x7c], 0
jne 0x44f55f
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, edi
je 0x44f55f
push 5
pop esi
push 0
push 1
lea ecx, [ebp - 0x28]
call fcn.00404b60
jmp 0x44f6fd
cmp dword [ebp - 0x78], 0
mov byte [ebp - 0x2e9], 0
jne 0x44f596
lea eax, [ebp - 0x2e9]
push eax
lea eax, [ebp - 0xc4]
push eax
call fcn.0044ff68
test al, al
je 0x44f596
cmp byte [ebp - 0x2e9], 0
jne 0x44f592
cmp dword [ebp - 0x7c], 0
jne 0x44f596
push 0xa
jmp 0x44f54d
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0xac]
push eax
call fcn.00450168
test eax, eax
jne 0x44f5ae
push 6
jmp 0x44f54d
mov ecx, dword [ebp - 0x2f0]
call fcn.0045c7a2
mov edx, dword [ebp - 0x2f0]
lea eax, [ebp - 0xc4]
push eax
lea ecx, [ebp - 0x1c0]
call fcn.00447bba
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x70]
mov edx, eax
mov dword [esp], str..ico
call fcn.00403ba6
pop ecx
push 0
push 1
lea ecx, [ebp - 0x1c0]
mov byte [ebp - 4], 7
call fcn.00404b60
cmp dword [ebp - 0x5c], 0x10
lea eax, [ebp - 0x70]
cmovae eax, dword [ebp - 0x70]
push eax
call ebx
cmp dword [ebp - 0x5c], 0x10
lea ecx, [ebp - 0x70]
push 1
cmovae ecx, dword [ebp - 0x70]
lea eax, [ebp - 0x40]
cmp dword [ebp - 0x2c], 0x10
push ecx
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x44f640
push 0xc
pop esi
push 0
push 1
lea ecx, [ebp - 0x70]
call fcn.00404b60
jmp 0x44f54e
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call ebx
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x94]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004519cb
test eax, eax
je 0x44f6cf
xor ebx, ebx
lea ecx, [ebp - 0x70]
xor esi, esi
push ebx
inc esi
push esi
call fcn.00404b60
push ebx
push esi
lea ecx, [ebp - 0x28]
call fcn.00404b60
push ebx
push esi
lea ecx, [ebp - 0x94]
call fcn.00404b60
push ebx
push esi
lea ecx, [ebp - 0xac]
call fcn.00404b60
push ebx
push esi
lea ecx, [ebp - 0xc4]
call fcn.00404b60
push ebx
push esi
lea ecx, [ebp - 0xe0]
call fcn.00404b60
lea ecx, [ebp - 0x160]
call fcn.00450dd2
push ebx
push esi
lea ecx, [ebp - 0x58]
call fcn.00404b60
push ebx
push esi
jmp 0x44f7eb
cmp dword [ebp - 0x14], 0x10
lea ecx, [ebp - 0x28]
lea eax, [ebp - 0xc4]
cmovae ecx, dword [ebp - 0x28]
cmp dword [ebp - 0xb0], 0x10
push ecx
cmovae eax, dword [ebp - 0xc4]
push eax
call fcn.0044f830
jmp 0x44f62f
push 9
pop esi
push 0
push 1
lea ecx, [ebp - 0x94]
call fcn.00404b60
push 0
push 1
lea ecx, [ebp - 0xac]
call fcn.00404b60
push 0
push 1
lea ecx, [ebp - 0xc4]
call fcn.00404b60
push 0
push 1
lea ecx, [ebp - 0xe0]
call fcn.00404b60
lea ecx, [ebp - 0x160]
call fcn.00450dd2
push 0
push 1
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0
call fcn.00404b60
push edi
push esi
push str.CGameDesktopShellLink::DoAskCreateIcon_out_et:_d__ec:_d
push ecx
call fcn.0044d523
pop ecx
push eax
call fcn.0044d561
add esp, 0x10
lea ecx, [ebp - 0x1a8]
call fcn.0045122e
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1a8]
test esi, esi
mov dword [ebp - 0x164], esi
mov dword [ebp - 0x168], edi
sete byte [ebp - 0x16c]
call fcn.00450754
cmp dword [ebp - 0x2c], 0x10
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsA]
test eax, eax
je 0x44f7be
cmp dword [ebp - 0x2c], 0x10
lea eax, [ebp - 0x40]
cmovae eax, dword [ebp - 0x40]
push eax
call ebx
push str.CGameDesktopShellLink::DoAskCreateIcon_Out
push ecx
call fcn.0044d523
pop ecx
push eax
call fcn.0044d561
pop ecx
pop ecx
lea ecx, [ebp - 0x1a8]
mov dword [ebp - method.CGDSCreateRetPackage.virtual_0], vtable.CGDSCreateRetPackage.0
call fcn.00450729
push 0
push 1
lea ecx, [ebp - 0x40]
call fcn.00404b60
xor al, al
call fcn.004a9f22
ret