Function at 0x42d5e0
Capabilities:
Get geographical location

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x42d8e6
sub rsp, 0x60
mov qword [rsp + 0x58], rbp
lea rbp, [rsp + 0x58]
mov byte [rsp + 0x90], r8b
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x50], rdi
cmp qword [0x010fc5b0], 0
jne 0x42d68b
mov eax, 0x15f8f8
lea rbx, [0x01158ca0]
call fcn.00419060
cmp dword [0x011546d0], 0
nop
jne 0x42d64b
mov qword [0x010fc5b0], rax
jmp 0x42d657
lea rdi, [0x010fc5b0]
call fcn.004656c0
cmp qword [0x010fc5b0], 0
nop
je 0x42d8d1
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x50]
movzx r8d, byte [rsp + 0x90]
xor edx, edx
xor r9d, r9d
jmp 0x42d6b1
mov r10, qword [rcx + rdx*8]
inc rdx
add r10, r9
mov r11, r10
shl r10, 0xa
lea r9, [r11 + r10]
mov r10, r9
shr r9, 6
xor r9, r10
cmp rdi, rdx
jg 0x42d692
mov r10, qword [0x010fc5b0]
test byte [r10], al
add r9, rbx
mov r11, r9
shl r9, 0xa
add r9, r11
mov r11, r9
shr r9, 6
xor r9, r11
lea r9, [r9 + r9*8]
mov r11, r9
shr r9, 0xb
xor r9, r11
mov rdx, rax
movabs rax, 0xba6a1fbc53191a92
mov r11, rdx
mul r9
shr rdx, 0x11
imul r12, rdx, 0x2bf1f
mov rax, r9
sub rax, r12
cmp rax, 0x2bf1f
jae 0x42d8c7
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x48], rax
mov r10, qword [r10 + rax*8]
jmp 0x42d728
mov r10, qword [r10]
test r10, r10
je 0x42d7c0
cmp qword [r10 + 0x10], r11
jne 0x42d725
cmp qword [r10 + 0x18], r9
jne 0x42d725
nop dword [rax]
cmp qword [r10 + 0x20], rbx
jne 0x42d725
nop
mov rdx, qword [r10 + 0x28]
cmp rdx, 0x20
ja 0x42d8bd
mov qword [rsp + 0x40], r10
lea rax, [r10 + 0x30]
mov rbx, rdx
mov r8, rsi
mov rsi, rdi
mov rdi, rcx
mov rcx, rbx
call fcn.0042d940
test al, al
jne 0x42d7af
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x50]
movzx r8d, byte [rsp + 0x90]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x68]
jmp 0x42d725
mov rax, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
test r8b, r8b
je 0x42d8a7
mov rax, r11
mov rbx, rdi
call fcn.0042d460
nop
mov rdx, qword [rax + 0x28]
nop dword [rax]
cmp rdx, 0x20
ja 0x42d8b3
mov rsi, qword [rsp + 0x50]
cmp rsi, rdx
cmovl rdx, rsi
lea rsi, [rax + 0x30]
mov rbx, qword [rsp + 0x78]
nop
cmp rbx, rsi
je 0x42d81e
mov qword [rsp + 0x38], rax
shl rdx, 3
mov rax, rsi
mov rcx, rdx
call fcn.004664e0
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x18], rcx
mov rcx, qword [rsp + 0x70]
mov qword [rax + 0x20], rcx
mov rcx, qword [0x010fc5b0]
test byte [rcx], al
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rcx + rdx*8]
mov qword [rax], rcx
mov rcx, qword [0x010fc5b0]
test byte [rcx], al
mov qword [rcx + rdx*8], rax
mov rcx, qword [rsp + 0x68]
cmp rcx, 1
jne 0x42d871
mov rcx, qword [0x01154460]
mov qword [rax + 8], rcx
mov qword [0x01154460], rax
jmp 0x42d89d
cmp rcx, 3
jne 0x42d88b
mov rcx, qword [0x01154528]
mov qword [rax + 8], rcx
mov qword [0x01154528], rax
jmp 0x42d89d
mov rcx, qword [0x011543d8]
mov qword [rax + 8], rcx
mov qword [0x011543d8], rax
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
xor eax, eax
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
mov ebx, 0x20
call fcn.00465c80
mov ebx, 0x20
call fcn.00465c80
mov ecx, 0x2bf1f
call fcn.00465b60
lea rax, [0x00ad0082]
mov ebx, 0x1f
nop dword [rax]
call fcn.00437b60
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x30], r8b
call fcn.00463440
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
movzx r8d, byte [rsp + 0x30]
jmp fcn.0042d5e0