Function at 0x100116a0
Capabilities:
Get graphical window text

Disassembly:
push 0xffffffffffffffff
push 0x10048018
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x20
push ebx
push ebp
call fcn.1003a972
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
add eax, 0x10
mov dword [esp + 0x10], eax
mov ebp, dword [esp + 0x38]
lea eax, [esp + 0x10]
push eax
xor ebx, ebx
push 0x412
mov ecx, ebp
mov dword [esp + 0x38], ebx
call fcn.1003e858
mov ecx, dword [ebp + 0x8c]
push ebx
push ebx
push 0x1009
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp dword [0x10086834], ebx
je 0x10011f91
mov edx, dword [esp + 0x10]
push esi
push edi
push 0x10052d48
push edx
call fcn.10027f16
add esp, 8
test eax, eax
jne 0x1001198f
mov eax, dword [0x10086834]
lea esi, [esp + 0x1c]
mov dword [esp + 0x14], eax
call fcn.10014740
push ebx
push ebx
push ebx
push ebx
mov byte [esp + 0x48], 1
mov eax, dword [eax]
push eax
push ebx
lea edi, [ebp + 0x70]
push 3
mov ecx, edi
call fcn.10039940
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011771
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x1c]
call fcn.10014660
mov byte [esp + 0x38], 2
mov eax, dword [eax]
push eax
push 1
push ebx
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100117b2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
add eax, 0x2c
lea esi, [esp + 0x1c]
call fcn.100145a0
mov byte [esp + 0x38], 3
mov eax, dword [eax]
push eax
push 2
push ebx
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100117f6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x1c]
add eax, 0x2c
call fcn.100145e0
mov byte [esp + 0x38], 4
mov eax, dword [eax]
push eax
push 3
push ebx
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x1001183a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x54]
cmp eax, ebx
mov dword [esp + 0x14], eax
je 0x10011f8f
jmp 0x10011853
mov ebp, dword [esp + 0x40]
mov ecx, dword [ebp + 0x8c]
push ebx
push ebx
push 0x1004
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov ebp, eax
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x1c]
call fcn.10014740
push ebx
push ebx
push ebx
push ebx
mov byte [esp + 0x48], 5
mov eax, dword [eax]
push eax
push ebp
push 3
mov ecx, edi
call fcn.10039940
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x100118ae
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x20]
call fcn.10014660
mov byte [esp + 0x38], 6
mov eax, dword [eax]
push eax
push 1
push ebp
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100118ef
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
add eax, 0x2c
lea esi, [esp + 0x24]
call fcn.100145a0
mov byte [esp + 0x38], 7
mov eax, dword [eax]
push eax
push 2
push ebp
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011933
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x28]
add eax, 0x2c
call fcn.100145e0
mov byte [esp + 0x38], 8
mov eax, dword [eax]
push eax
push 3
push ebp
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011977
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x54]
cmp eax, ebx
mov dword [esp + 0x14], eax
jne 0x1001184f
jmp 0x10011f8f
mov ecx, dword [esp + 0x18]
push 0x10053234
push ecx
call fcn.10027f16
mov edi, dword [0x10086834]
add esp, 8
test eax, eax
mov dword [esp + 0x14], edi
jne 0x10011c84
push edi
mov ecx, 0x1008683c
call fcn.10015600
test al, al
je 0x10011ad9
lea esi, [esp + 0x28]
mov eax, edi
call fcn.10014740
push ebx
push ebx
push ebx
push ebx
mov byte [esp + 0x48], 9
mov eax, dword [eax]
push eax
push ebx
lea edi, [ebp + 0x70]
push 3
mov ecx, edi
call fcn.10039940
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10011a0c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x28]
call fcn.10014660
mov byte [esp + 0x38], 0xa
mov eax, dword [eax]
push eax
push 1
push ebx
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011a4d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
add eax, 0x2c
lea esi, [esp + 0x28]
call fcn.100145a0
mov byte [esp + 0x38], 0xb
mov eax, dword [eax]
push eax
push 2
push ebx
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011a91
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x28]
add eax, 0x2c
call fcn.100145e0
mov byte [esp + 0x38], 0xc
mov eax, dword [eax]
push eax
push 3
push ebx
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011ad5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov edi, dword [esp + 0x14]
mov edi, dword [edi + 0x54]
cmp edi, ebx
mov dword [esp + 0x14], edi
je 0x10011f8f
jmp 0x10011af0
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x28]
call fcn.10014680
mov eax, dword [eax]
push 0x10050508
push eax
call fcn.10027f16
mov edx, dword [esp + 0x30]
add esp, 8
neg eax
sbb al, al
inc al
add edx, 0xfffffff0
mov byte [esp + 0x13], al
lea ecx, [edx + 0xc]
or esi, 0xffffffff
lock xadd dword [ecx], esi
dec esi
test esi, esi
jg 0x10011b39
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov al, byte [esp + 0x13]
cmp al, bl
je 0x10011c6c
mov ecx, dword [ebp + 0x8c]
push ebx
push ebx
push 0x1004
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov edi, eax
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x24]
call fcn.10014740
push ebx
push ebx
push ebx
push ebx
mov byte [esp + 0x48], 0xd
mov eax, dword [eax]
push eax
push edi
add ebp, 0x70
push 3
mov ecx, ebp
call fcn.10039940
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10011b9f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x20]
call fcn.10014660
mov byte [esp + 0x38], 0xe
mov eax, dword [eax]
push eax
push 1
push edi
mov ecx, ebp
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011be0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
add eax, 0x2c
lea esi, [esp + 0x1c]
call fcn.100145a0
mov byte [esp + 0x38], 0xf
mov eax, dword [eax]
push eax
push 2
push edi
mov ecx, ebp
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011c24
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x2c]
add eax, 0x2c
call fcn.100145e0
mov byte [esp + 0x38], 0x10
mov eax, dword [eax]
push eax
push 3
push edi
mov ecx, ebp
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011c68
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov ebp, dword [esp + 0x40]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x54]
cmp eax, ebx
mov dword [esp + 0x14], eax
jne 0x10011af0
jmp 0x10011f8f
lea esi, [esp + 0x2c]
mov eax, edi
call fcn.10014680
mov ecx, dword [esp + 0x18]
mov eax, dword [eax]
push ecx
push eax
call fcn.10027f16
mov edx, dword [esp + 0x34]
add esp, 8
neg eax
sbb al, al
inc al
add edx, 0xfffffff0
mov byte [esp + 0x13], al
lea ecx, [edx + 0xc]
or esi, 0xffffffff
lock xadd dword [ecx], esi
dec esi
test esi, esi
jg 0x10011ccb
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov al, byte [esp + 0x13]
cmp al, bl
je 0x10011de6
lea esi, [esp + 0x2c]
mov eax, edi
call fcn.10014740
push ebx
push ebx
push ebx
push ebx
mov byte [esp + 0x48], 0x11
mov eax, dword [eax]
push eax
push ebx
lea edi, [ebp + 0x70]
push 3
mov ecx, edi
call fcn.10039940
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011d19
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x2c]
call fcn.10014660
mov byte [esp + 0x38], 0x12
mov eax, dword [eax]
push eax
push 1
push ebx
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011d5a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
add eax, 0x2c
lea esi, [esp + 0x2c]
call fcn.100145a0
mov byte [esp + 0x38], 0x13
mov eax, dword [eax]
push eax
push 2
push ebx
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011d9e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x2c]
add eax, 0x2c
call fcn.100145e0
mov byte [esp + 0x38], 0x14
mov eax, dword [eax]
push eax
push 3
push ebx
mov ecx, edi
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011de2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov edi, dword [esp + 0x14]
mov edi, dword [edi + 0x54]
cmp edi, ebx
mov dword [esp + 0x14], edi
je 0x10011f8f
jmp 0x10011e00
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x2c]
call fcn.10014680
mov ecx, dword [esp + 0x18]
mov eax, dword [eax]
push ecx
push eax
call fcn.10027f16
mov edx, dword [esp + 0x34]
add esp, 8
neg eax
sbb al, al
inc al
add edx, 0xfffffff0
mov byte [esp + 0x13], al
lea ecx, [edx + 0xc]
or esi, 0xffffffff
lock xadd dword [ecx], esi
dec esi
test esi, esi
jg 0x10011e49
mov ecx, dword [edx]
mov eax, dword [ecx]
push edx
call dword [eax + 4]
mov al, byte [esp + 0x13]
cmp al, bl
je 0x10011f7c
mov ecx, dword [ebp + 0x8c]
push ebx
push ebx
push 0x1004
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov edi, eax
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x28]
call fcn.10014740
push ebx
push ebx
push ebx
push ebx
mov byte [esp + 0x48], 0x15
mov eax, dword [eax]
push eax
push edi
add ebp, 0x70
push 3
mov ecx, ebp
call fcn.10039940
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x28]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x10011eaf
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x24]
call fcn.10014660
mov byte [esp + 0x38], 0x16
mov eax, dword [eax]
push eax
push 1
push edi
mov ecx, ebp
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011ef0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
add eax, 0x2c
lea esi, [esp + 0x20]
call fcn.100145a0
mov byte [esp + 0x38], 0x17
mov eax, dword [eax]
push eax
push 2
push edi
mov ecx, ebp
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011f34
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x14]
lea esi, [esp + 0x1c]
add eax, 0x2c
call fcn.100145e0
mov byte [esp + 0x38], 0x18
mov eax, dword [eax]
push eax
push 3
push edi
mov ecx, ebp
call fcn.10039735
mov byte [esp + 0x38], bl
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x10011f78
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov ebp, dword [esp + 0x40]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x54]
cmp eax, ebx
mov dword [esp + 0x14], eax
jne 0x10011e00
pop edi
pop esi
mov dword [esp + 0x30], 0xffffffff
mov eax, dword [esp + 0x10]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
pop ebp
pop ebx
jg 0x10011fb9
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov ecx, dword [esp + 0x20]
mov dword fs:[0], ecx
add esp, 0x2c
ret 4