Function at 0x43d610
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5340f3
mov eax, dword fs:[0]
push eax
sub esp, 0x86c
mov eax, dword [0x579258]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
push dword [0x579054]
call fcn.00422b70
add esp, 4
cmp dword [0x579068], 0
je 0x43d65a
call fcn.00422d40
cmp dword [0x57905c], 0
je 0x43d769
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.004ecad0
push 0x208
lea eax, [ebp - 0x830]
push 0
push eax
call fcn.004ecad0
add esp, 0x18
lea eax, [ebp - 0x830]
push 0
push 0x1a
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
je 0x43d6cc
push 0x53f8d0
push str.MicrosoftInternet_ExplorerQuick_Launch_
lea eax, [ebp - 0x830]
push eax
lea eax, [ebp - 0x218]
push str._s_s_s.lnk
push eax
call fcn.004203b0
add esp, 0x14
xor eax, eax
mov dword [ebp - 0x838], 0
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x834], 7
mov word [ebp - 0x848], ax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x43d6f2
sub ecx, edx
lea eax, [ebp - 0x218]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x848]
call fcn.00416d70
lea eax, [ebp - 0x848]
mov dword [ebp - 4], 0
push eax
call fcn.00457600
mov edx, dword [ebp - 0x834]
add esp, 4
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x43d7ba
mov ecx, dword [ebp - 0x848]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43d7b0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d985
jmp 0x43d7b0
push 5
xor eax, eax
mov dword [ebp - 0x838], 0
push 0x53f8d0
lea ecx, [ebp - 0x848]
mov dword [ebp - 0x834], 7
mov word [ebp - 0x848], ax
call fcn.00416d70
lea eax, [ebp - 0x848]
mov dword [ebp - 4], 1
push eax
call fcn.00457ef0
jmp 0x43d727
push edx
push ecx
call fcn.00460404
add esp, 8
push 0x208
lea eax, [ebp - 0x420]
push 0
push eax
call fcn.004ecad0
cmp dword [0x5791e8], 8
mov eax, 0x5791d4
push str.SimpleBook.exe
cmovae eax, dword [0x5791d4]
push eax
lea eax, [ebp - 0x420]
push 0x53ea10
push eax
call fcn.004203b0
add esp, 0x1c
cmp dword [0x582524], 0
je 0x43d822
push 0
push 0
push 1
lea eax, [ebp - 0x420]
push 0x53e9d0
push eax
call fcn.004569d0
add esp, 0x14
jmp 0x43d8fe
mov eax, dword [str.__uptart]
mov dword [ebp - 0x860], eax
mov eax, dword [0x53f954]
mov dword [ebp - 0x84c], 0xf
mov dword [ebp - 0x850], 8
mov dword [ebp - 0x85c], eax
mov byte [ebp - 0x858], 0
push 0x3a8
lea eax, [ebp - 0x860]
mov dword [ebp - 4], 2
push eax
lea eax, [ebp - 0x878]
push eax
call fcn.00428e60
add esp, 0xc
cmp dword [eax + 0x14], 8
mov byte [ebp - 4], 3
jb 0x43d881
mov eax, dword [eax]
push 0
push 0
push 1
push eax
lea eax, [ebp - 0x420]
push eax
call fcn.004569d0
add esp, 0x14
lea ecx, [ebp - 0x878]
call fcn.00419a40
mov edx, dword [ebp - 0x84c]
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x43d8e3
mov ecx, dword [ebp - 0x860]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x43d8d9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43d985
push edx
push ecx
call fcn.00460404
add esp, 8
mov dword [ebp - 0x850], 0
mov dword [ebp - 0x84c], 0xf
mov byte [ebp - 0x860], 0
push 0x208
lea eax, [ebp - 0x628]
push 0
push eax
call fcn.004ecad0
cmp dword [0x579200], 8
mov eax, 0x5791ec
push str.uninst.exe
cmovae eax, dword [0x5791ec]
push eax
lea eax, [ebp - 0x628]
push 0x53ea10
push eax
call fcn.004203b0
lea eax, [ebp - 0x628]
push eax
call fcn.00455170
add esp, 0x20
test eax, eax
je 0x43d95d
lea eax, [ebp - 0x628]
push eax
call fcn.00455e90
add esp, 4
call fcn.00426530
push 1
mov ecx, esi
call fcn.00461c29
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00460412
mov esp, ebp
pop ebp
ret
call fcn.004f5b2a
int3