Function at 0x467b00
Capabilities:
Get geographical location
Print debug messages
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x699080
push 0x677060
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
add esp, 0xfffff4ac
mov eax, dword [0x6f2220]
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
mov dword [ebp - 0x18], esp
push 0
push 0x80000080
push 2
push 0
push 1
push 0x40000000
push 0x70d700
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x130], eax
cmp dword [ebp - 0x130], 0xffffffff
jne 0x467b6d
push 0x699060
call dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
jmp 0x4681d1
push 2
push 0
push 0
mov eax, dword [ebp - 0x130]
push eax
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
push 0x697ccc
push 0
push 0x699058
push 0x699048
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x12c], eax
cmp dword [ebp - 0x12c], 0
jne 0x467bb4
call dword [sym.imp.KERNEL32.dll_GetACP]
mov dword [ebp - 0x194], eax
jmp 0x467bfd
cmp dword [ebp - 0x12c], 1
jne 0x467bc9
mov dword [ebp - 0x194], 0x3b5
jmp 0x467bfd
cmp dword [ebp - 0x12c], 2
jne 0x467bde
mov dword [ebp - 0x194], 0x4e4
jmp 0x467bfd
cmp dword [ebp - 0x12c], 3
jne 0x467bf3
mov dword [ebp - 0x194], 0x3a8
jmp 0x467bfd
mov dword [ebp - 0x194], 0x3b5
push 0x6e55c0
mov ecx, dword [ebp - 0x130]
push ecx
call fcn.004681f0
add esp, 8
push 0x6e56c8
mov edx, dword [ebp - 0x130]
push edx
call fcn.004681f0
add esp, 8
push 0x6e57d0
mov eax, dword [ebp - 0x130]
push eax
call fcn.004681f0
add esp, 8
mov ecx, dword [ebp - 0x194]
push ecx
push 0x69903c
mov edx, dword [ebp - 0x130]
push edx
call fcn.004681f0
add esp, 0xc
push 0x6945d0
mov eax, dword [ebp - 0x130]
push eax
call fcn.004681f0
add esp, 8
mov word [ebp - 0x1a4], 0
xor ecx, ecx
mov dword [ebp - 0x1a2], ecx
mov dword [ebp - 0x19e], ecx
mov dword [ebp - 0x19a], ecx
mov word [ebp - 0x196], cx
lea edx, [ebp - 0x1a4]
push edx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
cmp dword [0x6e1c68], 0
je 0x467cae
mov dword [ebp - 0xb64], 0x69902c
jmp 0x467cb8
mov dword [ebp - 0xb64], 0x692978
mov eax, dword [ebp - 0xb64]
push eax
movzx ecx, word [ebp - 0x198]
push ecx
movzx edx, word [ebp - 0x19a]
push edx
movzx eax, word [ebp - 0x19c]
push eax
movzx ecx, word [ebp - 0x19e]
push ecx
movzx edx, word [ebp - 0x1a2]
push edx
movzx eax, word [ebp - 0x1a4]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push 0x698fe8
mov ecx, dword [ebp - 0x130]
push ecx
call fcn.004681f0
add esp, 0x28
mov dword [ebp - 0x47c], 0x698fdc
cmp dword [ebp + 8], 0
jne 0x467d73
lea edx, [ebp - 0x768]
push edx
call fcn.00467810
add esp, 4
mov ecx, 0x14
xor eax, eax
lea edi, [ebp - 0x190]
rep stosd dword es:[edi], eax
xor eax, eax
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], eax
mov ecx, dword [ebp - 0x6b0]
mov dword [ebp - 0x184], ecx
lea edx, [ebp - 0x768]
mov dword [ebp - 0x138], edx
lea eax, [ebp - 0x190]
mov dword [ebp - 0x13c], eax
lea ecx, [ebp - 0x13c]
mov dword [ebp + 8], ecx
mov edx, dword [ebp + 8]
mov esi, dword [edx + 4]
mov ecx, 0xb3
lea edi, [ebp - 0x478]
rep movsd dword es:[edi], dword [esi]
push 0x1c
lea eax, [ebp - 0x498]
push eax
mov ecx, dword [ebp - 0x3c0]
push ecx
call dword [sym.imp.KERNEL32.dll_VirtualQuery]
test eax, eax
je 0x467dd2
push 0x104
lea edx, [ebp - 0x128]
push edx
mov eax, dword [ebp - 0x494]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
jbe 0x467dd2
lea ecx, [ebp - 0x128]
push ecx
call fcn.00467a70
add esp, 4
mov dword [ebp - 0x47c], eax
push 0x70d81c
call fcn.006774df
add esp, 4
mov dword [ebp - 0x1a8], eax
mov edx, dword [ebp - 0x1a8]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp - 0x1a8]
mov edx, dword [ecx + 4]
push edx
mov eax, dword [ebp - 0x1a8]
mov ecx, dword [eax + 8]
push ecx
mov edx, dword [ebp - 0x1a8]
mov eax, dword [edx + 0xc]
push eax
mov ecx, dword [ebp - 0x1a8]
mov edx, dword [ecx + 0x10]
add edx, 1
push edx
mov eax, dword [ebp - 0x1a8]
mov eax, dword [eax + 0x14]
cdq
mov ecx, 0x64
idiv ecx
push edx
push 0x698fb0
mov edx, dword [ebp - 0x130]
push edx
call fcn.004681f0
add esp, 0x20
mov eax, dword [ebp - 0x130]
push eax
call fcn.00468620
add esp, 4
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov dword [ebp - 0x134], edx
mov eax, dword [ebp - 0x3c0]
push eax
mov ecx, dword [ebp - 0x3bc]
push ecx
mov edx, dword [ebp - 0x47c]
push edx
mov eax, dword [ebp - 0x134]
mov ecx, dword [eax]
push ecx
call fcn.00468720
add esp, 4
push eax
push 0x698f90
mov edx, dword [ebp - 0x130]
push edx
call fcn.004681f0
add esp, 0x18
mov eax, dword [ebp - 0x3c0]
push eax
mov ecx, dword [ebp - 0x3bc]
push ecx
push 0x698f78
push 0x104
push 0x6e58d8
call fcn.00675a05
add esp, 0x14
mov edx, dword [ebp - 0x134]
cmp dword [edx], 0xc0000005
jne 0x467f34
mov eax, dword [ebp - 0x134]
cmp dword [eax + 0x10], 2
jb 0x467f34
mov dword [ebp - 0x76c], 0x698f6c
mov ecx, dword [ebp - 0x134]
cmp dword [ecx + 0x14], 0
je 0x467ef3
mov dword [ebp - 0x76c], 0x698f60
mov edx, dword [ebp - 0x134]
mov eax, dword [edx + 0x18]
push eax
mov ecx, dword [ebp - 0x76c]
push ecx
push 0x698f30
lea edx, [ebp - 0xb58]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0xb58]
push eax
push 0x6928bc
mov ecx, dword [ebp - 0x130]
push ecx
call fcn.004681f0
add esp, 0xc
push 0x6945d0
mov edx, dword [ebp - 0x130]
push edx
call fcn.004681f0
add esp, 8
push 0x698f20
mov eax, dword [ebp - 0x130]
push eax
call fcn.004681f0
add esp, 8
mov ecx, dword [ebp - 0x3b8]
push ecx
mov edx, dword [ebp - 0x3c0]
push edx
mov eax, dword [ebp - 0x3bc]
push eax
mov ecx, dword [ebp - 0x3c8]
push ecx
push 0x698ef8
mov edx, dword [ebp - 0x130]
push edx
call fcn.004681f0
add esp, 0x18
mov eax, dword [ebp - 0x3c4]
push eax
mov ecx, dword [ebp - 0x3b4]
push ecx
mov edx, dword [ebp - 0x3b0]
push edx
mov eax, dword [ebp - 0x3d4]
push eax
push 0x698ed0
mov ecx, dword [ebp - 0x130]
push ecx
call fcn.004681f0
add esp, 0x18
mov edx, dword [ebp - 0x3e8]
push edx
mov eax, dword [ebp - 0x3d8]
push eax
mov ecx, dword [ebp - 0x3e0]
push ecx
mov edx, dword [ebp - 0x3cc]
push edx
push 0x698eac
mov eax, dword [ebp - 0x130]
push eax
call fcn.004681f0
add esp, 0x18
mov ecx, dword [ebp - 0x3ec]
push ecx
mov edx, dword [ebp - 0x3dc]
push edx
mov eax, dword [ebp - 0x3e4]
push eax
mov ecx, dword [ebp - 0x3d0]
push ecx
push 0x698e88
mov edx, dword [ebp - 0x130]
push edx
call fcn.004681f0
add esp, 0x18
push 0x698e70
mov eax, dword [ebp - 0x130]
push eax
call fcn.004681f0
add esp, 8
mov ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x140], ecx
mov dword [ebp - 0xb5c], 0
jmp 0x468057
mov edx, dword [ebp - 0xb5c]
add edx, 1
mov dword [ebp - 0xb5c], edx
cmp dword [ebp - 0xb5c], 0x10
jge 0x4680ba
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x140]
add eax, dword [ebp - 0xb5c]
movzx ecx, byte [eax]
push ecx
push 0x698e68
mov edx, dword [ebp - 0x130]
push edx
call fcn.004681f0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
jmp 0x4680b8
jmp 0x468048
push 0x698e50
mov ecx, dword [ebp - 0x130]
push ecx
call fcn.004681f0
add esp, 8
mov edx, dword [ebp - 0x3b4]
and edx, 0xffffffe0
mov dword [0x70d5ec], edx
mov eax, dword fs:[4]
mov dword [0x70d5e8], eax
mov eax, dword [0x70d5e8]
and eax, 0xffffffe0
mov dword [0x70d5e8], eax
mov ecx, dword [0x70d5ec]
add ecx, 0xa0
push ecx
mov edx, dword [0x70d5ec]
push edx
mov eax, dword [ebp - 0x130]
push eax
call fcn.00468900
add esp, 0xc
push 0x6945d0
mov ecx, dword [ebp - 0x130]
push ecx
call fcn.004681f0
add esp, 8
push 1
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.dbghelp.dll_SymInitialize]
test eax, eax
je 0x468193
call dword [sym.imp.dbghelp.dll_SymGetOptions]
mov dword [ebp - 0xb60], eax
mov edx, dword [ebp - 0xb60]
and edx, 0x16
cmp edx, 0x14
je 0x46816e
mov eax, dword [ebp - 0xb60]
and eax, 0xfffffffd
or eax, 0x14
push eax
call dword [sym.imp.dbghelp.dll_SymSetOptions]
lea ecx, [ebp - 0x478]
push ecx
mov edx, dword [ebp - 0x130]
push edx
call fcn.00468a80
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.dbghelp.dll_SymCleanup]
jmp 0x4681a9
lea eax, [ebp - 0x478]
push eax
mov ecx, dword [ebp - 0x130]
push ecx
call fcn.00468d50
add esp, 8
mov edx, dword [ebp - 0x130]
push edx
call fcn.00468310
add esp, 4
mov eax, dword [ebp - 0x130]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp + 8]
push ecx
call fcn.00468260
add esp, 4
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x1c]
call fcn.00674e87
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret