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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffd34
lea eax, [ebp - 8]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
jne 0x40a518
mov dword [0x87e0b8], 0x16fb5
mov dword [0x87e0e2], edi
xchg dword [0x87e033], ebx
mov eax, edi
mov word [0x87e01c], 0xa522
dec dword [0x87e0d3]
mov dword [0x87e0fb], edx
dec byte [0x87e0cf]
mov dword [ebp - 0xc], 0x148d1
mov dword [ebp - 0x10], 0x1a6ae
mov eax, 0x40c4c8
mov dword [ebp - 0x14], eax
mov eax, 0x40c4e4
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0xc]
push eax
call sub.user32.dll_AnyPopup
test eax, eax
jne 0x40a581
mov dword [0x87e043], ebx
sub edi, dword [0x87e0a3]
lea ebx, [0x87e03a]
mov dword [ebx + 0x20], edx
cmp dword [0x87e058], 0
jl 0x40a59e
mov dword [0x87e0c3], eax
mov dword [0x87e0f4], ecx
xchg dword [0x87e030], edi
mov esi, edx
mov dword [0x87e02f], ebx
mov dword [0x87e0a3], 0x16293
xchg dword [0x87e0b0], eax
mov dword [0x87e066], ecx
mov dword [esp - 0x24], ecx
mov word [0x87e0c3], 0x1f6b
add dword [0x87e08a], edi
mov dword [0x87e03e], edx
mov dword [ebp - 0x1c], 0x1426e
mov dword [ebp - 0x20], 0x14af9
mov eax, 0x40c50c
mov dword [ebp - 0x24], eax
mov eax, 0x40c518
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x1c]
push eax
call sub.user32.dll_CloseWindow
cmp dword [0x87e058], 0
jl 0x40a623
mov dword [0x87e0c3], eax
mov dword [0x87e0f4], ecx
xchg dword [0x87e030], edi
mov esi, edx
mov dword [0x87e02f], ebx
mov dword [0x87e0a3], 0x16293
xchg dword [0x87e0b0], eax
mov dword [0x87e066], ecx
mov word [0x87e068], 0x8f35
cmp byte [0x87e04e], 0
je 0x40a666
sub edi, dword [0x87e041]
mov byte [0x87e087], 0x81
xchg dword [0x87e0b6], eax
jmp 0x40a682
mov dword [0x87e0e6], 0x13753
mov dword [0x87e0e4], eax
sub dword [0x87e03b], edi
mov dword [0x87e0db], ecx
cmp edx, dword [0x87e03d]
jl 0x40a6a1
mov dword [0x87e01f], edi
mov dword [0x87e02e], edx
mov dword [0x87e0ec], 0x12eab
inc eax
lea edi, [0x87e0b3]
add dword [edi], 0x63
mov dword [esp - 0x28], ebx
sub eax, dword [0x87e076]
sub dword [0x87e051], edx
mov ebx, 0x1f5
dec byte [0x87e0f2]
cmp eax, dword [0x87e095]
jl 0x40a6d3
add dword [0x87e0a2], edx
mov dword [0x87e0e6], 0x16677
mov dword [0x87e0cc], edx
sub ecx, 0x76
mov dword [ebp - 0x2c], 0x1e81e
mov dword [ebp - 0x30], 0x14d1c
mov eax, 0x40c524
mov dword [ebp - 0x34], eax
mov eax, 0x40c534
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x2c]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
jne 0x40a73b
mov dword [0x87e0e1], edi
mov dword [0x87e036], edx
mov esi, dword [esp + 8]
mov word [0x87e08e], 0x534e
mov eax, 0x18c
mov byte [0x87e0d7], 0x17
mov word [0x87e0f8], 0xb7c6
mov dword [0x87e024], 0x1595d
mov dword [esp - 0x18], ecx
sub esi, 0x5a
call fcn.00401544
cmp dword [0x87e058], 0
jl 0x40a77e
mov dword [0x87e0c3], eax
mov dword [0x87e0f4], ecx
xchg dword [0x87e030], edi
mov esi, edx
mov dword [0x87e02f], ebx
mov dword [0x87e0a3], 0x16293
xchg dword [0x87e0b0], eax
mov dword [0x87e066], ecx
call fcn.00405c44
inc dword [0x87e06a]
mov dword [0x87e052], 0x15dcb
xchg dword [0x87e0d4], esi
xor eax, eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
push eax
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x3c]
push eax
call sub.advapi32.dll_RevertToSelf
test eax, eax
je 0x40a7ea
mov word [0x87e098], 0x6833
sub eax, dword [0x87e037]
mov eax, ebx
mov dword [0x87e018], 0x17d4d
call fcn.004033a0
mov byte [0x87e0ea], 0xb6
mov dword [0x87e0af], edi
lea esi, [0x87e0f4]
mov dword [esi + 0x20], 0xb0
xchg dword [0x87e104], ecx
dec dword [0x87e010]
cmp ebx, 0xffffffff
jle 0x40a82e
mov dword [0x87e0c6], eax
lea edx, [0x87e099]
mov dword [edx], 0x25
jmp 0x40a83a
xchg dword [0x87e041], ebx
mov dword [0x87e0b1], eax
cmp edx, 0xffffffff
jl 0x40a851
mov dword [0x87e0af], eax
mov dword [esp - 0x18], ebx
mov edx, dword [0x87e056]
jmp 0x40a858
mov byte [0x87e0f5], 0x6f
lea eax, [ebp - 0x50]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
jne 0x40a886
mov word [0x87e0d2], 0x3e8b
mov ebx, ecx
mov ecx, dword [0x87e049]
mov dword [0x87e016], edx
mov dword [0x87e068], 0x146f5
mov byte [0x87e0ea], 0xb6
mov dword [0x87e0af], edi
lea esi, [0x87e0f4]
mov dword [esi + 0x20], 0xb0
sub dword [0x87e05e], edi
and ecx, 0x1a
mov dword [0x87e013], ebx
call fcn.00403e40
mov dword [ebp - 0x54], 0x1cc71
mov eax, dword [ebp - 0x54]
push eax
call sub.advapi32.dll_RevertToSelf_1
test eax, eax
jne 0x40a8f0
mov dword [0x87e089], edi
lea edx, [0x87e0fb]
add dword [edx], 0xe0
sub dword [0x87e0db], edi
mov dword [0x87e0f3], 0x15852
mov dword [0x87e084], eax
call fcn.00401544
lea eax, [ebp - 0x60]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
call fcn.00403c3c
mov dword [0x87e0a7], 0x10549
inc byte [0x87e076]
mov edx, dword [0x87e011]
mov dword [0x87e0e3], esi
mov dword [0x87e041], ecx
mov dword [0x87e07f], ebx
mov dword [esp - 0x12], ecx
test edx, edx
je 0x40a93f
mov dword [0x87e0c8], ecx
mov dword [0x87e070], edi
mov dword [0x87e0bb], esi
dec dword [0x87e089]
mov dword [ebp - 0x64], 0x15da7
mov dword [ebp - 0x68], 0x12ce8
mov eax, 0x40c53c
mov dword [ebp - 0x6c], eax
mov eax, 0x40c548
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x64]
push eax
call sub.user32.dll_AnyPopup
test eax, eax
jne 0x40a9b4
cmp bh, byte [esp + 0x20]
jl 0x40a99e
mov dword [0x87e0c1], 0x1536a
mov dword [0x87e0f2], esi
and ebx, dword [0x87e0f9]
mov edi, dword [esp + 0x12]
mov dword [0x87e0db], ecx
mov dword [0x87e0b8], ebx
mov dword [0x87e0b1], ecx
mov dword [0x87e108], ecx
mov dword [0x87e102], edi
mov dword [0x87e0a0], ebx
cmp byte [0x87e05a], 0
jle 0x40a9e4
mov dword [0x87e01e], 0x16c14
mov word [0x87e02a], 0xf58c
jmp 0x40aa03
mov dword [0x87e02d], edx
mov dword [0x87e0bc], 0x11443
mov dword [0x87e0c9], 0x17b2c
mov esi, 0x2c
call fcn.00405c44
mov dword [0x87e050], ebx
xchg dword [0x87e0fb], edi
mov dword [0x87e086], 0x13b0e
lea eax, [ebp - 0x78]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
mov byte [0x87e023], 0xae
mov dword [0x87e0a0], 0x16612
mov dword [0x87e0fa], ebx
mov esi, edi
lea eax, [0x87e025]
add dword [eax + 0x24], 0xf7
test ebx, ebx
je 0x40aa5a
mov byte [0x87e02e], 0x83
jmp 0x40aa65
mov word [0x87e025], 0x11fd
mov eax, ecx
mov byte [0x87e03c], 0x64
xchg dword [0x87e04c], edi
mov word [0x87e0e7], 0x7853
cmp ax, word [esp + 0x12]
je 0x40aa8d
mov edi, 0x6d
mov dword [0x87e0fa], ebx
mov word [0x87e0aa], 0xc8e8
cmp edx, 0xffffffff
jne 0x40aaaa
lea ebx, [0x87e0d8]
sub dword [ebx + 0x10], 0xac
jmp 0x40aac9
lea edx, [0x87e055]
mov dword [edx + 4], 0x7d
mov dword [0x87e0b0], eax
mov byte [0x87e061], 0xd7
mov edx, 0x1b3
mov byte [0x87e0ee], 8
mov word [0x87e054], 0x7672
mov dword [ebp - 0x7c], 0x11fad
mov dword [ebp - 0x80], 0x16083
mov eax, 0x40c56c
mov dword [ebp - 0x84], eax
mov eax, 0x40c598
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x84]
push eax
mov eax, dword [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x7c]
push eax
call sub.user32.dll_AnyPopup
test eax, eax
je 0x40ab36
and dword [0x87e01b], edi
lea esi, [0x87e068]
mov dword [esi + 8], 0xed
mov edi, eax
mov ebx, 0x1dd
call fcn.004033a0
mov word [0x87e0c3], 0x957c
test al, al
je 0x40ab5a
mov dword [0x87e033], eax
mov dword [0x87e0bf], ecx
mov dword [0x87e042], esi
mov dword [0x87e101], eax
sub dword [0x87e0c9], esi
lea eax, [0x87e0e9]
add dword [eax + 0xc], 0xa0
add dword [0x87e04b], esi
inc dword [0x87e02d]
mov word [0x87e054], 0x4fa9
mov dword [0x87e0ce], 0x16664
mov dword [ebp - 0x8c], 0x1d40a
mov eax, dword [ebp - 0x8c]
push eax
call sub.advapi32.dll_RevertToSelf_1
test eax, eax
je 0x40abc1
mov dword [0x87e0de], edx
mov ecx, 0xcf
mov dword [0x87e095], edi
mov dword [esp - 4], ebx
mov dword [esp - 0x10], ecx
mov edi, eax
mov byte [0x87e0ba], 0x3f
xor eax, eax
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x98]
push eax
mov eax, dword [ebp - 0x94]
push eax
mov eax, dword [ebp - 0x90]
push eax
call sub.advapi32.dll_RevertToSelf
test eax, eax
jne 0x40ac29
mov byte [0x87e0bd], 0xb9
test ebx, ebx
jne 0x40ac05
sub dword [0x87e095], eax
mov byte [0x87e0d3], 0xf5
mov dword [0x87e0d9], ecx
add dword [0x87e0de], ebx
mov dword [0x87e0d2], eax
mov dword [0x87e0e0], edx
and eax, 0x8b
xchg dword [0x87e0c7], esi
mov word [0x87e02c], 0x6246
mov dword [0x87e056], ecx
add dword [0x87e03b], edx
mov edx, edi
xor eax, eax
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xa4]
push eax
mov eax, dword [ebp - 0xa0]
push eax
mov eax, dword [ebp - 0x9c]
push eax
call sub.advapi32.dll_RevertToSelf
test eax, eax
jne 0x40ac7e
mov dword [0x87e03b], edi
mov dword [0x87e0ed], eax
mov dword [0x87e107], ebx
cmp edi, 0x3c
jle 0x40ac89
inc dword [0x87e0fc]
mov dword [0x87e0f5], esi
mov dword [0x87e0bb], eax
and ebx, 0xf8
and edi, 0xd8
mov dword [0x87e05e], edx
mov dword [0x87e0c2], eax
mov dword [esp - 0x10], esi
sub eax, 0xd7
cmp esi, 0xffffffff
jle 0x40acd9
mov dword [0x87e035], ebx
mov dword [0x87e0b6], 0x12634
xchg dword [0x87e025], edi
mov dword [0x87e01a], esi
jmp 0x40ace7
mov edx, edi
mov dword [0x87e104], 0x177fc
mov ebx, esi
lea edx, [0x87e010]
mov dword [edx + 0x28], 0xa6
mov dword [ebp - 0xa8], 0x1016d
mov dword [ebp - 0xac], 0x14dae
mov eax, 0x40c5c4
mov dword [ebp - 0xb0], eax
mov eax, 0x40c5d0
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0xb4]
push eax
mov eax, dword [ebp - 0xb0]
push eax
mov eax, dword [ebp - 0xac]
push eax
mov eax, dword [ebp - 0xa8]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
jne 0x40ad51
and eax, dword [0x87e032]
and dword [0x87e056], esi
mov edx, edi
mov dword [ebp - 0xb8], 0x15d43
mov dword [ebp - 0xbc], 0x162c1
mov eax, 0x40c5d4
mov dword [ebp - 0xc0], eax
mov eax, 0x40c5e8
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xc4]
push eax
mov eax, dword [ebp - 0xc0]
push eax
mov eax, dword [ebp - 0xbc]
push eax
mov eax, dword [ebp - 0xb8]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
je 0x40adbc
mov dword [0x87e02b], eax
mov byte [0x87e07e], 0x21
lea ecx, [0x87e09b]
and dword [ecx], 5
mov dword [0x87e0f2], esi
call fcn.0040305c
mov dword [0x87e0a7], 0x10549
inc byte [0x87e076]
mov edx, dword [0x87e011]
mov dword [0x87e0e3], esi
mov dword [0x87e041], ecx
call fcn.00403e40
mov dword [0x87e0a7], 0x10549
inc byte [0x87e076]
mov edx, dword [0x87e011]
mov dword [0x87e0e3], esi
mov dword [0x87e041], ecx
push ecx
call fcn.00403e40
mov byte [ebp - 0x2c9], 0
mov dword [0x87e06d], edx
xchg dword [0x87e0dd], ecx
add dword [0x87e0f9], edi
mov edx, dword [0x87e03c]
cmp ecx, 0xffffffff
jle 0x40ae3a
mov dword [0x87e103], eax
mov dword [0x87e070], edx
mov dword [ebp - 0xc8], 0x1cca7
mov dword [ebp - 0xcc], 0x115d2
mov eax, 0x40c5fc
mov dword [ebp - 0xd0], eax
mov eax, 0x40c614
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xd4]
push eax
mov eax, dword [ebp - 0xd0]
push eax
mov eax, dword [ebp - 0xcc]
push eax
mov eax, dword [ebp - 0xc8]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
jne 0x40ae9f
mov dword [esp - 0x1c], edi
xchg dword [0x87e0fc], eax
add dword [0x87e032], ebx
inc byte [ebp - 0x2c9]
cmp byte [ebp - 0x2c9], 1
jne 0x40ae17
mov dword [0x87e0e4], 0x13f84
cmp eax, 0xffffffff
je 0x40aecf
mov dword [0x87e026], esi
mov dword [0x87e062], ebx
jmp 0x40aee0
mov edi, 0x7f
add dword [0x87e0a6], ebx
mov dword [0x87e105], ecx
cmp dword [0x87e021], 0
jge 0x40af05
lea ecx, [0x87e086]
mov dword [ecx], 0xb0
sub edx, dword [0x87e074]
mov dword [0x87e09c], 0x16aa6
mov dword [0x87e020], ebx
xor eax, eax
mov dword [ebp - 0xe0], eax
mov eax, dword [ebp - 0xe0]
push eax
mov eax, dword [ebp - 0xdc]
push eax
mov eax, dword [ebp - 0xd8]
push eax
call sub.advapi32.dll_RevertToSelf
mov dword [0x87e0df], edi
xchg dword [0x87e0dd], esi
xchg dword [0x87e0c7], ebx
mov dword [0x87e108], ecx
mov dword [0x87e102], edi
mov dword [0x87e0a0], ebx
cmp byte [0x87e05a], 0
jle 0x40af6f
mov dword [0x87e01e], 0x16c14
mov word [0x87e02a], 0xf58c
jmp 0x40af8e
mov dword [0x87e02d], edx
mov dword [0x87e0bc], 0x11443
mov dword [0x87e0c9], 0x17b2c
mov esi, 0x2c
mov dword [0x87e0f0], eax
lea ecx, [0x87e0e4]
sub dword [ecx + 0x12], eax
cmp dword [0x87e032], 0
jge 0x40afb6
mov dword [0x87e09d], edi
mov edx, eax
mov dword [0x87e073], ebx
jmp 0x40afc6
mov dword [0x87e090], 0x12eea
mov dword [0x87e070], eax
mov dword [0x87e059], edx
xor eax, eax
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
push eax
mov eax, dword [ebp - 0xe8]
push eax
mov eax, dword [ebp - 0xe4]
push eax
call sub.advapi32.dll_RevertToSelf
test eax, eax
je 0x40b006
mov ecx, dword [esp + 0x18]
mov dword [0x87e0de], esi
mov dword [esp - 0x20], edi
mov dword [0x87e03e], esi
call fcn.00403c3c
mov dword [0x87e108], ecx
mov dword [0x87e102], edi
mov dword [0x87e0a0], ebx
cmp byte [0x87e05a], 0
jle 0x40b03b
mov dword [0x87e01e], 0x16c14
mov word [0x87e02a], 0xf58c
jmp 0x40b05a
mov dword [0x87e02d], edx
mov dword [0x87e0bc], 0x11443
mov dword [0x87e0c9], 0x17b2c
mov esi, 0x2c
cmp dword [0x87e058], 0
jl 0x40b077
mov dword [0x87e0c3], eax
mov dword [0x87e0f4], ecx
xchg dword [0x87e030], edi
mov esi, edx
mov dword [0x87e02f], ebx
mov dword [0x87e0a3], 0x16293
xchg dword [0x87e0b0], eax
mov dword [0x87e066], ecx
push 0
push eax
call fcn.00405c44
lea eax, [ebp - 0xf8]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
mov dword [0x87e0f8], edx
mov dword [0x87e041], edi
add dword [0x87e0e4], ebx
cmp byte [ebp - 0x12], cl
jg 0x40b0d6
mov dword [0x87e04b], ecx
mov dword [0x87e0dc], edx
mov dword [0x87e03f], esi
mov eax, dword [0x87e015]
mov dword [esp - 0x20], ebx
mov dword [0x87e0da], 0x12b6d
mov dword [0x87e052], ebx
mov dword [0x87e089], edx
mov dword [esp - 8], ecx
mov dword [ebp - 0xfc], 0x1c2e5
mov dword [ebp - 0x100], 0x11232
mov eax, 0x40c624
mov dword [ebp - 0x104], eax
mov eax, 0x40c63c
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 0x108]
push eax
mov eax, dword [ebp - 0x104]
push eax
mov eax, dword [ebp - 0x100]
push eax
mov eax, dword [ebp - 0xfc]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
jne 0x40b15c
mov dword [0x87e075], esi
mov byte [0x87e083], 0x7e
sub ebx, dword [0x87e04a]
and dword [0x87e098], ecx
xchg dword [0x87e06d], edi
mov dword [esp - 0x10], ecx
and dword [0x87e036], edi
mov eax, dword [esp + 8]
mov esi, dword [esp + 4]
mov dword [ebp - 0x10c], 0x15c73
mov eax, dword [ebp - 0x10c]
push eax
call sub.advapi32.dll_RevertToSelf_1
test eax, eax
jne 0x40b1a0
mov ebx, dword [esp + 0x24]
mov dword [0x87e0cc], eax
lea ebx, [0x87e039]
mov dword [ebx], esi
cmp ecx, 0x56
jne 0x40b1c0
mov esi, 0xe9
mov dword [0x87e01b], 0x162c3
mov dword [0x87e094], ebx
add dword [0x87e012], edx
mov byte [0x87e0a5], 0xe8
mov ebx, 0x16f
xchg dword [0x87e0e2], esi
mov dword [0x87e0c9], 0x13ed2
xor eax, eax
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0x118]
push eax
mov eax, dword [ebp - 0x114]
push eax
mov eax, dword [ebp - 0x110]
push eax
call sub.advapi32.dll_RevertToSelf
call fcn.004033a0
lea eax, [0x87e025]
add dword [eax + 0x24], 0xf7
test ebx, ebx
je 0x40b21d
mov byte [0x87e02e], 0x83
jmp 0x40b228
mov word [0x87e025], 0x11fd
mov eax, ecx
mov byte [0x87e03c], 0x64
xchg dword [0x87e04c], edi
push ecx
call fcn.00403e40
lea eax, [0x87e09c]
mov dword [eax], 0x55
and dword [0x87e048], edi
mov edx, 0x15e
mov dword [ebp - 0x11c], 0x1123e
mov eax, dword [ebp - 0x11c]
push eax
call sub.advapi32.dll_RevertToSelf_1
test eax, eax
je 0x40b2a1
mov dword [0x87e045], esi
cmp byte [0x87e0dc], 0
je 0x40b28b
sub dword [0x87e0b0], ecx
mov dword [esp - 0x1c], ebx
mov dword [0x87e045], eax
mov dword [0x87e02e], 0x156dd
xchg dword [0x87e0a6], ebx
add ecx, 0xeb
call fcn.0040305c
mov dword [ebp - 0x120], 0x18f20
mov dword [ebp - 0x124], 0x1c7a5
mov eax, 0x40c640
mov dword [ebp - 0x128], eax
mov eax, 0x40c658
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x12c]
push eax
mov eax, dword [ebp - 0x128]
push eax
mov eax, dword [ebp - 0x124]
push eax
mov eax, dword [ebp - 0x120]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
je 0x40b311
mov word [0x87e101], 0x9e58
xchg dword [0x87e063], esi
mov dword [0x87e051], ecx
mov byte [0x87e0cc], 0xc
mov byte [0x87e0ea], 0xb6
mov dword [0x87e0af], edi
lea esi, [0x87e0f4]
mov dword [esi + 0x20], 0xb0
and dword [0x87e076], eax
xchg dword [0x87e02a], edx
mov dword [0x87e038], eax
mov dword [0x87e097], edi
mov dword [0x87e020], 0x16b69
lea eax, [ebp - 0x138]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
je 0x40b37b
mov dword [0x87e077], 0x12a47
mov dword [0x87e031], 0x13b26
mov dword [0x87e10a], 0x16b7b
sub esi, 0x11
and edi, 0xf8
mov dword [0x87e109], ebx
add dword [0x87e04f], ecx
mov dword [esp - 4], edi
mov dword [ebp - 0x13c], 0x1831f
mov eax, dword [ebp - 0x13c]
push eax
call sub.advapi32.dll_RevertToSelf_1
mov dword [0x87e063], ebx
mov eax, dword [0x87e0f3]
xchg dword [0x87e0d4], edx
mov dword [0x87e09b], edi
call fcn.0040857c
mov byte [ebp - 0x2c9], 0
lea eax, [ebp - 0x148]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
mov ebx, 0x1c
mov dword [0x87e013], 0x11902
mov word [0x87e0f1], 0xd4f8
mov dword [0x87e0a1], 0x130d4
mov dword [0x87e08e], ecx
call fcn.0040305c
inc byte [ebp - 0x2c9]
cmp byte [ebp - 0x2c9], 2
jne 0x40b3ce
mov dword [0x87e047], eax
mov byte [0x87e104], 0x56
mov edi, 0x108
mov dword [0x87e04c], esi
mov dword [0x87e0ff], ebx
mov dword [ebp - 0x14c], 0x1d0a7
mov eax, dword [ebp - 0x14c]
push eax
call sub.advapi32.dll_RevertToSelf_1
test eax, eax
jne 0x40b47c
mov word [0x87e042], 0xae6d
test esi, esi
jne 0x40b467
mov dword [0x87e08e], ecx
mov dword [0x87e09f], eax
xchg dword [0x87e0fa], ebx
mov ecx, 0xf7
lea edi, [0x87e0b0]
sub dword [edi + 0x18], 0x22
mov dword [0x87e108], ecx
mov dword [0x87e102], edi
mov dword [0x87e0a0], ebx
cmp byte [0x87e05a], 0
jle 0x40b4ac
mov dword [0x87e01e], 0x16c14
mov word [0x87e02a], 0xf58c
jmp 0x40b4cb
mov dword [0x87e02d], edx
mov dword [0x87e0bc], 0x11443
mov dword [0x87e0c9], 0x17b2c
mov esi, 0x2c
xor eax, eax
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x158]
push eax
mov eax, dword [ebp - 0x154]
push eax
mov eax, dword [ebp - 0x150]
push eax
call sub.advapi32.dll_RevertToSelf
mov byte [0x87e028], 0x52
mov eax, dword [esp + 4]
sub dword [0x87e029], esi
cmp byte [0x87e0a9], 0
je 0x40b50f
mov dword [0x87e01f], ebx
jmp 0x40b515
mov dword [0x87e04d], edx
call fcn.0040857c
mov byte [0x87e0ea], 0xb6
mov dword [0x87e0af], edi
lea esi, [0x87e0f4]
mov dword [esi + 0x20], 0xb0
xchg dword [0x87e0a3], edi
mov byte [0x87e054], 0xd
mov dword [0x87e0be], 0x13f1c
mov dword [esp - 0x1c], edx
cmp esi, dword [0x87e0db]
jle 0x40b567
mov dword [0x87e0c0], edi
mov dword [esp - 8], edx
mov edi, 0x162
inc edx
mov dword [0x87e042], eax
xchg dword [0x87e0b8], ebx
mov dword [0x87e0c0], edx
mov dword [0x87e04a], 0x15436
lea eax, [ebp - 0x160]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
je 0x40b5be
mov edx, ebx
dec dword [0x87e05d]
mov dword [0x87e0ff], ecx
and eax, dword [0x87e0b6]
cmp ecx, dword [esp + 0x1c]
jge 0x40b5ae
inc ebx
mov dword [0x87e0dd], edi
mov dword [0x87e08a], 0x10706
mov dword [ebp - 0x164], 0x1ba56
mov dword [ebp - 0x168], 0x11ae9
mov eax, 0x40c668
mov dword [ebp - 0x16c], eax
mov eax, 0x40c670
mov dword [ebp - 0x170], eax
mov eax, dword [ebp - 0x170]
push eax
mov eax, dword [ebp - 0x16c]
push eax
mov eax, dword [ebp - 0x168]
push eax
mov eax, dword [ebp - 0x164]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
je 0x40b62f
xchg dword [0x87e0a1], eax
mov word [0x87e09f], 0x49c0
xchg dword [0x87e035], ebx
mov dword [0x87e031], ecx
mov byte [0x87e014], 0xc7
mov dword [ebp - 0x174], 0x10e5c
mov eax, dword [ebp - 0x174]
push eax
call sub.advapi32.dll_RevertToSelf_1
mov dword [0x87e108], ecx
mov dword [0x87e102], edi
mov dword [0x87e0a0], ebx
cmp byte [0x87e05a], 0
jle 0x40b675
mov dword [0x87e01e], 0x16c14
mov word [0x87e02a], 0xf58c
jmp 0x40b694
mov dword [0x87e02d], edx
mov dword [0x87e0bc], 0x11443
mov dword [0x87e0c9], 0x17b2c
mov esi, 0x2c
push edx
push ecx
call fcn.00403e40
mov byte [ebp - 0x2c9], 0
mov dword [ebp - 0x178], 0x1e97d
mov eax, dword [ebp - 0x178]
push eax
call sub.advapi32.dll_RevertToSelf_1
test eax, eax
jne 0x40b6ce
mov dword [0x87e09f], 0x10175
mov edx, ebx
mov dword [0x87e05f], ecx
call fcn.00403c3c
inc byte [ebp - 0x2c9]
cmp byte [ebp - 0x2c9], 3
jne 0x40b6a2
xchg dword [0x87e038], edi
mov dword [0x87e0af], esi
mov dword [0x87e05d], 0x12c87
mov edx, 0x87e05e
call fcn.00403e40
cmp edi, 0x75
jge 0x40b70d
mov dword [0x87e0f7], ecx
and dword [0x87e0cb], ebx
mov dword [0x87e06d], ecx
mov dword [0x87e048], 0x137c1
mov dword [0x87e0a1], ebx
mov dword [0x87e0d4], edi
mov dword [0x87e0b5], ecx
lea ebx, [0x87e062]
mov dword [ebx + 8], 0x51
xor eax, eax
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x184]
push eax
mov eax, dword [ebp - 0x180]
push eax
mov eax, dword [ebp - 0x17c]
push eax
call sub.advapi32.dll_RevertToSelf
mov dword [0x87e0a7], 0x10549
inc byte [0x87e076]
mov edx, dword [0x87e011]
mov dword [0x87e0e3], esi
mov dword [0x87e041], ecx
sub dword [0x87e05e], edi
and ecx, 0x1a
mov dword [0x87e013], ebx
push ecx
call fcn.00401544
cmp edi, 0x69
jg 0x40b7d3
lea edx, [0x87e080]
mov dword [edx + 0x18], 0xbf
sub dword [0x87e0dc], esi
mov dword [0x87e0ee], eax
mov dword [0x87e104], esi
sub dword [0x87e010], ebx
sub dword [0x87e080], edi
mov dword [0x87e0b8], ecx
jmp 0x40b7dd
mov dword [esp - 0x12], eax
sub dword [0x87e0bc], ebx
mov dword [0x87e01e], 0x1459f
add dword [0x87e044], ecx
mov dword [ebp - 0x188], 0x12487
mov eax, dword [ebp - 0x188]
push eax
call sub.advapi32.dll_RevertToSelf_1
mov ebx, esi
inc eax
mov dword [0x87e033], ebx
mov word [0x87e028], 0xe858
mov dword [0x87e0e4], eax
mov byte [0x87e0ea], 0xb6
mov dword [0x87e0af], edi
lea esi, [0x87e0f4]
mov dword [esi + 0x20], 0xb0
call fcn.00401544
mov dword [0x87e031], edx
cmp cx, word [0x87e0e4]
jge 0x40b86c
lea eax, [0x87e06a]
mov dword [eax], edx
mov dword [0x87e10a], ebx
mov dword [0x87e04f], 0x13c6e
mov word [0x87e090], 0x78d8
jmp 0x40b872
and dword [0x87e066], edx
mov word [0x87e039], 0x4540
mov dword [ebp - 0x18c], 0x13d2b
mov dword [ebp - 0x190], 0x16880
mov eax, 0x40c684
mov dword [ebp - 0x194], eax
mov eax, 0x40c690
mov dword [ebp - 0x198], eax
mov eax, dword [ebp - 0x198]
push eax
mov eax, dword [ebp - 0x194]
push eax
mov eax, dword [ebp - 0x190]
push eax
mov eax, dword [ebp - 0x18c]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
jne 0x40b8e4
mov dword [0x87e0f1], ebx
and dword [0x87e039], esi
mov dword [0x87e0e7], 0x15d75
mov dword [esp - 0xc], eax
dec dword [0x87e039]
cmp dword [0x87e032], 0
jl 0x40b908
mov byte [0x87e05b], 7
mov dword [0x87e08f], ecx
sub eax, dword [0x87e022]
jmp 0x40b91e
mov byte [0x87e060], 0xcc
mov dword [0x87e012], ebx
mov word [0x87e070], 0x2b5
mov dword [0x87e094], ecx
mov dword [0x87e100], edx
mov dword [0x87e0a6], ecx
xor eax, eax
mov dword [ebp - 0x1a4], eax
mov eax, dword [ebp - 0x1a4]
push eax
mov eax, dword [ebp - 0x1a0]
push eax
mov eax, dword [ebp - 0x19c]
push eax
call sub.advapi32.dll_RevertToSelf
test eax, eax
jne 0x40b96d
mov byte [0x87e051], 0x81
add dword [0x87e091], edi
mov dword [esp - 0xc], eax
mov dword [0x87e08b], edx
and dword [0x87e0b3], ebx
mov dword [esp - 0x28], eax
mov dword [0x87e0ef], 0x11545
xor eax, eax
mov dword [ebp - 0x1b0], eax
mov eax, dword [ebp - 0x1b0]
push eax
mov eax, dword [ebp - 0x1ac]
push eax
mov eax, dword [ebp - 0x1a8]
push eax
call sub.advapi32.dll_RevertToSelf
test eax, eax
jne 0x40b9c1
mov dword [0x87e085], edi
mov esi, dword [0x87e07e]
mov dword [0x87e0ae], edi
mov eax, ecx
mov edi, dword [0x87e05e]
mov dword [ebp - 0x1b4], 0x1deb8
mov dword [ebp - 0x1b8], 0x1d64c
mov eax, 0x40c6a0
mov dword [ebp - 0x1bc], eax
mov eax, 0x40c6b8
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x1c0]
push eax
mov eax, dword [ebp - 0x1bc]
push eax
mov eax, dword [ebp - 0x1b8]
push eax
mov eax, dword [ebp - 0x1b4]
push eax
call sub.user32.dll_AnyPopup
dec eax
mov dword [0x87e095], esi
sub dword [0x87e022], ecx
mov dword [ebp - 0x1c4], 0x1ca19
mov dword [ebp - 0x1c8], 0x1fb38
mov eax, 0x40c6d4
mov dword [ebp - 0x1cc], eax
mov eax, 0x40c6d8
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp - 0x1d0]
push eax
mov eax, dword [ebp - 0x1cc]
push eax
mov eax, dword [ebp - 0x1c8]
push eax
mov eax, dword [ebp - 0x1c4]
push eax
call sub.user32.dll_CloseWindow
xchg dword [0x87e0c2], edi
inc ecx
mov dword [0x87e0c4], edi
call fcn.004033a0
mov byte [0x87e0ea], 0xb6
mov dword [0x87e0af], edi
lea esi, [0x87e0f4]
mov dword [esi + 0x20], 0xb0
call fcn.00401544
mov edx, esi
mov dword [0x87e0e6], ecx
mov ebx, 0xa9
mov esi, dword [0x87e0e4]
mov dword [ebp - 0x1d4], 0x14d41
mov dword [ebp - 0x1d8], 0x103e8
mov eax, 0x40c6e0
mov dword [ebp - 0x1dc], eax
mov eax, 0x40c6f8
mov dword [ebp - 0x1e0], eax
mov eax, dword [ebp - 0x1e0]
push eax
mov eax, dword [ebp - 0x1dc]
push eax
mov eax, dword [ebp - 0x1d8]
push eax
mov eax, dword [ebp - 0x1d4]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
jne 0x40bb0e
mov dword [0x87e104], ecx
mov byte [0x87e080], 0xb4
mov dword [0x87e014], edi
mov dword [esp - 8], ebx
lea eax, [ebp - 0x1e8]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
je 0x40bb3b
mov edi, dword [0x87e075]
mov ecx, 0x67
mov word [0x87e054], 0xd1ad
add eax, 0xdd
mov dword [esp - 0x24], ecx
mov dword [0x87e09d], eax
mov dword [esp - 0x1c], edx
mov ecx, esi
mov byte [0x87e0a1], 0x7d
cmp al, byte [esp + 0x1c]
jge 0x40bb5d
dec esi
mov dword [0x87e058], ecx
jmp 0x40bb75
xchg dword [0x87e087], edx
mov dword [0x87e104], esi
dec dword [0x87e0dc]
mov dword [0x87e0db], edi
mov dword [0x87e07a], ecx
mov word [0x87e0b2], 0x7d9d
lea ebx, [0x87e03b]
add dword [ebx], 0xc9
lea eax, [ebp - 0x1f0]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
jne 0x40bbc5
mov dword [0x87e0f1], edi
mov dword [0x87e03a], ebx
cmp byte [0x87e077], 0
jle 0x40bbbf
mov dword [0x87e0a1], edi
mov dword [esp - 0x18], edx
mov dword [0x87e0db], esi
mov byte [ebp - 0x2c9], 0
sub dword [0x87e041], edx
mov dword [0x87e0bb], ecx
mov dword [0x87e0bd], eax
mov dword [0x87e091], edx
xor eax, eax
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x1fc]
push eax
mov eax, dword [ebp - 0x1f8]
push eax
mov eax, dword [ebp - 0x1f4]
push eax
call sub.advapi32.dll_RevertToSelf
test eax, eax
jne 0x40bc33
mov edi, dword [0x87e083]
mov dword [esp - 4], eax
lea ebx, [0x87e018]
mov dword [ebx + 8], 0xdf
lea ecx, [0x87e034]
mov dword [ecx + 0x24], ebx
mov word [0x87e0b7], 0x5108
inc byte [ebp - 0x2c9]
cmp byte [ebp - 0x2c9], 2
jne 0x40bbcc
mov dword [ebp - 0x200], 0x12685
mov dword [ebp - 0x204], 0x15267
mov eax, 0x40c704
mov dword [ebp - 0x208], eax
mov eax, 0x40c710
mov dword [ebp - 0x20c], eax
mov eax, dword [ebp - 0x20c]
push eax
mov eax, dword [ebp - 0x208]
push eax
mov eax, dword [ebp - 0x204]
push eax
mov eax, dword [ebp - 0x200]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
je 0x40bcaa
mov dword [0x87e0ba], edx
mov word [0x87e058], 0x9f4a
mov dword [0x87e026], esi
mov dword [esp - 0x18], eax
and dword [0x87e0eb], ebx
mov dword [0x87e0f7], 0x17ed6
lea edx, [0x87e069]
mov dword [edx + 0xc], 0x68
mov dword [0x87e0b8], eax
mov dword [ebp - 0x210], 0x1ca8b
mov eax, dword [ebp - 0x210]
push eax
call sub.advapi32.dll_RevertToSelf_1
test eax, eax
jne 0x40bcfd
mov dword [0x87e0b2], 0x12165
mov dword [0x87e0b3], ecx
mov dword [0x87e092], eax
mov byte [ebp - 0x2c9], 0
sub dword [0x87e048], edx
cmp dword [0x87e097], 0
jg 0x40bd28
mov dword [0x87e03f], 0x14350
mov ecx, 0x1f0
mov dword [0x87e049], eax
add dword [0x87e09f], edi
add ebx, dword [0x87e0ff]
mov word [0x87e024], 0xbff2
xor eax, eax
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x21c]
push eax
mov eax, dword [ebp - 0x218]
push eax
mov eax, dword [ebp - 0x214]
push eax
call sub.advapi32.dll_RevertToSelf
mov dword [0x87e01a], esi
mov dword [0x87e0e4], edi
xchg dword [0x87e0b5], esi
sub dword [0x87e0cf], edi
mov dword [0x87e0d7], edx
inc byte [ebp - 0x2c9]
cmp byte [ebp - 0x2c9], 2
jne 0x40bd04
mov eax, 0x87e0af
call fcn.00401544
dec esi
mov dword [0x87e052], edx
add dword [0x87e0cf], eax
mov dword [0x87e097], edx
add ecx, 0x20
lea eax, [ebp - 0x228]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
jne 0x40bdd1
mov byte [0x87e0a2], 0xd2
mov dword [esp - 0x1c], eax
xchg dword [0x87e095], edi
lea eax, [ebp - 0x230]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
mov eax, 0x163
mov ebx, 0x133
mov dword [0x87e031], edi
mov dword [0x87e030], edx
cmp byte [0x87e0d0], 0
jle 0x40be21
dec dword [0x87e012]
mov dword [0x87e094], 0x10522
mov dword [0x87e01d], ecx
mov word [0x87e040], 0x27e5
mov dword [0x87e0a1], ebx
mov word [0x87e072], 0x41ae
xchg dword [0x87e029], ecx
mov dword [0x87e067], eax
mov dword [0x87e0c0], edx
mov dword [0x87e0ca], ecx
sub eax, dword [0x87e0ec]
mov dword [0x87e0d9], ecx
mov dword [ebp - 0x234], 0x1536f
mov dword [ebp - 0x238], 0x1d511
mov eax, 0x40c720
mov dword [ebp - 0x23c], eax
mov eax, 0x40c734
mov dword [ebp - 0x240], eax
mov eax, dword [ebp - 0x240]
push eax
mov eax, dword [ebp - 0x23c]
push eax
mov eax, dword [ebp - 0x238]
push eax
mov eax, dword [ebp - 0x234]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
je 0x40beab
mov byte [0x87e07d], 0xb3
mov esi, 0xb4
mov edx, edi
cmp ecx, dword [0x87e046]
je 0x40bece
mov dword [0x87e0d2], 0x14c4a
mov dword [0x87e057], edi
mov ebx, edx
mov byte [0x87e0b2], 0xa5
jmp 0x40bede
xchg dword [esp - 0x20], edx
mov dword [0x87e047], esi
mov dword [0x87e0f9], eax
mov dword [esp - 0xc], esi
dec edi
mov dword [ebp - 0x244], 0x190cc
mov dword [ebp - 0x248], 0x173b8
mov eax, 0x40c748
mov dword [ebp - 0x24c], eax
mov eax, 0x40c750
mov dword [ebp - 0x250], eax
mov eax, dword [ebp - 0x250]
push eax
mov eax, dword [ebp - 0x24c]
push eax
mov eax, dword [ebp - 0x248]
push eax
mov eax, dword [ebp - 0x244]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
jne 0x40bf58
mov dword [0x87e0f0], edx
mov word [0x87e087], 0x3242
mov byte [0x87e023], 1
mov dword [0x87e094], edi
mov dword [0x87e105], 0x15cfb
mov word [0x87e104], 0x31bf
mov dword [0x87e07d], edi
mov dword [0x87e0f8], esi
mov dword [0x87e062], ecx
mov dword [ebp - 0x254], 0x1c3af
mov dword [ebp - 0x258], 0x1d941
mov eax, 0x40c760
mov dword [ebp - 0x25c], eax
mov eax, 0x40c780
mov dword [ebp - 0x260], eax
mov eax, dword [ebp - 0x260]
push eax
mov eax, dword [ebp - 0x25c]
push eax
mov eax, dword [ebp - 0x258]
push eax
mov eax, dword [ebp - 0x254]
push eax
call sub.user32.dll_AnyPopup
mov dword [0x87e0f4], edi
mov dword [0x87e0be], edx
and eax, 0xa1
mov dword [0x87e0f7], edx
mov dword [ebp - 0x264], 0x11e67
mov dword [ebp - 0x268], 0x1884b
mov eax, 0x40c79c
mov dword [ebp - 0x26c], eax
mov eax, 0x40c7ac
mov dword [ebp - 0x270], eax
mov eax, dword [ebp - 0x270]
push eax
mov eax, dword [ebp - 0x26c]
push eax
mov eax, dword [ebp - 0x268]
push eax
mov eax, dword [ebp - 0x264]
push eax
call sub.user32.dll_CloseWindow
test eax, eax
jne 0x40c04a
mov dword [0x87e08a], esi
mov dword [0x87e0a1], edi
lea esi, [0x87e055]
and dword [esi + 0x28], 0xc4
mov dword [0x87e0bd], edx
mov byte [0x87e03e], 0x1b
mov dword [0x87e028], esi
mov byte [0x87e052], 0x49
mov word [0x87e0c8], 0xdcca
sub dword [0x87e0f2], ebx
test ecx, ecx
jne 0x40c089
mov word [0x87e0d8], 0x264a
mov word [0x87e0cc], 0x778e
mov byte [0x87e066], 0x8b
mov dword [0x87e0a1], esi
sub dword [0x87e0c1], ecx
mov byte [0x87e0e4], 0x1d
lea eax, [ebp - 0x278]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
jne 0x40c0dd
mov dword [0x87e0bb], esi
mov dword [0x87e0ef], ebx
mov dword [0x87e08f], ecx
cmp dword [0x87e0b0], 0
jle 0x40c0c7
and dword [0x87e0c4], ecx
mov dword [0x87e074], edx
mov dword [0x87e014], 0x13b0c
and dword [0x87e05b], edx
mov dword [ebp - 0x27c], 0x1d940
mov dword [ebp - 0x280], 0x1301e
mov eax, 0x40c7bc
mov dword [ebp - 0x284], eax
mov eax, 0x40c7c4
mov dword [ebp - 0x288], eax
mov eax, dword [ebp - 0x288]
push eax
mov eax, dword [ebp - 0x284]
push eax
mov eax, dword [ebp - 0x280]
push eax
mov eax, dword [ebp - 0x27c]
push eax
call sub.user32.dll_AnyPopup
test eax, eax
je 0x40c13d
mov dword [esp - 0x12], eax
mov dword [esp - 0x28], ebx
mov word [0x87e0ee], 0xdea4
lea eax, [ebp - 0x290]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
jne 0x40c169
mov dword [0x87e0f4], edi
mov dword [0x87e088], edx
mov dword [0x87e066], 0x15171
add dword [0x87e0b4], ecx
and eax, 0x92
mov dword [0x87e030], edi
mov eax, ebx
lea eax, [ebp - 0x298]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
je 0x40c1c7
mov word [0x87e0ad], 0x5e8b
mov eax, ecx
mov word [0x87e0bb], 0xf61e
cmp di, word [ebp + 0x1c]
jne 0x40c1b3
mov dword [0x87e030], 0x17162
mov word [0x87e0b8], 0xd200
mov byte [0x87e09b], 8
mov word [0x87e0db], 0x90f8
mov dword [esp - 0x10], edi
cmp dword [ebp - 4], eax
je 0x40c1da
add dword [0x87e040], ebx
mov dword [0x87e03e], esi
jmp 0x40c1e0
xchg dword [0x87e080], eax
mov dword [0x87e08f], 0x16737
mov word [0x87e01a], 0x1e66
mov dword [esp - 0xc], esi
dec eax
lea eax, [ebp - 0x2a0]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
cmp dword [0x87e058], 0
jl 0x40c221
mov dword [0x87e0c3], eax
mov dword [0x87e0f4], ecx
xchg dword [0x87e030], edi
mov esi, edx
mov dword [0x87e02f], ebx
mov dword [0x87e0a3], 0x16293
xchg dword [0x87e0b0], eax
mov dword [0x87e066], ecx
mov byte [ebp - 0x2c9], 0
cmp dl, byte [ebp - 0x18]
jle 0x40c269
lea esi, [0x87e106]
mov dword [esi], 0xd3
mov dword [0x87e050], ecx
mov dword [0x87e0e9], esi
mov dword [0x87e096], eax
jmp 0x40c289
add edx, dword [0x87e0f6]
mov dword [0x87e0f8], eax
mov dword [0x87e03b], ecx
mov edi, 0x147
mov word [0x87e014], 0xb03e
test edx, edx
jne 0x40c294
mov byte [0x87e016], 9
dec dword [0x87e06f]
mov dword [0x87e065], ecx
mov dword [0x87e052], edi
xchg dword [0x87e0b0], edx
sub dword [0x87e03b], edi
mov dword [0x87e036], edx
mov dword [0x87e056], 0x15c86
xor eax, eax
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2ac]
push eax
mov eax, dword [ebp - 0x2a8]
push eax
mov eax, dword [ebp - 0x2a4]
push eax
call sub.advapi32.dll_RevertToSelf
test eax, eax
jne 0x40c31d
mov dword [esp - 8], ebx
mov dword [0x87e091], edi
cmp byte [0x87e027], 0
jge 0x40c30b
mov dword [0x87e044], 0x14e22
and dword [0x87e0ab], eax
mov dword [0x87e094], esi
add dword [0x87e02b], ecx
mov dword [0x87e0ee], ebx
mov dword [0x87e0a7], 0x10549
inc byte [0x87e076]
mov edx, dword [0x87e011]
mov dword [0x87e0e3], esi
mov dword [0x87e041], ecx
inc byte [ebp - 0x2c9]
cmp byte [ebp - 0x2c9], 2
jne 0x40c244
mov byte [ebp - 0x2c9], 0
mov dword [ebp - 0x2b0], 0x1487d
mov dword [ebp - 0x2b4], 0x11a7d
mov eax, 0x40c7e4
mov dword [ebp - 0x2b8], eax
mov eax, 0x40c810
mov dword [ebp - 0x2bc], eax
mov eax, dword [ebp - 0x2bc]
push eax
mov eax, dword [ebp - 0x2b8]
push eax
mov eax, dword [ebp - 0x2b4]
push eax
mov eax, dword [ebp - 0x2b0]
push eax
call sub.user32.dll_AnyPopup
test eax, eax
jne 0x40c3d7
cmp eax, dword [0x87e047]
jge 0x40c3bc
mov dword [0x87e077], esi
xchg dword [0x87e0d9], eax
mov word [0x87e07b], 0xafd6
add dword [0x87e095], ebx
mov dword [0x87e03b], eax
mov dword [0x87e082], ebx
call fcn.00403c3c
inc byte [ebp - 0x2c9]
cmp byte [ebp - 0x2c9], 2
jne 0x40c359
sub dword [0x87e05e], edi
and ecx, 0x1a
mov dword [0x87e013], ebx
mov eax, 0x87e0bc
call fcn.00401544
mov byte [0x87e048], 0x5d
cmp dword [0x87e098], 0
jle 0x40c42a
mov dword [0x87e04e], esi
mov dword [esp - 8], ecx
mov dword [0x87e0b8], esi
jmp 0x40c436
dec dword [0x87e025]
mov dword [0x87e073], edi
test esi, esi
je 0x40c452
mov dword [0x87e07f], edi
sub dword [0x87e07b], edx
mov dword [0x87e060], 0x15e03
jmp 0x40c459
mov byte [0x87e091], 0xc5
cmp ebx, 0xffffffff
jge 0x40c470
mov dword [0x87e032], esi
mov dword [esp - 0x24], ecx
mov dword [0x87e10a], eax
jmp 0x40c47d
mov byte [0x87e079], 0x64
add edi, 0xb2
lea ecx, [0x87e01a]
mov dword [ecx + 0x20], 0xc8
lea eax, [ebp - 0x2c8]
push eax
call sub.kernel32.dll_QueryPerformanceCounter
test eax, eax
jne 0x40c4ad
and dword [0x87e040], eax
and dword [0x87e04b], ebx
dec esi
mov dword [0x87e02f], edi
sub dword [0x87e05e], edi
and ecx, 0x1a
mov dword [0x87e013], ebx
push ecx
push edx
push edi
call fcn.00403e40
mov esp, ebp
pop ebp
ret