Function at 0x140025980
Capabilities:
Get geographical location

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x330
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov qword [rsp + 0x360], rbx
mov rax, qword [0x1400cb0f0]
xor rax, rsp
mov qword [rsp + 0x320], rax
mov rbx, rdx
mov rdi, rcx
mov qword [rsp + 0x80], rcx
xor esi, esi
mov dword [rsp + 0x40], esi
mov qword [rcx], rsi
mov eax, dword [0x1400ccb60]
lea rbp, str.kernel32
test al, 1
jne 0x140025a0b
or eax, 1
mov dword [0x1400ccb60], eax
xor r9d, r9d
lea r8, str.GetLocaleInfoEx
mov rdx, rbp
lea rcx, [0x1400ccb50]
call fcn.14001b0f0
lea rcx, [0x1400a0220]
call fcn.140065eb0
nop
mov eax, dword [0x1400ccb60]
mov r10, qword [0x1400ccb50]
test r10, r10
je 0x140025ae0
test al, 1
jne 0x140025a55
or eax, 1
mov dword [0x1400ccb60], eax
xor r9d, r9d
lea r8, str.GetLocaleInfoEx
mov rdx, rbp
lea rcx, [0x1400ccb50]
call fcn.14001b0f0
lea rcx, [0x1400a0220]
call fcn.140065eb0
nop
mov r10, qword [0x1400ccb50]
test r10, r10
jne 0x140025ac6
mov qword [rsp + 0x20], rbp
lea r9, str.GetLocaleInfoEx
lea r8, str.Function__s_not_found_in__s_library
lea edx, [r10 + 1]
lea rcx, [rsp + 0x88]
call fcn.1400052c0
lea r11, [0x1400a5b40]
mov qword [rsp + 0x88], r11
mov byte [rsp + 0x190], 0
or r9d, 0xffffffff
lea r8, str.DynamicFnLoadFailed
lea edx, [r9 + 0x21]
lea rcx, [rsp + 0x190]
call fcn.140006c70
lea rdx, [0x1400c84c8]
lea rcx, [rsp + 0x88]
call fcn.1400649f0
int3
mov r9d, 0xa
lea r8, [rsp + 0x2f0]
lea edx, [r9 + 0x4f]
mov rcx, rbx
call r10
jmp 0x140025b03
test rbx, rbx
jne 0x140025d6e
lea r9d, [rbx + 0xa]
lea r8, [rsp + 0x2f0]
lea edx, [rbx + 0x59]
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x140025d69
mov eax, dword [0x1400ccb60]
test al, 1
jne 0x140025b4a
or eax, 1
mov dword [0x1400ccb60], eax
xor r9d, r9d
lea r8, str.GetLocaleInfoEx
mov rdx, rbp
lea rcx, [0x1400ccb50]
call fcn.14001b0f0
lea rcx, [0x1400a0220]
call fcn.140065eb0
nop
mov eax, dword [0x1400ccb60]
mov r10, qword [0x1400ccb50]
test r10, r10
je 0x140025c1f
test al, 1
jne 0x140025b94
or eax, 1
mov dword [0x1400ccb60], eax
xor r9d, r9d
lea r8, str.GetLocaleInfoEx
mov rdx, rbp
lea rcx, [0x1400ccb50]
call fcn.14001b0f0
lea rcx, [0x1400a0220]
call fcn.140065eb0
nop
mov r10, qword [0x1400ccb50]
test r10, r10
jne 0x140025c05
mov qword [rsp + 0x20], rbp
lea r9, str.GetLocaleInfoEx
lea r8, str.Function__s_not_found_in__s_library
lea edx, [r10 + 1]
lea rcx, [rsp + 0x88]
call fcn.1400052c0
lea r11, [0x1400a5b40]
mov qword [rsp + 0x88], r11
mov byte [rsp + 0x190], 0
or r9d, 0xffffffff
lea r8, str.DynamicFnLoadFailed
lea edx, [r9 + 0x21]
lea rcx, [rsp + 0x190]
call fcn.140006c70
lea rdx, [0x1400c84c8]
lea rcx, [rsp + 0x88]
call fcn.1400649f0
int3
mov r9d, 0xa
lea r8, [rsp + 0x308]
lea edx, [r9 + 0x50]
mov rcx, rbx
call r10
jmp 0x140025c42
test rbx, rbx
jne 0x140025d3f
lea r9d, [rbx + 0xa]
lea r8, [rsp + 0x308]
lea edx, [rbx + 0x5a]
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x140025d69
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], esi
or r9d, 0xffffffff
mov r8d, 0xfde9
lea rdx, [rsp + 0x308]
lea rcx, [rsp + 0x60]
call fcn.140037d20
nop
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], esi
or r9d, 0xffffffff
mov r8d, 0xfde9
lea rdx, [rsp + 0x2f0]
lea rcx, [rsp + 0x48]
call fcn.140037d20
nop
lea rax, [0x1400a5780]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov r8, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x50]
lea rcx, [rsp + 0x40]
call fcn.1400220b0
mov rcx, qword [rax]
mov qword [rax], rsi
mov qword [rdi], rcx
mov rcx, qword [rsp + 0x40]
call fcn.140064550
nop
cmp byte [rsp + 0x58], 0
je 0x140025cfe
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x140025d03
movsxd rdx, dword [rsp + 0x48]
call fcn.140019030
mov rcx, qword [rsp + 0x50]
jmp 0x140025d03
mov rcx, qword [rsp + 0x50]
call fcn.140064550
mov dword [rsp + 0x48], esi
mov qword [rsp + 0x50], rsi
cmp byte [rsp + 0x70], 0
je 0x140025d33
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x140025d38
movsxd rdx, dword [rsp + 0x60]
call fcn.140019030
mov rcx, qword [rsp + 0x68]
jmp 0x140025d38
mov rcx, qword [rsp + 0x68]
call fcn.140064550
jmp 0x140025d69
mov r9d, 0x73
lea r8, str.....lib1locwinUtilWin.cxx
lea rdx, str.name__0
lea rcx, [rsp + 0x1b0]
call fcn.14001b760
mov rcx, rax
call fcn.14001b660
nop
mov rax, rdi
jmp 0x140025d98
mov r9d, 0x73
lea r8, str.....lib1locwinUtilWin.cxx
lea rdx, str.name__0
lea rcx, [rsp + 0x1b0]
call fcn.14001b760
mov rcx, rax
call fcn.14001b660
nop
mov rcx, qword [rsp + 0x320]
xor rcx, rsp
call fcn.140068be0
mov rbx, qword [rsp + 0x360]
add rsp, 0x330
pop rdi
pop rsi
pop rbp
ret