Function at 0x100355f
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2f8
push ebx
push esi
push edi
xor ebx, ebx
push dword [0x1008854]
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 8], ebx
mov dword [0x10092a8], ebx
mov dword [0x1009910], ebx
call dword [sym.imp.USER32.dll_SetCursor]
push dword [ebp + 8]
call fcn.010033f6
mov esi, 0x1009900
push esi
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
mov edi, 0x104
mov dword [ebp - 0x10], eax
push edi
push 0x1008198
push ebx
push esi
push 2
push eax
call dword [sym.imp.KERNEL32.dll_GetDateFormatW]
push edi
push 0x10083a0
push ebx
push esi
push ebx
push dword [ebp - 0x10]
call dword [sym.imp.KERNEL32.dll_GetTimeFormatW]
mov eax, dword [0x10092ac]
push 0x17
imul eax, dword [0x1008010]
pop ecx
mov esi, 0x1008900
lea edi, [ebp - 0xf0]
push 8
rep movsd dword es:[edi], dword [esi]
cdq
mov ecx, 0xfffffd30
push dword [ebp + 8]
idiv ecx
mov dword [ebp - 0xec], ebx
mov dword [ebp - 0xf0], eax
call dword [sym.imp.GDI32.dll_SetMapMode]
push ebx
push dword [0x10098f4]
push dword [0x10098e8]
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SetViewportExtEx]
push ebx
push dword [0x1008bf8]
push dword [0x1008bf4]
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SetWindowExtEx]
mov eax, 0x1009920
mov esi, 0x1008c0c
mov edi, eax
push 2
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
push dword [ebp + 8]
movsd dword es:[edi], dword [esi]
call dword [sym.imp.GDI32.dll_LPtoDP]
push 1
pop edi
push edi
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SetMapMode]
mov esi, dword [sym.imp.GDI32.dll_CreateFontIndirectW]
lea eax, [ebp - 0xf0]
push eax
call esi
mov dword [ebp - 0x18], eax
cmp eax, ebx
je 0x10039fe
push eax
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SelectObject]
cmp eax, ebx
mov dword [ebp - 4], eax
je 0x10039fe
push edi
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SetBkMode]
lea eax, [ebp - 0x94]
push eax
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_GetTextMetricsW]
test eax, eax
je 0x10039fe
test byte [ebp - 0x5d], 6
jne 0x1003724
push dword [ebp - 4]
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SelectObject]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x10
xor eax, eax
pop ecx
lea edi, [ebp - 0xd4]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0xf0]
push eax
call esi
cmp eax, ebx
mov dword [ebp - 0x18], eax
je 0x10039fe
push eax
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SelectObject]
cmp eax, ebx
mov dword [ebp - 4], eax
je 0x10039fe
lea eax, [ebp - 0x94]
push eax
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_GetTextMetricsW]
test eax, eax
je 0x10039fe
push 1
pop edi
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x84]
lea esi, [eax + ecx]
mov eax, dword [ebp - 0x80]
mov ecx, dword [0x1009920]
mov dword [0x10098ec], esi
shl eax, 3
mov dword [0x10098e4], eax
mov eax, dword [0x10098dc]
sub ecx, eax
cmp ecx, ebx
mov dword [0x1009930], ecx
jg 0x1003761
mov dword [0x1009930], ebx
sub eax, dword [0x10098e8]
mov ecx, dword [0x1009928]
add eax, dword [0x10098d8]
add eax, ecx
cmp eax, ebx
mov dword [0x1009934], eax
jg 0x1003784
mov dword [0x1009934], ebx
mov eax, dword [0x1009924]
mov ecx, dword [0x10098f8]
sub eax, ecx
cmp eax, ebx
mov dword [0x10098e0], eax
jg 0x10037a0
mov dword [0x10098e0], ebx
sub ecx, dword [0x10098f4]
mov eax, dword [0x10098f0]
mov edx, dword [0x100992c]
add ecx, eax
add ecx, edx
cmp ecx, ebx
mov dword [0x10092a0], ecx
jg 0x10037c5
mov dword [0x10092a0], ebx
sub eax, dword [0x10092a0]
sub eax, dword [0x10098e0]
cdq
idiv esi
cmp word [0x1008f60], bx
je 0x10037de
dec eax
cmp word [0x1008fb0], bx
je 0x10037e8
dec eax
cmp eax, ebx
jle 0x10039dd
push 0x10031ee
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SetAbortProc]
mov esi, eax
cmp esi, ebx
jl 0x1003a0a
push ebx
push ebx
push 0xbd
push dword [0x10087d4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, ebx
mov dword [ebp - 0x1c], eax
je 0x10039fe
push eax
call dword [sym.imp.KERNEL32.dll_LocalLock]
cmp eax, ebx
mov dword [ebp - 8], eax
je 0x10039fe
lea eax, [ebp - 0x2f8]
push 0x104
push eax
push dword [0x10087d0]
call dword [sym.imp.USER32.dll_GetWindowTextW]
push ebx
push dword [0x10087d0]
call dword [sym.imp.USER32.dll_EnableWindow]
push ebx
push 0x1003250
push dword [0x10087d0]
push 0xb
push dword [0x1008c98]
call dword [sym.imp.USER32.dll_CreateDialogParamW]
cmp eax, ebx
mov dword [0x1009910], eax
je 0x10039fe
lea eax, [ebp - 0x2f8]
push ebx
mov dword [ebp - 0x44], 0x14
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x34], ebx
call dword [sym.imp.KERNEL32.dll_SetLastError]
lea eax, [ebp - 0x44]
push eax
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_StartDocW]
test eax, eax
jle 0x10039fe
mov dword [ebp - 0x20], edi
mov dword [0x10092a4], edi
xor eax, eax
lea edi, [ebp - 0x30]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [0x1009930]
mov ecx, dword [0x10098ec]
mov dword [ebp - 0x30], eax
mov eax, dword [0x10098d8]
sub eax, dword [0x1009934]
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x28], eax
mov eax, dword [0x10098e0]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x10098f0]
sub eax, dword [0x10092a0]
cmp word [0x1008f60], bx
mov dword [ebp - 0x24], eax
je 0x100390f
add dword [ebp - 0x2c], ecx
cmp word [0x1008fb0], bx
je 0x100391d
sub eax, ecx
mov dword [ebp - 0x24], eax
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push 0xffffffffffffffec
mov dword [ebp - 0xc], eax
push dword [0x10087d4]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test ah, 0x20
je 0x1003943
mov dword [ebp - 0x10], 0x20002
cmp dword [0x10092a8], ebx
jne 0x1003a08
cmp dword [ebp - 0xc], ebx
jle 0x1003a08
mov esi, dword [ebp + 8]
push ebx
push esi
call fcn.010032d5
xor eax, eax
lea edi, [ebp - 0x58]
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 [0x10098e4]
mov edi, dword [ebp - 0x10]
push esi
mov dword [ebp - 0x58], 0x14
mov dword [ebp - 0x54], eax
or di, 0x2850
call dword [sym.imp.GDI32.dll_StartPage]
test eax, eax
jle 0x10039fe
lea eax, [ebp - 0x58]
mov dword [ebp - 0x14], 1
push eax
lea eax, [ebp - 0x30]
push edi
mov edi, dword [ebp - 8]
push eax
push dword [ebp - 0xc]
push edi
push esi
call dword [sym.imp.USER32.dll_DrawTextExW]
push 1
push esi
call fcn.010032d5
push esi
call dword [sym.imp.GDI32.dll_EndPage]
test eax, eax
jle 0x10039fe
mov eax, dword [ebp - 0x48]
inc dword [0x10092a4]
cmp eax, ebx
mov dword [ebp - 0x14], ebx
je 0x10039dd
sub dword [ebp - 0xc], eax
lea ecx, [edi + eax*2]
mov dword [ebp - 8], ecx
jmp 0x1003943
push 0x30
push dword [0x1008050]
push dword [0x1008098]
push dword [0x10087d0]
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 0x1003a0a
xor esi, esi
cmp dword [ebp - 4], ebx
je 0x1003a24
push dword [ebp - 4]
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x18]
call dword [sym.imp.GDI32.dll_DeleteObject]
cmp dword [ebp - 8], ebx
je 0x1003a32
push dword [ebp - 0x1c]
call dword [sym.imp.KERNEL32.dll_LocalUnlock]
cmp dword [ebp - 0x14], ebx
je 0x1003a50
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_EndPage]
test eax, eax
jg 0x1003a50
cmp esi, ebx
jne 0x1003a50
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
cmp dword [ebp - 0x20], ebx
je 0x1003a6e
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_EndDoc]
test eax, eax
jg 0x1003a6e
cmp esi, ebx
jne 0x1003a6e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
push dword [ebp + 8]
call dword [sym.imp.GDI32.dll_DeleteDC]
call fcn.01003a9e
push dword [0x1008f40]
call dword [sym.imp.USER32.dll_SetCursor]
cmp dword [0x10092a8], ebx
jne 0x1003a94
mov eax, esi
jmp 0x1003a97
push 0xfffffffffffffffd
pop eax
pop edi
pop esi
pop ebx
leave
ret 4