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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x9c
mov eax, dword [0x111ec774]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov ecx, dword [edx + 0xdb54]
imul eax, eax, 0x10c8
push ebx
push esi
mov esi, dword [ecx + 4]
push edi
mov edi, dword [ecx + 8]
lea eax, [eax + edx - 0x1024]
mov dword [ebp - 0x88], ecx
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x8c], 0
jmp 0x11070486
mov ecx, dword [ebp - 0x88]
cmp dword [ebp - 0x8c], 0
jne 0x110704da
push 0
mov ebx, 0x2b
call fcn.1106e570
mov edi, eax
push 0
mov ebx, 0x2c
shl edi, 0x10
call fcn.1106e570
add esp, 8
add eax, edi
mov dword [ebp - 0x94], eax
je 0x11070604
push 0
mov ebx, 0x2f
call fcn.1106e570
mov ecx, dword [ebp - 0x88]
add esp, 4
mov dword [ebp - 0x98], eax
jmp 0x110704e7
cmp dword [esi + 0x20c], 0
jne 0x110705ee
mov edi, dword [esi + 0x20c]
test edi, edi
jne 0x11070505
mov edx, dword [ecx]
mov eax, dword [esi + 0x18]
mov edx, dword [edx]
push eax
call edx
mov edi, eax
test edi, edi
je 0x110705ee
cmp dword [ebp - 0x98], 0
jne 0x1107053d
and edi, 0xffffff
cmp edi, dword [ebp - 0x94]
je 0x11070604
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push 1
push 0x18a7
push eax
call edx
add esp, 0xc
jmp 0x110705d3
mov eax, edi
shr eax, 0x10
push eax
mov ebx, 0x30
call fcn.1106e570
movzx ecx, di
push ecx
mov ebx, 0x31
call fcn.1106e570
add esp, 8
cmp eax, 4
ja case.default.0x11070563
jmp dword [eax*4 + 0x110708fc]
test edi, 0xff000000
je 0x110705a0
and edi, 0xffffff
mov edx, edi
shr edx, 0x10
push edx
mov ebx, 0x30
call fcn.1106e570
movzx eax, di
push eax
mov ebx, 0x31
call fcn.1106e570
add esp, 8
cmp eax, 4
jbe switch.0x11070563
jmp case.default.0x11070563
xor ecx, ecx
cmp dword [esi + 0xe0], 1
push 0x18a7
sete cl
push 0
mov ebx, esi
push ecx
call fcn.1106d1a0
mov eax, dword [ebp - 0x90]
mov edx, dword [eax]
push 1
push 0x18a7
push eax
mov eax, dword [edx + 4]
call eax
add esp, 0x18
cmp eax, 2
je 0x110705ee
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp eax, 3
jl 0x11070480
pop edi
pop esi
mov eax, 0xfff0
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.11162bb7
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.11162bb7
mov esp, ebp
pop ebp
ret
push 0
mov ebx, 0x20
call fcn.1106e570
add esp, 4
jmp 0x1107086b
push 0
mov ebx, 0x1f
call fcn.1106e570
mov edi, dword [ebp - 0x90]
push 0x10000000
push 0x18bf
push edi
call fcn.11089ec0
xor ecx, ecx
cmp dword [esi + 0xe0], 1
push 0x18bf
sete cl
push 0
mov ebx, esi
push ecx
call fcn.1106d1a0
mov ebx, dword [esi + 0x210]
add esp, 0x1c
cmp dword [esi + 0x218], 0
mov dword [ebp - 0x94], ebx
je 0x110706d5
mov edx, dword [ebp - 0x88]
mov ecx, dword [edx + 0xc]
push 0
push 0x80
lea edx, [ebp - 0x84]
push edx
mov byte [ebp - 0x84], 0
mov eax, dword [ecx]
mov eax, dword [eax + 4]
push 0x1119a8b4
push 0x111a0f58
call eax
call sub.PCicAPi.DLL_CapiHangup
call sub.PCicAPi.DLL_CapiClose
push 0
push 0
call sub.PCicAPi.DLL_CapiOpen
lea ecx, [ebp - 0x84]
push ecx
push 1
call sub.PCicAPi.DLL_CapiListen
add esp, 0x10
jmp 0x11070705
test ebx, ebx
jne 0x110706f0
push 0x3012
push 0x111a2458
push 0x111a34d0
call fcn.11029a70
add esp, 0xc
mov ecx, ebx
call fcn.110d1fa0
mov edx, dword [esi + 0x214]
push edx
mov ecx, ebx
call fcn.110d1e00
mov ebx, dword [ebp - 0x9c]
mov eax, dword [ebx + 0x28]
call eax
push eax
push 0x10000000
push 0x18cb
push edi
call fcn.11089ec0
mov ecx, dword [ebx + 0x28]
call ecx
xor edx, edx
cmp dword [esi + 0xe0], 1
push eax
sete dl
push 0x18cb
push 0
mov ebx, esi
push edx
call fcn.1106d1a0
mov ebx, dword [sym.imp.KeRneL32.DLl_GetTickCount]
add esp, 0x20
mov dword [ebp - 0x88], 0
mov edi, 0x111a34cc
call ebx
mov dword [ebp - 0x8c], eax
call ebx
sub eax, dword [ebp - 0x8c]
cmp eax, 0x15f90
jae 0x110707e2
mov ecx, dword [ebp - 0x90]
mov eax, dword [ecx]
mov edx, dword [eax + 0x20]
push 0
push 0
call edx
mov dword [ebp - 0x88], eax
push 0
test eax, eax
jne 0x11070838
lea ebx, [eax + 0x25]
call fcn.1106e570
add esp, 4
cmp eax, 0xffffffff
je 0x11070817
movzx ecx, byte [edi]
and eax, 0x7f
cmp eax, ecx
je 0x110707b1
mov edi, 0x111a34c8
movzx edx, byte [edi]
cmp eax, edx
jne 0x110707b9
inc edi
cmp byte [edi], 0
jne 0x1107081f
push 0
mov ebx, 0x20
call fcn.1106e570
add esp, 4
mov ecx, esi
call fcn.1106ee50
test eax, eax
jne 0x11070847
mov dword [ebp - 0x88], 1
cmp dword [esi + 0x218], 0
je 0x1107089f
call sub.PCicAPi.DLL_CapiHangup
mov eax, dword [ebp - 0x88]
neg eax
sbb eax, eax
pop edi
and eax, 0xfffffff3
pop esi
add eax, 0xfffd
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.11162bb7
mov esp, ebp
pop ebp
ret
push 0x64
call dword [sym.imp.KeRneL32.DLl_Sleep]
call dword [sym.imp.KeRneL32.DLl_GetTickCount]
sub eax, dword [ebp - 0x8c]
cmp eax, 0x15f90
jb 0x11070771
jmp 0x110707e2
mov ebx, 0x1f
call fcn.1106e570
add esp, 4
jmp 0x110707e2
mov eax, dword [ebp - 0x90]
push 0x10000000
push 0x190b
push eax
call fcn.11089ec0
add esp, 0xc
push 0x3e8
call dword [sym.imp.KeRneL32.DLl_Sleep]
xor ecx, ecx
cmp dword [esi + 0xe0], 1
push 0x18ca
sete cl
push 0
mov ebx, esi
push ecx
call fcn.1106d1a0
add esp, 0xc
pop edi
pop esi
mov eax, 0xfff9
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.11162bb7
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x94]
call fcn.110d1fa0
mov eax, dword [ebp - 0x88]
neg eax
sbb eax, eax
pop edi
and eax, 0xfffffff3
pop esi
add eax, 0xfffd
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.11162bb7
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfff8
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.11162bb7
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
mov eax, 0xfffd
pop ebx
call fcn.11162bb7
mov esp, ebp
pop ebp
ret