Function at 0x10033010
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101312f1
mov eax, dword fs:[0]
push eax
sub esp, 0xec
mov eax, dword [0x10186bd0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, edx
mov edi, ecx
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x48], eax
movsx eax, byte [edi + 8]
sub eax, 1
je 0x100334b7
sub eax, 3
je 0x100330fd
sub eax, 2
jne 0x1003353d
call fcn.1001f4d0
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], 0
test eax, eax
jle 0x1003353d
cmp dword [esi + 0x14], 0x10
jb 0x1003308b
mov edx, dword [esi]
jmp 0x1003308d
mov edx, esi
mov eax, 0xf
cmp dword [esi + 0x10], eax
cmovb eax, dword [esi + 0x10]
push eax
push str.serviceAccounts
push edx
call fcn.10031ce0
add esp, 0xc
test eax, eax
jne 0x100330cd
mov eax, dword [esi + 0x10]
cmp eax, 0xf
jb 0x100330cd
ja 0x100330cd
push dword [ebp - 0x44]
mov ecx, edi
call fcn.1001f540
mov edx, ebx
mov ecx, eax
call fcn.10032b80
test al, al
je 0x100330de
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp eax, dword [ebp - 0x48]
jl 0x10033081
jmp 0x1003353d
push str.Failed_in_create_SAO_in_parse_Json_Tree
push 0x1014fe1c
call fcn.1002e950
push eax
call fcn.1002f880
add esp, 0xc
xor al, al
jmp 0x1003353f
mov edx, str.error
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x10033152
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
lea ecx, [ebp - 0x28]
cmp dword [eax + 0x10], 0
sete bl
call fcn.1001d110
test bl, bl
jne 0x1003353d
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
mov ecx, dword [ebp - 0x48]
push eax
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
xor al, al
jmp 0x1003353f
mov edx, str.first_name
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x10033183
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x18]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.email
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x100331b4
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x60]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.name
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x100331e5
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x48]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.last_name
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x10033216
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x30]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.userId
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x10033246
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
mov ecx, ebx
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, 0x101503d4
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x10033277
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x78]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.access_token
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x100332ab
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x90]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, 0x101503f4
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x100332df
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0xa8]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.countryCode
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x10033313
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0xc0]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.displayName
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x10033347
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0xd8]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.mrktPermEmail
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x1003337b
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0xf0]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.mrktPerm
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x100333af
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x108]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.account_type
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x100333e3
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x120]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.token_type
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x10033417
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x168]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.utcOffset
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x1003344b
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x180]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.emailVerified
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x1003347f
lea eax, [ebp - 0x28]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x150]
call fcn.1002b120
lea ecx, [ebp - 0x28]
call fcn.1001d110
jmp 0x1003353d
mov edx, str.phoneNumber
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x1003353d
lea eax, [ebp - 0x40]
mov ecx, edi
push eax
call fcn.1001f180
push eax
lea ecx, [ebx + 0x198]
call fcn.1002b120
lea ecx, [ebp - 0x40]
call fcn.1001d110
jmp 0x1003353d
sub esp, 8
lea ecx, [ebp - 0xf8]
call fcn.1003cff0
mov ecx, edi
mov dword [ebp - 4], 0
call fcn.1001f260
push eax
lea ecx, [ebp - 0xe8]
call fcn.10022dc0
mov edx, str.expires_in
mov ecx, esi
call fcn.1003dd00
test al, al
je 0x10033512
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0xf8]
call fcn.1003cee0
push eax
lea ecx, [ebx + 0x138]
call fcn.1002b120
lea ecx, [ebp - 0x40]
call fcn.1001d110
lea ecx, [ebp - 0x90]
call fcn.1003cf00
lea eax, [ebp - 0x90]
mov dword [ebp - 4], 1
push eax
mov dword [ebp - 0x90], vtable.std::ios_base.0
call fcn.100e8d6e
add esp, 4
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100eb369
mov esp, ebp
pop ebp
ret