Function at 0x445100
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.00436dc0
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.00436dc0
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.00436dc0
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.00436dc0
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.00436dc0
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.00436dc0
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.00436dc0
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.00436dc0
mov rsi, rax
test rsi, rsi
je 0x445319
mov edx, 0x19
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x445325
mov rcx, rsi
call fcn.00447ff0
mov word [r15], ax
mov rcx, rsi
call fcn.00436dd0
mov edi, 1
jmp 0x44532f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x44532d
mov rcx, rsi
call fcn.00436dd0
xor edi, edi
and edi, ebx
mov ecx, 4
call fcn.00436dc0
mov rsi, rax
test rsi, rsi
je 0x445379
mov edx, 0x1a
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x445385
mov rcx, rsi
call fcn.00447ff0
mov word [r15 + 2], ax
mov rcx, rsi
call fcn.00436dd0
mov eax, 1
jmp 0x44538f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x44538d
mov rcx, rsi
call fcn.00436dd0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.00436dc0
mov rsi, rax
test rsi, rsi
je 0x4453d9
mov edx, 0x1b
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x4453e5
mov rcx, rsi
call fcn.00447ff0
mov word [r15 + 4], ax
mov rcx, rsi
call fcn.00436dd0
mov eax, 1
jmp 0x4453ef
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x4453ed
mov rcx, rsi
call fcn.00436dd0
xor eax, eax
and edi, eax
mov ecx, 4
call fcn.00436dc0
mov rsi, rax
test rsi, rsi
je 0x445439
mov edx, 0x1c
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x445445
mov rcx, rsi
call fcn.00447ff0
mov word [r15 + 6], ax
mov rcx, rsi
call fcn.00436dd0
mov eax, 1
jmp 0x44544f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x44544d
mov rcx, rsi
call fcn.00436dd0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.00436dc0
mov rsi, rax
test rsi, rsi
je 0x445499
mov edx, 0x52
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x4454a5
mov rcx, rsi
call fcn.00447ff0
mov word [r15 + 8], ax
mov rcx, rsi
call fcn.00436dd0
mov eax, 1
jmp 0x4454af
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x4454ad
mov rcx, rsi
call fcn.00436dd0
xor eax, eax
and edi, eax
mov ecx, 4
call fcn.00436dc0
mov rsi, rax
test rsi, rsi
je 0x4454f9
mov edx, 0x53
mov r9d, 4
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x445505
mov rcx, rsi
call fcn.00447ff0
mov word [r15 + 0xa], ax
mov rcx, rsi
call fcn.00436dd0
mov eax, 1
jmp 0x44550f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x44550d
mov rcx, rsi
call fcn.00436dd0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.00436dc0
mov rsi, rax
test rsi, rsi
je 0x445559
mov edx, 0x54
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x445565
mov rcx, rsi
call fcn.00447ff0
mov word [r15 + 0xc], ax
mov rcx, rsi
call fcn.00436dd0
mov eax, 1
jmp 0x44556f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x44556d
mov rcx, rsi
call fcn.00436dd0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.00436dc0
mov rsi, rax
test rsi, rsi
je 0x4455b9
mov edx, 0x55
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x4455c5
mov rcx, rsi
call fcn.00447ff0
mov word [r15 + 0xe], ax
mov rcx, rsi
call fcn.00436dd0
mov eax, 1
jmp 0x4455cf
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x4455cd
mov rcx, rsi
call fcn.00436dd0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.00436dc0
mov rsi, rax
test rsi, rsi
je 0x445619
mov edx, 0x56
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x445625
mov rcx, rsi
call fcn.00447ff0
mov word [r15 + 0x10], ax
mov rcx, rsi
call fcn.00436dd0
mov eax, 1
jmp 0x44562f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x44562d
mov rcx, rsi
call fcn.00436dd0
xor eax, eax
and edi, eax
mov ecx, 3
call fcn.00436dc0
mov rsi, rax
test rsi, rsi
je 0x445679
mov edx, 0x57
mov r9d, 3
mov ecx, r12d
mov r8, rsi
call sub.KERNEL32_GetLocaleInfoA
test eax, eax
je 0x445685
mov rcx, rsi
call fcn.00447ff0
mov word [r15 + 0x12], ax
mov rcx, rsi
call fcn.00436dd0
mov eax, 1
jmp 0x44568f
mov ecx, 0xe
call sub.KERNEL32_SetLastError
jmp 0x44568d
mov rcx, rsi
call fcn.00436dd0
xor eax, eax
and edi, eax
movsx rax, word [r15 + 6]
lea rcx, [0x00465720]
mov rcx, qword [rcx + rax*8]
call fcn.0043b5b0
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