Function at 0x428830
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.0041bdb0
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.0041bdb0
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.0041bdb0
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.0041bdb0
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.0041bdb0
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.0041bdb0
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.0041bdb0
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.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428a49
mov edx, 0x19
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428a55
mov rcx, rsi
call fcn.0042afa0
mov word [r15], ax
mov rcx, rsi
call fcn.0041bdc0
mov edi, 1
jmp 0x428a5f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428a5d
mov rcx, rsi
call fcn.0041bdc0
xor edi, edi
and edi, ebx
mov ecx, 4
call fcn.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428aa9
mov edx, 0x1a
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428ab5
mov rcx, rsi
call fcn.0042afa0
mov word [r15 + 2], ax
mov rcx, rsi
call fcn.0041bdc0
mov eax, 1
jmp 0x428abf
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428abd
mov rcx, rsi
call fcn.0041bdc0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428b09
mov edx, 0x1b
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428b15
mov rcx, rsi
call fcn.0042afa0
mov word [r15 + 4], ax
mov rcx, rsi
call fcn.0041bdc0
mov eax, 1
jmp 0x428b1f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428b1d
mov rcx, rsi
call fcn.0041bdc0
xor eax, eax
and edi, eax
mov ecx, 4
call fcn.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428b69
mov edx, 0x1c
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428b75
mov rcx, rsi
call fcn.0042afa0
mov word [r15 + 6], ax
mov rcx, rsi
call fcn.0041bdc0
mov eax, 1
jmp 0x428b7f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428b7d
mov rcx, rsi
call fcn.0041bdc0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428bc9
mov edx, 0x52
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428bd5
mov rcx, rsi
call fcn.0042afa0
mov word [r15 + 8], ax
mov rcx, rsi
call fcn.0041bdc0
mov eax, 1
jmp 0x428bdf
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428bdd
mov rcx, rsi
call fcn.0041bdc0
xor eax, eax
and edi, eax
mov ecx, 4
call fcn.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428c29
mov edx, 0x53
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428c35
mov rcx, rsi
call fcn.0042afa0
mov word [r15 + 0xa], ax
mov rcx, rsi
call fcn.0041bdc0
mov eax, 1
jmp 0x428c3f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428c3d
mov rcx, rsi
call fcn.0041bdc0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428c89
mov edx, 0x54
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428c95
mov rcx, rsi
call fcn.0042afa0
mov word [r15 + 0xc], ax
mov rcx, rsi
call fcn.0041bdc0
mov eax, 1
jmp 0x428c9f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428c9d
mov rcx, rsi
call fcn.0041bdc0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428ce9
mov edx, 0x55
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428cf5
mov rcx, rsi
call fcn.0042afa0
mov word [r15 + 0xe], ax
mov rcx, rsi
call fcn.0041bdc0
mov eax, 1
jmp 0x428cff
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428cfd
mov rcx, rsi
call fcn.0041bdc0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428d49
mov edx, 0x56
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428d55
mov rcx, rsi
call fcn.0042afa0
mov word [r15 + 0x10], ax
mov rcx, rsi
call fcn.0041bdc0
mov eax, 1
jmp 0x428d5f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428d5d
mov rcx, rsi
call fcn.0041bdc0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.0041bdb0
mov rsi, rax
test rsi, rsi
je 0x428da9
mov edx, 0x57
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x428db5
mov rcx, rsi
call fcn.0042afa0
mov word [r15 + 0x12], ax
mov rcx, rsi
call fcn.0041bdc0
mov eax, 1
jmp 0x428dbf
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x428dbd
mov rcx, rsi
call fcn.0041bdc0
xor eax, eax
and edi, eax
movsx rax, word [r15 + 6]
lea rcx, [0x00441510]
mov rcx, qword [rcx + rax*8]
call fcn.00420520
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