Function at 0x10068060
Capabilities:
Check for time delay via gettickcount
Execute anti-debugging instructions
Get system information on windows
Query or enumerate registry value
Set registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xa4
mov eax, dword [0x1009e0d0]
push ebx
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
push edi
mov dword [ebp - 4], eax
lea eax, [ebp - 0x64]
push eax
xor edi, edi
push 0x100018c0
mov ebx, 0x1e
push 0x80000001
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x6c], 0x50
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x58], edi
mov dword [ebp - 0x60], edi
mov dword [ebp - 0x64], edi
call esi
cmp eax, edi
jne 0x10068165
mov edx, dword [ebp - 0x64]
lea ecx, [ebp - 0x60]
push ecx
push 0x100018b4
push edx
call esi
cmp eax, edi
jne 0x10068165
mov ecx, dword [ebp - 0x60]
lea eax, [ebp - 0x58]
push eax
push 0x100018ac
push ecx
call esi
cmp eax, 2
jne 0x100680ef
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x58]
push edx
push 0x100018ac
push eax
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyA]
cmp eax, edi
jne 0x10068165
lea ecx, [ebp - 0x6c]
push ecx
mov ecx, dword [ebp - 0x58]
lea edx, [ebp - 0x54]
push edx
lea eax, [ebp - 0x68]
push eax
push edi
push 0x10003470
push ecx
mov dword [ebp - 0x80], 1
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
cmp eax, edi
jne 0x10068165
cmp dword [ebp - 0x68], 4
jne 0x10068228
mov eax, dword [ebp - 0x58]
cmp eax, edi
mov edx, dword [ebp - 0x54]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [0x100b9cdc], edx
je 0x1006813d
push eax
call esi
mov eax, dword [ebp - 0x60]
cmp eax, edi
je 0x10068147
push eax
call esi
mov eax, dword [ebp - 0x64]
cmp eax, edi
je 0x10068151
push eax
call esi
mov eax, dword [0x100b9cdc]
mov ecx, dword [ebp - 4]
call fcn.10007179
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x70], edi
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x78], edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
lea eax, [ebp - 0xa4]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [ebp - 0x8c]
cmp eax, 0x182
jne 0x1006819f
mov dword [ebp - 0x5c], 0xa
jmp 0x10068223
cmp eax, 0x1e6
jne 0x100681ab
mov dword [ebp - 0x5c], ebx
jmp 0x10068223
push eax
push ebx
push ecx
push edx
pushfd
pop eax
mov ecx, eax
xor eax, 0x200000
push eax
popfd
pushfd
pop eax
xor eax, ecx
je 0x100681ca
lea edi, [ebp - 0x74]
rdtsc
mov dword [edi], eax
mov dword [edi + 4], edx
pop edx
pop ecx
pop ebx
pop eax
mov ecx, dword [ebp - 0x74]
or ecx, dword [ebp - 0x70]
je 0x10068221
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
lea edi, [ebp - 0x7c]
rdtsc
mov dword [edi], eax
mov dword [edi + 4], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, esi
jne 0x100681fc
mov eax, 0x1f4
xor esi, esi
mov edx, dword [ebp - 0x7c]
mov edi, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x78]
sub eax, esi
mov esi, dword [ebp - 0x70]
imul eax, eax, 0x3e8
push 0
sub edx, edi
push eax
sbb ecx, esi
push ecx
push edx
call fcn.1009bc60
mov dword [ebp - 0x5c], eax
xor edi, edi
cmp dword [ebp - 0x80], edi
je 0x10068240
mov eax, dword [ebp - 0x58]
push 4
lea edx, [ebp - 0x5c]
push edx
push 4
push edi
push 0x10003470
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov eax, dword [ebp - 0x58]
cmp eax, edi
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
je 0x10068250
push eax
call esi
mov eax, dword [ebp - 0x60]
cmp eax, edi
je 0x1006825a
push eax
call esi
mov eax, dword [ebp - 0x64]
cmp eax, edi
je 0x10068264
push eax
call esi
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 4]
mov dword [0x100b9cdc], eax
call fcn.10007179
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret