Function at 0x1400012da
Capabilities:
Persist via windows service
Set registry value

Disassembly:
jmp 0x140008cc0
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x168]
sub rsp, 0x240
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1400623f0]
xor rax, rsp
mov qword [rbp + 0x138], rax
mov rdi, rcx
lea rax, str.CRadioManagerControl::ChangeLEDState
mov qword [rbp - 0x70], rax
lea r12, str.__CRadioManagerControl::ChangeLEDState_
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 3
lea r9, [0x14004b650]
mov r8d, 0x1af
lea rdx, str.RadioManager.cpp
lea rcx, [rbp - 0x68]
call fcn.1400010c8
mov r8, qword [rbp - 0x70]
lea rdx, str.ENTER__s
lea rcx, [rbp - 0x68]
call fcn.1400016e5
nop
lea rax, vtable.SHCI.0
mov qword [rbp - 0x80], rax
or r14, 0xffffffffffffffff
mov qword [rbp - 0x78], r14
lea rdx, str..TVALZ
lea rcx, [rbp - 0x78]
call fcn.1400010a0
nop
lea r13, vtable.RegConfigAccess.0
mov qword [rsp + 0x70], r13
xor r15d, r15d
mov qword [rsp + 0x78], r15
call fcn.14000136b
mov rdx, rax
mov ecx, r15d
test rax, rax
setne cl
test ecx, ecx
jne 0x140008dab
mov ecx, 0x80004005
call fcn.140001064
int3
mov rax, qword [rax]
mov rcx, rdx
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x68], rax
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rbp + 0x108], rax
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x118], rax
mov dword [rsp + 0x50], 0xff00
mov eax, dword [rdi]
mov dword [rsp + 0x54], eax
mov dword [rsp + 0x5c], 0xfffe
mov rax, qword [rdi + 8]
mov qword [rdi + 0x20], rax
cmp rax, qword [rdi + 0x10]
je 0x140008ef8
mov rax, qword [rdi + 0x20]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x38]
sub rbx, qword [rcx + 0x30]
sar rbx, 3
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 3
lea r9, [0x14004b650]
mov r8d, 0x1c4
lea rdx, str.RadioManager.cpp
lea rcx, [rbp + 0x18]
call fcn.1400010c8
mov rcx, rax
mov r8, rbx
lea rdx, str.m_RadioInstanceList.count___d
call fcn.1400016e5
mov rax, qword [rdi + 0x20]
mov rbx, qword [rax]
mov rbx, qword [rbx + 0x30]
mov rax, qword [rax]
cmp rbx, qword [rax + 0x38]
je 0x140008ed7
nop
mov rcx, qword [rbx]
mov rax, qword [rcx]
lea rdx, [rsp + 0x44]
call qword [rax + 0x30]
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 2
lea r9, [0x14004b650]
mov r8d, 0x1cb
lea rdx, str.RadioManager.cpp
lea rcx, [rbp + 0xb8]
call fcn.1400010c8
mov rcx, rax
mov r8d, dword [rsp + 0x44]
lea rdx, str.RadioState___d
call fcn.1400016e5
cmp dword [rsp + 0x44], 0
je 0x140008ee9
add rbx, 8
mov rax, qword [rdi + 0x20]
mov rcx, qword [rax]
cmp rbx, qword [rcx + 0x38]
jne 0x140008e70
add qword [rdi + 0x20], 8
mov rax, qword [rdi + 0x10]
cmp qword [rdi + 0x20], rax
jmp 0x140008e05
mov dword [rsp + 0x58], r15d
mov dword [rsp + 0x40], 1
jmp 0x140008f05
mov dword [rsp + 0x58], 1
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x48], r15d
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp + 0x120], xmm0
movsd xmm1, qword [rsp + 0x60]
movsd qword [rbp + 0x130], xmm1
mov eax, r15d
mov rcx, qword [rbp - 0x78]
cmp rcx, 0xffffffffffffffff
setne al
test eax, eax
jne 0x140008f7e
lea rax, str.__TC::Driver::ioControl_
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r15d
lea r9, [0x14004b650]
mov r8d, 0x3f
lea rdx, str.d:_tfs_toshibasystemmodulescentennial_rmservice_rmservice_sciDriver.h
lea rcx, [rbp - 0x38]
call fcn.1400010c8
mov rcx, rax
mov r8d, 0x80004005
lea rdx, str.Error_Code:_0x_x
call fcn.1400016e5
jmp 0x140009018
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x18
lea rax, [rbp + 0x108]
mov qword [rsp + 0x20], rax
mov r9d, 0x18
lea r8, [rbp + 0x120]
mov edx, 0x222880
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
jne 0x140009018
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
test eax, eax
jle 0x140008fd2
movzx ebx, ax
or ebx, 0x80070000
lea rax, str.__TC::Driver::ioControl_
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r15d
lea r9, [0x14004b650]
mov r8d, 0x47
lea rdx, str.d:_tfs_toshibasystemmodulescentennial_rmservice_rmservice_sciDriver.h
lea rcx, [rbp - 0x10]
call fcn.1400010c8
mov rcx, rax
mov r8d, ebx
lea rdx, str.Error_Code:_0x_x
call fcn.1400016e5
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.SYSTEMCurrentControlSetServices_thotkeyParameters
lea rcx, [rsp + 0x68]
call fcn.1400016b8
mov r9d, 0xf003f
mov rbx, qword [rsp + 0x68]
mov r8, rbx
mov rdx, 0xffffffff80000002
lea rcx, [rsp + 0x70]
call fcn.1400012fd
mov edi, eax
test eax, eax
jns 0x14000905d
mov r8d, 0x1e6
lea rcx, [rbp + 0x40]
jmp 0x140009162
mov rcx, qword [rsp + 0x78]
test rcx, rcx
sete al
test al, al
je 0x1400090b9
lea rax, str.__RegConfigAccess::SetValue_
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r15d
lea r9, [0x14004b650]
mov r8d, 0x16b
lea rdx, str.d:_tfs_toshibasystemmodulescentennial_rmservice_rmservicedbglogRegConfig.h
lea rcx, [rbp + 0x90]
call fcn.1400010c8
mov rcx, rax
mov edi, 0x80070006
mov r8d, edi
lea rdx, str.Error_Code:_0x_x
call fcn.1400016e5
jmp 0x140009158
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
lea rdx, str.LEDSTATE
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov edi, eax
mov eax, r15d
test edi, edi
sete al
test eax, eax
jne 0x140009193
test edi, edi
jg 0x1400090fb
mov esi, edi
jmp 0x140009104
movzx esi, di
or esi, 0x80070000
lea rax, str.__RegConfigAccess::SetValue_
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r15d
lea r9, [0x14004b650]
mov r8d, 0x16f
lea rdx, str.d:_tfs_toshibasystemmodulescentennial_rmservice_rmservicedbglogRegConfig.h
lea rcx, [rbp + 0xe0]
call fcn.1400010c8
mov rcx, rax
mov r8d, esi
lea rdx, str.Error_Code:_0x_x
call fcn.1400016e5
test edi, edi
jle 0x140009156
movzx edi, di
or edi, 0x80070000
test edi, edi
jns 0x140009193
mov r8d, 0x1e7
lea rcx, [rbp + 0x68]
mov qword [rsp + 0x28], r12
lea rdx, str.RadioManager.cpp
lea r9, [0x14004b650]
mov dword [rsp + 0x20], r15d
call fcn.1400010c8
mov rcx, rax
mov r8d, edi
lea rdx, str.Error_Code:_0x_x
call fcn.1400016e5
jmp 0x140009196
mov edi, r15d
lea rdx, [rbx - 0x18]
lock add dword [rdx + 0x10], 0xffffffff
jg 0x1400091ab
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov qword [rsp + 0x70], r13
lea rcx, [rsp + 0x70]
call fcn.140001217
nop
mov rcx, qword [rbp - 0x78]
cmp rcx, 0xffffffffffffffff
je 0x1400091cc
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov r8, qword [rbp - 0x70]
lea rdx, str.LEAVE__s
lea rcx, [rbp - 0x68]
call fcn.1400016e5
mov eax, edi
mov rcx, qword [rbp + 0x138]
xor rcx, rsp
call fcn.140011b90
lea r11, [rsp + 0x240]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret