Function at 0xd2856e0
Capabilities:
Get graphical window text

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xb9c
mov eax, dword [0xd2b0418]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0x14]
cmp eax, 0x19
ja 0xd285764
je 0xd285715
sub eax, 2
je 0xd28572a
sub eax, 0xa
je 0xd285715
sub eax, 9
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
push 8
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov esi, eax
test esi, esi
je 0xd285715
mov eax, dword [esi + 0x30]
test eax, eax
je 0xd28574c
call fcn.0d27fca0
mov dword [esi + 0x30], 0
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
sub eax, 0x86
je 0xd285715
sub eax, 0x8a
je 0xd285bb7
mov edi, 1
sub eax, edi
jne 0xd285715
push 8
push esi
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov edx, eax
mov dword [ebp - 0xb78], edx
test edx, edx
je 0xd285715
mov ecx, dword [ebp + 0x10]
mov ebx, dword [edx + 0x30]
movzx eax, cx
cmp eax, 0xa7
mov dword [ebp - 0xb7c], ebx
jg 0xd285a74
je 0xd285a1a
sub eax, edi
je 0xd2858da
sub eax, edi
je 0xd2858de
sub eax, 0xa4
jne 0xd285715
shr ecx, 0x10
cmp ecx, edi
jne 0xd285b9f
push 0x7f02
push eax
call dword [sym.imp.USER32.dll_LoadCursorW]
mov edi, dword [sym.imp.USER32.dll_SetCursor]
push eax
call edi
mov dword [ebp - 0xb70], eax
movzx eax, word [ebx + 0x1520]
push eax
mov edx, ebx
mov ecx, esi
call fcn.0d2851d0
test eax, eax
je 0xd285856
push 0
push 0
push 0x188
push 0xa6
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov word [ebx + 0x1520], ax
push eax
mov ebx, esi
call fcn.0d285470
mov edx, dword [ebp - 0xb70]
push edx
call edi
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
push 0x12c
lea ecx, [ebp - 0x4b4]
push ecx
push 0xae06
call fcn.0d29fa20
push 0x104
lea edx, [ebp - 0x6bc]
push edx
push esi
call dword [sym.imp.USER32.dll_GetWindowTextW]
push 0x40
lea eax, [ebp - 0x6bc]
push eax
lea ecx, [ebp - 0x4b4]
push ecx
push esi
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
push 0
push 0x188
push 0xa6
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0xb70]
push edx
mov word [ebx + 0x1520], ax
call edi
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
test ebx, ebx
jne 0xd2858fc
push 0
push esi
call dword [sym.imp.USER32.dll_EndDialog]
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
push 0x7f02
push 0
call dword [sym.imp.USER32.dll_LoadCursorW]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov dword [ebp - 0xb70], eax
movzx eax, word [ebx + 0x1520]
push eax
mov edx, ebx
mov ecx, esi
call fcn.0d2851d0
mov edi, dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
jne 0xd28596d
push 0x12c
lea ecx, [ebp - 0x4b4]
push ecx
push 0xae06
call fcn.0d29fa20
push 0x104
lea edx, [ebp - 0x6bc]
push edx
push esi
call edi
push 0x40
lea eax, [ebp - 0x6bc]
push eax
lea ecx, [ebp - 0x4b4]
push ecx
push esi
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0x103
lea edx, [ebp - 0x6bc]
lea ecx, [ebx + 0x910]
mov ebx, dword [ebp - 0xb78]
push edx
call fcn.0d2834e0
test eax, eax
jne 0xd2859ec
push 0x12c
lea eax, [ebp - 0xb6c]
push eax
push 0xae07
call fcn.0d29fa20
lea ecx, [ebp - 0x6bc]
push ecx
lea edx, [ebp - 0xb6c]
push edx
lea eax, [ebp - 0x914]
push 0x12c
push eax
call sub.msvcrt.dll_swprintf_s
add esp, 0x10
push 0x104
lea ecx, [ebp - 0x464]
push ecx
push esi
call edi
push 0x40
lea edx, [ebp - 0x464]
push edx
lea eax, [ebp - 0x914]
push eax
push esi
call dword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, dword [ebp - 0xb70]
push ecx
call dword [sym.imp.USER32.dll_SetCursor]
push 0
push esi
call dword [sym.imp.USER32.dll_EndDialog]
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
shr ecx, 0x10
cmp ecx, edi
jne 0xd285b9f
movzx edx, word [ebx + 0x1520]
push 0
push edx
push 0x199
push 0xa6
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
je 0xd285b9f
cmp dword [eax + 8], 0
jne 0xd285b9f
mov dword [eax + 8], edi
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 0xa8
je 0xd285ab9
cmp eax, 0x3f3
je 0xd285a8d
cmp eax, 0x7f8b
jne 0xd285715
add word [edx + 0x24], di
mov eax, dword [0xd2aacfc]
push 0x258
push 0xf
push eax
push esi
call fcn.0d2a75e2
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
shr ecx, 0x10
cmp ecx, edi
jne 0xd285b9f
test ebx, ebx
je 0xd285b9f
push 0x7f02
push 0
call dword [sym.imp.USER32.dll_LoadCursorW]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
push 0xa8
push esi
mov dword [ebp - 0xb70], eax
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
mov edi, eax
push 0x147
push edi
call ebx
push 0
push eax
push 0x150
push edi
call ebx
push 0x12c
lea ecx, [ebp - 0x25c]
push ecx
push eax
call fcn.0d29fa20
push 0xa7
push esi
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push 0
push 0xb
push eax
mov dword [ebp - 0xb74], eax
call ebx
mov eax, dword [ebp - 0xb78]
mov ecx, dword [eax + 4]
push 1
lea edx, [ebp - 0x25c]
push edx
mov edx, dword [ecx + 0x2c]
push edx
push 0xa7
push esi
call fcn.0d29d810
test eax, eax
jne 0xd285b6e
push eax
push 0xffffffffffffffff
push 0x14e
push edi
call ebx
mov eax, dword [ebp - 0xb74]
push 0
push 1
push 0xb
push eax
call ebx
mov ecx, dword [ebp - 0xb7c]
movzx edx, word [ecx + 0x1520]
push edx
mov ebx, esi
call fcn.0d285470
mov eax, dword [ebp - 0xb70]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [edi + 4]
mov dword [ebp - 0xb9c], 0xadfd
mov dword [ebp - 0xb98], 0xadfe
mov dword [ebp - 0xb94], 0xadff
mov dword [ebp - 0xb90], 0xae00
mov dword [ebp - 0xb8c], 0xae01
mov dword [ebp - 0xb88], 0xae02
mov dword [ebp - 0xb84], 0xae03
mov dword [ebp - 0xb80], 0xae04
cmp byte [ecx + 0xa8], 0x18
jne 0xd285c31
mov dword [ebp - 0xb98], 0xae15
mov dword [ebp - 0xb90], 0xae14
mov dword [ebp - 0xb88], 0xae16
push esi
call fcn.0d280b10
push edi
push 8
push esi
call dword [sym.imp.USER32.dll_SetWindowLongA]
push 0x7f02
push 0
call dword [sym.imp.USER32.dll_LoadCursorW]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov dword [ebp - 0xb70], eax
mov eax, dword [edi + 4]
mov eax, dword [eax + 0xac]
mov ecx, dword [eax + 0x10]
push 0x12c
lea edx, [ebp - 0x25c]
push edx
push ecx
call dword [0xd2b0468]
push eax
call dword [sym.imp.USER32.dll_LoadStringW]
mov cx, word [ebp - 0x25c]
lea eax, [ebp - 0x25c]
test cx, cx
je 0xd285ca8
movzx ecx, cx
cmp cx, 0x7c
je 0xd285ca8
movzx ecx, word [eax + 2]
add eax, 2
test cx, cx
jne 0xd285c96
add eax, 2
cmp word [eax], 0
je 0xd285cc0
cmp word [eax], 0x7c
je 0xd285cc6
add eax, 2
cmp word [eax], 0
jne 0xd285cb1
cmp word [eax], 0x7c
jne 0xd285ccb
xor edx, edx
mov word [eax], dx
mov eax, dword [0xd2aae44]
mov ecx, dword [edi + 4]
mov edx, dword [ecx + 0x2c]
push 0
push eax
push edx
push 0xa6
push esi
call fcn.0d29d810
push 4
lea eax, [ebp - 0xb9c]
push eax
push 0xa8
push esi
call fcn.0d29dbb0
push 0x12c
lea ecx, [ebp - 0x25c]
push ecx
push 0xae01
call fcn.0d29fa20
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
lea edx, [ebp - 0x25c]
push edx
push 0xffffffffffffffff
push 0x14d
push 0xa8
push esi
call ebx
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [edi + 4]
cmp byte [eax + 0xa8], 0x15
push 0x12c
jne 0xd285d51
lea ecx, [ebp - 0x25c]
push ecx
push 0xae02
jmp 0xd285d5d
lea edx, [ebp - 0x25c]
push edx
push 0xae16
call fcn.0d29fa20
mov ecx, dword [edi + 4]
mov edx, dword [ecx + 0x2c]
push 1
lea eax, [ebp - 0x25c]
push eax
push edx
push 0xa7
push esi
call fcn.0d29d810
push 0xa6
push esi
call ebx
push 0
push 0
push 0x18b
push eax
mov dword [ebp - 0xb74], eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0xb78], eax
test eax, eax
je 0xd285b92
cmp dword [edi + 0x30], 0
jne 0xd285de7
push esi
call fcn.0d280cc0
mov dword [edi + 0x30], eax
test eax, eax
jne 0xd285de7
mov ecx, dword [ebp - 0xb70]
push ecx
call dword [sym.imp.USER32.dll_SetCursor]
push esi
call fcn.0d29dc60
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
xor ebx, ebx
cmp dword [ebp - 0xb78], ebx
jbe 0xd285e46
mov eax, dword [ebp - 0xb74]
push 0x104
lea edx, [ebp - 0x464]
push edx
push ebx
push eax
call fcn.0d283770
lea ecx, [ebp - 0x464]
push ecx
push esi
lea ecx, [ebp - 0xb7c]
mov edx, edi
call fcn.0d280eb0
test eax, eax
je 0xd285e96
mov edx, dword [ebp - 0xb7c]
mov eax, dword [ebp - 0xb74]
push edx
push ebx
push 0x19a
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
inc ebx
cmp ebx, dword [ebp - 0xb78]
jb 0xd285df1
mov edx, dword [ebp - 0xb74]
push 0
push 0
push 0x186
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
mov ebx, esi
call fcn.0d285470
mov edx, dword [ebp - 0xb70]
mov eax, dword [edi + 0x30]
xor ecx, ecx
push edx
mov word [eax + 0x1520], cx
call dword [sym.imp.USER32.dll_SetCursor]
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [ebp - 0xb70]
push ecx
call dword [sym.imp.USER32.dll_SetCursor]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
mov eax, 1
pop ebx
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10