Function at 0x413370
Capabilities:
Get graphical window text
Hide graphical window

Disassembly:
sub esp, 0xbc
mov eax, dword [0x485300]
xor eax, esp
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xc0]
push ebx
push ebp
mov ebp, dword [esp + 0xcc]
push esi
push edi
mov edi, ecx
movzx ecx, ax
shr eax, 0x10
cmp dword [edi + 0x2a4], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
jne 0x4133e1
mov eax, dword [edi + 4]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4133d3
mov ecx, dword [edi + 4]
push ecx
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [ebp], 1
xor eax, eax
jmp 0x413621
push eax
lea ebx, [edi + 0x29c]
push ecx
call fcn.004020a0
cmp eax, 9
je 0x41346e
cmp dword [edi + 0x65c], 0
jne 0x413477
mov edx, dword [edi + 0x10]
lea esi, [edi + 0xc]
push edx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x413412
call fcn.0040f6d0
mov eax, dword [esi + 4]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x41342c
mov ecx, dword [esi + 4]
push 0
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, ebx
call fcn.00401f60
xor eax, eax
xor esi, esi
push esi
lea edx, [esp + 0x18]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov eax, dword [edi + 4]
push edx
push eax
lea eax, [edi + 0x2e4]
mov ebx, edx
mov dword [esp + 0x20], esi
call fcn.0040e4a0
mov dword [edi + 0x61c], esi
mov dword [ebp], esi
xor eax, eax
jmp 0x413621
cmp dword [edi + 0x65c], 0
je 0x413485
mov dword [ebp], 0
xor eax, eax
jmp 0x413621
mov ecx, dword [edi + 0x640]
push 0
push ecx
call dword [sym.imp.USER32.dll_GetSubMenu]
mov esi, eax
mov eax, dword [edi + 0x2e8]
push eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
push esi
mov ebp, eax
call dword [sym.imp.USER32.dll_GetMenuItemCount]
mov ebx, eax
test ebx, ebx
jle case.0x413571.40004
push 0x7e
lea edx, [esp + 0x46]
push 0
push edx
mov word [esp + 0x4c], 0
call fcn.00447890
mov edx, dword [0x4883b0]
add esp, 0xc
mov ecx, ebp
neg ecx
push 0x3f
lea eax, [esp + 0x44]
sbb ecx, ecx
push eax
add ecx, 0x88
push ecx
push edx
call dword [sym.imp.USER32.dll_LoadStringW]
xor ecx, ecx
add ebx, 0xffffffff
test ebp, ebp
setne cl
lea eax, [esp + 0x40]
push eax
add ecx, 0x9c4d
push ecx
push 0x400
push ebx
push esi
call dword [sym.imp.USER32.dll_InsertMenuW]
mov eax, dword [edi + 4]
lea edx, [esp + 0x28]
push edx
push eax
call dword [sym.imp.USER32.dll_ClientToScreen]
mov ecx, dword [edi + 4]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
push 0
push ecx
push 0
push edx
push eax
push 0x100
push esi
mov dword [edi + 0x65c], 1
call dword [sym.imp.USER32.dll_TrackPopupMenu]
push 0x400
push ebx
push esi
mov ebp, eax
mov dword [edi + 0x65c], 0
call dword [sym.imp.USER32.dll_DeleteMenu]
lea eax, [ebp - 0x9c42]
cmp eax, 0xc
ja case.0x413571.40004
jmp dword [eax*4 + 0x413a00]
mov ebx, 0xa
cmp dword [edi + 0x608], ebx
je case.0x413571.40004
lea ebp, [edi + 0x304]
push 0
xor eax, eax
mov esi, ebp
call fcn.0040ce80
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
cmp ebx, 0xa
je 0x4135cd
mov ecx, dword [edi + 0x2e8]
push 0
push ebx
push 0x40a
push ecx
call esi
test eax, eax
je 0x4135e9
mov edx, dword [edi + 0x2e8]
push 0
push ebx
push 0x402
push edx
call esi
jmp 0x4135e9
mov eax, dword [edi + 0x2e8]
push 1
push 0xa
push 0x402
push eax
call esi
mov dword [edi + 0x608], 0xa
add ebx, 1
cmp ebx, 0xe
jle 0x4135a0
mov edi, dword [edi + 0x308]
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
neg eax
sbb eax, eax
add eax, 1
push eax
mov eax, 0xa
mov esi, ebp
call fcn.0040ce80
mov edx, dword [esp + 0x24]
mov dword [edx], 0
mov eax, 1
mov ecx, dword [esp + 0xc4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0044266a
add esp, 0xbc
ret 8
cmp dword [edi + 0x608], 0xb
je case.0x413571.40004
lea ebp, [edi + 0x304]
push 0
xor eax, eax
mov esi, ebp
call fcn.0040ce80
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov ebx, 0xa
cmp ebx, 0xb
je 0x41368e
mov ecx, dword [edi + 0x2e8]
push 0
push ebx
push 0x40a
push ecx
call esi
test eax, eax
je 0x4136aa
mov edx, dword [edi + 0x2e8]
push 0
push ebx
push 0x402
push edx
call esi
jmp 0x4136aa
mov eax, dword [edi + 0x2e8]
push 1
push 0xb
push 0x402
push eax
call esi
mov dword [edi + 0x608], 0xb
add ebx, 1
cmp ebx, 0xe
jle 0x413661
mov edi, dword [edi + 0x308]
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
neg eax
sbb eax, eax
add eax, 1
push eax
mov eax, 0xb
jmp 0x41360b
cmp dword [edi + 0x608], 0xe
je case.0x413571.40004
lea esi, [edi + 0x304]
push 0
xor eax, eax
call fcn.0040ce80
mov ebp, dword [sym.imp.USER32.dll_SendMessageW]
mov ebx, 0xa
cmp ebx, 0xe
je 0x413725
mov ecx, dword [edi + 0x2e8]
push 0
push ebx
push 0x40a
push ecx
call ebp
test eax, eax
je 0x413741
mov edx, dword [edi + 0x2e8]
push 0
push ebx
push 0x402
push edx
call ebp
jmp 0x413741
mov eax, dword [edi + 0x2e8]
push 1
push 0xe
push 0x402
push eax
call ebp
mov dword [edi + 0x608], 0xe
add ebx, 1
cmp ebx, 0xe
jle 0x4136fb
mov edi, dword [edi + 0x308]
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
neg eax
sbb eax, eax
add eax, 1
push eax
mov eax, 0xe
jmp 0x41360d
cmp dword [edi + 0x608], 0xc
je case.0x413571.40004
lea ebp, [edi + 0x304]
push 0
xor eax, eax
mov esi, ebp
call fcn.0040ce80
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov ebx, 0xa
cmp ebx, 0xc
je 0x4137be
mov ecx, dword [edi + 0x2e8]
push 0
push ebx
push 0x40a
push ecx
call esi
test eax, eax
je 0x4137da
mov edx, dword [edi + 0x2e8]
push 0
push ebx
push 0x402
push edx
call esi
jmp 0x4137da
mov eax, dword [edi + 0x2e8]
push 1
push 0xc
push 0x402
push eax
call esi
mov dword [edi + 0x608], 0xc
add ebx, 1
cmp ebx, 0xe
jle 0x413791
mov edi, dword [edi + 0x308]
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
neg eax
sbb eax, eax
add eax, 1
push eax
mov eax, 0xc
jmp 0x41360b
cmp dword [edi + 0x608], 0xd
je case.0x413571.40004
lea ebp, [edi + 0x304]
push 0
xor eax, eax
mov esi, ebp
call fcn.0040ce80
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
mov ebx, 0xa
lea ebx, [ebx]
cmp ebx, 0xd
je 0x41385d
mov ecx, dword [edi + 0x2e8]
push 0
push ebx
push 0x40a
push ecx
call esi
test eax, eax
je 0x413879
mov edx, dword [edi + 0x2e8]
push 0
push ebx
push 0x402
push edx
call esi
jmp 0x413879
mov eax, dword [edi + 0x2e8]
push 1
push 0xd
push 0x402
push eax
call esi
mov dword [edi + 0x608], 0xd
add ebx, 1
cmp ebx, 0xe
jle 0x413830
mov edi, dword [edi + 0x308]
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
neg eax
sbb eax, eax
add eax, 1
push eax
mov eax, 0xd
jmp 0x41360b
call fcn.004145e0
jmp case.0x413571.40004
push edi
call fcn.00414750
jmp case.0x413571.40004
mov esi, edi
call fcn.00414bf0
jmp case.0x413571.40004
mov esi, edi
call fcn.00414bd0
jmp case.0x413571.40004
mov edx, dword [edi + 4]
xor eax, eax
lea ecx, [esp + 0x14]
push ecx
push edx
mov dword [edi + 0x620], 1
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [edi + 0x2b0]
mov eax, dword [edi + 0x2ac]
mov edx, dword [edi + 0x2b4]
mov dword [esp + 0x30], eax
mov eax, dword [edi + 0x2b8]
mov dword [esp + 0x34], ecx
push 1
lea ecx, [esp + 0x18]
mov dword [esp + 0x3c], edx
mov edx, dword [edi + 4]
push ecx
mov dword [esp + 0x44], eax
push edx
lea eax, [edi + 0x2e4]
lea ebx, [esp + 0x3c]
call fcn.0040e4a0
jmp case.0x413571.40004
mov ecx, dword [edi + 4]
xor eax, eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
lea eax, [esp + 0x14]
push eax
xor esi, esi
push ecx
mov dword [edi + 0x620], esi
mov dword [esp + 0x1c], esi
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [edi + 0x2b0]
mov ecx, dword [edi + 0x2b4]
mov edx, dword [edi + 0x2ac]
mov dword [esp + 0x34], eax
push esi
lea eax, [esp + 0x18]
mov dword [esp + 0x3c], ecx
mov ecx, dword [edi + 4]
push eax
mov dword [esp + 0x38], edx
mov edx, dword [edi + 0x2b8]
push ecx
lea eax, [edi + 0x2e4]
lea ebx, [esp + 0x3c]
mov dword [esp + 0x48], edx
call fcn.0040e4a0
jmp case.0x413571.40004
xor esi, esi
push esi
lea eax, [edi + 0xc]
call fcn.0040f650
lea eax, [edi + 0x29c]
call fcn.00401f60
xor eax, eax
push esi
lea edx, [esp + 0x18]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov eax, dword [edi + 4]
push edx
push eax
lea eax, [edi + 0x2e4]
mov ebx, edx
mov dword [esp + 0x20], esi
call fcn.0040e4a0
mov ecx, dword [esp + 0x24]
mov dword [edi + 0x61c], esi
mov dword [ecx], esi
jmp 0x41361c