Function at 0x458520
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x454
push ebx
push esi
push edi
mov edi, eax
push str.Submit
push edi
mov esi, ecx
mov ebx, edx
call fcn.00476cb6
add esp, 8
test eax, eax
movzx eax, byte [esi + 4]
sete cl
add eax, 0xfffffff3
mov byte [esp + 0x23], cl
cmp eax, 5
ja case.default.0x45855c
jmp dword [eax*4 + 0x458d84]
test byte [esi + 5], 0x80
push 0
push 0
je 0x458595
mov eax, dword [esi]
push 0x472
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
cdq
push 0x18
push edx
push eax
mov eax, ebx
call fcn.004010d0
mov edi, edx
invalid
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, dword [esi]
push 0x468
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
cwde
cdq
push 0x18
push edx
push eax
mov eax, ebx
call fcn.004010d0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edx, dword [esi]
push 0
push 0
push 0x400
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
test byte [esi + 5], 0x80
mov dword [esp + 0x18], eax
je 0x458606
mov eax, dword [esi]
push 0
push 0
push 0x402
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [esi]
push 0
push 0
push 0x401
mov edi, eax
sub edi, dword [esp + 0x24]
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
add eax, edi
cdq
push 0x18
push edx
push eax
mov eax, ebx
call fcn.004010d0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
test cl, cl
jne 0x458d73
mov edx, dword [esi]
push 0
push 0
push 0x408
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
cdq
push 0x18
push edx
push eax
mov eax, ebx
call fcn.004010d0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, dword [esi]
lea eax, [esp + 0x24]
push eax
push 0
push 0x1001
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
jne 0x458691
lea eax, [esp + 0x24]
lea esi, [esp + 0x60]
call fcn.00463d70
push 1
push 0
push 0xffffffffffffffff
push eax
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 1
push 0
mov eax, 0x49588a
push 0xffffffffffffffff
push eax
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edx, dword [esi]
push 0xfffffffffffffff0
push edx
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov ecx, dword [esi]
test al, 2
lea eax, [esp + 0x24]
push eax
push 0
je 0x45870b
push 0x1005
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [esp + 0x24]
lea esi, [esp + 0x60]
call fcn.00463d70
lea eax, [esp + 0x34]
lea esi, [esp + 0x69]
mov byte [esp + 0x68], 0x2d
call fcn.00463d70
push 1
push 0
push 0x11
lea edx, [esp + 0x6c]
push edx
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x1001
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [esp + 0x24]
lea esi, [esp + 0x60]
call fcn.00463d70
push 1
push 0
push 8
push eax
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [esi]
lea edx, [esp + 0x60]
push edx
push 0
push 0
push 0x402
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push eax
call fcn.0045ac70
add esp, 8
push 1
push 0
push 0xffffffffffffffff
lea ecx, [esp + 0x6c]
push ecx
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push str.Text
push edi
call fcn.00476cb6
add esp, 8
test eax, eax
je case.0x4587a1.12
movzx eax, byte [esi + 4]
dec eax
cmp eax, 0x12
ja case.0x4587a1.12
movzx edx, byte [eax + 0x458db8]
jmp dword [edx*4 + 0x458d9c]
mov eax, dword [esi]
push 0
push 0
push pe_nt_image_headers32
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
sub eax, 0
je 0x458806
dec eax
je 0x4587eb
dec eax
je 0x4587d0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 1
push 0
push 0xffffffffffffffff
push 0x49233c
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 1
push 0
push 0xffffffffffffffff
push 0x4916f4
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 1
push 0
push 0xffffffffffffffff
push 0x4900b0
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
test byte [esi + 5], 2
je case.0x4587a1.12
mov ecx, dword [esi]
push 0
push 0
push 0x147
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 0xffffffff
je 0x45893c
inc eax
cdq
push 0x18
push edx
push eax
mov eax, ebx
call fcn.004010d0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edx, dword [esi]
push 0
push 0
push 0x147
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov edi, eax
cmp edi, 0xffffffff
jne 0x4588b4
mov ecx, dword [esi]
push 0x400
lea eax, [esp + 0x64]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextA]
test eax, eax
je case.0x4587a1.12
mov eax, dword [esi]
lea edx, [esp + 0x60]
push edx
push edi
push 0x158
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov edi, eax
cmp edi, 0xffffffff
je case.0x4587a1.12
test byte [esi + 5], 2
je 0x4588d7
lea eax, [edi + 1]
cdq
push 0x18
push edx
push eax
mov eax, ebx
call fcn.004010d0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, dword [esi]
push 0
push edi
push 0x149
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push 1
mov ecx, ebx
push 0
cmp eax, 0xffffffff
jne 0x458905
push 0xffffffffffffffff
push 0
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push eax
push 0
call fcn.004668b0
cmp eax, 1
jne 0x4587c5
push eax
mov ecx, ebx
call fcn.00401230
mov edx, dword [esi]
push eax
push edi
push 0x148
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 0xffffffff
jne 0x458954
push 0
mov eax, ebx
call fcn.00412180
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edi, eax
mov eax, ebx
call fcn.004120b0
push 0
mov eax, ebx
call fcn.00412180
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, dword [esi]
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov ecx, dword [esi]
push 0
push 0
test eax, 0x808
je 0x458b7e
push 0x190
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov edi, eax
cmp edi, 1
jl 0x45893c
lea edx, [edi*4]
push edx
call fcn.00476de3
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
je 0x45893c
mov ecx, dword [esi]
push eax
push edi
push 0x191
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [esp + 0x1c], eax
cmp eax, 1
jge 0x4589f4
mov edx, dword [esp + 0x14]
push edx
call fcn.004785bf
add esp, 4
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, ebx
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ecx, eax
xor edi, edi
test byte [esi + 5], 2
lea eax, [ecx - 1]
mov dword [esp + 0x10], eax
je 0x458ace
test ecx, ecx
jle 0x458a44
lea ecx, [ecx]
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + edi*4]
push 0xa
lea eax, [esp + 0x64]
push eax
inc edx
push edx
call fcn.00476952
lea eax, [esp + 0x6c]
add esp, 0xc
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x458a30
sub eax, edx
add dword [esp + 0x10], eax
inc edi
cmp edi, dword [esp + 0x1c]
jl 0x458a10
mov ecx, dword [esp + 0x10]
push 1
push 0
push ecx
push 0
mov ecx, ebx
call fcn.004668b0
cmp eax, 1
jne 0x4587c5
push eax
mov ecx, ebx
call fcn.00401230
test byte [esi + 5], 2
mov edi, eax
je 0x458b0d
xor esi, esi
cmp dword [esp + 0x1c], esi
jle 0x458b68
nop
test esi, esi
je 0x458a8d
mov edx, dword [ebp + 8]
mov al, byte [edx + 0x44]
mov byte [edi], al
inc edi
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + esi*4]
push 0xa
inc edx
push edi
push edx
call fcn.00476952
mov eax, edi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x458aa6
sub eax, edx
inc esi
add edi, eax
cmp esi, dword [esp + 0x1c]
jl 0x458a80
mov eax, dword [esp + 0x14]
push eax
call fcn.004785bf
mov edi, dword [esp + 0x14]
add esp, 4
jmp 0x458956
test ecx, ecx
jle 0x458a44
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + edi*4]
mov edx, dword [esi]
push 0
push ecx
push 0x18a
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 0xffffffff
je 0x458b03
add dword [esp + 0x10], eax
inc edi
cmp edi, dword [esp + 0x1c]
jl 0x458ad6
jmp 0x458a44
mov eax, dword [esp + 0x14]
push eax
jmp 0x4589d4
mov ecx, dword [esp + 0x1c]
lea eax, [ecx - 1]
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], 0
test ecx, ecx
jle 0x458b68
cmp dword [esp + 0x18], 0
je 0x458b34
mov eax, dword [ebp + 8]
mov cl, byte [eax + 0x44]
mov byte [edi], cl
inc edi
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ecx, dword [edx + eax*4]
mov edx, dword [esi]
push edi
push ecx
push 0x189
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
jle 0x458b59
add dword [esp + 0x10], eax
add edi, eax
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [esp + 0x1c]
jl 0x458b24
mov eax, dword [esp + 0x14]
push eax
call fcn.004785bf
mov edi, dword [esp + 0x14]
add esp, 4
jmp 0x458956
push 0x188
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov edi, eax
cmp edi, 0xffffffff
je 0x45893c
test byte [esi + 5], 2
jne 0x4588ba
mov edx, dword [esi]
push 0
push edi
push 0x18a
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push 1
mov ecx, ebx
push 0
cmp eax, 0xffffffff
je 0x4588f3
push eax
push 0
call fcn.004668b0
cmp eax, 1
jne 0x4587c5
push eax
mov ecx, ebx
call fcn.00401230
push eax
mov eax, dword [esi]
push edi
push 0x189
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [esp + 0x10], eax
cmp eax, 0xffffffff
je 0x458933
mov edi, eax
jmp 0x458956
mov ecx, dword [esi]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x130b
push ecx
call edi
cmp eax, 0xffffffff
je 0x45893c
test byte [esi + 5], 2
jne 0x458846
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x64]
push eax
mov dword [esp + 0x58], edx
mov edx, dword [esi]
push 0x1305
push edx
mov dword [esp + 0x54], 1
mov dword [esp + 0x64], 0x3ff
call edi
push 1
push 0
mov ecx, ebx
push 0xffffffffffffffff
test eax, eax
je 0x4588f5
mov eax, dword [esp + 0x5c]
push eax
call fcn.004668b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp byte [esp + 0x23], 0
jne 0x458d73
mov ecx, dword [esi]
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
push 1
push 0
mov edi, eax
push edi
push 0
mov ecx, ebx
call fcn.004668b0
cmp eax, 1
jne 0x4587c5
inc edi
push edi
push eax
mov ecx, ebx
call fcn.00401230
mov edx, dword [esi]
push eax
push edx
call dword [sym.imp.USER32.dll_GetWindowTextA]
cmp byte [ebx + 0x17], 0
mov dword [esp + 0x18], eax
jne 0x458cbe
mov edi, dword [ebx + 0xc]
jmp 0x458cc0
mov edi, ebx
cmp byte [edi + 0x17], 1
jne 0x458cdc
test byte [edi + 0x15], 8
je 0x458cd7
mov eax, edi
call fcn.00401150
mov eax, dword [esp + 0x18]
add edi, 0xc
jmp 0x458ce1
mov edi, 0x4a3324
mov dword [edi], eax
test eax, eax
jne 0x458cf5
push 1
mov ecx, ebx
call fcn.00401230
mov byte [eax], 0
jmp 0x458d42
cmp byte [esi + 4], 0xc
jne 0x458d42
push 0
push 0xffffffffffffffff
push 1
push 0x495110
push 0x494aac
push 1
mov ecx, ebx
call fcn.00401230
push eax
xor eax, eax
or ecx, 0xffffffff
call fcn.00464760
add esp, 0x18
push 1
mov ecx, ebx
call fcn.00401230
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x458d30
sub eax, edx
mov edi, eax
mov eax, ebx
call fcn.004120b0
cmp byte [ebx + 0x17], 0
jne 0x458d4b
mov ebx, dword [ebx + 0xc]
cmp byte [ebx + 0x17], 2
jne 0x458d6f
cmp dword [0x4a2c08], 0
je 0x458d6f
push 1
mov ecx, 0x4a2bfc
call fcn.00403c50
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
and byte [ebx + 0x15], 0x86
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 4