Function at 0x4640c0
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x854
push ebx
push esi
mov esi, dword [ebp + 0x10]
push edi
push str.Submit
push esi
mov dword [esp + 0x28], ecx
call fcn.0048f253
mov edi, dword [ebp + 0xc]
add esp, 8
test eax, eax
sete bl
movzx eax, byte [edi + 4]
add eax, 0xfffffff3
cmp eax, 5
ja case.default.0x4640fc
jmp dword [eax*4 + 0x464c34]
cmp byte [edi + 5], 0
mov eax, dword [edi]
push 0
push 0
jge 0x464136
push 0x472
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 8]
push 0x18
cdq
push edx
push eax
call fcn.00401ac0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0x468
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 8]
cwde
push 0x18
cdq
push edx
push eax
call fcn.00401ac0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push 0
push 0x400
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
push eax
push edi
call fcn.00466ed0
mov ecx, dword [ebp + 8]
push 0x18
cdq
push edx
push eax
call fcn.00401ac0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test bl, bl
jne 0x464c24
push 0
push 0
push 0x408
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 8]
push 0x18
cdq
push edx
push eax
call fcn.00401ac0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea eax, [esp + 0x24]
push eax
push 0
push 0x1001
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jne 0x464202
lea edx, [esp + 0x24]
lea ecx, [esp + 0x60]
call fcn.00472a10
mov ecx, dword [ebp + 8]
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 8]
mov eax, 0x4ac22c
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0xfffffffffffffff0
push dword [edi]
call dword [sym.imp.USER32.dll_GetWindowLongW]
lea ecx, [esp + 0x24]
and eax, 2
mov eax, dword [edi]
push ecx
push 0
je 0x464283
push 0x1005
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
lea edx, [esp + 0x24]
lea ecx, [esp + 0x60]
call fcn.00472a10
mov eax, 0x2d
lea edx, [esp + 0x34]
lea ecx, [esp + 0x72]
mov word [esp + 0x70], ax
call fcn.00472a10
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x60]
push 1
push 0
push 0x11
push eax
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0x1001
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
lea edx, [esp + 0x24]
lea ecx, [esp + 0x60]
call fcn.00472a10
mov ecx, dword [ebp + 8]
push 1
push 0
push 8
push eax
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push 0
push 0x402
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
movzx ebx, ax
mov eax, ebx
shr eax, 8
mov cl, al
and cl, 1
je 0x4642de
mov edx, 0x2b
mov word [esp + 0x60], dx
test cl, cl
lea esi, [esp + 0x60]
lea edx, [esp + 0x62]
cmovne esi, edx
test al, 2
je 0x4642fa
mov ecx, 0x5e
mov word [esi], cx
add esi, 2
test al, 4
je 0x464309
mov ecx, 0x21
mov word [esi], cx
add esi, 2
test al, 8
je 0x46434f
xor dl, dl
mov cl, bl
call fcn.00412ab0
mov dl, 1
movzx edi, ax
mov cl, bl
call fcn.00412ab0
movzx edx, ax
mov ecx, edi
test edx, 0x100
mov eax, edx
cmovne ecx, eax
movzx ecx, cx
test ecx, 0x100
je 0x46434f
cmp di, dx
je 0x46434f
push 1
push 0x64
mov edx, esi
call fcn.004123a0
jmp 0x46435c
push 1
push 0x64
mov edx, esi
mov cl, bl
call fcn.00412410
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x68]
add esp, 8
push 1
push 0
push 0xffffffffffffffff
push eax
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Text
push esi
call fcn.0048f253
add esp, 8
test eax, eax
je case.0x4643a6.12
movzx eax, byte [edi + 4]
dec eax
cmp eax, 0x16
ja case.0x4643a6.12
movzx eax, byte [eax + 0x464c6c]
jmp dword [eax*4 + 0x464c4c]
push 0
push 0
push 0xf0
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
sub eax, 0
je 0x464408
sub eax, 1
je 0x4643ec
sub eax, 1
jne 0x464a0d
mov ecx, dword [ebp + 8]
push 1
push eax
push 0xffffffffffffffff
push 0x4c1d04
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 8]
push 1
push 0
push 0xffffffffffffffff
push 0x4bf994
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 8]
push 1
push 0
push 0xffffffffffffffff
push 0x4ac300
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test byte [edi + 5], 2
je case.0x4643a6.12
push 0
push 0
push 0x147
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 8]
cmp eax, 0xffffffff
jne 0x46445d
push 1
push 0
push 0xffffffffffffffff
push 0
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
inc eax
push 0x18
cdq
push edx
push eax
call fcn.00401ac0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x147
push dword [edi]
call esi
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x4644c4
push 0x400
lea eax, [esp + 0x64]
push eax
push dword [edi]
call dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
je case.0x4643a6.12
lea eax, [esp + 0x60]
push eax
push ebx
push 0x158
push dword [edi]
call esi
mov ebx, eax
cmp ebx, 0xffffffff
je case.0x4643a6.12
test byte [edi + 5], 2
je 0x4644e8
mov ecx, dword [ebp + 8]
lea eax, [ebx + 1]
push 0x18
cdq
push edx
push eax
call fcn.00401ac0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push ebx
push 0x149
push dword [edi]
call esi
push 1
push 0
cmp eax, 0xffffffff
je 0x46463c
mov esi, dword [ebp + 8]
mov ecx, esi
push eax
push 0
call fcn.00475930
cmp eax, 1
jne 0x464a0d
push 0
push eax
mov ecx, esi
call fcn.00401c20
push eax
push ebx
push 0x148
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
mov cl, byte [esi + 0x17]
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x464593
test cl, cl
jne 0x464543
mov eax, dword [esi + 0xc]
jmp 0x464545
mov eax, esi
cmp byte [eax + 0x17], 2
jne 0x464577
cmp dword [0x4d3e90], 0
je 0x464577
push ecx
mov ecx, 0x4d3e84
call fcn.00405670
push 1
push 0
push 0xffffffffffffffff
push 0
mov ecx, esi
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
and byte [eax + 0x15], 0x86
mov ecx, esi
push 1
push 0
push 0xffffffffffffffff
push 0
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test cl, cl
jne 0x46459c
mov edi, dword [esi + 0xc]
jmp 0x46459e
mov edi, esi
cmp byte [edi + 0x17], 1
jne 0x4645be
test byte [edi + 0x15], 8
je 0x4645b1
mov ecx, edi
call fcn.00401b40
add edi, 0xc
lea eax, [ebx + ebx]
mov dword [edi], eax
jmp 0x464c04
mov edi, 0x4d5644
lea eax, [ebx + ebx]
mov dword [edi], eax
jmp 0x464c04
push 0xfffffffffffffff0
push dword [edi]
call dword [sym.imp.USER32.dll_GetWindowLongW]
and eax, 0x808
mov eax, dword [edi]
push 0
push 0
je 0x4647e5
push 0x190
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
cmp esi, 1
jl 0x464638
lea eax, [esi*4]
push eax
call fcn.0048f3be
mov ebx, eax
add esp, 4
mov dword [esp + 0x18], ebx
test ebx, ebx
je 0x464638
push ebx
push esi
push 0x191
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
mov dword [esp + 0x14], esi
cmp esi, 1
jge 0x464651
push ebx
call fcn.004914e4
add esp, 4
push 1
push 0
mov ecx, dword [ebp + 8]
push 0xffffffffffffffff
push 0
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test byte [edi + 5], 2
lea eax, [esi - 1]
mov ebx, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x10], ebx
je 0x464735
test esi, esi
jle 0x4646ad
xor edi, edi
nop
push 0xa
lea eax, [esp + 0x64]
push eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax + edi*4]
inc eax
push eax
call fcn.0048f17a
lea ecx, [esp + 0x6c]
add esp, 0xc
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x464690
sub ecx, edx
inc edi
sar ecx, 1
add ebx, ecx
cmp edi, esi
jl 0x464670
mov edi, dword [ebp + 0xc]
mov dword [esp + 0x10], ebx
push 1
push 0
push ebx
mov ebx, dword [ebp + 8]
mov ecx, ebx
push 0
call fcn.00475930
cmp eax, 1
jne 0x464a0d
push 0
push eax
mov ecx, ebx
call fcn.00401c20
test byte [edi + 5], 2
mov esi, eax
je 0x464777
xor edi, edi
cmp dword [esp + 0x14], edi
jle 0x4647c3
mov ebx, dword [esp + 0x18]
nop dword [eax]
test edi, edi
je 0x464702
mov eax, dword [esp + 0x20]
mov ax, word [eax + 0x46]
mov word [esi], ax
add esi, 2
mov eax, dword [ebx + edi*4]
push 0xa
inc eax
push esi
push eax
call fcn.0048f17a
mov ecx, esi
add esp, 0xc
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x464717
sub ecx, edx
inc edi
sar ecx, 1
lea esi, [esi + ecx*2]
cmp edi, dword [esp + 0x14]
jl 0x4646f0
jmp 0x4647c0
xor esi, esi
cmp dword [esp + 0x14], esi
jle 0x4646ad
mov eax, dword [esp + 0x18]
push 0
push dword [eax + esi*4]
push 0x18a
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, 0xffffffff
je 0x46476e
add ebx, eax
inc esi
mov dword [esp + 0x10], ebx
cmp esi, dword [esp + 0x14]
jl 0x464741
jmp 0x4646ad
push dword [esp + 0x18]
jmp 0x464630
mov eax, dword [esp + 0x1c]
xor ebx, ebx
mov dword [esp + 0x10], eax
cmp dword [esp + 0x14], ebx
jle 0x4647c0
test ebx, ebx
je 0x464799
mov eax, dword [esp + 0x20]
mov ax, word [eax + 0x46]
mov word [esi], ax
add esi, 2
mov eax, dword [esp + 0x18]
push esi
push dword [eax + ebx*4]
push 0x189
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jle 0x4647b9
add dword [esp + 0x10], eax
lea esi, [esi + eax*2]
inc ebx
cmp ebx, dword [esp + 0x14]
jl 0x464787
mov ebx, dword [ebp + 8]
push dword [esp + 0x18]
call fcn.004914e4
mov esi, dword [esp + 0x14]
add esp, 4
cmp byte [ebx + 0x17], 0
jne 0x4648d0
mov edi, dword [ebx + 0xc]
jmp 0x4648d2
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 0x188
push eax
call ebx
mov esi, eax
cmp esi, 0xffffffff
je 0x464638
test byte [edi + 5], 2
je 0x464822
mov ecx, dword [ebp + 8]
lea eax, [esi + 1]
push 0x18
cdq
push edx
push eax
call fcn.00401ac0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push esi
push 0x18a
push dword [edi]
call ebx
push 1
push 0
cmp eax, 0xffffffff
je 0x46463c
mov ebx, dword [ebp + 8]
mov ecx, ebx
push eax
push 0
call fcn.00475930
cmp eax, 1
jne 0x464a0d
push 0
push eax
mov ecx, ebx
call fcn.00401c20
push eax
push esi
push 0x189
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
cmp esi, 0xffffffff
jne 0x4647d3
cmp byte [ebx + 0x17], 0
jne 0x464880
mov eax, dword [ebx + 0xc]
jmp 0x464882
mov eax, ebx
cmp byte [eax + 0x17], 2
jne 0x4648b4
cmp dword [0x4d3e90], 0
je 0x4648b4
push ecx
mov ecx, 0x4d3e84
call fcn.00405670
push 1
push 0
push 0xffffffffffffffff
mov ecx, ebx
push 0
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
and byte [eax + 0x15], 0x86
mov ecx, ebx
push 1
push 0
push 0xffffffffffffffff
push 0
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, ebx
cmp byte [edi + 0x17], 1
jne 0x4648ea
test byte [edi + 0x15], 8
je 0x4648e5
mov ecx, edi
call fcn.00401b40
add edi, 0xc
jmp 0x4648ef
mov edi, 0x4d5644
lea eax, [esi + esi]
mov dword [edi], eax
cmp byte [ebx + 0x17], 0
jne 0x4648fd
mov ebx, dword [ebx + 0xc]
cmp byte [ebx + 0x17], 2
jne 0x464920
cmp dword [0x4d3e90], 0
je 0x464920
push ecx
mov ecx, 0x4d3e84
call fcn.00405670
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
and byte [ebx + 0x15], 0x86
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x130b
push dword [edi]
call esi
cmp eax, 0xffffffff
je 0x464638
test byte [edi + 5], 2
je 0x464970
mov ecx, dword [ebp + 8]
inc eax
push 0x18
cdq
push edx
push eax
call fcn.00401ac0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea ecx, [esp + 0x60]
mov dword [esp + 0x44], 1
mov dword [esp + 0x50], ecx
lea ecx, [esp + 0x44]
push ecx
push eax
push 0x133c
push dword [edi]
mov dword [esp + 0x64], 0x3ff
call esi
mov ecx, dword [ebp + 8]
push 1
push 0
push 0xffffffffffffffff
test eax, eax
je 0x46444d
push dword [esp + 0x5c]
call fcn.00475930
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test bl, bl
jne 0x464c24
mov ecx, dword [edi]
call fcn.00456570
mov ecx, dword [ebp + 8]
test eax, eax
je 0x464447
push eax
call fcn.00475c90
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test bl, bl
jne 0x464c24
push dword [edi]
call dword [sym.imp.USER32.dll_GetWindowTextLengthW]
mov esi, dword [ebp + 8]
mov ecx, esi
push 1
push 0
push eax
push 0
mov dword [esp + 0x2c], eax
call fcn.00475930
cmp eax, 1
je 0x464a18
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [esi + 0x17], 0
jne 0x464a23
mov ebx, dword [esi + 0xc]
jmp 0x464a25
mov ebx, esi
test byte [ebx + 0x15], 8
je 0x464a32
mov ecx, ebx
call fcn.00401b40
mov al, byte [ebx + 0x17]
cmp al, 1
jne 0x464a4a
test byte [ebx + 0x15], 4
je 0x464a45
push ebx
call fcn.0042db20
mov ecx, dword [ebx + 8]
jmp 0x464a9a
cmp al, 2
jne 0x464a95
mov ecx, dword [0x4d3e90]
test ecx, ecx
jne 0x464a9a
push 0xd
call dword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
jne 0x464a7d
push 0xf
call dword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
mov ecx, 0x4ac220
mov eax, 0x4ac22c
cmove ecx, eax
jmp 0x464a9a
push 0
call fcn.004053d0
cmp eax, 0xffffffff
mov ecx, 0x4ac22c
cmovne ecx, dword [0x4d3e8c]
jmp 0x464a9a
mov ecx, 0x4d3e58
mov eax, dword [esp + 0x1c]
inc eax
push eax
push ecx
push dword [edi]
call dword [sym.imp.USER32.dll_GetWindowTextW]
cmp byte [esi + 0x17], 0
mov ecx, eax
mov dword [esp + 0x1c], ecx
jne 0x464aba
mov ebx, dword [esi + 0xc]
jmp 0x464abc
mov ebx, esi
cmp byte [ebx + 0x17], 1
jne 0x464ad8
test byte [ebx + 0x15], 8
je 0x464ad3
mov ecx, ebx
call fcn.00401b40
mov ecx, dword [esp + 0x1c]
add ebx, 0xc
jmp 0x464add
mov ebx, 0x4d5644
lea eax, [ecx + ecx]
mov dword [ebx], eax
test ecx, ecx
jne 0x464b88
cmp byte [esi + 0x17], cl
jne 0x464af4
mov edi, dword [esi + 0xc]
jmp 0x464af6
mov edi, esi
test byte [edi + 0x15], 8
je 0x464b03
mov ecx, edi
call fcn.00401b40
mov al, byte [edi + 0x17]
cmp al, 1
jne 0x464b23
test byte [edi + 0x15], 4
je 0x464b16
push edi
call fcn.0042db20
mov ecx, dword [edi + 8]
xor eax, eax
mov word [ecx], ax
jmp 0x464c04
cmp al, 2
jne 0x464b7c
mov ecx, dword [0x4d3e90]
test ecx, ecx
jne 0x464b81
mov ebx, dword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
push 0xd
call ebx
test eax, eax
jne 0x464b5c
push 0xf
call ebx
test eax, eax
mov ecx, 0x4ac220
mov eax, 0x4ac22c
cmove ecx, eax
xor eax, eax
mov word [ecx], ax
jmp 0x464c04
push 0
call fcn.004053d0
cmp eax, 0xffffffff
mov ecx, 0x4ac22c
cmovne ecx, dword [0x4d3e8c]
xor eax, eax
mov word [ecx], ax
jmp 0x464c04
mov ecx, 0x4d3e58
xor eax, eax
mov word [ecx], ax
jmp 0x464c04
cmp byte [edi + 4], 0xc
jne 0x464c04
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 1
push 0x4c6ab4
push 0
push 1
mov ecx, esi
call fcn.00401c20
mov edx, 0x4c6034
mov ecx, eax
call fcn.004734a0
add esp, 0x18
mov ecx, esi
push 0
push 1
call fcn.00401c20
mov edi, eax
lea eax, [edi + 2]
mov cx, word [edi]
add edi, 2
test cx, cx
jne 0x464bc7
sub edi, eax
sar edi, 1
cmp byte [esi + 0x17], cl
jne 0x464be0
mov ebx, dword [esi + 0xc]
jmp 0x464be2
mov ebx, esi
cmp byte [ebx + 0x17], 1
jne 0x464bfa
test byte [ebx + 0x15], 8
je 0x464bf5
mov ecx, ebx
call fcn.00401b40
add ebx, 0xc
jmp 0x464bff
mov ebx, 0x4d5644
lea eax, [edi + edi]
mov dword [ebx], eax
cmp byte [esi + 0x17], 0
jne 0x464c0d
mov esi, dword [esi + 0xc]
cmp byte [esi + 0x17], 2
jne 0x464c20
cmp dword [0x4d3e90], 0
jne 0x46490c
and byte [esi + 0x15], 0x86
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 0xc