Function at 0x404020
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov eax, dword [ecx + 0x1c]
test eax, eax
je 0x402b80
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov ebx, ecx
mov ecx, eax
sub esp, 0xec
call fcn.00474990
test al, al
jne 0x402a90
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
cmp byte [ebx + 0x20], 0xac
je 0x402b82
lea eax, [ebp - 0x30]
lea esi, [ebp - 0x40]
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.It_is_detected_that_ESC_is_not_in_bootload_mode__please_enter_bootload_mode_first._n
mov ecx, eax
mov dword [esp], 0x4f4008
mov dword [ebp - 0x8c], eax
mov edi, dword [0x71614c]
call edi
sub esp, 0x10
mov ecx, esi
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Non_bootload_Mode_
mov dword [esp], 0x4f4008
call edi
mov eax, dword [ebp - 0x8c]
sub esp, 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x400
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 8], eax
call dword [0x7166dc]
mov eax, dword [ebp - 0x40]
mov edx, dword [eax]
test edx, edx
je 0x402ca0
cmp edx, 0xffffffff
je 0x402b40
lock sub dword [eax], 1
mov eax, dword [ebp - 0x40]
je 0x402ca0
nop
mov eax, dword [ebp - 0x30]
mov edx, dword [eax]
test edx, edx
je 0x402b5f
cmp edx, 0xffffffff
je 0x402a84
lock sub dword [eax], 1
mov eax, dword [ebp - 0x30]
jne 0x402a84
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
repz ret
lea ecx, [ebp - 0x70]
call dword [0x715fbc]
mov eax, dword [ebx + 0x18]
mov esi, dword [0x716a14]
mov ecx, dword [eax + 4]
call esi
test eax, eax
mov edx, dword [ebx + 0x18]
je 0x402cc0
mov ecx, dword [edx + 4]
call esi
cmp eax, 1
je 0x40347e
mov dword [esp], 1
lea ecx, [ebp - 0x70]
call dword [0x715fb4]
sub esp, 4
test al, al
jne 0x402d40
lea eax, [ebp - 0x30]
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Could_not_open_bin_qfile_t._Make_sure_that_the_path_is_valid.
mov dword [esp], 0x4f4008
mov dword [ebp - 0x8c], eax
mov ecx, eax
mov edi, dword [0x71614c]
call edi
lea esi, [ebp - 0x40]
sub esp, 0x10
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Error_4
mov dword [esp], 0x4f4008
mov ecx, esi
call edi
mov eax, dword [ebp - 0x8c]
sub esp, 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x400
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 8], eax
call dword [0x7166dc]
mov eax, dword [ebp - 0x40]
mov edx, dword [eax]
test edx, edx
je 0x402e00
cmp edx, 0xffffffff
je 0x402c71
lock sub dword [eax], 1
mov eax, dword [ebp - 0x40]
je 0x402e00
mov eax, dword [ebp - 0x30]
mov edx, dword [eax]
test edx, edx
je 0x402de2
cmp edx, 0xffffffff
je 0x402c90
lock sub dword [eax], 1
mov eax, dword [ebp - 0x30]
je 0x402de2
lea ecx, [ebp - 0x70]
call dword [0x715fc0]
jmp 0x402a84
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x402b40
mov ecx, dword [edx + 0x10]
call dword [0x716a50]
test eax, eax
je 0x4033b0
mov edx, dword [eax]
lea edi, [ebp - 0x30]
mov dword [esp + 4], 0x100
mov dword [esp], eax
mov dword [ebp - 0x8c], edi
mov ecx, edi
call dword [edx + 0x10]
lea esi, [ebp - 0x40]
sub esp, 8
mov dword [esp], edi
mov ecx, esi
call dword [0x716218]
sub esp, 4
lea ecx, [ebp - 0x70]
mov dword [esp], esi
call dword [0x715fb0]
mov eax, dword [ebp - 0x40]
sub esp, 4
mov edx, dword [eax]
test edx, edx
je 0x402e20
cmp edx, 0xffffffff
je 0x402d2e
lock sub dword [eax], 1
mov eax, dword [ebp - 0x40]
je 0x402e20
mov ecx, dword [ebp - 0x8c]
call dword [0x7160a0]
jmp 0x402bb2
lea ecx, [ebp - 0x70]
call dword [0x71619c]
cmp edx, 0
jl 0x402e49
jle 0x402e3e
lea eax, [ebp - 0x30]
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str._Firmware_is_too_large__cannot_exceed_150Kbyte_.
mov dword [esp], 0x4f4008
mov dword [ebp - 0x8c], eax
mov ecx, eax
mov edi, dword [0x71614c]
call edi
lea esi, [ebp - 0x40]
sub esp, 0x10
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str._Error_5_
mov dword [esp], 0x4f4008
mov ecx, esi
call edi
mov eax, dword [ebp - 0x8c]
sub esp, 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x400
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 8], eax
call dword [0x7166dc]
jmp 0x402c52
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x402c90
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x402c71
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x402d2e
cmp eax, 0x30f98
ja 0x402d58
lea eax, [ebp - 0x30]
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Make_sure_to_download_the_correct_firmware__wrong_firmware_may_damage_the_ESC.Do_you_want_to_continue_
mov dword [esp], 0x4f4008
mov dword [ebp - 0x8c], eax
mov ecx, eax
mov edi, dword [0x71614c]
call edi
lea esi, [ebp - 0x40]
sub esp, 0x10
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Warning
mov dword [esp], 0x4f4008
mov ecx, esi
call edi
mov eax, dword [ebp - 0x8c]
sub esp, 0x10
mov dword [esp + 0x10], 0x10000
mov dword [esp + 0xc], 0x14000
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, dword [0x7166d8]
mov dword [ebp - 0x9c], eax
call eax
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x40]
mov edx, dword [eax]
test edx, edx
je 0x403460
cmp edx, 0xffffffff
je 0x402efa
lock sub dword [eax], 1
mov eax, dword [ebp - 0x40]
je 0x403460
mov eax, dword [ebp - 0x30]
mov edx, dword [eax]
test edx, edx
je 0x403440
cmp edx, 0xffffffff
je 0x402f19
lock sub dword [eax], 1
mov eax, dword [ebp - 0x30]
je 0x403440
cmp dword [ebp - 0x90], 0x4000
jne 0x402c90
mov ecx, dword [ebx + 0x1c]
call fcn.004748a0
mov ecx, eax
call fcn.00480830
mov eax, dword [0x715f14]
mov dword [esp], 0
mov ecx, esi
mov dword [ebp - 0xbc], eax
call eax
mov edx, dword [0x715fe8]
sub esp, 4
mov ecx, dword [ebp - 0x8c]
mov dword [esp], 0
mov dword [ebp - 0xa0], edx
call edx
mov edx, dword [0x715fdc]
sub esp, 4
or byte [ebp - 0x1c], 1
mov dword [esp], 0x7d0
mov ecx, dword [ebp - 0x8c]
mov dword [ebp - 0xb8], edx
call edx
mov ecx, dword [ebx + 0x1c]
sub esp, 4
call fcn.004748a0
mov dword [esp], 0x10
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x60], fcn.0049cb60
mov dword [ebp - 0x5c], 0
call fcn.004a0e78
lea edx, [ebp - 0x50]
mov dword [eax], 1
mov dword [eax + 4], 0x4015c0
mov dword [eax + 0xc], esi
mov dword [eax + 8], edx
mov dword [ebp - 0xa4], edx
mov edx, dword [ebp - 0x90]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x60]
mov dword [esp + 0x20], 0x4f4200
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], edx
mov dword [esp + 4], edx
lea edx, [ebp - 0x74]
mov dword [esp + 8], eax
mov dword [esp], edx
mov edx, dword [0x716008]
mov dword [ebp - 0xb0], edx
call edx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [0x715f20]
lea edx, [ebp - 0x68]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x4f5d43
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x4f5d4b
mov dword [esp + 4], eax
mov eax, dword [0x716034]
mov dword [ebp - 0x94], edx
mov dword [esp], edx
mov dword [ebp - 0x98], ecx
mov dword [ebp - 0xac], eax
call eax
mov edx, dword [0x715f20]
mov ecx, dword [ebp - 0x94]
mov dword [ebp - 0x98], edx
call edx
mov eax, dword [0x715f0c]
mov dword [esp], 0
mov ecx, esi
mov dword [ebp - 0xb4], eax
call eax
lea ecx, [ebp - 0x74]
sub esp, 4
mov dword [esp], ecx
mov ecx, dword [0x716000]
mov dword [ebp - 0xa8], ecx
call ecx
mov edx, dword [ebp - 0x28]
test edx, edx
js 0x4038a9
mov edx, dword [ebp - 0x98]
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x44], 0x1010101
call edx
mov eax, dword [0x715fec]
mov ecx, dword [ebp - 0x8c]
mov dword [ebp - 0xc4], eax
call eax
mov eax, dword [0x715f18]
mov ecx, esi
mov dword [ebp - 0xc0], eax
call eax
lea ecx, [ebp - 0x80]
call fcn.00482b10
mov dword [esp + 8], esi
mov esi, dword [ebp - 0xa4]
mov ecx, ebx
mov dword [esp + 4], 0x10
mov dword [ebp - 0x40], 0x33323130
mov dword [ebp - 0x3c], 0x37363534
mov dword [ebp - 0x38], 0x62613938
mov dword [esp], esi
mov dword [ebp - 0x34], 0x66656463
call fcn.00401e40
sub esp, 0xc
movsx eax, byte [esi]
lea ecx, [ebp - 0x80]
mov dword [esp], eax
call dword [0x715eec]
lea eax, [ebp - 0x40]
add esi, 1
sub esp, 4
cmp eax, esi
jne 0x403130
mov ecx, dword [ebx + 0x1c]
call fcn.004748a0
lea esi, [ebp - 0x80]
mov ecx, eax
mov dword [esp], esi
call fcn.00480930
sub esp, 4
mov byte [ebp - 0x81], 0
mov ecx, dword [ebp - 0x94]
mov dword [esp], 0
mov eax, dword [ebp - 0xbc]
call eax
mov esi, dword [ebp - 0x8c]
sub esp, 4
mov eax, dword [ebp - 0xa0]
mov dword [esp], 0
mov ecx, esi
call eax
sub esp, 4
or byte [ebp - 0x1c], 1
mov dword [ebp - 0x8c], esi
mov dword [esp], 0x7d0
mov ecx, esi
mov edx, dword [ebp - 0xb8]
call edx
mov ecx, dword [ebx + 0x1c]
sub esp, 4
call fcn.004748a0
mov dword [esp], 0x10
mov esi, eax
mov dword [ebp - 0x58], fcn.0049cba0
mov dword [ebp - 0x54], 0
call fcn.004a0e78
lea edx, [ebp - 0x81]
mov dword [eax], 1
mov dword [eax + 4], 0x401620
lea ecx, [ebp - 0x7c]
mov dword [eax + 8], edx
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x90], ecx
mov dword [eax + 0xc], edx
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x58]
mov dword [esp + 0x20], 0x4f4200
mov dword [esp + 0x1c], 0
mov dword [esp + 8], eax
mov dword [esp + 0x18], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], esi
mov dword [esp + 4], esi
mov dword [esp], ecx
mov eax, dword [ebp - 0xb0]
call eax
mov eax, dword [ebp - 0x8c]
mov esi, dword [ebp - 0x94]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x4f5d43
mov dword [esp + 8], 0x4f5d4b
mov dword [esp + 4], eax
lea eax, [ebp - 0x74]
mov dword [esp + 0xc], esi
mov dword [esp], eax
mov eax, dword [ebp - 0xac]
call eax
lea eax, [ebp - 0x74]
mov ecx, eax
mov eax, dword [ebp - 0x98]
call eax
mov dword [esp], 0
mov ecx, esi
mov eax, dword [ebp - 0xb4]
call eax
mov ecx, dword [ebp - 0x90]
sub esp, 4
mov eax, dword [ebp - 0xa8]
mov dword [esp], ecx
call eax
mov eax, dword [ebp - 0x28]
test eax, eax
js 0x40399e
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0x90]
call eax
mov ecx, dword [ebp - 0x8c]
mov esi, dword [ebp - 0xc4]
call esi
mov edi, dword [ebp - 0x94]
mov esi, dword [ebp - 0xc0]
mov ecx, edi
call esi
lea esi, [ebp - 0x70]
mov ecx, edi
mov dword [esp], esi
call dword [0x7160ec]
mov ecx, dword [ebx + 0x1c]
sub esp, 4
mov dword [esp], edi
call fcn.00475d40
mov edx, dword [ebx + 0x18]
sub esp, 4
test al, al
mov esi, dword [edx + 0x4c]
je 0x403aeb
mov edi, dword [ebp - 0x8c]
mov dword [esp], str.Update_firmware_completed_please_wait_for_5_senconds_and_click_Connect_button_to_connect_the_ESC.
mov ecx, edi
call fcn.004ced60
sub esp, 4
mov ecx, esi
mov dword [esp], edi
call dword [0x716868]
sub esp, 4
mov ecx, edi
call fcn.004ceda0
mov dword [esp], 0x1388
call fcn.0047e930
mov ecx, dword [ebx + 0x1c]
call fcn.004749a0
mov eax, dword [ebp - 0x68]
mov edx, dword [eax]
test edx, edx
je 0x403acd
cmp edx, 0xffffffff
je 0x403371
lock sub dword [eax], 1
je 0x403aca
mov eax, dword [ebp - 0x80]
mov edx, dword [eax]
test edx, edx
je 0x403390
cmp edx, 0xffffffff
je 0x402c90
lock sub dword [eax], 1
jne 0x402c90
mov eax, dword [ebp - 0x80]
mov dword [esp + 8], 4
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x402c90
lea eax, [ebp - 0x30]
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Please_select_a_valid_firmware.
mov dword [esp], 0x4f4008
mov dword [ebp - 0x8c], eax
mov ecx, eax
mov edi, dword [0x71614c]
call edi
lea esi, [ebp - 0x40]
sub esp, 0x10
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Error_2
mov dword [esp], 0x4f4008
mov ecx, esi
call edi
mov eax, dword [ebp - 0x8c]
sub esp, 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x400
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 8], eax
call dword [0x7166d8]
jmp 0x402c52
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x402f19
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x402efa
mov eax, dword [ebx + 0x18]
lea edi, [ebp - 0x30]
mov dword [ebp - 0x8c], edi
mov ecx, edi
mov eax, dword [eax + 0x1c]
mov dword [esp], eax
call dword [0x716ad8]
sub esp, 4
lea ecx, [ebp - 0x70]
mov dword [esp], edi
call dword [0x715fb0]
mov eax, dword [ebp - 0x30]
sub esp, 4
mov edx, dword [eax]
test edx, edx
je 0x4036df
cmp edx, 0xffffffff
je 0x4034c9
lock sub dword [eax], 1
mov eax, dword [ebp - 0x30]
je 0x4036df
mov edi, dword [ebp - 0x8c]
lea eax, [ebp - 0x70]
mov dword [esp], eax
mov ecx, edi
call dword [0x7161a0]
lea ecx, [ebp - 0x7c]
sub esp, 4
mov dword [esp], edi
mov dword [ebp - 0x90], ecx
call dword [0x7160c4]
mov eax, dword [ebp - 0x30]
sub esp, 4
mov edx, dword [eax]
test edx, edx
je 0x4036c1
cmp edx, 0xffffffff
je 0x403514
lock sub dword [eax], 1
mov eax, dword [ebp - 0x30]
je 0x4036c1
mov eax, dword [ebp - 0x90]
lea esi, [ebp - 0x40]
mov ecx, esi
mov dword [esp], eax
mov eax, dword [0x716244]
mov dword [ebp - 0xa0], eax
call eax
sub esp, 4
mov edi, dword [0x716058]
mov dword [esp + 4], 4
mov dword [esp], str..bin
call edi
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x8c]
mov ecx, esi
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [0x716208]
mov byte [ebp - 0x98], al
mov eax, dword [ebp - 0x30]
sub esp, 8
mov edx, dword [eax]
test edx, edx
je 0x4036a3
cmp edx, 0xffffffff
je 0x40358d
lock sub dword [eax], 1
mov eax, dword [ebp - 0x30]
je 0x4036a3
mov eax, dword [ebp - 0x40]
mov edx, dword [eax]
test edx, edx
je 0x403685
cmp edx, 0xffffffff
je 0x4035ac
lock sub dword [eax], 1
mov eax, dword [ebp - 0x40]
je 0x403685
cmp byte [ebp - 0x98], 0
jne 0x4036fd
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Please_select_a_bin_file.
mov dword [esp], 0x4f4008
mov ecx, dword [ebp - 0x8c]
mov edi, dword [0x71614c]
call edi
sub esp, 0x10
mov ecx, esi
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Error_3_1
mov dword [esp], 0x4f4008
call edi
mov eax, dword [ebp - 0x8c]
sub esp, 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x400
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 8], eax
call dword [0x7166dc]
mov eax, dword [ebp - 0x40]
mov edx, dword [eax]
test edx, edx
je 0x40384f
cmp edx, 0xffffffff
je 0x403655
lock sub dword [eax], 1
mov eax, dword [ebp - 0x40]
je 0x40384f
mov eax, dword [ebp - 0x30]
mov edx, dword [eax]
test edx, edx
je 0x403831
cmp edx, 0xffffffff
je 0x403674
lock sub dword [eax], 1
mov eax, dword [ebp - 0x30]
je 0x403831
mov ecx, dword [ebp - 0x90]
call dword [0x7160c8]
jmp 0x402c90
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x4035ac
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x40358d
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x403514
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x4034c9
mov edx, dword [ebp - 0x90]
lea eax, [ebp - 0x78]
mov dword [ebp - 0xa8], eax
mov ecx, eax
mov eax, dword [ebp - 0xa0]
mov dword [esp], edx
call eax
sub esp, 4
mov dword [esp + 4], 4
mov dword [esp], str.FT85
call edi
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x74]
mov dword [esp + 4], 1
mov ecx, dword [ebp - 0xa8]
mov edi, dword [0x7161d4]
mov dword [esp], eax
call edi
sub esp, 8
test al, al
mov byte [ebp - 0x9c], al
je 0x403a60
mov byte [ebp - 0x9c], 0
mov eax, dword [ebp - 0x74]
mov edx, dword [eax]
test edx, edx
je 0x40388b
cmp edx, 0xffffffff
je 0x403783
lock sub dword [eax], 1
mov eax, dword [ebp - 0x74]
je 0x40388b
mov eax, dword [ebp - 0x78]
mov edx, dword [eax]
test edx, edx
je 0x40386d
cmp edx, 0xffffffff
je 0x4037a2
lock sub dword [eax], 1
mov eax, dword [ebp - 0x78]
je 0x40386d
cmp byte [ebp - 0x9c], 0
je 0x40398d
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Please_select_a_valid_firmware.
mov dword [esp], 0x4f4008
mov ecx, dword [ebp - 0x8c]
mov edi, dword [0x71614c]
call edi
sub esp, 0x10
mov ecx, esi
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Error_3_2
mov dword [esp], 0x4f4008
call edi
mov eax, dword [ebp - 0x8c]
sub esp, 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x400
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 8], eax
call dword [0x7166dc]
jmp 0x403636
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x403674
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x403655
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x4037a2
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x403783
lea eax, [ebp - 0x58]
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Obtaining_the_UUID_code_times_out_
mov dword [esp], 0x4f4008
mov dword [ebp - 0xac], eax
mov ecx, eax
call edi
sub esp, 0x10
mov ecx, dword [ebp - 0x94]
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [esp + 4], str.Error_6
mov dword [esp], 0x4f4008
call edi
mov eax, dword [ebp - 0xac]
sub esp, 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x400
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x94]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x9c]
call eax
mov eax, dword [ebp - 0x68]
mov edx, dword [eax]
test edx, edx
je 0x403b15
cmp edx, 0xffffffff
je 0x40394d
lock sub dword [eax], 1
je 0x403b12
mov eax, dword [ebp - 0x58]
mov edx, dword [eax]
test edx, edx
je 0x403b36
cmp edx, 0xffffffff
je 0x403969
lock sub dword [eax], 1
je 0x403b33
lea ecx, [ebp - 0x74]
mov eax, dword [ebp - 0x98]
call eax
mov ecx, dword [ebp - 0x8c]
call dword [0x715fec]
mov ecx, esi
call dword [0x715f18]
jmp 0x402c90
mov ecx, dword [ebp - 0x90]
call dword [0x7160c8]
jmp 0x402bb2
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
lea ecx, [ebp - 0x74]
mov dword [esp + 4], str.Write_encrypted_data_timed_out_
mov dword [esp], 0x4f4008
call edi
lea esi, [ebp - 0x78]
sub esp, 0x10
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0
mov dword [ebp - 0xa8], esi
mov dword [esp + 4], str.Error_7
mov ecx, esi
mov dword [esp], 0x4f4008
call edi
lea eax, [ebp - 0x74]
sub esp, 0x10
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x400
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov dword [esp], ebx
mov eax, dword [ebp - 0x9c]
call eax
mov ecx, esi
call fcn.004ceda0
lea ecx, [ebp - 0x74]
call fcn.004ceda0
mov ecx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x98]
call eax
mov ecx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0xc4]
call eax
mov ecx, dword [ebp - 0x94]
mov eax, dword [ebp - 0xc0]
call eax
lea ecx, [ebp - 0x80]
call fcn.004a2a90
jmp 0x402c90
mov edx, dword [ebp - 0x90]
lea eax, [ebp - 0x68]
mov dword [ebp - 0x94], eax
mov ecx, eax
mov eax, dword [ebp - 0xa0]
mov dword [esp], edx
call eax
sub esp, 4
lea ecx, [ebp - 0x60]
mov dword [esp], str.FT60
call fcn.004ced60
lea eax, [ebp - 0x60]
sub esp, 4
mov ecx, dword [ebp - 0x94]
mov dword [esp + 4], 1
mov dword [esp], eax
call edi
sub esp, 8
test al, al
je 0x403b54
lea ecx, [ebp - 0x60]
call fcn.004ceda0
mov ecx, dword [ebp - 0x94]
call fcn.004ceda0
jmp 0x403764
mov eax, dword [ebp - 0x68]
mov dword [esp + 8], 4
mov dword [esp + 4], 1
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x403371
mov edi, dword [ebp - 0x8c]
mov dword [esp], str.Update_firmware_failed_please_plug_and_unplug_the_USB_port_and_try_again.
mov ecx, edi
call fcn.004ced60
sub esp, 4
mov ecx, esi
mov dword [esp], edi
call dword [0x716868]
jmp 0x403337
mov eax, dword [ebp - 0x68]
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x40394d
mov eax, dword [ebp - 0x58]
mov dword [esp + 8], 4
mov dword [esp + 4], 2
mov dword [esp], eax
call dword [0x715ed0]
jmp 0x403969
mov edx, dword [ebp - 0x90]
lea eax, [ebp - 0x58]
mov dword [ebp - 0xac], eax
mov ecx, eax
mov eax, dword [ebp - 0xa0]
mov dword [esp], edx
call eax
push eax
lea eax, [ebp - 0x50]
mov dword [esp], str.FT40
mov ecx, eax
mov dword [ebp - 0xa4], eax
call fcn.004ced60
mov eax, dword [ebp - 0xa4]
push ecx
mov ecx, dword [ebp - 0xac]
mov dword [esp + 4], 1
mov dword [esp], eax
call edi
test al, al
mov byte [ebp - 0x9c], 0
push edx
push edx
je 0x403bca
mov ecx, dword [ebp - 0xa4]
call fcn.004ceda0
mov ecx, dword [ebp - 0xac]
call fcn.004ceda0
jmp 0x403ab2
mov eax, dword [ebp - 0x90]
mov ecx, esi
mov dword [esp], eax
mov eax, dword [ebp - 0xa0]
call eax
mov ecx, dword [ebp - 0x8c]
push eax
mov dword [esp], str.RC60
call fcn.004ced60
push eax
mov eax, dword [ebp - 0x8c]
mov ecx, esi
mov dword [esp + 4], 1
mov dword [esp], eax
call edi
push ecx
push ecx
xor eax, 1
mov ecx, dword [ebp - 0x8c]
mov byte [ebp - 0x9c], al
call fcn.004ceda0
mov ecx, esi
call fcn.004ceda0
jmp 0x403baf
jmp 0x402a60