Function at 0x1800308a0
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov dword [rsp + 8], ecx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
mov rbp, rdx
mov r14, r8
lea edx, [rcx + 0xa]
mov eax, ecx
mov dword [rsp + 0x40], edx
cmp ecx, edx
jae case.0x180030923.174
mov r12, qword [rsp + 0x88]
mov r15, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x88]
mov r13, qword [rsp + 0x70]
add eax, 0xffffff57
lea r10, [0x180000000]
cmp eax, 0x2b
ja case.0x180030923.179
movzx eax, byte [r10 + rax + 0x3108c]
mov ecx, dword [r10 + rax*4 + 0x31060]
add rcx, r10
jmp rcx
cmp dword [r14], 0
jge 0x1800309a8
mov rdi, qword [rsp + 0x120]
mov ebx, 0xce
nop dword [rax + rax]
mov eax, ebx
sub eax, 0xcc
je case.0x180030923.174
sub eax, 1
je 0x18003098d
cmp eax, 1
jne 0x18003099a
mov r8d, dword [r14]
lea rdx, str.CMS_ReceiptRequest_create0
lea ecx, [rax + 1]
call fcn.1800eba40
mov rax, qword [rdi]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x92
xor ecx, ecx
call fcn.18013b2b0
mov r9, qword [rsp + 0x118]
jmp 0x18003099a
test r9, r9
je 0x18003099a
mov dword [r9 + 8], 1
dec ebx
cmp ebx, 0xcb
ja 0x180030940
mov edx, dword [rsp + 0x40]
mov rax, qword [rsp + 0x120]
mov rax, qword [rax]
mov qword [rsp + 0x98], rax
jmp case.0x180030923.179
mov rax, qword [rsp + 0x98]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x92
xor ecx, ecx
call fcn.18013b2b0
mov edx, dword [rsp + 0x40]
jmp case.0x180030923.179
mov rdi, qword [rsp + 0x120]
movsxd rax, dword [r14]
mov rcx, qword [rdi]
cmp rax, qword [rcx + 0x10]
jb 0x180030aaf
mov r13d, dword [rsp + 0x50]
mov ebx, 0xd9
nop word [rax + rax]
mov eax, ebx
sub eax, 0xd9
je 0x180030a8e
sub eax, 1
je 0x180030a5e
sub eax, 1
je 0x180030a55
cmp eax, 1
jne 0x180030a95
mov eax, dword [r14]
mov edx, 0x20
sub eax, r13d
movsxd rcx, r13d
movsxd r8, eax
mov rax, qword [rdi]
add rax, 0x18
add rcx, rax
call sub.VCRUNTIME140.dll_memset
movsxd rcx, dword [r14]
mov rax, qword [rdi]
mov byte [rcx + rax + 0x19], 0
jmp 0x180030a95
mov dword [rdi + 8], 0x1406
jmp 0x180030a95
mov eax, dword [r14]
lea r9, [rsp + 0x50]
mov r8, qword [rdi]
lea rcx, [rsp + 0x58]
inc eax
mov dword [rsp + 0x50], 0
cdqe
mov edx, 0xaf
mov qword [rsp + 0x58], rax
call fcn.180075050
mov qword [rdi], rax
jmp 0x180030a95
mov rax, qword [rdi]
mov r13d, dword [rax + 0x10]
inc ebx
cmp ebx, 0xdd
jb 0x180030a10
mov dword [rsp + 0x50], r13d
mov r13, qword [rsp + 0x70]
jmp 0x180030b1a
test byte [rdi + 9], 4
jne 0x180030b1a
mov ebx, 0x56
nop word [rax + rax]
cmp ebx, 0x56
je 0x180030ad3
cmp ebx, 0x7b
jne 0x180030b0f
mov dword [rdi + 8], 0x1406
jmp 0x180030b0f
mov r8, qword [rdi]
lea r9, [rsp + 0xa0]
mov dword [rsp + 0x58], 0
xor edx, edx
mov ecx, 0xfb
mov rax, qword [r8 + 0x10]
add r8, 0x18
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x20], rax
call fcn.180138cc0
mov qword [rdi], rax
add ebx, 0x25
cmp ebx, 0xa0
jb 0x180030ac0
mov r9d, 0x2f
xor r8d, r8d
xor edx, edx
mov rcx, rbp
call fcn.1800aa6a0
cmp al, 6
je 0x180030bb7
mov r13, qword [rsp + 0xa8]
mov ebx, 0x11c
mov eax, ebx
sub eax, 0x11a
je 0x180030b80
sub eax, 1
je 0x180030b6f
cmp eax, 1
jne 0x180030b97
xor r9d, r9d
mov qword [rsp + 0x20], rbp
xor r8d, r8d
lea ecx, [rax + 0x13]
xor edx, edx
call fcn.18012ae10
mov r13, rax
jmp 0x180030b97
movsxd rdx, dword [r14]
mov rcx, qword [rdi]
movzx eax, byte [r13 + 0x18]
mov byte [rdx + rcx + 0x18], al
jmp 0x180030b97
xor r9d, r9d
mov qword [rsp + 0x20], r13
xor r8d, r8d
mov edx, 0x92
xor ecx, ecx
call fcn.18013b2b0
dec ebx
cmp ebx, 0x119
ja 0x180030b42
mov edx, dword [rsp + 0x40]
mov qword [rsp + 0xa8], r13
mov r13, qword [rsp + 0x70]
jmp case.0x180030923.179
mov rax, qword [rbp]
movsxd rdx, dword [r14]
mov rcx, qword [rdi]
movzx eax, byte [rax + 0x18]
mov byte [rdx + rcx + 0x18], al
mov edx, dword [rsp + 0x40]
jmp case.0x180030923.179
test r9, r9
je case.0x180030923.179
mov rdi, qword [rsp + 0x120]
movsxd rcx, dword [r14]
mov rax, qword [rdi]
movzx ecx, byte [rcx + rax + 0x18]
lea rdx, [rcx*8]
cmp qword [rdx + r10 + 0x1d5008], 0
je 0x180030c6c
mov r8, qword [rsp + 0x80]
mov ecx, 0xed
nop
mov eax, ecx
sub eax, 0xeb
je 0x180030c35
sub eax, 1
je 0x180030c28
cmp eax, 1
jne 0x180030c3d
mov r8, r9
jmp 0x180030c3d
mov rax, qword [rdx + r10 + 0x1d5008]
mov qword [r8], rax
jmp 0x180030c3d
mov dword [r8 + 8], 6
dec ecx
cmp ecx, 0xea
ja 0x180030c10
mov rax, qword [rsp + 0x60]
mov edx, dword [rsp + 0x40]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], r8
jmp case.0x180030923.179
mov rbp, qword [rsp + 0x60]
mov ebx, 0x19
mov rcx, qword [rsp + 0x78]
nop dword [rax + rax]
cmp ebx, 0x19
je 0x180030c9a
cmp ebx, 0xf55
jne 0x180030ce1
mov qword [rbp], rcx
mov dword [rbp + 8], 0x1406
jmp 0x180030ce1
movsxd rcx, dword [r14]
lea rax, [rsp + 0x58]
mov r8, qword [rdi]
mov rbp, r9
add r8, 0x18
mov dword [rsp + 0x58], 0
add r8, rcx
mov qword [rsp + 0x60], 1
mov ecx, 0xfb
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x60]
xor edx, edx
call fcn.180138cc0
mov r9, qword [rsp + 0x118]
mov rcx, rax
add ebx, 0xf3c
cmp ebx, 0x1e78
jbe 0x180030c80
mov rax, qword [rsp + 0x80]
mov edx, dword [rsp + 0x40]
mov qword [rsp + 0x60], rbp
mov rbp, qword [rsp + 0x108]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x78], rcx
jmp case.0x180030923.179
mov rcx, qword [rsp + 0x120]
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x34]
call fcn.1800c0a30
mov edx, dword [rsp + 0x40]
mov qword [rsp + 0x68], rax
jmp case.0x180030923.179
cmp byte [0x180184338], 0
je case.0x180030923.179
mov ecx, dword [0x18018433c]
call qword [sym.imp.KERNEL32.dll_TlsFree]
mov edx, dword [rsp + 0x40]
jmp case.0x180030923.179
mov rcx, qword [rsp + 0x68]
xor r14d, r14d
cmp dword [rcx + 8], r14d
jbe 0x180030f04
nop dword [rax]
nop word [rax + rax]
mov ebp, 0x44
mov eax, ebp
sub eax, 0x44
je 0x180030f6c
sub eax, 1
je 0x180030f63
sub eax, 1
je 0x180030f44
cmp eax, 1
jne 0x180030edb
cmp qword [r12 + 0x10], 8
jne 0x180030edb
xor r9d, r9d
mov qword [rsp + 0x70], 8
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x58], 8
mov qword [rsp + 0x38], rcx
lea rax, [r12 + 0x18]
mov qword [rsp + 0x30], rax
lea r8, [rsp + 0x58]
lea edx, [r9 + 0xf]
mov qword [rsp + 0x28], 0
lea rcx, str.encoding
mov qword [rsp + 0x20], 0
call fcn.180020f10
test eax, eax
jne 0x180030ed6
cmp word [r15], 0x40
je 0x180030e25
lea rdx, str.Z3_get_decl_parameter_kind
lea ecx, [rax + 0x40]
call fcn.1800eba40
cmp byte [0x1801d5850], 0
je 0x180030f31
mov edi, 0x69
mov eax, edi
sub eax, 0x69
je 0x180030e9b
sub eax, 1
je 0x180030e92
sub eax, 1
je 0x180030e66
cmp eax, 1
jne 0x180030ecb
xor r9d, r9d
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov edx, 0x92
xor ecx, ecx
call fcn.18013b2b0
jmp 0x180030ecb
xor r8d, r8d
lea rcx, [rsi + 0x18]
lea edx, [r8 + 0x7b]
call fcn.18011c3e0
test rax, rax
jne 0x180030ecb
lea r8, [rsi + 0x18]
mov ecx, 0x80
lea rdx, str.dynamic_cast_without_rtti
call fcn.1800eba40
jmp 0x180030ecb
mov byte [0x1801d5852], 1
jmp 0x180030ecb
xor r9d, r9d
mov dword [rsp + 0x20], 0xc6
xor r8d, r8d
mov rdx, r15
xor ecx, ecx
call fcn.180121cc0
xor edx, edx
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea ecx, [rdx + 0x14]
call fcn.18012ae10
mov rsi, rax
inc edi
cmp edi, 0x6d
jb 0x180030e37
mov rcx, qword [rsp + 0x68]
inc ebp
cmp ebp, 0x48
jb 0x180030d85
inc r14d
mov qword [rsp + 0x70], r13
cmp r14d, dword [rcx + 8]
jb 0x180030d80
mov rbp, qword [rsp + 0x108]
mov edx, dword [rsp + 0x40]
mov r14, qword [rsp + 0x110]
mov eax, dword [rsp + 0x100]
inc eax
mov dword [rsp + 0x100], eax
cmp eax, edx
jae case.0x180030923.174
mov r9, qword [rsp + 0x118]
jmp 0x1800308fa
lea rdx, str.const_char___cdecl_WTF::GetStringWithTypeName_void___T__blink::NavigatorGeolocation_
mov ecx, 0x80
call fcn.1800eba40
jmp 0x180030ed6
mov rcx, qword [rsp + 0x88]
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x70]
call fcn.180111e80
mov r12, rax
jmp 0x180030ed6
mov r15, qword [r13 + 0x10]
jmp 0x180030edb
mov r13, qword [rcx + r14*8 + 0x10]
mov rax, qword [r13 + 8]
mov qword [rsp + 0x88], rax
jmp 0x180030edb
cmp byte [rbp], 0
je 0x180030fc4
mov rdi, qword [rsp + 0x120]
cmp byte [rdi], 5
jne 0x180030fac
mov r9d, 0x2f
xor r8d, r8d
xor edx, edx
mov rcx, r14
call fcn.1800aa6a0
cmp al, 4
je 0x180030fe3
mov eax, 0xf6
cmp eax, 0xf6
je 0x180031010
add eax, 0x37
cmp eax, 0x12d
jb 0x180030fb1
jmp 0x180030fe3
mov r9d, 0x2f
xor r8d, r8d
xor edx, edx
mov rcx, r14
call fcn.1800aa6a0
cmp al, 1
je 0x180031010
mov rdi, qword [rsp + 0x120]
movzx eax, byte [rdi]
lea r8, [rsp + 0x48]
mov r9, r14
mov byte [rsp + 0x48], al
xor edx, edx
mov ecx, 0x11c
call fcn.1801486b0
mov edx, dword [rsp + 0x40]
mov byte [rsp + 0x90], al
jmp case.0x180030923.179
mov byte [rsp + 0x90], 0
mov rax, qword [rsp + 0x90]
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rax, qword [rsp + 0x120]
xor edx, edx
xor r9d, r9d
mov rax, qword [rax + 0x10]
lea ecx, [rdx + 0x18]
mov r8, qword [rax + 8]
call fcn.1800b2560
jmp 0x180031020