Function at 0x1400227a0
Capabilities:
Get geographical location

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0xe0]
sub rsp, 0x1e0
mov qword [rbp + 0xa0], 0xfffffffffffffffe
mov qword [rsp + 0x220], rbx
mov rax, qword [0x1400c8010]
xor rax, rsp
mov qword [rbp + 0xd0], rax
mov rsi, rdx
mov r14, rcx
xor eax, eax
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], 3
lea ecx, [rax + 0x20]
call fcn.14006b6dc
mov rbx, rax
lea rax, [rbp + 0xb8]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
xor r15d, r15d
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], r15b
lea r8d, [r15 + 0x11]
lea rdx, str.problemSourceCode
mov rcx, rbx
call sym.PCManager.exe_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
nop
mov qword [rsp + 0x28], rbx
lea rax, [rsp + 0x20]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x38], 1
xor eax, eax
mov qword [rsp + 0x48], rax
mov byte [rsp + 0x40], 3
lea ecx, [rax + 0x20]
call fcn.14006b6dc
mov rbx, rax
lea rax, [rbp + 0xb9]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], r15
mov rdx, rsi
mov rcx, rbx
call sym.PCManager.exe_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Construct_lv_contents_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const____ptr64____ptr64
nop
mov qword [rsp + 0x48], rbx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x50], rax
mov byte [rsp + 0x58], 1
lea rax, [rsp + 0x20]
mov qword [rbp + 0xc0], rax
lea rax, [rsp + 0x60]
mov qword [rbp + 0xc8], rax
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x20]
call fcn.14002a260
lea rax, [rbp + 0x20]
mov qword [rbp + 0x30], rax
mov byte [rbp + 0x38], 1
lea r9, [fcn.140022cc0]
lea edx, [r15 + 0x20]
lea r8d, [r15 + 2]
lea rcx, [rsp + 0x20]
call fcn.14006b718
xor eax, eax
mov qword [rsp + 0x68], rax
mov byte [rsp + 0x60], 3
lea ecx, [rax + 0x20]
call fcn.14006b6dc
mov rbx, rax
lea rax, [rbp + 0xb9]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], r15b
lea r8d, [r15 + 0xb]
lea rdx, str.countryCode
mov rcx, rbx
call sym.PCManager.exe_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
nop
mov qword [rsp + 0x68], rbx
lea rax, [rsp + 0x60]
mov qword [rsp + 0x70], rax
mov byte [rsp + 0x78], 1
xor eax, eax
mov qword [rbp - 0x78], rax
mov byte [rbp - 0x80], 3
lea ecx, [rax + 0x20]
call fcn.14006b6dc
mov rbx, rax
lea rax, [rbp + 0xb8]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], r15
lea rdx, [rsi + 0x20]
mov rcx, rbx
call sym.PCManager.exe_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Construct_lv_contents_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const____ptr64____ptr64
nop
mov qword [rbp - 0x78], rbx
lea rax, [rbp - 0x80]
mov qword [rbp - 0x70], rax
mov byte [rbp - 0x68], 1
lea rax, [rsp + 0x60]
mov qword [rbp + 0xc0], rax
lea rax, [rbp - 0x60]
mov qword [rbp + 0xc8], rax
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x40]
call fcn.14002a260
lea rax, [rbp + 0x40]
mov qword [rbp + 0x50], rax
mov byte [rbp + 0x58], 1
lea r9, [fcn.140022cc0]
lea edx, [r15 + 0x20]
lea r8d, [r15 + 2]
lea rcx, [rsp + 0x60]
call fcn.14006b718
xor eax, eax
mov qword [rbp - 0x58], rax
mov byte [rbp - 0x60], 3
lea ecx, [rax + 0x20]
call fcn.14006b6dc
mov rbx, rax
lea rax, [rbp + 0xb9]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], r15b
lea r8d, [r15 + 0xc]
lea rdx, str.languageCode
mov rcx, rbx
call sym.PCManager.exe_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
nop
mov qword [rbp - 0x58], rbx
lea rax, [rbp - 0x60]
mov qword [rbp - 0x50], rax
mov byte [rbp - 0x48], 1
xor eax, eax
mov qword [rbp - 0x38], rax
mov byte [rbp - 0x40], 3
lea ecx, [rax + 0x20]
call fcn.14006b6dc
mov rbx, rax
lea rax, [rbp + 0xb8]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], r15
lea rdx, [rsi + 0x40]
mov rcx, rbx
call sym.PCManager.exe_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Construct_lv_contents_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const____ptr64____ptr64
nop
mov qword [rbp - 0x38], rbx
lea rax, [rbp - 0x40]
mov qword [rbp - 0x30], rax
mov byte [rbp - 0x28], 1
lea rax, [rbp - 0x60]
mov qword [rbp + 0xc0], rax
lea rax, [rbp - 0x20]
mov qword [rbp + 0xc8], rax
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x60]
call fcn.14002a260
lea rax, [rbp + 0x60]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 1
lea r9, [fcn.140022cc0]
lea edx, [r15 + 0x20]
lea r8d, [r15 + 2]
lea rcx, [rbp - 0x60]
call fcn.14006b718
xor eax, eax
mov qword [rbp - 0x18], rax
mov byte [rbp - 0x20], 3
lea ecx, [rax + 0x20]
call fcn.14006b6dc
mov rbx, rax
lea rax, [rbp + 0xb9]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], r15b
lea r8d, [r15 + 0x10]
lea rdx, str.emuiLanguageCode
mov rcx, rbx
call sym.PCManager.exe_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______ptr64___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const__const___ptr64__unsigned_long_long_unsigned___int64_____ptr64
nop
mov qword [rbp - 0x18], rbx
lea rax, [rbp - 0x20]
mov qword [rbp - 0x10], rax
mov byte [rbp - 8], 1
xor eax, eax
mov qword [rbp + 8], rax
mov byte [rbp], 3
lea ecx, [rax + 0x20]
call fcn.14006b6dc
mov rbx, rax
lea rax, [rbp + 0xb8]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rbx
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], r15
lea rdx, [rsi + 0x60]
mov rcx, rbx
call sym.PCManager.exe_public:_void___cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Construct_lv_contents_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const____ptr64____ptr64
nop
mov qword [rbp + 8], rbx
lea rax, [rbp]
mov qword [rbp + 0x10], rax
mov byte [rbp + 0x18], 1
lea rax, [rbp - 0x20]
mov qword [rbp + 0xc0], rax
lea rax, [rbp + 0x20]
mov qword [rbp + 0xc8], rax
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x80]
call fcn.14002a260
lea rax, [rbp + 0x80]
mov qword [rbp + 0x90], rax
mov byte [rbp + 0x98], 1
lea r9, [fcn.140022cc0]
lea edx, [r15 + 0x20]
lea r8d, [r15 + 2]
lea rcx, [rbp - 0x20]
call fcn.14006b718
nop
lea rax, [rbp + 0x20]
mov qword [rbp + 0xc0], rax
lea rax, [rbp + 0xa0]
mov qword [rbp + 0xc8], rax
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0xa8]
call fcn.14002a260
movzx r8d, byte [r14]
movzx ecx, byte [rax]
mov byte [r14], cl
mov byte [rax], r8b
lea rcx, [rax + 8]
mov r8, qword [r14 + 8]
mov r10, qword [rcx]
mov qword [r14 + 8], r10
mov qword [rcx], r8
movzx edx, byte [rax]
call fcn.14002a750
nop
lea r9, [fcn.140022cc0]
lea edx, [r15 + 0x20]
lea r8d, [r15 + 4]
lea rcx, [rbp + 0x20]
call fcn.14006b718
mov rcx, qword [rbp + 0xd0]
xor rcx, rsp
call fcn.14006b6b0
mov rbx, qword [rsp + 0x220]
add rsp, 0x1e0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret