Function at 0x41fd50
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x480fbb
mov eax, dword fs:[0]
push eax
sub esp, 0x4f8
mov eax, dword [0x4a7ea0]
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 0x41fe09
cmp byte [edi], 0
je 0x41fe09
mov ecx, dword [0x4a6734]
push 0x16a7
call fcn.00428a70
mov esi, eax
test esi, esi
je 0x41fe09
push 0x3e8
lea eax, [ebp - 0x40c]
push 0
push eax
call fcn.00452db0
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.004543a6
add esp, 8
test eax, eax
jne 0x41fe09
push 1
mov ecx, esi
call fcn.00439950
xor eax, eax
jmp 0x4203ad
mov ecx, dword [0x4a6734]
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 [0x4ab3f8], 1
call fcn.00429ea0
push dword [ebp - 0x4f0]
mov dword [ebp - 0x4f8], eax
push str.THE_SELECTED_DATE
lea esi, [eax + 0x10e]
mov ecx, esi
call fcn.00444470
push dword [ebp - 0x500]
mov ecx, esi
push str.THE_SELECTED_DATE_WAS_SET
call fcn.00444470
test edi, edi
je 0x41ff22
cmp byte [edi], 0
je 0x41ff22
push edi
lea ecx, [ebp - 0x4ec]
call fcn.00425970
mov esi, dword [ebp - 0x4f8]
lea eax, [ebp - 0x4ec]
push eax
mov ecx, esi
mov dword [ebp - 4], 0
call fcn.00439050
lea ecx, [ebp - 0x4ec]
mov dword [ebp - 4], 0xffffffff
call fcn.00425a30
jmp 0x41ff28
mov esi, dword [ebp - 0x4f8]
push esi
call fcn.0041f490
mov esi, dword [ebp - 0x4f0]
movzx eax, word [esi]
push eax
call fcn.00409f40
dec ax
movzx edi, ax
movzx eax, word [esi]
push eax
call fcn.004099c0
movzx eax, ax
mov dword [ebp - 0x500], eax
movzx eax, word [esi]
push eax
call fcn.0040af20
mov ecx, dword [ebp - 0x4f8]
add esp, 0x10
movzx eax, ax
mov dword [ebp - 0x4fc], eax
push 0x16a8
call fcn.004310d0
mov esi, eax
push 0xffffffffffffffff
push 0x4848f4
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x4848fc
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x484908
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x484910
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x484918
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x48491c
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x484924
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x48492c
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x484934
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x484940
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x484948
mov ecx, esi
call fcn.0042d810
push 0xffffffffffffffff
push 0x484954
mov ecx, esi
call fcn.0042d810
xor eax, eax
test di, di
cmovs edi, eax
mov eax, dword [ebp - 0x4fc]
cmp ax, 0x46
jl 0x42003e
add eax, 0x76c
jmp 0x420043
add eax, 0x7d0
mov dword [ebp - 0x4fc], eax
mov ecx, esi
movsx eax, di
push eax
call fcn.0042fa20
mov esi, dword [ebp - 0x4f8]
lea eax, [ebp - 0x4fc]
push eax
push 0x16b2
mov ecx, esi
call fcn.00431540
mov ecx, eax
call fcn.00446c10
push 0x16aa
mov ecx, esi
call fcn.00431400
mov edi, eax
xor ecx, ecx
mov dword [ebp - 0x504], edi
cmp dword [edi + 0x8e], ecx
jle 0x4200c9
xor edx, edx
test ecx, ecx
js 0x4200aa
cmp ecx, dword [edi + 0x8e]
jge 0x4200aa
mov eax, dword [edi + 0x8a]
add eax, edx
jmp 0x4200ac
xor eax, eax
inc ecx
mov dword [eax + 0x52], 1
mov dword [eax + 0x4e], 1
add edx, 0xb1
cmp ecx, dword [edi + 0x8e]
jl 0x420094
push esi
call fcn.0041f850
mov eax, dword [ebp - 0x500]
cwde
push eax
lea eax, [ebp - 0x24]
mov byte [edi + 0x178], 1
push 0x484b00
push eax
call fcn.00452c8a
xor eax, eax
add esp, 0x10
mov dword [ebp - 0x4f0], eax
cmp dword [edi + 0xbe], eax
jle 0x420182
xor esi, esi
cmp dword [edi + 0x8e], esi
jle 0x420173
lea ecx, [ecx]
push esi
push eax
mov ecx, edi
call fcn.0043d3d0
lea ecx, [ebp - 0x24]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x420140
test dl, dl
je 0x42013c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x420140
add eax, 2
add ecx, 2
test dl, dl
jne 0x420120
xor eax, eax
jmp 0x420145
sbb eax, eax
or eax, 1
test eax, eax
je 0x42015a
mov eax, dword [ebp - 0x4f0]
inc esi
cmp esi, dword [edi + 0x8e]
jl 0x420110
jmp 0x420173
push dword [ebp - 0x4f0]
mov ecx, edi
mov dword [edi + 0x179], esi
call fcn.00440f20
mov eax, dword [edi + 0xbe]
inc eax
mov dword [ebp - 0x4f0], eax
cmp eax, dword [edi + 0xbe]
jl 0x420103
cmp dword [ebp - 0x4f4], 0
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
je 0x4201df
push 0x2c
lea eax, [ebp - 0x49c]
push 0
push eax
call fcn.00452db0
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 0x4201ce
test byte [ebp - 0x494], 2
jne 0x4201df
lea eax, [ebp - 0x464]
push eax
push dword [ebp - 0x4f4]
call esi
jmp 0x4201f8
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 0x4202f2
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 0x42031d
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 0x42032d
sub edx, dword [ebp - 0x4f4]
jmp 0x420333
mov edx, dword [ebp - 0x444]
cmp dword [ebp - 0x438], esi
jle 0x420343
sub esi, dword [ebp - 0x4f0]
jmp 0x420349
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.00439950
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.004520a4
mov esp, ebp
pop ebp
ret