Function at 0x458a90
Capabilities:
Find taskbar

Disassembly:
sub esp, 0x850
mov eax, dword [0x651788]
xor eax, esp
mov dword [esp + 0x84c], eax
push ebx
push ebp
push esi
mov esi, dword [esp + 0x860]
push edi
mov ebp, ecx
push 0x20c
mov dword [esp + 0x24], ebp
call fcn.00492548
mov edi, eax
xor ebx, ebx
add esp, 4
cmp edi, ebx
je 0x458add
push 0x20c
push ebx
push edi
call fcn.004afb50
add esp, 0xc
mov eax, edi
jmp 0x458adf
xor eax, eax
push 0x20c
push ebx
push eax
mov dword [ebp + 0xc94], eax
call fcn.004afb50
add esp, 0xc
push 0x104
lea eax, [esp + 0x450]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea ecx, [esp + 0x44c]
push 0x5c
push ecx
call fcn.004afca4
lea edx, [esp + 0x454]
push edx
mov word [eax + 2], bx
lea eax, [esp + 0x250]
push str._sConfig.ini
push eax
call fcn.00405340
add esp, 0x14
cmp esi, ebx
je 0x458c63
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x458b45
sub eax, edx
sar eax, 1
je 0x458c63
push ebx
push 0x104
lea ecx, [esp + 0x65c]
push esi
push ecx
call fcn.004718a0
mov edx, dword [ebp + 0xc94]
push esi
add edx, 4
push 0x574fd8
push edx
call fcn.00405340
push 0x206
lea eax, [esp + 0x5e]
push ebx
push eax
mov word [esp + 0x64], bx
call fcn.004afb50
mov eax, esi
add esp, 0x28
xor ebp, ebp
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x458ba2
sub eax, edx
sar eax, 1
je 0x458c23
lea edx, [esp + 0x3c]
sub edx, esi
lea edi, [esp + 0x3e]
sub edi, esi
mov ecx, esi
mov dword [esp + 0x24], edx
mov dword [esp + 0x10], edi
jmp 0x458bd8
mov edx, dword [esp + 0x24]
mov edi, dword [esp + 0x10]
movzx eax, word [ecx]
cmp ax, 0xa
je 0x458bf1
cmp ax, 0xd
je 0x458bf1
lea edx, [ebx + ebp]
mov word [esp + edx*2 + 0x3c], ax
jmp 0x458c00
mov word [edx + ecx], 0x5c
mov word [edi + ecx], 0x72
add ebp, 1
mov eax, esi
add ebx, 1
add ecx, 2
lea edi, [eax + 2]
jmp 0x458c10
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x458c10
sub eax, edi
sar eax, 1
cmp ebx, eax
jb 0x458bd0
mov esi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea eax, [esp + 0x244]
push eax
lea ecx, [esp + 0x40]
push ecx
push str.ClockFormat
push 0x573194
call esi
lea edx, [esp + 0x244]
push edx
push 0x573190
push str.IsUserClockFormat
push 0x573194
call esi
mov ebp, dword [esp + 0x20]
xor ebx, ebx
jmp 0x458cd8
mov esi, dword [esp + 0x868]
mov eax, dword [esi*4 + 0x604a74]
push ebx
push 0x104
push eax
lea ecx, [esp + 0x660]
push ecx
call fcn.004718a0
mov edx, dword [ebp + 0xc94]
push esi
lea eax, [esp + 0x3c]
push 0x571094
push eax
mov dword [edx], esi
call fcn.00405340
mov esi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
add esp, 0x1c
lea ecx, [esp + 0x244]
push ecx
lea edx, [esp + 0x2c]
push edx
push str.ClockFormatIndex
push 0x573194
call esi
lea eax, [esp + 0x244]
push eax
push 0x5731a4
push str.IsUserClockFormat
push 0x573194
call esi
mov ecx, dword [ebp + 0xfc8]
mov edx, dword [ecx]
mov edx, dword [edx + 0x2c]
lea eax, [esp + 0x654]
push eax
call edx
xor eax, eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0xc94]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0xc90]
cmp eax, ebx
mov dword [esp + 0x18], 0x20c
mov dword [esp + 0x14], ebx
je 0x458d28
mov edx, dword [ebp + 4]
lea ecx, [esp + 0x14]
push ecx
push edx
push 0x4a
push eax
jmp 0x458e22
push ebx
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FindWindowW]
push 5
push eax
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
cmp esi, ebx
je 0x458e28
mov edi, dword [sym.imp.USER32.dll_GetClassNameW]
lea ecx, [ecx]
push 0x104
lea eax, [esp + 0x40]
push eax
push esi
call edi
mov ecx, str.TrayNotifyWnd
lea eax, [esp + 0x3c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x458d8c
cmp dx, bx
je 0x458d88
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x458d8c
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x458d66
xor eax, eax
jmp 0x458d91
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x458da9
push 2
push esi
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
cmp esi, ebx
jne 0x458d50
jmp 0x458e28
push 5
push esi
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
cmp esi, ebx
je 0x458e28
jmp 0x458dc0
push 0x104
lea ecx, [esp + 0x40]
push ecx
push esi
call edi
mov ecx, str.TrayClockWClass
lea eax, [esp + 0x3c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x458dfc
cmp dx, bx
je 0x458df8
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x458dfc
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x458dd6
xor eax, eax
jmp 0x458e01
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x458e16
push 2
push esi
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
cmp esi, ebx
jne 0x458dc0
jmp 0x458e28
mov eax, dword [ebp + 4]
lea edx, [esp + 0x14]
push edx
push eax
push 0x4a
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp + 0xc94]
cmp eax, ebx
je 0x458e41
push eax
call fcn.00492573
add esp, 4
mov dword [ebp + 0xc94], ebx
mov ecx, dword [esp + 0x85c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004aeca3
add esp, 0x850
ret 8