Function at 0x442678
Capabilities:
Create process on windows
Hide graphical window
Log keystrokes via polling
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f1988
push 0x49c650
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ecx
mov eax, 0x18ac
call fcn.004990f0
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
mov ecx, dword [ebp + 0x14]
cmp ecx, 0x1800
jne 0x442709
cmp dword [0x507b30], 0
jne 0x442709
mov eax, dword [ebp + 0xc]
xor ebx, ebx
sub eax, ebx
je 0x442700
sub eax, 1
je 0x4426f7
sub eax, 1
je 0x4426ee
sub eax, 1
je 0x4426e5
sub eax, 1
jne 0x442e42
mov dword [ebp - 0x1c], 0x9c70
jmp 0x442711
mov dword [ebp - 0x1c], 0x9c6f
jmp 0x442711
mov dword [ebp - 0x1c], 0x9c6e
jmp 0x442711
mov dword [ebp - 0x1c], 0x9c6d
jmp 0x442711
mov dword [ebp - 0x1c], 0x9c6c
jmp 0x442711
xor ebx, ebx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1c], eax
cmp ecx, 1
jne 0x44278c
cmp dword [0x531db0], 0
je 0x44278c
push 0x100
push ebx
lea eax, [ebp - 0x1a4]
push eax
call fcn.0049a3b0
add esp, 0xc
lea eax, [ebp - 0x1a4]
push eax
call dword [sym.imp.USER32.dll_GetKeyboardState]
test eax, eax
je 0x44278c
push 0x30
pop eax
mov dword [ebp - 0x20], eax
mov edi, dword [ebp + 8]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [ebp + eax - 0x1a4], 0
jge 0x44276b
push ebx
push eax
push 0x100
push edi
call esi
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp eax, 0x87
jl 0x44274e
test byte [ebp - 0x184], 0x80
je 0x44278f
push ebx
push 0x20
push 0x100
push edi
call esi
jmp 0x44278f
mov edi, dword [ebp + 8]
mov eax, dword [ebp - 0x1c]
movzx ecx, ax
mov dword [ebp - 0x24], ecx
movzx esi, cx
mov eax, 0x87d0
cmp cx, ax
jb 0x442a30
cmp esi, dword [0x5332b0]
jge 0x442a30
push 0x4cc550
push 0x503978
call fcn.004a33b3
pop ecx
pop ecx
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x442e42
mov dword [ebp - 0x20], ebx
lea eax, [esi - 0x87d0]
mov dword [ebp - 0x24], eax
push 0x1000
push ebx
lea eax, [ebp - 0x18c4]
push eax
call fcn.0049a3b0
mov edi, 0x104
push edi
push ebx
lea eax, [ebp - 0x1a8]
push eax
call fcn.0049a3b0
mov esi, dword [ebp - 0x1c]
jmp 0x4428eb
push esi
push 0x1000
lea eax, [ebp - 0x18c4]
push eax
call fcn.004a3230
push esi
call fcn.004a34dc
add esp, 0x10
test eax, eax
jne 0x442a25
cmp byte [ebp - 0x18c4], al
je 0x4428cb
cmp byte [ebp - 0x1a8], al
je 0x4428cb
lea eax, [ebp - 0x1a8]
dec eax
mov dword [ebp + 0x14], eax
lea eax, [ebp - 0x1a8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [ebp + 0x14]
cmp byte [eax + ecx], 0xa
jne 0x442878
lea eax, [ebp - 0x1a8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [ebp + 0x14]
mov byte [eax + ecx], bl
lea eax, [ebp - 0x18c4]
dec eax
mov dword [ebp + 0x14], eax
lea eax, [ebp - 0x18c4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [ebp + 0x14]
cmp byte [eax + ecx], 0xa
jne 0x4428ab
lea eax, [ebp - 0x18c4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [ebp + 0x14]
mov byte [eax + ecx], bl
cmp byte [ebp - 0x18c4], 0
je 0x4428cb
cmp byte [ebp - 0x1a8], 0
je 0x4428cb
mov ecx, dword [ebp - 0x20]
mov eax, ecx
inc ecx
mov dword [ebp - 0x20], ecx
cmp eax, dword [ebp - 0x24]
je 0x44290f
push 0x1000
push ebx
lea eax, [ebp - 0x18c4]
push eax
call fcn.0049a3b0
push edi
push ebx
lea eax, [ebp - 0x1a8]
push eax
call fcn.0049a3b0
push esi
push edi
lea eax, [ebp - 0x1a8]
push eax
call fcn.004a3230
push esi
call fcn.004a34dc
add esp, 0x28
test eax, eax
je 0x44280a
jmp 0x442a25
mov edi, ebx
cmp dword [0x509160], 0
je 0x442981
push 0x5019f8
push 0xffffffffffffffff
push 0x4d30d0
push str.MLEnqPlay
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
call esi
mov edi, eax
cmp edi, 0xffffffff
je 0x442954
push 0x10
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx ecx, ax
shr ecx, 0xf
and ecx, 1
xor eax, eax
test edi, edi
setne al
jmp 0x44299a
push 0x5017f0
push ebx
push 0x4d30d0
push str.gen_ml_config
call esi
neg eax
sbb esi, esi
neg esi
push 0x10
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx ecx, ax
shr ecx, 0xf
and ecx, 1
xor ecx, esi
jmp 0x44299c
push 0x10
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
shr eax, 0xf
and eax, 1
xor ecx, ecx
cmp byte [0x501d07], cl
setne cl
xor ecx, eax
mov dword [ebp + 0x14], ecx
test ecx, ecx
jne 0x4429a8
call fcn.00491a51
push ebx
push ebx
push 0xfde9
lea eax, [ebp - 0x1a8]
push eax
call fcn.00405018
pop ecx
pop ecx
push eax
call fcn.00491763
add esp, 0xc
mov esi, dword [ebp + 0x14]
test esi, esi
jne 0x4429fe
cmp byte [0x504abe], 0
je 0x4429dd
call fcn.00491bb4
mov ebx, eax
push ebx
call fcn.00492de2
mov dword [esp], 0x532de0
push 0x532ac0
push 0x5322a0
call fcn.00491cd5
add esp, 0xc
jmp 0x442a0f
cmp edi, 2
jne 0x442a0f
call fcn.00492412
push eax
call fcn.00492de2
pop ecx
call fcn.0045c8b5
test esi, esi
je 0x442a1d
cmp edi, 2
jne 0x442a22
call fcn.0048fb27
mov esi, dword [ebp - 0x1c]
push esi
call fcn.004a3458
jmp 0x442e41
mov eax, 0x7fff
cmp cx, ax
jb 0x442b5b
cmp esi, dword [0x5332b4]
jge 0x442b5b
push 0x208
push ebx
lea eax, [ebp - 0x2ac]
push eax
call fcn.0049a3b0
add esp, 0xc
cmp esi, 0x8000
jb 0x442ad1
push 0x30
pop eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
push 0xa
pop ecx
xor eax, eax
lea edi, [ebp - 0x48]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x2ac]
mov dword [ebp - 0x2c], eax
mov edi, 0x104
mov dword [ebp - 0x28], edi
lea eax, [ebp - 0x50]
push eax
push ebx
push esi
push dword [0x531e60]
call dword [sym.imp.USER32.dll_GetMenuItemInfoW]
cmp dword [ebp - 0x30], 1
jne 0x442aaa
push str..zip
jmp 0x442ab5
cmp dword [ebp - 0x30], 2
jne 0x442ac4
push str..wsz
push edi
lea eax, [ebp - 0x2ac]
push eax
call fcn.0040ad38
jmp 0x442ad6
cmp dword [ebp - 0x30], 4
jne 0x442ad6
push str..wal
jmp 0x442ab5
mov edi, 0x104
lea eax, [ebp - 0x2ac]
push eax
mov esi, 0x504ce0
push esi
call fcn.0049e71a
pop ecx
pop ecx
test eax, eax
je 0x442e42
lea eax, [ebp - 0x2ac]
push eax
push edi
push esi
call fcn.0040c4d6
push ebx
push 0x9d63
push 0x111
push dword [0x531f70]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
call esi
push 0x28
pop esi
cmp dword [0x533710], esi
jne 0x442e42
push dword [0x533714]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x442e42
mov dword [0x533710], ebx
push 1
call fcn.0048de8f
mov dword [0x533710], esi
push 1
call fcn.0048de8f
jmp 0x443272
mov eax, 0x878c
cmp cx, ax
jb 0x442c2c
cmp esi, dword [0x5332b8]
jge 0x442c2c
cmp byte [0x500dc1], 0
je 0x442c2c
push 0x208
push ebx
lea eax, [ebp - 0x2ac]
push eax
call fcn.0049a3b0
add esp, 0xc
cmp esi, 0x878d
jb 0x442bfa
push 0x30
pop eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
push 0xa
pop ecx
xor eax, eax
lea edi, [ebp - 0x48]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x2ac]
mov dword [ebp - 0x2c], eax
mov edi, 0x104
mov dword [ebp - 0x28], edi
lea eax, [ebp - 0x50]
push eax
push ebx
push esi
push dword [0x531e60]
call dword [sym.imp.USER32.dll_GetMenuItemInfoW]
cmp dword [ebp - 0x30], 1
jne 0x442be2
push str..zip
jmp 0x442bed
cmp dword [ebp - 0x30], 2
jne 0x442bfa
push str..wlz
push edi
lea eax, [ebp - 0x2ac]
push eax
call fcn.0040ad38
lea eax, [ebp - 0x2ac]
push eax
push 0x503f90
call fcn.0049e71a
pop ecx
pop ecx
test eax, eax
je 0x442e42
lea eax, [ebp - 0x2ac]
push eax
push dword [0x531f70]
call fcn.0044ee93
jmp 0x443272
lea eax, [ecx + 0x5038]
mov edx, 0x270f
cmp ax, dx
ja 0x442caa
push ebx
push ebx
call fcn.0048d08a
pop ecx
pop ecx
mov edi, eax
test edi, edi
je 0x442e42
cmp dword [0x50bc50], 0
jne 0x442c7e
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x442c7e
push ebx
push 0x9dbb
push 0x111
push dword [0x531f70]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
call ebx
jmp 0x442c84
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x50bc50], 0
jne 0x442e42
push 0x105
lea eax, [esi - 0xafc8]
push eax
push 0x1400
push edi
call ebx
jmp 0x442e42
lea eax, [esi - 0x9c41]
cmp eax, 0x1d3
ja case.0x442cbe.40002
movzx eax, byte [eax + 0x443dc8]
jmp dword [eax*4 + 0x443c74]
push str.https:__help.winamp.com_hc_sections_8103009633300_Winamp_Desktop_Player_
push edi
call fcn.0040cb16
pop ecx
pop ecx
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret
push 0x400
push ebx
lea eax, [ebp - 0xcc4]
push eax
call fcn.0049a3b0
push 0x40
push ebx
lea eax, [ebp - 0xa0]
push eax
call fcn.0049a3b0
push 0x40
push ebx
lea eax, [ebp - 0x60]
push eax
call fcn.0049a3b0
mov dword [ebp + 0x14], ebx
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.00404c54
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0xa0]
push eax
push 0x270f
push 0x4cc174
push str.http:__services.winamp.com_redirect_support_reasonFeedbacksubjectWinamp_FeedbackproductWinamp_Desktopv_s_Build__dplatform_s___s_
push 0x200
lea eax, [ebp - 0xcc4]
push eax
call fcn.0040adba
add esp, 0x4c
lea eax, [ebp - 0xcc4]
push eax
jmp 0x442cca
mov ecx, dword [0x53311c]
test ecx, ecx
je case.0x442cbe.40002
push ebx
mov eax, dword [ebp + 0x14]
shl eax, 0x10
or eax, esi
push eax
push 0x111
push ecx
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
call esi
jmp case.0x442cbe.40002
push ebx
push esi
push 0x111
push dword [0x531f74]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
call esi
jmp 0x442cd4
mov dword [0x50bc50], ebx
jmp case.0x442cbe.40002
cmp byte [esi + 0x528109], 0
je 0x442e42
push 0x40
push ebx
lea eax, [ebp - 0xa0]
push eax
call fcn.0049a3b0
push ebx
call fcn.0048fba4
movsx eax, byte [esi + 0x528109]
push eax
push str.cda:___c
push 0x20
lea eax, [ebp - 0xa0]
push eax
call fcn.0040adba
call fcn.00491a51
push ebx
push ebx
lea eax, [ebp - 0xa0]
push eax
call fcn.00491763
add esp, 0x2c
jmp 0x4435a8
mov ecx, dword [0x531f70]
mov eax, dword [0x533114]
test eax, eax
cmovne ecx, eax
push ecx
call fcn.0045c8f1
pop ecx
test eax, eax
je case.0x442cbe.40002
jmp 0x442e42
mov edx, dword [0x531f70]
mov ecx, dword [0x533114]
test ecx, ecx
cmovne edx, ecx
push edx
call fcn.0045cf32
pop ecx
xor eax, eax
inc eax
jmp 0x442cd4
push ebx
push 0x4cbf1c
push ebx
push ebx
push 0x12e
call fcn.00441947
add esp, 0xc
push eax
push edi
call dword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x442e42
push 0x820
push ebx
lea eax, [ebp - 0x8c4]
push eax
call fcn.0049a3b0
push 0x320
push ebx
lea eax, [ebp - 0xbe4]
push eax
call fcn.0049a3b0
add esp, 0x18
lea eax, [ebp - 0xbe4]
push eax
lea eax, [ebp - 0x8c4]
push eax
call fcn.00491c69
push eax
call fcn.00492131
lea eax, [ebp - 0xbe4]
push eax
lea eax, [ebp - 0x8c4]
push eax
call fcn.0040def5
add esp, 0x14
jmp 0x442e42
push 0x22
pop eax
mov word [ebp - 0x1a8], ax
push 0x102
push ebx
lea eax, [ebp - 0x1a6]
push eax
call fcn.0049a3b0
mov dword [ebp - 0xa4], 0x44
push 0x40
push ebx
lea eax, [ebp - 0xa0]
push eax
call fcn.0049a3b0
add esp, 0x18
push 0x103
lea eax, [ebp - 0x1a7]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x4d32c8
push 0x104
lea eax, [ebp - 0x1a8]
push eax
call fcn.0040acbc
push 1
call fcn.00414206
pop ecx
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0xa4]
push eax
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x1a8]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
jmp 0x442e42
mov dword [0x52f8b0], 1
push ebx
push ebx
push 0x7e
push edi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
call esi
mov dword [0x52f8b0], ebx
cmp dword [0x4f7c80], 0
je 0x442f82
push ebx
push ebx
push dword [0x531f78]
call dword [sym.imp.USER32.dll_InvalidateRect]
cmp dword [0x4f7c70], 0
je 0x442f99
push ebx
push ebx
push dword [0x531f74]
call dword [sym.imp.USER32.dll_InvalidateRect]
cmp dword [0x505104], 0
je 0x442e42
push ebx
push ebx
push dword [0x531f7c]
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x442e42
mov dword [0x533710], 0x28
push 1
call fcn.0048de8f
jmp 0x442e41
call fcn.0048484b
test eax, eax
je 0x442fe2
call fcn.00484ac7
jmp 0x442e42
push ebx
push dword [0x531f70]
call fcn.00484972
jmp 0x443272
mov dword [0x533710], 0x21
jmp 0x442fc3
mov al, byte [0x4f7c57]
xor al, 1
mov byte [0x4f7c57], al
cmp al, 1
jne 0x443023
push ebx
push 0xc8
push 0x27
push edi
call dword [sym.imp.USER32.dll_SetTimer]
jmp 0x442e42
test al, al
jne 0x442e42
push 0x27
push edi
call dword [sym.imp.USER32.dll_KillTimer]
mov dword [0x52fd30], ebx
cmp dword [0x531f90], 0
je 0x44304a
call fcn.00489c91
jmp 0x44304f
call fcn.00491ecf
push eax
push 0x52fd30
push 0x532ac0
jmp 0x4436ca
cmp word [0x5322a0], 0
je 0x442e42
push 0x5322a0
mov ecx, dword [0x531f70]
mov eax, dword [0x533114]
test eax, eax
cmovne ecx, eax
push ecx
call fcn.00489cc6
jmp 0x443272
call fcn.00442624
jmp 0x442e42
call fcn.00442597
jmp 0x442e42
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov esi, eax
mov eax, dword [0x531f78]
cmp esi, eax
je case.0x442cbe.40266
push eax
push esi
mov edi, dword [sym.imp.USER32.dll_IsChild]
call edi
test eax, eax
jne case.0x442cbe.40266
mov eax, dword [0x531f74]
cmp esi, eax
je case.0x442cbe.40310
push eax
push esi
call edi
test eax, eax
jne case.0x442cbe.40310
call fcn.004425d3
jmp 0x442e42
xor eax, eax
cmp dword [0x4f7c74], eax
sete al
mov dword [0x4f7c74], eax
test eax, eax
je 0x44313c
cmp dword [0x4f7c80], 0
je 0x443143
mov eax, dword [0x4f7c84]
cmp eax, 0x15e
jl 0x443143
mov ecx, dword [0x4f7c88]
cmp ecx, 0xe
je 0x443143
add eax, 0xffffff1f
mov dword [ebp - 0x30], eax
add ecx, 0xffffffe6
mov dword [ebp - 0x2c], ecx
add eax, 0x4d
mov dword [ebp - 0x28], eax
lea eax, [ecx + 0x10]
mov dword [ebp - 0x24], eax
push ebx
lea eax, [ebp - 0x30]
push eax
push dword [0x531f78]
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x443143
push edi
call fcn.0048ca79
pop ecx
mov eax, dword [0x4f7c74]
neg eax
sbb eax, eax
and eax, 8
push eax
push 0x9d42
push dword [0x531e60]
call dword [sym.imp.USER32.dll_CheckMenuItem]
push ebx
call fcn.00468d52
push dword [0x4f7c74]
push 4
call fcn.0048b811
add esp, 0xc
push 0x507b64
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [0x507b7c]
mov dword [ebp + 0x14], eax
mov esi, ebx
test esi, esi
jne 0x44319d
mov edi, dword [0x531f70]
mov eax, dword [0x4f7c74]
jmp 0x4431f5
cmp esi, 1
jne 0x4431af
mov edi, dword [0x531f74]
mov eax, dword [0x4f7c70]
jmp 0x4431f5
cmp esi, 2
jne 0x4431c1
mov edi, dword [0x531f78]
mov eax, dword [0x4f7c80]
jmp 0x4431f5
cmp esi, 4
jne 0x4431d3
mov edi, dword [0x531f7c]
mov eax, dword [0x505104]
jmp 0x4431f5
test eax, eax
jne 0x4431ec
cmp ebx, 1
jne 0x44323d
mov eax, dword [0x507b7c]
mov dword [ebp + 0x14], eax
or esi, 0xffffffff
push 2
pop ebx
jmp 0x443230
mov edi, dword [eax]
push edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test ebx, ebx
jne 0x443214
call dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp eax, edi
je 0x44320f
push eax
push edi
call dword [sym.imp.USER32.dll_IsChild]
test eax, eax
je 0x443218
xor ebx, ebx
inc ebx
jmp 0x443218
test eax, eax
jne 0x443236
cmp esi, 3
je 0x443222
cmp esi, 4
jle 0x44322d
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x1c]
mov dword [ebp + 0x14], eax
jmp 0x443230
mov eax, dword [ebp + 0x14]
inc esi
jmp 0x44318c
push edi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push 0x507b64
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x442e42
call fcn.0040aea2
jmp 0x442e42
push dword [0x531f70]
call fcn.0043fd82
jmp 0x442e41
push ebx
push 0x756
call fcn.0048d08a
pop ecx
jmp 0x442e41
cmp dword [0x531f90], 0
je 0x442e42
mov eax, dword [0x531d70]
test eax, eax
je 0x442e42
cmp dword [eax + 0x14], ebx
je 0x442e42
push dword [0x531f70]
call fcn.0043fd38
jmp 0x442e41
mov eax, dword [0x531d70]
test eax, eax
je 0x442e42
cmp dword [eax + 0x14], ebx
je 0x442e42
call fcn.00491c69
push eax
call fcn.00492743
pop ecx
test eax, eax
jne 0x442e42
cmp dword [0x531f90], eax
je 0x442e42
call fcn.00489cb7
mov esi, 0x9c7c
mov ecx, 0x1388
mov edx, 0xffffec78
cmp word [ebp - 0x24], si
cmovne ecx, edx
add ecx, eax
xor eax, eax
test ecx, ecx
cmovns eax, ecx
push eax
call fcn.00489f4e
pop ecx
push ebx
test eax, eax
jns 0x44331c
push ebx
push 0x402
jmp 0x443494
call fcn.00489cb7
cdq
mov ecx, 0x3e8
idiv ecx
push eax
call fcn.00479bab
jmp 0x443272
mov dword [ebp - 0x28], 6
mov dword [ebp - 0x24], 0xd
cmp byte [0x504ac1], 0
je 0x443359
mov dword [ebp - 0x28], 0xc
mov dword [ebp - 0x24], 0x1a
lea eax, [ebp - 0x28]
push eax
push edi
call dword [sym.imp.USER32.dll_ClientToScreen]
mov ecx, dword [ebp - 0x24]
lea eax, [ecx + 0x752f]
cmp eax, 0x7ce
ja 0x443381
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov ecx, dword [ebp - 0x24]
push edi
push ecx
push dword [ebp - 0x28]
push 2
push dword [0x531e60]
call fcn.00479ad7
jmp 0x442ebc
xor esi, esi
inc esi
cmp byte [0x504abe], 0
jne 0x4433c9
push 0xffffffffffffffff
call fcn.00491159
pop ecx
test eax, eax
jns 0x4433c9
mov esi, ebx
cmp byte [0x504abf], 0
je 0x4433c9
xor esi, esi
inc esi
push 0x3b9aca00
call fcn.00491159
pop ecx
test esi, esi
je case.0x442cbe.40002
call fcn.00492412
test eax, eax
je case.0x442cbe.40002
cmp byte [0x504abe], 0
je 0x4433f7
push 0xffffffffffffffff
call fcn.00492880
pop ecx
test eax, eax
jne 0x442e42
push 0x532de0
push 0x532ac0
push 0x5322a0
call fcn.00491cd5
add esp, 0xc
push ebx
cmp dword [0x531f90], 0
je 0x443428
call fcn.0048fba4
pop ecx
call fcn.0048fb27
jmp case.0x442cbe.40002
call fcn.0048fba4
jmp 0x442cd1
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push esi
push edi
call fcn.00441ede
add esp, 0x10
jmp 0x442cd4
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push esi
push edi
call fcn.00442016
jmp 0x44343f
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push esi
push edi
call fcn.004420d0
jmp 0x44343f
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push esi
push edi
call fcn.004420f2
jmp 0x44343f
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push esi
push edi
call fcn.004421be
jmp 0x44343f
cmp dword [0x531f40], 0
jne case.0x442cbe.40002
push ebx
push ebx
push 0x10
push edi
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
call esi
jmp 0x442e42
mov eax, dword [0x533114]
test eax, eax
cmovne edi, eax
push edi
push 1
call fcn.004495e9
pop ecx
pop ecx
call fcn.0045c8b5
jmp 0x442e42
push ebx
mov eax, dword [0x533114]
test eax, eax
cmovne edi, eax
push edi
push 1
call fcn.004493ed
add esp, 0xc
jmp 0x4434b6
mov dword [ebp - 0x3c], ebx
xorps xmm0, xmm0
movlpd qword [ebp - 0x28], xmm0
push 0x208
push ebx
lea eax, [ebp - 0xacc]
push eax
call fcn.0049a3b0
add esp, 0xc
mov eax, dword [0x533114]
test eax, eax
cmovne edi, eax
mov dword [ebp - 0x40], edi
lea eax, [ebp - 0xacc]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], str.__foo
mov dword [ebp - 0x30], 0x41
mov dword [ebp - 0x2c], 0x48b699
lea eax, [ebp - 0x40]
push eax
call dword [sym.imp.SHELL32.dll_SHBrowseForFolderW]
mov esi, eax
test esi, esi
je 0x442e42
push 0x208
push ebx
lea eax, [ebp - 0x2ac]
push eax
call fcn.0049a3b0
add esp, 0xc
lea eax, [ebp - 0x2ac]
push eax
push esi
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
push esi
call fcn.00470a9c
pop ecx
lea eax, [ebp - 0x2ac]
push eax
mov ecx, dword [0x531bc4]
call fcn.0040c2a4
call fcn.00491a51
movzx eax, byte [0x504ac8]
shr eax, 1
not eax
and eax, 1
push eax
lea eax, [ebp - 0x2ac]
push eax
call fcn.00491084
pop ecx
pop ecx
test byte [0x504ac8], 1
je 0x4435a8
push ebx
push 2
call fcn.00492e83
pop ecx
pop ecx
call fcn.0048fa6a
jmp 0x4434b6
push ebx
jmp 0x442fc5
cmp byte [0x504abd], 0
sete byte [0x504abd]
push ebx
call fcn.00468d52
jmp 0x442e41
cmp byte [0x504ac1], 0
sete byte [0x504ac1]
cmp byte [0x5050f2], 0
jne 0x4435f9
cmp byte [0x5050f3], 0
je 0x4435f9
push 1
call fcn.0041a71c
pop ecx
push 1
jmp 0x4435c7
cmp byte [0x4f7c56], 0
sete al
mov byte [0x4f7c56], al
movzx eax, al
shl eax, 3
push eax
push 0x9cfa
push dword [0x531e60]
call dword [sym.imp.USER32.dll_CheckMenuItem]
jmp 0x442e42
cmp byte [0x504abe], 0
sete al
mov byte [0x504abe], al
movzx eax, al
shl eax, 3
push eax
push 0x9c57
push dword [0x531e60]
call dword [sym.imp.USER32.dll_CheckMenuItem]
push ebx
movzx eax, byte [0x504abe]
push eax
call fcn.0041cffb
pop ecx
pop ecx
mov cl, byte [0x504abe]
test cl, cl
je 0x4436ab
call fcn.004930c0
mov cl, byte [0x504abe]
test cl, cl
je 0x4436ab
cmp dword [0x531f90], 0
jne 0x4436ab
push 0xc4653600
call fcn.00492880
mov dword [esp], 0x532de0
push 0x532ac0
push 0x5322a0
call fcn.00491cd5
add esp, 0xc
mov cl, byte [0x504abe]
xor eax, eax
test cl, cl
sete al
add eax, 0x1f1
push 0xfffffffffffffffe
push 0x52fd30
push ebx
push ebx
push eax
call fcn.00441947
add esp, 0xc
push eax
call fcn.0041d06a
add esp, 0xc
jmp 0x442e42
cmp byte [0x504abf], 0
sete al
mov byte [0x504abf], al
movzx eax, al
shl eax, 3
push eax
push 0x9c56
push dword [0x531e60]
call dword [sym.imp.USER32.dll_CheckMenuItem]
push ebx
movzx eax, byte [0x504abf]
push eax
call fcn.0041cf8c
pop ecx
pop ecx
cmp byte [0x504abf], 0
jne 0x44371e
mov eax, 0x1f3
jmp 0x4436b7
xor eax, eax
cmp byte [0x4f7c51], al
sete al
add eax, 0x1f4
jmp 0x4436b7
cmp byte [0x4f7c51], 0
sete byte [0x4f7c51]
call fcn.00451400
xor eax, eax
cmp byte [0x504abf], al
jne 0x443720
cmp byte [0x4f7c51], al
setne al
add eax, 0x1f6
jmp 0x4436b7
push ebx
push edi
call fcn.00425357
jmp 0x443272
xor eax, eax
cmp dword [ebp + 0x14], 2
sete al
push eax
push edi
call fcn.0045c96e
jmp 0x443272
cmp dword [0x505104], 0
je 0x443796
push 1
call fcn.0047c532
jmp 0x442e41
push ebx
call fcn.0047c621
jmp 0x442e41
cmp byte [0x504ac2], 0
sete al
mov byte [0x504ac2], al
movzx eax, al
xor eax, 1
shl eax, 3
push eax
push 0x9c65
push dword [0x531e60]
mov esi, dword [sym.imp.USER32.dll_CheckMenuItem]
call esi
xor eax, eax
push 8
pop ecx
cmp byte [0x504ac2], al
cmovne eax, ecx
push eax
push 0x9c66
push dword [0x531e60]
call esi
push ebx
push 0x2a
push 0x113
jmp 0x443494
mov byte [0x504ac2], bl
push 8
push 0x9c65
push dword [0x531e60]
mov esi, dword [sym.imp.USER32.dll_CheckMenuItem]
call esi
push ebx
jmp 0x4437dc
mov byte [0x504ac2], 1
push ebx
push 0x9c65
push dword [0x531e60]
mov esi, dword [sym.imp.USER32.dll_CheckMenuItem]
call esi
push 8
jmp 0x4437dc
mov eax, 0x9c7a
cmp cx, ax
mov al, byte [0x4f7c55]
jne 0x44384e
cmp al, 0xfb
ja 0x44384a
add al, 4
jmp 0x443858
or al, 0xff
jmp 0x443858
cmp al, 3
jbe 0x443856
sub al, 4
jmp 0x443858
mov al, bl
mov byte [0x4f7c55], al
movzx eax, al
push eax
call fcn.0048a232
push ebx
movzx eax, byte [0x4f7c55]
push eax
call fcn.0041da0b
push 0xfffffffffffffffe
call fcn.0041dbb5
add esp, 0x10
jmp 0x442e42
mov eax, dword [0x531f90]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x443896
push ebx
call fcn.0048fba4
pop ecx
mov dword [ebp + 0x14], 0xa
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push 0x9c6c
push 0x111
push edi
call esi
sub dword [ebp + 0x14], 1
jne 0x4438a3
jmp 0x4438ed
mov eax, dword [0x531f90]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x4438cc
push ebx
call fcn.0048fba4
pop ecx
mov dword [ebp + 0x14], 0xa
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push ebx
push 0x9c70
push 0x111
push edi
call esi
sub dword [ebp + 0x14], 1
jne 0x4438d9
cmp dword [ebp - 0x24], 0
je 0x442e42
call fcn.0048fb27
jmp 0x442e42
mov eax, str.http:__www.google.com_search_qWinampSkins
push eax
push eax
push edi
call fcn.0040cb95
add esp, 0xc
jmp case.0x442cbe.40002
push 0x208
push ebx
lea eax, [ebp - 0x2ac]
push eax
call fcn.0049a3b0
add esp, 0xc
push 0x5046a8
push 0x502b40
lea eax, [ebp - 0x2ac]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea eax, [ebp - 0x2ac]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp + 0x14], eax
test eax, eax
je 0x442e42
mov esi, ebx
push str.winampVisGetHeader
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push dword [0x531f70]
call eax
pop ecx
test eax, eax
je 0x443983
movsx ecx, byte [0x500dc3]
push ecx
call dword [eax + 8]
pop ecx
mov esi, eax
test esi, esi
je 0x4439d4
mov ecx, dword [ebp + 0x14]
mov dword [esi + 8], ecx
mov ecx, dword [0x531f70]
mov dword [esi + 4], ecx
test byte [0x505114], 1
jne 0x4439ca
mov dword [ebp - 4], ebx
push esi
call dword [esi + 0x924]
pop ecx
jmp 0x4439c4
or dword [ebp - 4], 0xffffffff
jmp 0x4439e2
push esi
call dword [esi + 0x924]
pop ecx
jmp 0x4439e2
push ebx
push 4
push 0xb
push edi
call fcn.00440e4f
add esp, 0x10
push dword [ebp + 0x14]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
jmp 0x442e42
push 0x10
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
mov ecx, 0xffff8000
test cx, ax
push 0
pop eax
setne al
mov dword [0x52fd24], eax
push 6
push dword [0x531f70]
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x442e42
call fcn.0047c825
jmp 0x442e42
push ebx
push ebx
call fcn.0048d08a
pop ecx
pop ecx
mov esi, eax
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov edi, eax
test esi, esi
je 0x443a61
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x443a61
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x443a61
push esi
push edi
call dword [sym.imp.USER32.dll_IsChild]
test eax, eax
jne 0x443a71
mov esi, dword [0x531f70]
mov eax, dword [0x533114]
test eax, eax
cmovne esi, eax
push esi
push 0x107
call fcn.0048d08a
pop ecx
pop ecx
call fcn.0044265f
jmp 0x442e42
call fcn.0044265f
push ebx
push ebx
call fcn.0048d08a
pop ecx
pop ecx
mov esi, eax
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov edi, eax
test esi, esi
je 0x443ac6
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x443ac6
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x443ac6
push esi
push edi
call dword [sym.imp.USER32.dll_IsChild]
test eax, eax
jne 0x443ad6
mov esi, dword [0x531f70]
mov eax, dword [0x533114]
test eax, eax
cmovne esi, eax
push esi
push 0x10b
jmp 0x44326d
push ebx
push ebx
call fcn.0048d08a
pop ecx
pop ecx
mov esi, eax
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov edi, eax
test esi, esi
je 0x443b1a
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x443b1a
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x443b1a
push esi
push edi
call dword [sym.imp.USER32.dll_IsChild]
test eax, eax
jne 0x443b2a
mov esi, dword [0x531f70]
mov eax, dword [0x533114]
test eax, eax
cmovne esi, eax
push esi
push 0x108
jmp 0x443a77
push ebx
push 0x109
jmp 0x443a77
call fcn.0044265f
push 0x3e8
push 0x105
jmp 0x44326d
call fcn.0044265f
push 0xbb9
jmp 0x443b4a
call fcn.0044265f
push 0x2710
jmp 0x443b4a
call fcn.0044265f
push 0x2af8
jmp 0x443b4a
call fcn.0044265f
push 0x2af9
jmp 0x443b4a
call fcn.0044265f
push ebx
push 0x10c
jmp 0x44326d
push 5
pop eax
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
dec eax
mov dword [ebp + 0x14], eax
push ebx
push 0x9c7a
push 0x111
push edi
call esi
mov eax, dword [ebp + 0x14]
test eax, eax
jne 0x443b9d
jmp 0x442e42
push 5
pop eax
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
dec eax
mov dword [ebp + 0x14], eax
push ebx
push 0x9c7b
push 0x111
push edi
call esi
mov eax, dword [ebp + 0x14]
test eax, eax
jne 0x443bc4
jmp 0x442e42
push 5
call fcn.0045cad6
pop ecx
jmp 0x442cd4
push 4
jmp 0x443be4
push 3
jmp 0x443be4
push 2
jmp 0x443be4
push 1
jmp 0x443be4
push ebx
jmp 0x443be4
push 5
call fcn.0045cbdf
jmp 0x443be9
push 4
jmp 0x443c04
push 3
jmp 0x443c04
push 2
jmp 0x443c04
push 1
jmp 0x443c04
push ebx
jmp 0x443c04
push 0x820
push ebx
lea eax, [ebp - 0x10e4]
push eax
call fcn.0049a3b0
add esp, 0xc
push ebx
lea eax, [ebp - 0x10e4]
push eax
call fcn.00491c69
push eax
call fcn.00492131
add esp, 0xc
test eax, eax
jne 0x442e42
lea eax, [ebp - 0x10e4]
push eax
mov ecx, dword [0x531bf8]
call fcn.004268cb
mov ecx, dword [0x531bf8]
call fcn.00426c19
jmp 0x442e42