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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x3f4
push 0
push 0
dec ecx
jne 0x3f0b03c
push ecx
push ebx
push esi
push edi
mov dword [ebp - 0x1f50], eax
mov ecx, 0x3e9
lea eax, [ebp - 0xfa8]
mov edx, dword [0x3cb12c8]
call fcn.03cb96d0
mov ecx, 0x3e9
lea eax, [ebp - 0x1f4c]
mov edx, dword [0x3cb12c8]
call fcn.03cb96d0
mov esi, dword [0x3f2dcd8]
xor eax, eax
push ebp
push 0x3f0b70f
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 0x1f54], eax
mov eax, dword [0x3f2dd70]
mov edx, 0x3f0b72c
call fcn.03cb8230
mov dl, 1
mov eax, dword [0x3e7436c]
call fcn.03e74ea8
mov edx, dword [0x3f2e098]
mov dword [edx], eax
push 0
lea eax, [ebp - 4]
push eax
mov edx, dword [0x3f2e0c0]
mov edx, dword [edx]
mov ecx, 0x3f0b748
mov eax, 0x80000001
call fcn.03e6ee30
cmp dword [ebp - 4], 0
je 0x3f0b100
lea ecx, [ebp - 0x1f60]
mov edx, dword [0x3f2dd70]
mov edx, dword [edx]
mov eax, dword [ebp - 4]
call fcn.03e73dac
mov edx, dword [ebp - 0x1f60]
mov eax, esi
call fcn.03cb8230
jmp 0x3f0b10c
mov eax, esi
mov edx, 0x3f0b768
call fcn.03cb8230
mov eax, dword [0x3f2e224]
push eax
mov edx, dword [esi]
mov ecx, 1
mov eax, 0x3f0b79c
call fcn.03cb936c
mov ecx, eax
dec ecx
mov eax, dword [esi]
mov edx, 1
call fcn.03cb915c
mov edx, dword [esi]
mov ecx, 1
mov eax, 0x3f0b7ac
call fcn.03cb936c
mov ecx, eax
mov eax, esi
mov edx, 1
call fcn.03cb91a4
mov edx, dword [0x3f2e224]
mov edx, dword [edx]
mov eax, 0x3f0b7bc
call fcn.03e6d434
mov dword [ebp - 0x1f58], eax
lea ecx, [ebp - 0xfa8]
mov edx, dword [0x3f2e224]
mov edx, dword [edx]
mov eax, 0x3f0b7cc
call fcn.03e6d4d0
lea ecx, [ebp - 0x1f4c]
mov edx, dword [esi]
mov eax, 0x3f0b7dc
call fcn.03e6d4d0
mov eax, dword [ebp - 0x1f54]
cmp eax, dword [ebp - 0x1f58]
jne 0x3f0b1a9
xor eax, eax
mov dword [ebp - 0x1f54], eax
mov eax, dword [0x3f2e2f0]
cmp dword [eax], 0
je 0x3f0b1e3
mov eax, dword [0x3f2ddd4]
cmp word [eax], 0
je 0x3f0b1e3
mov eax, dword [0x3f2dc00]
mov edx, dword [0x3f2e2f0]
mov edx, dword [edx]
call fcn.03cb8230
mov eax, dword [0x3f2ddd4]
movzx eax, word [eax]
mov edx, dword [0x3f2dfdc]
mov word [edx], ax
jmp 0x3f0b226
mov eax, dword [0x3f2dc00]
mov edx, dword [ebp - 0x1f54]
mov edx, dword [ebp + edx*4 - 0xfa8]
call fcn.03cb8e78
lea eax, [ebp - 0x1f64]
mov edx, dword [ebp - 0x1f54]
mov edx, dword [ebp + edx*4 - 0x1f4c]
call fcn.03cb8e78
mov eax, dword [ebp - 0x1f64]
call fcn.03cd2604
mov edx, dword [0x3f2dfdc]
mov word [edx], ax
mov eax, dword [0x3f2dc7c]
mov byte [eax], 0
xor edx, edx
push ebp
push 0x3f0b268
push dword fs:[edx]
mov dword fs:[edx], esp
push 0x4e20
mov ecx, dword [0x3f2dfdc]
movzx ecx, word [ecx]
mov edx, dword [0x3f2dc00]
mov edx, dword [edx]
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03e74eec
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x3f0b288
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03e7553c
cmp al, 1
jne 0x3f0b2ed
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
mov edx, 0x7530
call fcn.03e75544
lea edx, [ebp - 0x1f6c]
mov eax, 1
call fcn.03cd2394
push dword [ebp - 0x1f6c]
push 0x3f0b7ec
mov eax, dword [0x3f2dd70]
push dword [eax]
lea eax, [ebp - 0x1f68]
mov edx, 3
call fcn.03cb9074
mov edx, dword [ebp - 0x1f68]
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03e75388
call fcn.03d5b48c
mov dword [ebp - 0x1f5c], eax
jmp 0x3f0b678
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03e7553c
test al, al
jne 0x3f0b31a
mov eax, dword [0x3f2dc7c]
mov byte [eax], 1
jmp 0x3f0b692
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03e7553c
test al, al
je 0x3f0b692
call fcn.03d5b48c
sub eax, dword [ebp - 0x1f5c]
cmp eax, 0x2710
jbe 0x3f0b390
lea edx, [ebp - 0x1f70]
mov eax, 5
call fcn.03cd2394
lea eax, [ebp - 0x1f70]
mov edx, 0x3f0b7fc
call fcn.03cb8f94
mov edx, dword [ebp - 0x1f70]
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03e75388
test eax, eax
jle 0x3f0b383
call fcn.03d5b48c
mov dword [ebp - 0x1f5c], eax
jmp 0x3f0b390
mov eax, dword [0x3f2dc7c]
mov byte [eax], 1
jmp 0x3f0b692
lea edx, [ebp - 0x1f74]
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03e75444
mov edx, dword [ebp - 0x1f74]
mov eax, dword [0x3f2e32c]
call fcn.03cb8230
mov eax, dword [0x3f2e32c]
cmp dword [eax], 0
jne 0x3f0b3fd
call sub.kernel32.dll_GetLastError_2
sub eax, 0x2736
je 0x3f0b3d5
add eax, 0xfffffff1
sub eax, 2
jb 0x3f0b3d5
sub eax, 2
jne 0x3f0b3ee
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03e75210
mov eax, dword [0x3f2dc7c]
mov byte [eax], 1
jmp 0x3f0b692
mov eax, 0x3e8
call fcn.03d5b72c
jmp 0x3f0b678
mov eax, dword [0x3f2e32c]
mov eax, dword [eax]
mov edx, 0x3f0b80c
call fcn.03cb9124
je 0x3f0b678
lea eax, [ebp - 0x1f78]
push eax
mov edx, dword [0x3f2e32c]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x3f0b820
call fcn.03cb936c
mov ecx, eax
dec ecx
mov eax, dword [0x3f2e32c]
mov eax, dword [eax]
mov edx, 1
call fcn.03cb915c
mov eax, dword [ebp - 0x1f78]
push eax
lea edx, [ebp - 0x1f7c]
mov eax, 0x90
call fcn.03cd2394
mov edx, dword [ebp - 0x1f7c]
pop eax
call fcn.03cb9124
je 0x3f0b62e
lea eax, [ebp - 0x1f80]
push eax
mov edx, dword [0x3f2e32c]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x3f0b830
call fcn.03cb936c
mov ecx, eax
dec ecx
mov eax, dword [0x3f2e32c]
mov eax, dword [eax]
mov edx, 1
call fcn.03cb915c
mov eax, dword [ebp - 0x1f80]
push eax
lea edx, [ebp - 0x1f84]
mov eax, 0x97
call fcn.03cd2394
mov edx, dword [ebp - 0x1f84]
pop eax
call fcn.03cb9124
je 0x3f0b62e
lea eax, [ebp - 0x1f88]
push eax
mov edx, dword [0x3f2e32c]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x3f0b840
call fcn.03cb936c
mov ecx, eax
dec ecx
mov eax, dword [0x3f2e32c]
mov eax, dword [eax]
mov edx, 1
call fcn.03cb915c
mov eax, dword [ebp - 0x1f88]
push eax
lea edx, [ebp - 0x1f8c]
mov eax, 0x99
call fcn.03cd2394
mov edx, dword [ebp - 0x1f8c]
pop eax
call fcn.03cb9124
je 0x3f0b62e
lea eax, [ebp - 0x1f90]
push eax
mov edx, dword [0x3f2e32c]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x3f0b850
call fcn.03cb936c
mov ecx, eax
dec ecx
mov eax, dword [0x3f2e32c]
mov eax, dword [eax]
mov edx, 1
call fcn.03cb915c
mov eax, dword [ebp - 0x1f90]
push eax
lea edx, [ebp - 0x1f94]
mov eax, 0x5e
call fcn.03cd2394
mov edx, dword [ebp - 0x1f94]
pop eax
call fcn.03cb9124
je 0x3f0b62e
lea eax, [ebp - 0x1f98]
push eax
mov edx, dword [0x3f2e32c]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x3f0b860
call fcn.03cb936c
mov ecx, eax
dec ecx
mov eax, dword [0x3f2e32c]
mov eax, dword [eax]
mov edx, 1
call fcn.03cb915c
mov eax, dword [ebp - 0x1f98]
push eax
lea edx, [ebp - 0x1f9c]
mov eax, 0x60
call fcn.03cd2394
mov edx, dword [ebp - 0x1f9c]
pop eax
call fcn.03cb9124
je 0x3f0b62e
lea eax, [ebp - 0x1fa0]
push eax
mov edx, dword [0x3f2e32c]
mov edx, dword [edx]
mov ecx, 1
mov eax, 0x3f0b870
call fcn.03cb936c
mov ecx, eax
dec ecx
mov eax, dword [0x3f2e32c]
mov eax, dword [eax]
mov edx, 1
call fcn.03cb915c
mov eax, dword [ebp - 0x1fa0]
push eax
lea edx, [ebp - 0x1fa4]
mov eax, 0x61
call fcn.03cd2394
mov edx, dword [ebp - 0x1fa4]
pop eax
call fcn.03cb9124
jne 0x3f0b63d
mov eax, dword [0x3f2dbfc]
mov edx, 0x3f0b880
call fcn.03cb82cc
xor eax, eax
push ebp
push 0x3f0b66e
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x3efdeac
xor edx, edx
call fcn.03e6d6cc
mov ebx, eax
push ebx
call sub.kernel32.dll_CloseHandle_1
call fcn.03e6d6b4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x3f0b678
mov eax, dword [0x3f2dc7c]
cmp byte [eax], 0
jne 0x3f0b692
mov eax, dword [ebp - 0x1f50]
cmp byte [eax + 0xe], 0
je 0x3f0b2fd
mov eax, 0x2710
call fcn.03d5b72c
inc dword [ebp - 0x1f54]
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03e75210
mov eax, dword [ebp - 0x1f50]
cmp byte [eax + 0xe], 0
je 0x3f0b193
mov eax, dword [0x3f2e098]
mov eax, dword [eax]
call fcn.03cb60f0
mov eax, dword [0x3f2e098]
xor edx, edx
mov dword [eax], edx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x3f0b716
lea eax, [ebp - 0x1fa4]
mov edx, 0x12
call fcn.03cb7eb0
lea eax, [ebp - 0x1f4c]
mov ecx, 0x7d2
mov edx, dword [0x3cb12c8]
call fcn.03cb97c4
lea eax, [ebp - 4]
call fcn.03cb7e50
ret