Function at 0x40f52f
Capabilities:
Delete file
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0xb0d4
call fcn.004990f0
mov eax, dword [sym.imp.USER32.dll_CharNextW]
movsd xmm0, qword [0x4ccbd0]
push ebx
mov ebx, dword [ebp + 0x1c]
push esi
push edi
mov edi, dword [ebp + 0x20]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp + 8]
movsd qword [ebp - 0x54], xmm0
push eax
call fcn.0040ebfe
push 0xa
mov esi, eax
push str._embedding
push esi
call fcn.0040ecf0
add esp, 0x10
test al, al
je 0x40f58a
push 0xa
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
jmp 0x4100d9
push 0x12
push str._ALLOW_COMPAT_MODE
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40f5b0
push 0x12
push esi
call fcn.004766e6
mov esi, eax
mov eax, dword [ebp + 0x24]
jmp 0x40f8e4
push 6
push str._SAFE
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f615
push 0x800
push eax
lea eax, [ebp - 0x18d4]
push eax
call fcn.0049a3b0
push 6
push esi
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0x18d4]
push 0x400
push eax
push esi
call fcn.0040f4c3
lea eax, [ebp - 0x18d4]
push eax
call fcn.004a2eb4
xor ecx, ecx
add esp, 0x24
cmp eax, 2
sete cl
inc ecx
mov dword [0x531e9c], ecx
jmp 0x4100d9
push 0xb
push str._SAFEALWAYS
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f644
push 0xb
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [0x531e9c], 3
jmp 0x4100d9
push 2
pop eax
push eax
push 0x4cc784
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
jne 0x410a6c
push 4
push str._NEW
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40f68d
push 4
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [0x531e98], 1
jmp 0x4100d9
push 7
push str._HANDLE
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40f6b3
push 7
push esi
call fcn.004766e6
mov esi, eax
mov eax, dword [ebp + 0x14]
jmp 0x40f8e4
push 5
push str._REG
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f797
push 0x800
push eax
lea eax, [ebp - 0x10d4]
push eax
call fcn.0049a3b0
push 5
push esi
lea edi, [ebp - 0x10d4]
call fcn.004766e6
mov esi, eax
mov eax, edi
push 0x400
push eax
push esi
call fcn.0040f4c3
xor ecx, ecx
add esp, 0x20
inc ecx
mov dword [0x531e94], ecx
movzx eax, word [edi]
test ax, ax
je 0x4100d6
cmp eax, 0x61
ja 0x40f74a
je 0x40f743
sub eax, 0x41
je 0x40f743
push 2
pop edx
sub eax, edx
je 0x40f775
sub eax, 1
je 0x40f771
sub eax, 8
je 0x40f76c
sub eax, edx
je 0x40f767
sub eax, 5
je 0x40f75f
sub eax, 3
jne 0x40f77e
or ecx, 4
jmp 0x40f778
push 2
pop eax
or ecx, eax
jmp 0x40f778
sub eax, 0x63
je 0x40f775
sub eax, 1
je 0x40f771
sub eax, 8
je 0x40f76c
dec eax
sub eax, 1
jmp 0x40f732
or ecx, 0x80
jmp 0x40f778
or ecx, 0x10
jmp 0x40f778
or ecx, 0x40
jmp 0x40f778
push 0x20
jmp 0x40f745
or ecx, 8
mov dword [0x531e94], ecx
push edi
call dword [ebp - 0xc]
mov edi, eax
test edi, edi
je 0x4100d6
mov ecx, dword [0x531e94]
jmp 0x40f707
push 6
push str._NOREG
push esi
call fcn.0040ecf0
add esp, 0xc
push 6
test al, al
je 0x40f7c6
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [0x531ea0], 1
jmp 0x4100d9
push str._UNREG
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
jne 0x410943
push 4
push str._ADD
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f813
movzx eax, word [esi + 8]
test ax, ax
je 0x40f801
push 0x20
pop ecx
cmp ax, cx
jne 0x40f813
push 4
push esi
call fcn.004766e6
mov esi, eax
mov eax, dword [ebp + 0xc]
jmp 0x40f8e4
push 0xc
push str._ADDPLAYLIST
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f840
movzx eax, word [esi + 0x18]
test ax, ax
je 0x410220
push 0x20
pop ecx
cmp ax, cx
je 0x410220
push 0xf
push str._CREATEPLAYLIST
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f86d
movzx eax, word [esi + 0x1e]
test ax, ax
je 0x410393
push 0x20
pop ecx
cmp ax, cx
je 0x410393
push 0xf
push str._APPENDPLAYLIST
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f89a
movzx eax, word [esi + 0x1e]
test ax, ax
je 0x4104ca
push 0x20
pop ecx
cmp ax, cx
je 0x4104ca
push 0xe
push str._ENUMPLAYLISTS
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
je 0x410834
push 9
push str._BOOKMARK
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f8f1
movzx eax, word [esi + 0x12]
test ax, ax
je 0x40f8d7
push 0x20
pop ecx
cmp ax, cx
jne 0x40f8f1
push 9
push esi
call fcn.004766e6
mov esi, eax
mov eax, dword [ebp + 0x10]
pop ecx
pop ecx
mov dword [eax], 1
jmp 0x4100d9
push 8
push str._CONFIG
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f944
push 0x800
push eax
lea eax, [ebp - 0x8d4]
push eax
call fcn.0049a3b0
push 8
push esi
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0x8d4]
push 0x400
push eax
push esi
call fcn.0040f4c3
lea eax, [ebp - 0x8d4]
push eax
call fcn.00414190
jmp 0x40f9e2
push 8
push str._INIDIR
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f994
push 0x800
push eax
lea eax, [ebp - 0x20d4]
push eax
call fcn.0049a3b0
push 8
push esi
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0x20d4]
push 0x400
push eax
push esi
call fcn.0040f4c3
lea eax, [ebp - 0x20d4]
push eax
call fcn.00414161
jmp 0x40f9e2
push 8
push str._M3UDIR
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40f9ea
push 0x800
push eax
lea eax, [ebp - 0x28d4]
push eax
call fcn.0049a3b0
push 8
push esi
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0x28d4]
push 0x400
push eax
push esi
call fcn.0040f4c3
lea eax, [ebp - 0x28d4]
push eax
call fcn.004141d7
add esp, 0x24
jmp 0x4100d9
push 7
push str._CLASS
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40fa47
push 0x800
push eax
lea eax, [ebp - 0x38d4]
push eax
call fcn.0049a3b0
push 7
push esi
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0x38d4]
push 0x400
push eax
push esi
call fcn.0040f4c3
add esp, 0x20
lea eax, [ebp - 0x38d4]
push eax
push 0x40
push 0x531ea8
call fcn.0040c4d6
jmp 0x4100d9
push 7
push str._DELM3U
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
jne 0x410811
push 5
push str._QUIT
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
jne 0x4107cc
push 5
push str._EXIT
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
jne 0x4107cc
push 6
push str._CLOSE
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
jne 0x4107cc
push 5
push str._KILL
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
jne 0x41074c
push 9
push str._STARTMIN
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40faed
push 0xa
push esi
call fcn.004766e6
mov esi, eax
mov eax, dword [ebp + 0x18]
pop ecx
pop ecx
mov dword [eax], 6
jmp 0x4100d9
push 9
push str._STARTMAX
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fb1b
push 0xa
push esi
call fcn.004766e6
mov esi, eax
mov eax, dword [ebp + 0x18]
pop ecx
pop ecx
mov dword [eax], 9
jmp 0x4100d9
push 5
push str._PREV
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fb46
push 6
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9c6c
jmp 0x4100d9
push 5
push str._PLAY
push esi
call fcn.0040ecf0
add esp, 0xc
push 6
test al, al
je 0x40fb71
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9c6d
jmp 0x4100d9
push str._PAUSE
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fb9a
push 7
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9c6e
jmp 0x4100d9
push 5
push str._STOP
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fbc5
push 6
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9c6f
jmp 0x4100d9
push 9
push str._STOPFADE
push esi
call fcn.0040ecf0
add esp, 0xc
push 0xa
test al, al
je 0x40fbf0
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9cd3
jmp 0x4100d9
push str._STOPAFTER
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fc19
push 0xb
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9cdd
jmp 0x4100d9
push 5
push str._NEXT
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fc44
push 6
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9c70
jmp 0x4100d9
push 0xa
push str._PLAYPAUSE
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fc6f
push 0xa
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x20068
jmp 0x4100d9
push 4
push str._FWD
push esi
call fcn.0040ecf0
add esp, 0xc
push 4
test al, al
je 0x40fc9a
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9cd4
jmp 0x4100d9
push str._REV
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fcc3
push 4
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9cd0
jmp 0x4100d9
push 3
push 0x4cca38
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40fd20
push 3
push esi
mov dword [ebp - 0x2c], eax
mov word [ebp - 0x28], ax
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0x2c]
push 3
push eax
push esi
call fcn.0040f4c3
lea eax, [ebp - 0x2c]
push eax
call fcn.004a2eb4
add esp, 0x18
test eax, eax
js 0x4106d2
cmp eax, 4
jge 0x4106d2
add eax, 0xffff9d83
movzx eax, ax
mov dword [ebx], eax
jmp 0x4100d9
push 8
push 0x4cca40
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40fd6c
push 8
push esi
mov dword [ebp - 4], eax
call fcn.004766e6
push 2
mov esi, eax
pop eax
push eax
lea eax, [ebp - 4]
push eax
push esi
call fcn.0040f4c3
add esp, 0x14
push 0x30
pop eax
cmp word [ebp - 4], ax
je 0x40fdbf
push 0x31
pop eax
cmp word [ebp - 4], ax
jne 0x40fdd5
mov dword [edi], 1
jmp 0x40fdd5
push 7
push str._RANDOM
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fd84
push 7
jmp 0x40fdf6
push 9
push 0x4cca64
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40fde0
push 9
push esi
mov dword [ebp - 4], eax
call fcn.004766e6
push 2
mov esi, eax
pop eax
push eax
lea eax, [ebp - 4]
push eax
push esi
call fcn.0040f4c3
add esp, 0x14
push 0x30
pop eax
cmp word [ebp - 4], ax
jne 0x40fdc3
xor eax, eax
jmp 0x40fdd3
push 0x31
pop eax
cmp word [ebp - 4], ax
jne 0x410745
xor eax, eax
inc eax
mov dword [edi], eax
mov dword [ebx], 0x100fc
jmp 0x4100d9
push 8
push str._SHUFFLE
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fe0b
push 9
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9c57
jmp 0x4100d9
push 8
push 0x4cca8c
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40fe67
push 8
push esi
mov dword [ebp - 4], eax
call fcn.004766e6
push 2
mov esi, eax
pop eax
push eax
lea eax, [ebp - 4]
push eax
push esi
call fcn.0040f4c3
add esp, 0x14
push 0x30
pop eax
cmp word [ebp - 4], ax
jne 0x40fe4a
xor eax, eax
jmp 0x40fe5a
push 0x31
pop eax
cmp word [ebp - 4], ax
jne 0x410745
xor eax, eax
inc eax
mov dword [edi], eax
mov dword [ebx], 0x100fd
jmp 0x4100d9
push 7
push str._REPEAT
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fe92
push 7
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9c56
jmp 0x4100d9
push 8
push str._PANLEFT
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40febd
push 8
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x29d79
jmp 0x4100d9
push 9
push str._PANRIGHT
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40fee8
push 9
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x29d7a
jmp 0x4100d9
push 5
push str._PAN
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x40ff41
lea edi, [ebp - 0x18]
stosd dword es:[edi], eax
push 5
push esi
stosd dword es:[edi], eax
stosw word es:[edi], ax
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0x18]
push 5
push eax
push esi
call fcn.0040f4c3
add esp, 0x14
cmp word [ebp - 0x18], 0
je 0x4106d2
lea eax, [ebp - 0x18]
push eax
call fcn.004a2eb4
mov edi, dword [ebp + 0x20]
pop ecx
mov dword [edi], eax
mov dword [ebx], 0x2007b
jmp 0x4100d9
push 6
push str._VOLUP
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40ff6c
push 6
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9c7a
jmp 0x4100d9
push 8
push str._VOLDOWN
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x40ff97
push 8
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9c7b
jmp 0x4100d9
push 5
push str._VOL
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x410024
xorps xmm0, xmm0
push 5
push esi
movlpd qword [ebp - 0x24], xmm0
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0x24]
push 4
push eax
push esi
call fcn.0040f4c3
add esp, 0x14
cmp word [ebp - 0x24], 0
je 0x4106d2
lea eax, [ebp - 0x24]
push eax
call fcn.004a2eb4
pop ecx
test eax, eax
jns 0x40ffe9
xor eax, eax
jmp 0x40fff1
push 0x64
pop ecx
cmp eax, ecx
cmovg eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
push ecx
push ecx
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
fld qword [ebp - 8]
fstp qword [esp]
call fcn.004a5630
pop ecx
pop ecx
call fcn.00499480
mov dword [edi], eax
mov dword [ebx], 0x1007a
jmp 0x4100d9
push 7
push str._JUMPTO
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x41004f
push 8
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x9d02
jmp 0x4100d9
push 6
push str._CLEAR
push esi
call fcn.0040ecf0
add esp, 0xc
test al, al
je 0x410077
push 7
push esi
call fcn.004766e6
pop ecx
pop ecx
mov esi, eax
mov dword [ebx], 0x10065
jmp 0x4100d9
push 9
push str._COMMAND
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x4100e5
push 8
pop ecx
lea edi, [ebp - 0x94]
push 9
rep stosd dword es:[edi], eax
push esi
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0x94]
push 0x10
push eax
push esi
call fcn.0040f4c3
lea eax, [ebp - 0x94]
push eax
call fcn.004a2eb4
add esp, 0x18
test eax, eax
jle 0x4106d2
cmp eax, 0x10000
jge 0x4106d2
movzx eax, ax
mov dword [ebx], eax
mov edi, dword [ebp + 0x20]
push esi
call fcn.0040f487
pop ecx
jmp 0x40f55d
push 7
push str._WA_IPC
push esi
call fcn.004a5076
add esp, 0xc
test eax, eax
jne 0x41020f
movzx eax, word [esi + 0xe]
test ax, ax
je 0x410112
push 0x20
pop ecx
cmp ax, cx
jne 0x41020f
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0xb4]
push 7
rep stosd dword es:[edi], eax
push esi
call fcn.004766e6
mov esi, eax
lea eax, [ebp - 0xb4]
push 0x10
push eax
push esi
call fcn.0040f4c3
lea eax, [ebp - 0xb4]
push eax
call fcn.004a2eb4
add esp, 0x18
test eax, eax
jle 0x4106d2
mov ecx, 0x10000
cmp eax, ecx
jg 0x4106d2
movzx eax, ax
or eax, ecx
mov dword [ebx], eax
test esi, esi
je 0x410196
mov edi, dword [ebp - 0xc]
xor eax, eax
cmp word [esi], ax
je 0x41017a
push esi
call edi
mov esi, eax
test esi, esi
je 0x410196
push 0x20
pop ebx
movzx eax, word [esi]
test ax, ax
je 0x410193
cmp ax, bx
je 0x410193
push esi
call edi
mov esi, eax
test esi, esi
jne 0x41017d
mov ebx, dword [ebp + 0x1c]
push 8
pop ecx
xor eax, eax
lea edi, [ebp - 0xd4]
rep stosd dword es:[edi], eax
push 0x10
lea eax, [ebp - 0xd4]
push eax
push esi
call fcn.0040f4c3
lea eax, [ebp - 0xd4]
push eax
call fcn.004a2eb4
add esp, 0x10
test eax, eax
js 0x4106d2
cmp eax, 0x10000
jg 0x4106d2
mov edi, dword [ebp + 0x20]
mov dword [edi], eax
test esi, esi
je 0x4100d9
xor eax, eax
cmp word [esi], ax
jne 0x410200
movzx eax, word [esi]
test ax, ax
je 0x4100d9
push 0x20
pop ecx
cmp ax, cx
je 0x4100d9
push esi
call dword [ebp - 0xc]
mov esi, eax
test esi, esi
jne 0x4101e8
jmp 0x4100d9
cmp word [esi], 0x2f
jne 0x410745
push 1
jmp 0x40f57b
push 0xc
push esi
call fcn.004766e6
pop ecx
pop ecx
mov dword [ebp - 4], eax
call fcn.00414f58
call fcn.00487643
call fcn.0048585b
cmp dword [0x531bd4], 0
je 0x410932
push 1
call fcn.00412696
mov dword [esp], 0x208
lea eax, [ebp - 0x12dc]
xor esi, esi
push esi
push eax
call fcn.0049a3b0
mov ebx, 0x200
lea eax, [ebp - 0x2d4]
push ebx
push esi
push eax
call fcn.0049a3b0
mov esi, 0x4cc6b0
lea edi, [ebp - 0x1c]
push 0x104
lea eax, [ebp - 0x12dc]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 4]
push esi
call fcn.0040f4c3
add esp, 0x24
cmp word [ebp - 0x12dc], 0
je 0x410932
push ebx
xor ebx, ebx
lea eax, [ebp - 0xad4]
push ebx
push eax
call fcn.0049a3b0
push esi
call fcn.0040ebfe
push eax
call fcn.0040f487
mov esi, eax
mov edi, 0x100
push edi
lea eax, [ebp - 0xad4]
push eax
push esi
call fcn.0040f4c3
push esi
call fcn.0040ebfe
push eax
call fcn.0040f487
push edi
lea ecx, [ebp - 0x2d4]
push ecx
push eax
call fcn.0040f4c3
add esp, 0x34
cmp word [ebp - 0xad4], bx
jne 0x41031d
lea eax, [ebp - 0x12dc]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
push edi
lea eax, [ebp - 0xad4]
push eax
call fcn.0040c4d6
cmp word [ebp - 0x2d4], bx
je 0x410352
xor eax, eax
mov word [ebp - 0x28a], ax
lea eax, [ebp - 0x1c]
push eax
xor eax, eax
cmp word [ebp - 0x2d4], 0x7b
push 2
pop ecx
cmove eax, ecx
lea ecx, [ebp - 0x2d4]
add eax, ecx
push eax
call dword [sym.imp.RPCRT4.dll_UuidFromStringW]
sub esp, 0x10
mov ecx, dword [0x531bd4]
lea esi, [ebp - 0x1c]
mov edi, esp
lea eax, [ebp - 0xad4]
push eax
lea eax, [ebp - 0x12dc]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0040ebd8
mov ecx, dword [0x531bd4]
call fcn.0040ec20
call fcn.00485813
call fcn.004877e2
push ebx
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0xf
push esi
call fcn.004766e6
pop ecx
pop ecx
mov dword [ebp - 4], eax
call fcn.00414f58
call fcn.00487643
call fcn.0048585b
cmp dword [0x531bd4], 0
je 0x410932
push 1
call fcn.00412696
mov ebx, 0x200
xor eax, eax
push ebx
push eax
lea eax, [ebp - 0xad4]
push eax
call fcn.0049a3b0
push ebx
xor ebx, ebx
lea eax, [ebp - 0x2d4]
push ebx
push eax
call fcn.0049a3b0
mov esi, 0x4cc6b0
lea edi, [ebp - 0x1c]
lea eax, [ebp - 0xad4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 4]
mov edi, 0x100
push edi
push eax
push esi
call fcn.0040f4c3
add esp, 0x28
cmp word [ebp - 0xad4], bx
je 0x410932
push esi
call fcn.0040ebfe
push eax
call fcn.0040f487
push edi
lea ecx, [ebp - 0x2d4]
push ecx
push eax
call fcn.0040f4c3
add esp, 0x14
cmp word [ebp - 0x2d4], bx
je 0x41046c
xor eax, eax
mov word [ebp - 0x28a], ax
lea eax, [ebp - 0x1c]
push eax
xor eax, eax
cmp word [ebp - 0x2d4], 0x7b
push 2
pop ecx
cmove eax, ecx
lea ecx, [ebp - 0x2d4]
add eax, ecx
push eax
call dword [sym.imp.RPCRT4.dll_UuidFromStringW]
lea eax, [ebp - 0x1c]
push 0x4cc6b0
push eax
call fcn.0040eff3
pop ecx
pop ecx
test al, al
je 0x410382
mov ecx, dword [0x531bd4]
lea eax, [ebp - 4]
push eax
sub esp, 0x10
lea esi, [ebp - 0x1c]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0040eccd
test eax, eax
je 0x410382
push 0x208
lea eax, [ebp - 0x12dc]
push ebx
push eax
call fcn.0049a3b0
lea eax, [ebp - 0x12dc]
push eax
call fcn.0040eeef
jmp 0x410355
push 0xf
push esi
call fcn.004766e6
pop ecx
pop ecx
mov ebx, eax
call fcn.00414f58
call fcn.00487643
call fcn.0048585b
cmp dword [0x531bd4], 0
je 0x410932
cmp dword [0x531bd0], 0
je 0x410932
push 1
call fcn.00412696
xor eax, eax
mov dword [esp], 0x200
push eax
lea eax, [ebp - 0x2d4]
push eax
call fcn.0049a3b0
mov esi, 0x4cc6b0
lea edi, [ebp - 0x1c]
push 0x100
lea eax, [ebp - 0x2d4]
push eax
movsd dword es:[edi], dword [esi]
push ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0040f4c3
add esp, 0x18
cmp word [ebp - 0x2d4], 0
je 0x410932
xor eax, eax
push 0x208
push eax
lea eax, [ebp - 0xadc]
push eax
call fcn.0049a3b0
push ebx
call fcn.0040ebfe
push eax
call fcn.0040f487
push 0x104
lea ecx, [ebp - 0xadc]
push ecx
push eax
call fcn.0040f4c3
xor eax, eax
add esp, 0x20
mov word [ebp - 0x28a], ax
lea eax, [ebp - 0x1c]
push eax
xor eax, eax
cmp word [ebp - 0x2d4], 0x7b
push 2
pop ecx
cmove eax, ecx
lea ecx, [ebp - 0x2d4]
add eax, ecx
push eax
call dword [sym.imp.RPCRT4.dll_UuidFromStringW]
lea ecx, [ebp - 0x4c]
call fcn.00447a39
mov ecx, dword [0x531bd4]
lea eax, [ebp - 4]
push eax
sub esp, 0x10
lea esi, [ebp - 0x1c]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0040eccd
test eax, eax
jne 0x4106c8
push dword [ebp - 4]
mov ecx, dword [0x531bd4]
call fcn.0040ec7e
mov esi, eax
test esi, esi
je 0x4106c8
mov ecx, dword [0x531bd0]
lea eax, [ebp - 0x48]
push eax
push esi
call fcn.0040ed24
test eax, eax
jne 0x4106c8
lea ecx, [ebp - 0x74]
call fcn.00447a39
mov ecx, dword [0x531bd0]
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0xadc]
push eax
call fcn.0040ed24
test eax, eax
jne 0x4106da
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x4c]
call fcn.00447b4b
xor ebx, ebx
mov ecx, dword [0x531bd0]
lea eax, [ebp - 0x4c]
push eax
push esi
call fcn.0040edac
test eax, eax
jne 0x4106c0
lea ecx, [ebp - 0x4c]
call fcn.00447ca2
mov ecx, dword [0x531bd4]
mov esi, 0x4cc6c0
push 4
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
sub esp, 0x10
mov edi, esp
push dword [ebp - 4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0040edc2
push ebx
push 0x3e8
push dword [ebp - 0x40]
push dword [ebp - 0x44]
call fcn.00499410
mov ecx, dword [0x531bd4]
mov esi, 0x4cc6d0
push 8
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
sub esp, 0x10
mov dword [ebp - 0x20], edx
mov edi, esp
push dword [ebp - 4]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0040edc2
mov ecx, dword [0x531bd4]
call fcn.0040ec20
lea ecx, [ebp - 0x74]
call fcn.00447ada
call fcn.00485813
call fcn.004877e2
xor eax, eax
push eax
jmp 0x41038d
lea eax, [ebp - 0xadc]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
je 0x410715
mov ecx, dword [0x531bd0]
lea eax, [ebp - 0x70]
xor ebx, ebx
push ebx
push eax
lea eax, [ebp - 0xadc]
push eax
call fcn.0040ed3a
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x4c]
call fcn.00447b4b
jmp 0x41063b
lea eax, [ebp - 0xadc]
push eax
lea ecx, [ebp - 0x4c]
call fcn.00447cd1
test al, al
jne 0x410639
push 0xffffffffffffffff
xor ebx, ebx
lea eax, [ebp - 0xadc]
push ebx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00447bad
jmp 0x41063b
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret
push 5
xor ebx, ebx
push esi
mov dword [ebp - 4], ebx
call fcn.004766e6
pop ecx
pop ecx
call fcn.0040ef68
mov esi, eax
test esi, esi
je 0x4107c2
push ebx
push ebx
push 0x10
push esi
call dword [sym.imp.USER32.dll_PostMessageW]
lea eax, [ebp - 4]
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
cmp dword [ebp - 4], ebx
je 0x4107c2
push dword [ebp - 4]
push ebx
push 0x100401
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov esi, eax
test esi, esi
je 0x4107c2
mov edi, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0xbb8
push esi
call edi
cmp eax, 0x102
jne 0x4107bb
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push 0x3e8
push esi
call edi
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.00411d79
jmp 0x41038c
push 6
push str._CLOSE
push esi
call fcn.0040ecf0
movzx eax, al
add eax, 5
push eax
push esi
call fcn.004766e6
add esp, 0x14
call fcn.0040ef68
mov esi, eax
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4106d2
xor eax, eax
push eax
push eax
push 0x10
push esi
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x4106d2
call fcn.00414f58
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0x501d08
call esi
push 0x501f10
call esi
call fcn.00411d79
jmp 0x4106d2
call fcn.00414f58
call fcn.00487643
call fcn.0048585b
mov ecx, dword [0x531bd4]
test ecx, ecx
je 0x410932
call fcn.0040ec2c
mov edi, eax
xor ebx, ebx
test edi, edi
je 0x410382
mov esi, ebx
mov ecx, dword [0x531bd4]
lea eax, [ebp - 0x1c]
push esi
push eax
call fcn.0040ec91
mov ecx, dword [0x531bd4]
push ebx
push 0xfde9
push esi
call fcn.0040ecba
push eax
lea ecx, [ebp - 0xc]
call fcn.0040ebb5
mov ecx, eax
call fcn.004081ec
mov ecx, dword [0x531bd4]
push eax
push ebx
push 0xfde9
push esi
call fcn.0040ec7e
push eax
lea ecx, [ebp - 4]
call fcn.0040ebb5
mov ecx, eax
call fcn.004081ec
push eax
movzx eax, byte [ebp - 0xd]
push eax
movzx eax, byte [ebp - 0xe]
push eax
movzx eax, byte [ebp - 0xf]
push eax
movzx eax, byte [ebp - 0x10]
push eax
movzx eax, byte [ebp - 0x11]
push eax
movzx eax, byte [ebp - 0x12]
push eax
movzx eax, byte [ebp - 0x13]
push eax
movzx eax, byte [ebp - 0x14]
push eax
movzx eax, word [ebp - 0x16]
push eax
movzx eax, word [ebp - 0x18]
push eax
push dword [ebp - 0x1c]
push str._08X__04X__04X__02X_02X__02X_02X_02X_02X_02X_02X__s__s_n
push 1
call fcn.004a525d
pop ecx
push eax
call fcn.0040e0dd
add esp, 0x3c
lea ecx, [ebp - 4]
call fcn.00408306
lea ecx, [ebp - 0xc]
call fcn.00408306
inc esi
cmp esi, edi
jb 0x410864
push 1
call fcn.004a525d
push eax
call fcn.004a55d4
pop ecx
pop ecx
jmp 0x410382
call fcn.00485813
call fcn.004877e2
push 1
jmp 0x41038d
push 0x8000
xor ebx, ebx
lea eax, [ebp - 0xb0d4]
push ebx
push eax
call fcn.0049a3b0
add esp, 0xc
lea edi, [ebp - 0xb0d4]
push ebx
call dword [sym.imp.ole32.dll_CoInitialize]
call fcn.00414f58
call fcn.00487643
call fcn.0048585b
push 0x4000
mov eax, edi
push eax
push 0x4cc7d4
call fcn.00411f86
add esp, 0xc
cmp word [edi], bx
je 0x4109bc
push 0x4cc7e4
push edi
call fcn.0040efea
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x4109ad
xor eax, eax
mov word [esi], ax
push 2
pop eax
add esi, eax
push ebx
push edi
call fcn.004139a5
mov edi, esi
pop ecx
pop ecx
test esi, esi
jne 0x41098b
push 0x800
lea eax, [ebp - 0x30d4]
push ebx
push eax
call fcn.0049a3b0
mov ecx, dword [0x531bd0]
lea eax, [ebp - 0x30d4]
add esp, 0xc
push 0x400
push eax
call fcn.0040ec47
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenW]
lea esi, [ebp - 0x30d4]
cmp word [esi], bx
je 0x410a0d
push ebx
push esi
call fcn.004139a5
pop ecx
pop ecx
push esi
call edi
lea esi, [esi + eax*2]
add esi, 2
jne 0x4109f4
mov esi, 0x4cc7e8
cmp word [esi], bx
je 0x410a2b
push ebx
push esi
call fcn.004139a5
pop ecx
pop ecx
push esi
call edi
lea esi, [esi + eax*2]
add esi, 2
jne 0x410a12
push ebx
push ebx
call fcn.00413914
pop ecx
pop ecx
call fcn.00465c16
test eax, eax
je 0x410a44
push ebx
call fcn.004140eb
pop ecx
push ebx
call fcn.00465c4d
pop ecx
call fcn.00485813
call fcn.004877e2
push ebx
push ebx
push 0x3000
push 0x8000000
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
jmp 0x4107c2
xor ebx, ebx
push ebx
push 0x40edee
push ebx
push 0x574
push dword [0x531f80]
call dword [sym.imp.USER32.dll_DialogBoxParamW]
jmp 0x41038c