Function at 0x41ec30
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x481cdb
mov eax, dword fs:[0]
push eax
sub esp, 0x4f8
mov eax, dword [0x4a9d30]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0x14]
mov dword [ebp - 0x4f4], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x4f0], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x500], eax
test edi, edi
je 0x41ece9
cmp byte [edi], 0
je 0x41ece9
mov ecx, dword [0x4a9734]
push 0x16a7
call fcn.00427960
mov esi, eax
test esi, esi
je 0x41ece9
push 0x3e8
lea eax, [ebp - 0x40c]
push 0
push eax
call fcn.00453c50
add esp, 0xc
lea eax, [ebp - 0x40c]
push 0x3e8
push eax
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_GetWindowTextA]
lea eax, [ebp - 0x40c]
push edi
push eax
call fcn.00455246
add esp, 8
test eax, eax
jne 0x41ece9
push 1
mov ecx, esi
call fcn.004386b0
xor eax, eax
jmp 0x41f28d
mov ecx, dword [0x4a9734]
lea eax, [ebp - 0x434]
push 1
push eax
lea eax, [ebp - 0x470]
mov dword [ebp - 0x470], 2
push eax
push 0
push dword [ebp - 0x4f4]
xorps xmm0, xmm0
mov dword [ebp - 0x46c], 2
movdqu xmmword [ebp - 0x434], xmm0
push 0x1393
movdqu xmmword [ebp - 0x424], xmm0
mov dword [ebp - 0x468], 0xffffffff
movq qword [ebp - 0x414], xmm0
mov dword [ebp - 0x434], 2
mov dword [ebp - 0x430], 0xc350
mov word [ebp - 0x42c], 4
mov dword [ebp - 0x420], 3
mov dword [ebp - 0x41c], 0xc351
mov word [ebp - 0x418], 4
mov dword [0x4ad208], 1
call fcn.00428d90
push dword [ebp - 0x4f0]
mov dword [ebp - 0x4f8], eax
push str.THE_SELECTED_DATE
lea esi, [eax + 0x10e]
mov ecx, esi
call fcn.004432a0
push dword [ebp - 0x500]
mov ecx, esi
push str.THE_SELECTED_DATE_WAS_SET
call fcn.004432a0
test edi, edi
je 0x41ee02
cmp byte [edi], 0
je 0x41ee02
push edi
lea ecx, [ebp - 0x4ec]
call fcn.004248f0
mov esi, dword [ebp - 0x4f8]
lea eax, [ebp - 0x4ec]
push eax
mov ecx, esi
mov dword [ebp - 4], 0
call fcn.00437db0
lea ecx, [ebp - 0x4ec]
mov dword [ebp - 4], 0xffffffff
call fcn.004249b0
jmp 0x41ee08
mov esi, dword [ebp - 0x4f8]
push esi
call fcn.0041e370
mov esi, dword [ebp - 0x4f0]
movzx eax, word [esi]
push eax
call fcn.004093f0
dec ax
movzx edi, ax
movzx eax, word [esi]
push eax
call fcn.00408e80
movzx eax, ax
mov dword [ebp - 0x500], eax
movzx eax, word [esi]
push eax
call fcn.0040a3d0
mov ecx, dword [ebp - 0x4f8]
add esp, 0x10
movzx eax, ax
mov dword [ebp - 0x4fc], eax
push 0x16a8
call fcn.0042fe00
mov esi, eax
push 0xffffffffffffffff
push 0x485868
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x485870
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x48587c
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x485884
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x48588c
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x485890
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x485898
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x4858a0
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x4858a8
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x4858b4
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x4858bc
mov ecx, esi
call fcn.0042c590
push 0xffffffffffffffff
push 0x4858c8
mov ecx, esi
call fcn.0042c590
xor eax, eax
test di, di
cmovs edi, eax
mov eax, dword [ebp - 0x4fc]
cmp ax, 0x46
jl 0x41ef1e
add eax, 0x76c
jmp 0x41ef23
add eax, 0x7d0
mov dword [ebp - 0x4fc], eax
mov ecx, esi
movsx eax, di
push eax
call fcn.0042e7a0
mov esi, dword [ebp - 0x4f8]
lea eax, [ebp - 0x4fc]
push eax
push 0x16b2
mov ecx, esi
call fcn.00430270
mov ecx, eax
call fcn.00445a40
push 0x16aa
mov ecx, esi
call fcn.00430130
mov edi, eax
xor ecx, ecx
mov dword [ebp - 0x504], edi
cmp dword [edi + 0x8e], ecx
jle 0x41efa9
xor edx, edx
test ecx, ecx
js 0x41ef8a
cmp ecx, dword [edi + 0x8e]
jge 0x41ef8a
mov eax, dword [edi + 0x8a]
add eax, edx
jmp 0x41ef8c
xor eax, eax
inc ecx
mov dword [eax + 0x52], 1
mov dword [eax + 0x4e], 1
add edx, 0xb1
cmp ecx, dword [edi + 0x8e]
jl 0x41ef74
push esi
call fcn.0041e730
mov eax, dword [ebp - 0x500]
cwde
push eax
lea eax, [ebp - 0x24]
mov byte [edi + 0x178], 1
push 0x485a70
push eax
call fcn.00453b2a
xor eax, eax
add esp, 0x10
mov dword [ebp - 0x4f0], eax
cmp dword [edi + 0xbe], eax
jle 0x41f062
xor esi, esi
cmp dword [edi + 0x8e], esi
jle 0x41f053
lea ecx, [ecx]
push esi
push eax
mov ecx, edi
call fcn.0043c170
lea ecx, [ebp - 0x24]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x41f020
test dl, dl
je 0x41f01c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x41f020
add eax, 2
add ecx, 2
test dl, dl
jne 0x41f000
xor eax, eax
jmp 0x41f025
sbb eax, eax
or eax, 1
test eax, eax
je 0x41f03a
mov eax, dword [ebp - 0x4f0]
inc esi
cmp esi, dword [edi + 0x8e]
jl 0x41eff0
jmp 0x41f053
push dword [ebp - 0x4f0]
mov ecx, edi
mov dword [edi + 0x179], esi
call fcn.0043fcc0
mov eax, dword [edi + 0xbe]
inc eax
mov dword [ebp - 0x4f0], eax
cmp eax, dword [edi + 0xbe]
jl 0x41efe3
cmp dword [ebp - 0x4f4], 0
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
je 0x41f0bf
push 0x2c
lea eax, [ebp - 0x49c]
push 0
push eax
call fcn.00453c50
add esp, 0xc
mov dword [ebp - 0x49c], 0x2c
lea eax, [ebp - 0x49c]
push eax
push dword [ebp - 0x4f4]
call dword [sym.imp.USER32.dll_GetWindowPlacement]
test eax, eax
je 0x41f0ae
test byte [ebp - 0x494], 2
jne 0x41f0bf
lea eax, [ebp - 0x464]
push eax
push dword [ebp - 0x4f4]
call esi
jmp 0x41f0d8
push 0
lea eax, [ebp - 0x464]
push eax
push 0
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
call dword [sym.imp.USER32.dll_GetDesktopWindow]
lea eax, [ebp - 0x444]
push eax
mov eax, dword [ebp - 0x4f8]
push dword [eax + 0x60]
call esi
mov eax, dword [ebp - 0x43c]
xorps xmm0, xmm0
sub eax, dword [ebp - 0x444]
mov edx, dword [ebp - 0x438]
sub edx, dword [ebp - 0x440]
mov dword [ebp - 0x4f4], eax
mov eax, dword [ebp - 0x458]
sub eax, dword [ebp - 0x460]
sub eax, edx
mov dword [ebp - 0x4f0], edx
cdq
sub eax, edx
mov esi, eax
mov eax, dword [ebp - 0x45c]
sub eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x4f4]
cdq
sub eax, edx
sar esi, 1
add esi, dword [ebp - 0x460]
sar eax, 1
add eax, dword [ebp - 0x464]
mov dword [ebp - 0x444], eax
add eax, dword [ebp - 0x4f4]
mov dword [ebp - 0x43c], eax
mov eax, dword [ebp - 0x4f0]
add eax, esi
mov dword [ebp - 0x440], esi
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0x50
mov dword [ebp - 0x438], eax
movdqu xmmword [ebp - 0x454], xmm0
call esi
cmp eax, 1
jle 0x41f1d2
push 0x4e
call esi
push 0x4f
mov esi, eax
call dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0x4d
mov edi, eax
call dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0x4c
mov dword [ebp - 0x450], eax
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebp - 0x450]
mov dword [ebp - 0x454], eax
lea edx, [eax + esi]
lea esi, [ecx + edi]
mov dword [ebp - 0x44c], edx
mov edi, dword [ebp - 0x504]
mov dword [ebp - 0x448], esi
jmp 0x41f1fd
push 0
lea eax, [ebp - 0x454]
push eax
push 0
push 0x30
call dword [sym.imp.USER32.dll_SystemParametersInfoA]
mov esi, dword [ebp - 0x448]
mov edx, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x450]
mov eax, dword [ebp - 0x454]
cmp dword [ebp - 0x43c], edx
jle 0x41f20d
sub edx, dword [ebp - 0x4f4]
jmp 0x41f213
mov edx, dword [ebp - 0x444]
cmp dword [ebp - 0x438], esi
jle 0x41f223
sub esi, dword [ebp - 0x4f0]
jmp 0x41f229
mov esi, dword [ebp - 0x440]
cmp edx, eax
push 0x10
cmovl edx, eax
mov eax, dword [ebp - 0x4f0]
cmp esi, ecx
mov dword [ebp - 0x444], edx
cmovl esi, ecx
mov ecx, dword [ebp - 0x4f4]
add eax, esi
mov dword [ebp - 0x440], esi
add ecx, edx
mov dword [ebp - 0x438], eax
sub eax, esi
mov dword [ebp - 0x43c], ecx
push eax
sub ecx, edx
push ecx
push esi
mov esi, dword [ebp - 0x4f8]
push edx
push 0
push dword [esi + 0x60]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 1
mov ecx, esi
call fcn.004386b0
mov eax, dword [ebp + 0x18]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x1c]
mov dword [edi + 8], eax
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00452f44
mov esp, ebp
pop ebp
ret