Function at 0x43d180
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x60fb40
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xfd4
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x10], esp
mov esi, ecx
push ebx
mov dword [ebp - 0x40], esi
mov dword [ebp - 4], ebx
call fcn.005f9f56
mov eax, dword [esi + 0x90]
cmp eax, ebx
jne 0x43d1c4
lea eax, [esi + 0x94]
push eax
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], ebx
mov word [ebp - 0x18], bx
call fcn.004023e0
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 1
cmp eax, ebx
jne 0x43d1e5
lea eax, [ebp - 0x18]
push 0x3a
push eax
call fcn.005de61b
mov edi, eax
add esp, 8
cmp edi, ebx
je 0x43d31d
add edi, 2
push 0x3a
push edi
call fcn.005de61b
add esp, 8
test eax, eax
je 0x43d31d
push edi
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov word [ebp - 0x2c], bx
call fcn.004023e0
mov esi, dword [ebp - 0x30]
mov byte [ebp - 4], 2
cmp esi, ebx
je 0x43d24e
push esi
call fcn.005de123
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d24e
cmp word [esi], 0x3a
jne 0x43d249
mov word [esi], 0x2d
add esi, 2
jmp 0x43d23a
mov word [edi], bx
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
jne 0x43d25b
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x38], bx
call fcn.004023e0
mov edi, dword [ebp - 0x30]
mov byte [ebp - 4], 3
cmp edi, ebx
jne 0x43d280
lea edi, [ebp - 0x2c]
cmp edi, ebx
je 0x43d2f9
push edi
call fcn.005de123
add esp, 4
test eax, eax
je 0x43d2f9
mov eax, dword [ebp - 0x3c]
cmp eax, ebx
je 0x43d2a1
push eax
call fcn.005de123
add esp, 4
mov esi, eax
jmp 0x43d2a3
xor esi, esi
push edi
call fcn.005de123
add eax, esi
lea eax, [eax + eax + 2]
push eax
call fcn.005f6c5c
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x43d2f9
mov eax, dword [ebp - 0x3c]
cmp eax, ebx
je 0x43d2d8
push eax
push esi
call fcn.005de2e9
push edi
push esi
call fcn.005de2bf
add esp, 0x10
jmp 0x43d2e2
push edi
push esi
call fcn.005de2e9
add esp, 8
lea ecx, [ebp - 0x3c]
call fcn.00401070
push esi
mov dword [ebp - 0x3c], esi
call fcn.005de123
add esp, 4
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x3c]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.004023e0
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 2
call fcn.00401070
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00401070
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43d44f
push eax
mov esi, eax
call fcn.005de123
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d34a
cmp word [esi], 0x2a
jne 0x43d345
mov word [esi], 0x2d
add esi, 2
jmp 0x43d336
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43d44f
push eax
mov esi, eax
call fcn.005de123
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d377
cmp word [esi], 0x3f
jne 0x43d372
mov word [esi], 0x2d
add esi, 2
jmp 0x43d363
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43d44f
push eax
mov esi, eax
call fcn.005de123
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d3a4
cmp word [esi], 0x7c
jne 0x43d39f
mov word [esi], 0x2d
add esi, 2
jmp 0x43d390
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43d44f
push eax
mov esi, eax
call fcn.005de123
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d3d1
cmp word [esi], 0x3c
jne 0x43d3cc
mov word [esi], 0x2d
add esi, 2
jmp 0x43d3bd
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43d44f
push eax
mov esi, eax
call fcn.005de123
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d3fa
cmp word [esi], 0x3e
jne 0x43d3f5
mov word [esi], 0x2d
add esi, 2
jmp 0x43d3e6
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43d44f
push eax
mov esi, eax
call fcn.005de123
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d423
cmp word [esi], 0x22
jne 0x43d41e
mov word [esi], 0x27
add esi, 2
jmp 0x43d40f
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43d44f
push eax
mov esi, eax
call fcn.005de123
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d44c
cmp word [esi], 0x2f
jne 0x43d447
mov word [esi], 0x5c
add esi, 2
jmp 0x43d438
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43d456
lea eax, [ebp - 0x18]
push 0x6bffc4
push eax
call fcn.005de985
add esp, 8
test eax, eax
je 0x43d63e
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x43d453
mov edx, 0x6bffc4
test edx, edx
je 0x43d44f
mov ecx, 0x6bc14c
test ecx, ecx
je 0x43d44f
push ecx
push edx
call fcn.005de644
add esp, 8
test eax, eax
je 0x43d44c
mov edx, dword [ebp - 0x1c]
push 0x6bffc4
push edx
call fcn.005de985
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x43d4cc
push 0x6bffc4
inc edi
call fcn.005de123
lea eax, [esi + eax*2]
push 0x6bffc4
push eax
call fcn.005de985
add esp, 0xc
mov esi, eax
jmp 0x43d4a8
test edi, edi
je 0x43d44c
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
push eax
call fcn.0040e020
push 0x6bc14c
mov byte [ebp - 4], 4
call fcn.005de123
push 0x6bffc4
mov esi, eax
call fcn.005de123
add esp, 8
cmp esi, eax
jbe 0x43d55d
lea ecx, [ebp - 0x1c]
call fcn.00401070
mov esi, dword [ebp - 0x30]
test esi, esi
jne 0x43d513
lea esi, [ebp - 0x2c]
push 0x6bc14c
call fcn.005de123
push 0x6bffc4
mov ebx, eax
call fcn.005de123
sub ebx, eax
push esi
imul ebx, edi
call fcn.005de123
add ebx, eax
lea ecx, [ebx + ebx + 2]
push ecx
call fcn.005f6c5c
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x1c], ebx
jne 0x43d560
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00401070
jmp 0x43d44c
mov ebx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
call fcn.004023d0
push 0x6bffc4
push eax
mov dword [ebp - 0x20], eax
call fcn.005de985
add esp, 8
test eax, eax
mov dword [ebp - 0x24], eax
je 0x43d5f0
mov esi, dword [ebp - 0x20]
mov edi, ebx
sub eax, esi
push 0x6bc14c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005de123
mov ecx, eax
mov esi, 0x6bc14c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6bc14c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005de123
push 0x6bffc4
lea ebx, [ebx + eax*2]
call fcn.005de123
mov ecx, dword [ebp - 0x24]
push 0x6bffc4
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x20], eax
call fcn.005de985
add esp, 0x14
jmp 0x43d579
mov esi, dword [ebp - 0x20]
push esi
call fcn.005de123
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x20]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005de123
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.005de123
add esp, 0xc
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 1
call fcn.00401070
jmp 0x43d44c
mov eax, dword [0x6ec784]
test eax, eax
jne 0x43d8d8
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43d655
lea eax, [ebp - 0x18]
push 0x202a
push eax
call fcn.005de61b
add esp, 8
test eax, eax
jne 0x43d687
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43d671
lea eax, [ebp - 0x18]
push 0x202d
push eax
call fcn.005de61b
add esp, 8
test eax, eax
je 0x43d87c
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x43d858
mov edx, 0x6bffc0
test edx, edx
je 0x43d858
mov eax, 0x6ec0cc
test eax, eax
je 0x43d858
push eax
push edx
call fcn.005de644
add esp, 8
test eax, eax
je 0x43d858
mov ecx, dword [ebp - 0x1c]
push 0x6bffc0
push ecx
call fcn.005de985
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x43d6f7
push 0x6bffc0
inc edi
call fcn.005de123
lea esi, [esi + eax*2]
push 0x6bffc0
push esi
call fcn.005de985
add esp, 0xc
mov esi, eax
jmp 0x43d6d3
test edi, edi
je 0x43d858
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
push edx
call fcn.0040e020
push 0x6bffc0
mov byte [ebp - 4], 5
call fcn.005de123
push 0x6ec0cc
mov esi, eax
call fcn.005de123
add esp, 8
cmp eax, esi
jbe 0x43d77c
lea ecx, [ebp - 0x1c]
call fcn.00401070
lea ecx, [ebp - 0x30]
call fcn.004023d0
push eax
call fcn.005de123
push 0x6bffc0
mov esi, eax
call fcn.005de123
push 0x6ec0cc
mov ebx, eax
call fcn.005de123
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005f6c5c
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x1c], ebx
jne 0x43d77f
jmp 0x43d84c
mov ebx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
call fcn.004023d0
push 0x6bffc0
push eax
mov dword [ebp - 0x24], eax
call fcn.005de985
add esp, 8
test eax, eax
mov dword [ebp - 0x20], eax
je 0x43d80f
mov esi, dword [ebp - 0x24]
mov edi, ebx
sub eax, esi
push 0x6ec0cc
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005de123
mov ecx, eax
mov esi, 0x6ec0cc
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6ec0cc
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005de123
push 0x6bffc0
lea ebx, [ebx + eax*2]
call fcn.005de123
mov ecx, dword [ebp - 0x20]
push 0x6bffc0
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x24], eax
call fcn.005de985
add esp, 0x14
jmp 0x43d798
mov esi, dword [ebp - 0x24]
push esi
call fcn.005de123
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x24]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005de123
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.005de123
add esp, 0xc
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00401070
push 0x6ec0cc
push 0x6bffbc
lea ecx, [ebp - 0x1c]
call fcn.0043dbb0
push 0x6ec0cc
push 0x6bffb8
lea ecx, [ebp - 0x1c]
call fcn.0043dbb0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43d886
lea eax, [ebp - 0x18]
push 0x200e
push eax
call fcn.005de61b
add esp, 8
test eax, eax
je 0x43d8aa
push 0x6ec0cc
push 0x6bffb4
lea ecx, [ebp - 0x1c]
call fcn.0043dbb0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43d8b4
lea eax, [ebp - 0x18]
push 0x200f
push eax
call fcn.005de61b
add esp, 8
test eax, eax
je 0x43d8d8
push 0x6ec0cc
push 0x6bffb0
lea ecx, [ebp - 0x1c]
call fcn.0043dbb0
mov esi, dword [ebp - 0x40]
lea edx, [ebp - 0x1c]
push 0
push edx
mov eax, dword [esi + 0x70]
mov ecx, dword [esi + 0x68]
push eax
call fcn.00487f60
cmp eax, 2
jne 0x43d916
mov byte [esi + 0x51c], 1
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0
call fcn.00401070
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x70]
mov edx, dword [ecx + 0x480]
mov eax, dword [ecx + 0x484]
or edx, eax
je 0x43d950
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43d933
lea eax, [ebp - 0x18]
push eax
call fcn.005a8f60
cmp eax, 2
jne 0x43d950
push 5
mov ecx, esi
call fcn.005f9f56
mov byte [esi + 0x51e], 1
jmp 0x43d8f9
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43d95a
lea eax, [ebp - 0x18]
mov ecx, dword [esi + 0x70]
push eax
call fcn.005a9330
mov eax, dword [esi + 0x534]
push 0x7d0
test eax, eax
je 0x43da27
mov ecx, dword [esi + 0x524]
lea eax, [ebp - 0xfe0]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
je 0x43da1b
mov edx, dword [0x6e7b6c]
mov dword [ebp - 0x20], edx
mov ebx, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push 0
push 0
push 0
push 0
lea eax, [ebp - 0xfe0]
push 0xffffffffffffffff
push eax
push 0
push 0xfde9
mov byte [ebp - 4], 6
call ebx
mov edi, eax
test edi, edi
jle 0x43d9f9
push edi
lea ecx, [ebp - 0x20]
call fcn.005fac26
push 0
push 0
push edi
push eax
lea ecx, [ebp - 0xfe0]
push 0xffffffffffffffff
push ecx
push 0
push 0xfde9
call ebx
mov edx, dword [esi + 0x70]
mov byte [edx + 0x326], 1
mov eax, dword [ebp - 0x20]
mov ecx, dword [esi + 0x70]
push eax
jmp 0x43da08
mov ecx, dword [esi + 0x70]
mov eax, dword [ecx + 0x60]
test eax, eax
je 0x43da0d
push 0x6ec0c8
call fcn.005a21a0
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 1
call fcn.005fa859
jmp 0x43da5f
mov ecx, dword [esi + 0x70]
mov eax, dword [ecx + 0x60]
test eax, eax
je 0x43da5f
jmp 0x43da55
mov edx, dword [esi + 0x524]
lea ecx, [ebp - 0x810]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowTextA]
test eax, eax
je 0x43da4b
mov ecx, dword [esi + 0x70]
lea eax, [ebp - 0x810]
push eax
jmp 0x43da5a
mov ecx, dword [esi + 0x70]
mov eax, dword [ecx + 0x60]
test eax, eax
je 0x43da5f
push 0x6ec0c8
call fcn.005a21a0
mov ecx, dword [esi + 0x70]
mov eax, dword [ecx + 0x8cc]
test eax, eax
je 0x43da87
cmp eax, 3
je 0x43da87
mov edx, dword [esi + 0x6c]
push 0
push 0x2721
push 0x111
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [esi + 0x70]
mov ecx, dword [eax + 0x43c]
test ecx, ecx
je 0x43dab2
mov al, byte [ecx + 8]
test al, al
je 0x43dab2
test ecx, ecx
je 0x43daa5
mov edx, dword [ecx]
push 1
call dword [edx]
mov eax, dword [esi + 0x70]
mov dword [eax + 0x43c], 0
mov ecx, dword [esi + 0x70]
mov edx, dword [ecx + 0x2fc]
push edx
call fcn.005a2330
mov ecx, esi
call fcn.0043fe50
mov eax, dword [esi + 0x70]
mov ecx, dword [eax + 0x478]
push ecx
lea ecx, [eax + 0x20]
call fcn.005b9210
mov ecx, dword [esi + 0x70]
push 0
call fcn.005abc80
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x43db24
mov edx, dword [esi + 0x70]
push 1
push 1
push edx
call fcn.004b3610
mov eax, dword [esi + 0x6c]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x43db24
mov ecx, dword [esi + 0x70]
mov eax, dword [esi + 0x6c]
mov edx, dword [ecx + 0x478]
push edx
push 0x144d
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov ecx, dword [0x6ec8e0]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x43db56
mov edx, dword [esi + 0x70]
mov ecx, dword [0x6ec8e0]
mov eax, dword [edx + 0x478]
push eax
push 0x1395
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
push 1
mov ecx, esi
call fcn.0043ddd0
mov eax, dword [esi + 0x60]
push 0
test eax, eax
je 0x43db7e
mov edx, dword [esi + 0x1c]
push 0xc8
push 1
push edx
call dword [sym.imp.USER32.dll_SetTimer]
jmp 0x43d8f9
mov ecx, esi
call fcn.005f69b6
jmp 0x43d8f9