Function at 0x41d5c0
Capabilities:
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50d5b1
mov eax, dword fs:[0]
push eax
sub esp, 0x220
mov eax, dword [0x555750]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
cmp dword [ebp + 0x1c], 0
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x228], eax
jne 0x41dc25
mov eax, dword [ebp + 0xc]
lea esi, [edi + 0x24]
cmp eax, dword [esi + 4]
jne 0x41d635
push 0
mov ecx, esi
call fcn.0041ba40
mov ecx, dword [ebp - 0x228]
mov eax, 1
mov dword [ecx], 0
jmp 0x41dc27
cmp eax, 2
jne 0x41d65e
lea eax, [esi + 8]
mov dword [esi + 0x14], 7
push eax
push 2
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconW]
mov esi, dword [ebp - 0x228]
mov eax, dword [ebp + 0xc]
mov dword [esi], 0
jmp 0x41d6b9
cmp eax, 0x22b8
jne 0x41d6b3
mov edi, esi
lea eax, [esi - 0x28]
neg edi
sbb edi, edi
and edi, eax
cmp ecx, 0x200
jne 0x41d699
cmp byte [esi + 0x410], 0
jne 0x41d692
lea ecx, [esi + 0x3d0]
call fcn.0041f1f0
mov ecx, dword [ebp - 0x21c]
mov byte [esi + 0x410], 0
push ecx
mov ecx, edi
call fcn.0041d110
mov ecx, dword [ebp - 0x228]
mov dword [ecx], eax
mov eax, 1
jmp 0x41dc27
mov esi, dword [ebp - 0x228]
cmp eax, 1
jne 0x41d7d6
mov eax, dword [edi + 0x18]
push 0x6c
push 0
mov dword [eax + 0x20], 1
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
push eax
lea ecx, [edi + 0x24]
call fcn.0041ba40
push 0
push 0x6ddd00
push 0x304
push dword [edi + 4]
call dword [sym.imp.USER32.dll_SetTimer]
mov ecx, dword [0x55b984]
test ecx, ecx
jne 0x41d771
push 0x555064
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x55b984], 0
jne 0x41d760
push 0x20
call fcn.0049ecc4
add esp, 4
mov dword [ebp - 0x21c], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x41d747
xorps xmm0, xmm0
mov ecx, eax
movups xmmword [eax], xmm0
movups xmmword [eax + 0x10], xmm0
call fcn.0040f400
jmp 0x41d749
xor eax, eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x21c]
xor edx, edx
lock or dword [ecx], edx
mov dword [0x55b984], eax
push 0x555064
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [0x55b984]
push 0
call fcn.0040f4c0
call fcn.00416c20
mov ecx, eax
call fcn.00416d30
call fcn.00411080
sub esp, 0x28
mov ecx, eax
mov edx, esp
push 0
push 0
push 1
push 0
push 0x518984
mov dword [edx + 0x24], 0
call fcn.00427710
push 0
lea ecx, [edi - 4]
call fcn.0041bb10
mov ecx, dword [ebp - 0x228]
mov dword [ecx], 0
mov eax, dword [edi + 0x18]
cmp dword [eax + 0x20], 0
je 0x41dc25
mov eax, 1
jmp 0x41dc27
cmp eax, 2
jne 0x41d914
mov eax, dword [edi + 0x18]
push 0x302
mov dword [eax + 0x20], 1
push dword [edi + 4]
call dword [sym.imp.USER32.dll_KillTimer]
mov esi, dword [edi + 0x528]
test esi, esi
jne 0x41d89e
push esi
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_CreateEventW]
push 8
mov dword [edi + 0x524], eax
call fcn.0049ecc4
mov esi, eax
add esp, 4
mov dword [ebp - 0x22c], esi
mov dword [ebp - 4], 1
test esi, esi
je 0x41d88b
push 0xc
call fcn.0049ecc4
add esp, 4
test eax, eax
je 0x41d858
mov ecx, dword [edi + 0x524]
mov dword [eax], ecx
mov dword [eax + 4], 4
mov dword [eax + 8], 0x4198d0
jmp 0x41d85a
xor eax, eax
mov dword [ebp - 0x21c], eax
lea eax, [ebp - 0x21c]
mov byte [ebp - 4], 2
push eax
push esi
call fcn.0041b080
mov eax, dword [ebp - 0x21c]
add esp, 8
test eax, eax
je 0x41d88d
push 0xc
push eax
call fcn.0049e9da
add esp, 8
jmp 0x41d88d
xor esi, esi
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0x528], esi
test esi, esi
je 0x41d8f0
push dword [edi + 0x524]
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov ecx, dword [edi + 0x528]
cmp dword [ecx + 4], 0
je 0x41d8bb
call fcn.0041e190
push dword [edi + 0x524]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [edi + 0x528]
test eax, eax
je 0x41d8e6
cmp dword [eax + 4], 0
jne 0x41dc44
push 8
push eax
call fcn.0049e9da
add esp, 8
mov dword [edi + 0x528], 0
lea ecx, [edi + 0x4c4]
call fcn.00418480
call fcn.00416c20
mov ecx, eax
call fcn.00416fe0
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
jmp 0x41d7b3
cmp eax, 0x113
jne 0x41dafa
mov eax, dword [edi + 0x18]
mov dword [eax + 0x20], 1
mov eax, dword [ebp + 0x10]
sub eax, 0x302
je 0x41d99b
sub eax, 2
jne 0x41d7b3
push eax
call fcn.004e90d3
add esp, 4
mov dword [ebp - 0x21c], eax
mov esi, edx
call fcn.0041bd40
mov ecx, eax
call fcn.0040d6a0
mov ecx, dword [ebp - 0x21c]
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x220], esi
js 0x41d7b3
jg 0x41d97e
cmp ecx, 0x5265c00
jbe 0x41d7b3
call fcn.0041bd40
mov ecx, eax
call fcn.0040d860
call fcn.0041bd40
mov ecx, eax
call fcn.0040d5c0
jmp 0x41d7b3
lea eax, [ebp - 0x224]
xorps xmm0, xmm0
push eax
movlpd qword [ebp - 0x224], xmm0
call fcn.00423af0
push 0
call fcn.004e90d3
add esp, 8
sub eax, dword [ebp - 0x224]
sbb edx, dword [ebp - 0x220]
test edx, edx
jg 0x41da40
jl 0x41d9d5
cmp eax, 0x15180
jae 0x41da40
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.004e27f0
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea eax, [ebp - 0x21c]
mov dword [ebp - 0x21c], 0
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00405320
add esp, 8
test eax, eax
jne 0x41d7b3
mov dword [ebp - 0x21c], 1
jmp 0x41da4a
mov dword [ebp - 0x21c], 3
push 0x302
push dword [edi + 4]
call dword [sym.imp.USER32.dll_KillTimer]
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
push 8
mov dword [edi + 0x524], eax
call fcn.0049ecc4
mov esi, eax
add esp, 4
mov dword [ebp - 0x22c], esi
mov dword [ebp - 4], 3
test esi, esi
je 0x41daed
push 0xc
call fcn.0049ecc4
add esp, 4
test eax, eax
je 0x41dab1
mov ecx, dword [edi + 0x524]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x21c]
mov dword [eax + 4], ecx
mov dword [eax + 8], 0x4198d0
jmp 0x41dab3
xor eax, eax
mov dword [ebp - 0x21c], eax
lea eax, [ebp - 0x21c]
mov byte [ebp - 4], 4
push eax
push esi
call fcn.0041b080
mov eax, dword [ebp - 0x21c]
add esp, 8
test eax, eax
je 0x41daef
push 0xc
push eax
call fcn.0049e9da
add esp, 8
mov dword [edi + 0x528], esi
jmp 0x41d7b3
xor esi, esi
mov dword [edi + 0x528], esi
jmp 0x41d7b3
cmp eax, 0x42e
jne 0x41dbe2
cmp dword [edi + 0x55c], 0
jne 0x41dbd5
cmp dword [edi + 0x558], 0
jne 0x41dbd5
push 0x328
call fcn.0049ecc4
add esp, 4
mov dword [ebp - 0x228], eax
mov dword [ebp - 4], 5
test eax, eax
je 0x41db67
push 0x328
push 0
push eax
call fcn.004e27f0
mov ecx, dword [ebp - 0x228]
lea eax, [edi + 0x55c]
add esp, 0xc
push eax
lea eax, [edi - 4]
push eax
call fcn.0041f350
mov ecx, eax
jmp 0x41db69
xor ecx, ecx
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0x55c], ecx
call fcn.0041bd40
mov ecx, eax
call fcn.0040d6c0
mov ecx, dword [edi + 0x55c]
push eax
push dword [ebp - 0x21c]
push dword [ebp + 0x10]
call fcn.0041f860
movaps xmm0, xmmword [0x518a20]
mov ecx, dword [edi + 0x55c]
push 0
sub esp, 0x10
mov eax, esp
push 0x88
push SysReAllocStringLen
push 0x518910
push 0
movups xmmword [eax], xmm0
call fcn.00436420
mov ecx, dword [edi + 0x55c]
mov dword [edi + 0x560], eax
call fcn.00436940
mov dword [esi], 0
mov eax, 1
jmp 0x41dc27
cmp eax, 0x465
jne 0x41dc25
add edi, 0xfffffffc
push str..PIPE4C6B6BDC_A47D_6B44_E687_2CB6CE2F0F59
lea esi, [edi + 0x530]
mov ecx, esi
call fcn.00414b90
lea eax, [edi + 0x43c]
mov ecx, esi
neg edi
sbb edi, edi
and edi, eax
push edi
call fcn.00415770
mov ecx, dword [ebp - 0x228]
mov eax, 1
mov dword [ecx], 0
jmp 0x41dc27
xor eax, eax
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.0049ec90
mov esp, ebp
pop ebp
ret 0x18
call fcn.004e8f0d
int3