Function at 0x408123
Capabilities:
Delete file
Get common file path

Disassembly:
push 0x298
mov eax, 0x41c868
call fcn.00417909
xor ebx, ebx
push 0x206
lea eax, [ebp - 0x216]
push ebx
push eax
mov word [ebp - 0x218], bx
call sub.MSVCR80.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x288]
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 - 0x250]
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_]
lea ecx, [ebp - 0x26c]
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__::constructor_void_]
lea ecx, [ebp - 0x234]
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__::constructor_void_]
lea eax, [ebp - 0x288]
push eax
mov byte [ebp - 4], 3
call fcn.004078fe
mov edi, eax
cmp edi, ebx
je 0x408354
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___class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___wchar_t_const__]
push str.gjldr
lea eax, [ebp - 0x288]
push eax
lea eax, [ebp - 0x2a4]
push eax
call esi
add esp, 0xc
push eax
lea ecx, [ebp - 0x250]
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 - 0x2a4]
mov byte [ebp - 4], 3
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_]
push str.GJLDR.MBR
lea eax, [ebp - 0x288]
push eax
lea eax, [ebp - 0x2a4]
push eax
call esi
add esp, 0xc
push eax
lea ecx, [ebp - 0x26c]
mov byte [ebp - 4], 5
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 - 0x2a4]
mov byte [ebp - 4], 3
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_]
push 0x104
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
cmp eax, ebx
je 0x408354
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x234]
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 0x4221f4
lea ecx, [ebp - 0x234]
call dword [0x41d224]
push str.guanjiafix.img
lea ecx, [ebp - 0x234]
call dword [0x41d224]
cmp dword [ebp - 0x238], 8
mov eax, dword [ebp - 0x24c]
jae 0x408281
lea eax, [ebp - 0x24c]
mov ebx, dword [sym.imp.KERNEL32.dll_DeleteFileW]
push eax
call ebx
test eax, eax
mov edi, str._DeleteLdrAndSysFile__DeleteFile_error__s
mov esi, str.D:jenkins_Trunkworkspace10.6Patch_SourceJobqqpcmgr_projBlueRayFTSafeAppQMBlueScreenFixerQMOperateSystemOpt.cpp
jne 0x4082c3
call fcn.0041ab80
test al, al
je 0x4082c3
cmp dword [ebp - 0x238], 8
mov eax, dword [ebp - 0x24c]
jae 0x4082b6
lea eax, [ebp - 0x24c]
push eax
push edi
push 0xb
push esi
call fcn.0041af50
add esp, 0x10
cmp dword [ebp - 0x254], 8
mov eax, dword [ebp - 0x268]
jae 0x4082d8
lea eax, [ebp - 0x268]
push eax
call ebx
test eax, eax
jne 0x40830a
call fcn.0041ab80
test al, al
je 0x40830a
cmp dword [ebp - 0x254], 8
mov eax, dword [ebp - 0x268]
jae 0x4082fd
lea eax, [ebp - 0x268]
push eax
push edi
push 0xb
push esi
call fcn.0041af50
add esp, 0x10
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x40831f
lea eax, [ebp - 0x230]
push eax
call ebx
test eax, eax
jne 0x408351
call fcn.0041ab80
test al, al
je 0x408351
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x408344
lea eax, [ebp - 0x230]
push eax
push edi
push 0xb
push esi
call fcn.0041af50
add esp, 0x10
xor edi, edi
inc edi
lea ecx, [ebp - 0x234]
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 ecx, [ebp - 0x26c]
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 - 0x250]
mov byte [ebp - 4], 0
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 - 0x288]
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, edi
call fcn.00417953
ret