Function at 0x1004536
Capabilities:
Delete file
Terminate process

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xa8
mov eax, dword [0x1007084]
push ebx
push esi
push edi
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], eax
mov dword [ebp - 0xa8], 1
call dword [sym.imp.cmutil.dll_public:_void___thiscall_CmLogFile::constructor_void_]
push 0x26
pop ecx
xor eax, eax
xor ebx, ebx
lea edi, [ebp - 0x9c]
push ebx
rep stosd dword es:[edi], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x9c], eax
call fcn.01003c02
test eax, eax
je 0x10045f0
test byte [ebp - 0x8f], 0x20
je 0x10045a0
push dword [ebp - 0x94]
call fcn.01004ae8
jmp 0x10045ea
lea esi, [ebp - 0x9c]
call fcn.01004244
test eax, eax
je 0x10045f0
push 0x10013d4
call dword [sym.imp.USER32.dll_RegisterWindowMessageA]
cmp eax, ebx
mov dword [ebp - 0x8c], eax
je 0x10045f0
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
call fcn.010042b2
test eax, eax
je 0x10045f0
mov eax, esi
push eax
push 0x10034b7
push ebx
push 0x65
push dword [ebp - 0x9c]
call dword [sym.imp.USER32.dll_DialogBoxParamA]
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0x78], ebx
mov dword [ebp - 0xa4], ebx
jbe 0x1004655
mov edi, dword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [ebp - 0xa0], ebx
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0xa0]
lea esi, [ecx + eax]
mov eax, dword [esi + 0x28]
cmp eax, ebx
je 0x1004620
push eax
call edi
mov dword [esi + 0x28], ebx
mov eax, dword [esi + 0x24]
cmp eax, ebx
je 0x100462d
push eax
call edi
mov dword [esi + 0x24], ebx
mov eax, dword [esi + 0x20]
cmp eax, ebx
je 0x100463a
push eax
call edi
mov dword [esi + 0x20], ebx
inc dword [ebp - 0xa4]
mov eax, dword [ebp - 0xa4]
add dword [ebp - 0xa0], 0x36c
cmp eax, dword [ebp - 0x78]
jb 0x1004607
cmp dword [ebp - 0x80], ebx
je 0x1004668
push 0xafc8
push dword [ebp - 0x80]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp dword [ebp - 0x94], ebx
je 0x1004681
push dword [ebp - 0x94]
call sub.cmutil.dll_CmFree
mov dword [ebp - 0x94], ebx
cmp dword [ebp - 0x60], ebx
je 0x1004691
push dword [ebp - 0x60]
call sub.cmutil.dll_CmFree
mov dword [ebp - 0x60], ebx
cmp dword [ebp - 0x78], ebx
mov dword [ebp - 0xa4], ebx
jbe 0x100476c
mov dword [ebp - 0xa0], ebx
mov eax, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x74]
lea edi, [eax + ecx]
mov esi, edi
call fcn.01001ee7
lea esi, [edi + 4]
call fcn.01001ee7
lea esi, [edi + 8]
call fcn.01001ee7
lea esi, [edi + 0xc]
call fcn.01001ee7
lea esi, [edi + 0x10]
call fcn.01001ee7
lea esi, [edi + 0x14]
call fcn.01001ee7
lea esi, [edi + 0x18]
call fcn.01001ee7
mov eax, dword [edi + 0x1c]
cmp eax, ebx
je 0x10046f9
push eax
call sub.cmutil.dll_CmFree
mov dword [edi + 0x1c], ebx
lea esi, [edi + 0x364]
cmp dword [esi], 0
jbe 0x1004717
mov eax, dword [edi + 0x368]
push dword [eax + ebx*8]
call sub.cmutil.dll_CmFree
inc ebx
cmp ebx, dword [esi]
jb 0x1004704
push dword [edi + 0x368]
call sub.cmutil.dll_CmFree
test byte [ebp - 0x90], 1
jne 0x100474b
lea eax, [edi + 0x2c]
cmp byte [eax], 0
je 0x100473a
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [edi + 0x14c]
cmp byte [eax], 0
je 0x100474b
push eax
call fcn.01002997
inc dword [ebp - 0xa4]
mov eax, dword [ebp - 0xa4]
add dword [ebp - 0xa0], 0x36c
xor ebx, ebx
cmp eax, dword [ebp - 0x78]
jb 0x10046a6
cmp dword [ebp - 0x74], ebx
je 0x100477c
push dword [ebp - 0x74]
call sub.cmutil.dll_CmFree
mov dword [ebp - 0x74], ebx
xor edi, edi
lea esi, [ebp + edi*4 - 0x80]
mov eax, dword [esi]
cmp eax, ebx
je 0x1004791
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi], ebx
inc edi
cmp edi, 2
jb 0x100477e
lea ecx, [ebp - 0x44]
call dword [sym.imp.cmutil.dll_public:_long_int___thiscall_CmLogFile::DeInit_void_]
push dword [ebp - 0xa8]
call dword [sym.imp.KERNEL32.dll_ExitProcess]