Function at 0x402c80
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x42c560
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3c
push ebx
push esi
push edi
xor ebx, ebx
push ebx
mov esi, ecx
push 0x42f872
lea ecx, [esp + 0x18]
mov dword [esp + 0x30], 0xf
mov dword [esp + 0x2c], ebx
mov byte [esp + 0x1c], bl
call fcn.00402ab0
lea ecx, [esp + 0xc]
mov dword [esp + 0x50], ebx
call fcn.00404bb0
cmp byte [0x43cfd2], bl
mov byte [esp + 0x50], 1
mov ecx, esi
je 0x402cf7
push str.Limits:_Disabled
push 0x138c
call fcn.00426489
mov ecx, eax
call fcn.00426562
mov eax, 0xff
jmp 0x402d12
push 0x42f8e4
push 0x138c
call fcn.00426489
mov ecx, eax
call fcn.00426562
mov eax, 0xc000
mov edi, dword [sym.imp.USER32.dll_GetSysColor]
push 1
push ebx
push ebx
push ebx
push eax
push 0x12
call edi
push eax
push 0x138c
mov ecx, esi
call fcn.00426489
push eax
lea ecx, [esi + 0x9fc]
call fcn.00405570
cmp byte [0x43cfd1], bl
mov ecx, esi
je 0x402d62
push str.Faults:_Disabled
push 0x138b
call fcn.00426489
mov ecx, eax
call fcn.00426562
mov eax, 0xff
jmp 0x402d7d
push 0x42f8c0
push 0x138b
call fcn.00426489
mov ecx, eax
call fcn.00426562
mov eax, 0xc000
push 1
push ebx
push ebx
push ebx
push eax
push 0x12
call edi
push eax
push 0x138b
mov ecx, esi
call fcn.00426489
push eax
lea ecx, [esi + 0x9e0]
call fcn.00405570
cmp byte [0x43cfd0], bl
mov ecx, esi
je 0x402dc7
push 0x42f8b4
push 0x138a
call fcn.00426489
mov ecx, eax
call fcn.00426562
mov eax, 0xc000
jmp 0x402de2
push str.Speaker:_OFF
push 0x138a
call fcn.00426489
mov ecx, eax
call fcn.00426562
mov eax, 0xff
push 1
push ebx
push ebx
push ebx
push eax
push 0x12
call edi
push eax
push 0x138a
mov ecx, esi
call fcn.00426489
push eax
lea ecx, [esi + 0x9c4]
call fcn.00405570
cmp byte [0x43cfd3], 0x7f
mov edi, 0x10
mov ecx, esi
jbe 0x402f01
push 5
push 0x1389
call fcn.00426489
mov ecx, eax
call fcn.0042659e
push 0xe
push str._Warmup_Step_r_n
lea ecx, [esp + 0x18]
call fcn.00402ab0
push 7
push str._Step:
lea ecx, [esp + 0x18]
call fcn.004029a0
xor eax, eax
mov al, byte [0x43cfd3]
lea ecx, [esp + 0x2c]
lea edx, [esp + 0xc]
and eax, 0xf
push eax
push str._d_r_n
push ecx
push edx
call fcn.00411850
add esp, 0x10
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x5c], 2
call fcn.004028b0
cmp dword [esp + 0x44], edi
mov byte [esp + 0x50], 1
jb 0x402e98
mov eax, dword [esp + 0x30]
push eax
call fcn.00426c0e
add esp, 4
push 0xc
push str._Step_Time:
lea ecx, [esp + 0x18]
call fcn.004029a0
mov ecx, dword [0x43cfd4]
push ecx
push str._d_r_n
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x18]
push eax
call fcn.00411850
add esp, 0x10
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x5c], 3
call fcn.004028b0
cmp dword [esp + 0x44], edi
mov byte [esp + 0x50], 1
jb 0x402ef0
mov ecx, dword [esp + 0x30]
push ecx
call fcn.00426c0e
add esp, 4
cmp dword [esp + 0x28], edi
mov eax, dword [esp + 0x14]
jae 0x402efe
lea eax, [esp + 0x14]
push eax
jmp 0x402f18
push ebx
push 0x1389
call fcn.00426489
mov ecx, eax
call fcn.0042659e
push 0x42f872
mov ecx, esi
push 0x1389
call fcn.00426489
mov ecx, eax
call fcn.00426562
mov eax, dword [esi + 0x90]
mov ecx, dword [eax + 0xe8]
add eax, 0xd0
cmp ecx, edi
jb 0x402f45
mov eax, dword [eax + 4]
jmp 0x402f48
add eax, 4
push eax
push 0x1398
mov ecx, esi
call fcn.00426489
mov ecx, eax
call fcn.00426562
mov eax, dword [esi + 0x90]
mov ecx, dword [eax + 0xcc]
add eax, 0xb4
cmp ecx, edi
jb 0x402f76
mov eax, dword [eax + 4]
jmp 0x402f79
add eax, 4
push eax
push 0x1388
mov ecx, esi
call fcn.00426489
mov ecx, eax
call fcn.00426562
mov edx, dword [esi + 0x1c]
push 1
push ebx
push edx
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [esi + 0x1c]
push eax
call dword [sym.imp.USER32.dll_UpdateWindow]
lea ecx, [esp + 0xc]
mov byte [esp + 0x50], bl
call fcn.00412120
cmp dword [esp + 0x28], edi
pop edi
pop esi
pop ebx
jb 0x402fc7
mov ecx, dword [esp + 8]
push ecx
call fcn.00426c0e
add esp, 4
mov ecx, dword [esp + 0x3c]
mov dword fs:[0], ecx
add esp, 0x48
ret