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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc8
mov eax, dword [0x44e740]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, edx
mov dword [ebp - 0xc4], ecx
call edi
xor esi, esi
sub eax, dword [0x454000]
push 0
sbb esi, dword [0x454004]
push 0x3e8
push esi
push eax
call fcn.0043c460
push edx
push eax
push str.__ut_:_ld
push 0x400
push 0x4517c8
call fcn.00425c16
add esp, 0x14
mov esi, eax
add esi, 0x4517c8
call edi
push eax
mov edi, 0x451bc8
mov eax, edi
push str.__bt_:_ld
sub eax, esi
push eax
push esi
call fcn.00425c16
add esi, eax
mov eax, edi
push str.__tid_:_
sub eax, esi
push eax
push esi
call fcn.00425c16
add esp, 0x1c
add esi, eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
mov eax, 0x451bc7
push str.NA__d
sub eax, esi
push eax
push esi
call fcn.00425c16
add esi, eax
mov eax, edi
push 0x446f60
sub eax, esi
push eax
push esi
call fcn.00425c16
add esp, 0x1c
mov dword [ebp - 0x24], 0
add esi, eax
mov dword [ebp - 0x14], 0
lea eax, [ebp - 8]
push eax
push 4
lea eax, [ebp - 0x10]
push eax
lea eax, [ebx + 4]
push eax
push dword [ebp - 0xc4]
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea eax, [ebp - 8]
push eax
push 4
lea eax, [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x10]
add eax, 0xb8
push eax
push dword [ebp - 0xc4]
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea eax, [ebp - 8]
push eax
push 4
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x10]
add eax, 0xa4
push eax
push dword [ebp - 0xc4]
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea eax, [ebp - 8]
mov dword [ebp - 0x1c], 0
push eax
push 4
lea eax, [ebp - 0x20]
mov dword [ebp - 0x18], 0
push eax
push ebx
mov ebx, dword [ebp - 0xc4]
push ebx
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x40afc0
lea ecx, [ebp - 8]
push ecx
push 4
lea ecx, [ebp - 0x1c]
push ecx
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea eax, [ebp - 8]
push eax
push 4
lea eax, [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x20]
add eax, 0xc
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
push dword [ebp - 0x14]
mov eax, edi
push dword [ebp - 0x24]
sub eax, esi
push dword [ebp - 0x18]
push dword [ebp - 0x1c]
push str.__ec_:__.8X___ea_:__.8X___eip_:__.8X___ebx_:__.8X_
push eax
push esi
call fcn.00425c16
add esp, 0x1c
add esi, eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0xc8], eax
test eax, eax
je 0x40b009
push eax
mov ecx, edi
push str.__bs_:__.8X_
sub ecx, esi
push ecx
push esi
call fcn.00425c16
add esp, 0x10
add esi, eax
lea eax, [ebp - 8]
xor ebx, ebx
push eax
push 4
lea eax, [ebp - 0xc]
mov dword [ebp - 0xc], ebx
push eax
mov eax, dword [ebp - 0x10]
add eax, 0xc4
push eax
push dword [ebp - 0xc4]
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, edi
push str.__st_:_
sub eax, esi
push eax
push esi
call fcn.00425c16
add esi, eax
add esp, 0xc
mov eax, dword [ebp - 0xc]
xor edi, edi
lea ecx, [ebp - 8]
push ecx
push 4
lea ecx, [ebp - 0x28]
push ecx
push eax
push dword [ebp - 0xc4]
call dword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x40b0a7
mov ecx, dword [ebp - 0x28]
mov eax, ecx
sub eax, dword [ebp - 0xc8]
cmp eax, 0x200000
jae 0x40b095
push ecx
mov eax, 0x451bc8
push str._.X_
sub eax, esi
push eax
push esi
call fcn.00425c16
add esi, eax
add esp, 0x10
mov eax, ebx
inc ebx
cmp eax, 0x18
jg 0x40b0a7
mov eax, dword [ebp - 0xc]
inc edi
add eax, 4
mov dword [ebp - 0xc], eax
cmp edi, 0x400
jne 0x40b047
mov ebx, 0x451bc8
mov eax, ebx
push 0x446f60
sub eax, esi
push eax
push esi
call fcn.00425c16
add esp, 0xc
mov dword [ebp - 0xc0], 0x94
add esi, eax
lea eax, [ebp - 0xc0]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp byte [0x454044], 0
jne 0x40b145
push str.kernel32
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
jne 0x40b10f
push str.kernel32
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
jne 0x40b10f
mov dword [0x4517c0], eax
xor al, al
mov byte [0x454044], 1
jmp 0x40b14f
push str.IsWow64Process
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4517c0], eax
mov byte [0x454044], 1
test eax, eax
jne 0x40b12f
xor al, al
jmp 0x40b14f
push 0x454048
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [0x4517c0]
test eax, eax
je 0x40b12b
cmp dword [0x454048], 0
setne al
lea ecx, [ebp - 0xac]
movzx eax, al
push ecx
push 0
push eax
push dword [ebp - 0xb4]
sub ebx, esi
push dword [ebp - 0xb8]
push dword [ebp - 0xbc]
push str.__os_:__d._d._d._d._d._s_
push ebx
push esi
call fcn.00425c16
mov ecx, dword [ebp - 4]
add esp, 0x24
xor ecx, ebp
mov eax, 0x4517c8
pop edi
pop esi
pop ebx
call fcn.00424db6
mov esp, ebp
pop ebp
ret