Function at 0x5156d70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
lea ebp, [esp - 0x4dc]
sub esp, 0x4dc
push 0xffffffffffffffff
push 0x522d97a
mov eax, dword fs:[0]
push eax
sub esp, 0x190
mov eax, dword [0x53f3c3c]
xor eax, ebp
mov dword [ebp + 0x4d8], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 0x4f4]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp + 0x4f8]
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp + 0x4fc]
mov dword [ebp - 0x40], edx
mov ebx, str.META_RestoreCalibrationData_EX
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x24], 0
mov dword [ebp - 4], 0
lea eax, [ebp - 0x2c]
push eax
mov esi, dword [ebp + 0x4e4]
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, eax
add ecx, 0xd3f0
call fcn.051c0e10
mov ecx, dword [eax]
mov dword [ebp - 0x34], ecx
mov edx, dword [eax + 4]
mov dword [ebp - 0x30], edx
mov edi, 0x10
lea eax, [ebp - 0x2c]
push eax
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, eax
add ecx, 0xd3f0
call fcn.051c0e40
push eax
lea ecx, [ebp - 0x34]
call fcn.05067840
test al, al
je 0x51575df
push 0x52c722a
lea ecx, [ebp + 0xa0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x34]
call fcn.05150960
cmp byte [eax], 3
je 0x5156eed
lea ecx, [ebp - 0x34]
call fcn.05150960
cmp byte [eax], 8
je 0x5156eed
lea ecx, [ebp - 0x34]
call fcn.05150960
cmp byte [eax], 2
jne 0x51575bc
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 4
cmp dword [eax + 0x18], edi
jb 0x5156e98
mov edi, dword [eax + 4]
jmp 0x5156e9b
lea edi, [eax + 4]
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
add eax, 0xd3d4
cmp dword [eax + 0x18], 0x10
jb 0x5156eb6
mov eax, dword [eax + 4]
jmp 0x5156eb9
add eax, 4
push edi
push eax
push esi
lea ecx, [ebp + 0x1c]
push ecx
call fcn.05195070
add esp, 0x10
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp + 0xa0]
call dword [0x523a2b0]
mov byte [ebp - 4], 1
lea ecx, [ebp + 0x1c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov edi, 0x10
jmp 0x5156f05
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 4
push eax
lea ecx, [ebp + 0xa0]
call dword [0x523a2b0]
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 0x20
push eax
lea ecx, [ebp + 0xbc]
call dword [sym.imp.MSVCP90.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 byte [ebp - 4], 3
lea ecx, [ebp - 0x34]
call fcn.05150960
cmp byte [eax], 8
je 0x5157200
cmp dword [ebp + 0xd4], edi
mov eax, dword [ebp + 0xc0]
jae 0x5156f46
lea eax, [ebp + 0xc0]
push 1
push eax
lea edx, [ebp - 0x7c]
push edx
call dword [sym.imp.MSVCR90.dll_strncpy]
push 0x400
push 0
lea eax, [ebp + 0xd8]
push eax
call sub.MSVCR90.dll_memset
add esp, 0x18
cmp dword [ebp + 0xb8], edi
mov eax, dword [ebp + 0xa4]
jae 0x5156f7d
lea eax, [ebp + 0xa4]
push eax
push 0x5397fdc
lea ecx, [ebp + 0xd8]
push ecx
call dword [sym.imp.MSVCR90.dll_sprintf]
add esp, 0xc
lea edx, [ebp + 0xd8]
mov dword [ebp - 0x78], edx
cmp dword [ebp + 0xd4], edi
mov eax, dword [ebp + 0xc0]
jae 0x5156fb0
lea eax, [ebp + 0xc0]
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x7c]
push eax
push esi
call sym.META_DLL.dll_META_FAT_CheckEnoughSpaceEx_r
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x515704e
push str._ERROR:
push 0xff
push 0xc8d
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp + 0x8c]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 4
cmp dword [ebp + 0xd4], 0x10
jb 0x5157001
mov ecx, dword [ebp + 0xc0]
mov dword [ebp - 0x20], ecx
jmp 0x515700a
lea edx, [ebp + 0xc0]
mov dword [ebp - 0x20], edx
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov ecx, dword [ebp - 0x20]
push ecx
push ebx
push esi
push str.__d___s__:_Target_Disk_may_not_be_enough_
push eax
push edi
call fcn.051ae2d0
add esp, 0x18
mov byte [ebp - 4], 3
lea ecx, [ebp + 0x8c]
call fcn.051ae2c0
mov dword [ebp - 0x1c], 0x2b
push 0x2b
push esi
call fcn.051953e0
add esp, 8
push 1
mov edx, dword [ebp - 0x48]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x38], esp
lea eax, [ebp + 0xbc]
push eax
call dword [sym.imp.MSVCP90.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 byte [ebp - 4], 5
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x14], esp
lea edx, [ebp + 0xa0]
push edx
call dword [sym.imp.MSVCP90.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 byte [ebp - 4], 6
push esi
mov byte [ebp - 4], 3
call fcn.0514e110
add esp, 0x44
mov edi, eax
mov dword [ebp - 0x4c], edi
test edi, edi
je 0x515714c
push str._ERROR:
push 0xff
push 0xc95
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x9c]
call fcn.051ae270
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 7
cmp dword [ebp + 0xd4], 0x10
jb 0x51570da
mov eax, dword [ebp + 0xc0]
mov dword [ebp - 0x20], eax
jmp 0x51570e3
lea ecx, [ebp + 0xc0]
mov dword [ebp - 0x20], ecx
cmp dword [ebp + 0xb8], 0x10
jb 0x51570f7
mov edx, dword [ebp + 0xa4]
mov dword [ebp - 0x14], edx
jmp 0x5157100
lea eax, [ebp + 0xa4]
mov dword [ebp - 0x14], eax
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push edi
mov ecx, dword [ebp - 0x20]
push ecx
mov edx, dword [ebp - 0x14]
push edx
push ebx
push esi
push str.__d___s__:_UploadFileToTargetNoProgress___s_to__s__fail__ret_code__d_
push eax
mov eax, dword [ebp - 0x38]
push eax
call fcn.051ae2d0
add esp, 0x20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x9c]
call fcn.051ae2c0
mov dword [ebp - 0x1c], 0x48
push 0x48
push esi
call fcn.051953e0
add esp, 8
push 0x400
push 0
lea ecx, [ebp + 0xd8]
push ecx
call sub.MSVCR90.dll_memset
add esp, 0xc
mov eax, 0x10
cmp dword [ebp + 0xd4], eax
jb 0x515717a
mov edx, dword [ebp + 0xc0]
mov dword [ebp - 0x14], edx
jmp 0x5157183
lea ecx, [ebp + 0xc0]
mov dword [ebp - 0x14], ecx
cmp dword [ebp + 0xb8], eax
jb 0x5157196
mov edx, dword [ebp + 0xa4]
mov dword [ebp - 0x20], edx
jmp 0x515719f
lea eax, [ebp + 0xa4]
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x34]
call fcn.05150960
mov edi, eax
push 0x529080c
lea ecx, [ebp - 0x34]
call fcn.05150960
mov ecx, dword [eax + 0x3c]
push ecx
push 0x529080c
mov edx, dword [ebp - 0x14]
push edx
push 0x529080c
mov eax, dword [ebp - 0x20]
push eax
push 0x529080c
movzx ecx, byte [edi]
push ecx
push str._d_s_s_s_s_s_d_s_n
lea edx, [ebp + 0xd8]
push edx
call dword [sym.imp.MSVCR90.dll_sprintf]
mov eax, dword [ebp - 0x40]
push eax
lea ecx, [ebp + 0xd8]
push ecx
call dword [sym.imp.MSVCR90.dll_fputs]
add esp, 0x30
jmp 0x51574af
lea ecx, [ebp - 0x34]
call fcn.05150960
mov edi, eax
add edi, 0x20
cmp dword [edi + 0x14], 0
ja 0x5157219
call dword [sym.imp.MSVCP90.dll_public:_static_void___cdecl_std::_String_base::_Xran_void_]
cmp dword [edi + 0x18], 0x10
jb 0x5157224
mov edi, dword [edi + 4]
jmp 0x5157227
add edi, 4
mov dl, byte [edi]
mov byte [ebp - 0x88], dl
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 4
mov edi, 0x10
cmp dword [eax + 0x18], edi
jb 0x5157249
mov eax, dword [eax + 4]
jmp 0x515724c
add eax, 4
mov dword [ebp - 0x84], eax
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 0x20
cmp dword [eax + 0x18], edi
jb 0x5157267
mov eax, dword [eax + 4]
jmp 0x515726a
add eax, 4
mov dword [ebp - 0x80], eax
lea eax, [ebp - 0x88]
push eax
push esi
call sym.META_DLL.dll_META_FAT_CheckEnoughSpaceEx_r
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x515732c
push str._ERROR:
push 0xff
push 0xcad
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x9c]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 0x20
cmp dword [eax + 0x18], 0x10
jb 0x51572c3
mov ecx, dword [eax + 4]
mov dword [ebp - 0x14], ecx
jmp 0x51572c9
add eax, 4
mov dword [ebp - 0x14], eax
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x14]
push edx
push ebx
push esi
push str.__d___s__:_Target_Disk_may_not_be_enough_
push eax
push edi
call fcn.051ae2d0
add esp, 0x18
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x9c]
call fcn.051ae2c0
mov dword [ebp - 0x1c], 0x2b
mov byte [ebp - 4], 1
lea ecx, [ebp + 0xbc]
call dword [sym.imp.MSVCP90.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 + 0xa0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, 0x2b
jmp 0x51589ad
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 0x20
mov eax, dword [eax + 0x14]
mov dword [ebp - 0x38], eax
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 0x20
cmp dword [eax + 0x18], edi
jb 0x5157360
mov ecx, dword [eax + 4]
mov dword [ebp - 0x14], ecx
jmp 0x5157366
add eax, 4
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 4
mov edx, dword [eax + 0x14]
mov dword [ebp - 0x20], edx
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 4
cmp dword [eax + 0x18], edi
jb 0x515738c
mov edi, dword [eax + 4]
jmp 0x515738f
lea edi, [eax + 4]
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
push eax
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 0x78
push eax
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 0x50
push eax
mov edx, dword [ebp - 0x20]
push edx
push edi
call fcn.0506e850
add esp, 0x1c
mov edi, eax
mov dword [ebp - 0x1c], edi
test edi, edi
je 0x51573f8
mov byte [ebp - 4], 1
lea ecx, [ebp + 0xbc]
call dword [sym.imp.MSVCP90.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 + 0xa0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, edi
jmp 0x51589ad
push 0x400
push 0
lea eax, [ebp + 0xd8]
push eax
call sub.MSVCR90.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 0x20
mov edi, 0x10
cmp dword [eax + 0x18], edi
jb 0x515742b
mov ecx, dword [eax + 4]
mov dword [ebp - 0x14], ecx
jmp 0x5157431
add eax, 4
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x34]
call fcn.05150960
add eax, 4
cmp dword [eax + 0x18], edi
jb 0x5157449
mov edx, dword [eax + 4]
mov dword [ebp - 0x20], edx
jmp 0x515744f
add eax, 4
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x34]
call fcn.05150960
mov edi, eax
push 0x529080c
lea ecx, [ebp - 0x34]
call fcn.05150960
mov ecx, dword [eax + 0x4c]
push ecx
mov edx, dword [eax + 0x48]
push edx
push 0x529080c
mov eax, dword [ebp - 0x14]
push eax
push 0x529080c
mov ecx, dword [ebp - 0x20]
push ecx
push 0x529080c
movzx edx, byte [edi]
push edx
push str._d_s_s_s_s_s_I64u_s_n
lea eax, [ebp + 0xd8]
push eax
call dword [sym.imp.MSVCR90.dll_sprintf]
mov ecx, dword [ebp - 0x40]
push ecx
lea edx, [ebp + 0xd8]
push edx
call dword [sym.imp.MSVCR90.dll_fputs]
add esp, 0x34
mov eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.MSVCR90.dll_fflush]
add esp, 4
push 0x52c722a
push 1
push 0xcc6
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0xc4]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 9
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov ecx, dword [ebp - 0x24]
push ecx
mov edx, dword [ebp + 0x4f0]
push edx
push ebx
push esi
push str.__d___s:_call_the_progress_callback_in_restore_phase___d___d_
push eax
push edi
call fcn.051ae2d0
add esp, 0x1c
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xc4]
call fcn.051ae2c0
inc dword [ebp - 0x24]
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 8]
test eax, eax
je 0x5157538
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx + 0xc]
push edx
mov ecx, dword [ebp - 0x24]
push ecx
mov edx, dword [ebp + 0x4f0]
push edx
call eax
mov eax, dword [ebp - 0x48]
push eax
push esi
call fcn.05194b30
add esp, 8
test al, al
je 0x51575ac
mov dword [ebp - 0x1c], 0x3b
push str._ERROR:
push 0xff
push 0xcd2
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x64]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0xa
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov ecx, dword [ebp - 0x24]
push ecx
push ebx
push esi
push str.__d___s__:_already_restore__d_files__but_user_ask_to_stop_the_procedure_
push eax
push edi
call fcn.051ae2d0
add esp, 0x18
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x64]
call fcn.051ae2c0
push 0x3b
push esi
call fcn.051953e0
add esp, 8
mov byte [ebp - 4], 1
lea ecx, [ebp + 0xbc]
call dword [sym.imp.MSVCP90.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 + 0xa0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
push 0
lea edx, [ebp - 0x70]
push edx
lea ecx, [ebp - 0x34]
call fcn.051509a0
jmp 0x5156e0d
cmp byte [ebp + 0x4ec], 0
je 0x5158833
push 0x52c722a
lea ecx, [ebp + 0x70]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [ebp - 4], 0xb
push 0x52c722a
lea ecx, [ebp + 0x54]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [ebp - 4], 0xc
cmp byte [ebp + 0x4e8], 0
je 0x51579e6
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
cmp byte [eax + 0xd484], 0
jne 0x51579e6
push 0x52c722a
push 1
push 0xcee
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x64]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0xd
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push ebx
push esi
push str.__d___s__:_because_backup_phase_load_is_old__we_need_to_get_SML_prefix_for_further_check
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x64]
call fcn.051ae2c0
xor edi, edi
mov dword [ebp - 0x50], edi
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
add eax, 0xd408
mov ecx, dword [eax + 0x10]
sub ecx, dword [eax + 0xc]
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jae 0x51576fc
push edi
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, eax
add ecx, 0xd408
call fcn.0514ed20
mov ecx, dword [eax]
mov dword [ebp + 0x8c], ecx
mov edx, dword [eax + 4]
mov dword [ebp + 0x90], edx
mov ecx, dword [eax + 8]
mov dword [ebp + 0x94], ecx
mov ecx, dword [eax + 0xc]
mov dword [ebp + 0x98], ecx
mov edx, dword [eax + 0x10]
mov dword [ebp + 0x9c], edx
cmp cl, 2
je 0x5157704
inc edi
jmp 0x5157681
xor al, al
je 0x51577be
push 0x52c722a
push 1
push 0xcfb
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x64]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0xe
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
lea ecx, [ebp + 0x8c]
push ecx
push ebx
push esi
push str.__d___s__:_find_SML_prefix___s_
push eax
push edi
call fcn.051ae2d0
add esp, 0x18
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x64]
call fcn.051ae2c0
lea edx, [ebp + 0x8c]
push edx
lea ecx, [ebp + 0x70]
call dword [0x523a2ec]
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp + 0x70]
call dword [sym.imp.MSVCP90.dll_public:_class_std::_String_iterator_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::begin_void_]
mov edi, eax
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp + 0x70]
call dword [sym.imp.MSVCP90.dll_public:_class_std::_String_iterator_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::end_void_]
mov dword [ebp - 0x38], eax
lea edx, [ebp - 0x2c]
push edx
lea ecx, [ebp + 0x70]
call dword [sym.imp.MSVCP90.dll_public:_class_std::_String_iterator_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::begin_void_]
mov ecx, dword [sym.imp.MSVCR90.dll_toupper]
push ecx
mov edx, dword [edi + 4]
push edx
mov ecx, dword [edi]
push ecx
mov ecx, dword [ebp - 0x38]
mov edx, dword [ecx + 4]
push edx
mov ecx, dword [ecx]
push ecx
mov edx, dword [eax + 4]
push edx
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x3c]
push ecx
call fcn.050108a0
add esp, 0x20
jmp 0x515780b
push str._WARNING:
push 0xd2
push 0xd01
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x64]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0xf
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push ebx
push esi
push str.__d___s__:_Can_not_get_SML_prefix
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x64]
call fcn.051ae2c0
push 0x52c722a
push 1
push 0xd03
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x64]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x10
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push ebx
push esi
push str.__d___s__:_because_backup_phase_load_is_old__we_try_to_get_IMEI_prefix_for_further_check
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x64]
call fcn.051ae2c0
xor edi, edi
mov dword [ebp - 0x50], edi
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
add eax, 0xd408
mov ecx, dword [eax + 0x10]
sub ecx, dword [eax + 0xc]
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jae 0x51578d2
push edi
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, eax
add ecx, 0xd408
call fcn.0514ed20
mov ecx, dword [eax]
mov dword [ebp + 0x8c], ecx
mov edx, dword [eax + 4]
mov dword [ebp + 0x90], edx
mov ecx, dword [eax + 8]
mov dword [ebp + 0x94], ecx
mov ecx, dword [eax + 0xc]
mov dword [ebp + 0x98], ecx
mov edx, dword [eax + 0x10]
mov dword [ebp + 0x9c], edx
cmp cl, 1
je 0x51578da
inc edi
jmp 0x5157857
xor al, al
je 0x5157994
push 0x52c722a
push 1
push 0xd12
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x64]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x11
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
lea ecx, [ebp + 0x8c]
push ecx
push ebx
push esi
push str.__d___s__:_find_IMEI_prefix___s_
push eax
push edi
call fcn.051ae2d0
add esp, 0x18
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x64]
call fcn.051ae2c0
lea edx, [ebp + 0x8c]
push edx
lea ecx, [ebp + 0x54]
call dword [0x523a2ec]
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp + 0x54]
call dword [sym.imp.MSVCP90.dll_public:_class_std::_String_iterator_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::begin_void_]
mov edi, eax
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp + 0x54]
call dword [sym.imp.MSVCP90.dll_public:_class_std::_String_iterator_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::end_void_]
mov dword [ebp - 0x38], eax
lea edx, [ebp - 0x2c]
push edx
lea ecx, [ebp + 0x54]
call dword [sym.imp.MSVCP90.dll_public:_class_std::_String_iterator_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::begin_void_]
mov ecx, dword [sym.imp.MSVCR90.dll_toupper]
push ecx
mov edx, dword [edi + 4]
push edx
mov ecx, dword [edi]
push ecx
mov ecx, dword [ebp - 0x38]
mov edx, dword [ecx + 4]
push edx
mov ecx, dword [ecx]
push ecx
mov edx, dword [eax + 4]
push edx
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x3c]
push ecx
call fcn.050108a0
add esp, 0x20
jmp 0x51579e1
push str._WARNING:
push 0xd2
push 0xd18
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x64]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x12
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push ebx
push esi
push str.__d___s__:_Can_not_get_IMEI_prefix
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x64]
call fcn.051ae2c0
mov edi, 0x10
mov dword [ebp - 0x2c], 0
lea edx, [ebp - 0x70]
push edx
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, eax
add ecx, 0xd49c
call fcn.051c0e10
mov ecx, dword [eax]
mov dword [ebp - 0x2c], ecx
mov edx, dword [eax + 4]
mov dword [ebp - 0x28], edx
lea eax, [ebp - 0x70]
push eax
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov ecx, eax
add ecx, 0xd49c
call fcn.051c0e40
push eax
lea ecx, [ebp - 0x2c]
call fcn.05067840
test al, al
je 0x5158819
lea ecx, [ebp - 0x2c]
call fcn.05150960
cmp byte [eax + 0x20], 1
jne 0x5158806
mov byte [ebp - 0x15], 0
lea ecx, [ebp - 0x2c]
call fcn.05150960
cmp byte [eax + 0x61], 1
jne 0x5158806
lea ecx, [ebp - 0x2c]
call fcn.05150960
add eax, 0x24
push eax
lea ecx, [ebp + 0xa0]
call dword [sym.imp.MSVCP90.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 byte [ebp - 4], 0x13
lea ecx, [ebp - 0x2c]
call fcn.05150960
add eax, 0x64
push eax
lea ecx, [ebp + 0xbc]
call dword [sym.imp.MSVCP90.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 byte [ebp - 4], 0x14
cmp dword [ebp + 0xd4], edi
mov eax, dword [ebp + 0xc0]
jae 0x5157ab5
lea eax, [ebp + 0xc0]
push eax
lea ecx, [ebp + 0x38]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp + 0x38]
call dword [sym.imp.MSVCP90.dll_public:_class_std::_String_iterator_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::begin_void_]
mov edi, eax
lea edx, [ebp - 0xd4]
push edx
lea ecx, [ebp + 0x38]
call dword [sym.imp.MSVCP90.dll_public:_class_std::_String_iterator_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::end_void_]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp + 0x38]
call dword [sym.imp.MSVCP90.dll_public:_class_std::_String_iterator_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::begin_void_]
mov ecx, dword [sym.imp.MSVCR90.dll_toupper]
push ecx
mov edx, dword [edi + 4]
push edx
mov ecx, dword [edi]
push ecx
mov ecx, dword [ebp - 0x38]
mov edx, dword [ecx + 4]
push edx
mov ecx, dword [ecx]
push ecx
mov edx, dword [eax + 4]
push edx
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x84]
push ecx
call fcn.050108a0
add esp, 0x20
cmp byte [ebp + 0x4e8], 0
je 0x515809a
push 0x52c722a
lea edx, [ebp + 0x70]
push edx
mov edi, dword [sym.imp.MSVCP90.dll_bool___cdecl_std::operator__char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
call edi
add esp, 8
test al, al
je 0x5157d64
cmp dword [ebp + 0x88], 0x10
mov eax, dword [ebp + 0x74]
jae 0x5157b5b
lea eax, [ebp + 0x74]
mov ecx, dword [ebp + 0x84]
push ecx
push 0
push eax
lea ecx, [ebp + 0x38]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int__unsigned_int_const]
test eax, eax
jl 0x515809a
push 0x52c722a
push 1
push 0xd3c
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x64]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x16
cmp dword [ebp + 0xd4], 0x10
jb 0x5157ba9
mov edx, dword [ebp + 0xc0]
mov dword [ebp - 0x14], edx
jmp 0x5157bb2
lea eax, [ebp + 0xc0]
mov dword [ebp - 0x14], eax
cmp dword [ebp + 0xb8], 0x10
jb 0x5157bc6
mov ecx, dword [ebp + 0xa4]
mov dword [ebp - 0x20], ecx
jmp 0x5157bcf
lea edx, [ebp + 0xa4]
mov dword [ebp - 0x20], edx
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x20]
push edx
push ebx
push esi
push str.__d___s__:_customer_backup_SML_file_PC:_s___s__accidentally_from_old_load__we_need_to_verify_it_before_we_restore_it
push eax
push edi
call fcn.051ae2d0
add esp, 0x1c
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x64]
call fcn.051ae2c0
cmp dword [ebp + 0xd4], 0x10
mov eax, dword [ebp + 0xc0]
jae 0x5157c17
lea eax, [ebp + 0xc0]
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x38], esp
push eax
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [ebp - 4], 0x17
cmp dword [ebp + 0xb8], 0x10
mov eax, dword [ebp + 0xa4]
jae 0x5157c3f
lea eax, [ebp + 0xa4]
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x14], esp
push eax
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [ebp - 4], 0x18
push esi
mov byte [ebp - 4], 0x15
call fcn.05156450
add esp, 0x3c
mov edi, eax
mov dword [ebp - 0x4c], edi
test edi, edi
je 0x5157cf7
push str._ERROR:
push 0xff
push 0xd41
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0xc4]
call fcn.051ae270
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0x19
cmp dword [ebp + 0xb8], 0x10
jb 0x5157ca6
mov eax, dword [ebp + 0xa4]
mov dword [ebp - 0x14], eax
jmp 0x5157caf
lea ecx, [ebp + 0xa4]
mov dword [ebp - 0x14], ecx
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push edi
mov edx, dword [ebp - 0x14]
push edx
push ebx
push esi
push str.__d___s__:_VerifyTempSMLFile__s__fail__ret_code__d_
push eax
mov eax, dword [ebp - 0x38]
push eax
call fcn.051ae2d0
add esp, 0x1c
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0xc4]
call fcn.051ae2c0
mov dword [ebp - 0x1c], 0x46
push 0x46
push esi
call fcn.051953e0
add esp, 8
push 0x1388
push esi
call fcn.051546f0
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x15], 1
test eax, eax
je 0x515809a
push str._ERROR:
push 0xff
push 0xd4b
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x9c]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x1a
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push ebx
push esi
push str.__d___s:_Disable_Path_Restriction_fail_
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x9c]
jmp 0x5158083
push 0x52c722a
lea ecx, [ebp + 0x54]
push ecx
call edi
add esp, 8
test al, al
je 0x5157e9d
cmp dword [ebp + 0x6c], 0x10
mov eax, dword [ebp + 0x58]
jae 0x5157d86
lea eax, [ebp + 0x58]
mov edx, dword [ebp + 0x68]
push edx
push 0
push eax
lea ecx, [ebp + 0x38]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::find_char_const___unsigned_int__unsigned_int_const]
test eax, eax
jl 0x515809a
push 0x52c722a
push 1
push 0xd57
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp + 0x8c]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x1b
cmp dword [ebp + 0xd4], 0x10
jb 0x5157dd4
mov eax, dword [ebp + 0xc0]
mov dword [ebp - 0x14], eax
jmp 0x5157ddd
lea ecx, [ebp + 0xc0]
mov dword [ebp - 0x14], ecx
cmp dword [ebp + 0xb8], 0x10
jb 0x5157df1
mov edx, dword [ebp + 0xa4]
mov dword [ebp - 0x20], edx
jmp 0x5157dfa
lea eax, [ebp + 0xa4]
mov dword [ebp - 0x20], eax
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov ecx, dword [ebp - 0x14]
push ecx
mov edx, dword [ebp - 0x20]
push edx
push ebx
push esi
push str.__d___s__:_customer_backup_IMEI_file_PC:_s___s__accidentally_from_old_load__we_need_to_verify_it_before_we_restore_it
push eax
push edi
call fcn.051ae2d0
add esp, 0x1c
mov byte [ebp - 4], 0x15
lea ecx, [ebp + 0x8c]
call fcn.051ae2c0
push 0x1388
push esi
call fcn.051546f0
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x15], 1
test eax, eax
je 0x515809a
push str._ERROR:
push 0xff
push 0xd5e
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0xfc]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x1c
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push ebx
push esi
push str.__d___s:_Disable_Path_Restriction_fail_
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0xfc]
jmp 0x5158083
lea ecx, [ebp - 0x2c]
call fcn.05150960
cmp byte [eax + 0x60], 2
jne 0x5158011
mov edi, 0x10
cmp dword [ebp + 0xd4], edi
mov eax, dword [ebp + 0xc0]
jae 0x5157ec8
lea eax, [ebp + 0xc0]
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x38], esp
push eax
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [ebp - 4], 0x1d
cmp dword [ebp + 0xb8], edi
mov eax, dword [ebp + 0xa4]
jae 0x5157eef
lea eax, [ebp + 0xa4]
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x14], esp
push eax
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [ebp - 4], 0x1e
push esi
mov byte [ebp - 4], 0x15
call fcn.05156450
add esp, 0x3c
mov edi, eax
mov dword [ebp - 0x4c], edi
test edi, edi
je 0x5157fa7
push str._ERROR:
push 0xff
push 0xd6e
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x124]
call fcn.051ae270
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0x1f
cmp dword [ebp + 0xb8], 0x10
jb 0x5157f56
mov eax, dword [ebp + 0xa4]
mov dword [ebp - 0x14], eax
jmp 0x5157f5f
lea ecx, [ebp + 0xa4]
mov dword [ebp - 0x14], ecx
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push edi
mov edx, dword [ebp - 0x14]
push edx
push ebx
push esi
push str.__d___s__:_VerifyTempSMLFile__s__fail__ret_code__d_
push eax
mov eax, dword [ebp - 0x38]
push eax
call fcn.051ae2d0
add esp, 0x1c
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x124]
call fcn.051ae2c0
mov dword [ebp - 0x1c], 0x46
push 0x46
push esi
call fcn.051953e0
add esp, 8
push 0x1388
push esi
call fcn.051546f0
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x15], 1
test eax, eax
je 0x515809a
push str._ERROR:
push 0xff
push 0xd79
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x14c]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x20
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push ebx
push esi
push str.__d___s:_Disable_Path_Restriction_fail_
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x14c]
jmp 0x5158083
lea ecx, [ebp - 0x2c]
call fcn.05150960
cmp byte [eax + 0x60], 1
jne 0x515809a
push 0x1388
push esi
call fcn.051546f0
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x15], 1
test eax, eax
je 0x515809a
push str._ERROR:
push 0xff
push 0xd86
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x174]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x21
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push ebx
push esi
push str.__d___s:_Disable_Path_Restriction_fail_
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x174]
call fcn.051ae2c0
push 1
push esi
mov dword [ebp - 0x1c], 1
call fcn.051953e0
add esp, 8
push 0x52c722a
lea ecx, [ebp - 0x2c]
call fcn.05150960
add eax, 0x84
push eax
call dword [sym.imp.MSVCP90.dll_bool___cdecl_std::operator__char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
add esp, 8
test al, al
je 0x5158261
push 0x52c722a
push 1
push 0xd90
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x19c]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x22
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push str._DEBUG__Call_ConvertCallback
push eax
push edi
call fcn.051ae2d0
add esp, 0xc
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x19c]
call fcn.051ae2c0
lea ecx, [ebp - 0x2c]
call fcn.05150960
lea edi, [eax + 0xa0]
mov ebx, dword [ebp - 0x48]
push ebx
lea ecx, [ebp - 0x2c]
call fcn.05150960
add eax, 0x84
push eax
lea ecx, [ebp + 0xa0]
push ecx
push esi
mov edx, dword [edi]
call edx
mov edi, eax
mov dword [ebp - 0x4c], edi
lea ecx, [ebp - 0x2c]
call fcn.05150960
cmp dword [eax + 0x80], 3
jne 0x515820e
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
cmp byte [eax + 0xd51a], 0
jne 0x515820e
lea ecx, [ebp - 0x2c]
call fcn.05150960
cmp byte [eax + 0x60], 1
je 0x5158186
lea ecx, [ebp - 0x2c]
call fcn.05150960
cmp byte [eax + 0x60], 2
jne 0x5158198
push 0x1388
push esi
call fcn.051546f0
mov dword [ebp - 0x1c], eax
mov byte [ebp - 0x15], 1
lea ecx, [ebp - 0x2c]
call fcn.05150960
add eax, 0x84
push eax
lea ecx, [ebp + 0x1c]
call dword [sym.imp.MSVCP90.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 byte [ebp - 4], 0x23
mov eax, dword [sym.imp.MSVCP90.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov eax, dword [eax]
push 1
push eax
push 0x529230c
lea ecx, [ebp + 0x1c]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::rfind_char_const___unsigned_int__unsigned_int_const]
push 0x5299028
push 1
add eax, 5
push eax
lea ecx, [ebp + 0x1c]
call dword [sym.imp.MSVCP90.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__::replace_unsigned_int__unsigned_int__char_const__]
lea ecx, [ebp - 0x2c]
call fcn.05150960
push ebx
lea ecx, [ebp + 0x1c]
push ecx
lea edx, [ebp + 0xa0]
push edx
push esi
mov eax, dword [eax + 0xa0]
call eax
mov edi, eax
mov dword [ebp - 0x4c], edi
mov byte [ebp - 4], 0x15
lea ecx, [ebp + 0x1c]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
push 0x52c722a
push 1
push 0xd9e
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x160]
call fcn.051ae270
mov ebx, eax
mov byte [ebp - 4], 0x24
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push str._DEBUG__Call_ConvertCallback_done
push eax
push ebx
call fcn.051ae2d0
add esp, 0xc
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x160]
call fcn.051ae2c0
mov ebx, dword [ebp - 0x68]
jmp 0x51582ab
push 0
mov ecx, dword [ebp - 0x48]
push ecx
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x38], esp
lea edx, [ebp + 0xbc]
push edx
call dword [sym.imp.MSVCP90.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 byte [ebp - 4], 0x25
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x14], esp
lea eax, [ebp + 0xa0]
push eax
call dword [sym.imp.MSVCP90.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 byte [ebp - 4], 0x26
push esi
mov byte [ebp - 4], 0x15
call fcn.0514e110
add esp, 0x44
mov edi, eax
mov dword [ebp - 0x4c], edi
test edi, edi
je 0x515835f
push str._ERROR:
push 0xff
push 0xda6
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x110]
call fcn.051ae270
mov dword [ebp - 0x38], eax
mov byte [ebp - 4], 0x27
cmp dword [ebp + 0xd4], 0x10
jb 0x51582ed
mov ecx, dword [ebp + 0xc0]
mov dword [ebp - 0x14], ecx
jmp 0x51582f6
lea edx, [ebp + 0xc0]
mov dword [ebp - 0x14], edx
cmp dword [ebp + 0xb8], 0x10
jb 0x515830a
mov eax, dword [ebp + 0xa4]
mov dword [ebp - 0x20], eax
jmp 0x5158313
lea ecx, [ebp + 0xa4]
mov dword [ebp - 0x20], ecx
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push edi
mov edx, dword [ebp - 0x14]
push edx
mov ecx, dword [ebp - 0x20]
push ecx
push ebx
push esi
push str.__d___s__:_UploadFileToTargetNoProgress___s_to__s__fail__ret_code__d_
push eax
mov edx, dword [ebp - 0x38]
push edx
call fcn.051ae2d0
add esp, 0x20
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x110]
call fcn.051ae2c0
mov dword [ebp - 0x1c], 0x48
push 0x48
push esi
call fcn.051953e0
add esp, 8
cmp byte [ebp + 0x4e8], 0
je 0x51583e5
cmp byte [ebp - 0x15], 0
je 0x51583e5
push 0x1388
push esi
call fcn.051546d0
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x51583e5
push str._ERROR:
push 0xff
push 0xdb1
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x138]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x28
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
push ebx
push esi
push str.__d___s:_Enable_Path_Restriction_fail_
push eax
push edi
call fcn.051ae2d0
add esp, 0x14
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x138]
call fcn.051ae2c0
mov dword [ebp - 0x1c], 1
push 1
push esi
call fcn.051953e0
add esp, 8
inc dword [ebp - 0x24]
push 0x400
push 0
lea eax, [ebp + 0xd8]
push eax
call sub.MSVCR90.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x2c]
call fcn.05150960
add eax, 0x24
cmp dword [eax + 0x18], 0x10
jb 0x5158414
mov eax, dword [eax + 4]
jmp 0x5158417
add eax, 4
push 0x529080c
push eax
push 0x529080c
push 1
push str._d_s_s_s
lea ecx, [ebp + 0xd8]
push ecx
call dword [sym.imp.MSVCR90.dll_sprintf]
mov edi, dword [ebp - 0x40]
push edi
lea edx, [ebp + 0xd8]
push edx
call dword [sym.imp.MSVCR90.dll_fputs]
push edi
call dword [sym.imp.MSVCR90.dll_fflush]
push 0x400
push 0
lea eax, [ebp + 0xd8]
push eax
call sub.MSVCR90.dll_memset
add esp, 0x30
lea ecx, [ebp - 0x2c]
call fcn.05150960
add eax, 0x44
cmp dword [eax + 0x18], 0x10
jb 0x515847a
mov eax, dword [eax + 4]
jmp 0x515847d
add eax, 4
cmp dword [ebp + 0xd4], 0x10
mov edi, dword [ebp + 0xc0]
jae 0x5158492
lea edi, [ebp + 0xc0]
push 0x529080c
push eax
push 0x529080c
lea ecx, [ebp - 0x2c]
call fcn.05150960
movsx ecx, byte [eax + 0x60]
push ecx
push 0x529080c
lea ecx, [ebp - 0x2c]
call fcn.05150960
mov edx, dword [eax + 0x1c]
push edx
push 0x529080c
push edi
push str._s_s_d_s_d_s_s_s_n
lea eax, [ebp + 0xd8]
push eax
call dword [sym.imp.MSVCR90.dll_sprintf]
mov edi, dword [ebp - 0x40]
push edi
lea ecx, [ebp + 0xd8]
push ecx
call dword [sym.imp.MSVCR90.dll_fputs]
push edi
call dword [sym.imp.MSVCR90.dll_fflush]
add esp, 0x34
push 0x52c722a
push 1
push 0xdc3
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0xe8]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x29
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x24]
push edx
mov ecx, dword [ebp + 0x4f0]
push ecx
push ebx
push esi
push str.__d___s:_call_the_progress_callback_in_restore_phase___d___d_
push eax
push edi
call fcn.051ae2d0
add esp, 0x1c
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0xe8]
call fcn.051ae2c0
mov edx, dword [ebp - 0x44]
mov eax, dword [edx + 8]
test eax, eax
je 0x5158566
mov ecx, edx
mov edx, dword [ecx + 0xc]
push edx
mov ecx, dword [ebp - 0x24]
push ecx
mov edx, dword [ebp + 0x4f0]
push edx
call eax
lea ecx, [ebp - 0x2c]
call fcn.05150960
cmp dword [eax + 0x80], 3
jne 0x515875a
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
cmp byte [eax + 0xd51a], 0
jne 0x515875a
inc dword [ebp - 0x24]
push 0x400
push 0
lea eax, [ebp + 0xd8]
push eax
call sub.MSVCR90.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x2c]
call fcn.05150960
add eax, 0x24
cmp dword [eax + 0x18], 0x10
jb 0x51585c2
mov eax, dword [eax + 4]
jmp 0x51585c5
add eax, 4
push 0x529080c
push eax
push 0x529080c
push 1
push str._d_s_s_s
lea ecx, [ebp + 0xd8]
push ecx
call dword [sym.imp.MSVCR90.dll_sprintf]
mov edi, dword [ebp - 0x40]
push edi
lea edx, [ebp + 0xd8]
push edx
call dword [sym.imp.MSVCR90.dll_fputs]
push edi
call dword [sym.imp.MSVCR90.dll_fflush]
push 0x400
push 0
lea eax, [ebp + 0xd8]
push eax
call sub.MSVCR90.dll_memset
add esp, 0x30
lea ecx, [ebp + 0xbc]
push ecx
lea ecx, [ebp]
call dword [sym.imp.MSVCP90.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 byte [ebp - 4], 0x2a
mov edx, dword [sym.imp.MSVCP90.dll_unsigned_int_const_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::npos]
mov eax, dword [edx]
push 1
push eax
push 0x529230c
lea ecx, [ebp]
call dword [sym.imp.MSVCP90.dll_public:_unsigned_int___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::rfind_char_const___unsigned_int__unsigned_int_const]
push 0x5299028
push 1
add eax, 5
push eax
lea ecx, [ebp]
call dword [sym.imp.MSVCP90.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__::replace_unsigned_int__unsigned_int__char_const__]
lea ecx, [ebp - 0x2c]
call fcn.05150960
add eax, 0x44
cmp dword [eax + 0x18], 0x10
jb 0x5158669
mov eax, dword [eax + 4]
jmp 0x515866c
add eax, 4
cmp dword [ebp + 0x18], 0x10
mov edi, dword [ebp + 4]
jae 0x5158678
lea edi, [ebp + 4]
push 0x529080c
push eax
push 0x529080c
lea ecx, [ebp - 0x2c]
call fcn.05150960
movsx eax, byte [eax + 0x60]
push eax
push 0x529080c
lea ecx, [ebp - 0x2c]
call fcn.05150960
mov ecx, dword [eax + 0x1c]
push ecx
push 0x529080c
push edi
push str._s_s_d_s_d_s_s_s_n
lea edx, [ebp + 0xd8]
push edx
call dword [sym.imp.MSVCR90.dll_sprintf]
mov edi, dword [ebp - 0x40]
push edi
lea eax, [ebp + 0xd8]
push eax
call dword [sym.imp.MSVCR90.dll_fputs]
push edi
call dword [sym.imp.MSVCR90.dll_fflush]
add esp, 0x34
push 0x52c722a
push 1
push 0xddb
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0x188]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x2b
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov ecx, dword [ebp - 0x24]
push ecx
mov edx, dword [ebp + 0x4f0]
push edx
push ebx
push esi
push str.__d___s:_call_the_progress_callback_in_restore_phase___d___d_
push eax
push edi
call fcn.051ae2d0
add esp, 0x1c
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x188]
call fcn.051ae2c0
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 8]
test eax, eax
je 0x515874d
mov ecx, dword [ebp - 0x44]
mov edx, dword [ecx + 0xc]
push edx
mov ecx, dword [ebp - 0x24]
push ecx
mov edx, dword [ebp + 0x4f0]
push edx
call eax
mov byte [ebp - 4], 0x15
lea ecx, [ebp]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, dword [ebp - 0x48]
push eax
push esi
call fcn.05194b30
add esp, 8
test al, al
je 0x51587d4
mov dword [ebp - 0x1c], 0x3b
push str._ERROR:
push 0xff
push 0xde6
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0xb0]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x2c
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov ecx, dword [ebp - 0x24]
push ecx
push ebx
push esi
push str.__d___s__:_already_restore__d_files__but_user_ask_to_stop_the_procedure_
push eax
push edi
call fcn.051ae2d0
add esp, 0x18
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0xb0]
call fcn.051ae2c0
push 0x3b
push esi
call fcn.051953e0
add esp, 8
mov byte [ebp - 4], 0x14
lea ecx, [ebp + 0x38]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0x13
lea ecx, [ebp + 0xbc]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [ebp - 4], 0xc
lea ecx, [ebp + 0xa0]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov edi, 0x10
push 0
lea edx, [ebp - 0x78]
push edx
lea ecx, [ebp - 0x2c]
call fcn.051509f0
jmp 0x5157a14
mov byte [ebp - 4], 0xb
lea ecx, [ebp + 0x54]
call dword [sym.imp.MSVCP90.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 + 0x70]
call dword [sym.imp.MSVCP90.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
push 0x400
push 0
lea eax, [ebp + 0xd8]
push eax
call sub.MSVCR90.dll_memset
mov ecx, dword [ebp - 0x24]
push ecx
push 0x52987cc
lea edx, [ebp + 0xd8]
push edx
call dword [sym.imp.MSVCR90.dll_sprintf]
mov edi, dword [ebp - 0x40]
push edi
lea eax, [ebp + 0xd8]
push eax
call dword [sym.imp.MSVCR90.dll_fputs]
push edi
call dword [sym.imp.MSVCR90.dll_fflush]
add esp, 0x24
test edi, edi
je 0x5158885
push edi
call dword [sym.imp.MSVCR90.dll_fclose]
add esp, 4
mov dword [ebp - 0x40], 0
push 0x52c722a
push 1
push 0xdfd
push str..FunctionPlatformMETA_misc.cpp
lea ecx, [ebp - 0xb0]
call fcn.051ae270
mov edi, eax
mov byte [ebp - 4], 0x2d
push esi
mov ecx, 0x53f4cc8
call fcn.05065960
mov eax, dword [eax + 8]
mov ecx, dword [ebp + 0x4f0]
push ecx
mov edx, dword [ebp - 0x24]
push edx
push ebx
push esi
push str.__d___s:_Restore__d_Files_succcessfully___Goal:_d_
push eax
push edi
call fcn.051ae2d0
add esp, 0x1c
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xb0]
call fcn.051ae2c0
push 0x527300c
push 0x1388
push esi
call sym.META_DLL.dll_META_QueryIfFunctionSupportedByTarget_r
test eax, eax
jne 0x5158911
lea eax, [ebp - 0x38]
push eax
push 0
push 0x1388
push esi
call sym.META_DLL.dll_META_MISC_EX_BackupCalibrationToStorage_r
jmp 0x51589ad
xor eax, eax
jmp 0x51589ad
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x4d8]
xor ecx, ebp
call fcn.0520b902
add ebp, 0x4dc
mov esp, ebp
pop ebp
ret 0x1c