Function at 0x418a20
Capabilities:
Get geographical location

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x28
lea rbp, [rsp + 0x20]
mov r15, rdx
mov edi, ecx
mov r8, qword [r15 + 0x1c]
mov edx, 0x16
xor r9d, r9d
call sub.KERNEL32_GetLocaleInfoA
inc eax
movsxd rsi, eax
mov rcx, rsi
call fcn.0040b670
mov qword [r15 + 0x1c], rax
mov edx, 0x16
mov ecx, edi
mov r8, rax
mov r9d, esi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
setne bl
mov r8, qword [r15 + 0x14]
mov edx, 0x17
xor r9d, r9d
mov ecx, edi
call sub.KERNEL32_GetLocaleInfoA
inc eax
movsxd rsi, eax
mov rcx, rsi
call fcn.0040b670
mov qword [r15 + 0x14], rax
mov edx, 0x17
mov ecx, edi
mov r8, rax
mov r9d, esi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
setne r12b
and r12b, bl
mov r8, qword [r15 + 0x24]
mov edx, 0x14
xor r9d, r9d
mov ecx, edi
call sub.KERNEL32_GetLocaleInfoA
inc eax
movsxd rsi, eax
mov rcx, rsi
call fcn.0040b670
mov qword [r15 + 0x24], rax
mov edx, 0x14
mov ecx, edi
mov r8, rax
mov r9d, esi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
setne r13b
mov r8, qword [r15 + 0x2c]
mov edx, 0x15
xor r9d, r9d
mov ecx, edi
call sub.KERNEL32_GetLocaleInfoA
inc eax
movsxd rsi, eax
mov rcx, rsi
call fcn.0040b670
mov qword [r15 + 0x2c], rax
mov edx, 0x15
mov ecx, edi
mov r8, rax
mov r9d, esi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
setne r14b
and r14b, r13b
and r14b, r12b
mov r8, qword [r15 + 0x34]
mov edx, 0x18
xor r9d, r9d
mov ecx, edi
call sub.KERNEL32_GetLocaleInfoA
inc eax
movsxd rsi, eax
mov rcx, rsi
call fcn.0040b670
mov qword [r15 + 0x34], rax
mov edx, 0x18
mov ecx, edi
mov r8, rax
mov r9d, esi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
setne r12b
mov r8, qword [r15 + 0x3c]
mov edx, 0x50
xor r9d, r9d
mov ecx, edi
call sub.KERNEL32_GetLocaleInfoA
inc eax
movsxd rsi, eax
mov rcx, rsi
call fcn.0040b670
mov qword [r15 + 0x3c], rax
mov edx, 0x50
mov ecx, edi
mov r8, rax
mov r9d, esi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
setne bl
and bl, r12b
mov r12d, edi
mov r8, qword [r15 + 0x44]
mov edx, 0x51
xor r9d, r9d
mov ecx, r12d
call sub.KERNEL32_GetLocaleInfoA
inc eax
movsxd rsi, eax
mov rcx, rsi
call fcn.0040b670
mov qword [r15 + 0x44], rax
mov edx, 0x51
mov ecx, r12d
mov r8, rax
mov r9d, esi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
setne al
and al, bl
and al, r14b
movzx ebx, al
mov ecx, 4
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418c39
mov edx, 0x19
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418c45
mov rcx, rsi
call fcn.0041b1e0
mov word [r15], ax
mov rcx, rsi
call fcn.0040b680
mov edi, 1
jmp 0x418c4f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418c4d
mov rcx, rsi
call fcn.0040b680
xor edi, edi
and edi, ebx
mov ecx, 4
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418c99
mov edx, 0x1a
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418ca5
mov rcx, rsi
call fcn.0041b1e0
mov word [r15 + 2], ax
mov rcx, rsi
call fcn.0040b680
mov eax, 1
jmp 0x418caf
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418cad
mov rcx, rsi
call fcn.0040b680
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418cf9
mov edx, 0x1b
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418d05
mov rcx, rsi
call fcn.0041b1e0
mov word [r15 + 4], ax
mov rcx, rsi
call fcn.0040b680
mov eax, 1
jmp 0x418d0f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418d0d
mov rcx, rsi
call fcn.0040b680
xor eax, eax
and edi, eax
mov ecx, 4
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418d59
mov edx, 0x1c
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418d65
mov rcx, rsi
call fcn.0041b1e0
mov word [r15 + 6], ax
mov rcx, rsi
call fcn.0040b680
mov eax, 1
jmp 0x418d6f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418d6d
mov rcx, rsi
call fcn.0040b680
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418db9
mov edx, 0x52
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418dc5
mov rcx, rsi
call fcn.0041b1e0
mov word [r15 + 8], ax
mov rcx, rsi
call fcn.0040b680
mov eax, 1
jmp 0x418dcf
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418dcd
mov rcx, rsi
call fcn.0040b680
xor eax, eax
and edi, eax
mov ecx, 4
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418e19
mov edx, 0x53
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418e25
mov rcx, rsi
call fcn.0041b1e0
mov word [r15 + 0xa], ax
mov rcx, rsi
call fcn.0040b680
mov eax, 1
jmp 0x418e2f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418e2d
mov rcx, rsi
call fcn.0040b680
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418e79
mov edx, 0x54
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418e85
mov rcx, rsi
call fcn.0041b1e0
mov word [r15 + 0xc], ax
mov rcx, rsi
call fcn.0040b680
mov eax, 1
jmp 0x418e8f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418e8d
mov rcx, rsi
call fcn.0040b680
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418ed9
mov edx, 0x55
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418ee5
mov rcx, rsi
call fcn.0041b1e0
mov word [r15 + 0xe], ax
mov rcx, rsi
call fcn.0040b680
mov eax, 1
jmp 0x418eef
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418eed
mov rcx, rsi
call fcn.0040b680
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418f39
mov edx, 0x56
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418f45
mov rcx, rsi
call fcn.0041b1e0
mov word [r15 + 0x10], ax
mov rcx, rsi
call fcn.0040b680
mov eax, 1
jmp 0x418f4f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418f4d
mov rcx, rsi
call fcn.0040b680
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0040b670
mov rsi, rax
test rsi, rsi
je 0x418f99
mov edx, 0x57
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x418fa5
mov rcx, rsi
call fcn.0041b1e0
mov word [r15 + 0x12], ax
mov rcx, rsi
call fcn.0040b680
mov eax, 1
jmp 0x418faf
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x418fad
mov rcx, rsi
call fcn.0040b680
xor eax, eax
and edi, eax
movsx rax, word [r15 + 6]
lea rcx, [0x007d4930]
mov rcx, qword [rcx + rax*8]
call fcn.0040fe00
mov qword [r15 + 0x4c], rax
mov eax, edi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret