Function at 0x41044b
Capabilities:
Get geographical location

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x1a4
mov eax, dword [0x4261d4]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov esi, ecx
mov dword [ebp - 0x16c], ebx
mov dword [ebp - 0x164], 1
mov edi, edx
mov dword [ebp - 0x168], edi
test esi, esi
jne 0x412904
lea eax, [ebp - 0x158]
push eax
call dword [sym.imp.api_ms_win_core_sysinfo_l1_2_1.dll_GetSystemTime]
lea eax, [ebp - 0x178]
push eax
lea eax, [ebp - 0x158]
push eax
call dword [sym.imp.api_ms_win_core_timezone_l1_1_0.dll_SystemTimeToFileTime]
lea eax, [ebp - 0x180]
push eax
lea eax, [ebp - 0x178]
push eax
call dword [sym.imp.api_ms_win_core_file_l1_2_1.dll_FileTimeToLocalFileTime]
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x180]
push eax
call dword [sym.imp.api_ms_win_core_timezone_l1_1_0.dll_FileTimeToSystemTime]
xor eax, eax
mov dword [ebp - 0x160], eax
cmp byte [0x426004], al
je 0x417e99
mov dword [ebp - 0x15c], eax
mov esi, 0x80
push esi
lea eax, [ebp - 0x148]
push eax
push 0x1f
call fcn.00409976
push eax
call dword [sym.imp.api_ms_win_core_localization_l1_2_1.dll_GetLocaleInfoW]
test eax, eax
je 0x417df6
cmp word [ebp - 0x148], 0
lea esi, [ebp - 0x148]
push 2
pop edi
je 0x410561
mov ebx, dword [ebp - 0x15c]
push 0x64
pop ecx
mov dword [ebp - 0x170], ecx
movzx eax, word [esi]
cmp eax, 0x27
je 0x417e0e
test ebx, ebx
jne 0x410552
cmp ax, cx
je 0x410637
cmp eax, 0x4d
je 0x410637
add esi, edi
xor eax, eax
cmp word [esi], ax
jne 0x410530
mov ebx, dword [ebp - 0x16c]
push dword [0x42605c]
lea eax, [ebp - 0x148]
push dword [0x426058]
push eax
lea eax, [ebp - 0x158]
push eax
xor eax, eax
push eax
call fcn.00409976
push eax
call dword [sym.imp.api_ms_win_core_datetime_l1_1_1.dll_GetDateFormatW]
test eax, eax
je 0x4106c9
mov esi, dword [0x426058]
test esi, esi
je 0x4106c9
movzx ecx, word [ebp - 0x154]
call fcn.0041068c
push eax
push 0x20
pop edx
lea ecx, [ebp - 0x48]
call fcn.00401da3
test ebx, ebx
je 0x417f69
cmp dword [ebp - 0x164], 0
je 0x41292b
cmp dword [ebp - 0x168], 1
jne 0x41292b
call fcn.00407be4
mov edx, dword [ebp + 0xc]
mov ecx, ebx
test al, al
jne 0x417fa7
lea eax, [ebp - 0x48]
push eax
call fcn.00401da3
mov edx, dword [ebp + 0xc]
mov ecx, ebx
push 0x40223c
call fcn.00402c8a
push esi
mov edx, dword [ebp + 0xc]
mov ecx, ebx
call fcn.00402c8a
lea ecx, [ebx + 2]
xor edx, edx
mov ax, word [ebx]
add ebx, edi
cmp ax, dx
jne 0x410614
sub ebx, ecx
sar ebx, 1
mov eax, ebx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00401200
mov esp, ebp
pop ebp
ret 8
xor ecx, ecx
add esi, edi
inc ecx
cmp word [esi], ax
je 0x410639
lea edx, [ecx + ecx]
sub esi, edx
cmp ecx, 1
jne 0x417e1c
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, edi
cmp ax, word [ebp - 0x160]
jne 0x410654
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esi + 2]
push esi
push eax
call dword [sym.imp.msvcrt.dll_memmove]
add esp, 0xc
add esi, 4
push 0x64
pop ecx
jmp 0x410554
xor ecx, ecx
lea eax, [ebp - 0x148]
push ecx
push ecx
push eax
lea eax, [ebp - 0x158]
push eax
push ecx
call fcn.00409976
push eax
call dword [sym.imp.api_ms_win_core_datetime_l1_1_1.dll_GetDateFormatW]
mov esi, eax
test esi, esi
je 0x4164d2
inc esi
lea eax, [esi + esi]
push eax
push dword [0x426058]
call dword [sym.imp.msvcrt.dll_realloc]
pop ecx
pop ecx
test eax, eax
je 0x417e86
push esi
push eax
mov dword [0x426058], eax
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x158]
mov dword [0x42605c], esi
push eax
xor esi, esi
push esi
call fcn.00409976
push eax
call dword [sym.imp.api_ms_win_core_datetime_l1_1_1.dll_GetDateFormatW]
test eax, eax
je 0x417e77
mov esi, dword [0x426058]
jmp 0x4105a0
push 9
pop ecx
lea edi, [ebp - 0x1a4]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x178]
lea ecx, [ebp - 0x1a4]
call fcn.004132f0
mov edi, dword [ebp - 0x168]
jmp 0x4104a9
mov edx, dword [ebp + 0xc]
mov ecx, ebx
push esi
call fcn.00401da3
jmp 0x41060f
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_1.dll_GetLastError]
xor ecx, ecx
push ecx
jmp 0x417e7e
push dword [0x426138]
mov edx, esi
lea ecx, [ebp - 0x148]
call fcn.00401da3
jmp 0x41050e
xor eax, eax
test ebx, ebx
sete al
mov ebx, eax
jmp 0x410552
cmp ax, word [ebp - 0x170]
jne 0x417e2d
xor eax, eax
mov dword [ebp - 0x164], eax
cmp ecx, 3
jle 0x417e70
add edx, esi
mov ecx, edx
lea eax, [ecx + 2]
mov dword [ebp - 0x15c], eax
mov ax, word [ecx]
add ecx, edi
cmp ax, word [ebp - 0x160]
jne 0x417e3f
sub ecx, dword [ebp - 0x15c]
add esi, 6
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
push edx
push esi
call dword [sym.imp.msvcrt.dll_memmove]
add esp, 0xc
jmp 0x41067f
add esi, edx
jmp 0x41067f
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_1.dll_GetLastError]
push esi
mov dword [0x4260a4], eax
push eax
jmp 0x417e8b
xor eax, eax
push eax
push 8
call fcn.0040bd02
pop ecx
pop ecx
xor eax, eax
jmp 0x410624
movzx edx, word [ebp - 0x152]
movzx eax, word [ebp - 0x158]
movzx esi, word [ebp - 0x156]
mov dword [ebp - 0x15c], edx
mov dword [ebp - 0x160], eax
test edi, edi
jne 0x417ed3
push 0x64
xor edx, edx
pop ecx
div ecx
mov eax, edx
mov edx, dword [ebp - 0x15c]
mov dword [ebp - 0x160], eax
mov ecx, dword [0x426134]
push 2
pop edi
cmp ecx, edi
jne 0x417ef2
mov dword [ebp - 0x160], edx
mov edx, esi
mov dword [ebp - 0x15c], edx
mov esi, eax
jmp 0x417f03
cmp ecx, 1
jne 0x417f03
mov eax, esi
mov esi, edx
mov edx, eax
mov dword [ebp - 0x15c], eax
mov ecx, dword [0x42605c]
cmp ecx, 0x20
jge 0x417f3e
push 0x40
push dword [0x426058]
call dword [sym.imp.msvcrt.dll_realloc]
pop ecx
pop ecx
test eax, eax
jne 0x417f28
push eax
jmp 0x417e89
mov edx, dword [ebp - 0x15c]
push 0x20
pop ecx
mov dword [0x426058], eax
mov dword [0x42605c], ecx
jmp 0x417f43
mov eax, dword [0x426058]
push dword [ebp - 0x160]
push 0x426530
push edx
push 0x426530
push esi
push 0x418040
push ecx
push eax
call fcn.004026f3
add esp, 0x20
jmp 0x41073f
cmp dword [ebp - 0x164], 0
jne 0x417f81
push esi
push 0x415278
call fcn.00406992
pop ecx
pop ecx
jmp 0x417fa0
call fcn.00407be4
test al, al
lea eax, [ebp - 0x48]
je 0x417f91
push eax
push esi
jmp 0x417f93
push esi
push eax
push 0x41c35c
call fcn.00406992
add esp, 0xc
mov ebx, eax
jmp 0x410622
push esi
call fcn.00401da3
mov edx, dword [ebp + 0xc]
mov ecx, ebx
push 0x40223c
call fcn.00402c8a
lea eax, [ebp - 0x48]
push eax
jmp 0x410605