Function at 0x140072a06
Capabilities:
Get geographical location

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov rbx, rdx
mov r14, rcx
lea rsi, [rsp + 0x48]
mov rcx, rsi
mov rdx, r8
mov r8, rbx
call fcn.1400a824a
mov dl, byte [rsi + 8]
mov rsi, qword [rsi]
cmp dl, 3
je 0x140072dea
imul rax, rbx, 0x18
add rax, r14
mov qword [rsp + 0x60], rax
lea r12, [0x1402e0511]
mov qword [rsp + 0x58], rsi
cmp r14, qword [rsp + 0x60]
je 0x140072dfe
cmp dl, 1
sete dl
mov rcx, qword [rsi]
call fcn.140004511
mov r15, qword [r14]
mov rbp, qword [r14 + 0x10]
lea rcx, [rsp + 0x48]
mov rdx, rsi
mov r8, rbp
call fcn.1400a824a
mov dl, byte [rsp + 0x50]
mov rdi, qword [rsp + 0x48]
cmp dl, 3
je 0x140072e0a
add r14, 0x18
mov qword [rsp + 0x68], r14
imul rax, rbp, 0xa8
mov qword [rsp + 0x70], rax
xor ebx, ebx
mov r13, r15
lea r14, [0x1402e84ff]
lea rbp, [rsp + 0x28]
mov esi, 1
cmp qword [rsp + 0x70], rbx
je case.default.0x140072b36
cmp dl, 1
sete dl
mov rcx, qword [rdi]
call fcn.140004511
mov rcx, qword [rdi]
mov r8d, 1
mov rdx, r12
call fcn.14005e8a2
mov qword [rsp + 0x28], rdi
mov byte [rsp + 0x30], 1
and al, 0x30
add dword [rbp - 0x75], ecx
lea edx, [rax + 0x49000000]
mov eax, dword [rbp + 0xa0]
mov qword [rsp + 0x20], rax
mov r8d, 4
mov rcx, rbp
mov rdx, r14
call fcn.14007253d
mov eax, dword [r13]
add eax, 0xfffffffe
cmp eax, 8
cmovae eax, esi
lea rcx, [0x14031ad0c]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov r8d, 3
mov rcx, rbp
lea rdx, [0x1402e8503]
call fcn.1400a14a0
mov rcx, qword [rsp + 0x28]
mov rdx, qword [r15 + rbx + 0x18]
mov r8, qword [r15 + rbx + 0x28]
call fcn.1400a14eb
jmp 0x140072da8
mov r8d, 9
mov rcx, rbp
lea rdx, [0x140278ce4]
call fcn.1400a14a0
jmp 0xcb4f2b7f
insb byte [rdi], dx
and al, 0x28
mov rcx, qword [rbp]
call fcn.140004528
mov r14, qword [r15 + rbx + 0x58]
mov r12, qword [r15 + rbx + 0x70]
jo 0x140072bc5
ror byte [rbp - 0x7b], 0xe4
setne al
cmp r14, 1
sbb rax, 0
mov sil, byte [r15 + rbx + 0x88]
xor ecx, ecx
cmp sil, 2
setne cl
lea r8, [rax + rcx]
add r8, 2
add eax, 2
lea rcx, [rsp + 0x48]
mov rdx, rbp
call fcn.1400a81ff
invalid
mov cl, byte [rsp + 0x50]
mov rax, qword [rsp + 0x48]
cmp cl, 3
je 0x140072de7
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x40], cl
and al, 0x40
mov rdx, qword [r15 + rbx + 0x10]
mov r8, qword [r15 + rbx + 0x20]
lea rbp, [rsp + 0x38]
mov rcx, rbp
call fcn.1400724d3
test r14, r14
je 0x140072c24
mov r9, qword [r15 + rbx + 0x58]
mov rax, qword [r15 + rbx + 0x68]
push 0x24448948
and byte [rcx - 0x48], al
or al, 0
add byte [rax], al
mov rcx, rbp
lea rdx, [0x1402e8dcc]
call fcn.14007249c
test r12, r12
lea r14, [0x1402e84ff]
pop rax
invalid
add byte [rax - 0x73], cl
insb byte [rdi], dx
and al, 0x28
je 0x140072c5e
mov r9, qword [r15 + rbx + 0x70]
mov rax, qword [r15 + rbx + 0x80]
mov qword [rsp + 0x20], rax
mov r8d, 0xc
lea rcx, [rsp + 0x38]
lea rdx, [0x1402e8dd8]
call fcn.14007249c
cmp sil, 2
lea r12, [0x1402e0511]
je 0x140072c8a
mov r9b, byte [r15 + rbx + 0x88]
mov r8d, 0x14
lea rcx, [rsp + 0x38]
and al, 0x38
lea rdx, [0x1402e8de4]
call fcn.1400a2344
mov rax, qword [rsp + 0x38]
mov dl, byte [rsp + 0x40]
mov rcx, qword [rax]
call fcn.1400a1537
mov esi, 1
jmp 0x140072da8
mov r9, qword [r15 + rbx + 8]
mov rax, qword [r15 + rbx + 0x18]
mov qword [rsp + 0x20], rax
mov r8d, 0xd
mov rcx, rbp
lea rdx, [0x140278ced]
jmp 0x140072d51
mov r8d, 7
mov rcx, rbp
lea rdx, [0x14027716b]
call fcn.1400a14a0
mov rbp, qword [rsp + 0x28]
mov rcx, qword [rbp]
call fcn.140004528
mov rcx, qword [r15 + rbx + 0x18]
mov rdx, qword [r15 + rbx + 0x28]
mov r8, rbp
lea rbp, [rsp + 0x28]
call fcn.140019036
test rax, rax
je 0x140072da8
jmp 0x140072de7
mov r9, qword [r15 + rbx + 8]
mov rax, qword [r15 + rbx + 0x18]
mov qword [rsp + 0x20], rax
mov r8d, 0x13
mov rcx, rbp
lea rdx, [0x140278cfa]
jmp 0x140072d51
mov r9, qword [r15 + rbx + 8]
mov rax, qword [r15 + rbx + 0x18]
mov qword [rsp + 0x20], rax
mov r8d, 0x20
mov rcx, rbp
lea rdx, [0x140278d0d]
call fcn.14007253d
jmp 0x140072da8
mov r8d, 0xd
mov rcx, rbp
lea rdx, [0x140278d2d]
call fcn.1400a14a0
mov rsi, qword [rsp + 0x28]
mov rcx, qword [rsi]
call fcn.140004528
mov rcx, qword [rsi]
mov esi, 1
call fcn.1400a84a2
jmp 0x140072da8
mov r8d, 3
mov rcx, rbp
lea rdx, [0x140278d3a]
call fcn.1400a14a0
mov rcx, qword [rsp + 0x28]
call fcn.1400a1518
add r13, 0xa8
mov rax, qword [rsp + 0x28]
mov dl, byte [rsp + 0x30]
mov rcx, qword [rax]
call fcn.1400a1537
add rbx, 0xa8
mov dl, 2
jmp 0x140072ac3
mov rcx, qword [rdi]
call fcn.1400a1540
mov dl, 2
mov rsi, qword [rsp + 0x58]
mov r14, qword [rsp + 0x68]
jmp 0x140072a56
mov rsi, rax
mov rax, rsi
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsi]
call fcn.1400a1540
xor esi, esi
jmp 0x140072dea
mov rsi, rdi
jmp 0x140072dea
and al, 0xa8
add byte [rax], al
add byte [rdx], al
add byte [rax], al
add byte [rbx - 0x77c0140], al
add edi, dword [rcx + 3]
cmovae eax, ecx
movsxd rax, dword [rbx + rax*4]
add rax, rbx
jmp rax