Function at 0x100f2120
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101a515e
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0x1c0
push ebx
push esi
push edi
mov eax, dword [0x10222354]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
cmp dword [eax + 0x348], 0
je 0x100f217e
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 0x5d0]
test edx, edx
je 0x100f2185
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 0x4b1]
test ecx, ecx
jne 0x100f2185
xor eax, eax
jmp 0x100f2adc
mov edx, dword [ebp + 8]
mov byte [edx + 0x4b1], 0
cmp dword [ebp + 0xc], 0
jne 0x100f2276
mov eax, dword [ebp + 8]
cmp dword [eax + 0xc4], 0
je 0x100f2276
mov dword [ebp - 0x1c], 0
jmp 0x100f21bb
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x348]
mov ecx, dword [eax + 0x12c]
add ecx, 0x10
call fcn.10008940
mov dword [ebp - 0x108], eax
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x108]
jae 0x100f2276
mov dword [ebp - 0x20], 1
mov edx, dword [ebp - 0x1c]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x348]
mov ecx, dword [ecx + 0x12c]
add ecx, 0x10
call fcn.100083d0
mov dword [ebp - 0x10c], eax
mov edx, dword [ebp - 0x10c]
mov eax, dword [edx]
mov dword [ebp - 0x110], eax
lea ecx, [ebp - 0x20]
push ecx
push str.OnHideDW
mov edx, dword [ebp - 0x110]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x110]
mov edx, dword [eax + 0x30]
call edx
cmp dword [ebp - 0x20], 0
jne 0x100f2271
mov ecx, 0x10224a04
call fcn.10007fa0
mov dword [ebp - 0x114], eax
push 1
mov eax, dword [ebp - 0x114]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x5b8]
push edx
call fcn.100f7970
add esp, 0xc
xor eax, eax
jmp 0x100f2adc
jmp 0x100f21b2
xor eax, eax
cmp dword [ebp + 0xc], 1
sete al
mov ecx, dword [ebp + 8]
mov byte [ecx + 0x5dc], al
cmp dword [ebp + 0xc], 0
je 0x100f2307
push ecx
mov ecx, esp
mov dword [ebp - 0x94], esp
push 0x101cce5c
call fcn.1000ba00
mov dword [ebp - 0x118], eax
mov edx, dword [ebp - 0x118]
mov dword [ebp - 0x11c], edx
mov byte [ebp - 4], 1
push ecx
mov ecx, esp
mov dword [ebp - 0x98], esp
push 0x101cce60
call fcn.1000ba00
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x124], eax
mov byte [ebp - 4], 2
push ecx
mov ecx, esp
mov dword [ebp - 0x9c], esp
push 0x101cce64
call fcn.1000ba00
mov dword [ebp - 0x128], eax
mov byte [ebp - 4], 0
call fcn.100dd780
add esp, 0xc
jmp 0x100f237e
push ecx
mov ecx, esp
mov dword [ebp - 0xa0], esp
push 0x101cce74
call fcn.1000ba00
mov dword [ebp - 0x12c], eax
mov ecx, dword [ebp - 0x12c]
mov dword [ebp - 0x130], ecx
mov byte [ebp - 4], 3
push ecx
mov ecx, esp
mov dword [ebp - 0xa4], esp
push 0x101cce78
call fcn.1000ba00
mov dword [ebp - 0x134], eax
mov edx, dword [ebp - 0x134]
mov dword [ebp - 0x138], edx
mov byte [ebp - 4], 4
push ecx
mov ecx, esp
mov dword [ebp - 0xa8], esp
push 0x101cce7c
call fcn.1000ba00
mov dword [ebp - 0x13c], eax
mov byte [ebp - 4], 0
call fcn.100dd780
add esp, 0xc
mov eax, dword [ebp + 8]
mov byte [eax + 0x259], 1
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x5b0]
mov dword [ebp - 0x18], edx
push 0
push 0
push 0x40c
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x24], 0
jmp 0x100f23bc
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 0x14]
jae 0x100f276f
mov dword [ebp - 0x78], 0x50
mov dword [ebp - 0x74], 0x51
push 0x48
push 0
lea eax, [ebp - 0x70]
push eax
call fcn.10166680
add esp, 0xc
lea ecx, [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x24]
push edx
push 0x41c
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
je 0x100f276a
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 0x58]
cmp edx, dword [ecx + 0xd4]
jne 0x100f276a
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp - 0x74]
or ecx, 1
mov dword [ebp - 0x74], ecx
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 0x5d0]
test eax, eax
jne 0x100f2440
mov dword [ebp - 0x70], 0x200
mov ecx, dword [ebp - 0x80]
and ecx, 4
je 0x100f2451
mov edx, dword [ebp - 0x70]
or edx, 4
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x80]
and eax, 0x20
je 0x100f2462
mov ecx, dword [ebp - 0x70]
or ecx, 0x20
mov dword [ebp - 0x70], ecx
mov edx, dword [ebp - 0x80]
and edx, 2
je 0x100f2473
mov eax, dword [ebp - 0x70]
or eax, 2
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x80]
and ecx, 0x80
je 0x100f248a
mov edx, dword [ebp - 0x70]
or edx, 0x80
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x80]
and eax, 8
je 0x100f249b
mov ecx, dword [ebp - 0x70]
or ecx, 8
mov dword [ebp - 0x70], ecx
mov edx, dword [ebp - 0x80]
and edx, 0x100
je 0x100f24b1
mov eax, dword [ebp - 0x70]
or eax, 0x100
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x80]
and ecx, 0x40
je 0x100f24c2
mov edx, dword [ebp - 0x70]
or edx, 0x40
mov dword [ebp - 0x70], edx
push 0x101cce8c
push ecx
mov ecx, esp
mov dword [ebp - 0xb0], esp
push 0x101cce90
call fcn.1000ba00
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x144], eax
mov byte [ebp - 4], 5
push ecx
mov ecx, esp
mov dword [ebp - 0xb4], esp
push 0x101cce94
call fcn.1000ba00
mov dword [ebp - 0x148], eax
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x14c], ecx
mov byte [ebp - 4], 6
push ecx
mov ecx, esp
mov dword [ebp - 0xb8], esp
push 0x101cce98
call fcn.1000ba00
mov dword [ebp - 0x150], eax
lea edx, [ebp - 0xbc]
push edx
mov byte [ebp - 4], 0
call fcn.100dd430
add esp, 0x10
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x158], eax
mov ecx, dword [ebp - 0x158]
push ecx
call fcn.100110d0
add esp, 8
mov byte [ebp - 0xa9], al
lea ecx, [ebp - 0xbc]
call fcn.1000ba80
movzx edx, byte [ebp - 0xa9]
test edx, edx
je 0x100f2735
push ecx
mov ecx, esp
mov dword [ebp - 0xc0], esp
push 0x101cceac
call fcn.1000ba00
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x160], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x288]
push edx
push ecx
mov ecx, esp
mov dword [ebp - 0xc4], esp
push 0x101cceb0
call fcn.1000ba00
mov dword [ebp - 0x164], eax
mov byte [ebp - 4], 0
call fcn.100dd910
add esp, 0xc
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x168]
mov dword [ebp - 0x4c], eax
push ecx
mov ecx, esp
mov dword [ebp - 0xc8], esp
push 0x101ccec0
call fcn.1000ba00
mov dword [ebp - 0x16c], eax
mov ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x170], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x14]
sub edx, 1
push edx
push ecx
mov ecx, esp
mov dword [ebp - 0xcc], esp
push 0x101ccec4
call fcn.1000ba00
mov dword [ebp - 0x174], eax
mov byte [ebp - 4], 0
call fcn.100dd910
add esp, 0xc
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x84]
cmp ecx, dword [ebp - 0x14]
jb 0x100f266b
mov edx, dword [ebp - 0x14]
sub edx, 1
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x88], 0
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 0x5d0]
test ecx, ecx
jne 0x100f26e5
push ecx
mov ecx, esp
mov dword [ebp - 0xd0], esp
push 0x101cced0
call fcn.1000ba00
mov dword [ebp - 0x17c], eax
mov edx, dword [ebp - 0x17c]
mov dword [ebp - 0x180], edx
mov byte [ebp - 4], 9
push 0
push ecx
mov ecx, esp
mov dword [ebp - 0xd4], esp
push 0x101cced4
call fcn.1000ba00
mov dword [ebp - 0x184], eax
mov byte [ebp - 4], 0
call fcn.100dd910
add esp, 0xc
mov dword [ebp - 0x188], eax
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x100f26f7
mov ecx, dword [ebp - 0x70]
or ecx, 1
mov dword [ebp - 0x70], ecx
lea edx, [ebp - 0x78]
push edx
mov eax, dword [ebp - 0x24]
push eax
push 0x40b
mov ecx, dword [ebp - 0x18]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0x84]
cmp edx, dword [ebp - 0x24]
je 0x100f2733
mov eax, dword [ebp - 0x84]
push eax
mov ecx, dword [ebp - 0x24]
push ecx
push 0x427
mov edx, dword [ebp - 0x18]
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x100f274c
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 0x5d0]
test ecx, ecx
je 0x100f274c
mov edx, dword [ebp - 0x70]
or edx, 1
mov dword [ebp - 0x70], edx
mov eax, dword [ebp + 8]
cmp dword [eax + 0x348], 0
je 0x100f276a
mov ecx, dword [ebp - 0x18]
push ecx
mov ecx, dword [ebp + 8]
add ecx, 0xd0
call fcn.101214e0
jmp 0x100f23b3
xor edx, edx
cmp dword [ebp + 0xc], 1
sete dl
mov eax, dword [ebp + 8]
mov byte [eax + 0x5c2], dl
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0xd4], 0
je 0x100f27aa
cmp dword [ebp + 0xc], 1
sete dl
movzx eax, dl
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x500]
push edx
call fcn.100a1d10
add esp, 8
mov eax, dword [ebp + 0xc]
neg eax
sbb eax, eax
and eax, 5
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xd4]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x101ccee4
push ecx
mov ecx, esp
mov dword [ebp - 0xdc], esp
push 0x101ccee8
call fcn.1000ba00
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x190], eax
mov byte [ebp - 4], 0xa
push ecx
mov ecx, esp
mov dword [ebp - 0xe0], esp
push 0x101cceec
call fcn.1000ba00
mov dword [ebp - 0x194], eax
mov ecx, dword [ebp - 0x194]
mov dword [ebp - 0x198], ecx
mov byte [ebp - 4], 0xb
push ecx
mov ecx, esp
mov dword [ebp - 0xe4], esp
push 0x101ccef0
call fcn.1000ba00
mov dword [ebp - 0x19c], eax
lea edx, [ebp - 0xe8]
push edx
mov byte [ebp - 4], 0
call fcn.100dd430
add esp, 0x10
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x1a4]
push ecx
call fcn.10007f70
add esp, 8
mov byte [ebp - 0xd5], al
lea ecx, [ebp - 0xe8]
call fcn.1000ba80
movzx edx, byte [ebp - 0xd5]
test edx, edx
je 0x100f2a34
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 0x5d0]
test ecx, ecx
jne 0x100f2a0b
mov edx, dword [ebp + 8]
cmp dword [edx + 0x348], 0
je 0x100f29e0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x348]
cmp dword [ecx + 0x128], 0
je 0x100f29e0
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x348]
mov ecx, dword [eax + 0x128]
cmp dword [ecx + 0x3c], 0
je 0x100f29e0
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x348]
mov ecx, dword [eax + 0x128]
mov ecx, dword [ecx + 0x3c]
add ecx, 0x10
call fcn.10008000
movzx edx, al
test edx, edx
jne 0x100f29e0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x348]
mov edx, dword [ecx + 0x128]
mov ecx, dword [edx + 0x3c]
add ecx, 0x10
call fcn.100a7f00
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebp - 0x1a8]
push eax
lea ecx, [ebp - 0x90]
call fcn.1000b9e0
mov dword [ebp - 0x1ac], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x348]
mov eax, dword [edx + 0x128]
mov ecx, dword [eax + 0x3c]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x8c], edx
push 0x101ccf04
lea eax, [ebp - 0x90]
push eax
call fcn.10007f70
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x100f29a1
mov edx, dword [ebp - 0x8c]
push edx
push ecx
mov ecx, esp
mov dword [ebp - 0xec], esp
push 0x101ccf18
call fcn.1000ba00
mov dword [ebp - 0x1b0], eax
mov ecx, dword [ebp + 8]
add ecx, 0xd0
call fcn.101219f0
jmp 0x100f29cf
mov eax, dword [ebp - 0x8c]
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0xf0], esp
push 0x101ccf2c
call fcn.1000ba00
mov dword [ebp - 0x1b4], eax
mov ecx, dword [ebp + 8]
add ecx, 0xd0
call fcn.101219f0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x90]
call fcn.1000ba80
jmp 0x100f2a09
push 0x64
push ecx
mov ecx, esp
mov dword [ebp - 0xf4], esp
push 0x101ccf3c
call fcn.1000ba00
mov dword [ebp - 0x1b8], eax
mov ecx, dword [ebp + 8]
add ecx, 0xd0
call fcn.101219f0
jmp 0x100f2a34
push 0x64
push ecx
mov ecx, esp
mov dword [ebp - 0xf8], esp
push 0x101ccf4c
call fcn.1000ba00
mov dword [ebp - 0x1bc], eax
mov ecx, dword [ebp + 8]
add ecx, 0xd0
call fcn.101219f0
push ecx
mov ecx, esp
mov dword [ebp - 0xfc], esp
push 0x101ccf60
call fcn.1000ba00
mov dword [ebp - 0x1c0], eax
mov ecx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1c4], ecx
mov byte [ebp - 4], 0xd
push ecx
mov ecx, esp
mov dword [ebp - 0x100], esp
push 0x101ccf64
call fcn.1000ba00
mov dword [ebp - 0x1c8], eax
mov edx, dword [ebp - 0x1c8]
mov dword [ebp - 0x1cc], edx
mov byte [ebp - 4], 0xe
push ecx
mov ecx, esp
mov dword [ebp - 0x104], esp
push 0x101ccf68
call fcn.1000ba00
mov dword [ebp - 0x1d0], eax
mov byte [ebp - 4], 0
call fcn.100dd780
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x348]
cmp dword [ecx + 0x58], 0
je 0x100f2ac4
mov edx, dword [ebp + 8]
mov byte [edx + 0x5dc], 1
jmp 0x100f2ad3
mov dword [ebp - 4], 0xffffffff
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8