Function at 0x1400ef2b0
Capabilities:
Set registry value

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x80
mov rax, qword [0x14035dc30]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov r11, r9
mov r13, r8
mov r12, rdx
mov r14, rcx
mov qword [rsp + 0x58], rcx
mov rsi, qword [rsp + 0xf0]
mov qword [rsp + 0x50], rsi
xor r15d, r15d
mov qword [rsp + 0x70], r15
mov rbx, qword [r9 + 0x10]
mov rdi, qword [r9 + 0x18]
cmp rdi, 8
jb 0x1400ef309
mov r9, qword [r9]
cmp rbx, 3
jne 0x1400ef352
mov rdx, rbx
lea rax, [0x1402c8380]
movzx ecx, word [r9]
mov r8d, 0x53
cmp cx, r8w
jb 0x1400ef352
sub r9, rax
cmp cx, r8w
ja 0x1400ef352
cmp rdx, 1
je 0x1400ef4fe
dec rdx
add rax, 2
movzx ecx, word [r9 + rax]
movzx r8d, word [rax]
cmp cx, r8w
jae 0x1400ef330
mov r9, r11
cmp rdi, 8
jb 0x1400ef35e
mov r9, qword [r11]
cmp rbx, 3
jne 0x1400ef3a7
mov rdx, rbx
lea rax, [0x1402c8068]
movzx ecx, word [r9]
mov r8d, 0x4e
cmp cx, r8w
jb 0x1400ef3a7
sub r9, rax
cmp cx, r8w
ja 0x1400ef3a7
cmp rdx, 1
je 0x1400ef652
dec rdx
add rax, 2
movzx ecx, word [rax + r9]
movzx r8d, word [rax]
cmp cx, r8w
jae 0x1400ef385
mov r10, r11
cmp rdi, 8
jb 0x1400ef3b3
mov r10, qword [r11]
mov r9d, 5
cmp rbx, r9
jne 0x1400ef401
mov edx, r9d
lea rax, str.DWORD
movzx ecx, word [r10]
mov r8d, 0x44
cmp cx, r8w
jb 0x1400ef401
sub r10, rax
cmp cx, r8w
ja 0x1400ef401
cmp rdx, 1
je 0x1400ef652
dec rdx
add rax, 2
movzx ecx, word [rax + r10]
movzx r8d, word [rax]
cmp cx, r8w
jae 0x1400ef3df
mov r8, r11
cmp rdi, 8
jb 0x1400ef40d
mov r8, qword [r11]
cmp rbx, 5
jne 0x1400ef44e
lea rax, str.QWORD
movzx ecx, word [r8]
mov edx, 0x51
cmp cx, dx
jb 0x1400ef44e
sub r8, rax
cmp cx, dx
ja 0x1400ef44e
cmp r9, 1
je 0x1400ef6f5
dec r9
add rax, 2
movzx ecx, word [rax + r8]
movzx edx, word [rax]
cmp cx, dx
jae 0x1400ef42e
mov r9, r11
cmp rdi, 8
jb 0x1400ef45a
mov r9, qword [r11]
cmp rbx, 3
jne 0x1400ef4a3
mov rdx, rbx
lea rax, [0x1402c9cf0]
movzx ecx, word [r9]
mov r8d, 0x42
cmp cx, r8w
jb 0x1400ef4a3
sub r9, rax
cmp cx, r8w
ja 0x1400ef4a3
cmp rdx, 1
je 0x1400ef777
dec rdx
add rax, 2
movzx ecx, word [rax + r9]
movzx r8d, word [rax]
cmp cx, r8w
jae 0x1400ef481
cmp rdi, 8
jb 0x1400ef4ac
mov r11, qword [r11]
mov qword [rsp + 0x28], r11
lea rax, str.Unknown_registry_key_type:__s
mov qword [rsp + 0x20], rax
mov r9d, 0xa1
lea r8, str.XMLUpdater::v2::SetRegistryKey
lea rdx, str.E:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_XmlUpdater_srcXmlUpdaterRegistryCommand.cpp
mov ecx, 1
call fcn.1400bfe30
nop
xor al, al
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.140269300
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov edi, 1
mov eax, dword [r14 + 0x10]
lea r15d, [rax*2 + 2]
mov esi, r15d
mov ecx, r15d
call fcn.140269b2c
mov rbx, rax
mov qword [rsp + 0x70], rax
cmp qword [r14 + 0x18], 8
jb 0x1400ef52c
mov r14, qword [r14]
test r15d, r15d
je 0x1400ef551
test rbx, rbx
je 0x1400ef616
mov r8, rsi
mov rcx, rbx
test r14, r14
je 0x1400ef60f
mov rdx, r14
call fcn.14026bb50
mov rsi, qword [rsp + 0x50]
xor r14d, r14d
mov qword [rsp + 0x68], r14
mov rdx, r12
cmp qword [r12 + 0x18], 8
jb 0x1400ef56d
mov rdx, qword [r12]
movzx r8d, byte [rsp + 0xe0]
mov qword [rsp + 0x40], r14
lea rax, [rsp + 0x68]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r14
mov eax, dword [rsp + 0xe8]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r8d
xor r9d, r9d
xor r8d, r8d
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
je 0x1400ef868
cmp qword [r12 + 0x18], 8
jb 0x1400ef5bd
mov r12, qword [r12]
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], eax
lea rax, str.Error___d__creating_registry_key:__s
mov qword [rsp + 0x20], rax
mov r9d, 0xab
lea r8, str.XMLUpdater::v2::SetRegistryKey
lea rdx, str.E:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_XmlUpdater_srcXmlUpdaterRegistryCommand.cpp
mov ecx, 1
call fcn.1400bfe30
nop
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x1400ef95c
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x68], r14
jmp 0x1400ef95c
xor edx, edx
call fcn.14026c200
call fcn.14027932c
mov dword [rax], reloc.WS2_32.dll_shutdown
call fcn.140277fd8
lea rax, str.memcpy_s_failed_in_SetRegistryKey
mov qword [rsp + 0x20], rax
mov r9d, 0x66
lea r8, str.XMLUpdater::v2::SetRegistryKey
lea rdx, str.E:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_XmlUpdater_srcXmlUpdaterRegistryCommand.cpp
mov ecx, edi
call fcn.1400bfe30
jmp 0x1400ef95c
call fcn.14027932c
mov rbx, rax
cmp qword [r14 + 0x18], 8
jb 0x1400ef664
mov r14, qword [r14]
mov dword [rax], r15d
mov r8d, 0xa
lea rdx, [rsp + 0x60]
mov rcx, r14
call fcn.14028281c
mov esi, eax
cmp r14, qword [rsp + 0x60]
je 0x1400ef972
cmp dword [rbx], 0x22
je 0x1400ef97e
mov edi, 4
mov r15d, edi
mov ecx, edi
call fcn.140269b2c
mov rbx, rax
mov qword [rsp + 0x70], rax
test rax, rax
jne 0x1400ef6e9
call fcn.14027932c
mov dword [rax], reloc.WS2_32.dll_shutdown
call fcn.140277fd8
lea r9d, [rdi + 0x77]
lea rax, str.memcpy_s_failed_in_SetRegistryKey
mov qword [rsp + 0x20], rax
lea r8, str.XMLUpdater::v2::SetRegistryKey
lea rdx, str.E:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_XmlUpdater_srcXmlUpdaterRegistryCommand.cpp
mov ecx, 1
call fcn.1400bfe30
jmp 0x1400ef4dc
mov dword [rax], esi
jmp 0x1400ef551
call fcn.14027932c
mov rbx, rax
cmp qword [r14 + 0x18], 8
jb 0x1400ef707
mov r14, qword [r14]
mov dword [rax], r15d
mov r8d, 0xa
lea rdx, [rsp + 0x60]
mov rcx, r14
call fcn.1402828d0
mov rsi, rax
cmp r14, qword [rsp + 0x60]
je 0x1400ef98b
cmp dword [rbx], 0x22
je 0x1400ef997
mov edi, listen
mov r15d, 8
mov ecx, r15d
call fcn.140269b2c
mov rbx, rax
mov qword [rsp + 0x70], rax
test rax, rax
jne 0x1400ef76f
call fcn.14027932c
mov dword [rax], reloc.WS2_32.dll_shutdown
call fcn.140277fd8
mov r9d, 0x90
jmp 0x1400ef6c0
mov qword [rax], rsi
jmp 0x1400ef551
mov rax, qword [r14 + 0x10]
inc rax
shr rax, 1
mov r15d, eax
mov ecx, eax
call fcn.140269b2c
mov rbx, rax
mov qword [rsp + 0x70], rax
mov r8, r14
cmp qword [r14 + 0x18], 8
jb 0x1400ef7a0
mov r8, qword [r14]
test r8, r8
je 0x1400ef922
xor r9d, r9d
test r15d, r15d
je 0x1400ef85e
nop word [rax + rax]
movzx edx, word [r8]
lea eax, [rdx - 0x30]
cmp ax, 9
ja 0x1400ef7d2
lea ecx, [rdx - 0x30]
jmp 0x1400ef7ec
lea eax, [rdx - 0x61]
cmp ax, 5
ja 0x1400ef7e0
lea ecx, [rdx - 0x57]
jmp 0x1400ef7ec
lea eax, [rdx - 0x41]
cmp ax, 5
ja 0x1400ef855
lea ecx, [rdx - 0x37]
cmp cl, 0xff
je 0x1400ef855
movzx edx, word [r8 + 2]
lea eax, [rdx - 0x30]
cmp ax, 9
ja 0x1400ef804
lea eax, [rdx - 0x30]
jmp 0x1400ef81e
lea eax, [rdx - 0x61]
cmp ax, 5
ja 0x1400ef812
lea eax, [rdx - 0x57]
jmp 0x1400ef81e
lea eax, [rdx - 0x41]
cmp ax, 5
ja 0x1400ef83b
lea eax, [rdx - 0x37]
cmp al, 0xff
je 0x1400ef83b
and al, 0xf
shl cl, 4
or al, cl
mov byte [r9 + rbx], al
add r8, 4
inc r9
cmp r9, r15
jae 0x1400ef85e
jmp 0x1400ef7c0
test dx, dx
jne 0x1400ef922
shl cl, 4
mov byte [r9 + rbx], cl
mov edi, 3
jmp 0x1400ef556
test dx, dx
jne 0x1400ef922
mov edi, 3
jmp 0x1400ef556
mov rdx, r13
cmp qword [r13 + 0x18], 8
jb 0x1400ef876
mov rdx, qword [r13]
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], rbx
mov r9d, edi
xor r8d, r8d
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
je 0x1400ef8f9
cmp qword [r12 + 0x18], 8
jb 0x1400ef8a1
mov r12, qword [r12]
cmp qword [r13 + 0x10], 0
jne 0x1400ef8b1
lea r13, str._Default_
jmp 0x1400ef8bc
cmp qword [r13 + 0x18], 8
jb 0x1400ef8bc
mov r13, qword [r13]
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], eax
lea rax, str.Error___d__setting_value___s__under_registry_key:__s
mov qword [rsp + 0x20], rax
mov r9d, 0xb3
lea r8, str.XMLUpdater::v2::SetRegistryKey
lea rdx, str.E:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_XmlUpdater_srcXmlUpdaterRegistryCommand.cpp
mov ecx, 1
call fcn.1400bfe30
jmp 0x1400ef5f1
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x1400ef90e
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x68], r14
test rbx, rbx
je 0x1400ef91b
mov rcx, rbx
call fcn.140269844
mov al, 1
jmp 0x1400ef4de
cmp qword [r14 + 0x18], 8
jb 0x1400ef92c
mov r14, qword [r14]
mov qword [rsp + 0x28], r14
lea rax, str.Unable_to_convert__s_to_hex
mov qword [rsp + 0x20], rax
mov r9d, 0x9a
lea r8, str.XMLUpdater::v2::SetRegistryKey
lea rdx, str.E:BT42dac55d_4355_4669_9ab8_31cc00ddc957WebAdvisor_XmlUpdater_srcXmlUpdaterRegistryCommand.cpp
mov ecx, 1
call fcn.1400bfe30
nop
test rbx, rbx
je 0x1400ef4dc
mov rcx, rbx
call fcn.140269844
jmp 0x1400ef4dc
lea rcx, str.invalid_stoul_argument
call fcn.140245df0
lea rcx, str.stoul_argument_out_of_range
call fcn.140245e38
nop
lea rcx, str.invalid_stoull_argument
call fcn.140245df0
lea rcx, str.stoull_argument_out_of_range
call fcn.140245e38
int3