Function at 0x7593e18d
Capabilities:
Get graphical window text

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
push 0xffffffffffffffeb
xor ebx, ebx
push edi
mov dword [ebp - 4], ebx
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov esi, eax
mov eax, dword [ebp + 0xc]
dec eax
je 0x7593e4b1
dec eax
je 0x7593e498
sub eax, 7
je 0x7593e477
sub eax, 0x890
je 0x7593e3ec
sub eax, 3
je 0x7593e3b7
dec eax
dec eax
je 0x7593e242
sub eax, 0x128
jne 0x7593e543
cmp dword [ebp + 0x14], 0x300
jne 0x7593e543
push 0x9c6
push edi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
call edi
push eax
call dword [sym.imp.USER32.dll_GetWindowTextLengthW]
push dword [esi + 0x16dc]
mov dword [esi + 0x3724], eax
call sub.USER32.dll_ReasonCodeNeedsComment
test eax, eax
je 0x7593e226
cmp dword [esi + 0x3724], ebx
je 0x7593e229
xor ebx, ebx
inc ebx
push ebx
xor esi, esi
inc esi
push esi
push dword [ebp + 8]
call edi
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov dword [ebp - 4], esi
jmp 0x7593e543
cmp dword [ebp + 0x14], ebx
jne 0x7593e543
push 0x89c
push edi
mov dword [ebp + 0xc], ebx
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edi, 0x89e
push edi
push dword [ebp + 8]
mov dword [ebp + 0x14], eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push edi
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
cmp eax, 1
jne 0x7593e282
mov dword [ebp + 0xc], 0x80000000
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x7593e296
push ebx
push ebx
push 0x144
push dword [ebp + 0x14]
call edi
push ebx
push ebx
push 0x146
push dword [ebp + 0x14]
call edi
test eax, eax
jne 0x7593e28a
cmp dword [esi + 0x16d4], ebx
mov dword [ebp + 0x10], ebx
jbe 0x7593e32a
mov ecx, dword [ebp + 0x10]
mov eax, dword [esi + 0x16d0]
mov eax, dword [eax + ecx*4]
mov ecx, dword [eax]
and ecx, 0x80000000
cmp ecx, dword [ebp + 0xc]
jne 0x7593e31c
add eax, 4
push eax
push ebx
push 0x143
push dword [ebp + 0x14]
call edi
cmp eax, 0xffffffff
mov dword [ebp - 8], eax
je 0x7593e31c
mov ecx, dword [esi + 0x16d0]
mov edx, dword [ebp + 0x10]
push dword [ecx + edx*4]
push eax
push 0x151
push dword [ebp + 0x14]
call edi
mov eax, dword [esi + 0x16d0]
mov ecx, dword [ebp + 0x10]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax]
cmp eax, dword [esi + 0x16dc]
jne 0x7593e31c
push ebx
push dword [ebp - 8]
push 0x14e
push dword [ebp + 0x14]
call edi
inc dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
cmp eax, dword [esi + 0x16d4]
jb 0x7593e2b1
push ebx
push ebx
push 0x146
push dword [ebp + 0x14]
call edi
test eax, eax
je 0x7593e370
push ebx
push ebx
push 0x147
push dword [ebp + 0x14]
call edi
cmp eax, 0xffffffff
jne 0x7593e370
push ebx
push ebx
push 0x150
push dword [ebp + 0x14]
call edi
cmp eax, 0xffffffff
je 0x7593e370
mov eax, dword [eax]
push ebx
push ebx
push 0x14e
push dword [ebp + 0x14]
mov dword [esi + 0x16dc], eax
call edi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x89d
push dword [ebp + 8]
call edi
push eax
push dword [ebp + 0x14]
call fcn.75940206
push dword [esi + 0x16dc]
call sub.USER32.dll_ReasonCodeNeedsComment
test eax, eax
je 0x7593e3a0
cmp dword [esi + 0x3724], ebx
je 0x7593e3a3
xor ebx, ebx
inc ebx
push ebx
push 1
push dword [ebp + 8]
call edi
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
jmp 0x7593e543
cmp dword [ebp + 0x14], 1
jne 0x7593e543
push 0x89d
push edi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
call edi
push eax
push dword [ebp + 0x10]
call fcn.75940206
push dword [ebp + 0x10]
call fcn.759401c7
mov dword [esi + 0x16dc], eax
push eax
jmp 0x7593e215
cmp dword [ebp + 0x14], 1
jne 0x7593e543
push 0x9cf
push edi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
call edi
push eax
push 0x89a
push dword [ebp + 8]
call edi
push eax
push dword [ebp + 0x10]
call fcn.7593e12a
cmp dword [esi + 0x372c], ebx
je 0x7593e46b
push dword [ebp + 0x10]
call fcn.7593e0ee
and eax, 0x106
push eax
push dword [ebp + 8]
mov dword [ebp + 0x14], eax
call fcn.7593df84
cmp dword [ebp + 0x14], ebx
je 0x7593e45b
push dword [esi + 0x16dc]
call sub.USER32.dll_ReasonCodeNeedsComment
test eax, eax
je 0x7593e455
cmp dword [esi + 0x3724], ebx
je 0x7593e458
xor ebx, ebx
inc ebx
push ebx
jmp 0x7593e45d
push 1
push 1
push dword [ebp + 8]
call edi
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov dword [ebp - 4], 1
jmp 0x7593e543
cmp dword [ebp + 0x14], ebx
jne 0x7593e543
push 0x177f
push 1
push 0x759344ac
push edi
call dword [sym.imp.USER32.dll_WinHelpW]
jmp 0x7593e543
cmp dword [ebp + 0x14], ebx
jne 0x7593e543
push ebx
push edi
mov dword [esi + 0x3734], ebx
call dword [sym.imp.USER32.dll_EndDialog]
jmp 0x7593e46b
cmp dword [ebp + 0x14], ebx
jne 0x7593e543
push 0x899
push edi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
mov dword [esi + 0x16dc], ebx
call edi
push eax
call fcn.7593e0ee
cmp dword [esi + 0x372c], ebx
mov dword [ebp + 0x14], eax
je 0x7593e525
test ax, 0x106
je 0x7593e525
push 0x89c
push dword [ebp + 8]
call edi
push eax
call fcn.759401c7
cmp eax, 0xff
mov dword [esi + 0x16dc], eax
je 0x7593e543
push 0x1000
lea eax, [esi + 0x16e0]
push eax
push 0x9c6
push dword [ebp + 8]
call edi
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov dword [esi + 0x3724], eax
cmp dword [ebp + 0x14], ebx
je 0x7593e543
push dword [ebp + 0x14]
mov dword [esi + 0x3734], ebx
push dword [ebp + 8]
mov dword [ebp - 4], 1
call dword [sym.imp.USER32.dll_EndDialog]
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
leave
ret 0x10