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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10133928
mov eax, dword fs:[0]
push eax
sub esp, 0x320
mov eax, dword [0x10167b84]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xe0], ecx
cmp dword [ebp + 0xc], 0
jne 0x10022e84
mov eax, dword [ebp - 0xe0]
mov dword [eax + 0x54], 0
mov ecx, dword [ebp + 0x18]
add ecx, 0x20
push ecx
lea ecx, [ebp - 0xe4]
call fcn.10015710
mov dword [ebp - 4], 0
mov edx, dword [ebp + 0x18]
add edx, 0xc
mov eax, dword [edx]
mov dword [ebp - 0x20], eax
mov ecx, dword [edx + 4]
mov dword [ebp - 0x1c], ecx
mov eax, dword [edx + 8]
mov dword [ebp - 0x18], eax
mov ecx, dword [edx + 0xc]
mov dword [ebp - 0x14], ecx
lea ecx, [ebp - 0xe4]
call fcn.10017180
movzx edx, al
test edx, edx
jne 0x10022f10
lea ecx, [ebp - 0xe4]
call fcn.10016f00
sub eax, 1
mov dword [ebp - 0xec], eax
js 0x10022f10
mov eax, dword [ebp - 0xec]
push eax
lea ecx, [ebp - 0xe4]
call fcn.100187c0
movzx ecx, ax
cmp ecx, 0x20
jne 0x10022f10
push 1
mov edx, dword [ebp - 0xec]
push edx
lea ecx, [ebp - 0xe4]
call fcn.10022d80
mov eax, dword [ebp + 0x18]
add eax, 0x24
push eax
lea ecx, [ebp - 0xe8]
call fcn.10015710
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0xe0]
cmp dword [ecx + 0x50], 0
je 0x1002305e
mov edx, dword [ebp - 0xe0]
cmp dword [edx + 0x54], 0
jne 0x1002305e
call fcn.100e2550
mov dword [ebp - 0xf0], eax
push 1
mov eax, dword [ebp - 0xf0]
mov edx, dword [eax]
mov ecx, dword [ebp - 0xf0]
mov eax, dword [edx + 8]
call eax
mov byte [ebp - 0x118], al
cmp byte [ebp - 0x118], 1
je 0x10022f7a
jmp 0x10023034
push 0x10138874
lea ecx, [ebp - 0x50]
call fcn.1000a760
mov byte [ebp - 4], 2
push 0x1013887c
lea ecx, [ebp - 0x38]
call fcn.1000a760
mov byte [ebp - 4], 3
call fcn.100e2550
mov dword [ebp - 0xf4], eax
push str.__History_First__get_url_by_db
lea ecx, [ebp + 8]
push ecx
push 0x10139e40
push 0x35
lea edx, [ebp - 0x50]
push edx
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x1fc]
call fcn.1000afc0
mov dword [ebp - 0x11c], eax
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x120], ecx
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x120]
call fcn.10007450
mov ecx, eax
call fcn.10015340
mov ecx, eax
call fcn.10007450
push eax
mov edx, dword [ebp - 0xf4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xf4]
mov edx, dword [eax + 0x1c]
call edx
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1fc]
call fcn.1000c0c0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x38]
call fcn.1000bc00
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x50]
call fcn.1000bc00
lea eax, [ebp - 0xe8]
push eax
mov ecx, dword [ebp - 0xe0]
add ecx, 8
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10019680
mov ecx, eax
call fcn.10018800
mov ecx, dword [ebp - 0xe0]
mov dword [ecx + 0x54], eax
lea ecx, [ebp - 0xe8]
call fcn.10017180
movzx edx, al
test edx, edx
je 0x10023098
push 0
push str.http
lea ecx, [ebp - 0xe4]
call fcn.1001a970
test eax, eax
jne 0x10023098
lea eax, [ebp - 0xe4]
push eax
lea ecx, [ebp - 0xe8]
call fcn.10018670
lea ecx, [ebp - 0xe8]
call fcn.10017180
movzx ecx, al
test ecx, ecx
je 0x100231d6
mov edx, dword [ebp - 0xe0]
cmp dword [edx + 0x54], 0
jne 0x100231d6
call fcn.100e2550
mov dword [ebp - 0xf8], eax
push 1
mov eax, dword [ebp - 0xf8]
mov edx, dword [eax]
mov ecx, dword [ebp - 0xf8]
mov eax, dword [edx + 8]
call eax
mov byte [ebp - 0x124], al
cmp byte [ebp - 0x124], 1
je 0x100230f2
jmp 0x100231ac
push 0x10138874
lea ecx, [ebp - 0x80]
call fcn.1000a760
mov byte [ebp - 4], 5
push 0x1013887c
lea ecx, [ebp - 0x68]
call fcn.1000a760
mov byte [ebp - 4], 6
call fcn.100e2550
mov dword [ebp - 0xfc], eax
push str.__url_empty__try_to_get_url_by_db
lea ecx, [ebp + 8]
push ecx
push 0x10139e40
push 0x42
lea edx, [ebp - 0x80]
push edx
lea eax, [ebp - 0x68]
push eax
lea ecx, [ebp - 0x294]
call fcn.1000afc0
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x12c], ecx
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x12c]
call fcn.10007450
mov ecx, eax
call fcn.10015340
mov ecx, eax
call fcn.10007450
push eax
mov edx, dword [ebp - 0xfc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xfc]
mov edx, dword [eax + 0x1c]
call edx
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x294]
call fcn.1000c0c0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x68]
call fcn.1000bc00
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x80]
call fcn.1000bc00
lea eax, [ebp - 0xe8]
push eax
mov ecx, dword [ebp - 0xe0]
add ecx, 8
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10019680
mov ecx, eax
call fcn.10018800
mov ecx, dword [ebp - 0xe0]
mov dword [ecx + 0x54], eax
mov edx, dword [ebp - 0xe0]
mov eax, dword [edx + 4]
mov dword [ebp - 0x130], eax
lea ecx, [ebp - 0xdc]
call fcn.1001dea0
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ecx + 4]
mov dword [ebp - 0xd8], edx
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0xd4], eax
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0xcc], edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xc8], eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0xc4], ecx
mov edx, dword [ebp - 0xe0]
add edx, 8
push edx
lea ecx, [ebp - 0xb4]
call fcn.10018670
lea ecx, [ebp - 0xe4]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xbc]
call fcn.10018670
lea ecx, [ebp - 0xe8]
call fcn.1001ec60
push eax
lea ecx, [ebp - 0xb8]
call fcn.10018670
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xe0]
add eax, 0x14
push eax
lea ecx, [ebp - 0xdc]
call fcn.1001ee40
call fcn.100e2550
mov dword [ebp - 0x100], eax
push 1
mov ecx, dword [ebp - 0x100]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x100]
mov eax, dword [edx + 8]
call eax
mov byte [ebp - 0x134], al
cmp byte [ebp - 0x134], 1
je 0x100232cb
jmp 0x1002346d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp + 0x14]
mov dword [ebp - 0x10c], eax
push 0x10138874
lea ecx, [ebp - 0xb0]
call fcn.1000a760
mov byte [ebp - 4], 9
push 0x1013887c
lea ecx, [ebp - 0x98]
call fcn.1000a760
mov byte [ebp - 4], 0xa
call fcn.100e2550
mov dword [ebp - 0x104], eax
lea ecx, [ebp - 0xe8]
push ecx
push 0x10139ebc
lea edx, [ebp - 0xe4]
push edx
push 0x1013a4ec
lea eax, [ebp - 0x10c]
push eax
push 0
push 4
lea ecx, [ebp - 0x164]
push ecx
call fcn.100dfeb4
add esp, 0xc
push eax
push 0x10139eb0
lea edx, [ebp + 0x10]
push edx
push 0
push 3
lea eax, [ebp - 0x144]
push eax
call fcn.100dfeb4
add esp, 0xc
push eax
push 0x10138aac
lea ecx, [ebp + 0xc]
push ecx
push 0
push 2
lea edx, [ebp - 0x154]
push edx
call fcn.100dfeb4
add esp, 0xc
push eax
push 0x10139eac
mov eax, dword [ebp - 0xe0]
add eax, 8
push eax
push 0x10139e9c
push 0x61
lea ecx, [ebp - 0xb0]
push ecx
lea edx, [ebp - 0x98]
push edx
lea ecx, [ebp - 0x32c]
call fcn.1000afc0
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x114], eax
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x114]
call fcn.10007450
mov ecx, eax
call fcn.10015360
mov ecx, eax
call fcn.10007450
mov ecx, eax
call fcn.1001dbf0
mov ecx, eax
call fcn.10015320
mov ecx, eax
call fcn.10007450
mov ecx, eax
call fcn.1001dbf0
mov ecx, eax
call fcn.10015320
mov ecx, eax
call fcn.10007450
mov ecx, eax
call fcn.1001dbf0
mov ecx, eax
call fcn.10007490
mov ecx, eax
call fcn.10007450
mov ecx, eax
call fcn.10015360
mov ecx, eax
call fcn.10007450
mov ecx, eax
call fcn.10015360
push eax
mov ecx, dword [ebp - 0x104]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x104]
mov eax, dword [edx + 0x1c]
call eax
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x32c]
call fcn.1000c0c0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x98]
call fcn.1000bc00
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xb0]
call fcn.1000bc00
cmp dword [ebp - 0xdc], 0
jne 0x100234a8
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xdc]
call fcn.1001df90
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xe8]
call fcn.100159b0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xe4]
call fcn.100159b0
jmp 0x10023512
call fcn.10016dd0
mov dword [ebp - 0x108], eax
lea ecx, [ebp - 0xdc]
push ecx
mov edx, dword [ebp - 0x108]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x108]
mov edx, dword [eax + 0x14]
call edx
lea eax, [ebp - 0xdc]
push eax
mov ecx, dword [ebp - 0xe0]
add ecx, 0x14
call fcn.1001dfc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xdc]
call fcn.1001df90
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xe8]
call fcn.100159b0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xe4]
call fcn.100159b0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100faee9
mov esp, ebp
pop ebp
ret 0x14