Function at 0x1400183f0
Capabilities:
Get geographical location
Set registry value

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x90
mov rax, qword [0x14008f060]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov rbx, rcx
mov rcx, qword [rcx + 8]
test rcx, rcx
je 0x140018431
lea r9, str.Start
lea r8, str.CreateADESv2REG
xor edx, edx
call fcn.140003290
nop
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9d, 0xf003f
xor r8d, r8d
lea rdx, str.SoftwareOEMADESV2
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1400184c6
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14001847a
lea r9, str.Registry_found
lea r8, str.CreateADESv2REG__RegOpenKey:_SoftwareOEMADESV2
xor edx, edx
call fcn.140003290
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140018498
lea r9, str.Skip
lea r8, str.CreateADESv2REG__RegCreateKeyEx:_SoftwareOEMADESV2
xor edx, edx
call fcn.140003290
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400184c1
lea r9, [0x14007a9b8]
lea r8, str.CreateADESv2REG
xor edx, edx
call fcn.140003290
jmp 0x1400186c2
lea rax, [rsp + 0x70]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0xf003f
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.SoftwareOEMADESV2
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x1400186e3
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14001852d
lea r9, str.SUCCESS
lea r8, str.CreateADESv2REG__RegCreateKeyEx:_SoftwareOEMADESV2
xor edx, edx
call fcn.140003290
mov eax, dword [0x14007dc10]
mov dword [rsp + 0x74], eax
movzx eax, word [0x14007dc14]
mov word [rsp + 0x78], ax
lea rax, [rsp + 0x74]
mov rdi, 0xffffffffffffffff
nop
inc rdi
cmp word [rax + rdi*2], 0
jne 0x140018550
add edi, edi
mov dword [rsp + 0x28], edi
lea rax, [rsp + 0x74]
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
lea rdx, [0x14007e120]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
jne 0x140018714
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400185ab
lea r9, str.SUCCESS
lea r8, str.CreateADESv2REG__RegSetValueEx:_SoftwareOEMADESV2FUB
xor edx, edx
call fcn.140003290
mov dword [rsp + 0x28], edi
lea rax, [rsp + 0x74]
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
lea rdx, str.Time
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
jne 0x140018745
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400185fa
lea r9, str.SUCCESS
lea r8, str.CreateADESv2REG__RegSetValueEx:_SoftwareOEMADESV2Time
xor edx, edx
call fcn.140003290
mov dword [rsp + 0x28], edi
lea rax, [rsp + 0x74]
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
lea rdx, str.Country
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
jne 0x140018776
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140018649
lea r9, str.SUCCESS
lea r8, str.CreateADESv2REG__RegSetValueEx:_SoftwareOEMADESV2Country
xor edx, edx
call fcn.140003290
mov dword [rsp + 0x28], edi
lea rax, [rsp + 0x74]
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
lea rdx, [0x14007ad98]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
jne 0x1400187a7
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140018698
lea r9, str.SUCCESS
lea r8, str.CreateADESv2REG__RegSetValueEx:_SoftwareOEMADESV2Consensus
xor edx, edx
call fcn.140003290
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x1400186c2
lea r9, [0x14007a9b8]
lea r8, str.CreateADESv2REG
xor edx, edx
call fcn.140003290
nop
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140036cc0
mov rbx, qword [rsp + 0xa8]
add rsp, 0x90
pop rdi
ret
lea r8, str.Fail
lea rdx, str.CreateADESv2REG__RegCreateKeyEx:_SoftwareOEMADESV2
mov rcx, rbx
call fcn.140016e50
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x50], eax
lea rdx, [0x14008ca80]
lea rcx, [rsp + 0x50]
call fcn.14003919c
lea r8, str.Fail
lea rdx, str.CreateADESv2REG__RegSetValueEx:_SoftwareOEMADESV2FUB
mov rcx, rbx
call fcn.140016e50
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x54], eax
lea rdx, [0x14008ca80]
lea rcx, [rsp + 0x54]
call fcn.14003919c
lea r8, str.Fail
lea rdx, str.CreateADESv2REG__RegSetValueEx:_SoftwareOEMADESV2Time
mov rcx, rbx
call fcn.140016e50
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x58], eax
lea rdx, [0x14008ca80]
lea rcx, [rsp + 0x58]
call fcn.14003919c
lea r8, str.Fail
lea rdx, str.CreateADESv2REG__RegSetValueEx:_SoftwareOEMADESV2Country
mov rcx, rbx
call fcn.140016e50
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x5c], eax
lea rdx, [0x14008ca80]
lea rcx, [rsp + 0x5c]
call fcn.14003919c
lea r8, str.Fail
lea rdx, str.CreateADESv2REG__RegSetValueEx:_SoftwareOEMADESV2Consensus
mov rcx, rbx
call fcn.140016e50
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x60], eax
lea rdx, [0x14008ca80]
lea rcx, [rsp + 0x60]
call fcn.14003919c
int3