Function at 0x10061c9
Capabilities:
Get graphical window text

Disassembly:
push ebp
lea ebp, [esp - 0x74]
sub esp, 0x3c0
push ebx
push esi
xor ebx, ebx
push edi
push dword [0x1009b84]
mov dword [ebp + 0x58], ebx
mov dword [ebp + 0x6c], ebx
mov dword [ebp + 0x68], ebx
mov dword [ebp + 0x5c], ebx
mov dword [ebp + 0x70], ebx
mov dword [0x1009134], ebx
mov dword [0x1009138], ebx
call dword [sym.imp.USER32.dll_SetCursor]
push dword [ebp + 0x7c]
call fcn.01005904
mov esi, 0x1008ae0
push esi
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov edi, 0x104
push edi
push 0x10081d8
push ebx
push esi
push 2
push eax
mov dword [ebp + 0x64], eax
call dword [sym.imp.KERNEL32.dll_GetDateFormatW]
push edi
push 0x10083e0
push ebx
push esi
push ebx
push dword [ebp + 0x64]
call dword [sym.imp.KERNEL32.dll_GetTimeFormatW]
mov eax, dword [0x1008ac8]
imul eax, dword [section..data]
push 0x17
pop ecx
mov esi, 0x1009b20
lea edi, [ebp - 0x78]
rep movsd dword es:[edi], dword [esi]
cdq
mov ecx, 0xfffffd30
idiv ecx
push 8
push dword [ebp + 0x7c]
mov dword [ebp - 0x74], ebx
mov ebx, dword [sym.imp.GDI32.dll_SetMapMode]
mov dword [ebp - 0x78], eax
call ebx
push 0
push dword [0x1008ac0]
push dword [0x1008ac4]
push dword [ebp + 0x7c]
call dword [sym.imp.GDI32.dll_SetViewportExtEx]
push 0
push dword [0x10094b8]
push dword [0x10094b4]
push dword [ebp + 0x7c]
call dword [sym.imp.GDI32.dll_SetWindowExtEx]
mov eax, 0x1009120
mov edi, eax
mov esi, 0x10094cc
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 2
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp + 0x7c]
push eax
push esi
call dword [sym.imp.GDI32.dll_LPtoDP]
xor edi, edi
inc edi
push edi
push esi
call ebx
mov ebx, dword [sym.imp.GDI32.dll_CreateFontIndirectW]
lea eax, [ebp - 0x78]
push eax
call ebx
test eax, eax
mov dword [ebp + 0x60], eax
je 0x10066f3
push eax
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
test eax, eax
mov dword [ebp + 0x6c], eax
je 0x10066f3
push edi
push esi
call dword [sym.imp.GDI32.dll_SetBkMode]
lea eax, [ebp - 0x1c]
push eax
push esi
mov esi, dword [sym.imp.GDI32.dll_GetTextMetricsW]
call esi
test eax, eax
je 0x10066f3
test byte [ebp + 0x1b], 6
jne 0x100636f
push dword [ebp + 0x6c]
push dword [ebp + 0x7c]
call dword [sym.imp.GDI32.dll_SelectObject]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x10
pop ecx
xor eax, eax
lea edi, [ebp - 0x5c]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x78]
push eax
call ebx
test eax, eax
mov dword [ebp + 0x60], eax
je 0x10066f3
push eax
push dword [ebp + 0x7c]
call dword [sym.imp.GDI32.dll_SelectObject]
test eax, eax
mov dword [ebp + 0x6c], eax
je 0x10066f3
lea eax, [ebp - 0x1c]
push eax
push dword [ebp + 0x7c]
call esi
test eax, eax
je 0x10066f3
xor edi, edi
inc edi
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0xc]
mov edx, dword [0x1009120]
add ecx, eax
mov eax, dword [ebp - 8]
shl eax, 3
mov dword [0x100913c], eax
mov eax, dword [0x1008abc]
sub edx, eax
xor ebx, ebx
cmp edx, ebx
mov dword [0x1009130], ecx
mov dword [0x1008aac], edx
jg 0x10063a7
mov dword [0x1008aac], ebx
mov edx, dword [0x1008ad0]
sub edx, dword [0x1008ac4]
add edx, dword [0x1009128]
add eax, edx
cmp eax, ebx
mov dword [0x1008aa8], eax
jg 0x10063ca
mov dword [0x1008aa8], ebx
mov eax, dword [0x1009124]
mov edx, dword [0x1008ab8]
sub eax, edx
cmp eax, ebx
mov dword [0x1008ab4], eax
jg 0x10063e6
mov dword [0x1008ab4], ebx
mov eax, dword [0x1008acc]
mov esi, eax
sub esi, dword [0x1008ac0]
add esi, dword [0x100912c]
add edx, esi
cmp edx, ebx
mov dword [0x1008ab0], edx
jg 0x100640b
mov dword [0x1008ab0], ebx
sub eax, dword [0x1008ab0]
sub eax, dword [0x1008ab4]
cdq
idiv ecx
cmp word [0x10093e0], bx
je 0x1006424
dec eax
cmp word [0x1009430], bx
je 0x100642e
dec eax
cmp eax, ebx
jle 0x10066d2
push 0x10058a2
push dword [ebp + 0x7c]
call dword [sym.imp.GDI32.dll_SetAbortProc]
mov esi, eax
cmp esi, ebx
jl 0x1006672
push ebx
push ebx
push 0xbd
push dword [0x1008818]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, ebx
mov dword [ebp + 0x58], eax
je 0x10066f3
push eax
call dword [sym.imp.KERNEL32.dll_LocalLock]
cmp eax, ebx
mov dword [ebp + 0x70], eax
je 0x10066f3
push 0x104
lea eax, [ebp - 0x34c]
push eax
push dword [0x1008810]
call dword [sym.imp.USER32.dll_GetWindowTextW]
push ebx
push dword [0x1008810]
call dword [sym.imp.USER32.dll_EnableWindow]
push ebx
push 0x1006027
push dword [0x1008810]
push 0xb
push dword [0x1009b80]
call dword [sym.imp.USER32.dll_CreateDialogParamW]
cmp eax, ebx
mov dword [0x1009138], eax
je 0x10066f3
lea eax, [ebp - 0x34c]
push ebx
mov dword [ebp + 0x34], 0x14
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x3c], ebx
mov dword [ebp + 0x40], ebx
mov dword [ebp + 0x44], ebx
call dword [sym.imp.KERNEL32.dll_SetLastError]
lea eax, [ebp + 0x34]
push eax
push dword [ebp + 0x7c]
call dword [sym.imp.GDI32.dll_StartDocW]
test eax, eax
jg 0x1006508
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1006672
xor eax, eax
mov dword [ebp + 0x5c], edi
mov dword [0x1008aa4], edi
lea edi, [ebp + 0x48]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov ecx, dword [0x1009130]
stosd dword es:[edi], eax
mov eax, dword [0x1008aac]
mov dword [ebp + 0x48], eax
mov eax, dword [0x1008ad0]
sub eax, dword [0x1008aa8]
xor esi, esi
mov dword [ebp + 0x50], eax
mov eax, dword [0x1008ab4]
mov dword [ebp + 0x4c], eax
mov eax, dword [0x1008acc]
sub eax, dword [0x1008ab0]
cmp word [0x10093e0], si
mov dword [ebp + 0x64], ebx
mov dword [ebp + 0x68], ebx
mov dword [ebp + 0x54], eax
je 0x1006560
add dword [ebp + 0x4c], ecx
cmp word [0x1009430], si
je 0x100656e
sub eax, ecx
mov dword [ebp + 0x54], eax
push dword [ebp + 0x70]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0xffffffffffffffec
push dword [0x1008818]
mov ebx, eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
test ah, 0x20
je 0x1006593
mov dword [ebp + 0x64], 0x20002
cmp dword [0x1009134], esi
jne 0x100666e
test ebx, ebx
jle 0x100666e
push dword [0x1008aa4]
lea eax, [ebp - 0x144]
push dword [0x10080ac]
push 0x64
push eax
call dword [sym.imp.msvcrt.dll__snwprintf]
add esp, 0x10
lea eax, [ebp - 0x144]
push eax
push 0x15
push dword [0x1009138]
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
mov esi, dword [ebp + 0x7c]
push 0
push esi
call fcn.010060ac
xor eax, eax
lea edi, [ebp + 0x20]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [0x100913c]
push esi
mov dword [ebp + 0x20], 0x14
mov dword [ebp + 0x24], eax
call dword [sym.imp.GDI32.dll_StartPage]
test eax, eax
jle 0x10066f3
lea eax, [ebp + 0x20]
push eax
mov eax, dword [ebp + 0x64]
or eax, 0x2850
push eax
lea eax, [ebp + 0x48]
push eax
push ebx
push dword [ebp + 0x70]
xor edi, edi
inc edi
push esi
mov dword [ebp + 0x68], edi
call dword [sym.imp.USER32.dll_DrawTextExW]
push edi
push esi
call fcn.010060ac
push esi
call dword [sym.imp.GDI32.dll_EndPage]
test eax, eax
jle 0x10066f3
and dword [ebp + 0x68], 0
mov eax, dword [ebp + 0x30]
inc dword [0x1008aa4]
test eax, eax
je 0x10066d0
mov ecx, dword [ebp + 0x70]
lea ecx, [ecx + eax*2]
sub ebx, eax
cmp dword [0x1009134], 0
mov dword [ebp + 0x70], ecx
je 0x100659f
xor esi, esi
xor ebx, ebx
cmp dword [ebp + 0x6c], ebx
je 0x100668c
push dword [ebp + 0x6c]
push dword [ebp + 0x7c]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp + 0x60]
call dword [sym.imp.GDI32.dll_DeleteObject]
cmp dword [ebp + 0x70], ebx
je 0x100669a
push dword [ebp + 0x58]
call dword [sym.imp.KERNEL32.dll_LocalUnlock]
cmp dword [ebp + 0x68], ebx
je 0x10066b8
push dword [ebp + 0x7c]
call dword [sym.imp.GDI32.dll_EndPage]
test eax, eax
jg 0x10066b8
cmp esi, ebx
jne 0x10066b8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp dword [ebp + 0x5c], ebx
je 0x1006716
cmp dword [0x1009134], ebx
push dword [ebp + 0x7c]
je 0x1006700
call dword [sym.imp.GDI32.dll_AbortDoc]
jmp 0x1006716
xor ebx, ebx
push 0x30
push dword [0x100803c]
push dword [0x100808c]
push dword [0x1008810]
call dword [sym.imp.USER32.dll_MessageBoxW]
push ebx
call dword [sym.imp.KERNEL32.dll_SetLastError]
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1006670
call dword [sym.imp.GDI32.dll_EndDoc]
test eax, eax
jg 0x1006716
cmp esi, ebx
jne 0x1006716
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
push dword [ebp + 0x7c]
call dword [sym.imp.GDI32.dll_DeleteDC]
call fcn.01005a23
push dword [0x1009b88]
call dword [sym.imp.USER32.dll_SetCursor]
cmp dword [0x1009134], ebx
jne 0x100673c
mov eax, esi
jmp 0x100673f
push 0xfffffffffffffffd
pop eax
pop edi
pop esi
pop ebx
add ebp, 0x74
leave
ret 4