Function at 0x425130
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.004160d0
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.004160d0
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.004160d0
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.004160d0
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.004160d0
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.004160d0
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.004160d0
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.004160d0
mov rsi, rax
test rsi, rsi
je 0x425349
mov edx, 0x19
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x425355
mov rcx, rsi
call fcn.00427900
mov word [r15], ax
mov rcx, rsi
call fcn.004160e0
mov edi, 1
jmp 0x42535f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x42535d
mov rcx, rsi
call fcn.004160e0
xor edi, edi
and edi, ebx
mov ecx, 4
call fcn.004160d0
mov rsi, rax
test rsi, rsi
je 0x4253a9
mov edx, 0x1a
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x4253b5
mov rcx, rsi
call fcn.00427900
mov word [r15 + 2], ax
mov rcx, rsi
call fcn.004160e0
mov eax, 1
jmp 0x4253bf
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x4253bd
mov rcx, rsi
call fcn.004160e0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.004160d0
mov rsi, rax
test rsi, rsi
je 0x425409
mov edx, 0x1b
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x425415
mov rcx, rsi
call fcn.00427900
mov word [r15 + 4], ax
mov rcx, rsi
call fcn.004160e0
mov eax, 1
jmp 0x42541f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x42541d
mov rcx, rsi
call fcn.004160e0
xor eax, eax
and edi, eax
mov ecx, 4
call fcn.004160d0
mov rsi, rax
test rsi, rsi
je 0x425469
mov edx, 0x1c
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x425475
mov rcx, rsi
call fcn.00427900
mov word [r15 + 6], ax
mov rcx, rsi
call fcn.004160e0
mov eax, 1
jmp 0x42547f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x42547d
mov rcx, rsi
call fcn.004160e0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.004160d0
mov rsi, rax
test rsi, rsi
je 0x4254c9
mov edx, 0x52
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x4254d5
mov rcx, rsi
call fcn.00427900
mov word [r15 + 8], ax
mov rcx, rsi
call fcn.004160e0
mov eax, 1
jmp 0x4254df
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x4254dd
mov rcx, rsi
call fcn.004160e0
xor eax, eax
and edi, eax
mov ecx, 4
call fcn.004160d0
mov rsi, rax
test rsi, rsi
je 0x425529
mov edx, 0x53
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x425535
mov rcx, rsi
call fcn.00427900
mov word [r15 + 0xa], ax
mov rcx, rsi
call fcn.004160e0
mov eax, 1
jmp 0x42553f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x42553d
mov rcx, rsi
call fcn.004160e0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.004160d0
mov rsi, rax
test rsi, rsi
je 0x425589
mov edx, 0x54
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x425595
mov rcx, rsi
call fcn.00427900
mov word [r15 + 0xc], ax
mov rcx, rsi
call fcn.004160e0
mov eax, 1
jmp 0x42559f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x42559d
mov rcx, rsi
call fcn.004160e0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.004160d0
mov rsi, rax
test rsi, rsi
je 0x4255e9
mov edx, 0x55
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x4255f5
mov rcx, rsi
call fcn.00427900
mov word [r15 + 0xe], ax
mov rcx, rsi
call fcn.004160e0
mov eax, 1
jmp 0x4255ff
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x4255fd
mov rcx, rsi
call fcn.004160e0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.004160d0
mov rsi, rax
test rsi, rsi
je 0x425649
mov edx, 0x56
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x425655
mov rcx, rsi
call fcn.00427900
mov word [r15 + 0x10], ax
mov rcx, rsi
call fcn.004160e0
mov eax, 1
jmp 0x42565f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x42565d
mov rcx, rsi
call fcn.004160e0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.004160d0
mov rsi, rax
test rsi, rsi
je 0x4256a9
mov edx, 0x57
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x4256b5
mov rcx, rsi
call fcn.00427900
mov word [r15 + 0x12], ax
mov rcx, rsi
call fcn.004160e0
mov eax, 1
jmp 0x4256bf
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x4256bd
mov rcx, rsi
call fcn.004160e0
xor eax, eax
and edi, eax
movsx rax, word [r15 + 6]
lea rcx, [0x00444640]
mov rcx, qword [rcx + rax*8]
call fcn.0041a860
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