Function at 0x1004108a
Capabilities:
Get common file path

Disassembly:
push 0x240
mov eax, 0x101c9a81
call fcn.10094739
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x230], ebx
mov dword [ebp - 0x220], eax
and dword [ebp - 4], 0
push dword [ebp + 8]
mov edi, str.Outlook
push str.SaveAttachmentToDisk________p_
push edi
push 0xffffffffffffffff
mov esi, 0x1025cd9c
push esi
call fcn.10023e79
xor eax, eax
add esp, 0x14
mov dword [ebp - 0x228], eax
cmp dword [ebp + 8], eax
je 0x1004157c
mov dword [ebp - 0x224], eax
mov byte [ebp - 4], 1
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
lea edx, [ebp - 0x224]
push edx
push eax
call dword [ecx + 0x34]
test eax, eax
jge 0x1004111a
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
lea edx, [ebp - 0x224]
push edx
push eax
call dword [ecx + 0x2c]
test eax, eax
jl 0x1004156c
push dword [ebp - 0x224]
lea ecx, [ebp - 0x238]
call fcn.100c9670
mov byte [ebp - 4], 2
push dword [eax]
push str.SaveAttachmentToDisk_1___s_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
add esp, 0x14
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.100c9e10
push dword [ebp - 0x224]
mov ecx, dword [ebp - 0x220]
call fcn.100ca090
mov eax, dword [0x10204778]
mov dword [ebp - 0x234], eax
mov byte [ebp - 4], 3
push dword [ebp - 0x224]
lea eax, [ebp - 0x234]
push dword [ebp + 0xc]
push str.__d__s
push eax
call fcn.100ccd90
mov ecx, dword [ebp - 0x21c]
add esp, 0x10
push 0
push ebx
push dword [ebp - 0x234]
call fcn.1003e5f1
push 0xffffffffffffffff
mov ecx, ebx
mov dword [ebp - 0x220], eax
call fcn.100cabb0
mov eax, dword [ebp - 0x21c]
add eax, 0x1e0
push eax
lea ecx, [ebp - 0x238]
call fcn.100c9670
mov byte [ebp - 4], 4
push dword [ebx]
push dword [eax]
push dword [ebp - 0x220]
push str.SaveAttachmentToDisk_2___d___s___s_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
add esp, 0x1c
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x238]
call fcn.100c9e10
mov eax, dword [0x10204778]
mov dword [ebp - 0x22c], eax
mov byte [ebp - 4], 5
push dword [ebx]
lea eax, [ebp - 0x220]
push eax
call fcn.100101b3
pop ecx
pop ecx
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x22c]
call fcn.100c9fa0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x220]
call fcn.100c9e10
mov eax, dword [ebp + 8]
mov ebx, dword [eax]
mov dword [ebp - 0x220], eax
add ebx, 0x54
push 0
lea ecx, [ebp - 0x22c]
call fcn.100caae0
push eax
push dword [ebp - 0x220]
call dword [ebx]
push 0xffffffffffffffff
lea ecx, [ebp - 0x22c]
mov ebx, eax
call fcn.100cabb0
test ebx, ebx
jge 0x100413e8
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push eax
call fcn.100947e0
mov eax, dword [0x10204778]
add esp, 0xc
mov dword [ebp - 0x21c], eax
mov byte [ebp - 4], 7
lea eax, [ebp - 0x218]
push eax
push 0x103
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push dword [ebp - 0x224]
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x21c]
push 0x101df4a4
push eax
call fcn.100ccd90
mov eax, dword [ebp + 8]
mov ebx, dword [eax]
add esp, 0x10
push 0
lea ecx, [ebp - 0x21c]
mov dword [ebp - 0x220], eax
add ebx, 0x54
call fcn.100caae0
push eax
push dword [ebp - 0x220]
call dword [ebx]
push 0xffffffffffffffff
lea ecx, [ebp - 0x21c]
mov ebx, eax
call fcn.100cabb0
test ebx, ebx
jge 0x10041396
push 0x104
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.100947e0
add esp, 0xc
lea ecx, [ebp - 0x21c]
call fcn.100c9b80
push 0x103
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
push dword [ebp - 0x224]
lea eax, [ebp - 0x218]
push str.Temp_
push eax
lea eax, [ebp - 0x21c]
push str._s_s_s
push eax
call fcn.100ccd90
mov eax, dword [ebp + 8]
mov ebx, dword [eax]
add esp, 0x14
push 0
lea ecx, [ebp - 0x21c]
mov dword [ebp - 0x220], eax
add ebx, 0x54
call fcn.100caae0
push eax
push dword [ebp - 0x220]
call dword [ebx]
push 0xffffffffffffffff
lea ecx, [ebp - 0x21c]
mov ebx, eax
call fcn.100cabb0
xor eax, eax
test ebx, ebx
jl 0x100413b6
mov eax, dword [ebp - 0x230]
push dword [eax]
lea eax, [ebp - 0x218]
push eax
call fcn.1000fc82
pop ecx
pop ecx
test eax, eax
jne 0x100413bb
mov ebx, 0x80004005
push eax
lea eax, [ebp - 0x218]
push eax
push ebx
push str.SaveAttachmentToDisk_3___08x___s___d_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
add esp, 0x1c
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x21c]
call fcn.100c9e10
test ebx, ebx
jl 0x10041410
mov eax, dword [ebp - 0x230]
push dword [eax]
push str.SaveAttachmentToDisk_4___s_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
add esp, 0x14
mov dword [ebp - 0x228], 1
jmp 0x1004154e
push ebx
push str.SaveAttachmentToDisk_5___08x_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
mov eax, dword [ebp + 8]
and dword [ebp - 0x21c], 0
mov ecx, dword [eax]
add esp, 0x14
lea edx, [ebp - 0x21c]
push edx
push eax
call dword [ecx + 0x28]
test eax, eax
jl 0x1004154e
cmp dword [ebp - 0x21c], 0
je 0x1004154e
push eax
push str.SaveAttachmentToDisk_6___08x_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
add esp, 0x14
lea ecx, [ebp - 0x24c]
call fcn.1005e791
mov byte [ebp - 4], 8
push dword [ebp - 0x21c]
lea ecx, [ebp - 0x24c]
call fcn.1005e7fb
mov ebx, eax
test ebx, ebx
jl 0x1004152c
push ebx
push str.SaveAttachmentToDisk_7___08x_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
add esp, 0x14
cmp dword [ebp - 0x23c], 1
jne 0x100414ad
mov eax, dword [ebp - 0x248]
jmp 0x100414bc
cmp dword [ebp - 0x23c], 2
jne 0x100414c7
mov eax, dword [ebp - 0x244]
mov ecx, dword [eax]
push eax
call dword [ecx + 0xd8]
mov ebx, eax
push ebx
push str.SaveAttachmentToDisk_8___08x_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
mov eax, dword [ebp + 8]
mov ebx, dword [eax]
mov ecx, dword [ebp - 0x230]
add esp, 0x14
push 0
mov dword [ebp - 0x220], eax
add ebx, 0x54
call fcn.100caae0
push eax
push dword [ebp - 0x220]
call dword [ebx]
mov ecx, dword [ebp - 0x230]
push 0xffffffffffffffff
mov ebx, eax
call fcn.100cabb0
test ebx, ebx
jl 0x1004151a
mov dword [ebp - 0x228], 1
push ebx
push str.SaveAttachmentToDisk_9___08x_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
add esp, 0x14
mov eax, dword [ebp - 0x21c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
and dword [ebp - 0x21c], 0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24c]
call fcn.1005e71e
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x22c]
call fcn.100c9e10
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x234]
call fcn.100c9e10
mov byte [ebp - 4], 0
push dword [ebp - 0x224]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
push dword [ebp - 0x228]
push str.SaveAttachmentToDisk____d_
push edi
push 0xffffffffffffffff
push esi
call fcn.10023e79
add esp, 0x14
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call fcn.1003dee5
mov eax, dword [ebp - 0x228]
call fcn.100947bc
ret 0x10