Function at 0x1400ed730
Capabilities:
Check if file exists
Get geographical location
Read .ini file

Disassembly:
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0xcb0
mov qword [rsp + 0xbe0], 0xfffffffffffffffe
mov rax, qword [0x1402a25c0]
xor rax, rsp
mov qword [rsp + 0xca8], rax
mov dword [rsp + 0xbd8], 0
xor eax, eax
mov word [rsp + 0x250], ax
lea rdi, [rsp + 0x252]
xor eax, eax
mov ecx, 0x7fe
rep stosb byte [rdi], al
lea rcx, [rsp + 0xb30]
call fcn.1400ec5d0
mov qword [rsp + 0xbe8], rax
mov rax, qword [rsp + 0xbe8]
mov qword [rsp + 0xbf0], rax
lea r8, [0x140216f70]
mov rdx, qword [rsp + 0xbf0]
lea rcx, [rsp + 0xb38]
call fcn.1400010b0
mov qword [rsp + 0xbf8], rax
mov rcx, qword [rsp + 0xbf8]
call fcn.1400012c0
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x400
lea r9, [rsp + 0x250]
lea r8, [0x140216d94]
lea rdx, [0x140216f90]
lea rcx, [0x140216fa8]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea rcx, [rsp + 0xb38]
call fcn.140001470
nop
lea rcx, [rsp + 0xb30]
call fcn.140001470
movzx eax, word [rsp + 0x250]
test eax, eax
je 0x1400ed861
lea rdx, [rsp + 0x250]
mov rcx, qword [rsp + 0xcc0]
call fcn.140002090
mov eax, dword [rsp + 0xbd8]
or eax, 1
mov dword [rsp + 0xbd8], eax
mov rax, qword [rsp + 0xcc0]
jmp 0x1400ede29
lea rcx, [rsp + 0xb48]
call fcn.1400ec5d0
mov qword [rsp + 0xc00], rax
mov rax, qword [rsp + 0xc00]
mov qword [rsp + 0xc08], rax
lea r8, [0x140216fc0]
mov rdx, qword [rsp + 0xc08]
lea rcx, [rsp + 0xb50]
call fcn.1400010b0
mov qword [rsp + 0xc10], rax
mov rcx, qword [rsp + 0xc10]
call fcn.1400012c0
mov rcx, rax
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400ed8d1
mov dword [rsp + 0xc18], 1
jmp 0x1400ed8dc
mov dword [rsp + 0xc18], 0
movzx eax, byte [rsp + 0xc18]
mov byte [rsp + 0xb40], al
lea rcx, [rsp + 0xb50]
call fcn.140001470
nop
lea rcx, [rsp + 0xb48]
call fcn.140001470
movzx edx, byte [rsp + 0xb40]
test edx, edx
je 0x1400ed9d7
lea rcx, [rsp + 0xb58]
call fcn.1400ec5d0
mov qword [rsp + 0xc20], rax
mov rax, qword [rsp + 0xc20]
mov qword [rsp + 0xc28], rax
lea r8, [0x140216fe0]
mov rdx, qword [rsp + 0xc28]
lea rcx, [rsp + 0xb60]
call fcn.1400010b0
mov qword [rsp + 0xc30], rax
mov rcx, qword [rsp + 0xc30]
call fcn.1400012c0
mov r9, rax
lea r8, [0x140217000]
lea rdx, [0x140217008]
lea rcx, [0x140217020]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea rcx, [rsp + 0xb60]
call fcn.140001470
nop
lea rcx, [rsp + 0xb58]
call fcn.140001470
lea rdx, [0x140217038]
mov rcx, qword [rsp + 0xcc0]
call fcn.140002090
mov eax, dword [rsp + 0xbd8]
or eax, 1
mov dword [rsp + 0xbd8], eax
mov rax, qword [rsp + 0xcc0]
jmp 0x1400ede29
lea rcx, [rsp + 0xa50]
call fcn.1400e7ca0
nop
lea rcx, [rsp + 0xb70]
call fcn.1400ec5d0
mov qword [rsp + 0xc38], rax
mov rax, qword [rsp + 0xc38]
mov qword [rsp + 0xc40], rax
lea r8, [0x140217040]
mov rdx, qword [rsp + 0xc40]
lea rcx, [rsp + 0xb78]
call fcn.1400010b0
mov qword [rsp + 0xc48], rax
mov rax, qword [rsp + 0xc48]
mov qword [rsp + 0xc50], rax
mov rcx, qword [rsp + 0xc50]
call fcn.1400012c0
mov dword [rsp + 0x20], 0
mov r9d, reloc.WS2_32.dll_WSACleanup
mov r8, rax
lea rdx, [rsp + 0xb80]
lea rcx, [rsp + 0xa50]
call fcn.1400eb070
mov rcx, rax
call fcn.1400e4da0
movzx eax, al
test eax, eax
jne 0x1400eda8d
mov dword [rsp + 0xc58], 1
jmp 0x1400eda98
mov dword [rsp + 0xc58], 0
movzx eax, byte [rsp + 0xc58]
mov byte [rsp + 0xb68], al
lea rcx, [rsp + 0xb78]
call fcn.140001470
nop
lea rcx, [rsp + 0xb70]
call fcn.140001470
movzx edx, byte [rsp + 0xb68]
test edx, edx
je 0x1400edba0
lea rcx, [rsp + 0xb98]
call fcn.1400ec5d0
mov qword [rsp + 0xc60], rax
mov rax, qword [rsp + 0xc60]
mov qword [rsp + 0xc68], rax
lea r8, [0x140217060]
mov rdx, qword [rsp + 0xc68]
lea rcx, [rsp + 0xba0]
call fcn.1400010b0
mov qword [rsp + 0xc70], rax
mov rcx, qword [rsp + 0xc70]
call fcn.1400012c0
mov r9, rax
lea r8, [0x140217080]
lea rdx, [0x140217088]
lea rcx, [0x1402170a0]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea rcx, [rsp + 0xba0]
call fcn.140001470
nop
lea rcx, [rsp + 0xb98]
call fcn.140001470
lea rdx, [0x1402170b8]
mov rcx, qword [rsp + 0xcc0]
call fcn.140002090
mov eax, dword [rsp + 0xbd8]
or eax, 1
mov dword [rsp + 0xbd8], eax
lea rcx, [rsp + 0xa50]
call fcn.1400e6570
mov rax, qword [rsp + 0xcc0]
jmp 0x1400ede29
xor eax, eax
mov word [rsp + 0x40], ax
lea rdi, [rsp + 0x42]
xor eax, eax
mov ecx, 0x1fe
rep stosb byte [rdi], al
mov r9d, 4
lea r8, [rsp + 0x40]
mov edx, 3
mov ecx, 0xc00
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
mov dword [rsp + 0x240], eax
cmp dword [rsp + 0x240], 0
jne 0x1400edc03
mov r9d, 4
lea r8, [rsp + 0x40]
mov edx, 3
mov ecx, 0x800
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
mov dword [rsp + 0x240], eax
lea rcx, [rsp + 0x248]
call fcn.140002d50
nop
lea r8, [rsp + 0x40]
lea rdx, [0x1402170c0]
lea rcx, [rsp + 0x248]
call fcn.140002be0
lea rcx, [rsp + 0x248]
call fcn.1400012c0
xor r9d, r9d
mov r8, rax
lea rdx, [rsp + 0xb20]
lea rcx, [rsp + 0xa50]
call fcn.1400eb900
lea rcx, [rsp + 0xba8]
call fcn.1400e5ea0
mov rdx, rax
lea rcx, [rsp + 0xb20]
call fcn.1400e5df0
movzx eax, al
test eax, eax
je 0x1400edd56
lea rcx, [rsp + 0xbb8]
call fcn.1400ec5d0
mov qword [rsp + 0xc78], rax
mov rax, qword [rsp + 0xc78]
mov qword [rsp + 0xc80], rax
lea r8, [0x1402170f0]
mov rdx, qword [rsp + 0xc80]
lea rcx, [rsp + 0xbc0]
call fcn.1400010b0
mov qword [rsp + 0xc88], rax
mov rcx, qword [rsp + 0xc88]
call fcn.1400012c0
mov r9, rax
lea r8, [0x140217110]
lea rdx, [0x140217118]
lea rcx, [0x140217130]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea rcx, [rsp + 0xbc0]
call fcn.140001470
nop
lea rcx, [rsp + 0xbb8]
call fcn.140001470
lea rdx, [0x140217148]
mov rcx, qword [rsp + 0xcc0]
call fcn.140002090
mov eax, dword [rsp + 0xbd8]
or eax, 1
mov dword [rsp + 0xbd8], eax
lea rcx, [rsp + 0x248]
call fcn.140001470
nop
lea rcx, [rsp + 0xa50]
call fcn.1400e6570
mov rax, qword [rsp + 0xcc0]
jmp 0x1400ede29
lea rcx, [rsp + 0xbc8]
call fcn.1400ec5d0
mov qword [rsp + 0xc90], rax
mov rax, qword [rsp + 0xc90]
mov qword [rsp + 0xc98], rax
lea r8, [0x140217150]
mov rdx, qword [rsp + 0xc98]
lea rcx, [rsp + 0xbd0]
call fcn.1400010b0
mov qword [rsp + 0xca0], rax
mov rcx, qword [rsp + 0xca0]
call fcn.1400012c0
mov r9, rax
lea r8, [rsp + 0x40]
lea rdx, [0x140217170]
lea rcx, [0x140217188]
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
lea rcx, [rsp + 0xbd0]
call fcn.140001470
nop
lea rcx, [rsp + 0xbc8]
call fcn.140001470
lea rdx, [rsp + 0x40]
mov rcx, qword [rsp + 0xcc0]
call fcn.140002090
mov eax, dword [rsp + 0xbd8]
or eax, 1
mov dword [rsp + 0xbd8], eax
lea rcx, [rsp + 0x248]
call fcn.140001470
nop
lea rcx, [rsp + 0xa50]
call fcn.1400e6570
mov rax, qword [rsp + 0xcc0]
mov rcx, qword [rsp + 0xca8]
xor rcx, rsp
call fcn.1400a8040
add rsp, 0xcb0
pop rdi
ret