Function at 0x100b5b16
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x13c
mov eax, dword [0x1001e618]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
push ebx
mov ebx, dword [ebp + 8]
push esi
xor esi, esi
and dword [ebp - 0x108], esi
and dword [ebp - 0x10c], esi
mov dword [ebp - 0x110], ebx
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], ecx
cmp dword [0x1013e23c], esi
jne 0x100b5b66
mov esi, 0x8ff000ff
jmp 0x100b6012
test eax, eax
je 0x100b600d
push ebx
call fcn.100b6432
test al, al
je 0x100b600d
push dword [ebx]
call fcn.100b3088
mov dword [ebp - 0x114], eax
test eax, eax
je 0x100b6012
mov ecx, dword [ebx + 8]
test ecx, ecx
jne 0x100b5bb2
lea eax, [ebp - 0x10c]
push eax
push 1
push dword [ebx]
call fcn.100b253d
mov ecx, dword [ebp - 0x10c]
mov esi, eax
jmp 0x100b5bb8
mov dword [ebp - 0x10c], ecx
test esi, esi
js 0x100b6012
test ecx, ecx
je 0x100b6012
mov eax, dword [0x1013e1a4]
push 0
add ecx, ecx
push dword [eax + ecx*8 + 4]
lea eax, [ebp - 0x104]
push 0x7f
push eax
call fcn.100b7ae4
test al, al
je 0x100b6012
lea eax, [ebp - 0x108]
push eax
push dword [ebp - 0x10c]
call fcn.100b24a6
mov esi, eax
test esi, esi
js 0x100b6012
push 0x1013e224
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x10
mov ecx, 0x1013e240
call fcn.10024e30
test eax, eax
je 0x100b5c2d
mov ecx, eax
call fcn.100b7426
mov ecx, eax
jmp 0x100b5c2f
xor ecx, ecx
mov eax, dword [ebp - 0x108]
mov dword [0x1013e218], ecx
mov dword [0x1013e21c], eax
test ecx, ecx
je 0x100b5ffb
mov ecx, dword [ebp + 0xc]
push edi
test cl, 0x54
je 0x100b5dbf
or dword [0x1013e220], 0x54
push 2
lea eax, [ebp - 0x134]
mov edi, 0x100b60d8
push eax
mov dword [ebp - 0x118], edi
push 0x21
test ecx, 0x100
je 0x100b5c7e
push 0
jmp 0x100b5c87
mov eax, dword [ebp - 0x114]
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoEx]
test eax, eax
je 0x100b5cb3
movzx eax, word [ebp - 0x134]
sub eax, 0x30
dec eax
je 0x100b5ca8
dec eax
jne 0x100b5cb3
mov edi, 0x100b6138
jmp 0x100b5cad
mov edi, 0x100b6108
mov dword [ebp - 0x118], edi
mov ecx, dword [ebp + 0xc]
xor ebx, ebx
test dword [ebx + 0x100b607c], ecx
je 0x100b5da7
lea eax, [ebp - 0x130]
push eax
push 0
push dword [ebx + 0x100b6080]
push edi
push 0
call fcn.10026fd0
mov esi, eax
test esi, esi
js 0x100b5d2e
mov eax, dword [ebp - 0x12c]
xor edi, edi
test eax, eax
je 0x100b5d20
mov ecx, dword [ebp - 0x130]
cmp dword [ecx + edi*4], 0
je 0x100b5d1b
push dword [0x1013e220]
push 0
push dword [ecx + edi*4]
mov ecx, dword [0x1013e218]
push dword [ebp - 0x108]
call fcn.100b746d
mov eax, dword [ebp - 0x12c]
inc edi
cmp edi, eax
jb 0x100b5ced
lea eax, [ebp - 0x130]
push eax
call fcn.10027b57
jmp 0x100b5da4
lea eax, [ebp - 0x130]
push eax
mov eax, dword [ebp - 0x110]
push 0
push dword [ebx + 0x100b6080]
push 0x100b60b0
push dword [eax]
call fcn.10026fd0
mov esi, eax
test esi, esi
js 0x100b5d96
mov eax, dword [ebp - 0x12c]
xor edi, edi
test eax, eax
je 0x100b5d20
mov ecx, dword [ebp - 0x130]
cmp dword [ecx + edi*4], 0
je 0x100b5d8f
push dword [0x1013e220]
push 0
push dword [ecx + edi*4]
mov ecx, dword [0x1013e218]
push dword [ebp - 0x108]
call fcn.100b746d
mov eax, dword [ebp - 0x12c]
inc edi
cmp edi, eax
jae 0x100b5d20
jmp 0x100b5d61
cmp esi, 0x8007000e
je 0x100b5fdd
xor esi, esi
mov ecx, dword [ebp + 0xc]
mov edi, dword [ebp - 0x118]
add ebx, 0xc
cmp ebx, 0x30
jb 0x100b5cb8
mov ebx, dword [ebp - 0x110]
xor edi, edi
mov eax, dword [edi + 0x100b6028]
test ecx, eax
je 0x100b5f44
mov dword [0x1013e220], eax
test cl, cl
jns 0x100b5de2
or eax, 0x80
mov dword [0x1013e220], eax
push dword [ebx]
call fcn.100b30c3
test al, al
jne 0x100b5ee7
lea eax, [ebp - 0x130]
push eax
push 0
push dword [edi + 0x100b602c]
push 0x10017734
push dword [ebx]
call fcn.10026fd0
mov esi, eax
test esi, esi
js 0x100b5e5f
mov eax, dword [ebp - 0x12c]
xor esi, esi
test eax, eax
je 0x100b5e51
mov ecx, dword [ebp - 0x130]
cmp dword [ecx + esi*4], 0
je 0x100b5e4c
push dword [0x1013e220]
push 0
push dword [ecx + esi*4]
mov ecx, dword [0x1013e218]
push dword [ebp - 0x108]
call fcn.100b746d
mov eax, dword [ebp - 0x12c]
inc esi
cmp esi, eax
jb 0x100b5e1e
lea eax, [ebp - 0x130]
push eax
call fcn.10027b57
jmp 0x100b5e6b
cmp esi, 0x8007000e
je 0x100b5fdd
lea eax, [ebp - 0x130]
push eax
push 0
push dword [edi + 0x100b602c]
lea eax, [ebp - 0x104]
push eax
push dword [ebx]
call fcn.10026fd0
mov esi, eax
test esi, esi
js 0x100b5edb
mov eax, dword [ebp - 0x12c]
xor esi, esi
test eax, eax
je 0x100b5ecd
mov ecx, dword [ebp - 0x130]
cmp dword [ecx + esi*4], 0
je 0x100b5ec8
push dword [0x1013e220]
push 0
push dword [ecx + esi*4]
mov ecx, dword [0x1013e218]
push dword [ebp - 0x108]
call fcn.100b746d
mov eax, dword [ebp - 0x12c]
inc esi
cmp esi, eax
jb 0x100b5e9a
lea eax, [ebp - 0x130]
push eax
call fcn.10027b57
jmp 0x100b5ee7
cmp esi, 0x8007000e
je 0x100b5fdd
mov eax, dword [edi + 0x100b6028]
test al, 0xb
je 0x100b5f0f
mov eax, dword [ebp - 0x114]
push 0
push dword [edi + 0x100b6030]
push dword [eax + 4]
push 0x100b7601
call dword [sym.imp.KERNEL32.dll_EnumDateFormatsExEx]
jmp 0x100b5f2b
test al, 0x20
je 0x100b5f2b
mov eax, dword [ebp - 0x114]
push 0
push 0
push dword [eax + 4]
push 0x100b763c
call dword [sym.imp.KERNEL32.dll_EnumTimeFormatsEx]
mov eax, dword [0x1013e218]
mov esi, dword [eax + 0xc]
cmp esi, 0x8007000e
je 0x100b5fdd
mov ecx, dword [ebp + 0xc]
xor esi, esi
add edi, 0xc
cmp edi, 0x54
jb 0x100b5dc1
mov eax, dword [0x1013e218]
xor edi, edi
add eax, 4
cmp dword [eax], edi
jbe 0x100b5fdd
xor ebx, ebx
cmp edi, dword [eax]
jb 0x100b5f68
xor eax, eax
jmp 0x100b5f72
mov eax, dword [0x1013e218]
mov eax, dword [eax]
mov eax, dword [ebx + eax]
lea ecx, [ebp - 0x110]
push ecx
push eax
call fcn.100b244d
mov esi, eax
test esi, esi
js 0x100b5fc3
mov ecx, dword [0x1013e218]
cmp edi, dword [ecx + 4]
jb 0x100b5f94
xor edx, edx
jmp 0x100b5f9a
mov eax, dword [ecx]
mov edx, dword [ebx + eax + 0xc]
cmp edi, dword [ecx + 4]
jb 0x100b5fa3
xor eax, eax
jmp 0x100b5fa9
mov eax, dword [ecx]
mov eax, dword [ebx + eax + 4]
push dword [ebp - 0x138]
push edx
push eax
push dword [ebp - 0x110]
call dword [ebp - 0x13c]
test eax, eax
jne 0x100b5fcd
jmp 0x100b5fdd
cmp esi, 0x8007000e
je 0x100b5fdd
xor esi, esi
mov eax, dword [0x1013e218]
inc edi
add eax, 4
add ebx, 0x10
cmp edi, dword [eax]
jb 0x100b5f68
mov ecx, dword [0x1013e218]
call fcn.100b75b4
push dword [0x1013e218]
mov ecx, 0x1013e240
call fcn.10026d4d
pop edi
jmp 0x100b6000
mov esi, 0x8007000e
push 0x1013e224
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x100b6012
mov esi, 0x80004005
mov ecx, dword [ebp - 4]
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.1002238e
leave
ret 0x10