Function at 0x43fa10
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push edi
push esi
mov esi, eax
push ebx
sub esp, 0xa40
cmp byte [0x732fa1], 0
mov ebx, dword [eax + 0x14]
jne 0x43fa30
cmp dword [ebx + 0x21c], 4
je 0x43fa93
cmp byte [0x745ef7], 0
jne 0x43fa46
cmp byte [0x732fa0], 0
je 0x43fd30
mov eax, dword [esi + 8]
lea edi, [esp + 0x40]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 4]
mov eax, dword [eax + 8]
mov dword [esp + 8], str._d:__s__d___Toggling_ASIC_nRST_to_reset
mov dword [esp + 4], 0xa00
mov dword [esp], edi
mov dword [esp + 0x10], eax
mov eax, dword [esi]
mov dword [esp + 0xc], eax
call sym._snprintf_5
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov eax, dword [ebx + 0x21c]
mov dword [esp], eax
call sym.__applog
mov eax, dword [ebx]
cmp eax, 0x32
je 0x43fd50
cmp eax, 0x33
jne 0x440161
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], 0x3e8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0xa1
mov dword [esp + 4], 0x40
mov eax, dword [eax + 4]
mov dword [esp], eax
call sym._libusb_control_transfer_32
sub esp, 0x20
test eax, eax
js 0x4400f0
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], 0x3e8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0xc3
mov dword [esp + 0xc], 0x2518
mov dword [esp + 8], 0x9a
mov dword [esp + 4], 0x40
mov eax, dword [eax + 4]
mov dword [esp], eax
call sym._libusb_control_transfer_32
sub esp, 0x20
test eax, eax
js 0x440090
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], 0x3e8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0xd90a
mov dword [esp + 0xc], 0x501f
mov dword [esp + 8], 0xa1
mov dword [esp + 4], 0x40
mov eax, dword [eax + 4]
mov dword [esp], eax
call sym._libusb_control_transfer_32
sub esp, 0x20
test eax, eax
js 0x440030
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], 0x3e8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0xcc03
mov dword [esp + 0xc], 0x1312
mov dword [esp + 8], 0x9a
mov dword [esp + 4], 0x40
mov eax, dword [eax + 4]
mov dword [esp], eax
call sym._libusb_control_transfer_32
sub esp, 0x20
test eax, eax
js 0x43ffd0
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], 0x3e8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 8
mov dword [esp + 0xc], 0xf2c
mov dword [esp + 8], 0x9a
mov dword [esp + 4], 0x40
mov eax, dword [eax + 4]
mov dword [esp], eax
call sym._libusb_control_transfer_32
sub esp, 0x20
test eax, eax
js 0x43ff70
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], 0x3e8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffbf
mov dword [esp + 8], 0xa4
mov dword [esp + 4], 0x40
mov eax, dword [eax + 4]
mov dword [esp], eax
call sym._libusb_control_transfer_32
mov edx, 0x7a120
sub esp, 0x20
mov eax, ebx
call sym._btm_usleep.part.5
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], 0x3e8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x40
mov dword [esp + 8], 0xa4
mov dword [esp + 4], 0x40
mov eax, dword [eax + 4]
mov dword [esp], eax
call sym._libusb_control_transfer_32
mov edx, 0x2710
sub esp, 0x20
mov eax, ebx
call sym._btm_usleep.part.5
mov edx, 0x7530
mov eax, ebx
call sym._btm_usleep.part.5
cmp dword [ebx + 8], 1
je 0x440150
mov edx, 0x7530
mov eax, ebx
call sym._btm_usleep.part.5
mov eax, ebx
mov edx, 0x30d40
add ebx, 0x274
call sym._btm_usleep.part.5
mov dword [esp], ebx
call sym._cgtime
add esp, 0xa40
pop ebx
pop esi
pop edi
ret
mov eax, dword [0x5bc2e0]
cmp dword [ebx + 0x21c], eax
jle 0x43fa46
mov eax, dword [ebx]
cmp eax, 0x32
jne 0x43fa9e
lea esi, [esi]
mov edx, 0x1c200
mov eax, esi
call sym.__init_cp2102
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], 0x3e8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x302
mov dword [esp + 8], 7
mov dword [esp + 4], 0x40
mov eax, dword [eax + 4]
mov dword [esp], eax
call sym._libusb_control_transfer_32
sub esp, 0x20
lea edi, [esp + 0x20]
lea eax, [esp + 0x24]
mov dword [esp], esi
mov dword [esp + 0x1c], 0x29
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0xa0d30
call sym.__usb_write
lea eax, [esp + 0x28]
mov dword [esp + 0x14], edi
mov dword [esp], esi
mov dword [esp + 0x1c], 0x29
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0xb
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp + 0x28], 0x65726f63
mov dword [esp + 0x2c], 0x3a6e655f
mov dword [esp + 0x30], 0xa0d31
call sym.__usb_write
lea eax, [esp + 0x34]
mov dword [esp + 0x14], edi
mov dword [esp], esi
mov dword [esp + 0x1c], 0x29
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0xb
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp + 0x34], 0x65726f63
mov dword [esp + 0x38], 0x3a73725f
mov dword [esp + 0x3c], 0xa0d31
call sym.__usb_write
mov edx, 0x186a0
mov eax, ebx
call sym._btm_usleep.part.5
lea eax, [esp + 0x40]
mov dword [esp + 0x14], edi
mov dword [esp], esi
mov dword [esp + 0x1c], 0x29
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0xb
mov dword [esp + 0xc], eax
mov dword [esp + 8], 1
mov dword [esp + 4], 0
mov dword [esp + 0x40], 0x65726f63
mov dword [esp + 0x44], 0x3a73725f
mov dword [esp + 0x48], 0xa0d30
call sym.__usb_write
mov eax, ebx
mov edx, 0x2710
call sym._btm_usleep.part.5
mov edx, 0x1c200
mov eax, esi
call sym.__init_cp2102
mov eax, dword [esi + 0x20]
mov dword [esp + 0x1c], 0x3e8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x300
mov dword [esp + 8], 7
mov dword [esp + 4], 0x40
mov eax, dword [eax + 4]
mov dword [esp], eax
call sym._libusb_control_transfer_32
mov edx, 0x186a0
sub esp, 0x20
mov eax, ebx
call sym._btm_usleep.part.5
jmp 0x43fce6
cmp byte [0x745ef7], 0
jne 0x43ff8f
cmp byte [0x732fa0], 0
jne 0x43ff8f
mov eax, dword [0x5bc2e0]
test eax, eax
js 0x43fc3c
lea edi, [esp + 0x40]
mov dword [esp + 8], str.Error_set_baudrate_control_register
mov dword [esp + 4], 0xa00
mov dword [esp], edi
call sym._snprintf_5
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov dword [esp], 0
call sym.__applog
jmp 0x43fc3c
cmp byte [0x745ef7], 0
jne 0x43fff0
cmp byte [0x732fa0], 0
jne 0x43fff0
mov edx, dword [0x5bc2e0]
test edx, edx
js 0x43fbeb
lea edi, [esp + 0x40]
mov dword [esp + 8], str.Error_set_baudrate
mov dword [esp + 4], 0xa00
mov dword [esp], edi
call sym._snprintf_5
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov dword [esp], 0
call sym.__applog
jmp 0x43fbeb
cmp byte [0x745ef7], 0
jne 0x440050
cmp byte [0x732fa0], 0
jne 0x440050
mov ecx, dword [0x5bc2e0]
test ecx, ecx
js 0x43fb9a
lea edi, [esp + 0x40]
mov dword [esp + 8], str.failed_control_transfer_0xa1_0x501f_n
mov dword [esp + 4], 0xa00
mov dword [esp], edi
call sym._snprintf_5
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov dword [esp], 0
call sym.__applog
jmp 0x43fb9a
cmp byte [0x745ef7], 0
jne 0x4400b0
cmp byte [0x732fa0], 0
jne 0x4400b0
mov edi, dword [0x5bc2e0]
test edi, edi
js 0x43fb49
lea edi, [esp + 0x40]
mov dword [esp + 8], str.failed_control_transfer_0x9a_0x2518_n
mov dword [esp + 4], 0xa00
mov dword [esp], edi
call sym._snprintf_5
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov dword [esp], 0
call sym.__applog
jmp 0x43fb49
cmp byte [0x745ef7], 0
jne 0x44010f
cmp byte [0x732fa0], 0
jne 0x44010f
mov eax, dword [0x5bc2e0]
test eax, eax
js 0x43faf8
lea edi, [esp + 0x40]
mov dword [esp + 8], str.failed_control_transfer_0xa1_n
mov dword [esp + 4], 0xa00
mov dword [esp], edi
call sym._snprintf_5
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov dword [esp], 0
call sym.__applog
jmp 0x43faf8
mov edx, 0xf4240
mov eax, ebx
call sym._btm_usleep
jmp 0x43fd08
cmp byte [0x745ef7], 0
jne 0x44017c
cmp byte [0x732fa0], 0
jne 0x44017c
cmp dword [0x5bc2e0], 0
js 0x4401b0
lea ebx, [esp + 0x40]
mov dword [esp + 8], str.Device_not_found
mov dword [esp + 4], 0xa00
mov dword [esp], ebx
call sym._snprintf_5
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov dword [esp], 0
call sym.__applog
call sym._abort
lea esi, [esi]
lea edi, [edi]