Function at 0x407080
Capabilities:
Print debug messages

Disassembly:
push ebx
push esi
push edi
xor edi, edi
cmp dword [0x65f9f0], edi
jne 0x407095
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x65fb28], edi
jne 0x4072ec
mov eax, dword [0x65fa04]
cmp dword [eax + 0x18], edi
je 0x4070b5
mov ecx, dword [eax + 0x18]
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
mov eax, dword [0x65fb2c]
mov ecx, dword [eax + 8]
call fcn.00547160
test eax, eax
je 0x4070fa
mov eax, dword [0x65fb3c]
cmp eax, edi
je 0x4070fa
cmp dword [eax + 4], edi
jne 0x4070f5
call fcn.004bb5c0
call fcn.0052bd80
call fcn.0043a8f0
mov ecx, dword [0x65fb3c]
mov edx, dword [ecx]
mov eax, dword [edx + 0xc]
call eax
call fcn.00512cd0
call fcn.0054b6f0
cmp dword [0x65fb3c], 0x65fd18
jne 0x40713b
cmp dword [0x660028], edi
jne 0x40713b
mov eax, dword [0x65fadc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x10]
push eax
call edx
mov ecx, dword [eax]
mov edx, dword [ecx + 0x2c]
push edi
push edi
push edi
push eax
call edx
mov eax, dword [0x65fadc]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x10]
push eax
call edx
mov ecx, dword [eax]
mov edx, dword [ecx + 0x30]
push eax
call edx
test byte [0x69b900], 1
jne 0x40715d
or dword [0x69b900], 1
call fcn.005253b0
push 0x583600
call fcn.005763f7
add esp, 4
mov esi, 0x69b904
call fcn.005255c0
mov eax, dword [0x65fb2c]
mov eax, dword [eax + 8]
cmp dword [eax + 0xc], edi
je 0x407188
mov eax, dword [eax + 8]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x18]
push eax
call edx
mov ecx, dword [eax]
mov edx, dword [ecx + 0x2c]
push edi
push eax
call edx
call fcn.00547350
cmp dword [0x65fb34], edi
je 0x4071f3
mov edx, dword [0x65fb3c]
cmp edx, edi
je 0x4071c6
mov ecx, dword [0x65fb38]
cmp ecx, 9
ja 0x4071b1
call fcn.00407300
jmp 0x4071b3
xor eax, eax
mov esi, dword [edx]
push eax
mov eax, dword [esi + 8]
mov ecx, edx
call eax
mov ecx, dword [0x65fb3c]
mov dword [ecx + 4], edi
mov ecx, dword [0x65fb38]
cmp ecx, 9
ja 0x4071d8
call fcn.00407300
jmp 0x4071da
xor eax, eax
mov dword [0x65fb3c], eax
cmp eax, edi
je 0x4072ec
mov dword [0x65fb44], ecx
mov dword [0x6570e0], edi
call fcn.00487e10
call fcn.00487ef0
call fcn.00485c90
call fcn.00495460
mov ebx, dword [0x65faf8]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [ebx + 0x4c]
mov esi, eax
add edx, 0x493e0
cmp esi, edx
jbe 0x407235
call fcn.0054b1f0
push str._n____Cache_delete_one_item.__n_n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov dword [ebx + 0x4c], esi
cmp dword [0x65fb34], edi
je 0x40729b
mov eax, dword [0x65fb3c]
mov dword [eax + 4], edi
mov ecx, dword [0x65fb3c]
mov edx, dword [ecx]
mov eax, dword [0x65fb40]
mov edx, dword [edx + 4]
push eax
call edx
test eax, eax
jne 0x40727c
mov eax, dword [0x65fb44]
cmp eax, 3
jne 0x4072a1
mov eax, dword [0x65fb3c]
push 4
xor ecx, ecx
mov edx, 0x65fb50
mov dword [eax + 4], edi
call fcn.00408340
mov eax, dword [0x65fb40]
cmp eax, edi
je 0x407295
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
add esp, 4
mov dword [0x65fb40], edi
mov dword [0x65fb34], edi
xor eax, eax
pop edi
pop esi
pop ebx
ret
cmp eax, 1
jne 0x4072bb
mov dword [0x65fb34], eax
mov dword [0x65fb38], 2
xor eax, eax
pop edi
pop esi
pop ebx
ret
mov eax, dword [0x67f5b0]
cmp eax, edi
jne 0x4072c9
mov eax, 0x6815d0
push edi
push edi
push eax
push edi
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [0x65fb40]
cmp eax, edi
je 0x4072ec
push eax
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
add esp, 4
mov dword [0x65fb40], edi
call fcn.00406f20
pop edi
pop esi
or eax, 0xffffffff
pop ebx
ret