Function at 0x4ad0d510
Capabilities:
Get geographical location

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x1c0
mov rax, qword [0x4ad2e1c8]
xor rax, rsp
mov qword [rsp + 0x1b0], rax
xor r15d, r15d
movsxd r14, r9d
mov rbp, r8
mov edi, edx
cmp rcx, r15
jne 0x4ad14215
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetSystemTime]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
jmp 0x4ad0d565
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_FileTimeToLocalFileTime]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
cmp edi, 1
jne 0x4ad132a0
movzx ecx, word [rsp + 0x5e]
mov eax, 0x66666667
imul ecx
mov ecx, edx
sar ecx, 2
mov eax, ecx
shr eax, 0x1f
add ecx, eax
movzx eax, word [rsp + 0x5c]
cmp rbp, r15
je 0x4ad17f0e
movzx r8d, word [rsp + 0x5a]
movzx r9d, word [rsp + 0x58]
mov dword [rsp + 0x48], ecx
lea rcx, [0x4ad37b40]
mov rdx, r14
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x38], eax
lea rax, [0x4ad37b50]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], r8d
lea r8, str._2d_s_02d_s_02d_s_02d
mov rcx, rbp
mov qword [rsp + 0x20], rax
call fcn.4ad01484
jmp 0x4ad0d5fe
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rbp
repne scasw ax, word [rdi]
not rcx
dec rcx
mov eax, ecx
mov rcx, qword [rsp + 0x1b0]
xor rcx, rsp
call fcn.4ad01000
add rsp, 0x1c0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp byte [0x4ad2e0ca], r15b
je 0x4ad17fb8
mov r12d, r15d
call fcn.4ad08fc4
mov edi, 0x80
lea r8, [rsp + 0xb0]
mov edx, 0x1003
mov ecx, eax
mov r9d, edi
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
cmp eax, r15d
je 0x4ad17f4d
lea rbx, [rsp + 0xb0]
cmp word [rsp + 0xb0], r15w
je 0x4ad13320
movzx esi, word [rbx]
cmp si, 0x27
je 0x4ad17f9c
cmp r12d, r15d
jne 0x4ad133ba
cmp si, 0x68
je 0x4ad13379
cmp si, 0x48
je 0x4ad13379
cmp si, 0x6d
je 0x4ad13379
add rbx, 2
cmp word [rbx], r15w
jne 0x4ad132ee
call fcn.4ad08fc4
lea r9, [rsp + 0xb0]
lea r8, [rsp + 0x50]
mov ecx, eax
lea rax, [rsp + 0x70]
mov edx, 2
mov dword [rsp + 0x28], 0x20
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_GetTimeFormatW]
cmp eax, r15d
je 0x4ad17fad
cmp rbp, r15
je 0x4ad1802d
lea r8, [rsp + 0x70]
mov rdx, r14
mov rcx, rbp
call fcn.4ad01744
nop
jmp 0x4ad0d5fe
mov rcx, r15
add rbx, 2
inc rcx
cmp word [rbx], si
je 0x4ad1337c
mov rax, rcx
neg rax
lea rbx, [rbx + rax*2]
cmp rcx, 1
jne 0x4ad133ba
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rbx
repne scasw ax, word [rdi]
mov rdx, rbx
not rcx
lea r8, [rcx + rcx]
lea rcx, [rbx + 2]
call sub.msvcrt.dll_memmove
mov word [rbx], si
add rbx, 2
jmp 0x4ad13316
lea rdx, [rsp + 0x60]
call fcn.4ad1422c
nop
jmp 0x4ad0d565
movzx r9d, word [rsp + 0x5a]
movzx edx, word [rsp + 0x58]
mov dword [rsp + 0x38], ecx
lea rcx, [0x4ad37b40]
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], eax
lea rax, [0x4ad37b50]
lea rcx, str._2d_s_02d_s_02d_s_02d
mov r8, rax
mov qword [rsp + 0x20], rax
call fcn.4ad05fc4
jmp 0x4ad18037
lea rdx, str.HH:mm:ss_t
lea rax, [rsp + 0xb0]
lea rcx, [rsp + 0xb0]
sub rdx, rax
lea rax, [rdi + 0x7fffff7e]
cmp rax, r15
je 0x4ad17f8a
movzx eax, word [rdx + rcx]
cmp ax, r15w
je 0x4ad17f8a
mov word [rcx], ax
add rcx, 2
sub rdi, 1
jne 0x4ad17f67
cmp rdi, r15
jne 0x4ad17f93
sub rcx, 2
mov word [rcx], r15w
jmp 0x4ad132db
cmp r12d, r15d
mov eax, r15d
sete al
mov r12d, eax
jmp 0x4ad133ba
mov word [rsp + 0x70], r15w
jmp 0x4ad1335a
movzx r9d, word [rsp + 0x58]
lea rcx, [0x4ad4a6c0]
cmp dword [0x4ad2e0e4], r15d
je 0x4ad17ff0
cmp r9d, 0xc
jb 0x4ad17fe3
jbe 0x4ad17fda
add r9d, 0xfffffff4
lea rcx, [0x4ad4a680]
jmp 0x4ad17ff7
cmp r9d, r15d
jne 0x4ad17ff7
mov r9d, 0xc
jmp 0x4ad17ff7
lea rcx, [0x4ad29774]
movzx eax, word [rsp + 0x5a]
mov qword [rsp + 0x30], rcx
lea r8, str._02d_s_02d_s
mov dword [rsp + 0x28], eax
lea rax, [0x4ad37b50]
lea rcx, [rsp + 0x70]
mov edx, 0x20
mov qword [rsp + 0x20], rax
call fcn.4ad01484
nop
jmp 0x4ad1335a
lea rcx, [rsp + 0x70]
call fcn.4ad0a4c8
mov ecx, eax
jmp 0x4ad0d610