Function at 0x40d300
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50ff44
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push ebx
push esi
push edi
mov eax, dword [0x551aa8]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x10]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
xor esi, esi
mov dword [ebp - 4], esi
mov ebx, dword [ebp + 8]
lea eax, [ebx + 0x60]
push eax
lea ecx, [ebp - 0x10]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_1]
push str.PatchInfoServer.cfg
lea ecx, [ebp - 0x10]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator_3]
add ebx, 0x34
lea ecx, [ebp - 0x14]
push ebx
push ecx
mov edi, str.PatchInfoServer.cfg
call fcn.00403130
add esp, 8
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 1
call dword [sym.imp.mfc100u.dll_ATL::CSimpleStringT_wchar_t_1_::GetBuffer_1]
push eax
call dword [sym.imp.WININET.dll_DeleteUrlCacheEntryW]
lea ecx, [ebp - 0x10]
call dword [sym.imp.mfc100u.dll_ATL::CSimpleStringT_wchar_t_1_::GetBuffer_1]
lea ecx, [ebp - 0x14]
mov edi, eax
call dword [sym.imp.mfc100u.dll_ATL::CSimpleStringT_wchar_t_1_::GetBuffer_1]
mov edx, edi
mov ecx, eax
call fcn.00415f70
lea ecx, [ebp - 0x14]
test eax, eax
je 0x40d449
mov byte [ebp - 4], 0
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
inc esi
cmp esi, 3
jl 0x40d357
push str.download_Failed_
xor esi, esi
call fcn.00417260
mov ebx, dword [ebp + 8]
add esp, 4
cmp dword [ebx + 0x4c], 0
jle 0x40d3d7
cmp dword [ebx + 0x50], 0
jg 0x40d4b9
test byte [0x56c888], 1
jne 0x40d3f9
or dword [0x56c888], 1
call fcn.0040bb80
push 0x5107b0
call fcn.0050c11f
add esp, 4
mov edi, dword [0x56c860]
lea ecx, [ebp + 8]
add edi, 0x3ee
push ecx
call fcn.00414580
mov byte [ebp - 4], 3
mov edx, dword [ebp + 8]
push edx
xor esi, esi
call fcn.00417260
mov eax, dword [ebp + 8]
add esp, 8
push esi
push esi
push eax
call dword [sym.imp.mfc100u.dll_AfxMessageBox]
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
or eax, 0xffffffff
cmp dword [ebx + 0x4c], eax
jne 0x40d4a4
push eax
push str.Client_Version_is__d___Error
jmp 0x40d4af
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
lea ecx, [ebp - 0x14]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_clas]
push 0x543e38
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::operator]
push ecx
lea edx, [ebp - 0x14]
mov ecx, esp
mov dword [ebp - 0x18], esp
push edx
call dword [0x511ab0]
lea ecx, [ebp - 0x10]
call fcn.0040d4e0
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x50], eax
mov eax, dword [ebp - 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 0
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
jmp 0x40d3c7
cmp dword [ebx + 0x50], eax
jne 0x40d4b9
push eax
push str.Server_Version_is__d___Error
xor esi, esi
call fcn.00417260
add esp, 8
lea ecx, [ebp - 0x10]
call dword [sym.imp.mfc100u.dll_ATL::CStringT_wchar_t_class_StrTraitMFC_DLL_wchar_t_class_ATL::ChTraitsCRT_wchar_t_____::CStringT_wchar_t_cla]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4