Function at 0x1400a1fa0
Capabilities:
Get geographical location

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x1a8
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov rax, qword [0x1403b8c08]
xor rax, rsp
mov qword [rsp + 0x190], rax
mov rsi, r8
mov rdi, rcx
mov rcx, qword [rsp + 0x1f0]
cmp edx, 0x403
ja 0x1400a227c
je 0x1400a215a
cmp edx, 0x20a
ja 0x1400a2116
je 0x1400a20fb
mov eax, edx
sub eax, 0xa1
je 0x1400a2012
sub eax, 0x72
je 0x1400a2028
cmp eax, 0xee
jne 0x1400a2471
mov rax, qword [rdi]
mov qword [rsp + 0x20], rcx
mov rcx, rdi
call qword [rax + 0xe0]
jmp 0x1400a2471
cmp rsi, 0x10e2
jne 0x1400a207b
mov rdx, rsi
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_KillTimer]
mov rcx, qword [rdi + 0x4f0]
test rcx, rcx
je 0x1400a2471
mov rax, qword [rcx]
lea rdx, [0x1402ec198]
call qword [rax + 0x60]
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
mov rcx, qword [rdi + 0x4f0]
mov rax, qword [rcx]
lea rdx, [rsp + 0x60]
call qword [rax + reloc.WS2_32.dll_WSASetLastError]
jmp 0x1400a2471
cmp rsi, 0x10e3
jne 0x1400a2471
lea rcx, [rdi + 0x58]
lea rdx, str.editSearchHotkey
call fcn.1400ef860
mov qword [rdi + 0x480], rax
test rax, rax
je 0x1400a2471
call fcn.1400666d0
mov rcx, rax
call fcn.140079010
mov edx, eax
mov rcx, rdi
call fcn.1400a2b30
mov rcx, qword [rdi + 0x498]
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x1400a2471
mov rcx, qword [rdi + 0x498]
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x1400a2471
mov rdx, rsi
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_KillTimer]
jmp 0x1400a2471
mov rax, qword [rdi]
mov qword [rsp + 0x20], rcx
mov edx, 0x20a
mov rcx, rdi
call qword [rax + ILFree]
jmp 0x1400a2471
cmp edx, 0x2e0
je 0x1400a2137
cmp edx, 0x402
jne 0x1400a2471
mov rcx, rdi
call fcn.1400abe80
jmp 0x1400a2471
call fcn.1400ffb70
mov edx, eax
lea rcx, [rdi + 0x58]
xor r9d, r9d
xor r8d, r8d
call fcn.1400f4320
mov rcx, rdi
call fcn.1400f5ad0
jmp 0x1400a2471
xor ebx, ebx
mov qword [rsp + 0x40], rbx
test rsi, rsi
je 0x1400a2176
xor ecx, ecx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rbx, rsi
mov qword [rsp + 0x40], rbx
lea rcx, [rdi + 0x58]
lea rdx, str.provincelist
call fcn.1400ef860
mov rsi, rax
test rax, rax
jne 0x1400a2196
mov rcx, rbx
jmp 0x1400a246b
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1400a249a
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x30], rax
mov rbp, 0xffffffffffffffff
test rbx, rbx
je 0x1400a21ec
cmp rbx, 0x10000
jae 0x1400a21da
movzx edx, bx
lea rcx, [rsp + 0x30]
call fcn.14000b690
jmp 0x1400a21ff
mov rax, rbp
nop dword [rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400a21e0
jmp 0x1400a21ee
xor eax, eax
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.140010860
nop
mov rax, qword [rsi]
lea rdx, [rsp + 0x70]
mov rcx, rsi
call qword [rax + 0x58]
nop
mov rcx, rax
call fcn.14009af50
mov rdx, rax
test rax, rax
je 0x1400a24a5
mov rbx, qword [rsp + 0x30]
mov rax, rbx
sub rdx, rbx
nop dword [rax]
movzx esi, word [rax]
movzx ecx, word [rax + rdx]
sub esi, ecx
jne 0x1400a2243
add rax, 2
test ecx, ecx
jne 0x1400a2230
lea rcx, [rsp + 0x70]
call fcn.140067dc0
nop
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], ebp
sub ebp, 1
jg 0x1400a2265
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test esi, esi
jne 0x1400a2272
mov rcx, rdi
call fcn.1400ab920
nop
mov rcx, qword [rsp + 0x40]
jmp 0x1400a246b
sub edx, 0x404
je 0x1400a234e
sub edx, 0xb
je 0x1400a231d
sub edx, 0xc
je 0x1400a2306
sub edx, 6
je 0x1400a22d5
cmp edx, 0x1a
jne 0x1400a2471
lea rcx, [rdi + 0x58]
lea rdx, str.checkbox_ShowMemorandum
call fcn.1400ef860
test rax, rax
je 0x1400a2471
mov r8, qword [rax]
test rsi, rsi
setne dl
mov rcx, rax
call qword [r8 + 0x330]
jmp 0x1400a2471
lea rcx, [rdi + 0x58]
lea rdx, str.checkbox_ShowCloud
call fcn.1400ef860
test rax, rax
je 0x1400a2471
mov r8, qword [rax]
test rsi, rsi
setne dl
mov rcx, rax
call qword [r8 + 0x330]
jmp 0x1400a2471
mov qword [rsp + 0x20], rcx
mov edx, 0x41b
mov rcx, rdi
call fcn.1400aa6a0
jmp 0x1400a2471
lea rcx, [rdi + 0x58]
lea rdx, str.checkbox_TimeWidget
call fcn.1400ef860
test rax, rax
je 0x1400a2471
mov r8, qword [rax]
test rsi, rsi
setne dl
mov rcx, rax
call qword [r8 + 0x330]
jmp 0x1400a2471
xor ebx, ebx
mov qword [rsp + 0x48], rbx
test rsi, rsi
je 0x1400a236a
xor ecx, ecx
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rbx, rsi
mov qword [rsp + 0x48], rbx
lea rcx, [rdi + 0x58]
lea rdx, str.citylist
call fcn.1400ef860
mov rsi, rax
test rax, rax
jne 0x1400a238a
mov rcx, rbx
jmp 0x1400a246b
call fcn.14000b190
mov rcx, rax
test rax, rax
je 0x1400a24b0
mov rax, qword [rax]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rsp + 0x38], rax
mov rbp, 0xffffffffffffffff
test rbx, rbx
je 0x1400a23dd
cmp rbx, 0x10000
jae 0x1400a23ce
movzx edx, bx
lea rcx, [rsp + 0x38]
call fcn.14000b690
jmp 0x1400a23f0
mov rax, rbp
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400a23d1
jmp 0x1400a23df
xor eax, eax
mov r8d, eax
mov rdx, rbx
lea rcx, [rsp + 0x38]
call fcn.140010860
nop
mov rax, qword [rsi]
lea rdx, [rsp + 0x100]
mov rcx, rsi
call qword [rax + 0x58]
nop
mov rcx, rax
call fcn.14009af50
mov rdx, rax
test rax, rax
je 0x1400a248f
mov rbx, qword [rsp + 0x38]
mov rax, rbx
sub rdx, rbx
movzx esi, word [rax]
movzx ecx, word [rax + rdx]
sub esi, ecx
jne 0x1400a2434
add rax, 2
test ecx, ecx
jne 0x1400a2421
lea rcx, [rsp + 0x100]
call fcn.140067dc0
nop
lea rdx, [rbx - 0x18]
lock xadd dword [rdx + 0x10], ebp
sub ebp, 1
jg 0x1400a2459
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
test esi, esi
jne 0x1400a2466
mov rcx, rdi
call fcn.1400ac270
nop
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor eax, eax
mov rcx, qword [rsp + 0x190]
xor rcx, rsp
call fcn.140172190
add rsp, 0x1a8
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov ecx, 0x80004005
call fcn.14000adf0
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
mov ecx, 0x80004005
call fcn.14000adf0
nop
mov ecx, 0x80004005
call fcn.14000adf0
int3