Function at 0x410ff0
Capabilities:
Hide graphical window

Disassembly:
mov eax, dword [esp + 0x18]
sub esp, 0x2c
test eax, eax
push ebx
push ebp
push esi
push edi
mov esi, ecx
jne 0x4115b0
mov eax, dword [esp + 0x44]
mov ebp, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
mov edi, dword [esp + 0x48]
cmp eax, 1
jne 0x411030
push 1
call fcn.00410fa0
push ebp
mov ecx, esi
call fcn.00411a00
mov dword [ebx], eax
jmp 0x4112eb
cmp eax, 0x10
jne 0x41104a
push 1
mov ecx, esi
call fcn.00410fa0
mov ecx, esi
call fcn.00412af0
jmp 0x4112e5
cmp eax, 0x111
jne 0x411173
cmp di, 0xe140
jne 0x411072
mov ecx, esi
call fcn.00449160
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp di, 1
jne 0x41108e
mov ecx, esi
call fcn.00449160
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp di, 2
jne 0x4110aa
mov ecx, esi
call fcn.00411a10
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp di, 0x68
jne 0x4110c6
mov ecx, esi
call fcn.00411da0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp di, 0x69
jne 0x4110e2
mov ecx, esi
call fcn.00411dc0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp di, 0x71
jne 0x4110fe
mov ecx, esi
call fcn.00411dc0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp di, 0x6a
jne 0x41111a
mov ecx, esi
call fcn.00411ed0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp di, 0x7d
jne 0x411136
mov ecx, esi
call fcn.00411f60
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp di, 0x6c
jne 0x411152
mov ecx, esi
call fcn.00411f30
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp di, 0x85
jne 0x411309
mov ecx, esi
call fcn.00412b00
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp eax, 0x18
jne 0x41118f
push 1
mov ecx, esi
call fcn.00410fa0
push ebp
push edi
mov ecx, esi
call fcn.00412b70
jmp 0x4112e5
cmp eax, 0x112
jne 0x4111b9
push 1
mov ecx, esi
call fcn.00410fa0
mov ecx, ebp
shr ecx, 0x10
movsx ecx, cx
movsx eax, bp
push ecx
push eax
push edi
mov ecx, esi
call fcn.00412d00
jmp 0x4112e5
cmp eax, 3
jne 0x4111f1
push 1
mov ecx, esi
call fcn.00410fa0
mov eax, dword [esi + 0x18]
test eax, eax
je 0x4112e5
mov edx, dword [eax + 0xc]
mov ecx, dword [eax + 8]
push edx
mov edx, dword [eax + 4]
mov eax, dword [esi + 4]
push ecx
mov ecx, dword [esi + 0x1c]
push edx
push eax
push ecx
call dword [sym.imp.USER32.dll_CallWindowProcW]
jmp 0x4112e5
cmp eax, 5
jne 0x411219
push 1
mov ecx, esi
call fcn.00410fa0
mov edx, ebp
shr edx, 0x10
movsx ecx, dx
movsx eax, bp
push ecx
push eax
push edi
mov ecx, esi
call fcn.00412330
jmp 0x4112e5
cmp eax, 2
jne 0x411233
push 1
mov ecx, esi
call fcn.00410fa0
mov ecx, esi
call fcn.004124d0
jmp 0x4112e5
cmp eax, 0x7e9
jne 0x411253
push 1
mov ecx, esi
call fcn.00410fa0
push ebp
push edi
push 0x7e9
mov ecx, esi
call fcn.004124f0
jmp 0x4112b1
cmp eax, 0x7ea
jne 0x411273
push 1
mov ecx, esi
call fcn.00410fa0
push ebp
push edi
push 0x7ea
mov ecx, esi
call fcn.00412f70
jmp 0x4112b1
cmp eax, 0x7eb
jne 0x411293
push 1
mov ecx, esi
call fcn.00410fa0
push ebp
push edi
push 0x7eb
mov ecx, esi
call fcn.00412f90
jmp 0x4112b1
cmp eax, 0x7ec
jne 0x4112cd
push 1
mov ecx, esi
call fcn.00410fa0
push ebp
push edi
push 0x7ec
mov ecx, esi
call fcn.00413070
mov ecx, esi
mov dword [ebx], eax
call fcn.00410f90
test eax, eax
je 0x411305
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp eax, 0x113
jne 0x411309
push 1
mov ecx, esi
call fcn.00410fa0
push edi
mov ecx, esi
call fcn.00412870
mov dword [ebx], 0
mov ecx, esi
call fcn.00410f90
test eax, eax
je 0x411305
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
mov eax, dword [esp + 0x44]
add esi, 0x40
cmp eax, 5
jne 0x41157e
test esi, esi
je 0x411322
lea eax, [esi - 0x40]
mov dword [esp + 0x54], eax
jmp 0x41132a
mov dword [esp + 0x54], 0
mov al, byte [esi + 0x1c]
test al, al
je 0x411363
mov ecx, dword [esp + 0x54]
push 0xe801
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.USER32.dll_GetDlgItem]
cmp edi, 2
jne 0x411354
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x41136c
test edi, edi
jne 0x411363
push 5
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x41136c
cmp edi, 1
je 0x41159b
mov edx, dword [esp + 0x54]
mov eax, ebp
shr eax, 0x10
movsx ecx, ax
movsx esi, bp
lea edi, [edx + 0x40]
mov dword [esp + 0x44], ecx
test edi, edi
mov dword [esp + 0x10], esi
mov dword [esp + 0x4c], edi
je 0x411393
lea ebp, [edi - 0x40]
jmp 0x411395
xor ebp, ebp
mov eax, dword [ebp + 4]
push 0xfffffffffffffff0
push eax
mov dword [esp + 0x50], ebp
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x40000000
je 0x4113ce
mov eax, dword [edi + 0x14]
cmp eax, 0xffffffff
je 0x4113ce
mov ecx, dword [edi + 0x18]
cmp ecx, 0xffffffff
je 0x4113ce
cmp esi, eax
jge 0x4113c4
mov dword [esp + 0x10], eax
cmp dword [esp + 0x44], ecx
jge 0x4113ce
mov dword [esp + 0x44], ecx
mov ecx, dword [ebp + 4]
push ecx
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov esi, eax
test esi, esi
mov dword [esp + 0x18], esi
je 0x4113f2
mov edx, dword [ebp + 4]
push 0
push 0
push 0xb
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [edi + 4]
xor eax, eax
test ecx, ecx
mov dword [esp + 0x54], eax
jle 0x411542
xor edx, edx
jmp 0x411415
mov edi, dword [esp + 0x4c]
mov ebp, dword [esp + 0x48]
mov eax, dword [esp + 0x54]
xor edx, edx
lea esi, [eax + eax*2]
mov eax, dword [edi]
shl esi, 3
lea ecx, [eax + esi]
mov eax, dword [eax + esi + 4]
test ah, 0x10
je 0x4114f6
shr eax, 0x10
and eax, 0xff
lea edx, [ecx + 8]
mov ebx, eax
mov eax, dword [edx]
cmp ebx, 1
mov dword [esp + 0x1c], eax
mov ebp, dword [edx + 4]
mov dword [esp + 0x20], ebp
mov edi, dword [edx + 8]
mov dword [esp + 0x24], edi
mov edx, dword [edx + 0xc]
mov dword [esp + 0x28], edx
jle 0x4114a5
lea eax, [ecx + 0x24]
lea ecx, [ebx - 1]
mov dword [esp + 0x14], ecx
mov ecx, dword [eax - 4]
cmp dword [esp + 0x1c], ecx
jl 0x411471
mov dword [esp + 0x1c], ecx
mov ecx, dword [eax]
cmp ebp, ecx
jl 0x41147d
mov ebp, ecx
mov dword [esp + 0x20], ebp
mov ecx, dword [eax + 4]
cmp edi, ecx
jg 0x41148a
mov edi, ecx
mov dword [esp + 0x24], edi
mov ecx, dword [eax + 8]
cmp edx, ecx
jg 0x411497
mov edx, ecx
mov dword [esp + 0x28], edx
mov ecx, dword [esp + 0x14]
add eax, 0x18
dec ecx
mov dword [esp + 0x14], ecx
jne 0x411464
xor edi, edi
test ebx, ebx
jle 0x4114ec
mov edx, dword [esp + 0x48]
lea ebp, [edx + 0x40]
xor eax, eax
test edi, edi
jle 0x4114c2
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax]
lea eax, [ecx + esi - 0x18]
mov edx, dword [esp + 0x4c]
push eax
push 1
lea ecx, [esp + 0x24]
mov eax, dword [edx]
mov edx, dword [esp + 0x4c]
add eax, esi
push eax
mov eax, dword [esp + 0x1c]
push ecx
push edx
push eax
mov ecx, ebp
call fcn.00413910
inc edi
add esi, 0x18
cmp edi, ebx
jl 0x4114b2
mov ecx, dword [esp + 0x54]
lea ebx, [ecx + ebx - 1]
jmp 0x411524
mov eax, dword [esp + 0x44]
push edx
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], edx
push edx
lea edx, [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
push eax
push ecx
lea ecx, [ebp + 0x40]
call fcn.00413910
mov ebx, dword [esp + 0x54]
mov edx, dword [esp + 0x4c]
inc ebx
mov dword [esp + 0x54], ebx
cmp ebx, dword [edx + 4]
jl 0x411407
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x48]
mov esi, dword [esp + 0x18]
test esi, esi
je 0x411556
mov eax, dword [ebp + 4]
push 0
push 1
push 0xb
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 4]
push 0x185
push 0
push 0
push ecx
call dword [sym.imp.USER32.dll_RedrawWindow]
pop edi
pop esi
mov dword [ebx], 0
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
cmp eax, 0x24
jne 0x4115b0
cmp dword [esi + 0x14], 0xffffffff
je 0x41159b
cmp dword [esi + 0x18], 0xffffffff
je 0x41159b
mov edx, dword [esi + 0x14]
mov dword [ebp + 0x18], edx
mov eax, dword [esi + 0x18]
mov dword [ebp + 0x1c], eax
pop edi
pop esi
mov dword [ebx], 0
pop ebp
mov eax, 1
pop ebx
add esp, 0x2c
ret 0x18
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x2c
ret 0x18