Function at 0x40b4f0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x462738
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push ebx
push esi
push edi
mov eax, dword [0x4826d4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
cmp dword [ebp + 0x1c], 0
mov edi, dword [ebp + 0x10]
jne 0x40bc1d
mov eax, dword [ebp + 0xc]
cmp eax, 0x110
jne 0x40b573
mov eax, dword [ebx + 0x18]
push dword [ebp + 0x14]
push ecx
mov dword [eax + 0x20], 1
mov eax, esp
mov dword [eax], edi
call fcn.00409fc0
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
mov eax, dword [ebx + 0x18]
cmp dword [eax + 0x20], 0
je 0x40bc1d
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
cmp eax, 0x111
jne 0x40bc1d
mov edx, edi
movzx ecx, di
mov eax, 1
shr edx, 0x10
cmp ax, cx
jne 0x40b6b8
xor eax, eax
cmp ax, dx
jne 0x40b6b8
mov ecx, ebx
call fcn.00409020
call fcn.00403330
mov ecx, eax
test ecx, ecx
je 0x40bc33
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp + 0x14], eax
lea eax, [ebp + 0x14]
mov dword [ebp - 4], 0
push eax
mov ecx, ebx
call fcn.00409420
test al, al
jne 0x40b61a
mov edx, dword [ebp + 0x14]
or eax, 0xffffffff
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40b5f8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp + 0x18]
mov dword [eax], 0
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
call fcn.00438760
mov ecx, eax
call fcn.0043eb20
mov esi, dword [ebx + 4]
mov edi, dword [sym.imp.USER32.dll_GetParent]
push esi
call edi
test eax, eax
je 0x40b63f
push eax
mov esi, eax
call edi
test eax, eax
jne 0x40b636
push 0
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, dword [ebx + 0x20]
mov edi, ecx
mov esi, dword [ebp + 0x14]
push 0
push esi
push dword [ecx + 0x38]
call fcn.00416ca0
push eax
push dword [edi]
push dword [edi + 0x30]
call fcn.00421350
mov ecx, eax
call fcn.00420ed0
mov ecx, dword [ebx + 0x20]
push 0
call fcn.00418320
mov dword [ebp - 4], 0xffffffff
add esi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x40b696
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov ecx, dword [ebp + 0x18]
mov eax, 1
mov dword [ecx], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
mov eax, 0x3fb
cmp ax, cx
jne 0x40b707
movzx eax, dx
mov dword [ebp + 0x10], 0
mov esi, eax
cmp word [ebp + 0x10], ax
jne 0x40b70a
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3fb
push 0
call fcn.004097b0
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
movzx esi, dx
mov eax, 0x3f4
movzx esi, si
cmp ax, cx
jne 0x40b751
xor eax, eax
cmp ax, si
jne 0x40b751
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3f4
push 0
call fcn.0040b0e0
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
mov eax, 0x3f3
cmp ax, cx
jne 0x40b795
xor eax, eax
cmp ax, si
jne 0x40b795
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3f3
push 0
call fcn.0040b230
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
mov eax, 0x3f7
cmp ax, cx
jne 0x40b7e1
mov dword [ebp + 0x10], 0
mov eax, edx
cmp word [ebp + 0x10], si
jne 0x40b7e6
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push 0x3f7
push 0
mov ecx, ebx
call fcn.0040b430
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
mov eax, edi
shr eax, 0x10
mov dword [ebp + 0x10], 0x3f8
cmp word [ebp + 0x10], cx
jne 0x40b810
mov dword [ebp + 0x10], 0
mov eax, edx
cmp word [ebp + 0x10], si
jne 0x40b810
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push 0x3f8
jmp 0x40b7ba
mov dword [ebp + 0x10], 0x418
cmp word [ebp + 0x10], cx
jne 0x40b83a
mov dword [ebp + 0x10], 0
mov eax, edx
cmp word [ebp + 0x10], si
jne 0x40b83a
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push 0x418
jmp 0x40b7ba
mov dword [ebp + 0x10], 0x419
cmp word [ebp + 0x10], cx
jne 0x40b861
mov eax, edx
xor edx, edx
cmp dx, si
jne 0x40b861
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push 0x419
jmp 0x40b7ba
mov edx, 0x3f5
mov dword [ebp + 0x10], 4
cmp dx, cx
jne 0x40b894
mov edx, esi
cmp word [ebp + 0x10], si
jne 0x40b897
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3f5
push 4
call fcn.0040add0
jmp 0x40b7c3
movzx edx, ax
movzx esi, dx
mov edx, 0x42d
cmp dx, cx
mov edx, 4
jne 0x40b8c7
cmp dx, si
jne 0x40b8c7
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x42d
push edx
call fcn.0040add0
jmp 0x40b7c3
mov dword [ebp + 0x1c], 0x42b
cmp word [ebp + 0x1c], cx
jne 0x40b8f3
cmp dx, si
jne 0x40b8f3
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x42b
push 4
call fcn.0040add0
jmp 0x40b7c3
mov edx, 0x3f6
mov dword [ebp - 0x18], edx
cmp dx, cx
jne 0x40b922
mov edx, eax
cmp word [ebp + 0x10], si
jne 0x40b927
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3f6
push 4
call fcn.0040add0
jmp 0x40b7c3
mov edx, edi
shr edx, 0x10
mov dword [ebp + 0xc], 0x3fc
cmp word [ebp + 0xc], cx
jne 0x40b956
mov edx, eax
cmp word [ebp + 0x10], si
jne 0x40b956
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3fc
push 4
call fcn.0040add0
jmp 0x40b7c3
mov dword [ebp - 0x10], 0x42c
cmp word [ebp - 0x10], cx
jne 0x40b985
mov edx, eax
cmp word [ebp + 0x10], si
jne 0x40b985
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x42c
push 4
call fcn.0040add0
jmp 0x40b7c3
mov dword [ebp + 0x10], 0x3f9
cmp word [ebp + 0x10], cx
jne 0x40b9b8
mov edx, eax
mov eax, 4
cmp ax, si
jne 0x40b9b8
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3f9
push 4
call fcn.0040add0
jmp 0x40b7c3
mov eax, 0x3f5
mov dword [ebp - 0x14], 5
cmp ax, cx
jne 0x40b9eb
mov eax, esi
cmp word [ebp - 0x14], si
jne 0x40b9ee
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3f5
push 5
call fcn.0040ac40
jmp 0x40b7c3
movzx eax, dx
mov esi, 0x42d
movzx eax, ax
cmp si, cx
mov esi, 5
jne 0x40ba1e
cmp si, ax
jne 0x40ba1e
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x42d
push esi
call fcn.0040ac40
jmp 0x40b7c3
cmp word [ebp + 0x1c], cx
jne 0x40ba43
cmp si, ax
jne 0x40ba43
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x42b
push 5
call fcn.0040ac40
jmp 0x40b7c3
cmp word [ebp - 0x18], cx
jne 0x40ba6a
mov edi, edx
cmp si, ax
jne 0x40ba6d
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3f6
push 5
call fcn.0040ac40
jmp 0x40b7c3
shr edi, 0x10
cmp word [ebp + 0xc], cx
jne 0x40ba94
mov edi, edx
cmp si, ax
jne 0x40ba94
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3fc
push 5
call fcn.0040ac40
jmp 0x40b7c3
cmp word [ebp - 0x10], cx
jne 0x40babb
mov edi, edx
cmp si, ax
jne 0x40babb
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x42c
push 5
call fcn.0040ac40
jmp 0x40b7c3
cmp word [ebp + 0x10], cx
jne 0x40bae2
mov edi, edx
cmp si, ax
jne 0x40bae2
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
push dword [ebp + 0x14]
push 0x3f9
push 5
call fcn.0040ac40
jmp 0x40b7c3
mov edx, 0x3f5
cmp dx, cx
jne 0x40bb28
mov edi, 1
mov edx, eax
cmp di, ax
jne 0x40bb30
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push 0x3f5
push 1
mov ecx, ebx
call fcn.0040af60
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
movzx edx, di
mov edi, 1
movzx eax, dx
mov edx, 0x42d
cmp dx, cx
jne 0x40bb4c
cmp di, ax
jne 0x40bb4c
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push edx
jmp 0x40bb04
cmp word [ebp + 0x1c], cx
jne 0x40bb65
cmp di, ax
jne 0x40bb65
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push 0x42b
jmp 0x40bb04
mov edx, 0x3f6
cmp dx, cx
jne 0x40bb7e
cmp di, ax
jne 0x40bb7e
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push edx
jmp 0x40bb04
cmp word [ebp + 0xc], cx
jne 0x40bb9a
cmp di, ax
jne 0x40bb9a
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push 0x3fc
jmp 0x40bb04
cmp word [ebp - 0x10], cx
jne 0x40bbb6
cmp di, ax
jne 0x40bbb6
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push 0x42c
jmp 0x40bb04
cmp word [ebp + 0x10], cx
jne 0x40bbd2
cmp di, ax
jne 0x40bbd2
lea eax, [ebp + 0x10]
push eax
push dword [ebp + 0x14]
push 0x3f9
jmp 0x40bb04
mov edx, 0x3e8
cmp dx, cx
jne 0x40bc1d
cmp di, ax
jne 0x40bc1d
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x147
push dword [ebx + 0x44]
call esi
push 0
push eax
push 0x150
push dword [ebx + 0x44]
call esi
mov ecx, dword [ebx + 0x20]
mov dword [ecx + 0x38], eax
mov ecx, ebx
call fcn.0040c0e0
mov eax, dword [ebp + 0x18]
mov dword [eax], 0
jmp 0x40bb12
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 0x18
push 0x80004005
call fcn.004024f0
int3