Function at 0x4299f0
Capabilities:
Check for time delay via queryperformancecounter

Disassembly:
sub esp, 0x2c
push ebx
push ebp
mov ebp, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
xor ebx, ebx
cmp byte [0x4edfe4], bl
push esi
push edi
mov dword [esp + 0x10], ebx
mov dword [0x4ec008], ebx
je 0x429aa1
mov eax, dword [0x4edfe0]
cmp byte [eax + 0x1244], bl
je 0x429a30
mov eax, dword [0x4ebb7c]
imul eax, dword [0x4ebb78]
jmp 0x429a35
mov eax, dword [0x4ebb78]
mov edi, dword [0x4ebb80]
push 0x4ebe18
imul edi, eax
call ebp
xor esi, esi
cmp edi, ebx
jle 0x429a6c
jmp 0x429a50
mov eax, 0x4a2958
mov dword [0x4ebb84], esi
call fcn.004020d0
call fcn.004102c0
add esi, 1
cmp esi, edi
jl 0x429a50
push 0x4ebe98
call ebp
fild qword [0x4ebe98]
fild qword [0x4ebe18]
fsubp st(1)
fmul qword [0x4999e0]
fild qword [0x4ebde8]
fdivp st(1)
fst qword [0x4ebf18]
fadd qword [0x4ebf98]
fstp qword [0x4ebf98]
cmp dword [0x4e51d4], ebx
je 0x429af7
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
lea edx, [esp + 0x10]
push edx
push ebx
push ebx
push ebx
push eax
mov eax, dword [ecx + 0x48]
call eax
mov eax, dword [0x4e51d4]
mov ecx, dword [eax]
lea edx, [esp + 0x14]
push edx
push ebx
push eax
mov eax, dword [ecx + 0x48]
call eax
test eax, eax
jl 0x429af7
mov edx, dword [esp + 0x14]
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
push edx
push ebx
push eax
mov eax, dword [ecx + 0x94]
call eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [0x4e51d0]
fld1
mov ecx, dword [eax]
mov edx, dword [ecx + 0xac]
push ebx
push ecx
fstp dword [esp]
push ebx
push 3
push ebx
push ebx
push eax
call edx
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xa4]
push eax
call edx
test eax, eax
jl 0x429b8b
call fcn.004291e0
cmp byte [0x4edfe4], bl
je 0x429b7b
push 0x4ebe10
call ebp
mov dword [0x4e51ec], ebx
call fcn.00410c30
push 0x4ebe90
call ebp
fild qword [0x4ebe90]
fild qword [0x4ebe10]
fsubp st(1)
fmul qword [0x4999e0]
fild qword [0x4ebde8]
fdivp st(1)
fst qword [0x4ebf10]
fadd qword [0x4ebf90]
fstp qword [0x4ebf90]
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xa8]
push eax
call edx
cmp dword [0x4e2970], ebx
je 0x429bce
mov eax, dword [0x4e51dc]
mov ecx, dword [eax]
lea edx, [esp + 0x14]
push edx
push ebx
push eax
mov eax, dword [ecx + 0x48]
call eax
test eax, eax
jl 0x429be8
mov edx, dword [esp + 0x14]
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
push edx
push ebx
push eax
mov eax, dword [ecx + 0x94]
call eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x429be8
mov ecx, dword [esp + 0x10]
cmp ecx, ebx
je 0x429be8
mov eax, dword [0x4e51d0]
mov edx, dword [eax]
push ecx
push ebx
push eax
mov eax, dword [edx + 0x94]
call eax
xor esi, esi
cmp dword [0x4e2980], ebx
jle 0x429c55
mov eax, dword [0x4e51d0]
fld1
mov ecx, dword [eax]
mov edx, dword [ecx + 0xac]
push ebx
push ecx
fstp dword [esp]
push ebx
push 3
push ebx
push ebx
push eax
call edx
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xa4]
push eax
call edx
test eax, eax
jl 0x429c4a
cmp byte [0x4edfe4], bl
je 0x429c3a
call fcn.004291e0
mov dword [0x4e51ec], ebx
call fcn.00411240
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xa8]
push eax
call edx
add esi, 1
cmp esi, dword [0x4e2980]
jl 0x429bf2
cmp dword [0x4e2970], ebx
je 0x429cc4
mov ecx, dword [esp + 0x10]
cmp ecx, ebx
je 0x429c77
mov eax, dword [0x4e51d0]
mov edx, dword [eax]
push ecx
push ebx
push eax
mov eax, dword [edx + 0x94]
call eax
mov eax, dword [0x4e51d0]
fld1
mov ecx, dword [eax]
mov edx, dword [ecx + 0xac]
push ebx
push ecx
fstp dword [esp]
push ebx
push 3
push ebx
push ebx
push eax
call edx
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xa4]
push eax
call edx
test eax, eax
jl 0x429cc4
cmp byte [0x4edfe4], bl
je 0x429cb4
call fcn.004296d0
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xa8]
push eax
call edx
cmp byte [0x4edfe4], bl
mov eax, dword [0x4e51d4]
mov ecx, dword [0x4e51d8]
mov dword [0x4e51d4], ecx
mov dword [0x4e51d8], eax
jne 0x429d13
cmp byte [0x4edfe5], bl
je 0x429cf1
mov edi, str.Now_Exiting...
jmp 0x429d0e
mov edx, dword [0x4a28f0]
push edx
lea eax, [esp + 0x1c]
push str.Now_Loading..._d
push eax
call fcn.0045b0bf
add esp, 0xc
lea edi, [esp + 0x18]
call fcn.00402da0
mov edx, dword [0x4e2b88]
mov eax, dword [0x4e51d0]
mov ecx, dword [eax]
push ebx
push edx
push ebx
push ebx
push eax
mov eax, dword [ecx + 0x44]
call eax
xor ecx, ecx
cmp dword [0x4ebb68], ebx
sete cl
cmp byte [0x4edfe4], bl
mov dword [0x4ebb68], ecx
je 0x429da0
fld qword [0x4ebf18]
mov esi, dword [0x4edfe0]
fld qword [0x4999e0]
mov edx, dword [esi + 0xe68]
fmul st(1), st(0)
mov dword [0x4ebd1c], edx
fxch st(1)
call fcn.0048c510
fmul qword [0x4ebf10]
mov dword [0x4ebd20], eax
call fcn.0048c510
mov dword [0x4ebd24], eax
mov eax, dword [esi + 0xc34]
mov dword [0x4ebd28], eax
mov esi, dword [esi + 0xcd8]
cmp esi, ebx
je 0x429da0
mov ecx, dword [esi + 0xe8]
mov dword [0x4ebd2c], ecx
cmp byte [0x4edfe5], bl
je 0x429db5
mov byte [0x4edfe4], bl
mov byte [0x4edfe6], 1
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x429dc5
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
push 0x4ebed0
call ebp
fild qword [0x4ebed0]
fild qword [0x4ebe50]
push 0x4ebe50
fsubp st(1)
fmul qword [0x4999e0]
fild qword [0x4ebde8]
fdivp st(1)
fst qword [0x4ebf50]
fadd qword [0x4ebfd0]
fstp qword [0x4ebfd0]
call ebp
fld qword [0x4999e0]
fdiv qword [0x4ebf50]
call fcn.0048c510
cmp dword [0x4ebdcc], ebx
mov dword [0x4ebd38], eax
je 0x429e33
cmp dword [0x4ebb70], ebx
jg 0x429e33
cmp dword [0x4ebb64], ebx
je 0x429ed4
push 0x4ebdf8
call ebp
fild qword [0x4ebdf8]
fild qword [0x4ebdf0]
fsubp st(1)
fmul qword [0x4999e0]
fild qword [0x4ebde8]
fdivp st(1)
fst qword [0x4ebe00]
fld qword [0x4ebba0]
fmul qword [0x4ebb98]
fcompp
fnstsw ax
test ah, 0x41
jne 0x429ebc
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x4ebdf8
call ebp
fild qword [0x4ebdf8]
fild qword [0x4ebdf0]
push ebx
fsubp st(1)
fmul qword [0x4999e0]
fild qword [0x4ebde8]
fdivp st(1)
fstp qword [0x4ebe00]
call esi
fld qword [0x4ebba0]
fmul qword [0x4ebb98]
fcomp qword [0x4ebe00]
fnstsw ax
test ah, 0x41
je 0x429e77
mov ecx, dword [0x4ebdf8]
mov edx, dword [0x4ebdfc]
mov dword [0x4ebdf0], ecx
mov dword [0x4ebdf4], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret