Function at 0x14000f784
Capabilities:
Get geographical location

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x128
mov rbx, rdx
mov rsi, rcx
movabs r13, 0x8000000000000000
lea rdi, [rsp + 0xe0]
mov rcx, rdi
call fcn.140002b50
cmp byte [rdi], 0
je 0x14000f7d0
mov rax, qword [rsp + 0xe8]
mov qword [rsi + 8], rax
mov qword [rsi], r13
jmp 0x1400100d8
cmp byte [rsp + 0xe1], 0
je 0x14000fd37
movzx eax, byte [rsp + 0xe2]
cmp eax, 0x5b
je 0x14000fb38
cmp eax, 0x7b
jne 0x14000fdbd
dec byte [rbx + 0x30]
je 0x14000fd9a
inc qword [rbx + 0x28]
lea rbp, [rbx + 0x18]
xor r14d, r14d
mov dword [rsp + 0x30], 2
lea r12, [rsp + 0xd0]
mov rax, r13
lea r13, [rsp + 0x40]
mov r15, rax
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x90], 0
mov dword [rsp + 0x34], 0
mov rcx, r12
mov rdx, rbx
call fcn.140002b50
cmp byte [rsp + 0xd0], 0
jne 0x14000fc71
cmp byte [rsp + 0xd1], 0
je 0x14000fe0f
mov al, byte [rsp + 0xd2]
movzx ecx, al
cmp ecx, 0x2c
je 0x14000f889
cmp ecx, 0x7d
je 0x14000fd45
test r14b, 1
je 0x14000f8b8
jmp 0x14000fea5
test r14b, 1
je 0x14000f8b8
inc qword [rbx + 0x28]
mov rcx, r13
mov rdx, rbx
call fcn.140002b50
cmp byte [rsp + 0x40], 0
jne 0x14000fdb3
cmp byte [rsp + 0x41], 0
je 0x14000ff69
mov al, byte [rsp + 0x42]
cmp al, 0x22
jne 0x14000fdd9
inc qword [rbx + 0x28]
and qword [rbx + 0x10], 0
mov rcx, r13
mov rdx, rbp
mov r8, rbx
call fcn.140110b56
cmp dword [rsp + 0x40], 2
mov rdi, qword [rsp + 0x48]
je 0x14000ff80
mov r14, qword [rsp + 0x50]
mov r9d, 7
mov rcx, rdi
mov rdx, r14
lea r8, [0x1403aff9e]
call fcn.14006436c
test al, al
jne 0x14000f9a5
mov r9d, recvfrom
mov rcx, rdi
mov rdx, r14
lea r8, [0x1403affa5]
call fcn.14006436c
test al, al
jne 0x14000fa0b
mov r9d, 5
mov rcx, rdi
mov rdx, r14
lea r8, [0x1403affb3]
call fcn.14006436c
test al, al
jne 0x14000fa7e
mov r9d, 6
mov rcx, rdi
mov rdx, r14
lea r8, [0x1403affb8]
call fcn.14006436c
test al, al
jne 0x14000faba
mov r9d, 9
mov rcx, rdi
mov rdx, r14
lea r8, [0x1403affd4]
call fcn.14006436c
test al, al
jne 0x14000fafc
mov rcx, rbx
call fcn.140018043
mov r14b, 1
test rax, rax
je 0x14000f83f
jmp 0x14000ff7d
movabs r14, 0x8000000000000000
cmp r15, r14
jne 0x14001013e
lea rcx, [rsp + 0x110]
mov rdx, rbx
call fcn.140018325
mov r15, qword [rsp + 0x110]
cmp r15, r14
je 0x14000fed1
mov rcx, r14
mov rdx, qword [rsp + 0x38]
call fcn.140112200
mov rax, qword [rsp + 0x118]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0xa8], rax
mov r14b, 1
jmp 0x14000f83f
movabs r14, 0x8000000000000000
cmp qword [rsp + 0x28], r14
jne 0x14001014c
lea rcx, [rsp + 0xb8]
mov rdx, rbx
call fcn.1400183a3
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x28], rax
cmp rax, r14
je 0x14000fee9
mov rcx, r14
mov rdx, qword [rsp + 0x88]
call fcn.140112200
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xa0], rax
mov r14b, 1
jmp 0x14000f83f
cmp dword [rsp + 0x34], 0
jne 0x140010167
mov rcx, r13
mov rdx, rbx
call fcn.140018bc3
cmp dword [rsp + 0x40], 0
jne 0x14000fdb3
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x98], eax
mov dword [rsp + 0x34], 1
mov r14b, 1
jmp 0x14000f83f
cmp dword [rsp + 0x90], 0
jne 0x140010175
mov rcx, r13
mov rdx, rbx
call fcn.140018bc3
cmp dword [rsp + 0x40], 0
jne 0x14000fdb3
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0xb4], eax
mov dword [rsp + 0x90], 1
mov r14b, 1
jmp 0x14000f83f
cmp dword [rsp + 0x30], 2
jne 0x140010183
mov rcx, r13
mov rdx, rbx
call fcn.1400184dd
cmp dword [rsp + 0x40], 0
jne 0x14000fdb3
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0xb0], eax
mov r14b, 1
jmp 0x14000f83f
dec byte [rbx + 0x30]
je 0x14000fd9a
inc qword [rbx + 0x28]
lea rdx, [rsp + 0xb8]
mov qword [rdx], rbx
mov byte [rdx + 8], 1
lea rdi, [rsp + 0x40]
mov rcx, rdi
call fcn.14001995c
mov r15, qword [rdi]
movabs r14, 0x8000000000000001
cmp r15, r14
je 0x14000fc6a
movabs r12, 0x8000000000000000
cmp r15, r12
je 0x14000fdf9
lea rdi, [rsp + 0x40]
mov rax, qword [rdi + 8]
mov qword [rsp + 0x38], rax
mov rbp, qword [rdi + 0x10]
lea rdx, [rsp + 0xb8]
mov rcx, rdi
call fcn.140019de3
mov rax, qword [rdi]
cmp rax, r14
je 0x14000fc7e
cmp rax, r12
je 0x14000fe3c
mov r14, rax
lea r12, [rsp + 0x40]
mov rax, qword [r12 + 8]
mov qword [rsp + 0x28], rax
mov rdi, qword [r12 + 0x10]
lea rdx, [rsp + 0xb8]
mov rcx, r12
call fcn.140019cc7
cmp dword [r12], 0
jne 0x14000fc56
cmp dword [rsp + 0x44], 0
je 0x14000ff58
lea r12, [rsp + 0x40]
mov eax, dword [r12 + 8]
mov dword [rsp + 0x88], eax
lea rdx, [rsp + 0xb8]
mov rcx, r12
call fcn.140019cc7
cmp dword [r12], 0
jne 0x14000fc56
cmp dword [rsp + 0x44], 0
je 0x1400100fc
lea r12, [rsp + 0x40]
mov eax, dword [r12 + 8]
mov dword [rsp + 0x34], eax
lea rdx, [rsp + 0xb8]
mov rcx, r12
call fcn.140019f24
cmp dword [r12], 0
je 0x14000fe55
mov rdi, qword [rsp + 0x48]
mov rcx, r14
mov rdx, qword [rsp + 0x28]
call fcn.1400a3a56
jmp 0x14000fc83
mov rdi, qword [rsp + 0x48]
jmp 0x14000fc90
mov rdi, qword [rsp + 0xd8]
jmp 0x14000ff80
mov rdi, qword [rsp + 0x48]
mov rcx, r15
mov rdx, qword [rsp + 0x38]
call fcn.1400a3a56
mov r15, r13
inc byte [rbx + 0x30]
mov rcx, rbx
call fcn.140002d46
mov r12, rax
mov qword [rsp + 0x40], r15
mov r14, rdi
mov qword [rsp + 0x48], rdi
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x70], ebp
mov eax, dword [rsp + 0x30]
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0x34]
mov dword [rsp + 0x7c], eax
mov qword [rsp + 0x80], r12
cmp r15, r13
jne 0x14000fd19
test r12, r12
jne 0x140010057
jmp 0x140010064
test r12, r12
je 0x140010080
lea rcx, [rsp + 0x40]
call fcn.14000a5da
mov r15, r13
mov r14, r12
jmp 0x1400100a8
lea rdx, [rsp + 0x40]
mov qword [rdx], 5
jmp 0x14000fda6
movabs r13, 0x8000000000000000
cmp r15, r13
setne r12b
je 0x14000feb6
cmp qword [rsp + 0x28], r13
setne bpl
je 0x14000feff
cmp dword [rsp + 0x34], 0
je 0x14000ff15
cmp dword [rsp + 0x90], 0
je 0x14000ff23
xor ebp, ebp
mov eax, dword [rsp + 0x30]
cmp eax, 2
cmovne ebp, eax
mov r14, qword [rsp + 0x38]
jmp 0x14000ffd7
lea rdx, [rsp + 0x40]
mov qword [rdx], reloc.WS2_32.dll_setsockopt
mov rcx, rbx
call fcn.1402e2afc
jmp 0x14000f7c4
mov rdi, qword [rsp + 0x48]
jmp 0x14000ff80
lea r8, [0x1402eae10]
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.1402de729
mov r14, rax
jmp 0x1400100ec
movzx eax, al
cmp eax, 0x7d
movabs r13, 0x8000000000000000
lea rdx, [rsp + 0x40]
jne 0x14000fe20
mov qword [rdx], reloc.WS2_32.dll_select
jmp 0x14000fe27
lea rdx, str.struct_PhotoSize_with_5_elementsX._
xor ecx, ecx
call fcn.1402dec7a
mov rdi, rax
jmp 0x14000fc90
lea rdx, [rsp + 0x40]
mov qword [rdx], 3
jmp 0x14000ff75
mov qword [rdx], reloc.WS2_32.dll_recv
mov rcx, rbx
call fcn.1402e2afc
mov rdi, rax
xor ebp, ebp
xor r12d, r12d
jmp 0x14000ff8f
lea rdx, str.struct_PhotoSize_with_5_elementsX._
mov ecx, 1
call fcn.1402dec7a
mov rdi, rax
jmp 0x14000fc83
mov qword [rsp + 0x98], r15
mov edx, dword [rsp + 0x44]
cmp edx, 2
je 0x140010115
mov rax, rdi
mov r15d, edx
mov edx, dword [rsp + 0x48]
mov dword [rsp + 0x30], edx
mov rdi, qword [rsp + 0x38]
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xa0], rbp
mov qword [rsp + 0x90], rax
mov ebp, r15d
mov r15, qword [rsp + 0x98]
jmp 0x14000fc93
lea rdx, [rsp + 0x40]
mov qword [rdx], 8
jmp 0x14000ff75
lea rcx, [0x1403aff9e]
mov edx, 7
call fcn.1402dec24
mov rdi, rax
xor ebp, ebp
jmp 0x14000ff8f
mov rdi, qword [rsp + 0x118]
xor ebp, ebp
mov r15, r14
xor r12d, r12d
mov r13, r14
jmp 0x14000ff8f
mov rdi, qword [rsp + 0xc0]
xor r12d, r12d
mov rbp, r14
mov r13, r14
jmp 0x14000ffb5
lea rcx, [0x1403affa5]
mov edx, recvfrom
call fcn.1402dec24
mov rdi, rax
jmp 0x14000ff49
lea rcx, [0x1403affb3]
mov edx, 5
jmp 0x14000ff2f
lea rcx, [0x1403affb8]
mov edx, 6
call fcn.1402dec24
mov rdi, rax
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x88]
call fcn.1400a3a56
mov rcx, r15
mov rdx, qword [rsp + 0x38]
call fcn.1400a3a56
jmp 0x14000ff8f
lea rdx, str.struct_PhotoSize_with_5_elementsX._
mov ecx, 2
jmp 0x140010108
lea rdx, [rsp + 0x40]
mov qword [rdx], 5
mov rcx, rbx
call fcn.1402e2afc
mov rdi, rax
xor ebp, ebp
xor r12d, r12d
movabs r13, 0x8000000000000000
test bpl, bpl
jne 0x14000ffb0
mov rbp, qword [rsp + 0x28]
cmp rbp, r13
je 0x14000ffb5
mov rcx, rbp
mov rdx, qword [rsp + 0x88]
call fcn.1400a3a56
jmp 0x14000ffb5
mov rbp, qword [rsp + 0x28]
test r12b, r12b
mov qword [rsp + 0x28], rbp
jne 0x14000ffd1
cmp r15, r13
je 0x14000ffd1
mov rcx, r15
mov rdx, qword [rsp + 0x38]
call fcn.1400a3a56
mov r14, rdi
mov r15, r13
inc byte [rbx + 0x30]
mov rcx, rbx
call fcn.140002cd1
mov rdi, rax
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], r14
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x70], ebp
mov eax, dword [rsp + 0xb0]
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x78], eax
mov eax, dword [rsp + 0xb4]
mov dword [rsp + 0x7c], eax
mov qword [rsp + 0x80], rdi
cmp r15, r13
jne 0x140010069
test rdi, rdi
je 0x140010064
lea rcx, [rsp + 0x80]
call fcn.140009c2e
mov r15, r13
jmp 0x1400100a8
test rdi, rdi
je 0x140010080
lea rcx, [rsp + 0x40]
call fcn.14000a5da
mov r15, r13
mov r14, rdi
jmp 0x1400100a8
lea rax, [rsp + 0x50]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movaps xmmword [rsp + 0x100], xmm2
movaps xmmword [rsp + 0xf0], xmm1
movaps xmmword [rsp + 0xe0], xmm0
cmp r15, r13
je 0x1400100ec
movaps xmm0, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xf0]
movaps xmm2, xmmword [rsp + 0x100]
movups xmmword [rsi + 0x30], xmm2
movups xmmword [rsi + 0x20], xmm1
movups xmmword [rsi + 0x10], xmm0
mov qword [rsi], r15
mov qword [rsi + 8], r14
add rsp, 0x128
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rbx
mov rdx, r14
call fcn.1402de4b0
jmp 0x14000f7c4
lea rdx, str.struct_PhotoSize_with_5_elementsX._
mov ecx, 3
call fcn.1402dec7a
mov rdi, rax
jmp 0x14000fc5b
lea rdx, str.struct_PhotoSize_with_5_elementsX._
mov ecx, 4
call fcn.1402dec7a
mov rdi, rax
mov rcx, r14
mov rdx, qword [rsp + 0x28]
mov r15, qword [rsp + 0x98]
jmp 0x14000fc63
lea rcx, [0x1403aff9e]
mov edx, 7
jmp 0x140010158
lea rcx, [0x1403affa5]
mov edx, recvfrom
call fcn.1402decf1
mov rdi, rax
xor ebp, ebp
jmp 0x14000fede
lea rcx, [0x1403affb3]
mov edx, 5
jmp 0x14001018f
lea rcx, [0x1403affb8]
mov edx, 6
jmp 0x14001018f
lea rcx, [0x1403affd4]
mov edx, 9
call fcn.1402decf1
jmp 0x14000ff7d