Function at 0x140017c62
Capabilities:
Get geographical location

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x308
mov r14, rdx
mov rbx, rcx
mov rcx, rdx
call fcn.140002cb9
movabs r13, 0x8000000000000000
test rax, rax
jne 0x140017cb2
lea rsi, [rsp + 0x148]
mov rcx, rsi
mov rdx, r14
call fcn.140002be7
cmp byte [rsi], 0
je 0x140017ccd
mov rax, qword [rsp + 0x150]
mov qword [rbx + 8], rax
mov qword [rbx], r13
add rsp, 0x308
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp byte [rsp + 0x149], 0
je 0x140018a01
cmp byte [rsp + 0x14a], 0x5b
jne 0x140018a1d
dec byte [r14 + 0x30]
je 0x140018a39
mov qword [rsp + 0x38], rbx
inc qword [r14 + 0x28]
lea rax, [rsp + 0x130]
and qword [rax], 0
mov qword [rax + 8], 8
and qword [rax + 0x10], 0
mov r13b, 1
mov eax, 8
mov qword [rsp + 0x98], rax
xor eax, eax
mov qword [rsp + 0x70], rax
lea r12, [rsp + 0xa0]
lea rbp, [rsp + 0x88]
lea rbx, [0x1402e4755]
lea rdi, [0x1402e5205]
mov qword [rsp + 0x58], r14
lea rcx, [rsp + 0x148]
mov rdx, r14
call fcn.140002be7
cmp byte [rsp + 0x148], 0
jne 0x140018920
cmp byte [rsp + 0x149], 0
je 0x1400182fb
mov al, byte [rsp + 0x14a]
movzx ecx, al
cmp ecx, 0x2c
je 0x140017dbf
movabs r14, 0x800000000000000e
cmp ecx, 0x5d
je 0x14001831f
test r13b, r13b
mov r14, qword [rsp + 0x58]
lea rbx, [0x1402e4755]
jne 0x140017dc8
mov qword [rsp + 0xa0], 7
jmp 0x140018307
test r13b, r13b
je 0x140018278
movabs rsi, 0x8000000000000000
lea r13, [0x1403aab52]
cmp al, 0x5d
je 0x140018ae1
lea rcx, [rsp + 0x148]
mov rdx, r14
call fcn.140002be7
cmp byte [rsp + 0x148], 0
jne 0x140018975
cmp byte [rsp + 0x149], 0
je 0x140018acd
movzx eax, byte [rsp + 0x14a]
cmp eax, 0x7b
jne 0x140018a9a
dec byte [r14 + 0x30]
je 0x140018b16
inc qword [r14 + 0x28]
mov qword [rsp + 0x88], r14
mov byte [rsp + 0x90], 1
mov qword [rsp + 0x148], rsi
mov al, 1
mov dword [rsp + 0x7c], eax
mov r14, rsi
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rsi
xor eax, eax
mov qword [rsp + 0x128], rax
mov rcx, r12
mov rdx, rbp
call fcn.14001ea82
cmp qword [rsp + 0xa0], 0
mov r15, qword [rsp + 0xa8]
jne 0x140018182
test r15, r15
je 0x1400181e9
mov rsi, qword [rsp + 0xb0]
mov r9d, 6
mov rcx, r15
mov rdx, rsi
mov r8, r13
call fcn.140064d09
test al, al
jne 0x140017f65
mov r9d, 6
mov rcx, r15
mov rdx, rsi
lea r8, [0x1403aabcb]
call fcn.140064d09
test al, al
jne 0x140017f98
mov r9d, 3
mov rcx, r15
mov rdx, rsi
lea r8, [0x1402e39f8]
call fcn.140064d09
test al, al
jne 0x140017fc6
mov r9d, 4
mov rcx, r15
mov rdx, rsi
mov r8, rdi
call fcn.140064d09
test al, al
jne 0x140018027
mov r9d, 8
mov rcx, r15
mov rdx, rsi
lea r8, [0x1402e5209]
call fcn.140064d09
test al, al
jne 0x1400180c4
mov r9d, 4
mov rcx, r15
mov rdx, rsi
mov r8, rbx
call fcn.140064d09
test al, al
jne 0x140018125
mov rcx, r12
mov rdx, rbp
call fcn.14001ebfe
mov rcx, r12
call fcn.140008603
jmp 0x140017e66
mov rcx, qword [rsp + 0x88]
call fcn.140018fe8
mov r15, rdx
test rax, rax
jne 0x140018182
mov eax, 1
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x1d0], r15
jmp 0x140017e66
mov rcx, qword [rsp + 0x88]
call fcn.140018fe8
mov r15, rdx
test rax, rax
jne 0x140018182
mov dword [rsp + 0x7c], 0
mov qword [rsp + 0x1c8], r15
jmp 0x140017e66
mov rdx, qword [rsp + 0x88]
mov rcx, r12
call fcn.14001739a
mov rsi, qword [rsp + 0xa0]
mov r15, qword [rsp + 0xa8]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x140018182
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x1c0], rax
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x60]
call fcn.14000a0fc
mov qword [rsp + 0x60], r15
mov qword [rsp + 0x50], rsi
jmp 0x140017e66
mov rdx, qword [rsp + 0x88]
mov rcx, r12
call fcn.14001925e
mov r14, qword [rsp + 0xa0]
mov r15, qword [rsp + 0xa8]
movabs rax, 0x8000000000000000
cmp r14, rax
je 0x140018182
mov ecx, listen
mov r13, r12
mov r12, rbp
lea rbp, [rsp + 0x1d8]
mov rdi, rbp
lea rsi, [rsp + 0xb0]
rep movsq qword [rdi], qword [rsi]
lea rcx, [rsp + 0x148]
call fcn.14000b26a
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], r15
mov ecx, listen
lea rdi, [rsp + 0x158]
mov rsi, rbp
mov rbp, r12
mov r12, r13
lea r13, [0x1403aab52]
rep movsq qword [rdi], qword [rsi]
lea rdi, [0x1402e5205]
jmp 0x140017e66
mov rdx, qword [rsp + 0x88]
mov rcx, r12
call fcn.14001739a
mov rsi, qword [rsp + 0xa0]
mov r15, qword [rsp + 0xa8]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x140018182
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x1b8], rax
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x68]
call fcn.14000a0fc
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x68], r15
jmp 0x140017e66
mov rdx, qword [rsp + 0x88]
mov rcx, r12
call fcn.14001739a
mov rsi, qword [rsp + 0xa0]
mov r15, qword [rsp + 0xa8]
movabs rax, 0x8000000000000000
cmp rsi, rax
je 0x140018182
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x30]
call fcn.14000a0fc
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x40], rsi
jmp 0x140017e66
mov r13b, 1
mov sil, 1
mov dil, 1
mov rbx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x68]
call fcn.14000a0fc
test r13b, r13b
je 0x1400181b1
lea rcx, [rsp + 0x148]
call fcn.14000b26a
test sil, sil
je 0x1400181c5
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x60]
call fcn.14000a0fc
test dil, dil
je 0x1400181d7
mov rcx, qword [rsp + 0x40]
mov rdx, rbx
call fcn.14000a0fc
movabs rbx, 0x800000000000000e
mov r14, rbx
jmp 0x140018650
movabs r15, 0x8000000000000000
cmp qword [rsp + 0x40], r15
je 0x1400183de
mov r9d, listen
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
mov rsi, qword [rsp + 0x80]
mov rdx, rsi
lea r8, str.text_mentiontext_linkmentionhashtagcashtagbot_commandbolditalicunderlinestrikethroughpre
call fcn.140064d09
mov r13d, eax
test al, al
mov byte [rsp + 0x2b], al
je 0x14001829f
cmp r14, r15
je 0x14001842c
mov rdx, qword [rsp + 0x160]
mov r15, qword [rsp + 0x150]
mov rax, qword [rsp + 0x158]
mov ecx, 0xa
lea r8, [rsp + 0x1d8]
mov rdi, r8
lea rsi, [rsp + 0x168]
rep movsq qword [rdi], qword [rsi]
mov r13b, 1
mov cl, 1
mov dword [rsp + 0x2c], ecx
jmp 0x140018593
inc qword [r14 + 0x28]
mov rcx, r12
mov rdx, r14
call fcn.140002be7
cmp byte [rsp + 0xa0], 0
je 0x140018358
mov r15, qword [rsp + 0xa8]
jmp 0x140018315
mov r9d, 9
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e5314]
call fcn.140064d09
test al, al
je 0x14001832e
mov rax, r15
mov r15, qword [rsp + 0x50]
cmp r15, rax
lea r8, [rsp + 0x1d8]
je 0x140018472
mov r13b, 1
mov dword [rsp + 0x2c], 0
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x1c0]
movabs r14, 0x800000000000000d
jmp 0x140018593
mov qword [rsp + 0xa0], 2
mov rcx, r14
mov rdx, r12
call fcn.1402ddbec
mov r15, rax
movabs r14, 0x800000000000000f
movabs rax, 0x800000000000000e
jmp 0x1400186e0
mov r9d, 7
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e531d]
call fcn.140064d09
test al, al
je 0x14001837c
mov al, 1
mov dword [rsp + 0x2c], eax
mov r14, r15
jmp 0x140018588
cmp byte [rsp + 0xa1], 0
movabs rsi, 0x8000000000000000
je 0x140018acd
mov al, byte [rsp + 0xa2]
jmp 0x140017dd2
mov r9d, 7
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e5324]
call fcn.140064d09
test al, al
je 0x1400183ad
mov al, 1
mov dword [rsp + 0x2c], eax
movabs r14, 0x8000000000000001
jmp 0x140018588
mov r9d, 7
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e532b]
call fcn.140064d09
test al, al
je 0x1400183fb
mov al, 1
mov dword [rsp + 0x2c], eax
movabs r14, 0x8000000000000002
jmp 0x140018588
mov edx, 4
mov rcx, rbx
call fcn.1402d98f4
mov r15, rax
mov r13b, 1
xor edi, edi
mov sil, 1
jmp 0x14001818b
mov r9d, listen
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e5332]
call fcn.140064d09
test al, al
je 0x140018441
mov al, 1
mov dword [rsp + 0x2c], eax
movabs r14, 0x8000000000000003
jmp 0x140018588
mov edx, 4
mov rcx, rdi
call fcn.1402d98f4
mov r15, rax
mov sil, 1
jmp 0x140018488
mov r9d, 3
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e39f8]
call fcn.140064d09
test al, al
je 0x1400184a0
mov al, 1
mov dword [rsp + 0x2c], eax
movabs r14, 0x8000000000000004
jmp 0x140018588
mov edx, 3
lea rcx, [0x1402e39f8]
call fcn.1402d98f4
mov r15, rax
xor esi, esi
xor r13b, 1
mov rcx, qword [rsp + 0x40]
mov rdx, rbx
call fcn.1400afd38
xor edi, edi
jmp 0x140018190
mov r9d, 5
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1403aabfd]
call fcn.140064d09
test al, al
je 0x1400184d1
mov al, 1
mov dword [rsp + 0x2c], eax
movabs r14, 0x8000000000000005
jmp 0x140018588
mov r9d, listen
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1403aaafc]
call fcn.140064d09
test al, al
je 0x140018502
mov al, 1
mov dword [rsp + 0x2c], eax
movabs r14, 0x8000000000000006
jmp 0x140018588
mov r9d, 4
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e533d]
call fcn.140064d09
test al, al
je 0x140018530
mov al, 1
mov dword [rsp + 0x2c], eax
movabs r14, 0x8000000000000007
jmp 0x140018588
mov al, 1
mov dword [rsp + 0x2c], eax
mov r9d, 6
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e5341]
call fcn.140064d09
test al, al
je 0x14001855e
movabs r14, 0x8000000000000008
jmp 0x140018588
mov r9d, 9
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e5347]
call fcn.140064d09
test al, al
je 0x140018840
movabs r14, 0x8000000000000009
mov r13b, 1
lea r8, [rsp + 0x1d8]
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0xa8], r15
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], rdx
mov ecx, 0xa
lea rdi, [rsp + 0xc0]
mov rsi, r8
rep movsq qword [rdi], qword [rsi]
cmp qword [rsp + 0x128], 0
je 0x140018787
test byte [rsp + 0x7c], 1
jne 0x1400187d0
mov ecx, listen
lea rdi, [rsp + 0x238]
lea rsi, [rsp + 0xb0]
rep movsq qword [rdi], qword [rsi]
mov rcx, qword [rsp + 0x40]
mov rdx, rbx
call fcn.1400afd38
test r13b, r13b
je 0x140018619
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x68]
call fcn.14000a0fc
cmp byte [rsp + 0x2b], 0
mov rsi, qword [rsp + 0x50]
jne 0x140018632
lea rcx, [rsp + 0x148]
call fcn.14000b26a
cmp byte [rsp + 0x2c], 0
je 0x140018646
mov rcx, rsi
mov rdx, qword [rsp + 0x60]
call fcn.14000a0fc
movabs rbx, 0x800000000000000e
mov rcx, qword [rsp + 0x58]
inc byte [rcx + 0x30]
call fcn.140002d68
mov r13, rax
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0xa8], r15
mov ecx, listen
lea rdi, [rsp + 0xb0]
lea rsi, [rsp + 0x238]
rep movsq qword [rdi], qword [rsi]
mov rax, qword [rsp + 0x1d0]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x1c8]
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], r13
cmp r14, rbx
je 0x140018b38
test r13, r13
jne 0x140018b51
mov rax, rbx
mov ecx, recvfrom
lea rdi, [rsp + 0x298]
lea rsi, [rsp + 0xb0]
rep movsq qword [rdi], qword [rsi]
xor r13d, r13d
lea rbx, [0x1402e4755]
cmp r14, rax
je 0x14001894f
movabs rax, 0x800000000000000f
cmp r14, rax
je 0x140018939
mov rax, qword [rsp + 0x70]
cmp rax, qword [rsp + 0x130]
jne 0x14001872f
lea rcx, [rsp + 0x130]
call fcn.1400168d8
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x98], rax
mov rdx, qword [rsp + 0x70]
mov rax, rdx
shl rax, 7
mov rcx, qword [rsp + 0x98]
lea rdi, [rcx + rax]
add rdi, 0x10
mov qword [rdi - 0x10], r14
mov qword [rdi - 8], r15
mov ecx, recvfrom
lea rsi, [rsp + 0x298]
rep movsq qword [rdi], qword [rsi]
inc rdx
mov rax, rdx
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x140], rdx
mov r14, qword [rsp + 0x58]
lea rdi, [0x1402e5205]
jmp 0x140017d4f
mov edx, 6
lea rcx, [0x1403aab52]
call fcn.1402d98f4
mov r15, rax
mov rcx, r12
call fcn.14000acb4
mov rcx, qword [rsp + 0x40]
mov rdx, rbx
call fcn.1400afd38
test r13b, r13b
je 0x1400187c4
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x68]
call fcn.14000a0fc
cmp byte [rsp + 0x2b], 0
mov rsi, qword [rsp + 0x50]
jmp 0x140018817
mov edx, 6
lea rcx, [0x1403aabcb]
call fcn.1402d98f4
mov r15, rax
mov rcx, r12
call fcn.14000acb4
mov rcx, qword [rsp + 0x40]
mov rdx, rbx
call fcn.1400afd38
test r13b, r13b
mov rsi, qword [rsp + 0x50]
je 0x140018812
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x68]
call fcn.14000a0fc
cmp byte [rsp + 0x2b], 0
mov edi, dword [rsp + 0x2c]
jne 0x14001882a
lea rcx, [rsp + 0x148]
call fcn.14000b26a
test dil, dil
je 0x1400181d7
mov rcx, rsi
mov rdx, qword [rsp + 0x60]
jmp 0x1400181d2
mov r9d, reloc.WS2_32.dll_listen
mov rcx, rbx
mov rdx, rsi
lea r8, [0x1402e5350]
call fcn.140064d09
test al, al
je 0x140018868
movabs r14, 0x800000000000000a
jmp 0x140018895
mov r9d, 4
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x80]
lea r8, [0x1403a257f]
call fcn.140064d09
test al, al
je 0x14001889a
movabs r14, 0x800000000000000b
mov r13b, 1
jmp 0x1400188dc
mov r9d, 3
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x80]
lea r8, [0x1402e535d]
call fcn.140064d09
test al, al
je 0x1400188ee
xor r13d, r13d
mov r15, qword [rsp + 0x48]
mov rax, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x1b8]
movabs r14, 0x800000000000000c
lea r8, [rsp + 0x1d8]
mov rbx, qword [rsp + 0x30]
jmp 0x140018593
mov r9d, reloc.WS2_32.dll_ntohs
mov rbx, qword [rsp + 0x30]
mov rcx, rbx
mov rdx, qword [rsp + 0x80]
lea r8, [0x1402e5360]
call fcn.1402d9a6d
mov r15, rax
mov sil, 1
mov r13b, byte [rsp + 0x2b]
jmp 0x140018488
mov r15, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x38]
movabs r13, 0x8000000000000000
jmp 0x140018985
mov rbx, qword [rsp + 0x38]
movabs r13, 0x8000000000000000
mov r14, qword [rsp + 0x58]
jmp 0x140018985
mov rdi, qword [rsp + 0x130]
mov rbx, qword [rsp + 0x38]
movabs r13, 0x8000000000000000
mov r15, qword [rsp + 0x98]
mov r14, qword [rsp + 0x58]
jmp 0x14001899c
mov r13, rsi
mov r15, qword [rsp + 0x150]
mov rbx, qword [rsp + 0x38]
lea rcx, [rsp + 0x130]
call fcn.14000b532
movabs rdi, 0x8000000000000000
inc byte [r14 + 0x30]
mov rcx, r14
call fcn.140002ddd
mov rsi, rax
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0xa8], r15
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], rsi
movabs rax, 0x8000000000000000
cmp rdi, rax
je 0x140018a66
test rsi, rsi
jne 0x140018a7a
mov qword [rbx], rdi
mov qword [rbx + 8], r15
mov rax, qword [rsp + 0x70]
mov qword [rbx + 0x10], rax
jmp 0x140017cb9
lea rdx, [rsp + 0xa0]
mov qword [rdx], 5
mov rcx, r14
call fcn.1402ddbec
jmp 0x140017cb2
lea r8, [0x1402e5ad8]
lea rdx, [rsp + 0x148]
mov rcx, r14
call fcn.1402d91c2
mov r15, rax
jmp 0x140018a8a
lea rdx, [rsp + 0xa0]
mov qword [rdx], reloc.WS2_32.dll_setsockopt
mov rcx, r14
call fcn.1402ddbec
mov qword [rbx + 8], rax
movabs rax, 0x8000000000000000
mov qword [rbx], rax
jmp 0x140017cb9
test rsi, rsi
je 0x140018a8a
lea rcx, [rsp + 0xb8]
call fcn.140009e87
jmp 0x140018a8a
lea rcx, [rsp + 0xa0]
call fcn.14000b532
mov r15, rsi
mov rcx, r14
mov rdx, r15
call fcn.1402d9180
jmp 0x140017cb2
mov r13, rsi
cmp eax, 0x5b
jne 0x140018af5
dec byte [r14 + 0x30]
mov rbx, qword [rsp + 0x38]
jne 0x140018b88
lea rdx, [rsp + 0xa0]
mov qword [rdx], reloc.WS2_32.dll_setsockopt
mov rcx, r14
call fcn.1402ddbec
jmp 0x140018b80
mov r13, rsi
lea rdx, [rsp + 0xa0]
mov qword [rdx], 5
jmp 0x140018b28
mov r13, rsi
lea rdx, [rsp + 0xa0]
mov qword [rdx], reloc.WS2_32.dll_select
jmp 0x140018b28
lea r8, [0x1402e4358]
lea rdx, [rsp + 0x148]
mov rcx, r14
call fcn.1402d91c2
mov r15, rax
mov rbx, qword [rsp + 0x38]
jmp 0x140018b75
mov r13, rsi
lea rdx, [rsp + 0xa0]
mov qword [rdx], reloc.WS2_32.dll_setsockopt
mov rcx, r14
call fcn.1402ddbec
mov r15, rax
jmp 0x140018980
test r13, r13
mov rbx, qword [rsp + 0x38]
je 0x140018b66
lea rcx, [rsp + 0x120]
call fcn.140009e87
jmp 0x140018b66
lea rcx, [rsp + 0xa0]
call fcn.14000acb4
mov r15, r13
mov rbx, qword [rsp + 0x38]
movabs r13, 0x8000000000000000
mov r14, qword [rsp + 0x58]
mov rcx, r14
mov rdx, r15
call fcn.1402d9180
mov r15, rax
jmp 0x140018985
inc qword [r14 + 0x28]
lea rsi, [rsp + 0xa0]
mov byte [rsi], 0xa
lea r8, [0x1402e4358]
lea rdx, [rsp + 0x148]
mov rcx, rsi
call fcn.1402ddadf
mov r15, rax
inc byte [r14 + 0x30]
mov rcx, r14
call fcn.140002ddd
movabs rcx, 0x800000000000000e
mov qword [rsi], rcx
mov qword [rsi + 8], r15
mov qword [rsi + 0x80], rax
test rax, rax
je 0x140018b75
lea rcx, [rsp + 0x120]
call fcn.140009e87
jmp 0x140018b75