Function at 0x1001b499
Capabilities:
Delete directory
Query service status

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x374
push ebx
mov ebx, dword [sym.imp.USER32.dll_GetDC]
push esi
push edi
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0xfc], ecx
xor ecx, ecx
mov dword [ebp - 0x224], ecx
push 1
mov dword [ebp - 0x220], ecx
pop esi
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x218], ecx
push 9
mov dword [ebp - 0xe8], edx
pop eax
cmp dword [ebp - 0x218], ecx
je 0x1001b513
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x1c], 2
jmp 0x1001b50b
mov byte [ebp - 9], cl
cmp byte [ebp - 9], 0
je 0x1001b508
call edi
push eax
call ebx
push eax
call dword [sym.imp.GDI32.dll_RealizePalette]
xor ecx, ecx
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xfffffff3
jne 0x1001b4f1
jmp 0x1001b523
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x10], 0x6ec79cf1
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x10], eax
mov dword [ebp - 8], 0x87013dce
mov dword [ebp - 0x30], 0x17059141
mov dword [ebp - 0x30], 0x2456160c
mov dword [ebp - 0x14], 0x3f0244c
mov dword [ebp - 0x10], 0x5ebec5ec
push 3
mov dword [ebp - 0x20], 0x2305aba9
mov dword [ebp - 4], ecx
pop edx
jmp 0x1001b566
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x18c], 0xd7f825e7
inc dword [ebp - 4]
cmp dword [ebp - 4], edx
jl 0x1001b555
mov dword [ebp - 4], ecx
jmp 0x1001b581
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x29c], 0xffffffff
inc dword [ebp - 4]
cmp dword [ebp - 4], edx
jl 0x1001b570
mov dword [ebp - 4], ecx
jmp 0x1001b59c
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xf4], 6
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x1001b58b
mov dword [ebp - 8], 2
mov eax, 0x1d594d03
cmp dword [ebp - 8], ecx
jl 0x1001b65e
mov dword [ebp - 0x18], esi
xor edx, edx
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x260], eax
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x28], 0xfffffffd
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x18c]
dec dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 8]
setne dl
imul eax, edx
xor edx, edx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x294]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setle dl
mov dword [ebp - 0x258], edx
cmp edx, dword [ebp - 0x14]
jge 0x1001b625
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 8]
xor edx, edx
mov ecx, dword [ebp + eax*4 - 0x18c]
mov eax, dword [ebp - 0x294]
cmp eax, ecx
setl dl
xor ecx, ecx
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 0x18c], ecx
jne 0x1001b65e
dec dword [ebp - 8]
mov eax, 0x1d594d03
jns 0x1001b5b6
mov dword [ebp - 0x204], ecx
mov dword [ebp - 0x200], ecx
mov dword [ebp - 0x1fc], ecx
mov dword [ebp - 0x1f8], ecx
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x30], 0x147909b7
mov dword [ebp - 0x20], 0xfffffffe
mov dword [ebp - 0x28], 0xf6efba1a
mov dword [ebp - 0x18], 0x8373b2c
mov dword [ebp - 0x20], 0xfffffffd
mov dword [ebp - 0x1c], ecx
jmp 0x1001b6b5
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x104], 4
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1001b6a4
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
dec dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
dec ecx
neg ecx
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
setne dl
sub edx, dword [ebp - 0x28]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x104], edx
mov dword [ebp - 0x28], edx
xor edx, edx
mov dword [ebp - 8], 0x76820624
mov dword [ebp - 0x18], 0xa147b80b
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 8], edx
jmp 0x1001b717
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x98], edx
inc dword [ebp - 8]
cmp dword [ebp - 8], 2
jl 0x1001b70a
mov dword [ebp - 8], edx
jmp 0x1001b733
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x320], 0xef5ead4a
inc dword [ebp - 8]
cmp dword [ebp - 8], 4
jl 0x1001b722
mov dword [ebp - 8], 0x1d
cmp dword [ebp - 8], 0xfffffffb
je 0x1001b865
mov dword [ebp - 0x10], 0xb81fdf20
mov dword [ebp - 4], edx
jmp 0x1001b764
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x5c], 0x9869ec42
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x1001b756
mov dword [ebp - 4], edx
jmp 0x1001b77d
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x48], 0xfbe58499
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x1001b76f
mov eax, dword [ebp - 8]
xor edx, edx
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x94]
mov eax, dword [ebp - 0x98]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x58]
cmp eax, 0xcbfb
mov eax, dword [ebp - 0x48]
setg dl
neg eax
neg edx
xor ecx, ecx
cmp eax, edx
setl cl
xor edx, edx
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
cmp eax, 0xfff8
setne dl
sub edx, dword [ebp - 0x94]
mov eax, dword [ebp - 0x5c]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 8]
setg cl
xor edx, edx
cmp ecx, 8
setg dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x58]
setg cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 8]
setge dl
imul eax, edx
test eax, eax
je 0x1001b80f
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x48]
xor edx, edx
mov ecx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x48]
cmp ecx, eax
setl dl
cmp edx, dword [ebp - 8]
jg 0x1001b827
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x20], 0
jne 0x1001b840
cmp dword [ebp - 0x18], 0
jne 0x1001b840
xor edx, edx
jmp 0x1001b842
mov edx, esi
mov eax, dword [ebp - 0x94]
xor ecx, ecx
cmp edx, eax
push 0
setge cl
mov dword [ebp - 0x314], ecx
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xfffffffb
pop edx
jne 0x1001b74a
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001b883
push edx
push 0x1cb9
push edx
call edi
push eax
call ebx
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentPointA]
xor edx, edx
mov eax, 0x3dd33a4a
mov dword [ebp - 0x30], 0x8e045dce
cmp dword [ebp - 0x1f8], edx
je 0x1001bfce
mov dword [ebp - 4], edx
mov dword [ebp - 8], 0xffffffff
mov dword [ebp - 0x1c], edx
jmp 0x1001b8b8
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x3c], 0xe4b28306
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1001b8aa
mov dword [ebp - 4], edx
jmp 0x1001b8ca
cmp dword [ebp - 4], edx
jne 0x1001b8d0
dec dword [ebp - 4]
cmp dword [ebp - 4], 0xffffffed
jle 0x1001b8c2
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
sub dword [ebp - 4], eax
mov eax, dword [ebp - 4]
push 0xfffffffffffffffa
mov dword [ebp - 0x3c], eax
pop esi
je 0x1001b95c
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x28], 0xfa318711
mov dword [ebp - 0x1c], edx
jmp 0x1001b907
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x310], esi
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001b8fa
mov eax, dword [ebp - 4]
xor edx, edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setg dl
xor ecx, ecx
cmp eax, edx
setge cl
sub ecx, dword [ebp - 0x30c]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
neg ecx
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
cmp eax, ecx
setge dl
xor eax, eax
cmp edx, 0xdb85613
setg al
xor edx, edx
mov dword [ebp - 0x3c], eax
jmp 0x1001b9b2
mov dword [ebp - 0x1c], edx
jmp 0x1001b972
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x2dc], 0xfffffff6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001b961
mov dword [ebp - 8], edx
jmp 0x1001b9ad
dec dword [ebp - 0x2d8]
mov dword [ebp - 4], edx
cmp dword [ebp - 4], edx
jl 0x1001b9aa
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0x3c], edx
jne 0x1001b9aa
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001b9a5
call dword [sym.imp.USER32.dll_GetCapture]
xor edx, edx
dec dword [ebp - 4]
jns 0x1001b98b
inc dword [ebp - 8]
cmp dword [ebp - 8], edx
jle 0x1001b97d
push 9
pop eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x14], 2
cmp dword [ebp - 0x14], 0xfffffff3
je 0x1001bf32
mov esi, 0xfff7
mov dword [ebp - 0x24], 0xd19ac196
xor ecx, ecx
mov dword [ebp - 4], edx
inc ecx
mov dword [ebp - 8], 0x12aa53f0
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x2c], 0xfe2cf45
mov dword [ebp - 0x18], 0x8aee5119
mov dword [ebp - 0x20], 0xd326d35d
mov eax, dword [ebp - 0x24]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x30], eax
sbb eax, eax
inc eax
imul eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], edx
je 0x1001ba3d
cmp dword [ebp - 8], edx
jne 0x1001ba3f
cmp dword [ebp - 0x2c], edx
jne 0x1001ba3f
mov ecx, edx
mov eax, dword [ebp - 0x28]
sub ecx, eax
jne 0x1001bb40
cmp dword [ebp - 4], edx
jne 0x1001bb40
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x1c], edx
jmp 0x1001ba70
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xd0], 0x92e
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1001ba5f
mov dword [ebp - 4], edx
cmp dword [ebp - 4], 2
jg 0x1001bc9b
push 0xfffffffffffffffe
pop esi
mov dword [ebp - 0x1c], edx
jmp 0x1001ba9c
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xec], 0xb034e2d8
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 1
jl 0x1001ba8b
cmp dword [ebp - 0x20], edx
je 0x1001bab9
imul eax, dword [ebp - 0x20], 0xffff52cb
cmp eax, dword [ebp - 0xc8]
jle 0x1001bab9
xor edx, edx
inc edx
mov eax, dword [ebp - 4]
push 0
mov eax, dword [ebp + eax*4 - 0xd0]
sub edx, eax
neg edx
sbb edx, edx
neg edx
mov dword [ebp - 0xec], edx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
add ecx, edx
mov edx, dword [ebp - 4]
add ecx, eax
mov eax, dword [ebp - 0xcc]
add edx, ecx
xor ecx, ecx
cmp edx, eax
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 4]
setl cl
imul edx, ecx
mov eax, dword [ebp + eax*4 - 0xd0]
sub edx, 0xfffffff7
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 4]
setl cl
cmp esi, ecx
mov eax, dword [ebp + eax*4 - 0xd0]
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
pop edx
setle cl
mov dword [ebp - 0x10], ecx
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jle 0x1001ba86
mov esi, 0xfff7
jmp 0x1001bc99
xor ecx, ecx
mov dword [ebp - 0x1c], 0xffffffff
inc ecx
xor edx, edx
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x2c]
setle dl
sub edx, 0xfffffffc
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
cmp ecx, dword [ebp - 0x18]
jne 0x1001bc07
mov dword [ebp - 0x28], 2
xor edx, edx
mov dword [ebp - 0x10], 0xfffffff8
mov dword [ebp - 0x10], 0x88a3d85a
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 8]
cmp ecx, eax
setg dl
mov dword [ebp - 0x10], edx
cmp dword [ebp - 0x10], 0
jne 0x1001bbc2
cmp dword [ebp - 0x28], 0
jne 0x1001bbc2
xor eax, eax
jmp 0x1001bbc5
xor eax, eax
inc eax
cmp eax, 0x9c4f4fcf
sbb edx, edx
xor ecx, ecx
neg edx
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 8]
cmp edx, eax
setge cl
imul eax, ecx, 0x299b
xor ecx, ecx
add eax, 9
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp eax, 0x4227f44f
setle cl
xor eax, eax
cmp ecx, 0x4bf8e16d
setl al
mov dword [ebp - 0x10], eax
jmp 0x1001bc99
mov dword [ebp - 0x28], 0x6302082
cmp dword [ebp - 0x2c], 0
je 0x1001bc2e
mov ecx, dword [ebp - 0x28]
add ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
add eax, 0x722b
add eax, ecx
cmp eax, dword [ebp - 0x28]
jge 0x1001bc2e
xor eax, eax
inc eax
jmp 0x1001bc30
xor eax, eax
xor edx, edx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
test eax, eax
mov eax, dword [ebp - 4]
setle dl
sub edx, 0xaf72239d
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
cmp ecx, dword [ebp - 4]
jle 0x1001bc62
cmp dword [ebp - 4], 0
je 0x1001bc62
xor eax, eax
inc eax
jmp 0x1001bc64
xor eax, eax
shl eax, 3
test eax, eax
je 0x1001bc76
cmp dword [ebp - 0x18], 0
je 0x1001bc76
xor edx, edx
inc edx
jmp 0x1001bc78
xor edx, edx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0x18]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x28]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x10], ecx
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001bf22
push 0xfffffffffffffffd
pop eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x20], 0xa7b051af
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], edx
jmp 0x1001bcce
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xb8], 0xa8eac8b
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x1001bcbd
mov dword [ebp - 4], edx
jmp 0x1001bcfe
mov dword [ebp - 0x24], edx
jmp 0x1001bcef
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x2b0], 0xdd688769
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x1001bcde
inc dword [ebp - 0x2a8]
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jle 0x1001bcd9
mov dword [ebp - 4], edx
jmp 0x1001bf0a
mov dword [ebp - 8], 1
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 8], edx
jmp 0x1001bd33
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x2a4], 0x7f5e1753
inc dword [ebp - 8]
cmp dword [ebp - 8], 2
jl 0x1001bd22
mov dword [ebp - 8], edx
jmp 0x1001bd4f
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x330], 2
inc dword [ebp - 8]
cmp dword [ebp - 8], 4
jl 0x1001bd3e
mov dword [ebp - 8], edx
jmp 0x1001bd90
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001bd83
push 0x10d7
push edx
push edx
push 0x205e
push 0xfbf
push edx
call edi
push eax
call ebx
push eax
call dword [sym.imp.GDI32.dll_GetDIBits]
xor edx, edx
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0xb8]
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jle 0x1001bd5a
mov dword [ebp - 8], 3
cmp dword [ebp - 8], edx
jl 0x1001bf07
mov dword [ebp - 0x18], 0x80031aa0
mov dword [ebp - 0x28], 1
mov dword [ebp - 0x24], 0xc923f2b6
cmp dword [ebp - 0x18], edx
jne 0x1001bec1
mov ecx, dword [ebp - 0xb0]
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xb8], ecx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 4]
sub edx, dword [ebp - 8]
mov eax, dword [ebp - 0x18]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp edx, eax
setl cl
mov dword [ebp - 0x2a0], ecx
xor ecx, ecx
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0xb8]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0xb4]
test eax, eax
mov eax, dword [ebp - 0xac]
setle cl
xor edx, edx
cmp ecx, 0xbc97de2e
setne dl
xor ecx, ecx
cmp edx, eax
sete cl
xor edx, edx
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov eax, dword [ebp - 0xac]
setne dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x24]
setg bl
xor ecx, ecx
cmp ebx, eax
setl cl
xor eax, eax
cmp ecx, 0x5c5b
setge al
xor edx, edx
cmp eax, dword [ebp - 4]
jg 0x1001be81
cmp dword [ebp - 0x28], edx
je 0x1001be81
xor eax, eax
inc eax
jmp 0x1001be83
mov eax, edx
cmp eax, dword [ebp - 0x18]
jg 0x1001be8b
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x24], edx
je 0x1001bea1
mov eax, dword [ebp - 4]
cmp dword [ebp + eax*4 - 0xb8], edx
je 0x1001bea1
xor eax, eax
inc eax
jmp 0x1001bea3
mov eax, edx
xor ecx, ecx
cmp eax, 0x3a4a
setl cl
mov dword [ebp - 0x32c], ecx
mov eax, dword [ebp - 0x24]
add eax, ecx
cmp eax, dword [ebp - 0x24]
je 0x1001bec1
mov ecx, edx
jmp 0x1001bec4
xor ecx, ecx
inc ecx
mov dword [ebp - 0x20], 0x1880
mov eax, dword [ebp - 8]
imul eax, ecx
push 0
cmp esi, eax
sbb eax, eax
xor edx, edx
neg eax
imul ecx, eax, 0xc213
mov eax, dword [ebp - 0x20]
cmp eax, ecx
mov eax, 0xfa7dc071
setg dl
cmp eax, edx
pop edx
sbb eax, eax
neg eax
mov dword [ebp - 0x20], eax
dec dword [ebp - 8]
jns 0x1001bda6
mov ebx, dword [sym.imp.USER32.dll_GetDC]
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jle 0x1001bd0c
call edi
push eax
call ebx
push eax
call dword [sym.imp.GDI32.dll_RealizePalette]
xor edx, edx
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff3
jne 0x1001b9ce
push 0xfffffffffffffffa
pop esi
xor ebx, ebx
inc ebx
mov dword [ebp - 4], 0xfe01bd97
xor ecx, ecx
mov dword [ebp - 8], 8
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x2c], 0x5240ca70
mov dword [ebp - 0x10], 0x3a29add9
mov dword [ebp - 0x10], 0xfffffff8
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp eax, 0xfffffffc
setne cl
mov dword [ebp - 8], ecx
xor ecx, ecx
mov eax, dword [ebp - 8]
cmp eax, ebx
setle cl
add ecx, dword [ebp - 4]
cmp dword [ebp - 4], ecx
jle 0x1001bf88
mov eax, ebx
cmp dword [ebp - 8], edx
jne 0x1001bf8a
mov eax, edx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edx
je 0x1001c1f1
mov dword [ebp - 0x10], 0x700d62e6
mov dword [ebp - 0x20], 0xffffffff
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001bfbe
push 0x4df
push 0x482
push edx
call dword [sym.imp.USER32.dll_CheckMenuItem]
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x20], eax
jmp 0x1001c2ef
mov dword [ebp - 0x1b0], eax
xor ebx, ebx
mov dword [ebp - 0x1ac], eax
inc ebx
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x10], 0xd926128f
mov dword [ebp - 0x18], 0xffffffff
push 0xfffffffffffffffa
mov dword [ebp - 0x10], 0xcc0e4260
pop esi
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x24], 3
cmp dword [ebp - 0x24], edx
jl 0x1001c108
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x14], edx
jmp 0x1001c02c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1d8], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1001c01f
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x18], 0x451d77f1
cmp dword [ebp - 0x18], edx
jne 0x1001c04d
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x10], ebx
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
add eax, 0xffff
jne 0x1001c064
cmp dword [ebp - 0x18], edx
je 0x1001c066
mov edx, ebx
mov eax, dword [ebp - 0x1a4]
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1d4]
mov eax, dword [ebp - 0x1d4]
cmp dword [ebp - 0x1d4], 0
jne 0x1001c098
cmp dword [ebp - 0x20], 0
jne 0x1001c098
xor eax, eax
jmp 0x1001c09a
mov eax, ebx
mov dword [ebp - 0x10], eax
xor edx, edx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1b0]
cmp ecx, eax
setge dl
cmp edx, 0xfcd58f28
jne 0x1001c0ed
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], dl
je 0x1001c0da
push edx
push 0x1155
push 0x26ae
push 0x21a
call edi
push eax
call dword [sym.imp.USER32.dll_SetScrollRange]
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001c0ff
push edx
push edx
call dword [sym.imp.ADVAPI32.dll_QueryServiceStatus]
jmp 0x1001c0fd
xor edx, edx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], dl
je 0x1001c0ff
call dword [sym.imp.USER32.dll_WaitMessage]
xor edx, edx
dec dword [ebp - 0x24]
jns 0x1001c017
mov dword [ebp - 0x20], ebx
push 9
pop eax
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x10], 0xfffffff6
mov dword [ebp - 0x10], 0xbc5021c
mov dword [ebp - 0x10], 0x5e81a7ec
mov dword [ebp - 0x10], 0x50f6b34c
mov dword [ebp - 8], edx
jmp 0x1001c158
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x348], 0xffffffff
inc dword [ebp - 8]
cmp dword [ebp - 8], 2
jl 0x1001c147
mov dword [ebp - 8], edx
jmp 0x1001c170
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x374], ebx
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jl 0x1001c163
mov dword [ebp - 0x118], ebx
cmp dword [ebp - 0x118], edx
jl 0x1001c1df
mov dword [ebp - 0x18], 0xb534de6f
mov dword [ebp - 8], edx
jmp 0x1001c1a1
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x284], 0x7950
inc dword [ebp - 8]
cmp dword [ebp - 8], ebx
jl 0x1001c190
mov dword [ebp - 8], edx
jmp 0x1001c1bc
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x290], 0x72a8358b
inc dword [ebp - 8]
cmp dword [ebp - 8], ebx
jl 0x1001c1ab
dec dword [ebp - 0x10]
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001c1d7
push edx
push edx
call dword [sym.imp.USER32.dll_LoadIconA]
xor edx, edx
dec dword [ebp - 0x118]
jns 0x1001c184
mov dword [ebp - 0x10], 0x6ec79cf1
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x10], eax
jmp 0x1001bf35
mov dword [ebp - 0x1c], 0x5a8
mov dword [ebp - 0x18], 4
cmp dword [ebp - 4], edx
jne 0x1001c20d
mov dword [ebp - 8], ebx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
cmp dword [ebp - 8], edx
jne 0x1001c21d
cmp dword [ebp - 0x1c], edx
je 0x1001c21f
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, edx
setge cl
xor ebx, ebx
add ecx, 3
jne 0x1001c239
cmp dword [ebp - 0x1c], ebx
jne 0x1001c239
mov eax, ebx
jmp 0x1001c23c
xor eax, eax
inc eax
cmp dword [ebp - 0x2c], eax
je 0x1001c279
mov dword [ebp - 0x10], 1
xor edx, edx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
setne dl
xor ecx, ecx
cmp edx, 0xffffffff
setne cl
xor eax, eax
cmp ecx, 0xfffffffe
setge al
mov dword [ebp - 8], eax
jmp 0x1001c2ef
mov dword [ebp - 0x20], ebx
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x1001c297
push ebx
push 0x2541
push 0x24fa
push ebx
call dword [sym.imp.GDI32.dll_GetPaletteEntries]
mov dword [ebp - 0x2c], ebx
jmp 0x1001c2e9
mov dword [ebp - 0x10], 0xbf567d71
cmp dword [ebp - 0x18], ebx
jne 0x1001c2d3
cmp dword [ebp - 0x1c], ebx
jne 0x1001c2d3
cmp dword [ebp - 0x10], ebx
jne 0x1001c2bf
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 4]
sub ecx, eax
je 0x1001c2bf
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
dec eax
neg eax
sbb eax, eax
inc eax
imul eax, dword [ebp - 0x10]
test eax, eax
jne 0x1001c2d3
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x27
jg 0x1001c29c
mov dword [ebp - 0x24], 0x7478
xor ebx, ebx
mov dword [ebp - 8], ebx
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x18], 5
mov dword [ebp - 0x10], 1
mov dword [ebp - 0x2c], 0xffffffff
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x14], ebx
jmp 0x1001c334
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1b8], 0xcc9f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1001c323
mov eax, dword [ebp - 0x24]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], ebx
jne 0x1001c3df
cmp dword [ebp - 0x24], ebx
jne 0x1001c374
mov eax, dword [ebp - 8]
xor ecx, ecx
add eax, dword [ebp - 0x24]
cmp eax, 0x912e
mov eax, 0x1c09
setle cl
sub eax, ecx
inc eax
neg eax
sbb eax, eax
inc eax
cmp eax, 0xffffffff
jne 0x1001c374
mov ecx, ebx
jmp 0x1001c377
xor ecx, ecx
inc ecx
xor eax, eax
cmp ecx, 0xc415
setle al
xor ebx, ebx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setne bl
xor edx, edx
add ebx, 0xc089
cmp ebx, eax
mov eax, dword [ebp - 8]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
xor ebx, ebx
add ecx, dword [ebp - 8]
cmp ecx, 0x3cfcb8f
jne 0x1001c3c2
cmp dword [ebp - 0x1c], ebx
jne 0x1001c3c2
mov eax, ebx
jmp 0x1001c3c5
xor eax, eax
inc eax
cmp eax, dword [ebp - 0x24]
jge 0x1001c3cd
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], ebx
jne 0x1001c3df
mov ecx, ebx
jmp 0x1001c3e2
xor ecx, ecx
inc ecx
mov eax, dword [ebp - 0x1b4]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1b4]
setl dl
xor ecx, ecx
cmp edx, eax
sete cl
xor eax, eax
xor edx, edx
inc edx
cmp ecx, edx
setle al
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
neg eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x18]
jl 0x1001c55e
push 3
mov dword [ebp - 0x20], 0xf2a5cf69
mov dword [ebp - 4], ebx
pop ecx
jmp 0x1001c439
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x1f4], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x1001c42c
mov dword [ebp - 4], ebx
jmp 0x1001c454
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x2b8], 0x60e0689b
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x1001c443
mov dword [ebp - 4], ebx
jmp 0x1001c46c
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x280], edx
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x1001c45f
mov dword [ebp - 0x2c], esi
jmp 0x1001c552
mov dword [ebp - 0x10], 0x602a0500
xor ebx, ebx
mov dword [ebp - 0x1c], 0x4e81
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x10]
cmp eax, ecx
setle bl
mov dword [ebp - 0x2b8], ebx
mov edx, dword [ebp - 0x20]
sub edx, 0x28db1ae9
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1ec]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, ebx
setg cl
sub ecx, edx
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x1c], ecx
je 0x1001c505
xor ebx, ebx
mov byte [ebp - 9], bl
cmp byte [ebp - 9], bl
je 0x1001c4ea
push ebx
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetTextColor]
mov dword [ebp - 0x1c], 0x1d
jmp 0x1001c4fd
mov dword [ebp - 0x10], 0xd5d1afc4
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x28
jl 0x1001c4f3
jmp 0x1001c54f
xor ecx, ecx
inc ecx
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x27c]
mov eax, dword [ebp - 0x27c]
neg edx
sbb edx, edx
xor ebx, ebx
neg edx
cmp eax, dword [ebp - 0x24]
jne 0x1001c52b
mov esi, ecx
cmp dword [ebp - 0x1c], ebx
jne 0x1001c52d
mov esi, ebx
mov eax, dword [ebp - 0x28]
xor ecx, ecx
cmp esi, eax
setl cl
sub edx, ecx
sub edx, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x10]
lea ecx, [edx - 1]
xor edx, edx
cmp ecx, eax
setg dl
mov dword [ebp - 0x10], edx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xf
jne 0x1001c479
jmp 0x1001c574
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x1001c574
push 0x21c0
push ebx
push ebx
call dword [sym.imp.GDI32.dll_TranslateCharsetInfo]
mov edi, dword [sym.imp.GDI32.dll_Polyline]
mov dword [ebp - 0x1c], 4
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x1001c5a0
push 0x2009
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call edi
mov dword [ebp - 0x1c], ebx
jmp 0x1001c5ad
cmp dword [ebp - 0x1c], ebx
jne 0x1001c5b3
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x13
jl 0x1001c5a5
xor esi, esi
inc esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x10], 0x6d4f2887
mov dword [ebp - 0x28], 0x664dc9ed
mov dword [ebp - 0x2c], 0x85faafe3
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], 0x12afd77c
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x14], ebx
jmp 0x1001c5fc
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1a0], 0x87a5eafb
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1001c5eb
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], ebx
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x10], eax
jle 0x1001c62b
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x19c]
mov eax, dword [ebp - 0x24]
cmp ecx, eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
setge dl
imul ecx, edx
xor edx, edx
cmp ecx, eax
setl dl
imul edx, dword [ebp - 0x1c]
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x2c], ebx
jmp 0x1001c679
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x1001c676
push ebx
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], esi
jle 0x1001c666
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x18], 0xb0cadfb1
mov dword [ebp - 4], ebx
jmp 0x1001c69b
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x38], 8
inc dword [ebp - 4]
cmp dword [ebp - 4], esi
jl 0x1001c68d
mov dword [ebp - 4], ebx
jmp 0x1001c6b6
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x12c], 0xfffffff6
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x1001c6a5
mov dword [ebp - 4], ebx
jmp 0x1001c6d2
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xc4], 0x90f9986e
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x1001c6c1
mov dword [ebp - 0x38], ebx
jmp 0x1001c6f0
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x1001c6ed
push ebx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0x1d
jne 0x1001c6dd
inc dword [ebp - 0xc4]
xor edx, edx
mov esi, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x14]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setg dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x128]
setle bl
xor ecx, ecx
imul ebx, eax
mov eax, dword [ebp - 0x12c]
cmp ebx, eax
mov eax, dword [ebp - 0x38]
setne cl
imul ecx, esi
sub eax, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x18]
jl 0x1001c748
mov eax, dword [ebp - 0xc4]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x14]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x12c], eax
jne 0x1001c775
xor ebx, ebx
cmp dword [ebp - 0xc4], ebx
jne 0x1001c777
xor esi, esi
mov eax, ebx
inc esi
jmp 0x1001c77c
xor ebx, ebx
xor esi, esi
inc esi
mov eax, esi
mov dword [ebp - 0x38], eax
mov eax, 0x7cec7e9a
mov dword [ebp - 4], 0xb1cecb45
mov dword [ebp - 0x1c], 0x87a9b65c
mov dword [ebp - 0x214], eax
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 4], 0xf72b5725
mov dword [ebp - 0x28], 0x2fa5d872
mov dword [ebp - 0x18], ebx
mov dword [ebp - 8], 0x5dbd55a
mov dword [ebp - 0x10], 0x26a8acdd
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 4]
dec eax
neg eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 4]
neg eax
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
cmp ecx, eax
mov eax, dword [ebp - 4]
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
xor edx, edx
imul ecx, dword [ebp - 4]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
cmp ecx, eax
mov eax, dword [ebp - 8]
setl dl
sub eax, edx
je 0x1001c81f
mov edx, esi
cmp dword [ebp - 0x18], ebx
jne 0x1001c821
mov edx, ebx
mov eax, dword [ebp - 4]
xor ecx, ecx
cmp edx, eax
setge cl
xor edx, edx
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 8]
cmp eax, 0xfffffffd
mov eax, dword [ebp - 4]
setl dl
xor ecx, ecx
cmp eax, edx
setge cl
xor eax, eax
cmp ecx, 0xf1ef
setg al
add eax, dword [ebp - 4]
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 4]
jg 0x1001c862
mov ecx, esi
cmp dword [ebp - 0x28], ebx
jne 0x1001c864
mov ecx, ebx
xor eax, eax
cmp ecx, esi
push 9
setne al
pop ecx
cmp ecx, eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 4]
je 0x1001c87f
mov edx, esi
cmp dword [ebp - 8], ebx
jne 0x1001c881
mov edx, ebx
mov eax, dword [ebp - 4]
add edx, 0x3633e7a3
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0x10]
jne 0x1001c8a3
mov ecx, ebx
cmp dword [ebp - 8], ebx
je 0x1001c8a5
mov ecx, esi
mov eax, dword [ebp - 4]
imul eax, ecx
sub eax, 0x7fad5407
je 0x1001c8b7
cmp dword [ebp - 0x18], ebx
jne 0x1001c8c0
cmp dword [ebp - 8], ebx
je 0x1001c971
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x14], ebx
jmp 0x1001c8d6
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x7c], 0x3232af72
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1001c8c8
mov dword [ebp - 8], ebx
jmp 0x1001c8fa
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x1001c8f7
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsIconic]
dec dword [ebp - 8]
cmp dword [ebp - 8], 0xffffffe7
jle 0x1001c8e1
cmp dword [ebp - 4], ebx
je 0x1001c93e
mov eax, dword [ebp - 0x7c]
cmp dword [ebp - 0x7c], 0xfff8
mov eax, dword [ebp - 0x7c]
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setg cl
add ecx, 0x7874d2d
jne 0x1001c927
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x78]
mov eax, dword [ebp - 0x74]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 8]
jne 0x1001c943
cmp dword [ebp - 0x7c], ebx
je 0x1001c969
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x1001c960
push ebx
push ebx
push 0x3c4
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
mov dword [ebp - 8], 0xffffffff
jmp 0x1001c981
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x10], eax
jmp 0x1001c981
mov byte [ebp - 9], bl
cmp byte [ebp - 9], 0
je 0x1001c981
push ebx
call dword [sym.imp.USER32.dll_RegisterClassA]
push 2
pop ebx
mov dword [ebp - 0x10], 0x85266add
xor edx, edx
mov dword [ebp - 0x10], 0xffffffff
push 3
mov dword [ebp - 0x18], ebx
mov dword [ebp - 8], edx
pop ecx
jmp 0x1001c9ad
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x70], 0x41b3
inc dword [ebp - 8]
cmp dword [ebp - 8], ecx
jl 0x1001c99f
mov dword [ebp - 8], edx
jmp 0x1001c9c8
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x168], 0xff609d70
inc dword [ebp - 8]
cmp dword [ebp - 8], ecx
jl 0x1001c9b7
mov dword [ebp - 4], edx
cmp dword [ebp - 4], ebx
jg 0x1001caf9
mov dword [ebp - 8], 0xffffffff
mov dword [ebp - 0x20], 0x6982b357
mov dword [ebp - 0x10], 0xa4b38b4b
mov dword [ebp - 8], esi
cmp dword [ebp - 8], edx
je 0x1001ca6c
mov eax, dword [ebp - 8]
xor edx, edx
mov eax, dword [ebp - 4]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x160]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 8]
cmp ecx, eax
mov eax, dword [ebp - 4]
setl dl
xor ebx, ebx
cmp edx, eax
setge bl
sub ebx, dword [ebp - 4]
mov eax, dword [ebp - 8]
neg ebx
sbb ebx, ebx
xor ecx, ecx
inc ebx
cmp ebx, eax
setne cl
sub ecx, 0xf888c554
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x20], ecx
xor ecx, ecx
mov eax, dword [ebp - 4]
mov edx, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x70], edx
mov eax, dword [ebp - 8]
cmp edx, eax
mov eax, esi
setg cl
xor edx, edx
cmp ecx, 0xb674
jne 0x1001ca6e
mov eax, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x6c]
cmp dword [ebp - 0x210], eax
jg 0x1001ca8f
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x24], edx
je 0x1001cae6
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jle 0x1001c9d9
mov esi, dword [sym.imp.GDI32.dll_CreatePalette]
mov eax, 0xd7bff020
mov dword [ebp - 4], 0xb
cmp dword [ebp - 4], edx
jl 0x1001cb4a
mov dword [ebp - 0x10], 0xfffffff7
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], eax
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001cb42
push edx
call esi
xor edx, edx
mov eax, 0xd7bff020
dec dword [ebp - 0x18]
dec dword [ebp - 4]
jns 0x1001cb10
mov dword [ebp - 4], 0x5d6c05ba
mov dword [ebp - 0x20], 0x9643747c
push 0xfffffffffffffffa
mov dword [ebp - 0x10], edx
mov dword [ebp - 4], edx
pop ebx
jmp 0x1001cc7d
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 8], edx
jmp 0x1001cb80
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x34], 0xeede0b40
inc dword [ebp - 8]
cmp dword [ebp - 8], 1
jl 0x1001cb72
mov dword [ebp - 8], edx
jmp 0x1001cb99
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x80], 0xd9751230
inc dword [ebp - 8]
cmp dword [ebp - 8], 1
jl 0x1001cb8b
mov dword [ebp - 0x34], 0xfffffffd
cmp dword [ebp - 0x34], 0xffffffe8
jle 0x1001cc7a
mov dword [ebp - 0x10], 0xa8fad749
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x14], edx
jmp 0x1001cbd0
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x180], 0xfad5befa
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1001cbbf
mov eax, dword [ebp - 0x178]
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 4]
inc ecx
imul ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x34]
push 0
cmp eax, ecx
mov eax, dword [ebp - 0x10]
setle dl
xor ecx, ecx
cmp edx, eax
pop edx
sete cl
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x10], 0xffffffff
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x178]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 4]
mov eax, dword [ebp - 0x180]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, 0xf6679856
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 1
setg cl
sub ecx, dword [ebp - 0x178]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x20], ecx
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffe8
jg 0x1001cbb0
dec dword [ebp - 4]
cmp dword [ebp - 4], ebx
jne 0x1001cb66
mov dword [ebp - 4], 0xf5020f89
cmp dword [ebp - 4], 8
jle 0x1001cd45
mov dword [ebp - 0x13c], ebx
mov dword [ebp - 0x138], ebx
mov dword [ebp - 0x134], ebx
mov dword [ebp - 0x130], ebx
mov dword [ebp - 4], 3
cmp dword [ebp - 4], edx
jl 0x1001cd27
mov dword [ebp - 0x10], 0x9642e40c
mov eax, dword [ebp - 4]
mov eax, dword [ebp + eax*4 - 0x13c]
cmp eax, dword [ebp - 4]
jge 0x1001ccf0
mov ecx, dword [ebp - 0x138]
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x13c], ecx
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
cmp eax, 0xab9c
jge 0x1001ccf3
xor edx, edx
inc edx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
cmp edx, eax
sete cl
xor edx, edx
mov dword [ebp - 0x10], ecx
mov byte [ebp - 9], dl
cmp byte [ebp - 9], dl
je 0x1001cd22
push 0x2009
push edx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call edi
xor edx, edx
dec dword [ebp - 4]
jns 0x1001ccbb
mov dword [ebp - 4], edx
jmp 0x1001cd3d
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x13c], 0x4ea3
inc dword [ebp - 4]
cmp dword [ebp - 4], 4
jl 0x1001cd2c
jmp 0x1001cdb8
mov dword [ebp - 0x18], 0xfffffff7
mov dword [ebp - 0x14], edx
jmp 0x1001cd62
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xf0], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x1001cd51
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 4]
neg eax
push 0xfffffffffffffffa
sbb eax, eax
xor ebx, ebx
neg eax
imul ecx, eax
mov eax, dword [ebp - 0x18]
cmp eax, ecx
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 4]
setg bl
sub ebx, 0x136
neg ebx
sbb ebx, ebx
xor edx, edx
inc ebx
cmp ecx, eax
setl dl
xor eax, eax
cmp edx, ebx
pop ebx
setge al
xor edx, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xf0], 1
mov dword [ebp - 8], 0xe2db
mov dword [ebp - 0x14], edx
jmp 0x1001cdd5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x2f8], 0xe57ad95e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1001cdc4
dec dword [ebp - 8]
mov dword [ebp - 8], edx
jmp 0x1001ce1b
mov byte [ebp - 9], dl
cmp byte [ebp - 9], 0
je 0x1001ce04
push edx
push edx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SelectPalette]
xor edx, edx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + eax*4 - 0x2f8]
mov eax, dword [ebp - 8]
mov dword [ebp + eax*4 - 0x2f8], ecx
inc dword [ebp - 8]
cmp dword [ebp - 8], 3
jle 0x1001cde3
mov dword [ebp - 0x274], edx
mov dword [ebp - 0x270], edx
mov dword [ebp - 0x26c], edx
mov dword [ebp - 0x268], edx
mov dword [ebp - 8], 0x87013dce
mov dword [ebp - 0x10], 0x17059141
mov dword [ebp - 0x10], 0x2456160c
mov dword [ebp - 0x14], 0x3f0244c
mov dword [ebp - 0x20], 0x5ebec5ec
mov dword [ebp - 0x18], 0x2305aba9
mov dword [ebp - 4], edx
jmp 0x1001ce79
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x198], 0xd7f825e7
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x1001ce68
mov dword [ebp - 4], edx
jmp 0x1001ce95
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x2d0], 0xffffffff
inc dword [ebp - 4]
cmp dword [ebp - 4], 3
jl 0x1001ce84
mov dword [ebp - 4], edx
jmp 0x1001ceb1
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0xf8], 6
inc dword [ebp - 4]
cmp dword [ebp - 4], 1
jl 0x1001cea0
mov dword [ebp - 8], 2
cmp dword [ebp - 8], edx
jl 0x1001cf73
mov dword [ebp - 0x10], 1
mov eax, 0x1d594d03
mov dword [ebp - 0x234], eax
xor edx, edx
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x228], eax
mov dword [ebp - 0x28], 0xfffffffd
mov eax, dword [ebp - 8]
mov eax, dword [ebp + eax*4 - 0x198]
dec dword [ebp - 0x20]
mov ecx, dword [ebp - 0x198]
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov eax, dword [ebp - 8]
setne dl
imul eax, edx
xor edx, edx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x2c8]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
setle dl
mov dword [ebp - 0x228], edx
cmp edx, dword [ebp - 0x14]
jge 0x1001cf3f
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
xor edx, edx
mov ecx, dword [ebp + eax*4 - 0x198]
mov eax, dword [ebp - 0x2c8]
cmp eax, ecx
setl dl
mov dword [ebp - 0xf8], edx
xor edx, edx
mov eax, dword [ebp - 8]
cmp dword [ebp + eax*4 - 0x198], edx
jne 0x1001cf73
dec dword [ebp - 8]
jns 0x1001cec7
mov dword [ebp - 8], 0xb743d837
push 4
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 4], edx
pop ecx
jmp 0x1001cf9a
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x15c], 0x82062403
inc dword [ebp - 4]
cmp dword [ebp - 4], ecx
jl 0x1001cf89
mov dword [ebp - 4], edx
jmp 0x1001cfb5
mov eax, dword [ebp - 4]
mov dword [ebp + eax*4 - 0x88], 0x142b9193
inc dword [ebp - 4]
cmp dword [ebp - 4], 2
jl 0x1001cfa4
mov dword [ebp - 4], edx
jmp 0x1001cfd1