Function at 0x5bac70fe
Capabilities:
Get geographical location

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x8c
mov eax, dword [0x5bb70c3c]
and dword [ebp - 0x60], 0
mov dword [ebp - 4], eax
call fcn.5babcc61
test eax, eax
je 0x5bac713d
push 2
lea eax, [ebp - 0x5c]
push eax
push 0x20001004
call fcn.5ba7a53c
movzx eax, ax
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
cmp eax, 2
je 0x5bac7146
call dword [sym.imp.KERNEL32.dll_GetACP]
mov dword [ebp - 0x5c], eax
cmp dword [ebp + 0x10], 0
push ebx
push esi
jne 0x5bac7153
mov ebx, dword [ebp - 0x5c]
jmp 0x5bac7160
push dword [ebp + 0xc]
push dword [ebp + 0x10]
call fcn.5baa2635
mov ebx, eax
call dword [sym.imp.USER32.dll_CreatePopupMenu]
mov esi, dword [0x5bb7204c]
test esi, esi
mov dword [ebp - 0x54], eax
jne 0x5bac71af
call fcn.5ba7a3e7
mov esi, dword [0x5bb7204c]
test esi, esi
jne 0x5bac71af
push 0x48
lea eax, [ebp - 0x4c]
push eax
push 0x1568
push dword [0x5bb73708]
call dword [sym.imp.USER32.dll_LoadStringA]
lea eax, [ebp - 0x4c]
push eax
push 0xffffffffffffffff
push 3
push dword [ebp - 0x54]
call dword [sym.imp.USER32.dll_AppendMenuA]
jmp 0x5bac73b3
push edi
mov edi, dword [0x5bb72050]
push edi
push esi
call fcn.5bac69a2
push edi
push esi
push ebx
call fcn.5bac6a0d
and dword [ebp - 0x50], 0
cmp dword [0x5bb670a4], 0
jbe 0x5bac7236
jmp 0x5bac71da
mov esi, dword [0x5bb7204c]
push dword [ebp - 0x50]
call fcn.5bac697e
push dword [ebp + 0xc]
mov ebx, eax
mov edi, ebx
imul edi, edi, 0x23c
push dword [edi + esi + 4]
call fcn.5bac6839
test eax, eax
je 0x5bac7228
cmp dword [ebp - 0x50], 0
je 0x5bac721d
mov eax, dword [0x5bb7204c]
lea eax, [edi + eax + 0xc]
push eax
add ebx, 0xa619
push ebx
push 0
push dword [ebp - 0x54]
call sub.SHLWAPI.dll_Ordinal_36
mov eax, dword [0x5bb7204c]
add eax, edi
or byte [eax + 3], 0x80
inc dword [ebp - 0x50]
mov eax, dword [ebp - 0x50]
cmp eax, dword [0x5bb670a4]
jb 0x5bac71d4
call dword [sym.imp.USER32.dll_CreatePopupMenu]
mov ebx, eax
mov eax, dword [0x5bb72050]
xor esi, esi
xor edi, edi
cmp eax, esi
mov dword [ebp - 0x58], ebx
je 0x5bac738a
cmp ebx, esi
je 0x5bac73b2
cmp eax, esi
mov dword [ebp - 0x50], esi
jbe 0x5bac7316
push dword [ebp + 0xc]
mov eax, dword [0x5bb7204c]
push dword [esi + eax + 4]
call fcn.5bac6839
test eax, eax
je 0x5bac72fe
mov eax, dword [0x5bb7204c]
add eax, esi
mov ecx, dword [eax]
test ecx, ecx
js 0x5bac72fa
test ecx, 0x20000
jne 0x5bac729b
mov ecx, dword [eax + 4]
cmp ecx, dword [eax + 8]
jne 0x5bac72fe
xor ecx, ecx
xor ebx, ebx
cmp edi, ecx
jbe 0x5bac72d0
cmp edi, dword [eax + 8]
je 0x5bac72d0
cmp esi, 0x2cb0
jb 0x5bac72c1
cmp dword [ebp - 0x60], ecx
jne 0x5bac72c1
push 0x20
pop ebx
mov dword [ebp - 0x60], 1
jmp 0x5bac72d0
push ecx
push ecx
push 0x800
push dword [ebp - 0x58]
call sub.SHLWAPI.dll_Ordinal_36
mov eax, dword [0x5bb7204c]
lea eax, [esi + eax + 0xc]
push eax
mov eax, dword [ebp - 0x50]
add eax, 0xa619
push eax
push ebx
push dword [ebp - 0x58]
call sub.SHLWAPI.dll_Ordinal_36
mov eax, dword [0x5bb7204c]
mov edi, dword [esi + eax + 8]
mov ebx, dword [ebp - 0x58]
jmp 0x5bac72fe
and byte [eax + 3], 0x7f
inc dword [ebp - 0x50]
mov eax, dword [ebp - 0x50]
add esi, 0x23c
cmp eax, dword [0x5bb72050]
jb 0x5bac7265
cmp byte [0x5bb7202c], 0
mov esi, 0x5bb7202c
jne 0x5bac7338
push 0x20
push esi
push 0x1573
push dword [0x5bb73708]
call dword [sym.imp.USER32.dll_LoadStringA]
push ebx
call dword [sym.imp.USER32.dll_GetMenuItemCount]
test eax, eax
jle 0x5bac7381
push esi
mov esi, 0x9c69
push esi
push 2
push dword [ebp - 0x54]
mov dword [ebp - 0x8c], 0x2c
mov dword [ebp - 0x88], 4
mov dword [ebp - 0x78], ebx
call dword [sym.imp.USER32.dll_AppendMenuA]
lea eax, [ebp - 0x8c]
push eax
push 0
push esi
push dword [ebp - 0x54]
call dword [sym.imp.USER32.dll_SetMenuItemInfoA]
jmp 0x5bac73b2
push ebx
call dword [sym.imp.USER32.dll_DestroyMenu]
jmp 0x5bac73b2
push 0x48
lea eax, [ebp - 0x4c]
push eax
push 0x1568
push dword [0x5bb73708]
call dword [sym.imp.USER32.dll_LoadStringA]
lea eax, [ebp - 0x4c]
push eax
push 0xffffffffffffffff
push 3
push dword [ebp - 0x54]
call dword [sym.imp.USER32.dll_AppendMenuA]
pop edi
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x54]
pop esi
pop ebx
call fcn.5bb3f314
leave
ret 0xc