Function at 0x4220e0
Capabilities:
Create directory
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x31c
push ebx
push esi
push edi
xor esi, esi
push 0x286
lea ecx, [ebp - 0x31a]
xor eax, eax
push esi
push ecx
mov dword [ebp - 8], esi
mov word [ebp - 0x31c], ax
call fcn.004b03e0
add esp, 0xc
push 0x7f02
push esi
call dword [sym.imp.USER32.dll_LoadCursorW]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov ebx, dword [ebp + 0xc]
push 0x800
push esi
push ebx
call fcn.004b03e0
add esp, 0xc
lea edx, [ebp - 0x31c]
push edx
push esi
push esi
push 0x10
push esi
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
cmp eax, esi
mov dword [ebp - 4], eax
jge 0x422157
mov eax, str.CreateDumpForReport_called__get_desktop_folder_failed
jmp 0x4222a5
cmp word [ebp - 0x31c], si
je 0x4221a0
lea eax, [ebp - 0x31c]
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x422170
sub eax, edx
sar eax, 1
cmp word [ebp + eax*2 - 0x31e], 0x5c
je 0x4221a0
push 0x4c9860
push 0x144
lea eax, [ebp - 0x31c]
push eax
call fcn.00401880
push str.ConEmuTrap
push 0x144
lea ecx, [ebp - 0x31c]
push ecx
call fcn.00401880
push esi
lea edx, [ebp - 0x31c]
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea eax, [ebp - 0x31c]
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x4221d0
mov edi, dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
sub eax, edx
sar eax, 1
mov esi, eax
call edi
push eax
push 0x4c1318
push 4
push 6
push 0xd
lea eax, [ebp + esi*2 - 0x31c]
push str.Trap__02u_02u_02u_s__u.dmp
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x1c
push 0
push 0x80
push 2
push 0
push 1
push 0xc0000000
lea ecx, [ebp - 0x31c]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
jne 0x422238
mov eax, str.CreateDumpForReport_called__create_dump_file_failed
jmp 0x4222a5
push str.Dbghelp.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 8], eax
test eax, eax
jne 0x422251
mov eax, str.CreateDumpForReport_called__LoadLibrary_Dbghelp.dll__failed
jmp 0x4222a5
push str.MiniDumpWriteDump
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, eax
test ebx, ebx
jne 0x42226a
mov eax, str.CreateDumpForReport_called__MiniDumpWriteDump_not_found
jmp 0x4222a2
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov edx, dword [ebp + 8]
mov dword [ebp - 0x14], eax
xor eax, eax
push eax
push eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x14]
push eax
push 2
push esi
mov dword [ebp - 0x10], edx
call edi
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call ebx
test eax, eax
jne 0x4222ef
mov eax, str.CreateDumpForReport_called__MiniDumpWriteDump_failed
mov ebx, dword [ebp + 0xc]
push 0xff
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
cmp word [ebp - 0x31c], 0
je 0x4222de
push 0x4c2ecc
push 0x400
push ebx
call fcn.00401880
lea ecx, [ebp - 0x31c]
push ecx
push 0x400
push ebx
call fcn.00401880
cmp dword [ebp - 4], 0
jne 0x422361
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 4], eax
jmp 0x422361
mov eax, dword [ebp + 8]
test eax, eax
je 0x422316
mov eax, dword [eax]
test eax, eax
je 0x422316
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x94]
push str.Exception_0x_08X
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
jmp 0x42232a
lea ecx, [ebp - 0x94]
push str.Assertion
push ecx
call fcn.00401a10
add esp, 8
mov edx, dword [str.http:__code.google.com_p_conemu_maximus5_issues_entry]
push edx
mov edx, dword [ebp + 0xc]
lea eax, [ebp - 0x31c]
push eax
push 0x4c1318
push 4
push 6
push 0xd
push 0x4c1318
lea ecx, [ebp - 0x94]
push ecx
push str._s_was_occurred__ConEmu_s__02u_02u_02u_s__r_n_r_nMemory_dump_was_saved_to_r_n_s_r_n_r_nPlease_Zip_it_and_send_to_developer_r_n_s
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x28
cmp esi, 0xffffffff
je 0x422371
test esi, esi
je 0x422371
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
test eax, eax
je 0x422382
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorW]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
mov eax, dword [ebp - 4]
mov esp, ebp
pop ebp
ret