Function at 0x408b30
Capabilities:
Get common file path
Terminate process

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x230
call fcn.0043d220
test al, al
je 0x408e72
lea eax, [esp + 0x28]
push 0
push 0x10
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
call fcn.00436740
test al, al
je 0x408e6d
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [esp + 0x18], eax
mov edi, 0x3ba330fc
mov ebp, 0xf5ab7f85
mov ecx, ebx
shrd ebp, edi, cl
shr edi, cl
mov edx, ebx
mov eax, 0xc45ccf03
mov esi, 0xa54807a
shrd esi, eax, cl
sar eax, cl
and dl, 0x20
xor ecx, ecx
mov dh, dl
neg dh
sbb ecx, ecx
or ecx, eax
test dl, dl
je 0x408bb1
mov ebp, edi
mov edi, 0
not ecx
jne 0x408bb7
mov eax, esi
not eax
or eax, ebp
and eax, 0xf5ab7f85
or ecx, edi
and ecx, 0x3ba330fc
and ebp, 0xa54807a
and edi, 0x45ccf03
or ebp, 0xd48b7980
xor ebp, eax
mov dword [esp + 0x10], ebp
or edi, 0x338230bc
xor edi, ecx
mov dword [esp + 8], edi
mov esi, ebp
xor esi, 0x21200605
mov ebx, edi
xor ebx, 0x8210040
mov eax, ebp
xor eax, 0x41fc4eac
mov edx, edi
xor edx, 0x186ea5fd
mov ecx, esi
mov dword [esp + 0x14], esi
or ecx, 0x9f23b756
and ecx, eax
mov dword [esp], ebx
mov eax, ebx
or eax, 0x2fb05a42
and eax, edx
mov dword [esp + 0x1c], eax
mov eax, ebp
and eax, 0x401808a1
mov ebp, esi
and ebp, 0x20c44008
or ebp, eax
mov eax, edi
and eax, 0x1048a19d
and ebx, 0x70420
lea esi, [eax + ebx]
mov dword [esp + 4], esi
add ebx, eax
add ebx, 0x2fb05a42
mov esi, ebp
xor esi, 0x60dc48a8
xor ebp, 0x9f23b757
mov edi, ecx
mov dword [esp + 0xc], ecx
and ebp, ecx
not edi
and edi, esi
mov eax, edi
mul ebp
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x1c]
and ebx, ecx
imul edi, ebx
add edi, edx
mov eax, dword [esp + 4]
xor eax, 0x104fa5bd
mov edx, ecx
mov ebx, ecx
not edx
and edx, eax
mov ecx, eax
imul edx, ebp
add edx, edi
mov dword [esp + 0x20], edx
mov ebp, esi
mov eax, dword [esp + 0xc]
and ebp, eax
or esi, eax
mov edi, ecx
and ecx, ebx
mov eax, esi
mul ebp
mov dword [esp + 0xc], eax
mov eax, edi
or eax, ebx
imul esi, ecx
add esi, edx
imul eax, ebp
add eax, esi
mov dword [esp + 4], eax
mov ebp, dword [esp + 8]
mov eax, ebp
xor eax, 0xe7915a02
mov edx, dword [esp]
or edx, 0x104fa5bd
and edx, eax
mov dword [esp], edx
mov edx, dword [esp + 0x10]
mov eax, edx
xor eax, 0xbe03b153
mov edi, dword [esp + 0x14]
or edi, 0x60dc48a8
or edi, 1
and edi, eax
mov ebx, edi
mov dword [esp + 0x14], edi
and ebp, 0x2fb05a42
mov eax, ebp
xor eax, 0xe7905a02
xor ebp, 0x27905a02
or ebp, eax
and edx, 0x9f23b756
mov eax, edx
xor eax, 0x9e03b152
mov esi, ebp
not esi
xor edx, 0x61fc4ead
mov dword [esp + 0x10], edx
not ebx
mov edi, dword [esp]
mov ecx, edi
not ecx
and ebx, edx
and ecx, esi
and ebp, edi
mov edi, dword [esp + 0x14]
and eax, edi
imul ecx, eax
mul ebx
mov dword [esp + 8], eax
imul ebp, ebx
add ebp, edx
add ebp, ecx
mov eax, dword [esp]
mov edx, eax
and edx, esi
or esi, eax
mov ecx, edi
mov ebx, dword [esp + 0x10]
and ecx, ebx
or ebx, edi
mov eax, ebx
imul ebx, edx
mul ecx
add ebx, edx
imul esi, ecx
add esi, ebx
add eax, dword [esp + 8]
adc esi, ebp
add eax, dword [esp + 0x24]
adc esi, dword [esp + 0x20]
add eax, dword [esp + 0xc]
adc esi, dword [esp + 4]
mov edi, esi
shr edi, 0x15
xor edi, esi
shld esi, eax, 0xb
xor esi, eax
call dword [sym.imp.USER32.dll_GetForegroundWindow]
test eax, eax
je 0x408e1d
mov eax, esi
and eax, 0x575d63e4
mov dword [esp + 4], eax
mov ebx, edi
and ebx, 0xd23662c7
xor eax, 0x575d63e4
mov ebp, esi
and ebp, 0xa8a29c1b
mov ecx, edi
and ecx, 0x2dc99d38
imul ecx, eax
mul ebp
mov dword [esp], eax
or esi, 0x575d63e4
mov eax, esi
imul esi, ebx
xor ebx, 0xd23662c7
imul ebp, ebx
add ebp, edx
mov ebx, dword [esp + 4]
mul ebx
add ebp, ecx
add esi, edx
or edi, 0xd23662c7
imul edi, ebx
add edi, esi
add eax, dword [esp]
adc edi, ebp
mov esi, eax
mov ecx, dword [esp + 0x18]
shrd esi, edi, cl
mov edx, edi
shr edx, cl
test cl, 0x20
je 0x408e19
mov esi, edx
xor edx, edx
xor edi, edx
xor esi, eax
mov ecx, edi
not ecx
mov eax, esi
not eax
or edi, 0x1010101
mov edx, edi
shld edx, esi, 1
or esi, 0x1010101
lea ebx, [esi + esi]
not edx
not ebx
add ebx, esi
adc edx, edi
and eax, 0xfefefefe
or eax, ebx
and ecx, 0xfefefefe
or ecx, edx
not ecx
not eax
push ecx
push eax
call fcn.00409fc0
add esp, 8
test al, al
je 0x408e6d
call fcn.0040cf10
call fcn.0040b920
call fcn.0043e500
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]