Function at 0x14017bf78
Capabilities:
Get geographical location

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
mov qword [rbp - 0x69], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x140334860]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov r14, rcx
mov qword [rbp - 0x61], rcx
lea rax, vtable.C2R::CommonTelemetry.0
mov qword [rcx], rax
lea rbx, [rcx + 8]
mov ecx, 7
mov qword [rbx + 0x18], rcx
xor r13d, r13d
mov qword [rbx + 0x10], r13
cmp rcx, 8
jb 0x14017bfe1
mov rax, qword [rbx]
jmp 0x14017bfe4
mov rax, rbx
mov word [rax], r13w
lea rsi, [r14 + 0x28]
mov qword [rsi + 0x18], rcx
mov qword [rsi + 0x10], r13
cmp rcx, 8
jb 0x14017bfff
mov rax, qword [rsi]
jmp 0x14017c002
mov rax, rsi
mov word [rax], r13w
lea rdi, [r14 + 0x50]
mov qword [rdi + 0x18], rcx
mov qword [rdi + 0x10], r13
cmp rcx, 8
jb 0x14017c01d
mov rax, qword [rdi]
jmp 0x14017c020
mov rax, rdi
mov word [rax], r13w
lea r15, [r14 + 0x70]
mov qword [r15 + 0x18], rcx
mov qword [r15 + 0x10], r13
cmp rcx, 8
jb 0x14017c03b
mov rax, qword [r15]
jmp 0x14017c03e
mov rax, r15
mov word [rax], r13w
lea rcx, [rbp - 0x59]
call fcn.14017d514
mov r12, rax
cmp rbx, rax
je 0x14017c06c
xor r8d, r8d
mov dl, 1
mov rcx, rbx
call fcn.14000b190
mov rdx, r12
mov rcx, rbx
call fcn.14000ae7c
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x59]
call fcn.14000b190
lea rcx, [rbp - 0x39]
call fcn.14017d968
mov rbx, rax
cmp rsi, rax
je 0x14017c0a4
xor r8d, r8d
mov dl, 1
mov rcx, rsi
call fcn.14000b190
mov rdx, rbx
mov rcx, rsi
call fcn.14000ae7c
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x39]
call fcn.14000b190
mov ecx, 0x10
call qword [sym.imp.KERNEL32.dll_GetUserGeoID]
mov dword [r14 + 0x48], eax
lea rcx, [rbp - 0x19]
call fcn.14017d114
mov rbx, rax
cmp r15, rax
je 0x14017c0eb
xor r8d, r8d
mov dl, 1
mov rcx, r15
call fcn.14000b190
mov rdx, rbx
mov rcx, r15
call fcn.14000ae7c
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp - 0x19]
call fcn.14000b190
call fcn.140180400
mov rcx, rax
call fcn.14018067c
test al, al
je 0x14017c18f
lea rcx, [rbp - 0x79]
call fcn.14017d0bc
nop
mov rcx, qword [rbp - 0x79]
test rcx, rcx
sete al
or rsi, 0xffffffffffffffff
test al, al
jne 0x14017c15a
lea rdx, [rbp + 7]
call fcn.14018330c
nop
cmp rdi, rax
je 0x14017c14b
mov r9, rsi
xor r8d, r8d
mov rdx, rax
mov rcx, rdi
call fcn.14000b5b8
nop
xor r8d, r8d
mov dl, 1
lea rcx, [rbp + 7]
call fcn.14000b190
nop
mov rcx, qword [rbp - 0x71]
test rcx, rcx
je 0x14017c18f
mov eax, esi
lock xadd dword [rcx + 8], eax
add eax, esi
jne 0x14017c18f
mov rbx, qword [rbp - 0x71]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, esi
lock xadd dword [rbx + 0xc], eax
add eax, esi
jne 0x14017c18f
mov rcx, qword [rbp - 0x71]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
cmp qword [rdi + 0x10], r13
sete al
test al, al
je 0x14017c1b1
mov r8d, 7
lea rdx, str.0.0.0.0
mov rcx, rdi
call fcn.14000b6f8
jmp 0x14017c1b8
mov byte [0x140335a38], r13b
mov rax, r14
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.140135130
lea r11, [rsp + 0xd0]
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