Function at 0x40ba1b
Capabilities:
Get geographical location
Manipulate console buffer

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1c50
call fcn.0040a0d0
mov eax, dword [0x45a004]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
xor esi, esi
xor eax, eax
cmp eax, 0x180
jne 0x40ba50
mov ecx, dword [0x45f004]
add ecx, 0xa231
mov dword [0x23778f4], ecx
cmp dword [0x23778f4], 0x141
jne 0x40ba6d
or dword [0x460224], 0xffffffff
mov dword [0x460220], 0xec58acac
inc eax
cmp eax, 0x12376ec
jl 0x40ba37
push edi
xor edi, edi
cmp edi, 0x562d05
jne 0x40ba8a
mov eax, dword [0x45aff8]
mov dword [0x23778f8], eax
cmp dword [0x23778f4], 0x3c
jne 0x40baa0
push str.vudutofayiyodoto_gevewew_weramesejukulugepifodagehif_pabivepevimucagigocudusizocuvu
push esi
push esi
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
inc edi
cmp edi, 0x5f6c74
jl 0x40ba78
cmp dword [0x23778f4], 0x7c
push ebx
mov ebx, 0x460198
jne 0x40bb9d
push esi
lea eax, [ebp - 0x1404]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
lea eax, [ebp - 0x1c18]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
push esi
lea eax, [ebp - 0x1c14]
push eax
push esi
lea eax, [ebp - 0x404]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WriteConsoleA]
push esi
push esi
call dword [sym.imp.USER32.dll_LoadIconW]
push esi
push esi
lea eax, [ebp - 0x1c04]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push str.lojibarudiko
call dword [sym.imp.KERNEL32.dll_FindAtomA]
call dword [sym.imp.KERNEL32.dll_SetFileApisToANSI]
xor eax, eax
mov word [ebp - 0x1c0c], ax
lea edi, [ebp - 0x1c0a]
stosw word es:[edi], ax
mov word [ebp - 0x1c08], ax
lea edi, [ebp - 0x1c06]
stosw word es:[edi], ax
lea eax, [ebp - 0x1c20]
push eax
push dword [ebp - 0x1c08]
lea eax, [ebp - 0x1c10]
push dword [ebp - 0x1c0c]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WriteConsoleOutputA]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_SetVolumeMountPointW]
push esi
lea eax, [ebp - 0xc04]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push esi
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_EnumCalendarInfoExW]
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
push str.vojivohopupunimikumakafaco_baxihorehimobisiyesawiregusi__s__d__f
push esi
call fcn.00401314
push 0x458951
push ebx
call fcn.00401456
push esi
call fcn.00401347
add esp, 0x14
cmp dword [0x23778f4], 0x110a
jne 0x40bcbb
push esi
mov dword [0x23777c0], esi
mov dword [0x23777c4], esi
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasesLengthW]
push esi
lea eax, [ebp - 0xc04]
push eax
lea eax, [ebp - 0x1c10]
push eax
lea eax, [ebp - 0x1c14]
push eax
lea eax, [ebp - 0x1c18]
push eax
lea eax, [ebp - 0x1c0c]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetNamedPipeHandleStateW]
lea eax, [ebp - 0x1c08]
push eax
push esi
push str.gaguvewerocogutonun
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetStringTypeExA]
push esi
push esi
lea eax, [ebp - 0x404]
push eax
call dword [sym.imp.KERNEL32.dll_SetDefaultCommConfigA]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_LocalFileTimeToFileTime]
xor eax, eax
mov word [ebp - 0x1c28], ax
lea edi, [ebp - 0x1c26]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push esi
stosw word es:[edi], ax
lea eax, [ebp - 0x1c04]
push eax
push str.dayaho
lea eax, [ebp - 0x1c28]
push eax
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetTimeFormatW]
push esi
push str.wibuzupudalebizamod
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push esi
push esi
lea eax, [ebp - 0x1404]
push eax
push esi
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_FormatMessageW]
push esi
call dword [sym.imp.KERNEL32.dll_SetCommBreak]
push 0x4589a0
push str.modofeyotoros__f
push ebx
call fcn.0040108d
push esi
push esi
call fcn.00401135
push esi
push esi
call fcn.00401135
push esi
push esi
call fcn.0040151b
push esi
push esi
call fcn.00401135
push esi
call fcn.004010a7
push esi
call fcn.00401352
push esi
call fcn.004011c4
push 0x4589b8
push ebx
call fcn.00401314
add esp, 0x40
push dword [0x23778f4]
push esi
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
xor ecx, ecx
mov dword [0x2377614], eax
pop ebx
cmp dword [0x23778f4], esi
jbe 0x40bd1b
mov eax, dword [0x23778f8]
mov dword [ebp - 0x1c08], eax
mov eax, 0xa231
add dword [ebp - 0x1c08], eax
mov eax, dword [ebp - 0x1c08]
mov al, byte [eax + ecx]
mov edx, dword [0x2377614]
mov byte [edx + ecx], al
mov eax, dword [0x23778f4]
cmp eax, 0x5ab
jne 0x40bd16
mov dword [0x2377618], 0x19b0
inc ecx
cmp ecx, eax
jb 0x40bcd8
push 0x4589bc
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
call fcn.0040b78d
call fcn.0040b76f
call fcn.0040b9d1
xor eax, eax
cmp eax, 0xd606b
jne 0x40bd43
call fcn.0040b764
inc eax
cmp eax, 0x24e87d
jl 0x40bd37
mov edi, 0x1e4165
cmp dword [0x23778f4], 0xcc1
jne 0x40bd6a
push str.hubotumahowukocomidih
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_SetCalendarInfoW]
cmp dword [0x23778f4], 0x7c4
mov dword [0x237761c], 0x8e46a6f0
jne 0x40bd87
push esi
call dword [sym.imp.KERNEL32.dll_UnregisterWait]
dec edi
jne 0x40bd50
pop edi
cmp esi, 0x408e
jle 0x40bd9f
cmp dword [ebp - 0x1c48], 0xf5bed7
jne 0x40bda8
inc esi
cmp esi, 0x687ed2
jl 0x40bd8b
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.00401000
leave
ret