Function at 0x140020f40
Capabilities:
Get geographical location

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x140021334
sub rsp, 0x68
mov qword [rsp + 0x60], rbp
lea rbp, [rsp + 0x60]
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x78], rbx
nop
movabs rdx, 0x800000000000
add rdx, rcx
mov rsi, rdx
shr rdx, 0x2a
cmp rdx, 0x40
jb 0x140020f91
xor edx, edx
jmp 0x140020fd5
lea r8, [0x1410fddb0]
mov rdx, qword [r8 + rdx*8]
nop dword [rax]
test rdx, rdx
je 0x140020fd3
shr rsi, 0x16
and esi, 0xfffff
mov rdx, qword [rdx + rsi*8]
test rdx, rdx
je 0x140020fcf
shr rcx, 0xd
and ecx, 0x1ff
mov rcx, qword [rdx + rcx*8 + 0x10400]
mov rdx, rcx
jmp 0x140020fd5
xor edx, edx
jmp 0x140020fd5
xor edx, edx
mov qword [rsp + 0x20], rdx
call fcn.140039dc0
mov rax, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
call fcn.14003a6c0
lea rax, [0x140a94ee0]
mov ebx, 1
call fcn.14003a6c0
mov rax, qword [rsp + 0x80]
call fcn.14003a520
call fcn.140039e40
mov rax, qword [rsp + 0x20]
test rax, rax
je 0x1400211a9
mov rcx, qword [rax + 0x70]
mov qword [rsp + 0x50], rcx
movzx edx, byte [rax + 0x62]
mov qword [rsp + 0x48], rdx
mov rbx, qword [rax + 0x68]
mov qword [rsp + 0x40], rbx
mov rsi, qword [rax + 0x18]
mov qword [rsp + 0x18], rsi
call fcn.140039dc0
lea rax, [0x140970e8b]
mov ebx, 0xa
call fcn.14003a6c0
mov rax, qword [rsp + 0x18]
nop
call fcn.14003a520
lea rax, [0x140970111]
mov ebx, 9
call fcn.14003a6c0
mov rax, qword [rsp + 0x50]
nop dword [rax + rax]
call fcn.14003a520
lea rax, [0x1409738b4]
mov ebx, 0xd
call fcn.14003a6c0
mov rax, qword [rsp + 0x48]
nop dword [rax + rax]
call fcn.14003a3c0
lea rax, [0x140972a92]
mov ebx, 0xc
call fcn.14003a6c0
mov rax, qword [rsp + 0x40]
nop dword [rax + rax]
call fcn.14003a3c0
lea rax, [0x14097011a]
mov ebx, 9
call fcn.14003a6c0
call fcn.140039e40
nop
mov rax, qword [rsp + 0x20]
mov cl, byte [rax + 0x63]
movzx edx, cl
mov rbx, qword [0x1407d2860]
mov rsi, qword [0x1407d2868]
cmp rsi, rdx
jle 0x140021131
shl rdx, 4
mov rax, qword [rbx + rdx]
mov qword [rsp + 0x58], rax
mov rcx, qword [rbx + rdx + 8]
mov qword [rsp + 0x38], rcx
call fcn.140039dc0
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x38]
call fcn.14003a6c0
call fcn.14003a020
call fcn.140039e40
jmp 0x14002116e
mov byte [rsp + 0x17], cl
call fcn.140039dc0
lea rax, [0x14096ff95]
mov ebx, 8
call fcn.14003a6c0
movzx eax, byte [rsp + 0x17]
movzx eax, al
call fcn.14003a3c0
lea rax, [0x140963617]
mov ebx, 2
call fcn.14003a6c0
call fcn.140039e40
mov rax, qword [rsp + 0x20]
mov rcx, qword [rax + 0x68]
nop
mov al, byte [rax + 0x63]
cmp al, 2
jne 0x140021193
nop
test rcx, rcx
jne 0x140021193
mov rcx, qword [rsp + 0x88]
lea rax, [rcx + 8]
jmp 0x14002119e
mov rax, rcx
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0x28], rax
xor edx, edx
xor ebx, ebx
jmp 0x1400211d3
call fcn.140039dc0
lea rax, [0x14096dae3]
mov ebx, 7
call fcn.14003a6c0
nop
call fcn.140039e40
mov rbp, qword [rsp + 0x60]
add rsp, 0x68
ret
add rdx, 8
cmp rax, rdx
jbe 0x140021308
nop dword [rax]
cmp rdx, 0x400
jb 0x140021205
lea rsi, [rcx - 0x80]
cmp rdx, rsi
jbe 0x1400211fe
lea rsi, [rcx + 0x80]
cmp rdx, rsi
jb 0x140021205
mov ebx, 1
jmp 0x1400211cf
mov qword [rsp + 0x30], rdx
test bl, bl
je 0x14002122f
call fcn.140039dc0
lea rax, [0x140965623]
mov ebx, 5
nop
call fcn.14003a6c0
call fcn.140039e40
mov rdx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x80]
lea rcx, [rdx + rax]
mov rcx, qword [rcx]
mov qword [rsp + 0x50], rcx
call fcn.140039dc0
lea rax, [0x140963b22]
mov ebx, 3
call fcn.14003a6c0
mov rax, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
call fcn.14003a6c0
lea rax, [0x140a94df8]
mov ebx, 1
call fcn.14003a6c0
mov rax, qword [rsp + 0x30]
nop
call fcn.14003a3c0
lea rax, [0x14096466b]
mov ebx, 4
call fcn.14003a6c0
mov rax, qword [rsp + 0x50]
nop dword [rax + rax]
call fcn.14003a520
call fcn.140039e40
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x30]
cmp rax, rcx
jne 0x1400212e0
nop dword [rax]
call fcn.140039dc0
lea rax, [0x1409645eb]
mov ebx, 4
call fcn.14003a6c0
call fcn.140039e40
nop dword [rax + rax]
call fcn.140039dc0
call fcn.14003a020
call fcn.140039e40
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x30]
xor ebx, ebx
jmp 0x1400211cf
test bl, bl
je 0x14002132a
call fcn.140039dc0
lea rax, [0x140965623]
mov ebx, 5
nop dword [rax]
call fcn.14003a6c0
call fcn.140039e40
mov rbp, qword [rsp + 0x60]
add rsp, 0x68
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.140065e80
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.140020f40