Function at 0x101497b
Capabilities:
Get geographical location
Resolve function by parsing pe exports

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xf0
mov eax, dword [0x101e08c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0xd0], ebx
cmp esi, ebx
jne 0x10149ab
mov eax, 0x80004005
jmp 0x1014d32
test byte [esi], 1
push edi
je case.default.0x1014a02
mov ecx, dword [esi + 0x20]
mov eax, dword [esi + 8]
mov eax, dword [eax*4 + 0x101e178]
cmp dword [ecx + 0x9c], ebx
je 0x10149f9
cmp eax, ebx
je 0x10149f9
cmp eax, 0xf
je 0x10149f9
cmp eax, 0x11
je 0x10149f9
cmp eax, 5
je 0x10149f9
cmp eax, 2
je 0x10149f9
cmp eax, 3
je 0x10149f9
cmp eax, 4
je 0x10149f9
mov eax, dword [esi + 0x14]
xor ecx, ecx
mov word [eax], cx
jmp case.default.0x1014a02
cmp eax, 0x1e
ja case.default.0x1014a02
jmp dword [eax*4 + 0x1014d42]
push dword [ecx + 8]
push 0x100d5e8
push dword [esi + 0x18]
push dword [esi + 0x14]
call fcn.0100196b
add esp, 0x10
jmp 0x1014d25
mov ecx, dword [ecx + 0xc]
jmp 0x1014d15
push dword [ecx + 0x10]
jmp 0x1014a0c
movzx eax, byte [ecx + 0x15]
push eax
push 0x1014dcc
jmp 0x1014a11
push dword [ecx + 0x98]
jmp 0x1014d1a
xor eax, eax
mov word [ebp - 0xf0], ax
lea edi, [ebp - 0xee]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [ebp - 0xe0]
push eax
add ecx, 0x20
push ecx
call dword [sym.imp.ntdll.dll_RtlTimeToElapsedTimeFields]
mov ax, word [ebp - 0xda]
push dword [esi + 0x18]
mov word [ebp - 0xe8], ax
mov ax, word [ebp - 0xd8]
push dword [esi + 0x14]
mov word [ebp - 0xe6], ax
mov ax, word [ebp - 0xd6]
mov word [ebp - 0xe4], ax
mov ax, word [ebp - 0xd4]
push ebx
mov word [ebp - 0xe2], ax
lea eax, [ebp - 0xf0]
push eax
push 0xc
mov ebx, 0x400
push ebx
call dword [sym.imp.KERNEL32.dll_GetTimeFormatW]
xor eax, eax
cmp ax, word [ebp - 0xdc]
je case.default.0x1014a02
mov edi, 0x1020604
cmp ax, word [0x1020604]
jne 0x1014aea
push 4
push edi
push 0x1e
push ebx
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
push edi
push dword [esi + 0x14]
call dword [sym.imp.SHLWAPI.dll_StrStrW]
test eax, eax
je case.default.0x1014a02
movsx ecx, word [ebp - 0xda]
push eax
movsx eax, word [ebp - 0xdc]
imul eax, eax, 0x18
add eax, ecx
push eax
push 0x1014dc0
lea eax, [ebp - 0xcc]
push 0x64
push eax
call fcn.0100196b
add esp, 0x14
mov dword [ebp - 0xd0], eax
test eax, eax
jl case.default.0x1014a02
lea eax, [ebp - 0xcc]
push eax
push dword [esi + 0x18]
push dword [esi + 0x14]
jmp 0x1014d20
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x30]
call fcn.01003c39
jmp case.default.0x1014a02
push dword [esi + 0x18]
mov eax, dword [ecx + 0x34]
push dword [esi + 0x14]
cdq
push edx
push eax
jmp 0x1014b51
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0xb0]
jmp 0x1014b51
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x38]
jmp 0x1014b51
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x3c]
call fcn.01003cb5
jmp case.default.0x1014a02
push dword [esi + 0x18]
mov eax, dword [ecx + 0x40]
push dword [esi + 0x14]
cdq
push edx
push eax
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x44]
jmp 0x1014b51
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x48]
jmp 0x1014b51
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x4c]
jmp 0x1014b51
mov ecx, dword [ecx + 0x50]
sub ecx, 0x20
je 0x1014c1e
sub ecx, 0x20
je 0x1014c17
sub ecx, 0x40
je 0x1014c10
sub ecx, 0x80
je 0x1014c09
sub ecx, 0x3f00
je 0x1014c02
sub ecx, 0x4000
je 0x1014bfb
mov eax, 0x101f0d0
jmp 0x1014c23
mov eax, 0x101f050
jmp 0x1014c23
mov eax, 0x101efd0
jmp 0x1014c23
mov eax, 0x101f2d0
jmp 0x1014c23
mov eax, 0x101f1d0
jmp 0x1014c23
mov eax, 0x101f150
jmp 0x1014c23
mov eax, 0x101f250
push eax
jmp 0x1014d1a
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x54]
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x58]
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x60]
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push ebx
push dword [ecx + 0x5c]
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [ecx + 0x6c]
push dword [ecx + 0x68]
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [ecx + 0x74]
push dword [ecx + 0x70]
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [ecx + 0x7c]
push dword [ecx + 0x78]
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [ecx + 0x84]
push dword [ecx + 0x80]
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [ecx + 0x8c]
push dword [ecx + 0x88]
jmp 0x1014b8e
push dword [esi + 0x18]
push dword [esi + 0x14]
push dword [ecx + 0x94]
push dword [ecx + 0x90]
jmp 0x1014b8e
mov ecx, dword [ecx + 0xbc]
cmp ecx, ebx
je case.default.0x1014a02
mov dword [esi + 0x14], ecx
jmp case.default.0x1014a02
mov eax, dword [ecx + 0xc0]
mov dword [esi + 0x14], eax
jmp case.default.0x1014a02
mov eax, dword [ecx + 0xb4]
shl eax, 7
add eax, 0x101f4b8
jmp 0x1014cf2
mov eax, dword [ecx + 0xb8]
jmp 0x1014cfd
mov ecx, dword [ecx + 0xc4]
cmp ecx, ebx
je case.default.0x1014a02
push ecx
push dword [esi + 0x18]
push dword [esi + 0x14]
call fcn.01001a1b
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0xd0]
pop edi
mov ecx, dword [ebp - 4]
pop esi
xor ecx, ebp
pop ebx
call fcn.01001679
leave
ret 4