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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x48b488
mov eax, dword fs:[0]
push eax
sub esp, 0x30
push ebx
push esi
push edi
mov eax, dword [0x4a4100]
xor eax, esp
push eax
lea eax, [esp + 0x40]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x10], ebx
cmp dword [0x4aab38], 0
je 0x45a3f3
push str.statistics::UploadInProc::WaitFinish
push 0x494468
call fcn.0044a1f0
push eax
call fcn.00449cc0
add esp, 0xc
mov dword [ebx + 4], 1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, dword [ebx + 0x14]
mov dword [esp + 0x18], eax
cmp esi, dword [ebx + 0x18]
jbe 0x45a411
call fcn.0046f637
mov edi, dword [ebx + 8]
lea eax, [esp + 0x24]
push eax
call fcn.00449510
mov dword [esp + 0x48], 0
mov ebx, dword [ebx + 0x18]
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x14], ebx
jbe 0x45a437
call fcn.0046f637
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 8]
test edi, edi
je 0x45a446
cmp edi, eax
je 0x45a44b
call fcn.0046f637
cmp esi, ebx
je 0x45a598
test edi, edi
jne 0x45a4cf
call fcn.0046f637
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x45a468
call fcn.0046f637
mov eax, dword [esi]
cmp byte [eax + 0x22], 0
je 0x45a522
test edi, edi
jne 0x45a4d3
call fcn.0046f637
xor eax, eax
cmp esi, dword [eax + 0x10]
jb 0x45a489
call fcn.0046f637
mov eax, dword [esi]
cmp dword [eax + 0x1c], 0
je 0x45a4b0
lea ebx, [eax + 0x84]
mov byte [eax + 0x20], 1
push 1
mov eax, ebx
call fcn.00459860
test eax, eax
je 0x45a4b0
push 1
push ebx
call fcn.00459740
test edi, edi
jne 0x45a4d7
call fcn.0046f637
cmp esi, dword [edi + 0x10]
jb 0x45a4c3
call fcn.0046f637
mov ecx, dword [esp + 0x30]
test ecx, ecx
jne 0x45a4db
xor eax, eax
jmp 0x45a4e4
mov eax, dword [edi]
jmp 0x45a45e
mov eax, dword [edi]
jmp 0x45a47f
mov edi, dword [edi]
jmp 0x45a4b9
mov eax, dword [esp + 0x38]
sub eax, ecx
sar eax, 2
mov edi, dword [esp + 0x34]
mov edx, edi
sub edx, ecx
sar edx, 2
cmp edx, eax
jae 0x45a502
mov ecx, dword [esi]
mov eax, edi
add eax, 4
mov dword [edi], ecx
mov dword [esp + 0x34], eax
jmp 0x45a54a
cmp ecx, edi
jbe 0x45a50b
call fcn.0046f637
mov eax, dword [esp + 0x24]
push edi
push eax
push esi
lea edx, [esp + 0x28]
push edx
lea eax, [esp + 0x34]
call fcn.0045ae60
jmp 0x45a54a
test edi, edi
jne 0x45a594
call fcn.0046f637
cmp esi, dword [edi + 0x10]
jb 0x45a535
call fcn.0046f637
mov edi, dword [esi]
test edi, edi
je 0x45a54a
push edi
call fcn.00448100
push edi
call fcn.0046f011
add esp, 4
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x18]
lea ecx, [esi + 4]
sub eax, ecx
sar eax, 2
test eax, eax
jle 0x45a56d
add eax, eax
add eax, eax
push eax
push ecx
push eax
push esi
call fcn.0046f7d6
add esp, 0x10
mov ecx, dword [esp + 0x10]
add dword [ecx + 0x18], 0xfffffffc
mov eax, dword [ecx + 0x18]
cmp dword [ecx + 0x14], esi
ja 0x45a581
cmp esi, eax
jbe 0x45a586
call fcn.0046f637
mov ecx, dword [esp + 0x10]
mov edi, dword [ecx + 8]
mov ebx, ecx
jmp 0x45a426
mov edi, dword [edi]
jmp 0x45a52b
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov edx, ecx
sub edx, eax
sar edx, 2
test edx, edx
jbe 0x45a6dd
mov esi, dword [esp + 0x18]
mov edx, dword [ebp + 8]
add esi, edx
mov dword [esp + 0x18], esi
mov ebx, eax
cmp eax, ecx
jbe 0x45a5c7
call fcn.0046f637
mov esi, dword [esp + 0x24]
mov dword [esp + 0x10], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, dword [esp + 0x18]
sub edi, eax
cmp edi, 0x12c
jbe 0x45a6d9
test esi, esi
jne 0x45a6ce
call fcn.0046f637
cmp ebx, dword [esi + 0x10]
jb 0x45a5fe
call fcn.0046f637
mov esi, dword [ebx]
cmp dword [esi + 0x1c], 0
je 0x45a64f
lea eax, [esi + 0x84]
push 1
mov byte [esi + 0x20], 1
call fcn.00459860
test eax, eax
je 0x45a629
push 1
lea eax, [esi + 0x84]
push eax
call fcn.00459740
mov eax, dword [esi + 0x1c]
push edi
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [esi + 0x1c]
push ecx
mov edi, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0x1c], 0
test edi, edi
jne 0x45a6d9
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x45a6d5
call fcn.0046f637
xor eax, eax
cmp ebx, dword [eax + 0x10]
jb 0x45a668
call fcn.0046f637
mov esi, dword [ebx]
test esi, esi
je 0x45a67d
push esi
call fcn.00448100
push esi
call fcn.0046f011
add esp, 4
mov eax, dword [esp + 0x34]
lea ecx, [ebx + 4]
sub eax, ecx
sar eax, 2
test eax, eax
jle 0x45a69d
add eax, eax
add eax, eax
push eax
push ecx
push eax
push ebx
call fcn.0046f7d6
add esp, 0x10
mov eax, dword [esp + 0x30]
sub dword [esp + 0x34], 4
cmp eax, ebx
ja 0x45a6b0
cmp ebx, dword [esp + 0x34]
jbe 0x45a6b9
call fcn.0046f637
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov edx, ecx
sub edx, eax
sar edx, 2
test edx, edx
ja 0x45a5bc
jmp 0x45a6dd
mov esi, dword [esi]
jmp 0x45a5f4
mov eax, dword [eax]
jmp 0x45a65e
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
sub ecx, eax
sar ecx, 2
test ecx, ecx
jbe 0x45a729
test eax, eax
je 0x45a6f7
push eax
call fcn.0046f011
add esp, 4
xor eax, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x24]
push eax
call fcn.0046f011
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x40]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
test eax, eax
je 0x45a736
push eax
call fcn.0046f011
add esp, 4
mov ecx, dword [esp + 0x24]
xor eax, eax
push ecx
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
call fcn.0046f011
add esp, 4
mov eax, 1
mov ecx, dword [esp + 0x40]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4