Function at 0x4026de
Capabilities:
Check if file exists
Enumerate files on windows
Query environment variable
Query or enumerate registry value

Disassembly:
push 0x900
mov eax, 0x41c65c
call fcn.00417909
mov eax, dword [ebp + 8]
xor ebx, ebx
mov esi, 0x206
push esi
mov dword [ebp - 0x8f0], eax
lea eax, [ebp - 0x62a]
push ebx
push eax
mov dword [ebp - 0x8e0], ebx
mov word [ebp - 0x62c], bx
call sub.MSVCR80.dll_memset
push esi
lea eax, [ebp - 0x21a]
push ebx
push eax
mov word [ebp - 0x21c], bx
call sub.MSVCR80.dll_memset
push esi
lea eax, [ebp - 0x422]
push ebx
push eax
mov word [ebp - 0x424], bx
call sub.MSVCR80.dll_memset
add esp, 0x24
lea ecx, [ebp - 0x664]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
lea ecx, [ebp - 0x648]
mov dword [ebp - 4], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_void_]
push 0x24c
lea eax, [ebp - 0x8d0]
push ebx
mov byte [ebp - 4], 1
push eax
mov dword [ebp - 0x8d4], ebx
call sub.MSVCR80.dll_memset
or dword [ebp - 0x8dc], 0xffffffff
add esp, 0xc
push str.SYSTEMCurrentControlSetControlCrashControl
lea ecx, [ebp - 0x680]
mov dword [ebp - 0x8d8], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::constructor_wchar_t_const__]
mov byte [ebp - 4], 2
cmp dword [ebp - 0x668], 8
mov eax, dword [ebp - 0x67c]
jae 0x4027b6
lea eax, [ebp - 0x67c]
lea ecx, [ebp - 0x8d8]
push ecx
push eax
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
cmp eax, ebx
mov edi, str.D:jenkins_Trunkworkspace10.6Patch_SourceJobqqpcmgr_projBlueRayFTSafeAppQMBlueScreenFixerDataReport.cpp
je 0x4027f4
call fcn.0041ab80
test al, al
je 0x402b9c
push str._GetDumpFilePath__RegOpenKey_return_failed_
push 0xb
push edi
call fcn.0041af50
add esp, 0xc
jmp 0x402b9c
lea eax, [ebp - 0x8e8]
push eax
lea eax, [ebp - 0x62c]
push eax
lea eax, [ebp - 0x8ec]
push eax
push ebx
push str.DumpFile
push dword [ebp - 0x8d8]
mov dword [ebp - 0x8ec], 1
mov dword [ebp - 0x8e8], 0x208
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp eax, ebx
mov esi, 0x104
jne 0x4028e2
push esi
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x62c]
push eax
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
cmp eax, ebx
je 0x4028e2
call fcn.0041ab80
test al, al
je 0x402879
lea eax, [ebp - 0x21c]
push eax
push str._GetDumpFilePath__ExpandEnvironmentStrings__wsFullDump_s
push 0xb
push edi
call fcn.0041ad40
add esp, 0x10
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, 1
mov dword [ebp - 0x8e0], eax
jne 0x4028c9
call fcn.0041ab80
test al, al
je 0x4028b1
lea eax, [ebp - 0x21c]
push eax
push str._GetDumpFilePath__FullDump_Exsit_FilePath___s
push 0xb
push edi
call fcn.0041ad40
add esp, 0x10
mov ecx, dword [ebp - 0x8f0]
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_wchar_t_const__]
jmp 0x402b9c
call fcn.0041ab80
test al, al
je 0x4028e2
push str._GetDumpFilePath__system_fulldump_not_exist
push 0xb
push edi
call fcn.0041af50
add esp, 0xc
lea eax, [ebp - 0x8e8]
push eax
lea eax, [ebp - 0x62c]
push eax
lea eax, [ebp - 0x8ec]
push eax
push ebx
push str.MinidumpDir
push dword [ebp - 0x8d8]
mov dword [ebp - 0x8ec], 1
mov dword [ebp - 0x8e8], esi
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
cmp eax, ebx
je 0x402941
call fcn.0041ab80
test al, al
je 0x402936
push str._GetDumpFilePath__get_MinidumpDir_failed
push 0xb
push edi
call fcn.0041af50
add esp, 0xc
mov dword [ebp - 0x8e0], ebx
jmp 0x402b9c
push esi
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0x62c]
push eax
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
cmp eax, ebx
jne 0x40296a
call fcn.0041ab80
test al, al
je 0x402936
push str._GetDumpFilePath__ExpandEnvironmentStrings_return_failed
jmp 0x40292b
lea eax, [ebp - 0x424]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, ebx
mov dword [ebp - 0x8e0], eax
jne 0x4029aa
call fcn.0041ab80
test al, al
je 0x402b9c
lea eax, [ebp - 0x424]
push eax
push str._GetDumpFilePath__wsMiniDumpDir__s_not_exist
push 0xb
push edi
call fcn.0041ad40
add esp, 0x10
jmp 0x402b9c
lea eax, [ebp - 0x424]
push eax
lea ecx, [ebp - 0x664]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_wchar_t_const__]
push str..dmp
lea ecx, [ebp - 0x664]
call dword [0x41d224]
cmp dword [ebp - 0x64c], 8
mov eax, dword [ebp - 0x660]
jae 0x4029e3
lea eax, [ebp - 0x660]
lea ecx, [ebp - 0x8d4]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
mov dword [ebp - 0x8dc], eax
jne 0x402a1b
call fcn.0041ab80
test al, al
je 0x402936
push str._GetDumpFilePath__FindFirstFile_return__1__no_mini_dump
push 0xb
push edi
call fcn.0041ad40
jmp 0x402933
call fcn.0041ab80
test al, al
je 0x402a3b
lea eax, [ebp - 0x8a8]
push eax
push str._GetDumpFilePath__FindFirstFile_File_s
push 0xb
push edi
call fcn.0041ad40
add esp, 0x10
lea eax, [ebp - 0x8a8]
push eax
lea ecx, [ebp - 0x648]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_wchar_t_const__]
mov eax, dword [ebp - 0x8c0]
mov esi, dword [ebp - 0x8bc]
mov dword [ebp - 0x8e4], eax
jmp 0x402abf
cmp esi, dword [ebp - 0x8bc]
jb 0x402a7a
jne 0x402a9f
mov eax, dword [ebp - 0x8e4]
cmp eax, dword [ebp - 0x8c0]
jae 0x402a9f
lea eax, [ebp - 0x8a8]
push eax
lea ecx, [ebp - 0x648]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_wchar_t_const__]
mov eax, dword [ebp - 0x8c0]
mov esi, dword [ebp - 0x8bc]
mov dword [ebp - 0x8e4], eax
call fcn.0041ab80
test al, al
je 0x402abf
lea eax, [ebp - 0x8a8]
push eax
push str._GetDumpFilePath__FindNextFile_File_s
push 0xb
push edi
call fcn.0041ad40
add esp, 0x10
lea eax, [ebp - 0x8d4]
push eax
push dword [ebp - 0x8dc]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x402a62
mov esi, dword [sym.imp.MSVCP80.dll_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t_____cdecl_std::operator_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___wchar_t_const___class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea eax, [ebp - 0x648]
push eax
lea eax, [ebp - 0x90c]
push 0x4221f4
push eax
call esi
add esp, 0xc
push eax
lea ecx, [ebp - 0x648]
mov byte [ebp - 4], 3
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [ebp - 0x90c]
mov byte [ebp - 4], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea eax, [ebp - 0x648]
push eax
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0x90c]
push eax
call esi
add esp, 0xc
push eax
lea ecx, [ebp - 0x648]
mov byte [ebp - 4], 4
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
lea ecx, [ebp - 0x90c]
mov byte [ebp - 4], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
call fcn.0041ab80
test al, al
je 0x402b7f
cmp dword [ebp - 0x630], 8
mov eax, dword [ebp - 0x644]
jae 0x402b6e
lea eax, [ebp - 0x644]
push eax
push str._GetDumpFilePath__Mini_dump_find_Path___s
push 0xb
push edi
call fcn.0041ad40
add esp, 0x10
mov ecx, dword [ebp - 0x8f0]
lea eax, [ebp - 0x648]
push eax
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t______thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::operator_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__]
mov dword [ebp - 0x8e0], 1
call fcn.0041ab80
test al, al
je 0x402bcb
cmp dword [ebp - 0x630], 8
mov eax, dword [ebp - 0x644]
jae 0x402bba
lea eax, [ebp - 0x644]
push eax
push str._GetDumpFilePath__system_dump_file___s
push 0xb
push edi
call fcn.0041ad40
add esp, 0x10
cmp dword [ebp - 0x8dc], 0xffffffff
je 0x402be0
push dword [ebp - 0x8dc]
call dword [sym.imp.KERNEL32.dll_FindClose]
cmp dword [ebp - 0x8d8], ebx
je 0x402bfa
push dword [ebp - 0x8d8]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x8d8], ebx
lea ecx, [ebp - 0x680]
mov byte [ebp - 4], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
lea ecx, [ebp - 0x648]
mov byte [ebp - 4], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x664]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t__::destructor_void_]
mov eax, dword [ebp - 0x8e0]
call fcn.00417953
ret 4