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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x38
push ebx
push ebp
push esi
push edi
lea eax, [esp + 0x20]
push eax
mov dword [esp + 0x20], 1
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov ecx, dword [0x7299fc]
call fcn.006665b0
mov dword [esp + 0x18], eax
mov eax, dword [0x72af44]
xor ebx, ebx
cmp eax, ebx
jne 0x445049
jmp 0x444c20
mov edi, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea ecx, [esp + 0x28]
push ecx
call edi
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov ecx, dword [0x7299fc]
call fcn.006665b0
mov edx, dword [0x7295a4]
mov dword [0x72af3c], eax
cmp dword [0x7295dc], ebx
mov dword [0x780670], edx
je 0x444c95
mov eax, dword [0x7295ec]
cmp eax, ebx
je 0x444c89
mov edi, dword [eax]
mov edx, dword [eax + 0xc]
lea ebp, [eax + 0xc]
sub edi, edx
cmp edi, ebx
mov esi, eax
jle 0x444c89
lea ecx, [eax + 0x64]
push ecx
add eax, 0x24
call fcn.005700a0
mov edx, dword [esi]
add esp, 4
mov dword [ebp], edx
mov dword [esi + 4], ebx
mov edi, dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov dword [0x7295dc], ebx
mov eax, dword [0x76c3d4]
cmp eax, ebx
je 0x444ccc
mov edi, edi
mov esi, eax
mov eax, dword [0x76c3d8]
push eax
mov dword [0x76c3d4], ebx
mov dword [0x76c3d8], ebx
mov dword [0x76c3dc], ebx
call esi
mov eax, dword [0x76c3d4]
add esp, 4
cmp eax, esi
je 0x444ccc
cmp eax, ebx
jne 0x444ca0
mov ecx, dword [0x76c3e0]
cmp ecx, ebx
je 0x444cdd
call ecx
mov eax, dword [0x76c3d4]
mov ecx, dword [0x72b008]
cmp ecx, ebx
je 0x444d00
push ecx
call fcn.004200e0
mov esi, dword [0x72b008]
push ebx
push 3
call fcn.00420180
mov eax, dword [0x76c3d4]
cmp eax, ebx
je 0x444d30
mov esi, eax
mov eax, dword [0x76c3d8]
push eax
mov dword [0x76c3d4], ebx
mov dword [0x76c3d8], ebx
mov dword [0x76c3dc], ebx
call esi
mov eax, dword [0x76c3d4]
add esp, 4
cmp eax, esi
je 0x444d30
cmp eax, ebx
jne 0x444d04
mov eax, dword [0x76c3e0]
cmp eax, ebx
je 0x444d3b
call eax
cmp dword [0x76c3f0], 6
jne 0x444d4e
mov eax, dword [0x72b008]
cmp dword [eax], 1
jne 0x444d53
call fcn.00444a70
mov eax, dword [0x72afdc]
xor esi, esi
cmp eax, ebx
jle 0x444d76
mov edi, edi
mov eax, dword [esi*4 + 0x72afd4]
call fcn.0042bc80
mov eax, dword [0x72afdc]
inc esi
cmp esi, eax
jl 0x444d60
mov eax, dword [0x72960c]
cmp eax, ebx
je 0x444d84
call fcn.00552050
lea ecx, [esp + 0x30]
push ecx
call edi
mov esi, dword [0x7299fc]
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov ecx, esi
call fcn.006665b0
sub eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
jns 0x444dae
mov dword [esp + 0x18], ebx
mov ecx, esi
mov edx, 1
shl edx, cl
push ecx
mov dword [esp + 0x24], edx
fild dword [esp + 0x24]
fimul dword [esp + 0x1c]
fmul dword [0x727a04]
fmul dword [0x6bdb0c]
fstp dword [esp]
call fcn.00561d30
add esp, 4
lea eax, [esp + 0x38]
push eax
call edi
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov ecx, dword [0x7299fc]
call fcn.006665b0
mov edi, 0x76a628
mov dword [esp + 0x18], eax
call fcn.0047a550
mov ecx, 0x76cd10
mov byte [esp + 0x14], 1
call fcn.00437b10
test al, al
mov ecx, dword [0x72b008]
jne 0x444e30
cmp ecx, ebx
je 0x444e30
mov eax, dword [ecx]
cmp eax, 7
je 0x444e2c
cmp eax, 0xb
jne 0x444e30
mov al, 1
jmp 0x444e32
xor al, al
movzx eax, al
cmp eax, ebx
je 0x444e4f
push ebx
mov ecx, 0x76cd10
call fcn.00438000
fstp dword [0x7295c0]
jmp 0x444f5b
cmp ecx, ebx
je 0x444f4f
mov esi, dword [0x72b010]
call fcn.0041e810
mov ecx, dword [0x72b010]
fld dword [ecx + 0x2d4]
fcomp dword [0x6bda00]
fnstsw ax
test ah, 0x41
je 0x444e8b
cmp dword [0x72b014], ebx
jne 0x444e8b
cmp dword [ecx + 0x2d8], ebx
je 0x444eb6
push ebx
mov ecx, 0x76cd10
call fcn.00438000
fstp dword [0x7295c0]
mov dword [0x6e30d4], ebx
call fcn.005535f0
mov eax, dword [0x72b010]
call fcn.0041fda0
jmp 0x444f66
mov eax, dword [0x72960c]
call fcn.00551a10
mov ecx, dword [0x72960c]
cmp dword [ecx + 0x18], ebx
je 0x444ef4
push ebx
mov ecx, 0x76cd10
call fcn.00438000
fstp dword [0x7295c0]
mov dword [0x6e30d4], ebx
call fcn.005535f0
mov esi, dword [0x72960c]
call fcn.00552000
jmp 0x444f66
mov edx, dword [0x72b010]
push edx
call fcn.0041e880
push ecx
mov ecx, 0x76cd10
fstp dword [esp]
call fcn.00438000
fst dword [esp + 0x20]
fstp dword [0x7295c0]
mov dword [0x6e30d4], ebx
call fcn.005535f0
mov ecx, 0x76cd10
call fcn.00437fc0
mov eax, dword [esp + 0x20]
mov ecx, dword [0x72b010]
push eax
push ecx
call fcn.0041f260
mov esi, dword [0x72960c]
mov byte [esp + 0x14], bl
call fcn.00552000
jmp 0x444f66
mov edx, dword [0x72ca1c]
mov dword [0x7295c0], edx
mov dword [0x6e30d4], ebx
call fcn.005535f0
mov eax, dword [esp + 0x14]
push eax
mov ecx, 0x76cd10
call fcn.00437b90
call fcn.004e5210
call fcn.0042f8c0
mov ecx, dword [0x72ca1c]
push ecx
call fcn.004757b0
add esp, 4
call fcn.004862d0
mov eax, dword [0x72a4d8]
cmp eax, ebx
je 0x444fa8
mov edx, dword [0x72ca1c]
push edx
call fcn.00501700
mov ebp, dword [0x72ca1c]
mov edi, 0x72ce08
mov esi, 2
push ebp
call fcn.005545c0
add edi, 0x30
dec esi
jne 0x444fb8
cmp edi, 0x72cec8
jl 0x444fb3
call fcn.00554780
mov eax, 0x76c450
call fcn.00442350
call fcn.00445910
call fcn.004097d0
call fcn.00561e80
call fcn.00561f10
cmp byte [esp + 0x14], bl
jne 0x444fff
mov ecx, 0x76cd10
call fcn.00437fe0
mov ecx, dword [esp + 0x1c]
mov eax, 3
cmp ecx, eax
jle 0x445010
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov ecx, dword [0x7299fc]
call fcn.006665b0
mov dword [0x72af40], eax
call fcn.00444930
call fcn.0040fda0
cmp dword [0x72af44], ebx
je 0x444c20
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret