Function at 0x40be00
Capabilities:
Get common file path
Get program files directory
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49c8cb
mov eax, dword fs:[0]
push eax
sub esp, 0x448
mov eax, dword [0x4d0018]
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
mov esi, dword [ebp + 8]
push str.click
push dword [esi]
call fcn.00489fb2
add esp, 8
test eax, eax
jne 0x40bfd0
mov ecx, dword [esi + 0x108]
push str.closebtn
mov eax, dword [ecx]
call dword [eax + 0x28]
push eax
call fcn.00489fb2
add esp, 8
test eax, eax
je 0x40bfc8
mov ecx, dword [esi + 0x108]
push 0x4acc64
mov eax, dword [ecx]
call dword [eax + 0x28]
push eax
call fcn.00489fb2
add esp, 8
test eax, eax
jne 0x40bef0
mov dword [ebp - 0x43c], eax
xorps xmm0, xmm0
mov dword [ebp - 0x434], eax
lea eax, [ebp - 0x450]
push eax
movups xmmword [ebp - 0x450], xmm0
mov dword [ebp - 0x440], 0x43
call dword [sym.imp.SHELL32.dll_SHBrowseForFolderW]
test eax, eax
je 0x40c059
lea ecx, [ebp - 0x420]
push ecx
push eax
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
push str.XinZhiZao_
lea eax, [ebp - 0x420]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
mov ecx, dword [edi + 0x18]
lea edx, [ebp - 0x420]
push edx
mov eax, dword [ecx]
call dword [eax + 0x50]
jmp 0x40c059
mov ecx, dword [esi + 0x108]
push 0x4acc70
mov eax, dword [ecx]
call dword [eax + 0x28]
push eax
call fcn.00489fb2
add esp, 8
test eax, eax
jne 0x40c059
mov ecx, dword [esi + 0x108]
push 0
mov eax, dword [ecx]
call dword [eax + 0x180]
push ecx
lea ecx, [ebp - 0x430]
call fcn.0040c1a0
call fcn.0040c080
push ecx
lea ecx, [ebp - 0x424]
mov dword [ebp - 4], 0
call fcn.00407250
mov ecx, dword [edi + 0x14]
call fcn.0041c634
mov dword [ebp - 0x454], eax
lea ecx, [edi + 0x1c]
lea eax, [ebp - 0x454]
push eax
call fcn.0040dda0
push eax
lea ecx, [ebp - 0x424]
call fcn.00408850
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x424]
mov edx, dword [edi + 0x18]
call fcn.00406e80
push eax
mov eax, dword [edx]
mov ecx, edx
call dword [eax + 0x4c]
push eax
lea ecx, [ebp - 0x430]
call fcn.00408350
test al, al
jne 0x40bfc8
push 0x10
push ecx
push 0x4ac568
call fcn.00408d30
mov ecx, eax
call fcn.0041a446
push eax
push ecx
push 0x4acc78
call fcn.00408d30
mov ecx, eax
call fcn.0041a446
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push str.windowinit
push dword [esi]
call fcn.00489fb2
add esp, 8
test eax, eax
jne 0x40c033
cmp dword [edi + 0x18], eax
je 0x40c059
push 0x208
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.00481670
add esp, 0xc
lea eax, [ebp - 0x218]
push 0
push 0x26
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
push str.XinZhiZao_
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
mov ecx, dword [edi + 0x18]
lea edx, [ebp - 0x218]
push edx
mov eax, dword [ecx]
call dword [eax + 0x50]
jmp 0x40c051
push str.itemselect
push dword [esi]
call fcn.00489fb2
add esp, 8
test eax, eax
jne 0x40c059
mov eax, dword [esi + 0x108]
cmp eax, dword [edi + 0x14]
jne 0x40c059
lea ecx, [edi - 0x24]
call fcn.0040d090
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.0047ecc2
mov esp, ebp
pop ebp
ret 4