Function at 0x180004f50
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xb0
lea rax, [fcn.180005260]
add rax, 0x23d
mov qword [rbp - 0x19], rax
mov dword [rbp - 0x11], 0x23d
xor eax, eax
mov qword [rbp - 9], rax
xorps xmm0, xmm0
movdqa xmmword [rbp + 7], xmm0
xor ebx, ebx
mov qword [rbp + 0x17], rbx
mov qword [rbp + 0x1f], rbx
mov qword [rbp + 0x27], rbx
mov ecx, 0x10
call fcn.18006d9a8
mov qword [rax + 8], rbx
mov qword [rbp + 7], rax
lea rcx, [rbp + 7]
mov qword [rax], rcx
mov word [rbp + 0x37], bx
mov qword [rbp + 0x3d], rbx
mov qword [rbp + 0x45], rbx
xor eax, eax
mov word [rbp + 0x3a], ax
mov byte [rbp + 0x3c], al
mov word [rbp + 0x3d], ax
mov byte [rbp + 0x3f], al
mov word [rbp + 0x40], ax
mov byte [rbp + 0x42], al
mov word [rbp + 0x43], ax
mov byte [rbp + 0x45], al
mov word [rbp + 0x46], ax
mov byte [rbp + 0x48], al
mov word [rbp + 0x49], ax
mov byte [rbp + 0x4b], al
mov dword [rbp + 3], ebx
mov dword [rbp + 0x33], ebx
movaps xmm0, xmmword [rbp - 0x19]
movdqa xmmword [rbp - 0x19], xmm0
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 9]
call fcn.180014c30
nop
lea rcx, [rbp + 7]
call fcn.180016c70
mov rcx, qword [rbp + 7]
mov qword [rbp + 7], rbx
mov edx, 0x10
call fcn.18006d8bc
mov rax, qword [0x1800fb3e0]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x32c0]
mov dword [rax + 4], 0xf10b60d7
mov r8d, dword [0x1800fb3e8]
cmp r8d, 0xdcda1bec
jne 0x18000510e
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_StartDocW]
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MapViewOfFileExNuma]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_ConvertDefaultLocale]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetDefaultDllDirectories]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_MoveToEx]
call qword [sym.imp.KERNEL32.dll_FlushProcessWriteBuffers]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindNextVolumeMountPointW]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_SetPaletteEntries]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetConsoleHistoryInfo]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_RectInRegion]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindNextFileNameW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FlsAlloc]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_AddSIDToBoundaryDescriptor]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_BuildCommDCBW]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetProcessGroupAffinity]
mov r8d, dword [0x1800fb3e8]
mov rax, qword [0x1800fb3f0]
mov rcx, qword [rax + 0x18]
mov edx, dword [rcx + 0x4490]
add edx, 0x6dabd775
mov rax, qword [0x1800fb3e0]
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x32c0]
mov dword [rax], edx
cmp r8d, 0x5fad40ed
jne 0x180005202
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_EraseTape]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CancelWaitableTimer]
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_CreateRoundRectRgn]
xor ecx, ecx
call qword [sym.imp.GDI32.dll_GetSystemPaletteUse]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_OffsetRgn]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_QueueUserAPC]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_RectInRegion]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_GetViewportExtEx]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeleteTimerQueueTimer]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_UnregisterBadMemoryNotification]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GlobalFindAtomW]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FlsGetValue]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.GDI32.dll_SetViewportExtEx]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
mov rax, qword [0x1800fb3e0]
mov rcx, qword [rax + 0x18]
mov rdx, qword [rcx + 0x32c0]
mov rax, qword [0x1800fb3f0]
mov rcx, qword [rax + 0x18]
mov eax, dword [rcx + 0x4490]
add dword [rdx + 4], eax
mov rax, qword [0x1800fb3d8]
mov r8, qword [rax + 0x18]
mov rax, qword [0x1800fb3e0]
mov rcx, qword [rax + 0x18]
mov rdx, qword [rcx + 0x32c0]
mov eax, dword [r8 + 0x22e0]
mov dword [rdx + 8], eax
mov rbx, qword [rsp + 0xc8]
add rsp, 0xb0
pop rbp
ret