Function at 0x140032f48
Capabilities:
Get geographical location

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x158
mov r15, rdx
mov qword [rsp + 0xa8], rcx
lea rbx, [rsp + 0xf0]
mov rcx, rbx
call fcn.140002f38
cmp byte [rbx], 0
je 0x140032f98
mov rax, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0xa8]
mov qword [rcx], rax
and qword [rcx + 0x18], 0
jmp 0x140033770
cmp byte [rsp + 0xf1], 0
je 0x140033372
movzx eax, byte [rsp + 0xf2]
cmp eax, 0x5b
je 0x1400332c5
cmp eax, 0x7b
jne 0x140033467
dec byte [r15 + 0x30]
je 0x140033441
inc qword [r15 + 0x10]
lea rax, [rsp + 0xc8]
and qword [rax + 8], 0
lea rax, [rsp + 0xb0]
and qword [rax + 8], 0
lea rbp, [r15 + 0x18]
mov r14b, 1
xor esi, esi
lea rdi, [0x14041176e]
xor eax, eax
mov qword [rsp + 0x38], rax
xor ecx, ecx
mov al, 1
mov dword [rsp + 0x40], eax
xor eax, eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x48], rcx
mov ebx, ecx
lea rcx, [rsp + 0x110]
mov rdx, r15
call fcn.140002f38
cmp byte [rsp + 0x110], 0
jne 0x14003334f
cmp byte [rsp + 0x111], 0
je 0x14003360d
mov al, byte [rsp + 0x112]
movzx ecx, al
cmp ecx, 0x2c
je 0x140033063
cmp ecx, 0x7d
je 0x1400333d7
test r14b, r14b
jne 0x140033095
jmp 0x14003361e
test bl, 1
je 0x140033095
inc qword [r15 + 0x10]
lea rcx, [rsp + 0x60]
mov rdx, r15
call fcn.140002f38
cmp byte [rsp + 0x60], 0
jne 0x14003345a
cmp byte [rsp + 0x61], 0
je 0x140033943
mov al, byte [rsp + 0x62]
jmp 0x140033098
xor r14d, r14d
cmp al, 0x22
jne 0x1400334c4
inc qword [r15 + 0x10]
and qword [r15 + 0x28], 0
lea rcx, [rsp + 0x60]
mov rdx, r15
mov r8, rbp
call fcn.14014928b
cmp dword [rsp + 0x60], 2
mov r13, qword [rsp + 0x68]
je 0x14003335f
mov r12, qword [rsp + 0x70]
mov r9d, 2
mov rcx, r13
mov rdx, r12
lea r8, [0x1404117c8]
call fcn.14007dcaf
test al, al
jne 0x14003315e
mov r9d, 9
mov rcx, r13
mov rdx, r12
lea r8, [0x140411cff]
call fcn.14007dcaf
test al, al
jne 0x1400331e3
mov r9d, 4
mov rcx, r13
mov rdx, r12
lea r8, [0x140411d08]
call fcn.14007dcaf
test al, al
jne 0x140033245
mov r9d, 4
mov rcx, r13
mov rdx, r12
mov r8, rdi
call fcn.14007dcaf
test al, al
jne 0x140033285
mov rcx, r15
call fcn.140019d46
mov bl, 1
test rax, rax
je 0x140033015
jmp 0x140033367
cmp qword [rsp + 0x38], 0
jne 0x140033994
mov r12, rsi
lea rcx, [rsp + 0x60]
mov rdx, r15
call fcn.1400189bd
mov r13, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
test rsi, rsi
je 0x140033638
mov rbx, qword [rsp + 0x70]
lea rcx, [rsp + 0xc8]
call fcn.1400c2f77
mov qword [rsp + 0xc8], r13
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0xd8], rbx
mov bl, 1
mov qword [rsp + 0x128], r13
mov qword [rsp + 0x120], r13
mov qword [rsp + 0xe8], r13
mov qword [rsp + 0x38], rsi
mov rsi, r12
jmp 0x140033015
test rsi, rsi
jne 0x1400339bc
lea rcx, [rsp + 0x60]
mov rdx, r15
call fcn.140019b66
mov r13, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x1400338c9
mov rsi, qword [rsp + 0x70]
lea rcx, [rsp + 0xb0]
call fcn.1400c2f77
mov qword [rsp + 0x58], r13
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rsi
mov rsi, rbx
mov bl, 1
jmp 0x140033015
cmp qword [rsp + 0x30], 1
je 0x1400339cd
lea rcx, [rsp + 0x60]
mov rdx, r15
call fcn.140019c92
cmp qword [rsp + 0x60], 0
jne 0x14003345a
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x28], rax
mov eax, 1
mov qword [rsp + 0x30], rax
mov bl, 1
jmp 0x140033015
test byte [rsp + 0x48], 1
jne 0x1400339d9
lea rcx, [rsp + 0x60]
mov rdx, r15
call fcn.1400189f6
cmp qword [rsp + 0x60], 0
jne 0x14003345a
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xe0], rax
mov cl, 1
mov dword [rsp + 0x40], 0
jmp 0x14003300e
dec byte [r15 + 0x30]
je 0x140033441
inc qword [r15 + 0x10]
lea rdx, [rsp + 0xc8]
mov qword [rdx], r15
mov byte [rdx + 8], 1
lea rbx, [rsp + 0x60]
mov rcx, rbx
call fcn.14001ab37
cmp qword [rbx], 0
je 0x140033304
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x28], rax
jmp 0x140033560
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x1400334f3
lea rbp, [rsp + 0x60]
mov rax, qword [rbp + 8]
mov qword [rsp + 0x30], rax
mov rsi, qword [rbp + 0x18]
lea rdx, [rsp + 0xc8]
mov rcx, rbp
call fcn.14001ac5c
cmp qword [rbp], 0
je 0x140033383
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x28], rax
mov rsi, qword [rsp + 0x30]
jmp 0x140033555
mov r12, rsi
mov r13, qword [rsp + 0x118]
jmp 0x140033638
mov r12, rsi
jmp 0x140033638
mov r13, rax
mov r12, rsi
jmp 0x14003363a
lea rdx, [rsp + 0x60]
mov qword [rdx], 5
jmp 0x14003344d
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x140033898
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x40], rax
mov r14, qword [rsp + 0x78]
mov rdi, qword [rsp + 0xc8]
lea rbp, [rsp + 0xb0]
mov rcx, rbp
mov rdx, rdi
call fcn.140002f38
cmp byte [rbp], 0
je 0x140033483
mov rax, qword [rsp + 0xb8]
jmp 0x14003353c
mov r12, rsi
cmp qword [rsp + 0x38], 0
sete sil
je 0x1400338ae
test r12, r12
sete bl
je 0x1400338db
mov rcx, qword [rsp + 0x30]
test rcx, rcx
sete al
or al, byte [rsp + 0x40]
test al, 1
jne 0x1400338f6
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x150], rax
movups xmm0, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x140], xmm0
mov rbx, qword [rsp + 0x38]
mov r13, qword [rsp + 0x28]
mov r14, qword [rsp + 0x50]
jmp 0x14003367c
lea rdx, [rsp + 0x60]
mov qword [rdx], 0x18
mov rcx, r15
call fcn.140331a00
jmp 0x140032f83
mov r12, rsi
mov r13, qword [rsp + 0x68]
jmp 0x140033638
lea r8, [0x14033e6c8]
lea rdx, [rsp + 0x60]
mov rcx, r15
call fcn.140331c90
mov r13, rax
jmp 0x140033784
cmp byte [rsp + 0xb1], 0
je 0x140033957
mov al, byte [rsp + 0xb2]
movzx ecx, al
cmp ecx, 0x2c
je 0x140033506
cmp ecx, 0x5d
je 0x14003397e
cmp byte [rsp + 0xd0], 0
jne 0x140033514
lea rdx, [rsp + 0x60]
mov qword [rdx], 7
jmp 0x140033971
mov r12, rsi
movzx eax, al
cmp eax, 0x7d
mov rbp, qword [rsp + 0x38]
mov r14, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
lea rdx, [rsp + 0x60]
jne 0x140033794
mov qword [rdx], reloc.WS2_32.dll_setsockopt
jmp 0x14003379b
lea rdx, str.struct_File_with_4_elements
xor ecx, ecx
call fcn.14033218f
jmp 0x1400332fa
cmp byte [rsp + 0xd0], 0
je 0x140033866
cmp al, 0x5d
je 0x140033965
lea rbp, [rsp + 0x60]
mov rcx, rbp
mov rdx, rdi
call fcn.140034c1b
cmp qword [rbp], 0
je 0x1400337b0
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
call fcn.14007ab60
mov rcx, rsi
mov rdx, rbx
call fcn.14007ab60
xor ebx, ebx
inc byte [r15 + 0x30]
mov rcx, r15
call fcn.1400030e7
mov rbp, rax
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], rbx
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x98], r13
mov qword [rsp + 0xa0], rbp
test rbx, rbx
je 0x1400335ef
test rbp, rbp
jne 0x1400336e9
lea rax, [rsp + 0x68]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
movups xmm0, xmmword [rax + 0x18]
movups xmm1, xmmword [rax + 0x28]
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0x100], xmm1
jmp 0x140033603
test rbp, rbp
je 0x140033601
lea rcx, [rsp + 0xa0]
call fcn.14000aae6
xor ebx, ebx
mov r13, qword [rsp + 0x28]
jmp 0x140033738
mov r12, rsi
lea rdx, [rsp + 0x60]
mov qword [rdx], 3
jmp 0x14003362d
mov r12, rsi
lea rdx, [rsp + 0x60]
mov qword [rdx], 8
mov rcx, r15
call fcn.140331a00
mov r13, rax
mov bl, 1
mov sil, 1
mov rbp, qword [rsp + 0x38]
mov r14, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
test bl, bl
je 0x140033660
test r12, r12
je 0x140033660
mov rcx, rdi
mov rdx, r12
call fcn.14007ab60
test sil, sil
je 0x14003367a
test rbp, rbp
je 0x14003367a
mov rcx, qword [rsp + 0x128]
mov rdx, rbp
call fcn.14007ab60
xor ebx, ebx
mov rsi, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xe8]
inc byte [r15 + 0x30]
mov rcx, r15
call fcn.140003072
mov rbp, rax
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], r14
movaps xmm0, xmmword [rsp + 0x140]
movups xmmword [rsp + 0x88], xmm0
mov rax, qword [rsp + 0x150]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rbp
test rbx, rbx
je 0x1400336fa
test rbp, rbp
je 0x140033710
lea rcx, [rsp + 0x60]
call fcn.14000b57f
xor ebx, ebx
mov r13, rbp
jmp 0x140033738
test rbp, rbp
je 0x14003370c
lea rcx, [rsp + 0xa0]
call fcn.14000aae6
xor ebx, ebx
jmp 0x140033738
lea rax, [rsp + 0x68]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x130], xmm0
movups xmm0, xmmword [rax + 0x18]
movups xmm1, xmmword [rax + 0x28]
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0x100], xmm1
test rbx, rbx
je 0x140033784
movaps xmm0, xmmword [rsp + 0x130]
mov rax, qword [rsp + 0xa8]
movups xmmword [rax + 8], xmm0
movaps xmm0, xmmword [rsp + 0xf0]
movaps xmm1, xmmword [rsp + 0x100]
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm1
mov qword [rax], r13
mov qword [rax + 0x18], rbx
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, r15
mov rdx, r13
call fcn.140331a38
jmp 0x140032f83
mov qword [rdx], reloc.WS2_32.dll_recvfrom
mov rcx, r15
call fcn.140331a00
mov r13, rax
mov bl, 1
mov sil, 1
jmp 0x14003364c
mov r13, qword [rsp + 0x68]
lea rbp, [rsp + 0xb0]
mov rcx, rbp
mov rdx, rdi
call fcn.140002f38
cmp byte [rbp], 0
jne 0x1400333ca
mov qword [rsp + 0x28], r13
cmp byte [rsp + 0xb1], 0
je 0x140033957
movzx eax, byte [rsp + 0xb2]
cmp eax, 0x2c
jne 0x1400339a5
inc qword [rdi + 0x10]
lea rbp, [rsp + 0x60]
mov rcx, rbp
mov rdx, rdi
call fcn.140002f38
cmp byte [rbp], 0
jne 0x140033537
cmp byte [rsp + 0x61], 0
je 0x1400339f2
cmp byte [rsp + 0x62], 0x5d
je 0x140033965
lea rbp, [rsp + 0x60]
mov rcx, rbp
mov rdx, rdi
call fcn.140017bd4
cmp qword [rbp], 0
jne 0x140033537
mov qword [rsp + 0x38], rsi
mov rsi, qword [rsp + 0x68]
mov r13, r14
mov rdi, qword [rsp + 0x48]
mov r12, qword [rsp + 0x30]
mov r14, qword [rsp + 0x40]
jmp 0x140033562
inc qword [rdi + 0x10]
lea rbp, [rsp + 0x60]
mov rcx, rbp
mov rdx, rdi
call fcn.140002f38
cmp byte [rbp], 0
jne 0x140033537
cmp byte [rsp + 0x61], 0
je 0x1400339f2
mov al, byte [rsp + 0x62]
jmp 0x140033514
lea rdx, str.struct_File_with_4_elements
mov ecx, 1
call fcn.14033218f
jmp 0x140033340
lea rcx, [0x1404117c8]
mov edx, 2
call fcn.1403320e3
mov r13, rax
mov bl, 1
jmp 0x14003363d
mov sil, 1
mov rbp, qword [rsp + 0x38]
mov r14, qword [rsp + 0x50]
jmp 0x140033660
lea rcx, [0x140411cff]
mov edx, 9
call fcn.1403320e3
mov r13, rax
mov rdi, qword [rsp + 0x58]
jmp 0x140033924
test rcx, rcx
lea rax, [0x140411d08]
cmove rdi, rax
mov edx, 4
mov rcx, rdi
call fcn.1403320e3
mov r13, rax
mov rdi, qword [rsp + 0x58]
mov rcx, rdi
mov rdx, r12
call fcn.14007ab60
mov rcx, qword [rsp + 0x120]
mov rbp, qword [rsp + 0x38]
mov rdx, rbp
call fcn.14007ab60
mov r14, qword [rsp + 0x50]
jmp 0x14003364c
mov r12, rsi
lea rdx, [rsp + 0x60]
mov qword [rdx], 5
jmp 0x14003362d
lea rdx, [rsp + 0x60]
mov qword [rdx], 2
jmp 0x140033971
lea rdx, [rsp + 0x60]
mov qword [rdx], reloc.WS2_32.dll_setsockopt
mov rcx, rdi
call fcn.140331a00
jmp 0x14003353c
lea rdx, str.struct_File_with_4_elements
mov ecx, 2
call fcn.14033218f
jmp 0x14003353c
mov r12, rsi
lea rcx, [0x1404117c8]
mov edx, 2
jmp 0x1400339e8
cmp eax, 0x5d
jne 0x1400334b3
lea rdx, str.struct_File_with_4_elements
mov ecx, 3
jmp 0x14003398a
mov r12, rsi
lea rcx, [0x140411cff]
mov edx, 9
jmp 0x1400339e8
mov r12, rsi
lea rcx, [0x140411d08]
jmp 0x1400339e3
mov r12, rsi
lea rcx, [0x14041176e]
mov edx, 4
call fcn.14033225d
jmp 0x140033635
lea rdx, [rsp + 0x60]
mov qword [rdx], 5
jmp 0x140033971