Function at 0x10208b20
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x102ecece
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xec
push ebx
push esi
push edi
push ecx
mov eax, esp
mov ebx, ecx
mov dword [ebp - 0x2c], ebx
mov esi, edx
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 0
mov dword [eax], 0
push ecx
mov eax, esp
mov dword [ebp - 0x28], esi
mov dword [eax], 0
call fcn.1025b6d0
add esp, 8
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x38]
mov ebx, dword [ebx]
push dword [esi + 0x10]
mov dword [ebp - 0x10], 1
mov dword [ebp - 0x38], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov eax, dword [ebx]
mov dword [ebp - 0x34], 0
mov byte [ebp - 0x30], 0
mov edi, dword [eax + 0x8c]
call fcn.10008330
mov dword [ebp - 4], 2
push 0xc
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x14], 0
call fcn.102d8574
mov dword [ebp - 0x18], eax
xorps xmm0, xmm0
movq qword [eax], xmm0
mov dword [eax + 8], 0
push dword [ebp - 0x18]
mov byte [ebp - 0x14], 1
push 7
push str.country
call dword [sym.imp.libcef.dll_cef_string_utf8_to_utf16]
add esp, 0x10
push 0
push ecx
mov byte [ebp - 4], 3
mov esi, esp
push dword [ebp - 0x34]
mov dword [ebp - 0x20], esi
call dword [sym.imp.libcef.dll_cef_v8value_create_string]
add esp, 4
mov edx, eax
mov ecx, esi
call fcn.1025d060
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x10], 0x200001
push eax
mov ecx, ebx
call edi
mov ecx, dword [ebp - 0x18]
mov eax, dword [sym.imp.libcef.dll_cef_string_utf16_clear]
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
test ecx, ecx
je 0x10208c59
cmp byte [ebp - 0x14], 0
je 0x10208c4e
push ecx
call eax
push 0xc
push dword [ebp - 0x18]
call fcn.102d85a9
mov eax, dword [sym.imp.libcef.dll_cef_string_utf16_clear]
add esp, 0xc
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x14], 0
mov byte [ebp - 4], 0
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x10208c78
cmp byte [ebp - 0x30], 0
je 0x10208c78
push esi
call eax
push 0xc
push esi
call fcn.102d85a9
add esp, 0xc
mov edi, dword [ebp - 0x28]
push dword [edi + 0x18]
call dword [sym.imp.libcef.dll_cef_v8value_create_array]
add esp, 4
lea ecx, [ebp - 0x44]
mov edx, eax
call fcn.1025d060
mov ebx, 0x600001
mov dword [ebp - 0x10], ebx
cmp dword [edi + 0x18], 0
mov esi, dword [ebp - 0x44]
mov dword [ebp - 0x24], 0
jle 0x10208d1c
nop dword [eax]
mov dword [ebp - 4], 4
test ebx, 0x40000
je 0x10208cd3
and ebx, 0xfffbffff
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x10], ebx
call fcn.1025a020
mov eax, dword [esi]
push ecx
mov ecx, dword [ebp - 0x24]
mov ebx, dword [eax + 0x88]
mov eax, dword [edi + 0x14]
mov edi, esp
mov dword [ebp - 0x20], edi
push dword [eax + ecx*4]
call dword [sym.imp.libcef.dll_cef_v8value_create_uint]
add esp, 4
mov edx, eax
mov ecx, edi
call fcn.1025d060
push dword [ebp - 0x24]
or dword [ebp - 0x10], 0x20000
mov ecx, esi
call ebx
mov eax, dword [ebp - 0x24]
mov edi, dword [ebp - 0x28]
inc eax
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x24], eax
cmp eax, dword [edi + 0x18]
jl 0x10208cb0
mov dword [ebp - 4], 4
test ebx, 0x10000
je 0x10208d3f
and ebx, 0xfffeffff
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x10], ebx
call fcn.1025a020
mov edi, dword [ebp - 0x2c]
push 0xc
mov edi, dword [edi]
mov eax, dword [edi]
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x14], 0
mov eax, dword [eax + 0x8c]
mov dword [ebp - 0x40], eax
call fcn.102d8574
mov dword [ebp - 0x18], eax
xorps xmm0, xmm0
movq qword [eax], xmm0
mov dword [eax + 8], 0
push dword [ebp - 0x18]
mov byte [ebp - 0x14], 1
push 8
push str.licenses
call dword [sym.imp.libcef.dll_cef_string_utf8_to_utf16]
add esp, 0x10
mov byte [ebp - 4], 9
push 0
push ecx
mov eax, esp
mov dword [ebp - 0x20], eax
mov dword [eax], esi
test esi, esi
je 0x10208db1
mov eax, dword [esi + 4]
mov ecx, dword [eax + 4]
add ecx, 4
add ecx, esi
mov eax, dword [ecx]
call dword [eax]
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call dword [ebp - 0x40]
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
test eax, eax
je 0x10208de6
cmp byte [ebp - 0x14], 0
je 0x10208de6
push eax
call dword [sym.imp.libcef.dll_cef_string_utf16_clear]
push 0xc
push dword [ebp - 0x18]
call fcn.102d85a9
add esp, 0xc
mov esi, dword [ebp - 0x28]
push dword [esi + 0x24]
call dword [sym.imp.libcef.dll_cef_v8value_create_array]
add esp, 4
lea ecx, [ebp - 0x40]
mov edx, eax
call fcn.1025d060
or ebx, 0x8000
mov dword [ebp - 0x10], ebx
cmp dword [esi + 0x24], 0
mov edi, dword [ebp - 0x40]
mov dword [ebp - 0x24], 0
jle 0x10208e8c
nop dword [eax + eax]
mov dword [ebp - 4], 0xa
test ebx, 0x800
je 0x10208e43
and ebx, 0xfffff7ff
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x10], ebx
call fcn.1025a020
mov eax, dword [edi]
push ecx
mov ecx, dword [ebp - 0x24]
mov ebx, dword [eax + 0x88]
mov eax, dword [esi + 0x20]
mov esi, esp
mov dword [ebp - 0x20], esi
push dword [eax + ecx*4]
call dword [sym.imp.libcef.dll_cef_v8value_create_uint]
add esp, 4
mov edx, eax
mov ecx, esi
call fcn.1025d060
push dword [ebp - 0x24]
or dword [ebp - 0x10], 0x4000
mov ecx, edi
call ebx
mov eax, dword [ebp - 0x24]
mov esi, dword [ebp - 0x28]
inc eax
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x24], eax
cmp eax, dword [esi + 0x24]
jl 0x10208e20
mov dword [ebp - 4], 0xa
test ebx, 0x200
je 0x10208eaf
and ebx, 0xfffffdff
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x10], ebx
call fcn.1025a020
mov eax, dword [ebp - 0x2c]
push 0xc
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [eax]
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x14], 0
mov eax, dword [eax + 0x8c]
mov dword [ebp - 0x48], eax
call fcn.102d8574
mov dword [ebp - 0x18], eax
xorps xmm0, xmm0
movq qword [eax], xmm0
mov dword [eax + 8], 0
push dword [ebp - 0x18]
mov byte [ebp - 0x14], 1
push 0x15
push str.game_account_licenses
call dword [sym.imp.libcef.dll_cef_string_utf8_to_utf16]
add esp, 0x10
mov byte [ebp - 4], 0xf
push 0
push ecx
mov eax, esp
mov dword [ebp - 0x20], eax
mov dword [eax], edi
test edi, edi
je 0x10208f24
mov eax, dword [edi + 4]
mov ecx, dword [eax + 4]
add ecx, 4
add ecx, edi
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x1c]
push eax
call dword [ebp - 0x48]
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
test eax, eax
je 0x10208f5a
cmp byte [ebp - 0x14], 0
je 0x10208f5a
push eax
call dword [sym.imp.libcef.dll_cef_string_utf16_clear]
push 0xc
push dword [ebp - 0x18]
call fcn.102d85a9
add esp, 0xc
push dword [esi + 0x30]
call dword [sym.imp.libcef.dll_cef_v8value_create_array]
add esp, 4
lea ecx, [ebp - 0x48]
mov edx, eax
call fcn.1025d060
or ebx, 0x400
mov dword [ebp - 0x10], ebx
cmp dword [esi + 0x30], 0
mov esi, dword [ebp - 0x48]
jle 0x10208fe0
xor edi, edi
nop dword [eax]
nop dword [eax + eax]
mov dword [ebp - 4], 0x10
test ebx, 0x100
je 0x10208fb3
and ebx, 0xfffffeff
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x10], ebx
call fcn.1025a020
mov eax, dword [esi]
push ecx
mov ecx, esp
mov ebx, dword [eax + 0x88]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x2c]
mov edx, dword [eax + edi*4]
call fcn.10208830
push edi
mov ecx, esi
call ebx
mov eax, dword [ebp - 0x28]
inc edi
mov ebx, dword [ebp - 0x10]
cmp edi, dword [eax + 0x30]
jl 0x10208f90
mov edi, dword [ebp - 0x40]
mov dword [ebp - 4], 0x10
test bl, 0x20
je 0x10208ffd
and ebx, 0xffffffdf
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x10], ebx
call fcn.1025a020
mov eax, dword [ebp - 0x2c]
push 0xc
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [eax]
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x14], 0
mov eax, dword [eax + 0x8c]
mov dword [ebp - 0x20], eax
call fcn.102d8574
mov dword [ebp - 0x18], eax
xorps xmm0, xmm0
movq qword [eax], xmm0
mov dword [eax + 8], 0
push dword [ebp - 0x18]
mov byte [ebp - 0x14], 1
push 0x10
push str.program_licenses
call dword [sym.imp.libcef.dll_cef_string_utf8_to_utf16]
add esp, 0x10
mov byte [ebp - 4], 0x15
push 0
push ecx
mov eax, esp
mov dword [ebp - 0x3c], eax
mov dword [eax], esi
test esi, esi
je 0x10209072
mov eax, dword [esi + 4]
mov ecx, dword [eax + 4]
add ecx, 4
add ecx, esi
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebp - 0x24]
lea eax, [ebp - 0x1c]
push eax
call dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
test eax, eax
je 0x102090a4
cmp byte [ebp - 0x14], 0
je 0x102090a4
push eax
call dword [sym.imp.libcef.dll_cef_string_utf16_clear]
push 0xc
push dword [ebp - 0x18]
call fcn.102d85a9
add esp, 0xc
mov dword [ebp - 4], 0x10
test bl, 0x10
je 0x102090c1
and ebx, 0xffffffef
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x10], ebx
call fcn.1025a020
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov dword [ebp - 0x34], 0
mov byte [ebp - 0x30], 0
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x8c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x28]
push dword [eax + 0x3c]
call fcn.10008330
mov byte [ebp - 4], 0x17
push 0xc
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x14], 0
call fcn.102d8574
mov dword [ebp - 0x18], eax
xorps xmm0, xmm0
movq qword [eax], xmm0
mov dword [eax + 8], 0
push dword [ebp - 0x18]
mov byte [ebp - 0x14], 1
push 0x10
push str.default_currency
call dword [sym.imp.libcef.dll_cef_string_utf8_to_utf16]
add esp, 0x10
push 0
push ecx
mov byte [ebp - 4], 0x18
mov ebx, esp
push dword [ebp - 0x34]
mov dword [ebp - 0x3c], ebx
call dword [sym.imp.libcef.dll_cef_v8value_create_string]
add esp, 4
mov edx, eax
mov ecx, ebx
call fcn.1025d060
mov ebx, dword [ebp - 0x10]
lea eax, [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
or ebx, 8
push eax
mov dword [ebp - 0x10], ebx
call dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
test eax, eax
je 0x102091a0
cmp byte [ebp - 0x14], 0
je 0x10209195
push eax
call dword [sym.imp.libcef.dll_cef_string_utf16_clear]
push 0xc
push dword [ebp - 0x18]
call fcn.102d85a9
add esp, 0xc
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x14], 0
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x102091c1
cmp byte [ebp - 0x30], 0
je 0x102091c1
push eax
call dword [sym.imp.libcef.dll_cef_string_utf16_clear]
push 0xc
push dword [ebp - 0x34]
call fcn.102d85a9
add esp, 0xc
mov dword [ebp - 4], 0x10
test bl, 4
je 0x102091de
and ebx, 0xfffffffb
lea ecx, [ebp - 0xf8]
mov dword [ebp - 0x10], ebx
call fcn.1025a020
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov dword [ebp - 0x34], 0
mov byte [ebp - 0x30], 0
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x8c]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x28]
push dword [eax + 0x40]
call fcn.10008330
mov byte [ebp - 4], 0x1a
push 0xc
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x14], 0
call fcn.102d8574
mov dword [ebp - 0x18], eax
xorps xmm0, xmm0
movq qword [eax], xmm0
mov dword [eax + 8], 0
push dword [ebp - 0x18]
mov byte [ebp - 0x14], 1
push 0xe
push 0x1032dc14
call dword [sym.imp.libcef.dll_cef_string_utf8_to_utf16]
add esp, 0x10
push 0
push ecx
mov byte [ebp - 4], 0x1b
mov ebx, esp
push dword [ebp - 0x34]
mov dword [ebp - 0x3c], ebx
call dword [sym.imp.libcef.dll_cef_v8value_create_string]
add esp, 4
mov edx, eax
mov ecx, ebx
call fcn.1025d060
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x1c]
or dword [ebp - 0x10], 2
push eax
call dword [ebp - 0x24]
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1c], vtable.CefStringBase_struct_CefStringTraitsUTF16_.0
test eax, eax
je 0x102092b8
cmp byte [ebp - 0x14], 0
je 0x102092ad
push eax
call dword [sym.imp.libcef.dll_cef_string_utf16_clear]
push 0xc
push dword [ebp - 0x18]
call fcn.102d85a9
add esp, 0xc
mov dword [ebp - 0x18], 0
mov byte [ebp - 0x14], 0
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x102092d7
cmp byte [ebp - 0x30], 0
je 0x102092d7
push ebx
call dword [sym.imp.libcef.dll_cef_string_utf16_clear]
push 0xc
push ebx
call fcn.102d85a9
add esp, 0xc
mov byte [ebp - 4], 0x1c
test esi, esi
je 0x102092ef
mov eax, dword [esi + 4]
mov ecx, dword [eax + 4]
add ecx, 4
add ecx, esi
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1d
test edi, edi
je 0x10209307
mov eax, dword [edi + 4]
mov ecx, dword [eax + 4]
add ecx, 4
add ecx, edi
mov eax, dword [ecx]
call dword [eax + 4]
mov dword [ebp - 4], 0x1e
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x10209325
mov ecx, dword [eax + 4]
add eax, 4
mov ecx, dword [ecx + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret