Function at 0x10032870
Capabilities:
Check if file exists
Create directory
Delete file
Get common file path
Move file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
push edi
push 0x208
or esi, 0xffffffff
call fcn.1003971d
mov ebx, eax
push 0x208
mov dword [ebp - 8], ebx
call fcn.1003971d
add esp, 8
mov edi, eax
mov dword [ebp - 0xc], edi
test ebx, ebx
je 0x10032b28
test edi, edi
je 0x10032b28
push ebx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
test eax, eax
jne 0x100328cf
push str.WDDMCoreDump:_GetTempPath___failed._n
call fcn.100311b0
add esp, 4
jmp 0x10032982
push str.VM3D
push ebx
push str._s_s
push 0x104
push edi
call fcn.10032b40
add esp, 0x14
push 0
push edi
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x10032912
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x10032912
push edi
push str.WDDMCoreDump:_CreateDirectory___for__S_failed._n
call fcn.100311b0
add esp, 8
jmp 0x10032982
push str.VM3D
push str.VM3D
push ebx
push str._s_s_s.dmp
push 0x104
push edi
call fcn.10032b40
add esp, 0x18
push 0
push 0x80
push 1
push 0
push 0
push 0x40000000
push edi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
jne 0x10032982
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x50
jne 0x10032b15
push 0x208
call fcn.1003971d
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x1003299a
push str.WDDMCoreDump:_malloc___failed._n
call fcn.100311b0
add esp, 4
mov ebx, dword [ebp - 8]
push ebx
call fcn.10039702
push edi
call fcn.10039702
add esp, 8
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.VM3D
push str.VM3D
push dword [ebp - 8]
push str._s_s_s
push 0x104
push ebx
call fcn.10032b40
push edi
push str.WDDMCoreDump:_Minidump_file__S_exists._Rotating_..._n
call fcn.10030c30
push 0x208
call fcn.1003971d
push 0x208
mov dword [ebp - 4], eax
call fcn.1003971d
add esp, 0x28
mov esi, eax
cmp dword [ebp - 4], 0
je 0x10032ab5
test esi, esi
je 0x10032ab5
mov edi, 9
push str..dmp
test edi, edi
jne 0x10032a14
push ebx
push str._s_s
push 0x104
push esi
call fcn.10032b40
add esp, 0x14
jmp 0x10032a2c
lea eax, [edi - 1]
push eax
push ebx
push str._s__d_s
push 0x104
push esi
call fcn.10032b40
add esp, 0x18
push str..dmp
push edi
push ebx
push str._s__d_s
push 0x104
push dword [ebp - 4]
call fcn.10032b40
add esp, 0x18
cmp edi, 9
jne 0x10032a78
push esi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x10032aa7
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x10032aa7
push esi
push str.FileRotateWDDM
push str.__s:_failed_to_remove__S_n
call fcn.10030c30
add esp, 0xc
jmp 0x10032aa7
push dword [ebp - 4]
push esi
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
jne 0x10032aa7
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
je 0x10032aa7
push dword [ebp - 4]
push esi
push str.FileRotateWDDM
push str.__s:_failed_to_rename__S_____S_n
call fcn.10030c30
add esp, 0x10
sub edi, 1
jns 0x100329f5
mov edi, dword [ebp - 0xc]
jmp 0x10032ac7
push str.FileRotateWDDM
push str.__s:_failed_to_malloc_n
call fcn.10030c30
add esp, 8
push dword [ebp - 4]
call fcn.10039702
push esi
call fcn.10039702
push ebx
call fcn.10039702
add esp, 0xc
push 0
push 0x80
push 1
push 0
push 0
push 0x40000000
push edi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
jne 0x1003297f
push edi
push str.WDDMCoreDump:_Cannot_rotate_open_minidump_file__S._n
call fcn.100311b0
add esp, 8
jmp 0x1003297f
push edi
push str.WDDMCoreDump:_Cannot_open_minidump_file__S._n
call fcn.100311b0
add esp, 8
jmp 0x10032982
push str.WDDMCoreDump:_malloc___failed._n
call fcn.100311b0
add esp, 4
jmp 0x10032982