Function at 0x1004588e
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100680f5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x308
push esi
push edi
mov dword [ebp - 0x10], 0x5a9c4c8d
mov dword [ebp - 0x24], 0xf415
mov dword [ebp - 0x60], 0xfffffffe
mov dword [ebp - 0x94], 0xa46b4c01
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x2c0], 0xdc66
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x280], eax
cmp dword [ebp - 0x10], 0
je 0x10045946
cmp dword [ebp - 0x24], 1
jg 0x10045902
mov dword [ebp - 0x1b0], 1
jmp 0x10045909
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x1b0], eax
jle 0x10045920
mov dword [ebp - 0x1f4], 1
jmp 0x10045927
and dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x1f4]
sub ecx, dword [ebp - 0x10]
imul eax, ecx
test eax, eax
je 0x10045946
mov dword [ebp - 0x170], 1
jmp 0x1004594d
and dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x170], eax
jge 0x10045964
mov dword [ebp - 0xc0], 1
jmp 0x1004596b
and dword [ebp - 0xc0], 0
cmp dword [ebp - 0xc0], 0xffffffff
jbe 0x10045980
mov dword [ebp - 0x178], 1
jmp 0x10045987
and dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x178]
je 0x100459a7
mov eax, 0xfad5befa
test eax, eax
je 0x100459a7
mov dword [ebp - 0xc8], 1
jmp 0x100459ae
and dword [ebp - 0xc8], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0xc8], eax
je 0x100459d8
mov byte [ebp - 0x4d], 0
movzx eax, byte [ebp - 0x4d]
test eax, eax
je 0x100459cd
push 0
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x60], eax
jmp 0x10045d29
push 1
lea ecx, [ebp - 0x20c]
call fcn.10028b5c
and dword [ebp - 4], 0
mov dword [ebp - 0x58], 0xffffffff
mov dword [ebp - 0x1ac], 0xffffffff
mov dword [ebp - 0x54], 0xfffffff6
mov dword [ebp - 0x230], 0x4d37718c
mov dword [ebp - 0x84], 0
jmp 0x10045a24
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 1
jge 0x10045a46
push dword [ebp - 0x84]
lea ecx, [ebp - 0x20c]
call fcn.10028ca3
mov dword [eax], 1
jmp 0x10045a17
push 0
lea ecx, [ebp - 0x20c]
call fcn.10028ca3
mov ecx, dword [ebp - 0x24]
cmp dword [eax], ecx
jne 0x10045a6c
cmp dword [ebp - 0x24], 0
je 0x10045a6c
mov dword [ebp - 0x218], 1
jmp 0x10045a73
and dword [ebp - 0x218], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x294], eax
push 0
lea ecx, [ebp - 0x20c]
call fcn.10028ca3
cmp dword [eax], 0xffffffff
jl 0x10045a9a
mov dword [ebp - 0x180], 1
jmp 0x10045aa1
and dword [ebp - 0x180], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x180], eax
jle 0x10045ab8
mov dword [ebp - 0xd0], 1
jmp 0x10045abf
and dword [ebp - 0xd0], 0
cmp dword [ebp - 0xd0], 0xfffffff9
jb 0x10045ad4
mov dword [ebp - 0x188], 1
jmp 0x10045adb
and dword [ebp - 0x188], 0
mov eax, dword [ebp - 0x60]
cmp dword [ebp - 0x188], eax
jge 0x10045af2
mov dword [ebp - 0xd8], 1
jmp 0x10045af9
and dword [ebp - 0xd8], 0
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2a4], eax
xor eax, eax
add eax, 0xa681120b
jne 0x10045b2d
push 4
pop eax
test eax, eax
jne 0x10045b2d
and dword [ebp - 0x228], 0
jmp 0x10045b37
mov dword [ebp - 0x228], 1
push 0
lea ecx, [ebp - 0x20c]
call fcn.10028ca3
mov esi, eax
push 0
lea ecx, [ebp - 0x20c]
call fcn.10028ca3
mov ecx, dword [esi]
cmp ecx, dword [eax]
jg 0x10045b65
mov dword [ebp - 0x1a4], 1
jmp 0x10045b6c
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x94]
add eax, dword [ebp - 0x24]
jne 0x10045b9b
cmp dword [ebp - 0x1ac], 0
jne 0x10045b9b
and dword [ebp - 0xe0], 0
jmp 0x10045ba5
mov dword [ebp - 0xe0], 1
mov eax, dword [ebp - 0x54]
cmp dword [ebp - 0xe0], eax
jle 0x10045bbc
mov dword [ebp - 0xe8], 1
jmp 0x10045bc3
and dword [ebp - 0xe8], 0
mov eax, dword [ebp - 0x1ac]
imul eax, dword [ebp - 0xe8]
mov dword [ebp - 0x230], eax
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x60], eax
jl 0x10045bea
mov dword [ebp - 0x1b4], 1
jmp 0x10045bf1
and dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x1b4]
neg eax
imul eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x54]
jne 0x10045c11
mov dword [ebp - 0xf0], 1
jmp 0x10045c18
and dword [ebp - 0xf0], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0xf0], eax
je 0x10045c2f
mov dword [ebp - 0x238], 1
jmp 0x10045c36
and dword [ebp - 0x238], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x2b4], eax
cmp dword [ebp - 0x94], 0xe63d4d86
jae 0x10045c60
mov dword [ebp - 0x1bc], 1
jmp 0x10045c67
and dword [ebp - 0x1bc], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x1bc], eax
jl 0x10045c7e
mov dword [ebp - 0xf8], 1
jmp 0x10045c85
and dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0x24c], eax
mov dword [ebp - 0x58], 0
jmp 0x10045ca1
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0
jg 0x10045d1a
mov dword [ebp - 0x10], 0
jmp 0x10045cb7
mov eax, dword [ebp - 0x10]
dec eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jl 0x10045cec
mov byte [ebp - 0x3f], 0
movzx eax, byte [ebp - 0x3f]
test eax, eax
je 0x10045cd6
push 0
push 0x1f60
call dword [sym.imp.USER32.dll_GetWindowPlacement]
push 0
lea ecx, [ebp - 0x20c]
call fcn.10028ca3
cmp dword [eax], 0
je 0x10045cea
jmp 0x10045cec
jmp 0x10045cb0
mov dword [ebp - 0x54], 0
jmp 0x10045cfc
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
jg 0x10045d18
mov byte [ebp - 0x45], 0
movzx eax, byte [ebp - 0x45]
test eax, eax
je 0x10045d16
push 0
call dword [sym.imp.GDI32.dll_CreatePenIndirect]
jmp 0x10045cf5
jmp 0x10045c9a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20c]
call fcn.10028c61
mov dword [ebp - 0x2bc], 0
mov dword [ebp - 0x1c4], 0xffffffff
mov dword [ebp - 0x30], 0
jmp 0x10045d4d
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jge 0x10045d63
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x214], 4
jmp 0x10045d46
mov dword [ebp - 0x30], 0
jmp 0x10045d73
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jge 0x10045d89
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x2c4], 0x74dd0324
jmp 0x10045d6c
mov byte [ebp - 0x41], 0
movzx eax, byte [ebp - 0x41]
test eax, eax
je 0x10045da0
push 0x174c
call dword [sym.imp.KERNEL32.dll_Sleep]
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x214], 9
jmp 0x10045dce
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x214]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x214], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x214], 0xfffffffc
jg 0x10045e31
mov dword [ebp - 0x27c], 0x2121
mov dword [ebp - 0x2b8], 0xfffffffd
mov dword [ebp - 0x284], 0x17b844a7
mov dword [ebp - 0x74], 0
jmp 0x10045e0c
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 3
jge 0x10045e22
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0x308], 0x32cf415d
jmp 0x10045e05
mov eax, dword [ebp - 0x1c4]
dec eax
mov dword [ebp - 0x1c4], eax
jmp 0x10045db3
mov dword [ebp - 0x68], 6
push 4
lea ecx, [ebp - 0x198]
call fcn.10028b5c
mov dword [ebp - 4], 1
mov dword [ebp - 0x248], 0xc01e6e2b
mov dword [ebp - 0x2c], 0
jmp 0x10045e66
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 3
jge 0x10045e7c
mov eax, dword [ebp - 0x2c]
mov dword [ebp + eax*4 - 0x264], 6
jmp 0x10045e5f
mov dword [ebp - 0x2c], 0
jmp 0x10045e8c
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 4
jge 0x10045ea8
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x198]
call fcn.10028ca3
mov dword [eax], 0x42c70bb7
jmp 0x10045e85
mov byte [ebp - 0x3d], 0
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x10045ecc
push 0
push 0x1ee1
push 0
push 0
push 0xcff
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 3
lea ecx, [ebp - 0x198]
call fcn.10028ca3
mov dword [eax], 2
jmp 0x10045f05
push 3
lea ecx, [ebp - 0x198]
call fcn.10028ca3
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0x100]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x100]
mov dword [ecx], eax
push 3
lea ecx, [ebp - 0x198]
call fcn.10028ca3
cmp dword [eax], 0
jl 0x10045fdd
mov dword [ebp - 0x9c], 0xfffffff9
push 3
lea ecx, [ebp - 0x198]
call fcn.10028ca3
mov eax, dword [eax]
imul esi, dword [ebp + eax*4 - 0x264], 0xffffeb85
push 3
lea ecx, [ebp - 0x198]
call fcn.10028ca3
mov eax, dword [eax]
cmp esi, dword [ebp + eax*4 - 0x264]
jg 0x10045f63
mov dword [ebp - 0x1cc], 1
jmp 0x10045f6a
and dword [ebp - 0x1cc], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x264]
cmp dword [ebp - 0x1cc], eax
jl 0x10045f8a
mov dword [ebp - 0x108], 1
jmp 0x10045f91
and dword [ebp - 0x108], 0
push 3
lea ecx, [ebp - 0x198]
call fcn.10028ca3
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x264]
mov dword [ebp - 0x2e4], eax
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 0x9c]
imul eax, dword [ebp - 0x108]
mov dword [ebp - 0x248], eax
cmp dword [ebp - 0x9c], 0
je 0x10045fd8
jmp 0x10045ee1
jmp 0x10045ee1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x198]
call fcn.10028c61
mov dword [ebp - 0x14], 0x4e064826
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x38], 0x8169b41d
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x88], 0
jmp 0x10046021
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 1
jge 0x1004603a
mov eax, dword [ebp - 0x88]
mov dword [ebp + eax*4 - 0x4c], 0xea3bbe75
jmp 0x10046014
mov dword [ebp - 0x14], 0xffffffe5
jmp 0x1004604a
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffffeb
jge 0x1004628b
mov dword [ebp - 0x5c], 0xc4e2bf5
mov dword [ebp - 0x1c8], 0
mov dword [ebp - 0x7c], 0
jmp 0x10046075
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 3
jge 0x1004608b
mov eax, dword [ebp - 0x7c]
mov dword [ebp + eax*4 - 0x2f0], 0x59ba
jmp 0x1004606e
cmp dword [ebp - 0x14], 0
jne 0x100461a7
or eax, 0xffffffff
je 0x10046106
cmp dword [ebp - 0x5c], 0xfffffff8
jle 0x100460ac
mov dword [ebp - 0x1d4], 1
jmp 0x100460b3
and dword [ebp - 0x1d4], 0
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0x1d4], eax
je 0x100460ca
mov dword [ebp - 0x110], 1
jmp 0x100460d1
and dword [ebp - 0x110], 0
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x110]
jg 0x100460e8
mov dword [ebp - 0x1dc], 1
jmp 0x100460ef
and dword [ebp - 0x1dc], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x1dc], eax
jle 0x10046106
mov dword [ebp - 0x220], 1
jmp 0x1004610d
and dword [ebp - 0x220], 0
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x290], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x298], eax
mov eax, 0xa99d
cmp eax, 1
jg 0x1004613e
mov dword [ebp - 0x224], 1
jmp 0x10046145
and dword [ebp - 0x224], 0
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x2e0], eax
imul eax, dword [ebp - 0x18], 0x8a6e
cmp eax, dword [ebp - 0x14]
jg 0x10046166
mov dword [ebp - 0x118], 1
jmp 0x1004616d
and dword [ebp - 0x118], 0
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0x118], eax
jl 0x10046184
mov dword [ebp - 0x1e4], 1
jmp 0x1004618b
and dword [ebp - 0x1e4], 0
cmp dword [ebp - 0x1e4], 0xffffffff
jl 0x100461a0
mov dword [ebp - 0x1ec], 1
jmp 0x100461a7
and dword [ebp - 0x1ec], 0
cmp dword [ebp - 0x18], 0x95e04a2
jg 0x100461bc
mov dword [ebp - 0x124], 1
jmp 0x100461c3
and dword [ebp - 0x124], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x124], eax
jl 0x100461da
mov dword [ebp - 0x19c], 1
jmp 0x100461e1
and dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x19c], eax
jg 0x100461f8
mov dword [ebp - 0xa4], 1
jmp 0x100461ff
and dword [ebp - 0xa4], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xa4]
mov dword [ebp + eax - 0x2f0], ecx
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0xa4], eax
jg 0x10046229
mov dword [ebp - 0x12c], 1
jmp 0x10046230
and dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x1c8], eax
cmp dword [ebp - 0x1c8], 0
je 0x10046257
cmp dword [ebp - 0x14], 0
je 0x10046257
mov dword [ebp - 0x134], 1
jmp 0x1004625e
and dword [ebp - 0x134], 0
cmp dword [ebp - 0x134], 0xd83f7cd3
jb 0x10046276
mov dword [ebp - 0x1a0], 1
jmp 0x1004627d
and dword [ebp - 0x1a0], 0
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x38], eax
jmp 0x10046043
cmp dword [ebp - 0x38], 0
jne 0x1004634e
cmp dword [ebp - 0x18], 0
jne 0x100462aa
cmp dword [ebp - 0x18], 0
jne 0x100462aa
and dword [ebp - 0x13c], 0
jmp 0x100462b4
mov dword [ebp - 0x13c], 1
imul eax, dword [ebp - 0x13c], 0x2fc3
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x20]
cmp dword [ebp - 0x38], 0xfffffff7
jge 0x100462d6
mov dword [ebp - 0x1e0], 1
jmp 0x100462dd
and dword [ebp - 0x1e0], 0
cmp dword [ebp - 0x1e0], 0xba8
jne 0x100462f9
push 0xfffffffffffffff7
pop eax
test eax, eax
jne 0x100462f9
and dword [ebp - 0x144], 0
jmp 0x10046303
mov dword [ebp - 0x144], 1
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x144], eax
jl 0x10046320
mov eax, 0x825d
test eax, eax
jne 0x10046320
and dword [ebp - 0x98], 0
jmp 0x1004632a
mov dword [ebp - 0x98], 1
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x98]
mov dword [ebp + eax - 0x4c], ecx
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x98]
jne 0x1004634e
and dword [ebp - 0x23c], 0
jmp 0x10046358
mov dword [ebp - 0x23c], 1
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x2a0], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x2c8], eax
cmp dword [ebp - 0x18], 0
jne 0x1004637c
mov dword [ebp - 0x1a8], 1
jmp 0x10046383
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x1a8], eax
jg 0x1004639a
mov dword [ebp - 0x14c], 1
jmp 0x100463a1
and dword [ebp - 0x14c], 0
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x14c], eax
jle 0x100463b8
mov dword [ebp - 0x1d0], 1
jmp 0x100463bf
and dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0x38], eax
je 0x100463dc
mov dword [ebp - 0x154], 1
jmp 0x100463e3
and dword [ebp - 0x154], 0
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x14]
sub eax, 0x6c4a8dfa
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2a8], eax
cmp dword [ebp - 0x18], 5
jg 0x10046415
mov dword [ebp - 0xb4], 1
jmp 0x1004641c
and dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0xb4]
add eax, 0x385f60b8
jne 0x1004642d
cmp dword [ebp - 0x18], 0
cmp dword [ebp - 0x18], 0xfffffff9
je 0x1004657a
mov dword [ebp - 0x20], 0
jmp 0x10046447
mov eax, dword [ebp - 0x20]
dec eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jl 0x10046578
mov byte [ebp - 0x43], 0
movzx eax, byte [ebp - 0x43]
test eax, eax
je 0x10046472
push 0x67e
push 0xe49
push 0x1048
call dword [sym.imp.GDI32.dll_GetPixel]
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x4c], 0
jne 0x10046559
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x4c], 0
jne 0x1004649c
mov eax, 0xc456
test eax, eax
jne 0x1004649c
and dword [ebp - 0x15c], 0
jmp 0x100464a6
mov dword [ebp - 0x15c], 1
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0
jne 0x100464c8
mov eax, dword [ebp - 0x20]
cmp dword [ebp + eax*4 - 0x4c], 0
jne 0x100464c8
and dword [ebp - 0x1f0], 0
jmp 0x100464d2
mov dword [ebp - 0x1f0], 1
cmp dword [ebp - 0x1f0], 0xfff8
jbe 0x100464ea
mov dword [ebp - 0x164], 1
jmp 0x100464f1
and dword [ebp - 0x164], 0
cmp dword [ebp - 0x164], 0x4a2f
jne 0x10046509
mov dword [ebp - 0x1b8], 1
jmp 0x10046510
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x4c]
add eax, 6
cmp eax, dword [ebp - 0x1b8]
jl 0x10046534
mov eax, 0xdce6
test eax, eax
jne 0x10046534
and dword [ebp - 0x16c], 0
jmp 0x1004653e
mov dword [ebp - 0x16c], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c]
cmp dword [ebp - 0x16c], eax
jl 0x10046559
and dword [ebp - 0x1d8], 0
jmp 0x10046563
mov dword [ebp - 0x1d8], 1
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1d8]
mov dword [ebp + eax - 0x4c], ecx
jmp 0x10046440
jmp 0x10046597
mov dword [ebp - 0x174], 0x9cf818a8
mov dword [ebp - 0x174], 0x50fade0f
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x20], eax
mov byte [ebp - 0x47], 0
lea eax, [ebp - 0x47]
push eax
call fcn.100456d7
pop ecx
mov dword [ebp - 0x68], 0xffffffe6
jmp 0x100465b5
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0xffffffee
jle 0x100469bc
push 3
lea ecx, [ebp - 0x270]
call fcn.10028b5c
mov dword [ebp - 4], 2
mov dword [ebp - 0x1c], 0x24a8c6a5
mov dword [ebp - 0x90], 0x68aa2d34
mov dword [ebp - 0x1c], 0
jmp 0x100465f4
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x13
jle 0x10046617
mov byte [ebp - 0x4e], 0
movzx eax, byte [ebp - 0x4e]
test eax, eax
je 0x10046615
push 0xd3c
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
jmp 0x100465ed
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], eax
jge 0x1004662b
mov dword [ebp - 0x1c0], 1
jmp 0x10046632
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x1c0], eax
jle 0x10046649
mov dword [ebp - 0x17c], 1
jmp 0x10046650
and dword [ebp - 0x17c], 0
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x17c]
cmp eax, dword [ebp - 0x90]
jg 0x1004666d
mov dword [ebp - 0x1e8], 1
jmp 0x10046674
and dword [ebp - 0x1e8], 0
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
neg ecx
sub eax, ecx
cmp eax, dword [ebp - 0x1e8]
je 0x10046692
mov dword [ebp - 0x184], 1
jmp 0x10046699
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x90]
imul eax, dword [ebp - 0x184]
cmp dword [ebp - 0x1c], eax
jne 0x100466b7
mov dword [ebp - 0x18c], 1
jmp 0x100466be
and dword [ebp - 0x18c], 0
mov eax, dword [ebp - 0x90]
cmp dword [ebp - 0x18c], eax
je 0x100466d8
mov dword [ebp - 0x11c], 1
jmp 0x100466df
and dword [ebp - 0x11c], 0
cmp dword [ebp - 0x11c], 0xbe92
jg 0x100466f7
mov dword [ebp - 0x120], 1
jmp 0x100466fe
and dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x120], eax
jge 0x10046715
mov dword [ebp - 0x128], 1
jmp 0x1004671c
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 0x90]
cmp dword [ebp - 0x128], eax
jne 0x10046736
mov dword [ebp - 0x130], 1
jmp 0x1004673d
and dword [ebp - 0x130], 0
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x130]
jl 0x10046754
mov dword [ebp - 0x138], 1
jmp 0x1004675b
and dword [ebp - 0x138], 0
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x1c], eax
push 1
lea ecx, [ebp - 0x200]
call fcn.10028b5c
mov byte [ebp - 4], 3
mov dword [ebp - 0x64], 0xfffffff6
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x244], 0xcd7d393e
mov dword [ebp - 0x6c], 0
jmp 0x100467a0
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 1
jge 0x100467bc
push dword [ebp - 0x6c]
lea ecx, [ebp - 0x200]
call fcn.10028ca3
mov dword [eax], 0x6cce57bf
jmp 0x10046799
push 0
lea ecx, [ebp - 0x200]
call fcn.10028ca3
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0
jne 0x10046829
cmp dword [ebp - 0x64], 1
jle 0x100467e6
mov dword [ebp - 0x140], 1
jmp 0x100467ed
and dword [ebp - 0x140], 0
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x64], eax
or eax, 0xffffffff
sub eax, dword [ebp - 0x64]
cmp eax, dword [ebp - 0x22c]
jg 0x10046810
mov dword [ebp - 0x148], 1
jmp 0x10046817
and dword [ebp - 0x148], 0
cmp dword [ebp - 0x148], 1
jge 0x10046829
and dword [ebp - 0x150], 0
jmp 0x10046833
mov dword [ebp - 0x150], 1
push 0
lea ecx, [ebp - 0x200]
call fcn.10028ca3
mov esi, eax
push 0
lea ecx, [ebp - 0x200]
call fcn.10028ca3
mov ecx, dword [ebp - 0x150]
add ecx, dword [eax]
mov esi, dword [esi]
sub esi, ecx
push 0
lea ecx, [ebp - 0x200]
call fcn.10028ca3
cmp esi, dword [eax]
jl 0x10046878
mov dword [ebp - 0x158], 1
jmp 0x1004687f
and dword [ebp - 0x158], 0
push 0
lea ecx, [ebp - 0x200]
call fcn.10028ca3
mov ecx, dword [ebp - 0x158]
cmp ecx, dword [eax]
je 0x100468a2
mov dword [ebp - 0x160], 1
jmp 0x100468a9
and dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x244], eax
mov byte [ebp - 0x3e], 0
movzx eax, byte [ebp - 0x3e]
test eax, eax
je 0x100468d7
push 0x1ee5
push 0
push 0
push 0x213
push 0
call dword [sym.imp.SHELL32.dll_ExtractIconExW]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x200]
call fcn.10028c61
mov dword [ebp - 0x34], 0
jmp 0x100468f6
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 3
jge 0x10046912
push dword [ebp - 0x34]
lea ecx, [ebp - 0x270]
call fcn.10028ca3
mov dword [eax], 0x386c
jmp 0x100468ef
mov dword [ebp - 0x34], 0
jmp 0x10046922
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 1
jge 0x10046938
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x8c], 0xfffffffd
jmp 0x1004691b
cmp dword [ebp - 0x68], 0
je 0x1004694f
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x270]
call fcn.10028c61
jmp 0x100469bc
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x8c], 2
jmp 0x1004697d
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x8c]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x8c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x8c], 0
jl 0x100469a8
mov byte [ebp - 0x40], 0
movzx eax, byte [ebp - 0x40]
test eax, eax
je 0x100469a6
push 0xb18
push 0
call dword [sym.imp.KERNEL32.dll_IsValidLocale]
jmp 0x10046962
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x270]
call fcn.10028c61
jmp 0x100465ae
mov dword [ebp - 0x80], 0x33efc07e
push 2
lea ecx, [ebp - 0xb0]
call fcn.10028b5c
mov dword [ebp - 4], 4
mov dword [ebp - 0x234], 0xfffffffc
mov dword [ebp - 0x2dc], 0x90ae
mov dword [ebp - 0x28], 0
jmp 0x100469fb
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 2
jge 0x10046a17
push dword [ebp - 0x28]
lea ecx, [ebp - 0xb0]
call fcn.10028ca3
mov dword [eax], 0xffff
jmp 0x100469f4
mov dword [ebp - 0x28], 0
jmp 0x10046a27
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 2
jge 0x10046a3d
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x28c], 0x628405ce
jmp 0x10046a20
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x2b0], eax
push 1
lea ecx, [ebp - 0xb0]
call fcn.10028ca3
mov ecx, dword [ebp - 0x80]
cmp dword [eax], ecx
jl 0x10046a75
push 0
lea ecx, [ebp - 0xb0]
call fcn.10028ca3
cmp dword [eax], 0
jne 0x10046a75
and dword [ebp - 0xa0], 0
jmp 0x10046a7f
mov dword [ebp - 0xa0], 1
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0xa0]
mov dword [ebp + eax - 0x28c], ecx
mov esi, dword [ebp - 0x80]
push 1
lea ecx, [ebp - 0xb0]
call fcn.10028ca3
mov eax, dword [eax]
add eax, dword [ebp - 0xa0]
cmp eax, esi
je 0x10046aba
mov dword [ebp - 0x168], 1
jmp 0x10046ac1
and dword [ebp - 0x168], 0
push 1
lea ecx, [ebp - 0xb0]
call fcn.10028ca3
mov eax, dword [eax]
cmp eax, dword [ebp - 0x168]
jg 0x10046aea
mov eax, 0xb1a7
test eax, eax
jne 0x10046aea
and dword [ebp - 0xb8], 0
jmp 0x10046af4
mov dword [ebp - 0xb8], 1
push 0
lea ecx, [ebp - 0xb0]
call fcn.10028ca3
mov esi, dword [ebp - 0xb8]
add esi, dword [eax]
push 0
lea ecx, [ebp - 0xb0]
call fcn.10028ca3
cmp esi, dword [eax]
jg 0x10046b26
mov dword [ebp - 0xbc], 1
jmp 0x10046b2d
and dword [ebp - 0xbc], 0
mov esi, dword [ebp - 0x80]
push 0
lea ecx, [ebp - 0xb0]
call fcn.10028ca3
mov edi, dword [ebp - 0xbc]
sub edi, dword [eax]
push 0
lea ecx, [ebp - 0xb0]
call fcn.10028ca3
sub edi, dword [eax]
cmp esi, edi
jne 0x10046b64
mov dword [ebp - 0xc4], 1
jmp 0x10046b6b
and dword [ebp - 0xc4], 0
mov eax, dword [ebp - 0xc4]
add eax, 0x488a
imul eax, eax, 0xf59e
mov dword [ebp - 0x234], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb0]
call fcn.10028c61
push 1
lea eax, [ebp - 0x314]
push eax
xor edx, edx
inc edx
xor ecx, ecx
call fcn.10039934
pop ecx
pop ecx
mov esi, eax
lea edi, [ebp - 0x2fc]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x2fc]
lea edi, [ebp - 0x258]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x3c], 3
mov dword [ebp - 0x78], 0x36544d18
cmp dword [ebp - 0x3c], 0
jb 0x10046be0
mov dword [ebp - 0x240], 1
jmp 0x10046be7
and dword [ebp - 0x240], 0
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
je 0x10046c05
cmp dword [ebp - 0x3c], 0
je 0x10046c05
mov dword [ebp - 0xcc], 1
jmp 0x10046c0c
and dword [ebp - 0xcc], 0
cmp dword [ebp - 0xcc], 8
jge 0x10046c21
mov dword [ebp - 0xd4], 1
jmp 0x10046c28
and dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0x3c]
sub eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0xd4]
jg 0x10046c42
mov dword [ebp - 0x21c], 1
jmp 0x10046c49
and dword [ebp - 0x21c], 0
cmp dword [ebp - 0x78], 0
je 0x10046c6b
xor eax, eax
inc eax
je 0x10046c6b
mov byte [ebp - 0x42], 0
movzx eax, byte [ebp - 0x42]
test eax, eax
je 0x10046c66
call dword [sym.imp.USER32.dll_GetMessageTime]
jmp 0x10046dd2
mov dword [ebp - 0xdc], 1
mov dword [ebp - 0xe4], 0
mov dword [ebp - 0x114], 0xffff
mov dword [ebp - 0x70], 0
jmp 0x10046c99
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 3
jge 0x10046caf
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x2d4], 0xffff
jmp 0x10046c92
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0xdc], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2d4]
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x2d8], eax
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0x278], eax
cmp dword [ebp - 0x3c], 0
jne 0x10046cf8
cmp dword [ebp - 0x3c], 0
jne 0x10046cf8
and dword [ebp - 0xec], 0
jmp 0x10046d02
mov dword [ebp - 0xec], 1
mov eax, dword [ebp - 0x3c]
cmp dword [ebp - 0xec], eax
je 0x10046d19
mov dword [ebp - 0xf4], 1
jmp 0x10046d20
and dword [ebp - 0xf4], 0
cmp dword [ebp - 0xf4], 0xffffffff
je 0x10046d35
mov dword [ebp - 0xfc], 1
jmp 0x10046d3c
and dword [ebp - 0xfc], 0
cmp dword [ebp - 0xfc], 0xffff
jne 0x10046d54
mov dword [ebp - 0x104], 1
jmp 0x10046d5b
and dword [ebp - 0x104], 0
cmp dword [ebp - 0x104], 0x6fdd
jg 0x10046d73
mov dword [ebp - 0x10c], 1
jmp 0x10046d7a
and dword [ebp - 0x10c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x2d4]
cmp eax, dword [ebp - 0x10c]
jl 0x10046db1
mov byte [ebp - 0x44], 0
movzx eax, byte [ebp - 0x44]
test eax, eax
je 0x10046daf
push 0x6ee
push 0
push 0xcf7
push 0
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
jmp 0x10046dd2
mov eax, dword [ebp - 0x114]
dec eax
mov dword [ebp - 0x114], eax
mov byte [ebp - 0x46], 0
movzx eax, byte [ebp - 0x46]
test eax, eax
je 0x10046dd2
push 0
call dword [sym.imp.KERNEL32.dll_GetStartupInfoW]
cmp dword [ebp - 0x258], 0
je 0x10046def
push 1
push dword [ebp - 0x250]
push dword [ebp - 0x254]
call dword [ebp - 0x258]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret