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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x55a923
mov eax, dword fs:[0]
push eax
sub esp, 0xf0
mov eax, dword [0x5b627c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov ecx, dword [ebp + 8]
xor edi, edi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x5c], 1
cmp ecx, 0x113
ja 0x439598
je 0x439532
lea eax, [ecx - 1]
cmp eax, 0xa2
ja case.0x4392f9.4
movzx eax, byte [eax + 0x43990c]
jmp dword [eax*4 + 0x4398d4]
mov eax, dword [ebx]
lea edx, [ebp - 0x5c]
push edx
push dword [ebp + 0x10]
push esi
push ecx
mov ecx, ebx
call dword [eax + 0x78]
mov edi, eax
jmp 0x439810
mov eax, dword [ebx]
lea edx, [ebp - 0x5c]
push edx
push dword [ebp + 0x10]
push esi
push ecx
mov ecx, ebx
call dword [eax + 0x48]
mov edi, eax
jmp 0x439810
mov eax, dword [ebx]
lea edx, [ebp - 0x5c]
push edx
push dword [ebp + 0x10]
push esi
push ecx
mov ecx, ebx
call dword [eax + 0x4c]
mov edi, eax
jmp 0x439810
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_IsWindowVisible]
push eax
mov ecx, ebx
call fcn.0043ca40
mov dword [ebp - 0x5c], edi
jmp 0x43980e
mov ecx, ebx
call fcn.0047d180
push eax
call dword [sym.imp.USER32.dll_SetForegroundWindow]
xor eax, eax
mov ecx, ebx
cmp esi, 1
sete al
push eax
call fcn.0043ca40
mov dword [ebp - 0x5c], edi
jmp 0x43980e
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x5c], edi
test esi, esi
je 0x43980e
mov ecx, dword [ebx + 0x37c]
test ecx, ecx
je 0x43980e
add ecx, 0x280
call fcn.0047d180
and dword [esi + 0x18], 0xfffffffb
mov dword [esi + 4], eax
jmp 0x43980e
lea ecx, [ebx + 0x30]
call fcn.00485280
test eax, eax
je case.0x4392f9.6
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_IsZoomed]
lea ecx, [ebx + 0x30]
test eax, eax
je 0x4393f4
push str.restore
call fcn.00484b80
test eax, eax
je 0x4393ed
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx + 0x10c]
push 0x56e7e0
jmp 0x439413
push 0x56e7e0
call fcn.00484b80
test eax, eax
je 0x43940e
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx + 0x10c]
push str.restore
lea ecx, [ebx + 0x30]
call fcn.00484b80
test eax, eax
je case.0x4392f9.6
mov edx, dword [eax]
mov ecx, eax
push 0
call dword [edx + 0x10c]
mov dword [ebp - 0x5c], edi
jmp 0x43980e
mov dword [ebp - 0x5c], edi
cmp dword [ebx + 0x38c], edi
je 0x43980e
mov dword [ebx + 0x38c], edi
cmp dword [ebx + 0x388], edi
je 0x43945e
push 0
push 0
push 1
push 0x25
call dword [sym.imp.USER32.dll_SystemParametersInfoW]
mov dword [ebx + 0x388], edi
jmp 0x43980e
mov ecx, dword [ebx + 0x37c]
mov dword [ebp - 0x5c], edi
test ecx, ecx
je 0x439488
add ecx, 0x280
call fcn.0047d180
push eax
call dword [sym.imp.USER32.dll_SetFocus]
cmp dword [ebx + 0x38c], edi
jne 0x43980e
push 0
lea esi, [ebx + 0x388]
mov dword [ebx + 0x38c], 1
mov dword [esi], edi
mov edi, dword [sym.imp.USER32.dll_SystemParametersInfoW]
push esi
push 0
push 0x26
call edi
cmp dword [esi], 0
je 0x43980e
push 0
push 0
push 0
push 0x25
call edi
jmp 0x43980e
call fcn.00422620
mov ecx, eax
call fcn.00422710
test eax, eax
je 0x43980e
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_IsZoomed]
mov ecx, ebx
test eax, eax
je 0x4394fa
call fcn.00438940
jmp 0x43980e
call fcn.004386c0
jmp 0x43980e
mov eax, dword [ebx]
lea edx, [ebp - 0x5c]
push edx
push dword [ebp + 0x10]
push esi
push ecx
mov ecx, ebx
call dword [eax + 0x5c]
mov edi, eax
jmp 0x439810
mov eax, dword [ebx]
lea edx, [ebp - 0x5c]
push edx
push dword [ebp + 0x10]
push esi
push ecx
mov ecx, ebx
call dword [eax + 0x6c]
mov edi, eax
jmp 0x439810
cmp esi, 0x10
jne 0x439579
push esi
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_KillTimer]
push 1
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SwitchToThisWindow]
mov esi, dword [sym.imp.USER32.dll_SetWindowPos]
push 3
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push dword [ebx + 4]
call esi
push 3
push 0
push 0
push 0
push 0
push 0xfffffffffffffffe
push dword [ebx + 4]
call esi
jmp 0x439810
cmp esi, 0x11
jne 0x439810
push esi
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_KillTimer]
mov ecx, ebx
call fcn.0043cfa0
jmp 0x439810
cmp ecx, 0x7e8
ja 0x4396bc
je 0x43968d
sub ecx, 0x40a
je 0x43960f
sub ecx, 0x5a
je 0x4395ff
sub ecx, 0x12d
jne case.0x4392f9.4
test esi, esi
je 0x439810
mov ecx, dword [esi + 0x24]
test ecx, ecx
je 0x4395ef
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, dword [esi + 0x24]
test ecx, ecx
je 0x4395ef
mov edx, dword [ecx]
cmp ecx, esi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov dword [esi + 0x24], edi
push 0x28
push esi
call fcn.00465e7d
add esp, 8
jmp 0x439810
push 1
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x439810
call fcn.00414250
mov ecx, eax
test ecx, ecx
je 0x4398c8
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x60], eax
push str.play
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0
call fcn.0040c160
test al, al
jne 0x439650
push 4
push str.play
lea ecx, [ebp - 0x60]
call fcn.0041a8f0
lea eax, [ebp - 0x60]
mov dword [ebp - 4], 1
push eax
mov ecx, ebx
call fcn.0043e830
mov edx, dword [ebp - 0x60]
or eax, 0xffffffff
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x43980e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x43980e
mov ecx, dword [ebx + 0x3a4]
test ecx, ecx
je 0x439810
call fcn.00442310
mov ecx, dword [ebx + 0x3a4]
test ecx, ecx
je 0x4396b1
mov eax, dword [ecx]
push 1
call dword [eax + 4]
mov dword [ebx + 0x3a4], edi
jmp 0x439810
sub ecx, 0x7e9
je 0x43972e
sub ecx, 1
je 0x4396d1
mov dword [ebp - 0x5c], edi
jmp 0x439810
push 0xb
push str.start_delay
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.0041c540
push 0
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 5
push eax
lea ecx, [ebx + 0x3a8]
call fcn.004fdda0
lea ecx, [ebp - 0x28]
imul esi, eax, 0x3e8
mov dword [ebp - 4], 0xffffffff
call fcn.004070a0
push 0
push esi
push 0x11
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetTimer]
jmp 0x439810
test esi, esi
setne byte [ebp - 0x60]
test esi, esi
je 0x43980e
call fcn.00474150
mov ecx, eax
push 1
mov edx, dword [eax]
mov eax, dword [edx + 8]
call eax
movzx eax, al
sub eax, 1
jne 0x439807
push 0x60
push str.d:jenkins.jenkinsworkspaceweiduangamemicrogamemicrogamebox_srcmicrogameboxmain_window.cc
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], al
call fcn.0041c540
push 3
push 0x56bd98
lea ecx, [ebp - 0x40]
mov dword [ebp - 4], 2
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.0041c540
mov byte [ebp - 4], 3
call fcn.00474150
mov edi, eax
lea ecx, [ebp - 0xfc]
push 0x2a7
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.004066e0
mov esi, eax
push str.MainWindow::OnJkwInstallEnd_succ
push esi
mov byte [ebp - 4], 4
call fcn.00407a90
add esp, 8
mov ecx, esi
push dword [ebp - 0x60]
call fcn.004353b0
mov eax, dword [edi]
mov ecx, edi
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0xfc]
call fcn.00407f30
lea ecx, [ebp - 0x40]
call fcn.004070a0
lea ecx, [ebp - 0x58]
mov dword [ebp - 4], 0xffffffff
call fcn.004070a0
mov ecx, ebx
call fcn.00439bf0
xor edi, edi
mov eax, dword [ebx + 0x360]
mov esi, dword [ebp + 8]
test eax, eax
je 0x439892
cmp esi, eax
jne 0x439892
mov eax, dword [ebp + 0x10]
add eax, 0xfffffdfe
cmp eax, 1
ja 0x439890
cmp dword [0x5bd840], 0
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
je 0x43984c
call edi
sub eax, dword [0x5bd840]
cmp eax, 0x1f4
jb 0x439889
call edi
cmp dword [ebx + 0x37c], 0
mov dword [0x5bd840], eax
je 0x43987e
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x43987e
mov ecx, dword [ebx + 0x37c]
push 1
push 1
add ecx, 0x280
call fcn.00481cc0
push 1
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov dword [ebp - 0x5c], 1
xor edi, edi
cmp dword [ebp - 0x5c], 0
je 0x43989c
mov eax, edi
jmp 0x4398aa
push dword [ebp + 0x10]
mov ecx, ebx
push dword [ebp - 0x64]
push esi
call fcn.0048c140
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00465d1b
mov esp, ebp
pop ebp
ret 0xc
push 0x80004005
call fcn.0040c140
nop
add byte [ebx - 0x6cd1ffbd], dl
inc ebx
add byte [ebp - 0x6d], al
inc ebx
add byte [ebx], bl
xchg ebp, eax
inc ebx
add byte [ebx], ch
xchg esp, eax
inc ebx
add byte [edi], dl
xchg ebx, eax
inc ebx
add byte [esi - 0x6d], bl
inc ebx
add byte [ebx + edx*4 - 0x6c48ffbd], al
inc ebx
add byte [edx*4 - 0x6bccffbd], al
inc ebx
add byte [ecx - 0x6c], ch
inc ebx
add ch, cl
xchg esp, eax
inc ebx
add cl, cl
xchg esi, eax
inc ebx
add byte [eax], al
add dword [edx], eax
or eax, 218956803
or eax, 218959117
or eax, 218957069
or eax, 218959117
push es
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
pop es
or byte [218959117], cl
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or dword [218959117], ecx
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218827277
or al, 204