Function at 0x401912
Capabilities:
Check for time delay via gettickcount

Disassembly:
push 0x614
mov eax, 0x4cf25e
call fcn.004aaf1f
mov edi, edx
mov esi, ecx
mov dword [ebp - 0x618], esi
xor ebx, ebx
mov dword [ebp - 0x5f4], edi
push 0x4018a7
mov dword [ebp - 0x5f8], ebx
call fcn.004a5e3f
mov dword [esp], 0x4018a7
call fcn.004a5e86
pop ecx
push ebx
mov dword [0x51a21c], 0x40
call dword [sym.imp.ole32.dll_CoInitialize]
push ebx
push ebx
push ebx
push 3
push ebx
push ebx
push ebx
push 0xffffffffffffffff
push ebx
mov dword [ebp - 4], ebx
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
mov dword [0x517600], 0x17810
mov dword [0x51a21c], ebx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push ecx
push 0x4e870e
lea ecx, [ebp - 0x5fc]
mov dword [0x51c170], eax
mov byte [ebp - 4], 1
call fcn.00404096
push eax
lea eax, [ebp - 0x5f8]
mov byte [ebp - 4], 2
push eax
call fcn.0049041f
pop ecx
pop ecx
lea ecx, [ebp - 0x5f8]
call fcn.00403e69
lea ecx, [ebp - 0x5fc]
call fcn.00403e69
mov dword [ebp - 4], ebx
jmp 0x4019ea
push ebx
call fcn.004a6040
push eax
call fcn.004a6030
pop ecx
pop ecx
mov edx, edi
mov byte [0x51a81c], bl
mov ecx, esi
call fcn.0040333d
mov byte [0x51a81c], al
lea eax, [ebp - 0x5ed]
push eax
push eax
push str.IsRecordLog
push str.CInfos
mov byte [ebp - 0x5ed], bl
call fcn.0044cc7a
mov ecx, eax
call fcn.0044ce68
mov al, byte [ebp - 0x5ed]
movzx edx, byte [0x51a81c]
test al, al
movzx ecx, al
cmovne edx, ecx
push str._Main______________________________Start_____________________________
mov byte [0x51a81c], dl
call fcn.0044fe3d
push eax
call fcn.0044fe7b
pop ecx
pop ecx
mov dword [ebp - 0xe4], 0xf
mov dword [ebp - 0xe8], ebx
mov byte [ebp - 0xf8], bl
push str.KwDataRepaire20131010
push 1
push 1
push ebx
mov byte [ebp - 4], 4
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x401aa5
test esi, esi
je 0x401aa1
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, 1
jmp 0x401aa7
mov al, bl
movzx eax, al
test eax, eax
je 0x401abd
xor ecx, ecx
inc ecx
call fcn.0040322e
mov esi, eax
jmp 0x4020fe
push str.Ver:8.0.3.1
lea ecx, [ebp - 0xe0]
call fcn.004041e5
push str.StartApp
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 5
call fcn.004041e5
mov byte [ebp - 4], 6
call fcn.0044fe3d
push 1
lea ecx, [ebp - 0xe0]
push ecx
lea ecx, [ebp - 0x110]
push ecx
mov ecx, 0x4e870e
push ecx
push ecx
mov ecx, eax
call fcn.004503e5
push ebx
push 1
lea ecx, [ebp - 0x110]
call fcn.004044e5
push ebx
push 1
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 4
call fcn.004044e5
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
lea ecx, [ebp - 0x5ec]
mov esi, eax
call fcn.00436925
lea ecx, [ebp - 0x5ec]
mov byte [ebp - 4], 7
call fcn.00438e13
call edi
sub eax, esi
push eax
push 0x8e
push str.mymain
push str.__s:_d_DataCollect_is_finished_usedtime:_d
call fcn.0044fe3d
push eax
call fcn.0044fe7b
mov edi, dword [sym.imp.KERNEL32.dll_CreateEventA]
add esp, 0x14
push ebx
push ebx
push ebx
push ebx
call edi
mov esi, eax
push 0x1388
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp - 0x8c]
call fcn.004519f6
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 8
call fcn.00451a5c
mov dword [ebp - 0x60], 0xf
mov dword [ebp - 0x64], ebx
mov byte [ebp - 0x74], bl
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 9
call fcn.0044462e
call fcn.0044258d
mov dword [ebp - method.CKwThreadBase.virtual_0], vtable.CKwThreadBase.0
mov dword [ebp - 0x610], ebx
mov dword [ebp - 0x60c], ebx
mov dword [ebp - 0x608], ebx
mov dword [ebp - 0x604], ebx
push ebx
push ebx
push 1
push ebx
call edi
push ebx
push ebx
push 1
push ebx
mov dword [ebp - 0x608], eax
call edi
mov dword [ebp - 0x604], eax
mov dword [ebp - method.CKwAiQiYiHelper.virtual_0], vtable.CKwAiQiYiHelper.0
lea ecx, [ebp - 0x614]
mov byte [ebp - 4], 0xa
call dword [0x4ee3e4]
lea eax, [ebp - 0x5f4]
mov dword [ebp - 0x5f4], 0xafc8
push eax
push eax
push str.ThreadWaitTime
push str.AiQiYi
call fcn.0044cc7a
mov ecx, eax
call fcn.0044cce4
mov eax, dword [ebp - 0x614]
lea ecx, [ebp - 0x614]
push dword [ebp - 0x5f4]
call dword [eax + 8]
push 0xf
pop edi
lea ecx, [ebp - 0x1e4]
mov dword [ebp - 0x21c], edi
mov dword [ebp - 0x220], ebx
mov byte [ebp - 0x230], bl
mov dword [ebp - 0x204], edi
mov dword [ebp - 0x208], ebx
mov byte [ebp - 0x218], bl
mov dword [ebp - 0x1ec], edi
mov dword [ebp - 0x1f0], ebx
mov byte [ebp - 0x200], bl
mov dword [ebp - 0x1e8], ebx
call fcn.00404586
lea eax, [ebp - 0x230]
mov dword [ebp - 0x1e8], eax
mov ecx, eax
mov byte [ebp - 4], 0xb
call fcn.0040553c
mov dword [ebp - 0x5f4], ebx
lea ecx, [ebp - 0x5f4]
mov byte [ebp - 4], 0xc
call fcn.0045168a
lea ecx, [ebp - 0x310]
call fcn.0044a6cf
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 0xd
call fcn.0044aeed
lea ecx, [ebp - 0x310]
call fcn.0044a897
lea ecx, [ebp - 0x5fd]
call fcn.004451b6
lea eax, [ebp - 0x620]
mov dword [ebp - 0x5f8], ebx
push eax
mov dword [ebp - 0x5fc], 7
call fcn.004a6040
pop ecx
push ebx
push 0x15180
push dword [ebp - 0x61c]
push dword [ebp - 0x620]
call fcn.004b9390
mov esi, eax
lea eax, [ebp - 0x5f8]
push eax
push eax
push str.LastTime
push str.CInfos
call fcn.0044cc7a
mov ecx, eax
call fcn.0044cd80
lea eax, [ebp - 0x5fc]
push eax
push eax
push str.IntervalTime
push str.CInfos
call fcn.0044cc7a
mov ecx, eax
call fcn.0044cd80
mov eax, dword [ebp - 0x5f8]
add eax, dword [ebp - 0x5fc]
cmp esi, eax
jae 0x401dbc
push str.collect_time_not_reach_exit
call fcn.0044fe3d
push eax
call fcn.0044fe7b
pop ecx
pop ecx
push 0xc350
call fcn.0044fe3d
mov ecx, eax
call fcn.00450ba3
push str.____________Finished________________n_n
call fcn.0044fe3d
push eax
call fcn.0044fe7b
pop ecx
pop ecx
jmp 0x402074
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x4c], ebx
mov byte [ebp - 0x5c], bl
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x34], ebx
mov byte [ebp - 0x44], bl
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 0x2c], bl
lea ecx, [ebp - 0xe0]
mov byte [ebp - 4], 0x10
call fcn.00464c70
push eax
lea ecx, [ebp - 0x5c]
call fcn.004033c5
xor edi, edi
lea ecx, [ebp - 0xe0]
push ebx
inc edi
push edi
call fcn.004044e5
lea eax, [ebp - 0x2c]
push eax
push eax
push str.NetID
push str.Setting
call fcn.0044cc7a
mov ecx, eax
call fcn.0044cf0d
lea eax, [ebp - 0x44]
push eax
push eax
push str.version
push str.config
call fcn.0044cc7a
mov ecx, eax
call fcn.0044cf0d
cmp dword [ebp - 0x4c], 0
jne 0x401efe
cmp dword [ebp - 0x1c], 0
jne 0x401efe
push str.CID_and_UID_both_empty_exit
call fcn.0044fe3d
push eax
call fcn.0044fe7b
pop ecx
pop ecx
push 0xc350
call fcn.0044fe3d
mov ecx, eax
call fcn.00450ba3
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.004044e5
push ebx
push edi
lea ecx, [ebp - 0x44]
call fcn.004044e5
push ebx
push edi
lea ecx, [ebp - 0x5c]
call fcn.004044e5
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 0xc
call fcn.0044a7d6
mov byte [ebp - 4], 0xb
mov esi, dword [ebp - 0x5f4]
test esi, esi
je 0x401ebb
mov ecx, dword [esi]
test ecx, ecx
je 0x401eb4
call fcn.004736b0
mov dword [esi], ebx
push esi
call fcn.004a5083
pop ecx
lea ecx, [ebp - 0x1e4]
call fcn.00404608
push ebx
push edi
lea ecx, [ebp - 0x200]
call fcn.004044e5
lea ecx, [ebp - 0x230]
call fcn.00407757
lea ecx, [ebp - 0x614]
mov byte [ebp - 4], 9
call fcn.00441d22
push ebx
push edi
lea ecx, [ebp - 0x74]
call fcn.004044e5
push ebx
push edi
jmp 0x4020e6
lea eax, [ebp - 0x5ed]
mov byte [ebp - 0x5ed], 1
push eax
push eax
push str.IsOpenCInfos
mov edi, str.CInfos
push edi
call fcn.0044cc7a
mov ecx, eax
call fcn.0044ce68
cmp byte [ebp - 0x5ed], 0
jne 0x401f68
push esi
push str.LastTime
push edi
call fcn.0044cc7a
mov ecx, eax
call fcn.0044d0a4
push str.server_close_the_funciton_exit
call fcn.0044fe3d
push eax
call fcn.0044fe7b
pop ecx
pop ecx
push 0xc350
call fcn.0044fe3d
mov ecx, eax
call fcn.00450ba3
jmp 0x402053
xorps xmm0, xmm0
mov dword [ebp - 0xa8], ebx
movdqu xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0x90], 0xf
movdqu xmmword [ebp - 0xb8], xmm0
mov dword [ebp - 0x94], ebx
mov byte [ebp - 0xa4], bl
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 0x11
call fcn.0044115b
lea ecx, [ebp - 0xc8]
call fcn.00440be2
test eax, eax
jne 0x401fee
call fcn.0044247b
test eax, eax
je 0x401fee
call fcn.0040228c
call fcn.0040295d
call fcn.00402dfa
call fcn.00403054
push esi
push str.LastTime
push edi
call fcn.0044cc7a
mov ecx, eax
call fcn.0044d0a4
xor ecx, ecx
call fcn.0040322e
jmp 0x402024
push esi
push str.LastTime
push edi
call fcn.0044cc7a
mov ecx, eax
call fcn.0044d0a4
push str.RequestCanCollectInfo_ret
call fcn.0044fe3d
push eax
call fcn.0044fe7b
pop ecx
pop ecx
push 0xc350
call fcn.0044fe3d
mov ecx, eax
call fcn.00450ba3
push ebx
push 1
lea ecx, [ebp - 0xa4]
call fcn.004044e5
lea ecx, [ebp - 0xb0]
call fcn.00403e2c
lea ecx, [ebp - 0xbc]
call fcn.00403e2c
lea ecx, [ebp - 0xc8]
call fcn.00403e2c
push ebx
push 1
lea ecx, [ebp - 0x2c]
call fcn.004044e5
push ebx
push 1
lea ecx, [ebp - 0x44]
call fcn.004044e5
push ebx
push 1
lea ecx, [ebp - 0x5c]
call fcn.004044e5
lea ecx, [ebp - 0x310]
mov byte [ebp - 4], 0xc
call fcn.0044a7d6
mov byte [ebp - 4], 0xb
mov esi, dword [ebp - 0x5f4]
test esi, esi
je 0x4020a5
mov ecx, dword [esi]
test ecx, ecx
je 0x40209e
call fcn.004736b0
mov dword [esi], ebx
push esi
call fcn.004a5083
pop ecx
lea ecx, [ebp - 0x1e4]
call fcn.00404608
push ebx
push 1
lea ecx, [ebp - 0x200]
call fcn.004044e5
lea ecx, [ebp - 0x230]
call fcn.00407757
lea ecx, [ebp - 0x614]
mov byte [ebp - 4], 9
call fcn.00441d22
push ebx
push 1
lea ecx, [ebp - 0x74]
call fcn.004044e5
push ebx
push 1
lea ecx, [ebp - 0x8c]
call fcn.004044e5
lea ecx, [ebp - 0x5ec]
call fcn.00436ea9
mov esi, ebx
push ebx
push 1
lea ecx, [ebp - 0xf8]
call fcn.004044e5
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, esi
call fcn.004aae71
ret