Function at 0x1e70dd
Capabilities:
Delete file
Enumerate files on windows
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1b8
push ebx
push esi
lea eax, [ebp - 1]
push edi
push eax
lea ecx, [ebp - 0x38]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::allocator_char__const__]
lea eax, [ebp - 1]
lea ecx, [ebp - 0x48]
push eax
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::allocator_char__const__]
lea eax, [ebp - 1]
lea ecx, [ebp - 0x18]
push eax
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::allocator_char__const__]
lea eax, [ebp - 1]
lea ecx, [ebp - 0x28]
push eax
push str.AppDataRoamingMozillaFirefoxProfiles_
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___class_std::allocator_char__const__]
push eax
push 0x1f4d68
call dword [sym.imp.MSVCRT.dll_getenv]
pop ecx
push eax
lea eax, [ebp - 0x58]
push eax
call sub.MSVCP60.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char_const___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__
add esp, 0xc
lea ecx, [ebp - 0x18]
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [ebp - 0x58]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x28]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea eax, [ebp - 0x1b8]
push eax
lea eax, [ebp - 0x18]
push 0x1f4b40
push eax
lea eax, [ebp - 0x28]
push eax
call sub.MSVCP60.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__
add esp, 0xc
mov ecx, eax
call dword [sym.imp.MSVCP60.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
lea ecx, [ebp - 0x28]
mov dword [ebp - 8], eax
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp dword [ebp - 8], 0xffffffff
jne 0x1e71c4
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_FindClose]
push 0
lea eax, [ebp - 1]
sub esp, 0x10
mov ecx, esp
push eax
push str._n_Firefox_StoredLogins_not_found_
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___class_std::allocator_char__const__]
mov ecx, 0x1fa8f0
call fcn.001e5359
mov bl, 1
jmp 0x1e7403
lea eax, [ebp - 0x1b8]
push eax
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
xor ebx, ebx
test eax, eax
je 0x1e737f
push 2
pop edi
test byte [ebp - 0x1b8], 0x10
je 0x1e7367
mov esi, 0x1f4b20
lea eax, [ebp - 0x18c]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x1e721b
cmp cl, bl
je 0x1e7217
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x1e721b
add eax, edi
add esi, edi
cmp cl, bl
jne 0x1e71f9
xor eax, eax
jmp 0x1e7220
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x1e7367
mov esi, 0x1f4e68
lea eax, [ebp - 0x18c]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x1e7255
cmp cl, bl
je 0x1e7251
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x1e7255
add eax, edi
add esi, edi
cmp cl, bl
jne 0x1e7233
xor eax, eax
jmp 0x1e725a
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x1e7367
lea eax, [ebp - 0x18c]
push str.logins.json
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x58]
push eax
call sub.MSVCP60.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__
add esp, 0xc
push eax
lea eax, [ebp - 0x28]
push eax
call sub.MSVCP60.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__
add esp, 0xc
lea ecx, [ebp - 0x38]
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [ebp - 0x28]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x58]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea eax, [ebp - 0x18c]
push str.key3.db
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x78]
push eax
call sub.MSVCP60.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__
add esp, 0xc
push eax
lea eax, [ebp - 0x68]
push eax
call sub.MSVCP60.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [ebp - 0x68]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x78]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp byte [0x1fa9a9], bl
jne 0x1e731d
lea ecx, [ebp - 0x38]
call dword [sym.imp.MSVCP60.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
jne 0x1e7316
call dword [sym.imp.KERNEL32.dll_GetLastError]
sub eax, edi
jne 0x1e73c9
mov byte [0x1fa9a9], 1
cmp byte [0x1fa9a8], bl
jne 0x1e7357
lea ecx, [ebp - 0x48]
call dword [sym.imp.MSVCP60.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
jne 0x1e7350
call dword [sym.imp.KERNEL32.dll_GetLastError]
sub eax, edi
jne 0x1e73d1
mov byte [0x1fa9a8], 1
jmp 0x1e7357
mov byte [0x1fa9a9], 1
cmp byte [0x1fa9a9], bl
je 0x1e7367
cmp byte [0x1fa9a8], bl
jne 0x1e73d9
lea eax, [ebp - 0x1b8]
push eax
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x1e71e1
push ebx
lea eax, [ebp - 1]
sub esp, 0x10
mov ecx, esp
push eax
push str._n_Firefox_StoredLogins_not_found_
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___class_std::allocator_char__const__]
mov ecx, 0x1fa8f0
call fcn.001e5359
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0x18]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x48]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x38]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov al, 1
pop edi
pop esi
pop ebx
leave
ret
mov byte [0x1fa9a9], bl
jmp 0x1e73fa
mov byte [0x1fa9a8], bl
jmp 0x1e73fa
push ebx
lea eax, [ebp - 1]
sub esp, 0x10
mov ecx, esp
push eax
push str._n_Firefox_StoredLogins_cleared__
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const___class_std::allocator_char__const__]
mov ecx, 0x1fa8f0
call fcn.001e5359
mov bl, 1
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0x18]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x48]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x38]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov al, bl
jmp 0x1e73c4