Function at 0x4043b0
Capabilities:
Set registry value

Disassembly:
mov r11, rsp
sub rsp, 0x338
mov qword [rsp + 0xa0], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rbp
mov qword [r11 - 8], rsi
mov qword [r11 - 0x10], rdi
mov qword [r11 - 0x18], r12
mov qword [r11 - 0x20], r13
mov qword [r11 - 0x28], r14
mov qword [r11 - 0x30], r15
movdqa xmmword [r11 - 0x48], xmm6
mov rax, qword [0x0041c058]
xor rax, rsp
mov qword [rsp + 0x2e0], rax
mov r13, rdx
movsxd rdi, ecx
mov qword [r11 - 0x260], 7
xor r14d, r14d
mov qword [r11 - 0x268], r14
mov word [r11 - 0x278], r14w
lea rcx, [rsp + 0x50]
call fcn.004057a0
mov qword [rsp + 0x58], rax
mov byte [rax + 0x69], 1
mov rax, qword [rsp + 0x58]
mov qword [rax + 8], rax
mov rax, qword [rsp + 0x58]
mov qword [rax], rax
mov rax, qword [rsp + 0x58]
mov qword [rax + 0x10], rax
mov qword [rsp + 0x60], r14
mov word [rsp + 0xe0], r14w
xor edx, edx
mov r8d, 0x1fc
lea rcx, [rsp + 0xe2]
call fcn.00409ef0
lea rcx, str._r_nSOL__Serial_over_LAN__port_assignment_utility__x64__r_n
call fcn.00406d90
mov ebp, 1
cmp edi, ebp
jle 0x404a82
mov r12, rdi
movabs r15, 0x7ffffffffffffffe
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
nop
nop
nop
mov rsi, qword [r13 + rbp*8]
xor eax, eax
mov rcx, 0xffffffffffffffff
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea rdi, [rcx - 1]
lea rax, [rsp + 0xc0]
mov rcx, qword [rsp + 0xc0]
cmp r10, 8
cmovae rax, rcx
cmp rsi, rax
jb 0x404681
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, rcx
lea rax, [rax + r8*2]
cmp rax, rsi
jbe 0x404681
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, rcx
sub rsi, rax
sar rsi, 1
cmp r8, rsi
jae 0x404539
call fcn.004059a0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
mov rax, r8
sub rax, rsi
cmp rax, rdi
cmovb rdi, rax
mov rax, 0xffffffffffffffff
sub rax, r8
cmp rax, rdi
jbe 0x40455e
lea rax, [rdi + r8]
cmp rax, r8
jae 0x404573
call fcn.004058d0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
test rdi, rdi
je 0x40479c
lea rbx, [rdi + r8]
cmp rbx, r15
jbe 0x40459a
call fcn.004058d0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
cmp r10, rbx
jae 0x4045c1
mov rdx, rbx
lea rcx, [rsp + 0xb8]
call fcn.00403770
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x4045fb
test rbx, rbx
jne 0x4045fb
mov qword [rsp + 0xd0], r14
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, qword [rsp + 0xc0]
mov word [rax], bx
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x40479c
test rbx, rbx
je 0x40479c
lea rdx, [rsp + 0xc0]
mov rcx, qword [rsp + 0xc0]
cmp r10, 8
cmovae rdx, rcx
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, rcx
sub r10, r8
lea rcx, [rax + r8*2]
lea r9, [rdi + rdi]
lea r8, [rdx + rsi*2]
lea rdx, [r10 + r10]
call fcn.00406710
mov qword [rsp + 0xd0], rbx
lea rax, [rsp + 0xc0]
cmp qword [rsp + 0xd8], 8
cmovae rax, qword [rsp + 0xc0]
mov word [rax + rbx*2], 0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x40479c
mov rax, 0xffffffffffffffff
sub rax, r8
cmp rax, rdi
jbe 0x404699
lea rax, [rdi + r8]
cmp rax, r8
jae 0x4046ae
call fcn.004058d0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
test rdi, rdi
je 0x40479c
lea rbx, [rdi + r8]
cmp rbx, r15
jbe 0x4046d5
call fcn.004058d0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
cmp r10, rbx
jae 0x4046fc
mov rdx, rbx
lea rcx, [rsp + 0xb8]
call fcn.00403770
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x404733
test rbx, rbx
jne 0x404733
mov qword [rsp + 0xd0], r14
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, qword [rsp + 0xc0]
mov word [rax], bx
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x40479c
test rbx, rbx
je 0x40479c
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, qword [rsp + 0xc0]
sub r10, r8
lea rcx, [rax + r8*2]
lea r9, [rdi + rdi]
lea rdx, [r10 + r10]
mov r8, rsi
call fcn.00406710
mov qword [rsp + 0xd0], rbx
lea rax, [rsp + 0xc0]
cmp qword [rsp + 0xd8], 8
cmovae rax, qword [rsp + 0xc0]
mov word [rax + rbx*2], 0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
lea rax, [rsp + 0xc0]
mov rcx, qword [rsp + 0xc0]
cmp r10, 8
cmovae rax, rcx
lea rsi, [0x004185a0]
cmp rsi, rax
jb 0x40495e
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, rcx
lea rax, [rax + r8*2]
cmp rax, rsi
jbe 0x40495e
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, rcx
sub rsi, rax
sar rsi, 1
cmp r8, rsi
jae 0x404811
call fcn.004059a0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
mov rax, r8
sub rax, rsi
mov ebx, 1
cmp rax, rbx
cmovb rbx, rax
mov rax, 0xffffffffffffffff
sub rax, r8
cmp rax, rbx
jbe 0x40483b
lea rax, [rbx + r8]
cmp rax, r8
jae 0x404850
call fcn.004058d0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
test rbx, rbx
je 0x404a73
lea rdi, [rbx + r8]
cmp rdi, r15
jbe 0x404877
call fcn.004058d0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
cmp r10, rdi
jae 0x40489e
mov rdx, rdi
lea rcx, [rsp + 0xb8]
call fcn.00403770
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x4048d8
test rdi, rdi
jne 0x4048d8
mov qword [rsp + 0xd0], r14
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, qword [rsp + 0xc0]
mov word [rax], di
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x404a73
test rdi, rdi
je 0x404a73
lea rdx, [rsp + 0xc0]
mov rcx, qword [rsp + 0xc0]
cmp r10, 8
cmovae rdx, rcx
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, rcx
sub r10, r8
lea rcx, [rax + r8*2]
lea r9, [rbx + rbx]
lea r8, [rdx + rsi*2]
lea rdx, [r10 + r10]
call fcn.00406710
mov qword [rsp + 0xd0], rdi
lea rax, [rsp + 0xc0]
cmp qword [rsp + 0xd8], 8
cmovae rax, qword [rsp + 0xc0]
mov word [rax + rdi*2], 0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x404a73
mov rax, 0xffffffffffffffff
sub rax, r8
cmp rax, 1
jbe 0x404977
lea rax, [r8 + 1]
cmp rax, r8
jae 0x40498c
call fcn.004058d0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
lea rdi, [r8 + 1]
cmp rdi, r15
jbe 0x4049aa
call fcn.004058d0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
cmp r10, rdi
jae 0x4049d1
mov rdx, rdi
lea rcx, [rsp + 0xb8]
call fcn.00403770
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x404a08
test rdi, rdi
jne 0x404a08
mov qword [rsp + 0xd0], r14
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, qword [rsp + 0xc0]
mov word [rax], di
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
jmp 0x404a73
test rdi, rdi
je 0x404a73
lea rax, [rsp + 0xc0]
cmp r10, 8
cmovae rax, qword [rsp + 0xc0]
sub r10, r8
lea rcx, [rax + r8*2]
lea rdx, [r10 + r10]
mov r9d, 2
mov r8, rsi
call fcn.00406710
mov qword [rsp + 0xd0], rdi
lea rax, [rsp + 0xc0]
cmp qword [rsp + 0xd8], 8
cmovae rax, qword [rsp + 0xc0]
mov word [rax + rdi*2], 0
mov r10, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
add rbp, 1
cmp rbp, r12
jl 0x4044b0
jmp 0x404a8a
mov r10, qword [rsp + 0xd8]
lea rdx, [rsp + 0xc0]
cmp r10, 8
cmovae rdx, qword [rsp + 0xc0]
lea r8, str.port
lea rcx, [rsp + 0x50]
call fcn.004011d0
test eax, eax
je 0x404c79
lea rcx, str.Error_in_command_line._r_nUsage:_MEcp64__did__DID___port__port__r_n_r_n
call fcn.00406d90
nop
mov rsi, qword [rsp + 0x58]
mov rax, qword [rsi]
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x70], rcx
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
cmp rax, rax
jne 0x404b8a
mov rdi, qword [rsi + 8]
mov rbx, rdi
cmp byte [rdi + 0x69], 0
jne 0x404b6b
nop
mov rdx, qword [rbx + 0x10]
lea rcx, [rsp + 0x50]
call fcn.00405820
mov rbx, qword [rbx]
cmp qword [rdi + 0x60], 8
jb 0x404b21
mov rcx, qword [rdi + 0x48]
call fcn.00406700
mov qword [rdi + 0x60], 7
mov qword [rdi + 0x58], r14
mov word [rdi + 0x48], 0
cmp qword [rdi + 0x38], 8
jb 0x404b43
mov rcx, qword [rdi + 0x20]
call fcn.00406700
mov qword [rdi + 0x38], 7
mov qword [rdi + 0x30], r14
mov word [rdi + 0x20], 0
mov rcx, rdi
call fcn.00406700
mov rdi, rbx
cmp byte [rbx + 0x69], 0
je 0x404b00
mov rsi, qword [rsp + 0x58]
mov qword [rsi + 8], rsi
mov qword [rsp + 0x60], r14
mov rax, qword [rsp + 0x58]
mov qword [rax], rax
mov rax, qword [rsp + 0x58]
mov qword [rax + 0x10], rax
jmp 0x404c43
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
test rbx, rbx
je 0x404ba3
lea rax, [rsp + 0x50]
cmp rbx, rax
je 0x404ba8
call fcn.00406620
cmp rdi, rsi
je 0x404c43
movaps xmm6, xmmword [rsp + 0x70]
test rbx, rbx
jne 0x404bc0
call fcn.00406620
cmp byte [rdi + 0x69], 0
je 0x404bcd
call fcn.00406620
jmp 0x404c1b
mov rax, qword [rdi + 0x10]
cmp byte [rax + 0x69], 0
jne 0x404bf6
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x69], 0
jne 0x404bef
mov rdi, rax
mov rax, qword [rax]
cmp byte [rax + 0x69], 0
je 0x404be3
mov qword [rsp + 0x78], rdi
jmp 0x404c1b
mov rax, qword [rdi + 8]
cmp byte [rax + 0x69], 0
jne 0x404c13
cmp rdi, qword [rax + 0x10]
jne 0x404c13
mov rdi, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x69], 0
je 0x404c00
mov rdi, rax
mov qword [rsp + 0x78], rax
movdqa xmmword [rsp + 0x90], xmm6
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x50]
call fcn.00405030
jmp 0x404b94
mov rcx, qword [rsp + 0x58]
call fcn.00406700
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], r14
cmp qword [rsp + 0xd8], 8
jb 0x404c6f
mov rcx, qword [rsp + 0xc0]
call fcn.00406700
mov eax, 0xff
jmp 0x404e2e
lea rdx, [0x00418518]
lea rcx, [rsp + 0x50]
call fcn.00401760
test eax, eax
je 0x404df9
lea rdx, str.port
lea rcx, [rsp + 0x50]
call fcn.00401760
test eax, eax
je 0x404df9
lea rdx, str.port
lea rcx, [rsp + 0x50]
call fcn.00401b00
mov rcx, rax
call fcn.004069f0
mov edi, eax
lea ecx, [rax - 1]
cmp ecx, 0xfe
ja 0x404dc2
lea rdx, [0x00418518]
lea rcx, [rsp + 0x50]
call fcn.00401b00
mov rcx, rax
mov r9d, 0xff
lea r8, [rsp + 0xe0]
mov edx, edi
call fcn.00403bc0
mov qword [rsp + 0x40], r14
lea rax, [rsp + 0x80]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0xf023f
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
lea rdx, str.SoftwareIntelAMT
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x404d9b
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0xe0]
repne scasw ax, word [rdi]
not rcx
lea eax, [rcx + rcx]
mov dword [rsp + 0x28], eax
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
lea rdx, str.CPResult
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
nop
lea rcx, [rsp + 0x50]
call fcn.00404ee0
nop
cmp qword [rsp + 0xd8], 8
jb 0x404dbe
mov rcx, qword [rsp + 0xc0]
call fcn.00406700
xor eax, eax
jmp 0x404e2e
lea rcx, str.Invalid_com_port_provided_r_n
call fcn.00406d90
nop
lea rcx, [rsp + 0x50]
call fcn.00404ee0
nop
cmp qword [rsp + 0xd8], 8
jb 0x404df2
mov rcx, qword [rsp + 0xc0]
call fcn.00406700
mov eax, 0xff
jmp 0x404e2e
lea rcx, str.Error_in_command_line._r_nUsage:_MEcp64__did__DID___port__port__r_n_r_n
call fcn.00406d90
nop
lea rcx, [rsp + 0x50]
call fcn.00404ee0
nop
cmp qword [rsp + 0xd8], 8
jb 0x404e29
mov rcx, qword [rsp + 0xc0]
call fcn.00406700
mov eax, 0xff
mov rcx, qword [rsp + 0x2e0]
xor rcx, rsp
call fcn.00405a80
mov rbx, qword [rsp + 0x350]
mov rbp, qword [rsp + 0x358]
mov rsi, qword [rsp + 0x330]
mov rdi, qword [rsp + 0x328]
mov r12, qword [rsp + 0x320]
mov r13, qword [rsp + 0x318]
mov r14, qword [rsp + 0x310]
mov r15, qword [rsp + 0x308]
movdqa xmm6, xmmword [rsp + 0x2f0]
add rsp, 0x338
ret