Function at 0x40dca0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x121c
call fcn.00457150
mov eax, dword [0x4a4300]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0xfff
lea eax, [ebp - 0x1207]
mov dword [ebp - 0x1214], edx
push 0
push eax
mov dword [ebp - 0x1218], ecx
mov byte [ebp - 0x1208], 0
call fcn.004523e0
add esp, 0xc
call fcn.0040fd80
mov edi, eax
mov ebx, edx
call fcn.0040fd80
sub eax, edi
sbb edx, ebx
test edx, edx
jg 0x40dda4
jl 0x40dd0a
cmp eax, 0x7530
ja 0x40dda4
mov esi, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push 0x4835f8
call esi
push 0x4835f8
call fcn.00458229
add esp, 4
lea ecx, [ebp - 0x1208]
call fcn.0040db20
cmp eax, 1
je 0x40dd50
call fcn.0040fd80
sub eax, edi
sbb edx, ebx
mov dword [ebp - 0x120c], edx
js 0x40dd10
jg 0x40dda4
cmp eax, 0x7530
jbe 0x40dd10
jmp 0x40dda4
push 0x1ff
lea eax, [ebp - 0x207]
mov byte [ebp - 0x208], 0
push 0
push eax
call fcn.004523e0
add esp, 0xc
call fcn.0040fd80
sub eax, edi
sbb edx, ebx
push edx
push eax
lea eax, [ebp - 0x208]
push 0x48361c
push eax
call fcn.0045752f
add esp, 0x10
lea eax, [ebp - 0x208]
push eax
call esi
lea eax, [ebp - 0x208]
push eax
call fcn.00458229
add esp, 4
cmp byte [ebp - 0x1208], 0xef
lea ecx, [ebp - 0x1208]
mov dword [ebp - 0x120c], ecx
jne 0x40ddd8
cmp byte [ebp - 0x1207], 0xbb
jne 0x40ddd8
cmp byte [ebp - 0x1206], 0xbf
lea eax, [ebp - 0x1205]
cmovne eax, ecx
mov dword [ebp - 0x120c], eax
xor edx, edx
lea ecx, [ebp - 0x120c]
call fcn.00409230
mov esi, eax
test esi, esi
je 0x40de30
cmp dword [esi + 4], 4
xorps xmm0, xmm0
jne 0x40de1e
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x40de1e
push 6
mov edx, str.status
call fcn.00408e20
add esp, 4
test eax, eax
je 0x40de1b
cmp dword [eax + 4], 3
jne 0x40de1b
movsd xmm0, qword [eax + 8]
jmp 0x40de1e
xorps xmm0, xmm0
cvttsd2si eax, xmm0
cmp eax, 0xc8
je 0x40de43
mov ecx, esi
call fcn.0040a640
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004516e1
mov esp, ebp
pop ebp
ret
cmp dword [esi + 4], 4
jne 0x40de70
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x40de70
push 0xc
mov edx, str.isNeedUpdate
call fcn.00408e20
add esp, 4
test eax, eax
je 0x40de70
cmp dword [eax + 4], 3
jne 0x40de70
movsd xmm0, qword [eax + 8]
jmp 0x40de73
xorps xmm0, xmm0
cvttsd2si eax, xmm0
test eax, eax
je 0x40de29
cmp dword [esi + 4], 4
jne 0x40df75
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x40def9
push 0xd
mov edx, str.updateListUrl
call fcn.00408e20
add esp, 4
test eax, eax
je 0x40def9
cmp dword [eax + 4], 2
jne 0x40def9
add eax, 8
je 0x40def9
mov edi, dword [eax]
test edi, edi
je 0x40def9
cmp dword [esi + 4], 4
jne 0x40debb
mov ecx, dword [esi + 8]
jmp 0x40debd
xor ecx, ecx
mov edx, str.updateListUrl
call fcn.0040a520
mov ebx, eax
lea ecx, [ebx - 1]
cmp ecx, 0x256
ja 0x40def9
push 0x258
push 0
push dword [ebp - 0x1218]
call fcn.004523e0
add esp, 0xc
push ebx
push edi
push dword [ebp - 0x1218]
call fcn.00451d90
add esp, 0xc
cmp dword [esi + 4], 4
jne 0x40df75
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x40df75
push 0x12
mov edx, str.spareUpdateListUrl
call fcn.00408e20
add esp, 4
test eax, eax
je 0x40df75
cmp dword [eax + 4], 2
jne 0x40df75
lea edi, [eax + 8]
test edi, edi
je 0x40df75
mov edi, dword [edi]
test edi, edi
je 0x40df75
cmp dword [esi + 4], 4
jne 0x40df37
mov ecx, dword [esi + 8]
jmp 0x40df39
xor ecx, ecx
mov edx, str.spareUpdateListUrl
call fcn.0040a520
mov ebx, eax
lea ecx, [ebx - 1]
cmp ecx, 0x256
ja 0x40df75
push 0x258
push 0
push dword [ebp - 0x1214]
call fcn.004523e0
add esp, 0xc
push ebx
push edi
push dword [ebp - 0x1214]
call fcn.00451d90
add esp, 0xc
mov ecx, esi
call fcn.0040a640
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004516e1
mov esp, ebp
pop ebp
ret