Function at 0x43b540
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x21c
mov eax, dword [0x4e4018]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [ebp + 0x1c], 0
mov edx, dword [ebp + 0x14]
push ebx
push esi
push edi
mov edi, dword [ebp + 0x18]
mov esi, ecx
jne 0x43bb8b
mov eax, dword [ebp + 0xc]
cmp eax, 0x111
jne 0x43b5a2
movzx eax, word [ebp + 0x10]
lea ecx, [esi - 0x130]
mov dword [ebp - 0x214], eax
lea edx, [ebp - 0x214]
mov eax, dword [ecx]
push edx
push 0x1fb
mov dword [ebp - 0x210], 1
call dword [eax + 0x28]
jmp 0x43bad2
cmp eax, 0x102
jne 0x43b63a
mov eax, dword [ebp + 0x10]
lea ecx, [ebp - 0x21c]
mov dword [ebp - 0x214], eax
lea eax, [ebp - 0x214]
mov dword [ebp - 0x21c], eax
mov eax, dword [esi - 0x130]
push ecx
push 0x1f4
lea ecx, [esi - 0x130]
mov dword [ebp - 0x218], 0
call dword [eax + 0x28]
mov eax, dword [ebp - 0x218]
push 0xfffffffffffffff0
push dword [esi + 4]
mov dword [ebp - 0x210], eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
test al, 4
mov ecx, 1
mov eax, dword [ebp - 0x210]
jne 0x43b617
cmp dword [ebp - 0x214], 0xd
cmove eax, ecx
mov dword [edi], 0
test eax, eax
je 0x43bb8b
pop edi
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0048782e
mov esp, ebp
pop ebp
ret 0x18
cmp eax, 8
jne 0x43b6e2
push dword [esi + 4]
add esi, 0xfffffed0
mov dword [ebp - 0x210], 1
mov dword [esi + 0x154], 0
call dword [sym.imp.USER32.dll_GetWindowTextLengthW]
test eax, eax
jne 0x43b686
push dword [esi + 0x160]
mov dword [esi + 0x15c], 1
push dword [esi + 0x134]
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov eax, dword [esi + 0x180]
test eax, eax
je 0x43b6d3
cmp eax, dword [esi + 0x17c]
je 0x43b6d3
mov ecx, dword [esi + 0x188]
mov dword [esi + 0x17c], eax
test ecx, ecx
je 0x43b6b5
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [esi + 0x17c]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov ecx, dword [esi + 0x40]
push dword [esi + 0x194]
mov dword [esi + 0x188], eax
mov eax, dword [ecx]
call dword [eax + 0xa4]
mov eax, dword [esi]
mov ecx, esi
push esi
push 0x1f5
jmp 0x43bb82
cmp eax, 7
jne 0x43b7d2
add esi, 0xfffffed0
mov dword [ebp - 0x210], 1
push 0x104
lea eax, [ebp - 0x20c]
push eax
push dword [esi + 0x134]
mov dword [esi + 0x154], 1
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov eax, dword [esi + 0x160]
lea ecx, [ebp - 0x20c]
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x43b756
test dx, dx
je 0x43b752
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x43b756
add eax, 4
add ecx, 4
test dx, dx
jne 0x43b730
xor eax, eax
jmp 0x43b75b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x43b776
push 0x4c8cd8
push dword [esi + 0x134]
mov dword [esi + 0x15c], eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov eax, dword [esi + 0x184]
test eax, eax
je 0x43b7c3
cmp dword [esi + 0x17c], eax
je 0x43b7c3
mov ecx, dword [esi + 0x188]
mov dword [esi + 0x17c], eax
test ecx, ecx
je 0x43b7a5
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [esi + 0x17c]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov ecx, dword [esi + 0x40]
push dword [esi + 0x198]
mov dword [esi + 0x188], eax
mov eax, dword [ecx]
call dword [eax + 0xa4]
mov eax, dword [esi]
mov ecx, esi
push esi
push 0x1fc
jmp 0x43bb82
cmp eax, 0x20a
jne 0x43b830
push 0xfffffffffffffff0
push dword [esi + 4]
mov dword [ebp - 0x210], 1
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ebx, dword [ebp + 0x10]
test al, 4
je 0x43b816
mov ecx, dword [esi + 4]
mov eax, ebx
shr eax, 0x10
push 0
test ax, ax
jle 0x43b808
push 0
jmp 0x43b80a
push 1
push 0xb5
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi - 0x130]
lea ecx, [esi - 0x130]
push ebx
push 0x1f8
call dword [eax + 0x28]
jmp 0x43bad2
cmp eax, 0x200
jne 0x43b8a0
mov eax, dword [esi + 0x54]
add esi, 0xfffffed0
mov dword [ebp - 0x210], 1
test eax, eax
je 0x43b891
cmp dword [esi + 0x17c], eax
je 0x43b891
mov ecx, dword [esi + 0x188]
mov dword [esi + 0x17c], eax
test ecx, ecx
je 0x43b873
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [esi + 0x17c]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov ecx, dword [esi + 0x40]
push dword [esi + 0x198]
mov dword [esi + 0x188], eax
mov eax, dword [ecx]
call dword [eax + 0xa4]
mov eax, dword [esi]
mov ecx, esi
push esi
push 0x1fd
jmp 0x43bb82
cmp eax, 0x2a1
jne 0x43b8cb
mov eax, dword [esi + 0x60]
mov dword [esi + 0x58], eax
mov dword [edi], 0
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0048782e
mov esp, ebp
pop ebp
ret 0x18
cmp eax, 0x2a3
jne 0x43b905
mov eax, dword [esi - 0x130]
lea ecx, [esi - 0x130]
lea esi, [ebp - 0x210]
mov dword [ebp - 0x210], 1
push esi
push edx
push dword [ebp + 0x10]
push 0x2a3
call dword [eax + 0xf0]
mov dword [edi], eax
jmp 0x43bad8
cmp eax, 0x2133
jne 0x43b956
cmp dword [esi + 0x2c], 0
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x210], 1
je 0x43b924
push dword [esi + 0x48]
jmp 0x43b927
push dword [esi + 0x44]
push ebx
call dword [sym.imp.GDI32.dll_SetTextColor]
push dword [esi + 0x4c]
push ebx
call dword [sym.imp.GDI32.dll_SetBkColor]
push 1
push ebx
call dword [sym.imp.GDI32.dll_SetBkMode]
mov eax, dword [esi + 0x58]
test eax, eax
jne 0x43b94f
push eax
call dword [sym.imp.GDI32.dll_GetStockObject]
mov dword [edi], eax
jmp 0x43bad8
cmp eax, 0x2138
jne 0x43b975
cmp dword [esi + 0x2c], 0
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x210], 1
je 0x43b924
push dword [esi + 0x48]
jmp 0x43b927
cmp eax, 0x100
jne 0x43b9f4
mov eax, dword [ebp + 0x10]
lea ecx, [ebp - 0x214]
mov dword [ebp - 0x214], eax
mov eax, dword [esi - 0x130]
push ecx
push 0x1f7
lea ecx, [esi - 0x130]
mov dword [ebp - 0x210], 1
call dword [eax + 0x28]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x38]
sub edx, ecx
mov esi, dword [ebp - 0x214]
sar edx, 2
test edx, edx
jle 0x43b9cd
xor eax, eax
cmp esi, dword [ecx]
je 0x43b9e1
inc eax
add ecx, 4
cmp eax, edx
jl 0x43b9c1
xor eax, eax
mov dword [edi], 0
test esi, esi
sete al
test eax, eax
jmp 0x43badf
mov eax, dword [ebp - 0x210]
test eax, eax
mov dword [edi], 0
jmp 0x43badf
cmp eax, 0x101
jne 0x43ba2a
mov eax, dword [ebp + 0x10]
lea ecx, [esi - 0x130]
mov dword [ebp - 0x214], eax
lea edx, [ebp - 0x214]
mov eax, dword [ecx]
push edx
push 0x1fa
mov dword [ebp - 0x210], 1
call dword [eax + 0x28]
jmp 0x43bad2
cmp eax, 0x104
jne 0x43baa1
mov eax, dword [ebp + 0x10]
lea ecx, [ebp - 0x214]
mov dword [ebp - 0x214], eax
mov eax, dword [esi - 0x130]
push ecx
push 0x1f7
lea ecx, [esi - 0x130]
mov dword [ebp - 0x210], 1
call dword [eax + 0x28]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x38]
sub edx, ecx
mov esi, dword [ebp - 0x214]
sar edx, 2
test edx, edx
jle 0x43b9cd
xor eax, eax
nop word [eax + eax]
cmp esi, dword [ecx]
je 0x43b9e1
inc eax
add ecx, 4
cmp eax, edx
jl 0x43ba80
xor eax, eax
mov dword [edi], 0
test esi, esi
sete al
test eax, eax
jmp 0x43badf
cmp eax, 0x105
jne 0x43baff
mov eax, dword [ebp + 0x10]
lea ecx, [esi - 0x130]
mov edx, dword [ecx]
mov dword [ebp - 0x214], eax
lea eax, [ebp - 0x214]
push eax
push 0x1fa
mov dword [ebp - 0x210], 1
call dword [edx + 0x28]
mov dword [edi], 0
cmp dword [ebp - 0x210], 0
je 0x43bb8b
pop edi
mov ecx, 1
pop esi
mov eax, ecx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0048782e
mov esp, ebp
pop ebp
ret 0x18
cmp eax, 0x14
je 0x43b8ad
cmp eax, 0x2111
jne 0x43bb8b
mov eax, dword [ebp + 0x10]
mov ecx, 0x300
shr eax, 0x10
cmp cx, ax
jne 0x43bb5b
mov eax, dword [esi - 0x130]
lea ecx, [esi - 0x130]
push 1
push 0
mov dword [ebp - 0x210], 1
call dword [eax + 0x13c]
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [esi - 0x130]
lea ecx, [esi - 0x130]
push 0
push 0x1f6
jmp 0x43bb82
mov ecx, 0x400
cmp cx, ax
jne 0x43bb8b
mov eax, dword [esi - 0x130]
lea ecx, [esi - 0x130]
push 0
mov dword [ebp - 0x210], 1
push 0x1f9
call dword [eax + 0x28]
mov dword [edi], 0
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0048782e
mov esp, ebp
pop ebp
ret 0x18