Function at 0x140002f30
Capabilities:
Check for time delay via gettickcount
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov rax, qword [0x140033008]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov r15, rdx
mov qword [rbp + 0x28], rdx
mov r12, rcx
mov qword [rbp + 0x30], rcx
mov qword [rbp + 0x38], rdx
xor edi, edi
mov dword [rbp + 0x50], edi
cmp qword [rdx + 0x18], 0x10
jb 0x140002f81
mov rdx, qword [rdx]
lea rcx, str._nStart__s_n
call fcn.140001060
cmp qword [r15 + 0x10], 0x1f
jbe 0x140003060
mov rbx, r15
cmp qword [r15 + 0x18], 0x10
jb 0x140002fa5
mov rbx, qword [r15]
mov ecx, 2
call fcn.140012278
mov rcx, rax
mov r8, rbx
lea rdx, str.Bluetooth_name__s_is_too_long__31_character_max__n
call fcn.140001010
nop
mov rdx, qword [r12 + 0x18]
cmp rdx, 0x10
jb 0x140002ffe
inc rdx
cmp rdx, 0x1000
mov rcx, qword [r12]
jb 0x140002ff9
mov r8, qword [rcx - 8]
sub rcx, r8
add rdx, 0x27
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400044d6
mov rcx, r8
call fcn.14000be9c
mov byte [r12], 0
mov qword [r12 + 0x18], 0xf
mov qword [r12 + 0x10], rdi
mov rdx, qword [r15 + 0x18]
cmp rdx, 0x10
jb 0x14000304b
inc rdx
cmp rdx, 0x1000
mov rcx, qword [r15]
jb 0x140003046
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140004518
mov rcx, r8
call fcn.14000be9c
mov qword [r15 + 0x10], rdi
mov qword [r15 + 0x18], 0xf
mov byte [r15], 0
jmp 0x1400044a4
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x70], xmm0
lea rdx, [rbp - 0x70]
lea rcx, [rsp + 0x48]
call fcn.1400067d0
nop
lea rax, [rbp + 0x40]
mov qword [rbp - 0x70], rax
xor eax, eax
mov qword [rbp + 0x48], rax
mov byte [rbp + 0x40], 3
lea ecx, [rax + 0x20]
call fcn.14000be60
mov rdx, rax
mov qword [rax + 8], rdi
mov qword [rax + 0x10], 7
mov qword [rax + 0x18], 0xf
mov rcx, qword [str.TM_Form]
mov dword [rax], ecx
movzx ecx, word [0x14002d86c]
mov word [rax + 4], cx
movzx eax, byte [0x14002d86e]
mov byte [rdx + 6], al
mov byte [rdx + 7], 0
mov qword [rbp + 0x48], rdx
xorps xmm0, xmm0
movups xmmword [rbp + 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x90], xmm1
mov r8d, 0xb
lea rdx, str._FormatName
lea rcx, [rbp + 0x80]
call fcn.1400082c0
nop
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x60]
call fcn.140005cd0
nop
mov rdx, qword [rbp + 0x98]
cmp rdx, 0x10
jb 0x14000314f
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000314a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044dc
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0x90], xmm0
mov byte [rbp + 0x80], 0
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x60]
call fcn.140006050
nop
movzx edx, byte [rax]
movzx ecx, byte [rbp + 0x40]
mov byte [rax], cl
mov byte [rbp + 0x40], dl
mov rcx, qword [rax + 8]
mov rdx, qword [rbp + 0x48]
mov qword [rax + 8], rdx
mov qword [rbp + 0x48], rcx
movzx edx, byte [rbp + 0x40]
lea rcx, [rbp + 0x48]
call fcn.140006310
nop
mov rcx, qword [rbp + 0x60]
test rcx, rcx
je 0x1400031ea
mov rdx, qword [rbp + 0x68]
call fcn.140009330
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x60]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400031e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044e2
call fcn.14000be9c
lea rax, [rbp + 0x40]
mov qword [rbp - 0x70], rax
xor eax, eax
mov qword [rbp + 0x48], rax
mov byte [rbp + 0x40], 3
lea ecx, [rax + 0x20]
call fcn.14000be60
nop
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 1
mov qword [rax + 0x18], 0xf
mov word [rax], 0x31
mov qword [rbp + 0x48], rax
movups xmmword [rbp + 0x80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x90], xmm1
mov r8d, 4
lea rdx, str._Rev
lea rcx, [rbp + 0x80]
call fcn.1400082c0
nop
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x60]
call fcn.140005cd0
nop
mov rdx, qword [rbp + 0x98]
cmp rdx, 0x10
jb 0x1400032a2
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000329d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044e8
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0x90], xmm0
mov byte [rbp + 0x80], 0
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x60]
call fcn.140006050
nop
movzx edx, byte [rax]
movzx ecx, byte [rbp + 0x40]
mov byte [rax], cl
mov byte [rbp + 0x40], dl
mov rcx, qword [rax + 8]
mov rdx, qword [rbp + 0x48]
mov qword [rax + 8], rdx
mov qword [rbp + 0x48], rcx
movzx edx, byte [rbp + 0x40]
lea rcx, [rbp + 0x48]
call fcn.140006310
nop
mov rcx, qword [rbp + 0x60]
test rcx, rcx
je 0x14000333d
mov rdx, qword [rbp + 0x68]
call fcn.140009330
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x60]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003338
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044ee
call fcn.14000be9c
lea rax, [rbp + 0x40]
mov qword [rbp - 0x70], rax
xor eax, eax
mov qword [rbp + 0x48], rax
mov byte [rbp + 0x40], 3
lea ecx, [rax + 0x20]
call fcn.14000be60
mov rbx, rax
lea rax, [rsp + 0x40]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], rbx
mov rdx, r15
mov rcx, rbx
call fcn.140004fc0
nop
mov qword [rbp + 0x48], rbx
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x70], xmm1
mov r8d, 0x27
lea rdx, str._Setting_Interface_Bluetooth_DeviceName
lea rcx, [rbp + 0x60]
call fcn.1400082c0
nop
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x80]
call fcn.140005cd0
nop
mov rdx, qword [rbp + 0x78]
cmp rdx, 0x10
jb 0x1400033e9
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400033e4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044f4
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0x70], xmm0
mov byte [rbp + 0x60], 0
lea rdx, [rsp + 0x48]
lea rcx, [rbp + 0x80]
call fcn.140006050
nop
movzx edx, byte [rax]
movzx ecx, byte [rbp + 0x40]
mov byte [rax], cl
mov byte [rbp + 0x40], dl
mov rcx, qword [rax + 8]
mov rdx, qword [rbp + 0x48]
mov qword [rax + 8], rdx
mov qword [rbp + 0x48], rcx
movzx edx, byte [rbp + 0x40]
lea rcx, [rbp + 0x48]
call fcn.140006310
nop
mov rcx, qword [rbp + 0x80]
test rcx, rcx
je 0x14000348d
mov rdx, qword [rbp + 0x88]
call fcn.140009330
mov rdx, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x80]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003488
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044fa
call fcn.14000be9c
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x48]
call fcn.140004a60
nop
mov rax, qword [rbp + 0xb0]
mov qword [rsp + 0x58], rax
add rax, 2
mov qword [rbp - 0x70], rax
cmp rax, 0xffff
jbe 0x140003545
mov ecx, 2
call fcn.140012278
mov rcx, rax
lea rdx, str.Configuration_information_too_long_n
call fcn.140001010
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0x10
jb 0x14000351a
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003515
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044d0
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xa0], 0
movzx edx, byte [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.140006310
jmp 0x140002fc2
mov dword [rbp + 0x60], 0x345281d
mov dword [rbp + 0x64], 0x4e490100
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], rdi
mov edx, 8
lea rcx, [rbp - 0x38]
call fcn.14000a300
mov rsi, qword [rbp - 0x38]
mov rax, qword [rbp + 0x60]
mov qword [rsi], rax
lea rax, [rsi + 8]
mov qword [rbp - 0x30], rax
mov dword [rbp + 0x40], 0x17f7c1c
mov dword [rbp + 0x44], 0x80fe01
mov byte [rbp + 0x48], 0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], rdi
mov edx, 9
lea rcx, [rbp + 0x10]
call fcn.14000a300
mov r8d, 9
lea rdx, [rbp + 0x40]
mov r13, qword [rbp + 0x10]
mov rcx, r13
call fcn.140011ae0
lea rbx, [r13 + 9]
mov qword [rbp + 0x18], rbx
mov dword [rbp + 0x50], 0x17f7c1c
mov dword [rbp + 0x54], 0x1fd02
mov byte [rbp + 0x58], 0
xorps xmm0, xmm0
movdqu xmmword [rbp - 8], xmm0
mov qword [rbp + 8], rdi
mov edx, 9
lea rcx, [rbp - 8]
call fcn.14000a300
mov r8d, 9
lea rdx, [rbp + 0x50]
mov r14, qword [rbp - 8]
mov rcx, r14
call fcn.140011ae0
lea rax, [r14 + 9]
mov qword [rbp], rax
mov dword [rbp + 0x60], 0x49281d
mov word [rbp + 0x64], 0x200
mov byte [rbp + 0x66], 0x80
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], rdi
mov edx, 7
lea rcx, [rbp - 0x50]
call fcn.14000a300
mov r8d, 7
lea rdx, [rbp + 0x60]
mov rdi, qword [rbp - 0x50]
mov rcx, rdi
call fcn.140011ae0
lea rax, [rdi + 7]
mov qword [rbp - 0x48], rax
mov rcx, qword [r15 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 0x14
jb 0x140004500
mov rax, r15
cmp qword [r15 + 0x18], 0x10
jb 0x140003685
mov rax, qword [r15]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0x14
lea r9, str._nBluetooth_Name:_n
lea rcx, [rbp + 0x80]
call fcn.14000a590
nop
mov r8d, 1
lea rdx, [0x14002d8c4]
lea rcx, [rbp + 0x80]
call fcn.140006b80
xorps xmm0, xmm0
movups xmmword [rbp + 0xc0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xd0], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xc0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xd0], xmm1
xor edi, edi
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
mov rdx, qword [rbp + 0x98]
cmp rdx, 0x10
jb 0x140003741
inc rdx
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000373c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004506
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0x90], xmm0
mov byte [rbp + 0x80], 0
mov dword [rbp + 0x60], 0x561d0a0a
mov word [rbp + 0x64], 0x42
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rdi
mov edx, 6
lea rcx, [rbp - 0x20]
call fcn.14000a300
mov r8d, 6
lea rdx, [rbp + 0x60]
mov rdi, qword [rbp - 0x20]
mov rcx, rdi
call fcn.140011ae0
lea r9, [rdi + 6]
mov qword [rbp - 0x18], r9
lea rdx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 0x10
cmovae rdx, qword [rbp + 0xc0]
mov rax, qword [rbp + 0xd0]
add rax, rdx
lea rdx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 0x10
cmovae rdx, qword [rbp + 0xc0]
mov qword [rbp + 0x50], rdx
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], 0
sub rax, rdx
mov qword [rbp + 0x40], rax
je 0x140003829
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.14000a300
mov r8, qword [rbp + 0x40]
mov rdx, qword [rbp + 0x50]
mov rcx, qword [rsp + 0x78]
call fcn.140011ae0
mov rdx, qword [rbp + 0x40]
add rdx, qword [rsp + 0x78]
mov qword [rbp - 0x80], rdx
lea rbx, [r13 + 9]
lea r9, [rdi + 6]
jmp 0x14000382d
mov rdx, qword [rbp - 0x80]
sub r9, rdi
mov r8, rdi
lea rcx, [rsp + 0x78]
call fcn.14000a850
lea r9, [rsi + 8]
sub r9, rsi
mov r8, rsi
mov rdx, qword [rbp - 0x80]
lea rcx, [rsp + 0x78]
call fcn.14000a850
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], 0
sub rbx, r13
je 0x140003898
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.14000a300
mov r8, rbx
mov rdx, r13
mov rcx, qword [rsp + 0x60]
call fcn.140011ae0
mov rdx, rbx
add rdx, qword [rsp + 0x60]
mov qword [rsp + 0x68], rdx
jmp 0x14000389d
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x58]
add al, 2
mov rcx, qword [rbp - 0x50]
mov byte [rcx + 3], al
mov rax, qword [rbp - 0x70]
shr rax, 8
mov byte [rcx + 4], al
lea r9, [rcx + 7]
sub r9, rcx
mov r8, rcx
lea rcx, [rsp + 0x60]
call fcn.14000a850
lea rdx, [rbp + 0xa0]
cmp qword [rbp + 0xb8], 0x10
cmovae rdx, qword [rbp + 0xa0]
mov r9, qword [rbp + 0xb0]
add r9, rdx
lea r8, [rbp + 0xa0]
cmp qword [rbp + 0xb8], 0x10
cmovae r8, qword [rbp + 0xa0]
sub r9, r8
mov rdx, qword [rsp + 0x68]
lea rcx, [rsp + 0x60]
call fcn.14000a850
mov qword [rbp + 0x40], 0
mov rcx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x14000392b
mov rcx, qword [r12]
mov rbx, qword [r12 + 0x10]
mov qword [rsp + 0x20], 0x11
lea r9, str.vid_04b8pid_0202
xor r8d, r8d
mov rdx, rbx
call fcn.1400081f0
cmp rax, 0xffffffffffffffff
je 0x140003b40
mov rdx, r12
lea rcx, [rbp + 0x80]
call fcn.140004fc0
lea rdx, [rbp + 0x40]
mov rcx, rax
call fcn.140002780
test al, al
jne 0x140003b34
lea rcx, [rsp + 0x60]
call fcn.140004d50
nop
lea rcx, [rsp + 0x78]
call fcn.140004d50
nop
lea rcx, [rbp - 0x20]
call fcn.140004d50
nop
lea rcx, [rbp + 0xc0]
call fcn.140004df0
nop
lea rcx, [rbp - 0x50]
call fcn.140004d50
nop
lea rcx, [rbp - 8]
call fcn.140004d50
nop
test r13, r13
je 0x1400039f3
mov rdx, qword [rbp + 0x20]
sub rdx, r13
mov rax, r13
cmp rdx, 0x1000
jb 0x1400039ea
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000453c
mov rcx, r13
call fcn.14000be9c
nop
test rsi, rsi
je 0x140003a2d
mov rdx, qword [rbp - 0x28]
sub rdx, rsi
mov rax, rsi
cmp rdx, 0x1000
jb 0x140003a24
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004542
mov rcx, rsi
call fcn.14000be9c
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0x10
jb 0x140003a6e
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003a69
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044d0
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xa0], 0
movzx edx, byte [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.140006310
nop
mov rdx, qword [r12 + 0x18]
cmp rdx, 0x10
jb 0x140003ad1
mov rcx, qword [r12]
inc rdx
cmp rdx, 0x1000
jb 0x140003acc
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400044d6
mov rcx, r8
call fcn.14000be9c
xor ebx, ebx
mov qword [r12 + 0x10], rbx
mov qword [r12 + 0x18], 0xf
mov byte [r12], bl
mov rdx, qword [r15 + 0x18]
cmp rdx, 0x10
jb 0x140003b1f
inc rdx
mov rcx, qword [r15]
cmp rdx, 0x1000
jb 0x140003b1a
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140004518
mov rcx, r8
call fcn.14000be9c
mov qword [r15 + 0x10], rbx
mov qword [r15 + 0x18], 0xf
mov byte [r15], 0
jmp 0x1400044a4
mov r14, qword [rbp + 0x40]
mov qword [rbp + 0x40], r14
xor ebx, ebx
jmp 0x140003bbc
mov rcx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x140003b4f
mov rcx, qword [r12]
mov qword [rsp + 0x20], 0xf
lea r9, str.vid_04b8pid_0e
xor r8d, r8d
mov rdx, rbx
call fcn.1400081f0
cmp rax, 0xffffffffffffffff
je 0x140004222
mov rcx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x140003b83
mov rcx, qword [r12]
xor ebx, ebx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0xc0000000
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov r14, rax
mov qword [rbp + 0x40], rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x140004170
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov rdi, rbx
mov qword [rbp - 0x60], rbx
mov dword [rbp + 0x50], 0x7f
call qword [sym.imp.KERNEL32.dll_GetTickCount]
add eax, 0x3e8
mov dword [rbp + 0x60], eax
mov dword [rsp + 0x58], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x58]
mov r8d, 1
lea rdx, [rsp + 0x40]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140003c9c
mov rbx, qword [rbp - 0x68]
mov r15d, dword [rbp + 0x60]
call qword [sym.imp.KERNEL32.dll_GetTickCount]
cmp eax, r15d
jae 0x140003c98
cmp dword [rsp + 0x58], 0
jbe 0x140003c63
cmp rbx, rdi
je 0x140003c39
movzx eax, byte [rsp + 0x40]
mov byte [rbx], al
inc rbx
mov qword [rbp - 0x68], rbx
jmp 0x140003c52
lea r8, [rsp + 0x40]
mov rdx, rbx
lea rcx, [rbp - 0x70]
call fcn.14000aa90
mov rdi, qword [rbp - 0x60]
mov rbx, qword [rbp - 0x68]
mov dword [rsp + 0x58], 0
cmp byte [rsp + 0x40], 0
je 0x140003c98
jmp 0x140003c6e
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x58]
mov r8d, 1
lea rdx, [rsp + 0x40]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x140003c12
mov r15, qword [rbp + 0x28]
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x140003cd5
sub rdi, rcx
mov rax, rcx
cmp rdi, 0x1000
jb 0x140003ccd
add rdi, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000450c
mov rdx, rdi
call fcn.14000be9c
mov byte [rsp + 0x40], 0
mov dword [rsp + 0x44], 0
mov r8, qword [rbp - 0x80]
mov rdx, qword [rsp + 0x78]
sub r8, rdx
mov rcx, r14
call fcn.140002e60
test al, al
jne 0x140003d15
mov ecx, 2
call fcn.140012278
mov rcx, rax
lea rdx, str.Printer_incomplete_write_n
call fcn.140001010
jmp 0x140003d30
mov rdx, r14
lea rcx, [rbp + 0x80]
call fcn.140002da0
lea rcx, [rbp + 0x80]
call fcn.140004d50
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x60]
sub rbx, rdi
mov r8, rbx
mov rdx, rdi
mov rcx, r14
call fcn.140002e60
test al, al
jne 0x140003d6d
mov ecx, 2
call fcn.140012278
mov rcx, rax
lea rdx, str.Printer_incomplete_write_n
call fcn.140001010
jmp 0x140003e3e
lea rdx, [rsp + 0x44]
mov rcx, r14
call fcn.140002cd0
test al, al
jne 0x140003da6
movzx ebx, byte [rsp + 0x47]
movzx edi, byte [rsp + 0x46]
movzx esi, byte [rsp + 0x45]
movzx r14d, byte [rsp + 0x44]
mov ecx, 2
call fcn.140012278
lea rdx, str.Printer_incomplete_invalid_response__02x__02x__02x__02x_n
jmp 0x140003dd2
movzx eax, byte [rsp + 0x46]
cmp al, 0x30
je 0x140003df7
movzx ebx, byte [rsp + 0x47]
mov edi, eax
movzx esi, byte [rsp + 0x45]
movzx r14d, byte [rsp + 0x44]
mov ecx, 2
call fcn.140012278
lea rdx, str.Printer_returned_invalid_response__02x__02x__02x__02x_n
mov dword [rsp + 0x28], ebx
mov r8d, r14d
mov r9d, esi
mov dword [rsp + 0x20], edi
mov rcx, rax
call fcn.140001010
mov rsi, qword [rbp - 0x38]
mov r14, qword [rbp + 0x40]
mov rdi, qword [rsp + 0x60]
jmp 0x140003e3e
mov r8, rbx
mov rdx, rdi
mov rcx, r14
call fcn.140002e60
test al, al
jne 0x140003e22
mov ecx, 2
call fcn.140012278
mov rcx, rax
lea rdx, str.Printer_incomplete_write_n
call fcn.140001010
mov rcx, r15
call fcn.140004dc0
mov rdx, rax
lea rcx, str.Bluetooth_name__s_configured_n
call fcn.140001060
mov byte [rsp + 0x40], 1
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x140003e70
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov ecx, 2
call fcn.140012278
mov rcx, rax
mov r8d, ebx
lea rdx, str.CloseHandle___error_error_code__d_n
call fcn.140001010
nop
test rdi, rdi
je 0x140003eab
mov rdx, qword [rsp + 0x70]
sub rdx, rdi
mov rax, rdi
cmp rdx, 0x1000
jb 0x140003ea2
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000451e
mov rcx, rdi
call fcn.14000be9c
nop
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x140003ee7
mov rdx, qword [rbp - 0x78]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003ee1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004524
call fcn.14000be9c
nop
mov rcx, qword [rbp - 0x20]
test rcx, rcx
je 0x140003f22
mov rdx, qword [rbp - 0x10]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003f1c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000452a
call fcn.14000be9c
nop
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0x10
jb 0x140003f63
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003f5e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004530
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0xd0], xmm0
mov byte [rbp + 0xc0], 0
mov rcx, qword [rbp - 0x50]
test rcx, rcx
je 0x140003fb5
mov rdx, qword [rbp - 0x40]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003faf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004512
call fcn.14000be9c
nop
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x140003ff0
mov rdx, qword [rbp + 8]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003fea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004536
call fcn.14000be9c
nop
test r13, r13
je 0x14000402a
mov rdx, qword [rbp + 0x20]
sub rdx, r13
mov rax, r13
cmp rdx, 0x1000
jb 0x140004021
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000453c
mov rcx, r13
call fcn.14000be9c
nop
test rsi, rsi
je 0x140004064
mov rdx, qword [rbp - 0x28]
sub rdx, rsi
mov rax, rsi
cmp rdx, 0x1000
jb 0x14000405b
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004542
mov rcx, rsi
call fcn.14000be9c
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0x10
jb 0x1400040a5
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400040a0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044d0
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xa0], 0
movzx edx, byte [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.140006310
nop
mov rdx, qword [r12 + 0x18]
cmp rdx, 0x10
jb 0x140004108
mov rcx, qword [r12]
inc rdx
cmp rdx, 0x1000
jb 0x140004103
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400044d6
mov rcx, r8
call fcn.14000be9c
xor ebx, ebx
mov qword [r12 + 0x10], rbx
mov qword [r12 + 0x18], 0xf
mov byte [r12], bl
mov rdx, qword [r15 + 0x18]
cmp rdx, 0x10
jb 0x140004156
inc rdx
mov rcx, qword [r15]
cmp rdx, 0x1000
jb 0x140004151
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140004518
mov rcx, r8
call fcn.14000be9c
mov qword [r15 + 0x10], rbx
mov qword [r15 + 0x18], 0xf
mov byte [r15], 0
movzx eax, byte [rsp + 0x40]
jmp 0x1400044a6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov rcx, r12
call fcn.140004dc0
mov rbx, rax
mov ecx, 2
call fcn.140012278
mov rcx, rax
mov r9d, edi
mov r8, rbx
lea rdx, str.CreateFile__s__error_error_code__d_n
call fcn.140001010
nop
lea rcx, [rsp + 0x60]
call fcn.140004d50
nop
lea rcx, [rsp + 0x78]
call fcn.140004d50
nop
lea rcx, [rbp - 0x20]
call fcn.140004d50
nop
lea rcx, [rbp + 0xc0]
call fcn.140004df0
nop
lea rcx, [rbp - 0x50]
call fcn.140004d50
nop
lea rcx, [rbp - 8]
call fcn.140004d50
nop
lea rcx, [rbp + 0x10]
call fcn.140004d50
nop
lea rcx, [rbp - 0x38]
call fcn.140004d50
nop
lea rcx, [rbp + 0xa0]
call fcn.140004df0
nop
movzx edx, byte [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.140006310
nop
mov rcx, r12
call fcn.140004df0
jmp 0x14000449c
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x14000425f
mov rdx, qword [rsp + 0x70]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004259
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000451e
call fcn.14000be9c
nop
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x14000429b
mov rdx, qword [rbp - 0x78]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004295
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004524
call fcn.14000be9c
nop
test rdi, rdi
je 0x1400042d5
mov rdx, qword [rbp - 0x10]
sub rdx, rdi
mov rax, rdi
cmp rdx, 0x1000
jb 0x1400042cc
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000452a
mov rcx, rdi
call fcn.14000be9c
nop
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0x10
jb 0x140004316
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004311
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004530
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0xd0], xmm0
mov byte [rbp + 0xc0], 0
lea rcx, [rbp - 0x50]
call fcn.140004d50
nop
test r14, r14
je 0x140004371
mov rdx, qword [rbp + 8]
sub rdx, r14
mov rax, r14
cmp rdx, 0x1000
jb 0x140004368
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004536
mov rcx, r14
call fcn.14000be9c
nop
test r13, r13
je 0x1400043ab
mov rdx, qword [rbp + 0x20]
sub rdx, r13
mov rax, r13
cmp rdx, 0x1000
jb 0x1400043a2
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000453c
mov rcx, r13
call fcn.14000be9c
nop
test rsi, rsi
je 0x1400043e5
mov rdx, qword [rbp - 0x28]
sub rdx, rsi
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400043dc
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004542
mov rcx, rsi
call fcn.14000be9c
nop
mov rdx, qword [rbp + 0xb8]
cmp rdx, 0x10
jb 0x140004426
inc rdx
mov rcx, qword [rbp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140004421
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400044d0
call fcn.14000be9c
movdqa xmm0, xmmword [0x14002e590]
movdqu xmmword [rbp + 0xb0], xmm0
mov byte [rbp + 0xa0], 0
movzx edx, byte [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.140006310
nop
mov rdx, qword [r12 + 0x18]
cmp rdx, 0x10
jb 0x140004485
mov rcx, qword [r12]
inc rdx
cmp rdx, 0x1000
jb 0x140004480
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400044d6
mov rcx, r8
call fcn.14000be9c
mov qword [r12 + 0x10], 0
mov qword [r12 + 0x18], 0xf
mov byte [r12], 0
mov rcx, r15
call fcn.140004df0
xor al, al
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.14000be40
mov rbx, qword [rsp + 0x260]
add rsp, 0x210
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400012d0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
nop
call fcn.1400159f0
int3