Function at 0x4035b4
Capabilities:
Check if file exists

Disassembly:
push 0xcc
mov eax, 0x42395d
call fcn.00421d3b
mov eax, dword [ebp + 8]
mov edi, ecx
xor ebx, ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x98], ebx
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
xor esi, esi
inc esi
mov dword [ebp - 4], esi
mov eax, dword [edi]
push dword [eax + 0x558]
push str.GetLogInfo__dwGetLogInfoOff_d
push str.bugreport
call fcn.00417869
mov eax, dword [edi]
add esp, 0xc
cmp dword [eax + 0x558], ebx
je 0x403622
add eax, 0x350
cmp word [eax], bx
je 0x403622
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x88], eax
jmp 0x403628
mov dword [ebp - 0x88], ebx
cmp dword [ebp - 0x88], ebx
je 0x40373b
mov eax, dword [edi]
mov eax, dword [eax + 0x558]
add eax, dword [ebp - 0x88]
mov dword [ebp - 0x90], eax
je 0x403710
lea eax, [ebp - 0x6c]
push esi
push eax
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x8c], ebx
call fcn.004010c5
mov ebx, eax
call fcn.00403cda
mov ebx, eax
lea eax, [ebp - 0x70]
push 0x20
push eax
mov byte [ebp - 4], 2
call fcn.004010c5
call fcn.00403cb5
mov dword [ebp - 0xac], eax
mov byte [ebp - 4], 3
call fcn.004010c5
lea esi, [ebp - 0x78]
call fcn.004017d9
mov ecx, dword [ebp - 0xac]
push 0
lea edx, [ebp - 0x8c]
push edx
mov byte [ebp - 4], 4
mov ebx, dword [ebx]
mov ecx, dword [ecx]
mov eax, dword [eax]
lea edx, [ebp - 0x74]
push edx
push ebx
push ecx
push 0x42a59a
push eax
push dword [edi]
call dword [ebp - 0x90]
mov esi, eax
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
call fcn.0040167f
mov eax, dword [ebp - 0x70]
add eax, 0xfffffff0
call fcn.0040167f
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffff0
call fcn.0040167f
test esi, esi
je 0x40370e
cmp dword [ebp - 0x74], 0
je 0x40370e
cmp dword [ebp - 0x8c], 0
jbe 0x40370e
push dword [ebp - 0x8c]
lea ecx, [ebp - 0x2c]
push dword [ebp - 0x74]
call dword [sym.imp.MSVCP80.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
xor ebx, ebx
push dword [ebp - 0x88]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov ecx, dword [ebp - 0x80]
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov dword [ebp - 0x98], 1
mov byte [ebp - 4], bl
jmp 0x403bef
call fcn.004017f5
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x90], eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov dword [ebp - 0x30], ebx
mov byte [ebp - 4], 6
mov eax, dword [edi]
lea ecx, [ebp - 0x84]
push ecx
mov ecx, dword [eax + 0x5d4]
call fcn.00404a23
cmp dword [ebp + 0xc], 0x60
mov byte [ebp - 4], 7
mov eax, str.MidDump.dmp
je 0x40378b
mov eax, str..dmp
push eax
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x84]
call fcn.00404c06
mov byte [ebp - 4], 8
push dword [eax]
lea eax, [ebp - 0x70]
push eax
call fcn.004173a0
add esp, 0x10
mov ebx, eax
push dword [ebp + 0xc]
lea eax, [ebp - 0x6c]
push eax
mov eax, edi
mov byte [ebp - 4], 9
call fcn.00403cb5
push ebx
push eax
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0xa
call fcn.00413bc3
mov eax, dword [ebp - 0x6c]
add esp, 0xc
add eax, 0xfffffff0
call fcn.0040167f
mov eax, dword [ebp - 0x70]
add eax, 0xfffffff0
call fcn.0040167f
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
call fcn.0040167f
lea eax, [ebp - 0x78]
push str..txt
push eax
lea ecx, [ebp - 0x84]
call fcn.00404c06
mov byte [ebp - 4], 0xb
push dword [eax]
lea eax, [ebp - 0x70]
push eax
call fcn.004173a0
add esp, 0x10
mov esi, eax
push 1
lea eax, [ebp - 0x6c]
push eax
mov ebx, edi
mov byte [ebp - 4], 0xc
call fcn.00403cda
push esi
push eax
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0xd
call fcn.00413bc3
mov eax, dword [ebp - 0x6c]
add esp, 0xc
add eax, 0xfffffff0
call fcn.0040167f
mov eax, dword [ebp - 0x70]
add eax, 0xfffffff0
call fcn.0040167f
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
call fcn.0040167f
xor ebx, ebx
cmp dword [0x435fcc], ebx
je 0x4038b5
mov esi, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0x1d4c0
push dword [edi + 0x2c]
call esi
cmp dword [0x435fcc], ebx
je 0x4038a4
push 0x7d0
push dword [edi + 0x2c]
mov dword [0x435fcc], ebx
mov dword [0x435fd4], 1
call esi
mov eax, dword [edi + 0x2c]
cmp eax, ebx
je 0x4038b5
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [edi + 0x2c], ebx
push 2
lea eax, [ebp - 0x6c]
push eax
mov ebx, edi
call fcn.00403cda
push dword [eax]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov esi, eax
mov eax, dword [ebp - 0x6c]
add eax, 0xfffffff0
call fcn.0040167f
test esi, esi
je 0x403949
lea eax, [ebp - 0x78]
push str.FMD5.txt
push eax
lea ecx, [ebp - 0x84]
call fcn.00404c06
mov byte [ebp - 4], 0xe
push dword [eax]
lea eax, [ebp - 0x70]
push eax
call fcn.004173a0
add esp, 0x10
mov esi, eax
push 2
lea eax, [ebp - 0x6c]
push eax
mov byte [ebp - 4], 0xf
call fcn.00403cda
push esi
push eax
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0x10
call fcn.00413bc3
mov eax, dword [ebp - 0x6c]
add esp, 0xc
add eax, 0xfffffff0
call fcn.0040167f
mov eax, dword [ebp - 0x70]
add eax, 0xfffffff0
call fcn.0040167f
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
call fcn.0040167f
push edi
call fcn.00404677
test eax, eax
je 0x403a51
mov eax, dword [ebp - 0x90]
test byte [eax + 4], 1
je 0x403a51
mov ecx, dword [eax + 0xc]
mov esi, dword [ecx]
add eax, 8
mov ebx, eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x78], esi
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x90], ecx
test ebx, ebx
je 0x403988
cmp ebx, eax
je 0x40398e
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
cmp esi, dword [ebp - 0x90]
je 0x403a51
test ebx, ebx
jne 0x4039a4
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
cmp esi, dword [ebx + 4]
jne 0x4039af
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
lea eax, [ebp - 0xd8]
add esi, 8
push eax
mov edi, esi
call fcn.00403c33
lea eax, [ebp - 0xd8]
mov byte [ebp - 4], 0x11
mov esi, dword [ebp - 0x74]
push eax
push esi
call fcn.00403d84
test eax, eax
je 0x4039f5
mov eax, dword [esi]
mov eax, dword [eax + 0x24]
lea ecx, [ebp - 0xd8]
test ecx, ecx
je 0x403a29
push eax
lea eax, [ebp - 0x68]
push eax
mov ebx, ecx
call fcn.00404043
jmp 0x403a29
push dword [ebp - 0xd8]
lea eax, [ebp - 0x6c]
push eax
call fcn.00417304
push dword [ebp - 0xd4]
push dword [eax]
push str.GetDetail2:_invalid_filter._FilterName__s__LogCount__d_
push 0x4295a4
call fcn.00417869
mov eax, dword [ebp - 0x6c]
add esp, 0x18
add eax, 0xfffffff0
call fcn.0040167f
lea edi, [ebp - 0xd8]
mov byte [ebp - 4], 7
call fcn.00403c91
lea esi, [ebp - 0x7c]
call fcn.00404fa0
mov esi, dword [ebp - 0x78]
mov ebx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x70]
mov edi, dword [ebp - 0x74]
jmp 0x403980
xor eax, eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
mov byte [ebp - 4], 0x12
mov eax, dword [edi]
push dword [eax + 0x5d4]
lea eax, [ebp - 0xa8]
push eax
call fcn.00414273
test eax, eax
pop ecx
pop ecx
je 0x403b74
mov ebx, dword [ebp - 0xa4]
test ebx, ebx
je 0x403b74
mov eax, dword [ebp - 0xa0]
sub eax, ebx
sar eax, 2
je 0x403b74
cmp ebx, dword [ebp - 0xa0]
jbe 0x403ab4
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0xa4], eax
mov dword [ebp - 0x6c], eax
jbe 0x403acb
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
cmp ebx, dword [ebp - 0x6c]
je 0x403b74
cmp ebx, dword [ebp - 0xa0]
jb 0x403ae2
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
mov eax, dword [ebx]
sub eax, 0x10
call fcn.00405607
lea edi, [eax + 0x10]
mov dword [ebp - 0x74], edi
push edi
mov byte [ebp - 4], 0x13
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x403b52
push 0x5c
lea esi, [ebp - 0x74]
call fcn.00404aff
mov edx, eax
lea eax, [ebp - 0x78]
push eax
inc edx
mov eax, esi
call fcn.00404b97
mov byte [ebp - 4], 0x14
push dword [eax]
lea eax, [ebp - 0x70]
push eax
call fcn.004173a0
push eax
mov eax, esi
push eax
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0x15
call fcn.00413bc3
mov eax, dword [ebp - 0x70]
add esp, 0x14
add eax, 0xfffffff0
call fcn.0040167f
mov eax, dword [ebp - 0x78]
add eax, 0xfffffff0
call fcn.0040167f
lea eax, [edi - 0x10]
mov byte [ebp - 4], 0x12
call fcn.0040167f
cmp ebx, dword [ebp - 0xa0]
jb 0x403b6c
call dword [sym.imp.MSVCR80.dll__invalid_parameter_noinfo]
add ebx, 4
jmp 0x403acb
lea eax, [ebp - 0x2c]
push eax
lea esi, [ebp - 0x68]
call fcn.00416516
cmp dword [ebp - 0x18], 0x32000
jbe 0x403ba1
push dword [ebp + 0xc]
push dword [ebp - 0x18]
push str.detail2_over_200k__lu__08X
push 0x4295a4
call fcn.00417869
add esp, 0x10
mov ecx, dword [ebp - 0x80]
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea esi, [ebp - 0xa8]
mov dword [ebp - 0x98], 1
call fcn.00404f59
mov eax, dword [ebp - 0x84]
add eax, 0xfffffff0
call fcn.0040167f
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x16
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x2c]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x80]
call fcn.00421dbe
ret 8