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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x576a88
mov eax, dword fs:[0]
push eax
sub esp, 0x2ac
mov eax, dword [0x640040]
xor eax, ebp
mov dword [ebp - 0x14], 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, ecx
mov dword [ebp - 0x2ac], eax
mov dword [ebp - 0x27c], eax
mov esi, dword [ebp + 8]
mov dword [ebp - 0x28c], esi
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x278], eax
mov edi, dword [ebp + 0x14]
mov dword [ebp - 0x2a8], edi
mov dword [ebp - 0x2b4], edi
mov dword [ebp - 0x298], edi
test edi, edi
je 0x4d5b02
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d5b02
cmp dword [edi + 0x12f0], 0
jne 0x4d1fee
call fcn.00506700
test al, al
jne 0x4d1fee
push str.Device_Cloning_disabled
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
mov eax, 0x80070005
jmp 0x4d5b29
cmp dword [ebp + 0x20], 3
jne 0x4d2036
cmp byte [ebp + 0x10], 0
je 0x4d2036
push str.Invalid_Clone_To_Device_option___cannot_only_clone_tag_comments_for_an_SPE_file
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push 0x3f9
push str.c:DevjenkinsworkspaceiTools_for_IDMDeployer_V9.87_servermodbusClone.cpp
push 0x587798
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec040
add esp, 0x1c
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0xa0]
call eax
sub eax, 2
je 0x4d5ab7
cmp dword [edi + 0x1360], 0
jne 0x4d20b1
lea eax, [ebp - 0x268]
push eax
lea ecx, [edi + 0x1a8]
call fcn.00510bb0
mov dword [ebp - 4], 0
push dword [eax]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Device__s__type__s__does_not_support_cloning
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x14
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x268]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
jmp 0x4d5b24
cmp dword [ebp + 0x20], 3
jne 0x4d20e2
cmp dword [edi + 0x12f0], 0
je 0x4d20e2
push str.Cloning_of_comments_only_is_not_supported_for_simulation_devices
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
jmp 0x4d5b24
mov ecx, edi
call fcn.0045c320
test al, al
je 0x4d211e
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Cannot_clone_to_device__s___communications_has_failed
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.Please_ensure_that_communications_is_correctly_established_with_device__then_try_again
jmp 0x4d5ae3
cmp byte [edi + 0xa8], 0
je 0x4d2198
cmp byte [edi + 0xa9], 0
je 0x4d2198
cmp byte [edi + 0xaa], 0
je 0x4d2198
cmp byte [edi + 0x9c], 0
je 0x4d2154
cmp byte [edi + 0x9d], 0
je 0x4d2154
cmp byte [edi + 0x9e], 0
jne 0x4d2198
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Warning___restricted_communications_channel_for_device___s____some_features_may_not_work
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.For_full_functionality__try_connecting_directly_to_the_device_or_contact_Eurotherm_iTools_support.
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x1c
push 0
push 0
push 2
push esi
mov ecx, edi
call fcn.00474f40
test al, al
je 0x4d5afb
cmp byte [0x641ca5], 0
jne 0x4d2369
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d21e1
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
cmp byte [eax + 0x45], 0
jne 0x4d2369
cmp dword [edi + 0x12f0], 0
jne 0x4d2369
cmp dword [ebp + 0x20], 3
je 0x4d2369
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
push 1
lea eax, [edi + 0x12fc]
push eax
lea ecx, [ebp - 0x44]
call fcn.004f6560
mov dword [ebp - 4], 1
mov dword [ebp - 0x26c], 0xffffffff
mov eax, dword [edi + 0x228]
test eax, eax
je 0x4d224a
mov eax, dword [eax + 0xc]
test eax, eax
je 0x4d224a
movzx eax, word [eax + 0x3a]
mov ecx, 0x7a
cmp eax, 0xffff
cmove eax, ecx
mov dword [ebp - 0x26c], eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov esi, eax
mov edx, dword [edi]
mov ecx, edi
mov edx, dword [edx + 0x9c]
call edx
mov edi, eax
push 0
push 1
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x274], esp
push 0x587818
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
mov byte [ebp - 4], 2
push 0
push 0
push 0
push 0
push dword [ebp - 0x26c]
push 0
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x68]
call eax
push eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x68]
call eax
push eax
mov edi, dword [ebp - 0x2a8]
movzx eax, byte [edi + 0x258]
push eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
push eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x78]
call eax
mov byte [ebp - 4], 1
mov ecx, eax
call fcn.004a0070
test al, al
jne 0x4d235a
push str.Cannot_proceed_with_clone.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Loaded_address_space_for_device__s_does_not_match_actual_device.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.If_you_need_to_clone_this_device__please_reload_the_device_by_performing_a_scan.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x1c
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x44]
call fcn.004f6620
jmp 0x4d5b24
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x44]
call fcn.004f6620
mov dword [ebp - 0x30], 0
xorps xmm0, xmm0
movlpd qword [ebp - 0x4c], xmm0
push 1
mov eax, dword [ebp - 0x2ac]
add eax, 8
push eax
lea ecx, [ebp - 0x4c]
call fcn.004f6560
mov dword [ebp - 4], 3
mov eax, dword [ebp - 0x298]
mov eax, dword [eax]
mov eax, dword [eax + 0x80]
mov ecx, edi
call eax
mov esi, eax
mov ecx, dword [0x641a88]
add ecx, 0x32c
cmp dword [ebp + 0x20], 3
mov edx, str.Preparing_to_load_tag_comments_to_device__s
je 0x4d23c3
mov edx, str.Preparing_to_clone_device__s
push esi
push edx
push 0x3ef
push ecx
call fcn.004ec2c0
add esp, 0x10
mov byte [ebp - 0x285], 0
mov esi, dword [ebp - 0x28c]
push esi
mov ecx, edi
call fcn.00477ac0
cmp dword [edi + 0x12f0], 0
jne 0x4d2557
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x74]
call eax
push dword [eax + 0x13ac]
mov ecx, edi
call fcn.00473ec0
test al, al
je 0x4d2557
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Device__s_currently_in_QuickCode_mode___causing_device_to_exit_QuickCode_mode_first_before_attempting_to_clone_to_device
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x74]
call eax
push dword [eax + 0x13ac]
mov ecx, edi
call fcn.00473ff0
mov ecx, dword [ebp - 0x298]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0x80]
mov ecx, edi
test al, al
je 0x4d2668
call edx
push eax
push str.Device__s_instructed_to_exit_QuickCode_mode___waiting_to_reestablish_comms
push 0x3f0
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x74]
call eax
push dword [eax + 0x13ac]
movzx eax, word [edi + 0x1514]
push eax
push 5
mov ecx, edi
call fcn.0045d2e0
mov ecx, dword [ebp - 0x298]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0x80]
mov ecx, edi
test al, al
je 0x4d262f
call edx
push eax
push str.Comms_reestablished_with__s___requesting_device_goes_into_Config_Mode
push 0x3f0
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
push 0
push 0
push 1
push dword [edi + 0x13ac]
push 0
push 2
push esi
mov ecx, edi
call fcn.00472c20
mov ecx, dword [ebp - 0x298]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0x80]
mov ecx, edi
cmp eax, 2
jne 0x4d25d2
call edx
push eax
push str.Device__s_successfully_taken_out_of_QuickCode_mode_and_put_back_into_Config_Mode___waiting_for_resynchronisation_to_complete
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
push edi
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x78]
call eax
mov ecx, eax
call fcn.004a56e0
mov byte [ebp - 0x285], 1
push 0xfa0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov byte [ebp - 0x286], 0
cmp dword [edi + 0x13ac], 0
jne 0x4d2679
push 1
push 0
mov ecx, edi
call fcn.00469f50
test ax, ax
jne 0x4d2672
push dword [edi + 0x13b8]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Unable_to_load_IDM_for_cloning_device__s___IDM_ProgID_was__s
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x14
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call fcn.004f6620
mov eax, 0x80004005
jmp 0x4d5b29
call edx
push eax
push str.Device__s_successfully_taken_out_of_QuickCode___however_unable_to_put_back_into_Config_Mode.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.Please_try_performing_the_clone_again.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x1c
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call fcn.004f6620
mov eax, 0x80004005
jmp 0x4d5b29
call edx
push eax
push str.Device__s_appears_offline_after_requesting_it_to_exit_QuickCode_mode.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call fcn.004f6620
mov eax, 0x80004005
jmp 0x4d5b29
call edx
push eax
push str.Request_to_device__s_to_exit_QuickCode_mode_unsuccessful.
jmp 0x4d2637
mov byte [ebp - 0x286], 1
mov eax, dword [ebp - 0x2ac]
mov dword [eax + 0x44], esi
mov dword [ebp - 0x294], 0xffffffff
cmp dword [edi + 0x12f0], 0
jne 0x4d26cf
push 0
push 0
push esi
mov ecx, edi
call fcn.00472590
mov dword [ebp - 0x294], eax
cmp eax, 0xffffffff
jne 0x4d26cf
movzx eax, word [edi + 0x1514]
push eax
push 0x14
mov ecx, edi
call fcn.0045d100
push 0
push 0
push esi
mov ecx, edi
call fcn.00472590
mov dword [ebp - 0x294], eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x74]
call eax
push 1
push dword [eax + 0x13ac]
push esi
push dword [ebp - 0x294]
mov ecx, edi
call fcn.0046f070
xorps xmm0, xmm0
movlpd qword [ebp - 0x70], xmm0
push 1
push 0x641b88
lea ecx, [ebp - 0x70]
call fcn.004f71d0
mov byte [ebp - 4], 4
push edi
push esi
call fcn.00420440
mov dword [ebp - 0x2c], 0
push eax
lea ecx, [ebp - 0x2c]
call fcn.0041fec0
mov byte [ebp - 4], 5
xorps xmm0, xmm0
movlpd qword [ebp - 0x24], xmm0
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], edi
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x24]
call fcn.004cf650
lea ecx, [ebp - 0x28]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov byte [ebp - 4], 7
lea eax, [ebp - 0x28]
push eax
mov ecx, edi
call fcn.0045d4c0
cmp eax, 4
jbe 0x4d2789
push dword [ebp - 0x28]
push eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Cloning_to__s_may_take__u_minutes_or_longer:__s
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x18
cmp dword [edi + 0x12f0], 0
jne 0x4d2be7
cmp dword [ebp + 0x20], 3
je 0x4d2be7
mov esi, 0x14
mov eax, dword [ebp - 0x298]
movzx edx, word [eax + 0x240]
mov ecx, edx
mov dword [ebp - 0x2a0], 0x1f4
mov dword [ebp - 0x270], 0x500
test cx, cx
je 0x4d27f5
cmp cx, word [ebp - 0x2a0]
je 0x4d27f5
cmp dx, word [ebp - 0x270]
je 0x4d27f5
mov dword [ebp - 0x2b0], 0x2640
mov dword [ebp - 0x29c], 0xfff0
jmp 0x4d2872
mov edi, 0x2640
mov dword [ebp - 0x2b0], edi
cmp word [eax + 0x244], di
mov edi, eax
mov dword [ebp - 0x29c], 0xfff0
je 0x4d286d
mov ax, word [eax + 0x242]
and ax, word [ebp - 0x29c]
mov edi, 0x2640
cmp ax, di
mov edi, dword [ebp - 0x2a8]
je 0x4d286d
test cx, cx
je 0x4d284a
cmp cx, word [ebp - 0x2a0]
je 0x4d284a
cmp dx, word [ebp - 0x270]
jne 0x4d2872
mov ecx, 0x2740
mov eax, edi
cmp word [eax + 0x244], cx
je 0x4d286d
mov ax, word [eax + 0x242]
and ax, word [ebp - 0x29c]
cmp ax, cx
jne 0x4d2872
mov esi, 0xa
mov eax, dword [edi]
push 2
mov ecx, edi
mov eax, dword [eax + 0x14]
call eax
test al, al
je 0x4d2ac7
cmp byte [edi + 0x13f8], 0
je 0x4d2ac7
cmp byte [edi + 0x13c], 0
jne 0x4d2ac7
cmp byte [ebp + 0x24], 0
jne 0x4d2ac7
call fcn.00506700
test al, al
je 0x4d2ac7
mov eax, dword [ebp - 0x298]
mov eax, dword [eax + 0x22c]
test eax, eax
je 0x4d2ac7
cmp dword [eax + 0x1360], 0
je 0x4d2ac7
cmp byte [ebp - 0x285], 0
jne 0x4d2931
push str.Warning___loading_of_instrument_values_before_loading_of_clone_file_is_being_skipped.
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.Parameters_not_configured_in_the_clone_file_may_be_reset_back_to
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.instrument_default_values_or_changed_to_previously_cached_values.
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x24
xorps xmm0, xmm0
movq qword [ebp - 0x90], xmm0
mov dword [ebp - 0x88], 0
push 0xa
push 0xa
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x274]
push eax
lea ecx, [ebp - 0x90]
call fcn.0051b6c0
mov byte [ebp - 4], 8
push 0x64
push 0x14
push dword [ebp - 0x268]
mov ecx, dword [0x641a88]
lea ecx, [ecx + 0x32c]
call fcn.004ed650
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x90]
call fcn.0051ba50
mov eax, dword [ebp - 0x298]
movzx edx, word [eax + 0x240]
mov ecx, edx
test cx, cx
je 0x4d29bb
cmp cx, word [ebp - 0x2a0]
je 0x4d29bb
cmp dx, word [ebp - 0x270]
jne 0x4d2c0f
mov edi, 0x2640
cmp word [eax + 0x244], di
mov edi, eax
je 0x4d2a2b
mov ax, word [eax + 0x242]
and ax, word [ebp - 0x29c]
mov edi, 0x2640
cmp ax, di
mov edi, dword [ebp - 0x2a8]
je 0x4d2a2b
test cx, cx
je 0x4d2a04
cmp cx, word [ebp - 0x2a0]
je 0x4d2a04
cmp dx, word [ebp - 0x270]
jne 0x4d2c0f
mov eax, edi
mov ecx, 0x2740
cmp word [eax + 0x244], cx
je 0x4d2a2b
mov ax, word [eax + 0x242]
and ax, word [ebp - 0x29c]
cmp ax, cx
jne 0x4d2c0f
xorps xmm0, xmm0
movq qword [ebp - 0x84], xmm0
mov dword [ebp - 0x7c], 0
push 0x14
push esi
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x274]
push eax
lea ecx, [ebp - 0x84]
call fcn.0051b6c0
mov byte [ebp - 4], 9
push dword [ebp - 0x268]
push 0
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00470f70
test al, al
jne 0x4d2bd6
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Cloning_of_device__s_failed___unable_to_successfully_read_programmer_data_from_device
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
cmp byte [ebp - 0x286], 0
je 0x4d2b80
push 1
mov ecx, edi
call fcn.0046a050
jmp 0x4d2b87
push 1
push esi
push ecx
push 1
push ecx
mov ecx, edi
call fcn.0046de30
test al, al
jne 0x4d2991
push 1
push esi
push ecx
push 1
push ecx
mov ecx, edi
call fcn.0046de30
test al, al
jne 0x4d2991
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Cloning_of_device__s_failed___unable_to_successfully_read_data_from_device
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
cmp byte [ebp - 0x286], 0
je 0x4d2b39
push 1
mov ecx, edi
call fcn.0046a050
jmp 0x4d2b40
mov byte [edi + 0x13b0], 1
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.0041ff70
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.004f7290
jmp 0x4d264f
mov byte [edi + 0x13b0], 1
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x84]
call fcn.0051ba50
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.0041ff70
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.004f7290
jmp 0x4d264f
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x84]
call fcn.0051ba50
jmp 0x4d2c0f
mov dword [ebp - 0x2a0], 0x1f4
mov dword [ebp - 0x270], 0x500
mov dword [ebp - 0x2b0], 0x2640
mov dword [ebp - 0x29c], 0xfff0
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x74]
call eax
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx + 0x14]
call eax
test al, al
je 0x4d2c52
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x74]
call eax
mov esi, dword [eax + 0x13ac]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x74]
call eax
push eax
push esi
mov ecx, dword [0x641a88]
lea ecx, [ecx + 0x1f4]
call fcn.004fcb10
lea eax, [ebp - 0xd8]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
push 0x13
push 1
lea eax, [ebp - 0xd8]
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0xd0], eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x74]
call eax
lea ecx, [ebp - 0xd8]
push ecx
push 0xa3
push dword [eax + 0x13ac]
mov ecx, dword [0x641a88]
lea ecx, [ecx + 0x1f4]
call fcn.004fd1e0
lea eax, [ebp - 0xd8]
push eax
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
call esi
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x74]
call eax
push 0
lea ecx, [ebp - 0xd8]
push ecx
push 0x20
push dword [eax + 0x13ac]
mov ecx, dword [0x641a88]
lea ecx, [ecx + 0x1f4]
call fcn.004fceb0
test al, al
je 0x4d2d68
mov byte [ebp - 4], 0xa
wait
push 0x12
push 1
lea eax, [ebp - 0xd8]
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
test eax, eax
jne 0x4d2d11
mov ax, word [ebp - 0xd0]
mov word [edi + 0x1514], ax
wait
mov dword [ebp - 4], 7
jmp 0x4d2d68
lea eax, [ebp - 0xd8]
push eax
call esi
mov al, byte [edi + 0x13c4]
mov byte [ebp - 0x287], al
mov byte [edi + 0x13c4], 1
push 1
push dword [ebp + 0x18]
mov ecx, edi
call fcn.00470d50
mov dword [ebp - 0x26c], eax
push ecx
mov ecx, edi
call fcn.0047ac80
mov byte [ebp - 0x285], al
push dword [edi + 0x13ac]
lea eax, [ebp - 0x34]
push eax
mov ecx, edi
call fcn.0047b390
mov byte [ebp - 4], 0xc
mov byte [edi + 0x13b0], 0
cmp byte [ebp + 0x10], 0
je 0x4d2f6c
mov eax, dword [edi + 0x13ac]
mov dword [ebp - 0x268], eax
mov eax, dword [0x641a88]
lea esi, [eax + 0x1f4]
cmp byte [esi], 0
jne 0x4d2e08
push 0x9c5
push str.c:DevjenkinsworkspaceiTools_for_IDMDeployer_V9.87_servermodbusdcmhandler.cpp
push 0x587798
add eax, 0x32c
push eax
call fcn.004ec040
add esp, 0x10
jmp 0x4d2ec4
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
push 1
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x44]
call fcn.004f6560
mov byte [ebp - 4], 0xd
mov dword [esi + 0x2c], 0xd
push 0x587818
lea ecx, [esi + 0x8c]
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::operator]
push str.EurothermIDM.Serialize.2
lea ecx, [esi + 0x30]
call dword [sym.imp.mfc140u.dll_ATL::CSimpleStringT_wchar_t_1_::operator]
mov eax, dword [ebp - 0x268]
mov dword [esi + 0x34], eax
mov ecx, dword [ebp - 0x1c]
mov dword [esi + 0x90], ecx
mov dword [esi + 0xb4], 0x14
mov dword [esi + 0xb8], 0x1e
mov eax, dword [ecx]
push ecx
call dword [eax + 4]
mov ecx, esi
call fcn.004fb9d0
mov ecx, dword [ebp - 0x278]
mov ecx, dword [ecx]
mov ecx, dword [ecx + 8]
push dword [ebp - 0x1c]
test al, al
jne 0x4d2e9d
call ecx
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x44]
call fcn.004f6620
jmp 0x4d2ec4
call ecx
mov al, byte [esi + 0xae]
mov byte [ebp - 0x28e], al
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x44]
call fcn.004f6620
cmp byte [ebp - 0x28e], 0
jne 0x4d351b
lea ecx, [ebp - 0x24]
call fcn.004cf710
push str.Loading_of_profile_file_failed
mov eax, dword [0x641a88]
add eax, 0x32c
push 0x3ed
push eax
call fcn.004ec2c0
add esp, 0xc
mov byte [edi + 0x13b0], 1
mov ecx, edi
cmp byte [ebp - 0x286], 0
je 0x4d2f04
push 1
call fcn.0046a050
jmp 0x4d2f13
push edi
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
call eax
mov ecx, eax
call fcn.004a56e0
mov al, byte [ebp - 0x287]
mov byte [edi + 0x13c4], al
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x34]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.0041ff70
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.004f7290
jmp 0x4d264f
mov byte [ebp - 0x28d], 1
lea ecx, [edi + 0x1a8]
call fcn.00514b10
test al, al
jne 0x4d3289
push 0x38
call dword [sym.imp.mfc140u.dll_operator]
add esp, 4
mov esi, eax
mov dword [ebp - 0x274], esi
mov byte [ebp - 4], 0xe
test esi, esi
je 0x4d2fb9
push 0x38
push 0
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 8
mov ecx, esi
call fcn.004490d0
mov esi, eax
jmp 0x4d2fbb
xor esi, esi
mov byte [ebp - 4], 0xc
test esi, esi
je 0x4d3289
lea ecx, [ebp - 0x18]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x268]
push eax
call fcn.005062e0
mov byte [ebp - 4], 0x10
push str.tempclonefile.uic
push dword [eax]
push 0x58ddec
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__31]
add esp, 0x10
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x268]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
lea ecx, [ebp - 0x27c]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov byte [ebp - 4], 0x11
push ecx
lea eax, [ebp - 0x27c]
push eax
mov ecx, edi
call fcn.00457340
lea ecx, [ebp - 0x278]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x268]
push eax
call fcn.005062e0
mov byte [ebp - 4], 0x13
push dword [ebp - 0x27c]
push dword [eax]
push str._s_s.uic
lea eax, [ebp - 0x278]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__31]
add esp, 0x10
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x268]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov dword [ebp - 0x264], 0
push 2
push 0xc0000000
push ecx
mov ecx, esp
mov dword [ebp - 0x274], esp
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__30]
mov byte [ebp - 4], 0x14
mov eax, dword [esi]
push esi
mov byte [ebp - 4], 0x12
call dword [eax + 0x3c]
test eax, eax
jne 0x4d324f
mov eax, dword [esi]
lea ecx, [ebp - 0x264]
push ecx
push 0x587060
push esi
call dword [eax]
mov ecx, dword [ebp - 0x264]
test ecx, ecx
je 0x4d324f
mov eax, dword [ecx]
push ecx
call dword [eax + 4]
push dword [ebp - 0x264]
push ecx
mov ecx, esp
mov dword [ebp - 0x274], esp
lea eax, [ebp - 0x278]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__30]
mov byte [ebp - 4], 0x15
push dword [ebp - 0x1c]
mov byte [ebp - 4], 0x12
mov ecx, edi
call fcn.00458ad0
mov eax, dword [ebp - 0x264]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi]
push esi
call dword [eax + 8]
push 0x38
call dword [sym.imp.mfc140u.dll_operator]
add esp, 4
mov esi, eax
mov dword [ebp - 0x284], esi
mov byte [ebp - 4], 0x16
test esi, esi
je 0x4d314b
push 0x38
push 0
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 8
mov ecx, esi
call fcn.004490d0
mov esi, eax
jmp 0x4d314d
xor esi, esi
mov byte [ebp - 4], 0x12
test esi, esi
je 0x4d324f
push 3
push SysReAllocString
push ecx
mov ecx, esp
mov dword [ebp - 0x274], esp
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__30]
mov byte [ebp - 4], 0x17
mov eax, dword [esi]
push esi
mov byte [ebp - 4], 0x12
call dword [eax + 0x3c]
test eax, eax
jne 0x4d3249
mov eax, dword [esi]
lea ecx, [ebp - 0x264]
push ecx
push 0x587060
push esi
call dword [eax]
cmp dword [ebp - 0x264], 0
je 0x4d3249
mov eax, dword [0x641a88]
add eax, 0x32c
mov dword [ebp - 0x268], eax
cmp byte [eax + 0xa8], 1
je 0x4d31cd
mov ecx, eax
call fcn.004ee3f0
mov eax, dword [ebp - 0x268]
mov byte [eax + 0xa8], 1
mov eax, dword [ebp - 0x264]
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
push 0x1e
push 0x14
push dword [ebp - 0x26c]
push ecx
mov ecx, esp
mov dword [ebp - 0x274], esp
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__30]
mov byte [ebp - 4], 0x18
mov eax, dword [edi + 0x13ac]
push dword [ebp - 0x264]
push eax
mov ecx, dword [0x641a88]
lea ecx, [ecx + 0x1f4]
mov byte [ebp - 4], 0x12
call fcn.004fc660
mov byte [ebp - 0x28d], al
mov ecx, dword [ebp - 0x264]
mov edx, dword [ecx]
push ecx
call dword [edx + 8]
mov ecx, dword [0x641a88]
mov byte [ecx + 0x3d4], 0
xor byte [ebp - 0x28d], 1
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x278]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x27c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x18]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
cmp byte [ebp - 0x28d], 0
je 0x4d351b
mov esi, dword [0x641a88]
cmp byte [esi + 0x3d4], 1
je 0x4d32a3
lea ecx, [esi + 0x32c]
call fcn.004ee3f0
mov byte [esi + 0x3d4], 1
push 0x1e
push 0x14
push dword [ebp - 0x26c]
push ecx
mov ecx, esp
mov dword [ebp - 0x274], esp
lea eax, [ebp - 0x34]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__30]
mov byte [ebp - 4], 0x19
mov eax, dword [edi + 0x13ac]
mov esi, dword [ebp - 0x1c]
push esi
push eax
mov ecx, dword [0x641a88]
lea ecx, [ecx + 0x1f4]
mov byte [ebp - 4], 0xc
call fcn.004fc660
test al, al
jne 0x4d3312
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov eax, dword [0x641a88]
add eax, 0x32c
mov byte [eax + 0xa8], 0
push str.Load_of_Clone_File_Failed
jmp 0x4d2edb
mov eax, dword [0x641a88]
mov byte [eax + 0x3d4], 0
test esi, esi
je 0x4d351b
lea ecx, [ebp - 0x1c]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov byte [ebp - 4], 0x1a
push ecx
lea eax, [ebp - 0x1c]
push eax
mov ecx, edi
call fcn.00457340
lea ecx, [ebp - 0x18]
call dword [sym.imp.mfc140u.dll_Ordinal_296]
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x268]
push eax
call fcn.005062e0
mov byte [ebp - 4], 0x1c
push dword [ebp - 0x1c]
push dword [eax]
push str._s_s.uic
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__31]
add esp, 0x10
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x268]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
push ecx
mov ecx, esp
mov dword [ebp - 0x274], esp
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__30]
mov byte [ebp - 4], 0x1d
push esi
mov byte [ebp - 4], 0x1b
mov ecx, edi
call fcn.00457bb0
cmp byte [edi + 0x155c], 0
jne 0x4d3501
push dword [edi + 0x13ac]
mov ecx, edi
call fcn.0047b550
test al, al
mov eax, dword [0x641a88]
je 0x4d33e3
push str.Cannot_load_corrupted_Clone_File
push 0x3ed
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
jmp 0x4d341c
mov byte [edi + 0x155c], 1
push str.It_is_recommended_that_you_manually_verify_the_configuration_on_completion_of_the_load
push 0x3ee
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.to_confirm_that_it_contains_the_expected_configuration.
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x18
cmp byte [edi + 0x155c], 0
jne 0x4d3501
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x78]
call eax
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x80]
call eax
push eax
push str.Clone_to_device__s_aborted
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov byte [edi + 0x13b0], 1
mov ecx, edi
cmp byte [ebp - 0x286], 0
je 0x4d347f
push 1
call fcn.0046a050
jmp 0x4d348e
push edi
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
call eax
mov ecx, eax
call fcn.004a56e0
mov al, byte [ebp - 0x287]
mov byte [edi + 0x13c4], al
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x18]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x1c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x34]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.0041ff70
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.004f7290
jmp 0x4d264f
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x18]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x1c]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 0x1c], 1
xorps xmm0, xmm0
movups xmmword [ebp - 0x68], xmm0
movq qword [ebp - 0x58], xmm0
mov dword [ebp - 0x50], 0
push 0xa
lea ecx, [ebp - 0x68]
mov esi, dword [0x586bdc]
call esi
mov byte [ebp - 4], 0x1e
xorps xmm0, xmm0
movups xmmword [ebp - 0xf4], xmm0
movq qword [ebp - 0xe4], xmm0
mov dword [ebp - 0xdc], 0
push 0xa
lea ecx, [ebp - 0xf4]
call esi
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x68]
push eax
push dword [edi + 0x13ac]
call fcn.0046bee0
test al, al
jne 0x4d3595
lea eax, [ebp - 0x68]
push eax
mov ecx, dword [0x641a88]
add ecx, 0x32c
call fcn.004ee7a0
mov byte [ebp - 0x28e], 0
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
je 0x4d3687
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x78]
call eax
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x80]
call eax
push eax
push str.Clone_to_device__s_aborted
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov byte [edi + 0x13b0], 1
mov ecx, edi
cmp byte [ebp - 0x286], 0
je 0x4d3604
push 1
call fcn.0046a050
jmp 0x4d3613
push edi
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
call eax
mov ecx, eax
call fcn.004a56e0
mov al, byte [ebp - 0x287]
mov byte [edi + 0x13c4], al
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov byte [ebp - 4], 0x1e
mov esi, dword [sym.imp.mfc140u.dll_CStringList::CStringList]
lea ecx, [ebp - 0xf4]
call esi
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x68]
call esi
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x34]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.0041ff70
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.004f7290
jmp 0x4d264f
push 1
push ecx
mov ecx, esp
mov dword [ebp - 0x274], esp
push 0x587818
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
mov byte [ebp - 4], 0x20
mov eax, dword [edi + 0x13ac]
push eax
push dword [ebp - 0x28c]
mov byte [ebp - 4], 0x1f
mov ecx, edi
call fcn.0046c240
mov byte [ebp - 0x28d], 0
cmp dword [edi + 0x12f0], 0
jne 0x4d40ed
cmp dword [ebp + 0x20], 3
je 0x4d40ed
cmp word [edi + 0x136c], 0
jbe 0x4d3713
push dword [edi + 0x13ac]
mov ecx, edi
call fcn.0047b0b0
test al, al
je 0x4d37d5
push str.Linearization_table_data_will_be_automatically_cloned
push 0x3f0
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
mov esi, dword [sym.imp.mfc140u.dll_CStringList::AddTail]
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
jne 0x4d40ed
push 0
push 0
push 1
push dword [edi + 0x13ac]
push 0
push 2
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
lea ecx, [ebp - 0x24]
call fcn.004cf650
xorps xmm0, xmm0
movups xmmword [ebp - 0x118], xmm0
movq qword [ebp - 0x108], xmm0
mov dword [ebp - 0x100], 0
push 0xa
lea ecx, [ebp - 0x118]
call dword [0x586bdc]
mov byte [ebp - 4], 0x29
lea eax, [ebp - 0x118]
push eax
push 0x32
push 0x28
push 1
push dword [edi + 0x13ac]
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.0046b910
test eax, eax
jns 0x4d40d9
cmp dword [ebp - 0x10c], 1
jge 0x4d409c
push str.Unable_to_copy_Factory_Comms_memory_to_device
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
jmp 0x4d40d5
push dword [edi + 0x13ac]
mov ecx, edi
call fcn.0047adf0
test al, al
je 0x4d3fc9
mov esi, 1
mov eax, esi
cmp ax, word [edi + 0x136c]
ja 0x4d3713
nop
push dword [edi + 0x13ac]
push esi
push 0
push edi
push dword [ebp - 0x28c]
mov ecx, dword [0x641a88]
add ecx, 0x464
call fcn.004929b0
test al, al
jne 0x4d3836
inc esi
movzx eax, word [edi + 0x136c]
cmp esi, eax
jle 0x4d3800
jmp 0x4d3713
mov byte [ebp - 0x28d], 1
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x78]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
push eax
push ecx
lea ecx, [edi + 0x1a8]
call fcn.00513ed0
lea ecx, [edi + 0x1a8]
test al, al
jne 0x4d3931
call fcn.00513f90
movzx esi, ax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x78]
call eax
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x80]
call eax
push eax
push str.Unable_to_download_linearization_table_to_device____s_has_wrong_baud_rate_for_factory_comms
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x68]
call eax
push eax
push esi
push str.Required_baud_rate_is__d___current_baud_rate_is__d
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x14
mov al, byte [ebp - 0x285]
lea ecx, [ebp - 0x68]
mov esi, dword [sym.imp.mfc140u.dll_CStringList::AddTail]
cmp word [edi + 0x136c], 1
jbe 0x4d4008
test al, al
je 0x4d3fe6
push str.The_clone_file_is_currently_configured_to_use_custom_linearization_tables
call esi
lea ecx, [ebp - 0x68]
cmp byte [ebp - 0x28d], 0
je 0x4d3fdc
push str.The_cloned_instrument_will_not_have_its_custom_linearization_tables_setup
call esi
push str.YOU_MUST_MANUALLY_CHECK_THAT_THE_CORRECT_LINEARIZATION_TABLES_ARE_LOADED_INTO_THE_INSTRUMENT
lea ecx, [ebp - 0x68]
call esi
push str.AND_THAT_THE_CORRECT_RANGES_ARE_CONFIGURED_FOR_EACH_INPUT_USING_THESE_TABLES
jmp 0x4d405e
call fcn.00514150
test al, al
jne 0x4d39be
mov eax, dword [ebp - 0x298]
mov eax, dword [eax]
mov eax, dword [eax + 0x80]
mov ecx, edi
cmp word [edi + 0x136c], 1
jbe 0x4d3961
call eax
mov edx, str.Unable_to_download_linearization_tables_to_device____s_currently_does_not_support_this_function
jmp 0x4d396e
call eax
mov dword [ebp - 0x268], eax
mov edx, str.Unable_to_download_linearization_table_to_device____s_currently_does_not_support_this_function
mov ecx, dword [0x641a88]
add ecx, 0x32c
push eax
push edx
push 0x3ed
push ecx
call fcn.004ec2c0
add esp, 0x10
lea ecx, [edi + 0x1a8]
call fcn.00514e40
test al, al
je 0x4d39b6
push str.Connection_via_the_devices_config_port_is_required
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
inc dword [ebp - 0x30]
jmp 0x4d38da
mov edx, dword [ebp - 0x298]
movzx ecx, word [edx + 0x240]
mov eax, ecx
test ax, ax
je 0x4d3cf6
cmp ax, word [ebp - 0x2a0]
je 0x4d3cf6
cmp cx, word [ebp - 0x270]
je 0x4d3cf6
mov esi, 0xff00
mov byte [ebp - 0x2a1], 1
movzx eax, word [edi + 0x136c]
inc eax
push eax
call dword [sym.imp.mfc140u.dll_operator_1]
add esp, 4
mov dword [ebp - 0x18], eax
test eax, eax
je 0x4d3a29
movzx ecx, word [edi + 0x136c]
inc ecx
push ecx
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x264], 0
nop dword [eax]
nop word [eax + eax]
mov edx, dword [ebp - 0x298]
movzx ecx, word [edx + 0x240]
mov eax, ecx
test ax, ax
je 0x4d3a6a
cmp ax, word [ebp - 0x2a0]
je 0x4d3a6a
cmp cx, word [ebp - 0x270]
jne 0x4d3ba8
movzx eax, word [edx + 0x244]
sub eax, 0x2500
je 0x4d3a9a
sub eax, 0x10
je 0x4d3a9a
sub eax, 1
je 0x4d3a9a
mov ax, word [edx + 0x242]
and ax, si
mov ecx, 0x2500
cmp ax, cx
jne 0x4d3ba8
mov dword [ebp - 0x268], 0x2ff6
mov eax, dword [edi]
push 0
lea ecx, [ebp - 0x268]
push ecx
mov ecx, edi
mov eax, dword [eax + 0x40]
call eax
mov esi, eax
test esi, esi
je 0x4d3ba8
push 0x148
push 0
lea eax, [ebp - 0x260]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x260]
call fcn.004b2ec0
mov byte [ebp - 4], 0x21
push esi
lea ecx, [ebp - 0x260]
call fcn.004b3840
lea eax, [ebp - 0x258]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, 0x12
mov word [ebp - 0x258], ax
xor eax, eax
mov word [ebp - 0x250], ax
xorps xmm0, xmm0
movups xmmword [ebp - 0xc8], xmm0
movq qword [ebp - 0xb8], xmm0
mov dword [ebp - 0xb0], eax
push 0xa
lea ecx, [ebp - 0xc8]
call dword [0x586ad0]
mov byte [ebp - 4], 0x22
mov dword [ebp - 0xc8], 0x58aff4
mov byte [ebp - 4], 0x23
mov dword [ebp - 0xc8], 0x58b008
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0xc8]
call dword [sym.imp.mfc140u.dll_Ordinal_2006]
push 0
sub esp, 8
push 0
push 0
lea eax, [ebp - 0xc8]
push eax
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.0045f3e0
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0xc8]
call dword [sym.imp.mfc140u.dll_CObList::CObList]
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x260]
call fcn.004b3600
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
push 1
lea eax, [edi + 0x12fc]
push eax
lea ecx, [ebp - 0x44]
call fcn.004f6560
mov byte [ebp - 4], 0x27
push 0x21
push 0x1e
push 1
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.0047b6c0
test al, al
je 0x4d3ec4
push 0
push 0
push 1
push dword [edi + 0x13ac]
push 0
push 2
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
lea ecx, [ebp - 0x24]
call fcn.004cf650
xorps xmm0, xmm0
movq qword [ebp - 0x90], xmm0
mov dword [ebp - 0x88], 0
push 0x28
push 0x21
lea eax, [ebp - 0x284]
push eax
lea eax, [ebp - 0x280]
push eax
lea ecx, [ebp - 0x90]
call fcn.0051b6c0
mov byte [ebp - 4], 0x28
mov byte [ebp - 0x2a2], 1
mov esi, 1
movzx eax, word [edi + 0x136c]
mov ecx, esi
cmp cx, ax
ja 0x4d3e97
mov ecx, eax
nop dword [eax + eax]
movzx eax, cx
push eax
push esi
push dword [ebp - 0x284]
mov ecx, dword [0x641a88]
lea ecx, [ecx + 0x32c]
call fcn.004ed650
mov ecx, dword [0x641a88]
cmp byte [ecx + 0x360], 0
jne 0x4d3e97
push dword [edi + 0x13ac]
push esi
push 0
push edi
push dword [ebp - 0x28c]
add ecx, 0x464
call fcn.004929b0
test al, al
je 0x4d3e34
cmp word [edi + 0x136c], 1
jbe 0x4d3d99
mov edx, dword [ebp - 0x264]
mov ecx, dword [0x641a88]
add ecx, 0x32c
push esi
mov eax, str.Downloading_linearization_table__d_data...
test edx, edx
mov edx, str.Re_downloading_linearization_table__d_data...
cmovg eax, edx
push eax
push 0x3ef
push ecx
call fcn.004ec2c0
add esp, 0x10
jmp 0x4d3dc6
movzx eax, word [edx + 0x244]
sub eax, 0x2500
je 0x4d3d2d
sub eax, 0x10
je 0x4d3d2d
sub eax, 1
je 0x4d3d2d
mov ax, word [edx + 0x242]
mov esi, 0xff00
and ax, si
mov ecx, 0x2500
cmp ax, cx
jne 0x4d39f5
jmp 0x4d3d32
mov esi, 0xff00
mov ax, word [edi + 0x246]
mov ecx, 0xfff
and ax, cx
mov ecx, 0x327
cmp ax, cx
ja 0x4d39f5
mov eax, dword [edx]
mov eax, dword [eax + 0x80]
mov ecx, edi
cmp word [edi + 0x136c], 1
jbe 0x4d3d6c
call eax
mov edx, str.Unable_to_download_linearization_tables_to_device____s_currently_does_not_support_this_function
jmp 0x4d3d73
call eax
mov edx, str.Unable_to_download_linearization_table_to_device____s_currently_does_not_support_this_function
mov ecx, dword [0x641a88]
add ecx, 0x32c
mov esi, eax
push esi
push edx
push 0x3ee
push ecx
call fcn.004ec2c0
add esp, 0x10
inc dword [ebp - 0x30]
jmp 0x4d3713
mov eax, dword [0x641a88]
add eax, 0x32c
cmp dword [ebp - 0x264], 0
jle 0x4d3db3
push str.Re_downloading_linearization_table_data...
jmp 0x4d3db8
push str.Downloading_linearization_table_data...
push 0x3ef
push eax
call fcn.004ec2c0
add esp, 0xc
push dword [edi + 0x13ac]
push esi
push 0
push edi
push dword [ebp - 0x28c]
mov ecx, dword [0x641a88]
lea ecx, [ecx + 0x464]
call fcn.00493800
test al, al
jne 0x4d3e7a
mov byte [ebp - 0x2a2], al
mov eax, dword [0x641a88]
add eax, 0x32c
cmp word [edi + 0x136c], 1
jbe 0x4d3e1f
push esi
push str.Failed_to_download_linearization_table__d_to_device
push 0x3ed
push eax
call fcn.004ec2c0
add esp, 0x10
jmp 0x4d3e85
push str.Failed_to_download_linearization_table_to_device
push 0x3ed
push eax
call fcn.004ec2c0
add esp, 0xc
jmp 0x4d3e85
cmp dword [ebp - 0x264], 0
jne 0x4d3e7a
mov eax, dword [0x641a88]
add eax, 0x32c
cmp word [edi + 0x136c], 1
jbe 0x4d3e67
push esi
push str.Nothing_to_download_for_linearization_table__d
push 0x3ef
push eax
call fcn.004ec2c0
add esp, 0x10
jmp 0x4d3e7a
push str.Nothing_to_download_for_linearization_table
push 0x3ef
push eax
call fcn.004ec2c0
add esp, 0xc
mov edx, dword [ebp - 0x18]
test edx, edx
je 0x4d3e85
mov byte [edx + esi], 1
inc esi
movzx eax, word [edi + 0x136c]
mov ecx, eax
cmp esi, eax
jle 0x4d3c60
push 0
push 0
push 2
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.0047b7d0
cmp byte [ebp - 0x2a2], 0
jne 0x4d3f09
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x90]
call fcn.0051ba50
jmp 0x4d3ee1
push str.Unable_to_download_linearization_table_to_device___failed_to_put_device_into_factory_comms_mode
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x44]
call fcn.004f6620
mov edx, dword [ebp - 0x264]
inc edx
mov dword [ebp - 0x264], edx
cmp edx, 3
jge 0x4d3f6e
mov esi, 0xff00
jmp 0x4d3a40
movzx edx, word [edi + 0x136c]
mov ecx, dword [0x641a88]
add ecx, 0x32c
mov eax, str.Linearization_table_downloaded
mov esi, str.Linearization_tables_downloaded
cmp edx, 1
cmova eax, esi
push eax
push 0x3ef
push ecx
call fcn.004ec2c0
add esp, 0xc
mov byte [ebp - 0x2a1], 0
lea ecx, [edi + 0x1a8]
call fcn.00514690
mov byte [ebp - 0x28e], al
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x90]
call fcn.0051ba50
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x44]
call fcn.004f6620
cmp dword [ebp - 0x18], 0
je 0x4d3fb7
mov edx, 1
movzx eax, word [edi + 0x136c]
mov ecx, edx
cmp cx, ax
ja 0x4d3fab
mov esi, eax
mov edi, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
nop
xor ecx, ecx
movzx eax, al
cmp byte [edi + edx], cl
cmovne ecx, eax
mov al, cl
inc edx
cmp edx, esi
jle 0x4d3f90
mov dword [ebp - 0x1c], eax
mov edi, dword [ebp - 0x2a8]
push dword [ebp - 0x18]
call dword [sym.imp.mfc140u.dll_operator_2]
add esp, 4
cmp byte [ebp - 0x2a1], 0
jne 0x4d38da
jmp 0x4d3713
mov al, byte [ebp - 0x285]
test al, al
je 0x4d3713
jmp 0x4d38e0
push str.However_the_clone_file_did_not_contain_any_custom_linearization_tables
jmp 0x4d391b
push str.The_cloned_instrument_will_not_have_its_custom_linearization_tables_setup
call esi
push str.If_the_clone_file_makes_use_of_the_custom_linearization_tables_
lea ecx, [ebp - 0x68]
call esi
push str.you_must_manually_check_that_the_correct_custom_linearization_tables_are_download
lea ecx, [ebp - 0x68]
call esi
push str.and_that_the_correct_ranges_are_configured_for_each_input_using_these_tables
jmp 0x4d405e
test al, al
je 0x4d403e
push str.The_clone_file_is_currently_configured_to_use_the_custom_linearization_table
call esi
lea ecx, [ebp - 0x68]
cmp byte [ebp - 0x28d], 0
je 0x4d4037
push str.The_cloned_instrument_will_not_have_its_custom_linearization_table_setup
call esi
push str.YOU_MUST_MANUALLY_CHECK_THAT_THE_CORRECT_LINEARIZATION_TABLE_IS_LOADED_INTO_THE_INSTRUMENT
lea ecx, [ebp - 0x68]
call esi
push str.AND_THAT_THE_CORRECT_RANGES_ARE_CONFIGURED_FOR_EACH_INPUT_USING_THAT_TABLE
jmp 0x4d405e
push str.However_the_clone_file_did_not_contain_a_custom_linearization_table
jmp 0x4d4024
push str.The_cloned_instrument_will_not_have_its_custom_linearization_table_setup
call esi
push str.If_the_clone_file_makes_use_of_the_custom_linearization_table_
lea ecx, [ebp - 0x68]
call esi
push str.you_must_manually_check_that_the_correct_custom_linearization_table_is_download
lea ecx, [ebp - 0x68]
call esi
push str.and_that_the_correct_ranges_are_configured_for_each_input_using_that_table
lea ecx, [ebp - 0x68]
call esi
cmp byte [ebp - 0x28e], 0
je 0x4d4094
push str.NOTE___PLEASE_POWER_CYCLE_THE_DEVICE_NOW
lea ecx, [ebp - 0x68]
call esi
push str.The_newly_downloaded_linearization_table_will_only_become_active
lea ecx, [ebp - 0x68]
call esi
push str.after_the_device_has_been_power_cycled.__Failure_to_do_so_can
lea ecx, [ebp - 0x68]
call esi
push str.cause_your_instrument_to_lose_its_configuration.
lea ecx, [ebp - 0x68]
call esi
inc dword [ebp - 0x30]
jmp 0x4d3719
lea ecx, [ebp - 0x68]
jle 0x4d40a8
push str.Factory_Comms_Memory_copying_unsuccessful_for_segments:
jmp 0x4d40ad
push str.Factory_Comms_Memory_copying_unsuccessful_for_segment:
call esi
mov esi, dword [ebp - 0x114]
test esi, esi
je 0x4d40d5
nop dword [eax]
mov eax, esi
mov esi, dword [esi]
add eax, 8
push eax
lea ecx, [ebp - 0x68]
call dword [sym.imp.mfc140u.dll_CStringList::AddTail_1]
test esi, esi
jne 0x4d40c0
mov byte [ebp - 0x1c], 0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x118]
mov esi, dword [sym.imp.mfc140u.dll_CStringList::CStringList]
call esi
jmp 0x4d40f3
mov esi, dword [sym.imp.mfc140u.dll_CStringList::CStringList]
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
je 0x4d4283
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x78]
call eax
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x80]
call eax
push eax
push str.Clone_to_device__s_aborted
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
lea ecx, [ebp - 0x24]
call fcn.004cf710
push 2
push ecx
mov ecx, esp
mov dword [ebp - 0x280], esp
push 0x587818
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
mov byte [ebp - 4], 0x2a
mov eax, dword [edi + 0x13ac]
push eax
push dword [ebp - 0x28c]
mov byte [ebp - 4], 0x1f
mov ecx, edi
call fcn.0046c240
test eax, eax
js 0x4d423a
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d41d5
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 3
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
jne 0x4d41c0
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
je 0x4d41d5
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
cmp byte [eax + 0x1af0], 0
jne 0x4d423a
push dword [edi + 0x13ac]
push 0
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472590
cmp eax, dword [ebp - 0x294]
je 0x4d423a
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
lea eax, [edi + 0x131c]
push eax
lea ecx, [ebp - 0x3c]
call fcn.004f77f0
mov byte [ebp - 4], 0x2b
push 0
push 1
push 1
push dword [edi + 0x13ac]
push 1
push dword [ebp - 0x294]
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x3c]
call fcn.004f7910
mov byte [edi + 0x13b0], 1
mov ecx, edi
cmp byte [ebp - 0x286], 0
je 0x4d4255
push 1
call fcn.0046a050
jmp 0x4d4264
push edi
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
call eax
mov ecx, eax
call fcn.004a56e0
mov al, byte [ebp - 0x287]
mov byte [edi + 0x13c4], al
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov byte [ebp - 4], 0x1e
jmp 0x4d3633
mov dword [ebp - 0x268], 0
cmp dword [edi + 0x12f0], 0
jne 0x4d52b1
cmp dword [ebp + 0x20], 3
je 0x4d52b1
push 0x78
call dword [sym.imp.mfc140u.dll_operator]
add esp, 4
mov esi, eax
mov dword [ebp - 0x274], esi
mov byte [ebp - 4], 0x2c
test esi, esi
je 0x4d42dd
push 0x78
push 0
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov ecx, esi
call fcn.004b9d60
mov esi, eax
mov dword [ebp - 0x264], eax
jmp 0x4d42e5
xor esi, esi
mov dword [ebp - 0x264], esi
mov byte [ebp - 4], 0x1f
mov dword [esi + 0x44], edi
push 0x32
push 0x32
mov ecx, dword [0x641a88]
lea eax, [ecx + 0x360]
push eax
push dword [ebp - 0x26c]
push esi
push dword [edi + 0x13ac]
add ecx, 0x1f4
call fcn.004fcbe0
test al, al
jne 0x4d448d
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Unable_to_load_clone_list_for_cloning_device__s
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
lea ecx, [ebp - 0x24]
call fcn.004cf710
push 4
push ecx
mov ecx, esp
mov dword [ebp - 0x280], esp
push 0x587818
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
mov byte [ebp - 4], 0x2d
mov eax, dword [edi + 0x13ac]
push eax
push dword [ebp - 0x28c]
mov byte [ebp - 4], 0x1f
mov ecx, edi
call fcn.0046c240
test eax, eax
js 0x4d4449
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d43e4
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 3
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
jne 0x4d43cf
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
je 0x4d43e4
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
cmp byte [eax + 0x1af0], 0
jne 0x4d4449
push dword [edi + 0x13ac]
push 0
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472590
cmp eax, dword [ebp - 0x294]
je 0x4d4449
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
lea eax, [edi + 0x131c]
push eax
lea ecx, [ebp - 0x3c]
call fcn.004f77f0
mov byte [ebp - 4], 0x2e
push 0
push 1
push 1
push dword [edi + 0x13ac]
push 1
push dword [ebp - 0x294]
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x3c]
call fcn.004f7910
mov byte [edi + 0x13b0], 1
mov ecx, edi
cmp byte [ebp - 0x286], 0
je 0x4d4464
push 1
call fcn.0046a050
jmp 0x4d4473
push edi
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
call eax
mov ecx, eax
call fcn.004a56e0
mov al, byte [ebp - 0x287]
mov byte [edi + 0x13c4], al
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 4]
jmp 0x4d361f
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
je 0x4d45f6
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x78]
call eax
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x80]
call eax
push eax
push str.Clone_to_device__s_aborted
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
lea ecx, [ebp - 0x24]
call fcn.004cf710
push 2
push ecx
mov ecx, esp
mov dword [ebp - 0x280], esp
push 0x587818
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
mov byte [ebp - 4], 0x2f
mov eax, dword [edi + 0x13ac]
push eax
push dword [ebp - 0x28c]
mov byte [ebp - 4], 0x1f
mov ecx, edi
call fcn.0046c240
test eax, eax
js 0x4d45d4
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d456f
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 3
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
jne 0x4d455a
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
je 0x4d456f
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
cmp byte [eax + 0x1af0], 0
jne 0x4d45d4
push dword [edi + 0x13ac]
push 0
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472590
cmp eax, dword [ebp - 0x294]
je 0x4d45d4
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
lea eax, [edi + 0x131c]
push eax
lea ecx, [ebp - 0x3c]
call fcn.004f77f0
mov byte [ebp - 4], 0x30
push 0
push 1
push 1
push dword [edi + 0x13ac]
push 1
push dword [ebp - 0x294]
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x3c]
call fcn.004f7910
mov byte [edi + 0x13b0], 1
mov ecx, edi
cmp byte [ebp - 0x286], 0
je 0x4d4464
push 1
call fcn.0046a050
jmp 0x4d4473
sub esp, 8
mov ecx, esi
call fcn.004c1150
mov dword [ebp - 0x268], eax
xorps xmm0, xmm0
movups xmmword [ebp - 0xac], xmm0
movq qword [ebp - 0x9c], xmm0
mov dword [ebp - 0x94], 0
push 0xa
lea ecx, [ebp - 0xac]
call dword [0x586ad0]
mov byte [ebp - 4], 0x31
mov dword [ebp - 0xac], 0x58aff4
mov byte [ebp - 4], 0x32
mov dword [ebp - 0xac], 0x58b008
mov byte [ebp - 4], 0x33
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x26c], eax
test eax, eax
je 0x4d4695
mov edi, eax
nop
mov esi, dword [edi + 8]
mov edi, dword [edi]
test esi, esi
je 0x4d4685
mov eax, dword [esi]
push 0
mov ecx, esi
mov eax, dword [eax + 0x14]
call eax
test al, al
je 0x4d4685
push esi
lea ecx, [ebp - 0xac]
call dword [sym.imp.mfc140u.dll_Ordinal_2006]
test edi, edi
jne 0x4d4660
mov edi, dword [ebp - 0x2a8]
mov esi, dword [ebp - 0x264]
mov eax, dword [0x641c70]
mov dword [ebp - 0x274], eax
mov eax, dword [ebp - 0x298]
movzx edx, word [eax + 0x240]
mov ecx, edx
test cx, cx
je 0x4d46ca
cmp cx, word [ebp - 0x2a0]
je 0x4d46ca
cmp dx, word [ebp - 0x270]
jne 0x4d4760
mov esi, 0x2640
cmp word [eax + 0x244], si
mov esi, dword [ebp - 0x264]
je 0x4d4733
mov ax, word [eax + 0x242]
and ax, word [ebp - 0x29c]
cmp ax, word [ebp - 0x2b0]
je 0x4d4733
test cx, cx
je 0x4d470c
cmp cx, word [ebp - 0x2a0]
je 0x4d470c
cmp dx, word [ebp - 0x270]
jne 0x4d4760
mov eax, dword [ebp - 0x298]
mov ecx, 0x2740
cmp word [eax + 0x244], cx
je 0x4d4733
mov ax, word [eax + 0x242]
and ax, word [ebp - 0x29c]
cmp ax, cx
jne 0x4d4760
movzx eax, word [edi + 0x246]
mov ecx, eax
mov edx, 0x200
cmp ax, dx
jb 0x4d4756
lea eax, [ecx + 0x1fff]
mov ecx, 0x1fe
cmp ax, cx
ja 0x4d4760
mov dword [0x641c70], 0x64
mov eax, dword [0x641a88]
mov ecx, edi
cmp byte [eax + 0x360], 0
mov eax, dword [edi]
je 0x4d4905
mov eax, dword [eax + 0x78]
call eax
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x80]
call eax
push eax
push str.Clone_to_device__s_aborted
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
lea ecx, [ebp - 0x24]
call fcn.004cf710
push 2
push ecx
mov ecx, esp
mov dword [ebp - 0x280], esp
push 0x587818
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
mov byte [ebp - 4], 0x34
mov eax, dword [edi + 0x13ac]
push eax
push dword [ebp - 0x28c]
mov byte [ebp - 4], 0x33
mov ecx, edi
call fcn.0046c240
test eax, eax
js 0x4d48a7
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d4842
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 3
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
jne 0x4d482d
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
je 0x4d4842
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
cmp byte [eax + 0x1af0], 0
jne 0x4d48a7
push dword [edi + 0x13ac]
push 0
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472590
cmp eax, dword [ebp - 0x294]
je 0x4d48a7
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
lea eax, [edi + 0x131c]
push eax
lea ecx, [ebp - 0x3c]
call fcn.004f77f0
mov byte [ebp - 4], 0x35
push 0
push 1
push 1
push dword [edi + 0x13ac]
push 1
push dword [ebp - 0x294]
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x3c]
call fcn.004f7910
mov byte [edi + 0x13b0], 1
mov ecx, edi
cmp byte [ebp - 0x286], 0
je 0x4d48c2
push 1
call fcn.0046a050
jmp 0x4d48d1
push edi
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
call eax
mov ecx, eax
call fcn.004a56e0
mov al, byte [ebp - 0x287]
mov byte [edi + 0x13c4], al
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 4]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0xac]
call dword [sym.imp.mfc140u.dll_CObList::CObList]
jmp 0x4d3629
mov esi, dword [esi + 0x18]
mov eax, dword [eax + 0x80]
call eax
push eax
push esi
push str.Will_be_writing__d_tags_to__s
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x14
mov dword [ebp - 0x26c], 0x32
push 0
push dword [edi + 0x13ac]
push 7
push 0
lea eax, [ebp - 0xac]
push eax
mov ecx, edi
call fcn.00460390
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x2b0], eax
mov esi, 1
mov dword [ebp - 0x29c], esi
lea ecx, [edi + 0x1418]
xorps xmm0, xmm0
movlpd qword [ebp - 0x44], xmm0
push ecx
lea ecx, [ebp - 0x44]
call fcn.004f77f0
mov byte [ebp - 4], 0x38
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
mov edx, dword [ebp - 0x26c]
mov ecx, edx
mov eax, 0x5a
sub eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x606630]
cvttsd2si eax, xmm0
sub edx, eax
mov dword [ebp - 0x26c], edx
mulsd xmm0, qword [0x6064c0]
cvttsd2si eax, xmm0
mov edx, ecx
sub edx, eax
mov dword [ebp - 0x2a0], edx
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
jne 0x4d5024
xorps xmm0, xmm0
movq qword [ebp - 0x84], xmm0
mov dword [ebp - 0x7c], 0
push edx
push ecx
lea eax, [ebp - 0x27c]
push eax
lea eax, [ebp - 0x270]
push eax
lea ecx, [ebp - 0x84]
call fcn.0051b6c0
mov byte [ebp - 4], 0x39
push esi
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Copying_clone_tags_to_device__s__pass__d____writing_tags
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x14
xorps xmm0, xmm0
movlpd qword [ebp - 0x78], xmm0
push dword [edi + 0x13ac]
mov ecx, edi
call fcn.00475480
movzx eax, al
push eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
add eax, 0x24
push eax
lea ecx, [ebp - 0x78]
call fcn.004f6560
mov byte [ebp - 4], 0x3a
movzx eax, word [edi + 0x1514]
push eax
push 0x14
mov ecx, edi
call fcn.0045d100
push 1
push 0
push 1
push dword [edi + 0x13ac]
push 0
push 2
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
lea ecx, [ebp - 0x24]
call fcn.004cf650
mov ecx, edi
cmp esi, 1
jne 0x4d4ad1
mov eax, dword [ebp - 0x2ac]
movzx eax, byte [eax + 0x40]
push eax
sub esp, 8
lea eax, [ebp - 0x27c]
push eax
push esi
jmp 0x4d4adf
push 0
sub esp, 8
lea eax, [ebp - 0x27c]
push eax
push 0
lea eax, [ebp - 0xac]
push eax
push dword [ebp - 0x28c]
call fcn.0045f3e0
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0x78]
call fcn.004f6620
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
jne 0x4d5015
push esi
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Copying_clone_tags_to_device__s__pass__d____resetting_device
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x14
mov byte [edi + 0x1318], 1
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d4c28
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 3
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
jne 0x4d4b8f
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
je 0x4d4c28
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
cmp byte [eax + 0x1af0], 0
je 0x4d4c28
push 1
push 0
push 1
push dword [edi + 0x13ac]
push 1
push 0
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
push 1
push 0
push 1
push dword [edi + 0x13ac]
push 1
push 2
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
lea ecx, [edi + 0x1a8]
call fcn.00513560
test al, al
je 0x4d4c1b
push str.Waiting_for_device_to_startup
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
push 0x1388
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4d4c3f
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4d4c3f
push dword [edi + 0x13ac]
push 0
movzx eax, word [edi + 0x1514]
push eax
mov ecx, edi
call fcn.0045d2e0
mov byte [edi + 0x1318], 0
lea ecx, [ebp - 0x24]
call fcn.004cf650
xorps xmm0, xmm0
movups xmmword [ebp - 0xc8], xmm0
movq qword [ebp - 0xb8], xmm0
mov dword [ebp - 0xb0], 0
push 0xa
lea ecx, [ebp - 0xc8]
call dword [0x586ad0]
mov byte [ebp - 4], 0x3b
mov dword [ebp - 0xc8], 0x58aff4
mov byte [ebp - 4], 0x3c
mov dword [ebp - 0xc8], 0x58b008
mov byte [ebp - 4], 0x3d
mov eax, dword [edi + 0x13ac]
mov dword [ebp - 0x278], eax
xorps xmm0, xmm0
movlpd qword [ebp - 0xfc], xmm0
mov dword [ebp - 0xf8], 0
push 0
push edi
lea eax, [ebp - 0x278]
push eax
lea ecx, [ebp - 0xfc]
call fcn.00508ac0
mov byte [ebp - 4], 0x3e
lea ecx, [edi + 0x1458]
push dword [ebp - 0x278]
call fcn.00405ae0
cmp byte [edi + 0x1458], 0
je 0x4d4d03
cmp byte [edi + 0x1459], 0
je 0x4d4d03
mov al, byte [edi + 0x145a]
mov byte [ebp - 0x285], al
jmp 0x4d4d0a
mov byte [ebp - 0x285], 0
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0xfc]
call fcn.005089c0
mov ecx, dword [ebp - 0x298]
mov eax, dword [ecx]
mov eax, dword [eax + 0x80]
push esi
mov ecx, edi
call eax
push eax
mov eax, dword [0x641a88]
add eax, 0x32c
cmp byte [ebp - 0x285], 0
je 0x4d4d47
push str.Copying_clone_tags_to_device__s__pass__d____Verifying_written_tags_in_config_mode
jmp 0x4d4d4c
push str.Copying_clone_tags_to_device__s__pass__d____verifying_written_tags
push 0x3ef
push eax
call fcn.004ec2c0
add esp, 0x14
movzx eax, word [edi + 0x1514]
push eax
push 0x14
mov ecx, edi
call fcn.0045d100
mov eax, dword [edi + 0x13ac]
mov dword [ebp - 0x278], eax
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
mov dword [ebp - 0x38], 0
push 0
push edi
lea eax, [ebp - 0x278]
push eax
lea ecx, [ebp - 0x3c]
call fcn.00508ac0
mov byte [ebp - 4], 0x3f
push dword [ebp - 0x278]
lea ecx, [edi + 0x1458]
call fcn.00405ae0
cmp byte [edi + 0x1458], 0
je 0x4d4dcd
cmp byte [edi + 0x1459], 0
je 0x4d4dcd
mov al, byte [edi + 0x145a]
mov byte [ebp - 0x285], al
jmp 0x4d4dd4
mov byte [ebp - 0x285], 0
mov byte [ebp - 4], 0x3d
lea ecx, [ebp - 0x3c]
call fcn.005089c0
cmp byte [ebp - 0x285], 0
je 0x4d4e36
push 1
push 0
push 1
push dword [edi + 0x13ac]
push 1
push 2
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
cmp eax, 2
je 0x4d4e36
push esi
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Unable_to_put_device__s__pass__d__into_config_mode___clone_verify_will_be_incomplete
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x14
push 0
push 0
lea eax, [ebp - 0xc8]
push eax
mov eax, dword [ebp - 0x26c]
push eax
push dword [ebp - 0x2a0]
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0xac]
push eax
push edi
mov ecx, dword [ebp - 0x2ac]
call fcn.004d7c00
mov byte [ebp - 0x28e], al
push esi
mov edx, dword [edi]
mov ecx, edi
mov edx, dword [edx + 0x80]
call edx
push eax
push str.Copying_clone_tags_to_device__s__pass__d____completed
push 0x3ef
mov ecx, dword [0x641a88]
add ecx, 0x32c
push ecx
call fcn.004ec2c0
add esp, 0x14
cmp byte [ebp - 0x28e], 0
je 0x4d4edf
mov ecx, dword [ebp - 0x30]
test ecx, ecx
jle 0x4d4f70
push ecx
mov eax, dword [ebp - 0xa0]
sub eax, ecx
push eax
mov eax, dword [0x641a88]
add eax, 0x32c
cmp esi, 1
jle 0x4d4ecc
push str.Successfully_rewrote__d_tags___failed_to_rewrite__d_tags
jmp 0x4d4ed1
push str.Successfully_wrote__d_tags___failed_to_write__d_tags
push 0x3ef
push eax
call fcn.004ec2c0
add esp, 0x14
mov byte [ebp - 0x18], 1
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x2b0]
je 0x4d4fe8
mov dword [ebp - 0x2b0], eax
lea ecx, [ebp - 0xac]
call dword [sym.imp.mfc140u.dll_Ordinal_12608]
mov esi, dword [ebp - 0xc4]
test esi, esi
je 0x4d4f2a
nop
mov eax, dword [esi + 8]
mov esi, dword [esi]
test eax, eax
je 0x4d4f26
push eax
lea ecx, [ebp - 0xac]
call dword [sym.imp.mfc140u.dll_Ordinal_2006]
test esi, esi
jne 0x4d4f10
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xc8]
call dword [sym.imp.mfc140u.dll_CObList::CObList]
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x84]
call fcn.0051ba50
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x44]
call fcn.004f7910
mov esi, dword [ebp - 0x29c]
inc esi
mov dword [ebp - 0x29c], esi
cmp esi, 0xa
jge 0x4d5034
jmp 0x4d496a
push dword [ebp - 0xa0]
mov eax, dword [0x641a88]
add eax, 0x32c
cmp esi, 1
jle 0x4d4f8c
push str.Successfully_rewrote__d_tags
jmp 0x4d4f91
push str.Successfully_wrote__d_tags
push 0x3ef
push eax
call fcn.004ec2c0
add esp, 0x10
mov al, 1
movzx ecx, al
xor edx, edx
mov esi, dword [ebp - 0x264]
mov eax, dword [esi + 0x18]
cmp eax, dword [ebp - 0xa0]
cmove ecx, edx
mov dword [ebp - 0x18], ecx
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xc8]
call dword [sym.imp.mfc140u.dll_CObList::CObList]
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x84]
call fcn.0051ba50
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x44]
call fcn.004f7910
jmp 0x4d503a
mov byte [ebp - 4], 0x39
lea ecx, [ebp - 0xc8]
call dword [sym.imp.mfc140u.dll_CObList::CObList]
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x84]
call fcn.0051ba50
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x44]
call fcn.004f7910
jmp 0x4d5034
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x84]
call fcn.0051ba50
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x44]
call fcn.004f7910
mov byte [ebp - 0x18], 1
mov esi, dword [ebp - 0x264]
mov eax, dword [ebp - 0x274]
mov dword [0x641c70], eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d50a0
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 3
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
jne 0x4d508b
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
je 0x4d50a0
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
cmp byte [eax + 0x1af0], 0
jne 0x4d5105
push dword [edi + 0x13ac]
push 0
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472590
cmp eax, dword [ebp - 0x294]
je 0x4d5105
xorps xmm0, xmm0
movlpd qword [ebp - 0x78], xmm0
lea eax, [edi + 0x131c]
push eax
lea ecx, [ebp - 0x78]
call fcn.004f77f0
mov byte [ebp - 4], 0x46
push 0
push 1
push 1
push dword [edi + 0x13ac]
push 1
push dword [ebp - 0x294]
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x78]
call fcn.004f7910
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
jne 0x4d525f
cmp byte [ebp - 0x18], 0
je 0x4d5252
movzx eax, word [edi + 0x1514]
push eax
push 0x14
mov ecx, edi
call fcn.0045d100
lea ecx, [ebp - 0x24]
call fcn.004cf650
mov eax, dword [edi + 0x13ac]
mov dword [ebp - 0x26c], eax
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
mov dword [ebp - 0x38], 0
push 0
push edi
lea eax, [ebp - 0x26c]
push eax
lea ecx, [ebp - 0x3c]
call fcn.00508ac0
mov byte [ebp - 4], 0x47
push dword [ebp - 0x26c]
lea ecx, [edi + 0x1458]
call fcn.00405ae0
cmp byte [edi + 0x1458], 0
je 0x4d519c
cmp byte [edi + 0x1459], 0
je 0x4d519c
mov al, byte [edi + 0x145a]
mov byte [ebp - 0x285], al
jmp 0x4d51a3
mov byte [ebp - 0x285], 0
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x3c]
call fcn.005089c0
mov esi, dword [ebp - 0x264]
mov esi, dword [esi + 0x18]
mov eax, dword [ebp - 0x2b4]
mov eax, dword [eax]
mov eax, dword [eax + 0x80]
mov ecx, edi
call eax
push eax
push esi
mov eax, dword [0x641a88]
add eax, 0x32c
cmp byte [ebp - 0x285], 0
je 0x4d5211
push str.Verifying__d_clone_tags_from_device__s_in_config_mode
push 0x3ef
push eax
call fcn.004ec2c0
add esp, 0x14
push 0
push 0
push 1
push dword [edi + 0x13ac]
push 1
push 2
push dword [ebp - 0x28c]
mov ecx, edi
call fcn.00472c20
jmp 0x4d5224
push str.Verifying__d_clone_tags_from_device__s
push 0x3ef
push eax
call fcn.004ec2c0
add esp, 0x14
lea eax, [ebp - 0xf4]
push eax
push 0
push ecx
push 0x62
push 0x5a
lea eax, [ebp - 0x30]
push eax
mov esi, dword [ebp - 0x264]
push esi
push edi
mov ecx, dword [ebp - 0x2ac]
call fcn.004d7aa0
test al, al
jne 0x4d5258
mov byte [ebp - 0x1c], al
jmp 0x4d5258
push edi
call fcn.004d92e0
mov byte [edi + 0x1390], 1
cmp dword [esi + 0x18], 0
je 0x4d5298
mov edi, dword [ebp - 0x264]
nop dword [eax + eax]
lea ecx, [esi + 0xc]
call dword [sym.imp.mfc140u.dll_Ordinal_12743]
test eax, eax
je 0x4d5286
mov edx, dword [eax]
push 1
mov ecx, eax
call dword [edx + 4]
cmp dword [edi + 0x18], 0
jne 0x4d5270
mov edi, dword [ebp - 0x2a8]
mov esi, dword [ebp - 0x264]
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 4]
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0xac]
call dword [sym.imp.mfc140u.dll_CObList::CObList]
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
jne 0x4d534f
push str.Copying_tag_descriptions_into_devices_address_space
push 0x3ef
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 8
push 0
push dword [edi + 0x13ac]
push edi
mov ecx, dword [ebp - 0x2ac]
call fcn.004d9d90
test al, al
jne 0x4d5310
push str.Loading_of_tag_comments_unsuccessful
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
lea eax, [edi + 0x12ec]
push eax
push dword [edi + 0x13ac]
mov ecx, dword [0x641a88]
add ecx, 0x1f4
call fcn.004fcce0
test al, al
jne 0x4d534f
push str.Loading_of_device_comments_unsuccessful
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
je 0x4d5364
mov eax, 2
jmp 0x4d536f
xor eax, eax
cmp byte [ebp - 0x1c], al
sete al
add eax, 3
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0x280], esp
push 0x587818
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
mov byte [ebp - 4], 0x4a
mov eax, dword [edi + 0x13ac]
push eax
mov esi, dword [ebp - 0x28c]
push esi
mov byte [ebp - 4], 0x1f
mov ecx, edi
call fcn.0046c240
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
jne 0x4d5502
cmp dword [edi + 0x12f0], 0
jne 0x4d5502
push dword [edi + 0x13ac]
push ecx
mov ecx, edi
call fcn.0046bb60
cmp al, 1
jne 0x4d5502
push str.Copying_final_FLASH_memory_to_device
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
push 0
push 0
push 1
push dword [edi + 0x13ac]
push 0
push 2
push esi
mov ecx, edi
call fcn.00472c20
lea ecx, [ebp - 0x24]
call fcn.004cf650
sub esp, 0xc
push dword [edi + 0x13ac]
push esi
mov ecx, edi
call fcn.0046bcf0
mov esi, eax
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov eax, dword [ebp - 0x1c]
movzx eax, al
xor ecx, ecx
test esi, esi
cmovs eax, ecx
mov dword [ebp - 0x1c], eax
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d5499
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 3
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
jne 0x4d5484
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
je 0x4d5499
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
cmp byte [eax + 0x1af0], 0
jne 0x4d54fc
push dword [edi + 0x13ac]
push 0
mov esi, dword [ebp - 0x28c]
push esi
mov ecx, edi
call fcn.00472590
cmp eax, dword [ebp - 0x294]
je 0x4d5502
xorps xmm0, xmm0
movlpd qword [ebp - 0x78], xmm0
lea eax, [edi + 0x131c]
push eax
lea ecx, [ebp - 0x78]
call fcn.004f77f0
mov byte [ebp - 4], 0x4b
push 0
push 1
push 1
push dword [edi + 0x13ac]
push 1
push dword [ebp - 0x294]
push esi
mov ecx, edi
call fcn.00472c20
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x78]
call fcn.004f7910
jmp 0x4d5502
mov esi, dword [ebp - 0x28c]
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
test eax, eax
je 0x4d5565
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 3
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
jne 0x4d5550
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx + 4]
call eax
test al, al
je 0x4d5565
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x9c]
call eax
cmp byte [eax + 0x1af0], 0
jne 0x4d55c9
push dword [edi + 0x13ac]
push 0
push esi
mov ecx, edi
call fcn.00472590
cmp eax, dword [ebp - 0x294]
je 0x4d55c9
xorps xmm0, xmm0
movlpd qword [ebp - 0x78], xmm0
lea eax, [edi + 0x131c]
push eax
lea ecx, [ebp - 0x78]
call fcn.004f77f0
mov byte [ebp - 4], 0x4c
push 0
push 1
mov ecx, dword [ebp - 0x294]
cmp ecx, 2
sete al
movzx eax, al
push eax
push dword [edi + 0x13ac]
push 1
push ecx
push esi
mov ecx, edi
call fcn.00472c20
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x78]
call fcn.004f7910
push dword [edi + 0x13ac]
mov ecx, dword [0x641a88]
lea ecx, [ecx + 0x1f4]
call fcn.004fc870
cmp dword [edi + 0x12f0], 0
jne 0x4d55f6
push dword [edi + 0x13ac]
mov ecx, edi
call fcn.0046c100
mov byte [edi + 0x13b0], 1
mov ecx, edi
cmp byte [ebp - 0x286], 0
je 0x4d5611
push 1
call fcn.0046a050
jmp 0x4d5620
push edi
mov eax, dword [edi]
mov eax, dword [eax + 0x78]
call eax
mov ecx, eax
call fcn.004a56e0
mov al, byte [ebp - 0x287]
mov byte [edi + 0x13c4], al
mov eax, dword [0x641a88]
cmp byte [eax + 0x360], 0
jne 0x4d5a0a
cmp byte [ebp - 0x1c], 0
je 0x4d5893
cmp dword [ebp - 0xe8], 0
jg 0x4d565b
cmp dword [ebp - 0x5c], 0
jle 0x4d56e1
push 0x587818
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str._WARNING_
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push 0x587818
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x24
cmp dword [ebp - 0x5c], 0
jle 0x4d56e1
mov esi, dword [ebp - 0x64]
test esi, esi
je 0x4d56e1
nop dword [eax]
push dword [esi + 8]
mov esi, dword [esi]
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
test esi, esi
jne 0x4d56c0
cmp dword [ebp - 0xe8], 0
jle 0x4d573b
push str.Clone_Verify_reported_the_following_issues:
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
mov esi, dword [ebp - 0xf0]
test esi, esi
je 0x4d5732
push dword [esi + 8]
mov esi, dword [esi]
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
test esi, esi
jne 0x4d5711
cmp dword [ebp - 0xe8], 0
jg 0x4d5745
cmp dword [ebp - 0x5c], 0
jle 0x4d57e4
push 0x587818
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.It_is_strongly_recommended_that_on_completion_of_the_clone__you_verify_the_resulting_device_configuration.
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.You_might_consider_resaving_the_resulting_configuration_so_that_you_do_not_get_these_warnings_again.
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push 0x587818
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.Failure_to_follow_these_instructions_can_result_in_death__serious_injury__or_equipment_damage.
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push 0x587818
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x48
mov eax, dword [ebp - 0x298]
mov eax, dword [eax]
mov edx, dword [eax + 0x80]
mov eax, dword [ebp - 0x5c]
add eax, dword [ebp - 0xe8]
add eax, dword [ebp - 0x30]
mov ecx, edi
jne 0x4d580c
call edx
push eax
push str.Cloning_of_device__s_completed_with_no_issues.
jmp 0x4d5814
call edx
push eax
push str.Cloning_of_device__s_completed_with_issues.
mov eax, dword [0x641a88]
push 0x3ef
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
push dword [ebp - 0x268]
push 0
push ecx
mov eax, esp
mov dword [ebp - 0x280], esp
push eax
mov ecx, edi
call fcn.004da520
mov byte [ebp - 4], 0x4d
lea eax, [ebp - 0x2b4]
push eax
mov byte [ebp - 4], 0x1f
mov ecx, edi
call fcn.0045bc20
mov byte [ebp - 4], 0x4e
push dword [eax]
push str.Clone_Information:__s
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x14
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x2b4]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
jmp 0x4d5a34
cmp dword [ebp - 0x5c], 0
jle 0x4d58c1
mov esi, dword [ebp - 0x64]
test esi, esi
je 0x4d58c1
push dword [esi + 8]
mov esi, dword [esi]
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
test esi, esi
jne 0x4d58a0
cmp dword [ebp - 0xe8], 0
jle 0x4d5912
push str.Clone_Verify_reported_the_following_issues:
push 0x3ee
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
mov esi, dword [ebp - 0xf0]
test esi, esi
je 0x4d5912
push dword [esi + 8]
mov esi, dword [esi]
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0xc
test esi, esi
jne 0x4d58f1
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Cloning_of_device__s_unsuccessful
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
cmp byte [edi + 0xa8], 0
je 0x4d59a9
cmp byte [edi + 0xa9], 0
je 0x4d59a9
cmp byte [edi + 0xaa], 0
je 0x4d59a9
cmp byte [edi + 0x9c], 0
je 0x4d5972
cmp byte [edi + 0x9d], 0
je 0x4d5972
cmp byte [edi + 0x9e], 0
jne 0x4d59a9
push str.The_clone_failure_was_probably_due_to_the_restricted_communications_channel_to_the_device.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.Try_connecting_directly_to_the_device_or_contact_Eurotherm_iTools_support.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x18
push 0
push ecx
mov ecx, esp
mov dword [ebp - 0x280], esp
push 0x587818
call dword [sym.imp.mfc140u.dll_ATL::CStringT_wchar_t_StrTraitMFC_DLL_wchar_t_ATL::ChTraitsCRT_wchar_t__26]
mov byte [ebp - 4], 0x4f
lea eax, [ebp - 0x2b4]
push eax
mov byte [ebp - 4], 0x1f
mov ecx, edi
call fcn.0045bc20
mov byte [ebp - 4], 0x50
push dword [eax]
push str.Clone_Information:__s
push 0x3ef
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x2b4]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
jmp 0x4d5a34
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Cloning_of_device__s_aborted
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x10
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
mov eax, dword [ebp - 0x2ac]
mov dword [eax + 0x44], 0
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0xf4]
mov esi, dword [sym.imp.mfc140u.dll_CStringList::CStringList]
call esi
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x68]
call esi
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x34]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x28]
call dword [sym.imp.mfc140u.dll_Ordinal_1045]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24]
call fcn.004cf710
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2c]
call fcn.0041ff70
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x70]
call fcn.004f7290
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call fcn.004f6620
xor eax, eax
jmp 0x4d5b29
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x80]
call eax
push eax
push str.Cannot_clone_to_device__s___cloning_over_EI_Bisynch_communications_protocol_not_supported.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
push str.Please_connect_to_the_devices_Config_Port__or_reconfigure_to_MODBUS_to_perform_the_clone.
push 0x3ed
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec2c0
add esp, 0x1c
mov eax, 0x80004005
jmp 0x4d5b29
push 0x3ec
push str.c:DevjenkinsworkspaceiTools_for_IDMDeployer_V9.87_servermodbusClone.cpp
push 0x587798
mov eax, dword [0x641a88]
add eax, 0x32c
push eax
call fcn.004ec040
add esp, 0x10
mov eax, 0x80070057
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0055c86d
mov esp, ebp
pop ebp
ret 0x20