Function at 0x1400ec430
Capabilities:
Get geographical location

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov qword [rbp - 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x1f0], rbx
mov rax, qword [0x14041da10]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov dword [rbp - 0x78], r9d
mov r12, r8
mov qword [rbp - 0x60], r8
mov rbx, rdx
mov qword [rbp - 0x70], rcx
test rcx, rcx
jne 0x1400ec48a
xor al, al
jmp 0x1400ecb33
lea rax, [0x14034d1a0]
mov qword [rsp + 0x50], rax
xor ecx, ecx
mov qword [rsp + 0x58], rcx
lea r8d, [rcx + 1]
lea rdx, [0x1403526a0]
mov rcx, rbx
call fcn.140202b80
lea rcx, [rsp + 0x50]
test al, al
je 0x1400ec4ea
mov edx, 0x13
call fcn.1402028a0
mov eax, dword [rsp + 0x58]
inc eax
movsxd rdx, eax
mov r9d, 0x13
lea r8, str.yyyy_MM_ddTHH:mm:ss
mov rcx, qword [rsp + 0x50]
call fcn.1402c06dc
mov edx, 0x13
jmp 0x1400ec50f
mov edx, dword [rbx + 0xc]
call fcn.1402028a0
movsxd r9, dword [rbx + 0xc]
mov eax, dword [rsp + 0x58]
inc eax
movsxd rdx, eax
mov r8, qword [rbx]
mov rcx, qword [rsp + 0x50]
call fcn.1402c06dc
mov edx, dword [rbx + 0xc]
lea rcx, [rsp + 0x50]
call fcn.140203bb0
or rax, 0xffffffffffffffff
mov rbx, qword [rbp - 0x70]
inc rax
cmp word [rbx + rax*2], 0
jne 0x1400ec521
cmp eax, dword [rsp + 0x5c]
jge 0x1400ec538
xor bl, bl
jmp 0x1400ecb1f
xor edx, edx
mov r13d, edx
mov edi, edx
mov dword [rsp + 0x38], edx
mov r14d, edx
mov dword [rsp + 0x30], edx
mov esi, edx
mov dword [rsp + 0x34], edx
mov eax, edx
mov dword [rsp + 0x68], edx
mov ecx, edx
mov dword [rsp + 0x60], edx
mov r15d, edx
cmp dword [rsp + 0x5c], edx
jle 0x1400ecad2
mov r12d, edx
nop dword [rax]
test r15d, r15d
js 0x1400eca5f
cmp r15d, dword [rsp + 0x5c]
jge 0x1400eca5f
lea rsi, [r12 + r12]
mov rax, qword [rsp + 0x50]
movzx edi, word [rsi + rax]
mov r14d, edx
mov qword [rsp + 0x48], 0
lea rax, [0x14034d1a0]
mov qword [rsp + 0x40], rax
xor edx, edx
lea rcx, [rsp + 0x40]
call fcn.140203bb0
nop
cmp r15d, dword [rsp + 0x5c]
jge 0x1400eca45
test r12, r12
js 0x1400ec9de
cmp r15d, dword [rsp + 0x5c]
jge 0x1400ec9de
mov rax, qword [rsp + 0x50]
inc r15d
inc r12
cmp di, word [rsi + rax]
jne 0x1400ec62d
lea rsi, [r12 + r12]
movzx ebx, word [rsi + rbx - 2]
mov edx, dword [rsp + 0x4c]
inc edx
lea rcx, [rsp + 0x40]
call fcn.1402028a0
movsxd rcx, dword [rsp + 0x4c]
mov rax, qword [rsp + 0x40]
mov word [rax + rcx*2], bx
mov edx, dword [rsp + 0x4c]
inc edx
lea rcx, [rsp + 0x40]
call fcn.140203bb0
inc r14d
cmp r15d, dword [rsp + 0x5c]
mov rbx, qword [rbp - 0x70]
jl 0x1400ec5c1
jmp 0x1400ec633
dec r15d
dec r12
test r14d, r14d
jle 0x1400eca45
cmp di, 0x79
jne 0x1400ec730
cmp r14d, 1
jl 0x1400eca45
cmp dword [rsp + 0x4c], 0
je 0x1400eca45
mov rbx, qword [rsp + 0x40]
mov r8d, 0xa
lea rdx, [rbp - 0x40]
mov rcx, rbx
call fcn.1402c04e8
mov r13d, eax
mov rdx, qword [rbp - 0x40]
sub rdx, rbx
sar rdx, 1
movsxd rcx, dword [rsp + 0x4c]
cmp rdx, rcx
jne 0x1400eca45
lea ecx, [rax + 0x7fffffff]
cmp ecx, 0xfffffffd
ja 0x1400eca45
cmp r14d, 2
jne 0x1400ec9aa
xor ecx, ecx
mov dword [rsp + 0x64], ecx
lea rax, [rsp + 0x64]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
xor r9d, r9d
mov edx, r14d
mov ecx, 0x409
mov r8d, 0xa0000030
call qword [sym.imp.KERNEL32.dll_GetCalendarInfoW]
cmp eax, r14d
jne 0x1400ec9aa
mov ecx, dword [rsp + 0x64]
lea r8d, [rcx - 0x63]
mov eax, 0x51eb851f
mul r8d
shr edx, 5
imul eax, edx, 0x64
sub r8d, eax
mov eax, 0x51eb851f
mul ecx
shr edx, 5
imul eax, edx, 0x64
mov edx, ecx
sub edx, eax
mov edi, dword [rsp + 0x38]
mov esi, dword [rsp + 0x34]
mov r14d, dword [rsp + 0x30]
cmp r13d, r8d
jle 0x1400ec725
sub r13d, r8d
add r13d, 0xffffff9d
add r13d, ecx
jmp 0x1400ec9b7
sub r13d, edx
add r13d, ecx
jmp 0x1400ec9b7
cmp di, 0x4d
jne 0x1400ec7f6
cmp r14d, 3
jl 0x1400ec7a2
mov edi, 0x38
mov eax, 0x44
cmove edi, eax
xor ecx, ecx
mov ebx, ecx
lea edx, [rbx + rdi]
mov r9d, 0x50
lea r8, [rbp]
mov ecx, 0x409
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
test eax, eax
je 0x1400eca45
mov r8d, 1
lea rdx, [rbp]
lea rcx, [rsp + 0x40]
call fcn.140202b80
test al, al
jne 0x1400ec796
inc ebx
cmp ebx, 0xc
jge 0x1400eca45
jmp 0x1400ec751
lea edi, [rbx + 1]
mov dword [rsp + 0x38], edi
jmp 0x1400ec9ae
cmp dword [rsp + 0x4c], 0
je 0x1400eca45
mov rbx, qword [rsp + 0x40]
mov r8d, 0xa
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.1402c04e8
mov edi, eax
mov dword [rsp + 0x38], eax
mov rdx, qword [rbp - 0x38]
sub rdx, rbx
sar rdx, 1
movsxd rcx, dword [rsp + 0x4c]
cmp rdx, rcx
jne 0x1400eca45
lea ecx, [rax + 0x7fffffff]
cmp ecx, 0xfffffffd
ja 0x1400eca45
jmp 0x1400ec9ae
cmp di, 0x64
jne 0x1400ec85f
cmp r14d, 3
jg 0x1400eca45
cmp dword [rsp + 0x4c], 0
je 0x1400eca45
mov rbx, qword [rsp + 0x40]
mov r8d, 0xa
lea rdx, [rbp - 0x28]
mov rcx, rbx
call fcn.1402c04e8
mov r14d, eax
mov dword [rsp + 0x30], eax
mov rdx, qword [rbp - 0x28]
sub rdx, rbx
sar rdx, 1
movsxd rcx, dword [rsp + 0x4c]
cmp rdx, rcx
jne 0x1400eca45
lea ecx, [rax + 0x7fffffff]
cmp ecx, 0xfffffffd
ja 0x1400eca45
mov edi, dword [rsp + 0x38]
jmp 0x1400ec9b3
cmp di, 0x68
jne 0x1400ec8c2
cmp dword [rsp + 0x4c], 0
je 0x1400eca45
mov rbx, qword [rsp + 0x40]
mov r8d, 0xa
lea rdx, [rbp - 0x68]
mov rcx, rbx
call fcn.1402c04e8
mov esi, eax
mov dword [rsp + 0x34], eax
mov rdx, qword [rbp - 0x68]
sub rdx, rbx
sar rdx, 1
movsxd rcx, dword [rsp + 0x4c]
cmp rdx, rcx
jne 0x1400eca45
lea ecx, [rax + 0x7fffffff]
cmp ecx, 0xfffffffd
ja 0x1400eca45
mov edi, dword [rsp + 0x38]
mov r14d, dword [rsp + 0x30]
jmp 0x1400ec9b7
cmp di, 0x48
jne 0x1400ec925
cmp dword [rsp + 0x4c], 0
je 0x1400eca45
mov rbx, qword [rsp + 0x40]
mov r8d, 0xa
lea rdx, [rbp - 0x48]
mov rcx, rbx
call fcn.1402c04e8
mov esi, eax
mov dword [rsp + 0x34], eax
mov rcx, qword [rbp - 0x48]
sub rcx, rbx
sar rcx, 1
movsxd rax, dword [rsp + 0x4c]
cmp rcx, rax
jne 0x1400eca45
lea eax, [rsi + 0x7fffffff]
cmp eax, 0xfffffffd
ja 0x1400eca45
mov edi, dword [rsp + 0x38]
mov r14d, dword [rsp + 0x30]
jmp 0x1400ec9b7
cmp di, 0x6d
jne 0x1400ec957
cmp dword [rsp + 0x4c], 0
je 0x1400eca45
mov rbx, qword [rsp + 0x40]
mov r8d, 0xa
lea rdx, [rbp - 0x50]
mov rcx, rbx
call fcn.1402c04e8
mov dword [rsp + 0x68], eax
mov rdx, qword [rbp - 0x50]
jmp 0x1400ec987
cmp di, 0x73
jne 0x1400ec9aa
cmp dword [rsp + 0x4c], 0
je 0x1400eca45
mov rbx, qword [rsp + 0x40]
mov r8d, 0xa
lea rdx, [rbp - 0x30]
mov rcx, rbx
call fcn.1402c04e8
mov dword [rsp + 0x60], eax
mov rdx, qword [rbp - 0x30]
sub rdx, rbx
movsxd rcx, dword [rsp + 0x4c]
sar rdx, 1
cmp rdx, rcx
jne 0x1400eca45
lea ecx, [rax + 0x7fffffff]
cmp ecx, 0xfffffffd
ja 0x1400eca45
mov edi, dword [rsp + 0x38]
mov r14d, dword [rsp + 0x30]
mov esi, dword [rsp + 0x34]
cmp dword [rsp + 0x48], 0
jle 0x1400ec9c8
mov rcx, qword [rsp + 0x40]
call fcn.1402bd0e0
cmp r15d, dword [rsp + 0x5c]
jge 0x1400ecac6
mov rbx, qword [rbp - 0x70]
xor edx, edx
jmp 0x1400ec570
lea rcx, [rsp + 0x70]
call fcn.140200570
nop
lea rax, vtable.Core::IndexOutOfRangeException.0
mov qword [rsp + 0x70], rax
mov edx, 0x2a
lea rcx, [rsp + 0x78]
call fcn.1402028a0
mov eax, dword [rbp - 0x80]
inc eax
movsxd rdx, eax
mov r9d, 0x2a
lea r8, str.Index_was_outside_the_bounds_of_the_array.
mov rcx, qword [rsp + 0x78]
call fcn.1402c06dc
mov edx, 0x2a
lea rcx, [rsp + 0x78]
call fcn.140203bb0
nop
lea rdx, [0x140415de0]
lea rcx, [rsp + 0x70]
call fcn.1402c4a18
nop
cmp dword [rsp + 0x48], 0
jle 0x1400ecb08
mov rcx, qword [rsp + 0x40]
call fcn.1402bd0e0
jmp 0x1400ecb08
lea rcx, [rsp + 0x70]
call fcn.140200570
nop
lea rax, vtable.Core::IndexOutOfRangeException.0
mov qword [rsp + 0x70], rax
mov edx, 0x2a
lea rcx, [rsp + 0x78]
call fcn.1402028a0
mov eax, dword [rbp - 0x80]
inc eax
movsxd rdx, eax
mov r9d, 0x2a
lea r8, str.Index_was_outside_the_bounds_of_the_array.
mov rcx, qword [rsp + 0x78]
call fcn.1402c06dc
mov edx, 0x2a
lea rcx, [rsp + 0x78]
call fcn.140203bb0
nop
lea rdx, [0x140415de0]
lea rcx, [rsp + 0x70]
call fcn.1402c4a18
int3
mov eax, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x60]
mov r12, qword [rbp - 0x60]
xor edx, edx
mov qword [rbp - 0x18], rdx
mov qword [rbp - 0x10], rdx
mov word [rbp - 0x18], r13w
mov word [rbp - 0x16], di
mov word [rbp - 0x12], r14w
mov word [rbp - 0x10], si
mov word [rbp - 0xe], ax
mov word [rbp - 0xc], cx
lea rdx, [rbp - 0x58]
lea rcx, [rbp - 0x18]
call qword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
test eax, eax
jne 0x1400ecb0c
xor bl, bl
jmp 0x1400ecb1f
mov rax, qword [rbp - 0x58]
mov qword [r12 + 8], rax
mov eax, dword [rbp - 0x78]
mov dword [r12 + 0x10], eax
mov bl, 1
cmp dword [rsp + 0x58], 0
jle 0x1400ecb30
mov rcx, qword [rsp + 0x50]
call fcn.1402bd0e0
movzx eax, bl
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.1402bcad0
mov rbx, qword [rsp + 0x1f0]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret