Function at 0x43d790
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x617da0
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.006021da
mov eax, dword [esi + 0x90]
cmp eax, ebx
jne 0x43d7d4
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.00402410
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 1
cmp eax, ebx
jne 0x43d7f5
lea eax, [ebp - 0x18]
push 0x3a
push eax
call fcn.005e699b
mov edi, eax
add esp, 8
cmp edi, ebx
je 0x43d92d
add edi, 2
push 0x3a
push edi
call fcn.005e699b
add esp, 8
test eax, eax
je 0x43d92d
push edi
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov word [ebp - 0x2c], bx
call fcn.00402410
mov esi, dword [ebp - 0x30]
mov byte [ebp - 4], 2
cmp esi, ebx
je 0x43d85e
push esi
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d85e
cmp word [esi], 0x3a
jne 0x43d859
mov word [esi], 0x2d
add esi, 2
jmp 0x43d84a
mov word [edi], bx
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
jne 0x43d86b
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.00402410
mov edi, dword [ebp - 0x30]
mov byte [ebp - 4], 3
cmp edi, ebx
jne 0x43d890
lea edi, [ebp - 0x2c]
cmp edi, ebx
je 0x43d909
push edi
call fcn.005e639f
add esp, 4
test eax, eax
je 0x43d909
mov eax, dword [ebp - 0x3c]
cmp eax, ebx
je 0x43d8b1
push eax
call fcn.005e639f
add esp, 4
mov esi, eax
jmp 0x43d8b3
xor esi, esi
push edi
call fcn.005e639f
add eax, esi
lea eax, [eax + eax + 2]
push eax
call fcn.005feedc
mov esi, eax
add esp, 8
cmp esi, ebx
je 0x43d909
mov eax, dword [ebp - 0x3c]
cmp eax, ebx
je 0x43d8e8
push eax
push esi
call fcn.005e6569
push edi
push esi
call fcn.005e653f
add esp, 0x10
jmp 0x43d8f2
push edi
push esi
call fcn.005e6569
add esp, 8
lea ecx, [ebp - 0x3c]
call fcn.00401070
push esi
mov dword [ebp - 0x3c], esi
call fcn.005e639f
add esp, 4
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x3c]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00402410
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 0x43da5f
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d95a
cmp word [esi], 0x2a
jne 0x43d955
mov word [esi], 0x2d
add esi, 2
jmp 0x43d946
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43da5f
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d987
cmp word [esi], 0x3f
jne 0x43d982
mov word [esi], 0x2d
add esi, 2
jmp 0x43d973
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43da5f
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d9b4
cmp word [esi], 0x7c
jne 0x43d9af
mov word [esi], 0x2d
add esi, 2
jmp 0x43d9a0
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43da5f
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43d9e1
cmp word [esi], 0x3c
jne 0x43d9dc
mov word [esi], 0x2d
add esi, 2
jmp 0x43d9cd
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43da5f
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43da0a
cmp word [esi], 0x3e
jne 0x43da05
mov word [esi], 0x2d
add esi, 2
jmp 0x43d9f6
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43da5f
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43da33
cmp word [esi], 0x22
jne 0x43da2e
mov word [esi], 0x27
add esi, 2
jmp 0x43da1f
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x43da5f
push eax
mov esi, eax
call fcn.005e639f
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x43da5c
cmp word [esi], 0x2f
jne 0x43da57
mov word [esi], 0x5c
add esi, 2
jmp 0x43da48
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43da66
lea eax, [ebp - 0x18]
push 0x6a4254
push eax
call fcn.005e6c00
add esp, 8
test eax, eax
je 0x43dc4e
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x43da63
mov edx, 0x6a4254
test edx, edx
je 0x43da5f
mov ecx, 0x6a015c
test ecx, ecx
je 0x43da5f
push ecx
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x43da5c
mov edx, dword [ebp - 0x1c]
push 0x6a4254
push edx
call fcn.005e6c00
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x43dadc
push 0x6a4254
inc edi
call fcn.005e639f
lea eax, [esi + eax*2]
push 0x6a4254
push eax
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x43dab8
test edi, edi
je 0x43da5c
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
push eax
call fcn.0040e5a0
push 0x6a015c
mov byte [ebp - 4], 4
call fcn.005e639f
push 0x6a4254
mov esi, eax
call fcn.005e639f
add esp, 8
cmp esi, eax
jbe 0x43db6d
lea ecx, [ebp - 0x1c]
call fcn.00401070
mov esi, dword [ebp - 0x30]
test esi, esi
jne 0x43db23
lea esi, [ebp - 0x2c]
push 0x6a015c
call fcn.005e639f
push 0x6a4254
mov ebx, eax
call fcn.005e639f
sub ebx, eax
push esi
imul ebx, edi
call fcn.005e639f
add ebx, eax
lea ecx, [ebx + ebx + 2]
push ecx
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x1c], ebx
jne 0x43db70
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00401070
jmp 0x43da5c
mov ebx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
call fcn.00402400
push 0x6a4254
push eax
mov dword [ebp - 0x20], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp - 0x24], eax
je 0x43dc00
mov esi, dword [ebp - 0x20]
mov edi, ebx
sub eax, esi
push 0x6a015c
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.005e639f
mov ecx, eax
mov esi, 0x6a015c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6a015c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4254
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp - 0x24]
push 0x6a4254
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x20], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x43db89
mov esi, dword [ebp - 0x20]
push esi
call fcn.005e639f
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.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.005e639f
add esp, 0xc
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 1
call fcn.00401070
jmp 0x43da5c
mov eax, dword [0x6d12d8]
test eax, eax
jne 0x43dee8
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43dc65
lea eax, [ebp - 0x18]
push 0x202a
push eax
call fcn.005e699b
add esp, 8
test eax, eax
jne 0x43dc97
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43dc81
lea eax, [ebp - 0x18]
push 0x202d
push eax
call fcn.005e699b
add esp, 8
test eax, eax
je 0x43de8c
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x43de68
mov edx, 0x6a4250
test edx, edx
je 0x43de68
mov eax, 0x6d0c3c
test eax, eax
je 0x43de68
push eax
push edx
call fcn.005e69c4
add esp, 8
test eax, eax
je 0x43de68
mov ecx, dword [ebp - 0x1c]
push 0x6a4250
push ecx
call fcn.005e6c00
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x43dd07
push 0x6a4250
inc edi
call fcn.005e639f
lea esi, [esi + eax*2]
push 0x6a4250
push esi
call fcn.005e6c00
add esp, 0xc
mov esi, eax
jmp 0x43dce3
test edi, edi
je 0x43de68
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
push edx
call fcn.0040e5a0
push 0x6a4250
mov byte [ebp - 4], 5
call fcn.005e639f
push 0x6d0c3c
mov esi, eax
call fcn.005e639f
add esp, 8
cmp eax, esi
jbe 0x43dd8c
lea ecx, [ebp - 0x1c]
call fcn.00401070
lea ecx, [ebp - 0x30]
call fcn.00402400
push eax
call fcn.005e639f
push 0x6a4250
mov esi, eax
call fcn.005e639f
push 0x6d0c3c
mov ebx, eax
call fcn.005e639f
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.005feedc
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x1c], ebx
jne 0x43dd8f
jmp 0x43de5c
mov ebx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
call fcn.00402400
push 0x6a4250
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 8
test eax, eax
mov dword [ebp - 0x20], eax
je 0x43de1f
mov esi, dword [ebp - 0x24]
mov edi, ebx
sub eax, esi
push 0x6d0c3c
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.005e639f
mov ecx, eax
mov esi, 0x6d0c3c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x6d0c3c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.005e639f
push 0x6a4250
lea ebx, [ebx + eax*2]
call fcn.005e639f
mov ecx, dword [ebp - 0x20]
push 0x6a4250
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x24], eax
call fcn.005e6c00
add esp, 0x14
jmp 0x43dda8
mov esi, dword [ebp - 0x24]
push esi
call fcn.005e639f
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.005e639f
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.005e639f
add esp, 0xc
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00401070
push 0x6d0c3c
push 0x6a424c
lea ecx, [ebp - 0x1c]
call fcn.0043e1c0
push 0x6d0c3c
push 0x6a4248
lea ecx, [ebp - 0x1c]
call fcn.0043e1c0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43de96
lea eax, [ebp - 0x18]
push 0x200e
push eax
call fcn.005e699b
add esp, 8
test eax, eax
je 0x43deba
push 0x6d0c3c
push 0x6a4244
lea ecx, [ebp - 0x1c]
call fcn.0043e1c0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43dec4
lea eax, [ebp - 0x18]
push 0x200f
push eax
call fcn.005e699b
add esp, 8
test eax, eax
je 0x43dee8
push 0x6d0c3c
push 0x6a4240
lea ecx, [ebp - 0x1c]
call fcn.0043e1c0
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.004882b0
cmp eax, 2
jne 0x43df26
mov byte [esi + 0x440], 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 + 0x488]
mov eax, dword [ecx + 0x48c]
or edx, eax
je 0x43df60
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43df43
lea eax, [ebp - 0x18]
push eax
call fcn.005b0d70
cmp eax, 2
jne 0x43df60
push 5
mov ecx, esi
call fcn.006021da
mov byte [esi + 0x442], 1
jmp 0x43df09
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x43df6a
lea eax, [ebp - 0x18]
mov ecx, dword [esi + 0x70]
push eax
call fcn.005b1140
mov eax, dword [esi + 0x458]
push 0x7d0
test eax, eax
je 0x43e037
mov ecx, dword [esi + 0x448]
lea eax, [ebp - 0xfe0]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
je 0x43e02b
mov edx, dword [0x6cc708]
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 0x43e009
push edi
lea ecx, [ebp - 0x20]
call fcn.00602ea3
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 + 0x32a], 1
mov eax, dword [ebp - 0x20]
mov ecx, dword [esi + 0x70]
push eax
jmp 0x43e018
mov ecx, dword [esi + 0x70]
mov eax, dword [ecx + 0x60]
test eax, eax
je 0x43e01d
push 0x6d0c38
call fcn.005a9f80
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 1
call fcn.00602ad6
jmp 0x43e06f
mov ecx, dword [esi + 0x70]
mov eax, dword [ecx + 0x60]
test eax, eax
je 0x43e06f
jmp 0x43e065
mov edx, dword [esi + 0x448]
lea ecx, [ebp - 0x810]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowTextA]
test eax, eax
je 0x43e05b
mov ecx, dword [esi + 0x70]
lea eax, [ebp - 0x810]
push eax
jmp 0x43e06a
mov ecx, dword [esi + 0x70]
mov eax, dword [ecx + 0x60]
test eax, eax
je 0x43e06f
push 0x6d0c38
call fcn.005a9f80
mov ecx, dword [esi + 0x70]
mov eax, dword [ecx + 0x8d4]
test eax, eax
je 0x43e097
cmp eax, 3
je 0x43e097
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 + 0x444]
test ecx, ecx
je 0x43e0c2
mov al, byte [ecx + 8]
test al, al
je 0x43e0c2
test ecx, ecx
je 0x43e0b5
mov edx, dword [ecx]
push 1
call dword [edx]
mov eax, dword [esi + 0x70]
mov dword [eax + 0x444], 0
mov ecx, dword [esi + 0x70]
mov edx, dword [ecx + 0x300]
push edx
call fcn.005aa110
mov ecx, esi
call fcn.00440500
mov eax, dword [esi + 0x70]
mov ecx, dword [eax + 0x480]
push ecx
lea ecx, [eax + 0x20]
call fcn.005c10b0
mov ecx, dword [esi + 0x70]
push 0
call fcn.005b3aa0
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x43e134
mov edx, dword [esi + 0x70]
push 1
push 1
push edx
call fcn.004b4370
mov eax, dword [esi + 0x6c]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x43e134
mov ecx, dword [esi + 0x70]
mov eax, dword [esi + 0x6c]
mov edx, dword [ecx + 0x480]
push edx
push 0x144d
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov ecx, dword [0x6d1440]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x43e166
mov edx, dword [esi + 0x70]
mov ecx, dword [0x6d1440]
mov eax, dword [edx + 0x480]
push eax
push 0x1395
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
push 1
mov ecx, esi
call fcn.0043e3e0
mov eax, dword [esi + 0x60]
push 0
test eax, eax
je 0x43e18e
mov edx, dword [esi + 0x1c]
push 0xc8
push 1
push edx
call dword [sym.imp.USER32.dll_SetTimer]
jmp 0x43df09
mov ecx, esi
call fcn.005fec36
jmp 0x43df09