Function at 0x14000e1f0
Capabilities:
Print debug messages
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x30
lea rcx, str.Enter_Function_QueryRadioStatus____n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
xor edi, edi
mov byte [rsp + 0x40], 8
mov ecx, 0xfc72
mov dword [0x14004d574], edi
lea r8, [rsp + 0x40]
mov dword [0x14004d7a4], edi
lea edx, [rdi + 1]
call fcn.1400188d0
lea rcx, str.The_nexe_step_is_check_the_status_of_g_bisReceiveEvent__n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov ebx, edi
nop dword [rax + rax]
cmp dword [0x14004d574], edi
jne 0x14000e25a
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0x32
jl 0x14000e240
lea rcx, str.Leave_Function_QueryRadioStatus____n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov eax, dword [0x14004d7a4]
cmp eax, 1
jne 0x14000e388
cmp dword [0x14004d564], edi
mov dword [0x14004d568], edi
je case.default.0x14000e295
lea rcx, str.radio_off_operator_on_progress__abort____r_n
mov rbx, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
jmp qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateEventW]
lea rcx, str.begin_trun_radio_off_r_n
mov dword [0x14004d564], 1
mov qword [0x14004d688], rax
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov ecx, 0xfc72
mov byte [rsp + 0x40], 3
lea r8, [rsp + 0x40]
mov edx, 1
call fcn.1400188d0
mov ecx, 0xfc72
mov byte [rsp + 0x40], 5
lea r8, [rsp + 0x40]
mov edx, 1
call fcn.1400188d0
mov ecx, 0xfc72
mov byte [rsp + 0x40], 7
lea r8, [rsp + 0x40]
mov edx, 1
call fcn.1400188d0
mov ecx, 0xfc72
mov byte [rsp + 0x40], dil
lea r8, [rsp + 0x40]
mov edx, 1
call fcn.1400188d0
lea rcx, str.trun_radio_off_End_r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rcx, qword [0x14004d688]
mov edx, 0x1388
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x14000e369
lea rcx, str.WaitForSingleObject_g_hRadioLockEvent__5000__is_timeout____r_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov dword [0x14004d564], edi
mov rcx, qword [0x14004d688]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x14004d688], rdi
mov rbx, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
cmp eax, 2
jne case.default.0x14000e3a4
lea rcx, str.In_condition__g_RadioStatus__RadioStatus_OFF__radio_on_off_status_updated_r_n
mov dword [0x14004d568], edi
mov rbx, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
jmp qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
test eax, eax
jne 0x14000e423
mov edx, dword [0x14004d568]
lea rcx, str.Enter_else_if_g_RadioStatus__RadioStatus_NULL___the_value_of_g_isRecoverfromS3S4_is__d_n
call fcn.14000db40
cmp dword [0x14004d568], edi
je 0x14000e429
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [0x14004d570]
lea rcx, str.The_wakeup_time_is__d_n
mov ebx, eax
call fcn.14000db40
mov edx, ebx
lea rcx, str.The_current_time_is__d_n
call fcn.14000db40
mov eax, dword [0x14004d570]
mov ecx, ebx
sub ecx, eax
cmp ecx, 0x2710
jbe 0x14000e40c
lea rcx, str.In_Function_IsResetRadioS3S4TimeOut____dwCurrent___g_dwTimeS3S4___RESETRADIOS3S4TIMEOUT__n
jmp 0x14000e417
cmp ebx, eax
jae 0x14000e434
lea rcx, str.In_Function_IsResetRadioS3S4TimeOut___gettickcount_is_out_of_date__so_return_TRUE__n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov dword [0x14004d570], edi
mov dword [0x14004d568], edi
mov rbx, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
mov rbx, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
jmp fcn.140001680
movabs dword [0x516ad875243a2444], eax
sub al, 0x6d
invalid
and eax, 0x97d2e3ca
cld
pop rdi
fisttp dword [rbp + 0x86a8bd6]
movsq qword [rdi], qword [rsi]
and r13b, byte [r15 - 0x245b28c9]
xor dword [rax + rax + 0x60], ecx
cmp dl, byte [rbx + rax*2 + 0x50]
xlatb
mov ss, word [rcx + rdi*4]
sti
cdq
invalid
invalid
js 0x14007caaf
xor dword [rdx - 0x7e], edx
and ecx, dword [rdx + rax*2 + 0x5702f24e]
wait
invalid