Function at 0x402690
Capabilities:
Set current directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x449be7
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x6134
call fcn.00424d70
mov eax, dword [0x45f094]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 0x60e4], esi
mov ecx, str._nodel
mov dword [ebp - 0x60e8], esi
call fcn.00402480
mov ecx, str._app
mov byte [ebp - 0x60e0], al
call fcn.00402480
mov ecx, str._params
mov byte [ebp - 0x60dd], al
call fcn.00402480
mov ecx, str._skipParams
mov byte [ebp - 0x60de], al
call fcn.00402480
cmp byte [ebp - 0x60dd], 0
mov byte [ebp - 0x60df], al
je 0x402722
call fcn.00402560
mov al, byte [ebp - 0x60de]
test al, al
je 0x402737
call fcn.004025c0
mov al, byte [ebp - 0x60de]
cmp byte [ebp - 0x60dd], 0
jne 0x402d75
test al, al
jne 0x402d75
xorps xmm0, xmm0
mov dword [ebp - 0x609c], 0
xor eax, eax
mov dword [ebp - 0x6098], 7
movups xmmword [ebp - 0x60ac], xmm0
mov word [ebp - 0x60ac], ax
lea edx, [ebp - 0x60ac]
mov dword [ebp - 4], eax
mov ecx, str._destination
call fcn.004024c0
test al, al
jne 0x402872
lea edx, [ebp - 0x60ac]
mov ecx, 0x458b24
call fcn.004024c0
test al, al
jne 0x402872
push 0x2000
lea eax, [ebp - 0x6094]
push 0
push eax
call fcn.00425d60
push 0x2000
lea eax, [ebp - 0x4094]
push 0
push eax
call fcn.00425d60
add esp, 0x10
lea edx, [ebp - 0x4094]
lea ecx, [ebp - 0x6094]
call fcn.00408130
add esp, 8
test eax, eax
je 0x402845
push str.Failed_to_create_applet_folder.
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.00402160
mov ecx, dword [ebp - 0x6098]
add esp, 8
cmp ecx, 8
jb 0x40283b
mov edx, dword [ebp - 0x60ac]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402831
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402dfb
push ecx
push edx
call fcn.00423d59
add esp, 8
mov eax, 1
jmp 0x402d77
lea ecx, [ebp - 0x4094]
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x402850
sub ecx, edx
lea eax, [ebp - 0x4094]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x60ac]
call fcn.00405600
lea eax, [ebp - 0x60ac]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x60dc]
call fcn.00404a40
push 0
lea eax, [ebp - 0x60dc]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x6100]
push eax
call fcn.00409410
mov eax, dword [ebp - 0x6100]
add esp, 0xc
test eax, eax
je 0x4028ba
mov byte [ebp - 0x60dd], 0
cmp eax, 1
jne 0x4028c1
mov byte [ebp - 0x60dd], 1
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x60c8]
cmp ecx, 8
jb 0x402905
mov edx, dword [ebp - 0x60dc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4028fb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402e00
push ecx
push edx
call fcn.00423d59
add esp, 8
cmp byte [ebp - 0x60dd], 0
je 0x40298d
lea eax, [ebp - 0x60ac]
push eax
lea ecx, [ebp - 0x60dc]
call fcn.00404a40
lea eax, [ebp - 0x60dc]
mov byte [ebp - 4], 3
push 0
push eax
call fcn.00408810
mov byte [ebp - 4], 1
add esp, 8
mov ecx, dword [ebp - 0x60c8]
cmp ecx, 8
jb 0x40298d
mov edx, dword [ebp - 0x60dc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40296f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402e05
push ecx
push edx
call fcn.00423d59
add esp, 8
jmp 0x40298d
mov dword [ebp - 4], 0
lea eax, [ebp - 0x60ac]
cmp dword [ebp - 0x6098], 8
cmovae eax, dword [ebp - 0x60ac]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
cmp dword [ebp - 0x6098], 8
lea ecx, [ebp - 0x60ac]
cmovae ecx, dword [ebp - 0x60ac]
call fcn.004025d0
call fcn.00402560
cmp byte [ebp - 0x60df], 0
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
jne 0x402acf
push 0x104
lea eax, [ebp - 0x229c]
push eax
push 0
call edi
lea eax, [ebp - 0x229c]
push eax
lea ecx, [ebp - 0x60c4]
call fcn.00404930
lea edx, [ebp - 0x60c4]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x60dc]
call fcn.00402e30
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x60b0]
cmp ecx, 8
jb 0x402a5b
mov edx, dword [ebp - 0x60c4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402a51
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402e0a
push ecx
push edx
call fcn.00423d59
add esp, 8
xor eax, eax
mov dword [ebp - 0x60b4], 0
lea ecx, [ebp - 0x60dc]
mov dword [ebp - 0x60b0], 7
mov word [ebp - 0x60c4], ax
call fcn.004033b0
cmp dword [ebp - 0x60cc], 0
jne 0x402a91
call fcn.004025c0
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x60c8]
cmp ecx, 0x10
jb 0x402acf
mov edx, dword [ebp - 0x60dc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x402ac5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402e0f
push ecx
push edx
call fcn.00423d59
add esp, 8
push 0x2080
lea eax, [ebp - 0x2094]
push 0
push eax
call fcn.00425d60
mov esi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea eax, [ebp - 0x60ac]
add esp, 0xc
xorps xmm0, xmm0
cmp dword [ebp - 0x6098], 8
movlpd qword [ebp - 0x6140], xmm0
cmovae eax, dword [ebp - 0x60ac]
push eax
lea eax, [ebp - 0x2094]
movlpd qword [ebp - 0x6138], xmm0
push eax
movlpd qword [ebp - 0x6130], xmm0
movlpd qword [ebp - 0x6128], xmm0
movlpd qword [ebp - 0x6120], xmm0
movlpd qword [ebp - 0x6118], xmm0
movlpd qword [ebp - 0x6110], xmm0
movlpd qword [ebp - 0x6108], xmm0
movups xmmword [ebp - 0x60f8], xmm0
call esi
push str.RescueService.exe
lea eax, [ebp - 0x2094]
push eax
call esi
xorps xmm0, xmm0
mov dword [ebp - 0x6144], 0x44
xor eax, eax
mov dword [ebp - 0x60b4], 0
movups xmmword [ebp - 0x60c4], xmm0
mov dword [ebp - 0x60b0], 7
mov word [ebp - 0x60c4], ax
lea edx, [ebp - 0x60c4]
mov byte [ebp - 4], 8
mov ecx, str._pin
call fcn.004024c0
test al, al
je 0x402be9
push str.__WebsiteUrl_https:__weblens.logmeinrescue.com___PinCode
lea eax, [ebp - 0x2094]
push 0x1040
push eax
call fcn.004294b6
cmp dword [ebp - 0x60b0], 8
lea eax, [ebp - 0x60c4]
cmovae eax, dword [ebp - 0x60c4]
push eax
lea eax, [ebp - 0x2094]
push 0x1040
push eax
call fcn.004294b6
add esp, 0x18
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x60b0]
cmp ecx, 8
jb 0x402c2d
mov edx, dword [ebp - 0x60c4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402c23
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402e14
push ecx
push edx
call fcn.00423d59
add esp, 8
push 0x458c24
lea eax, [ebp - 0x2094]
push 0x1040
push eax
call fcn.004294b6
push dword [ebp - 0x60e4]
lea eax, [ebp - 0x2094]
push 0x1040
push eax
call fcn.004294b6
add esp, 0x18
lea ecx, [ebp - 0x60f8]
cmp dword [ebp - 0x6098], 8
lea eax, [ebp - 0x60ac]
cmovae eax, dword [ebp - 0x60ac]
push ecx
lea ecx, [ebp - 0x6144]
push ecx
push eax
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x2094]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x402cf8
push 0x458c28
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.00402160
mov ecx, dword [ebp - 0x6098]
add esp, 8
cmp ecx, 8
jb 0x402cf1
mov edx, dword [ebp - 0x60ac]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402ce7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402df6
push ecx
push edx
call fcn.00423d59
add esp, 8
mov eax, 2
jmp 0x402d77
mov eax, dword [ebp - 0x60f4]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
je 0x402d15
push eax
call esi
mov dword [ebp - 0x60f4], 0
mov eax, dword [ebp - 0x60f8]
test eax, eax
je 0x402d2c
push eax
call esi
mov dword [ebp - 0x60f8], 0
cmp byte [ebp - 0x60e0], 0
je 0x402d93
mov ecx, dword [ebp - 0x6098]
cmp ecx, 8
jb 0x402d75
mov edx, dword [ebp - 0x60ac]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402d6b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x402df6
push ecx
push edx
call fcn.00423d59
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00423d11
mov esp, ebp
pop ebp
ret
mov ecx, str._destination
call fcn.00402480
test al, al
jne 0x402dc0
push 0x1040
lea eax, [ebp - 0x2094]
push eax
push 0
call edi
test eax, eax
je 0x402dc0
lea ecx, [ebp - 0x2094]
call fcn.00407e40
mov ecx, dword [ebp - 0x6098]
cmp ecx, 8
jb 0x402d75
mov edx, dword [ebp - 0x60ac]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x402d6b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x402d6b
call fcn.0042e6f0
call fcn.0042e6f0
call fcn.0042e6f0
call fcn.0042e6f0
call fcn.0042e6f0
call fcn.0042e6f0
call fcn.0042e6f0
int3