Function at 0x100b7a1b
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x13c
mov eax, dword [0x1000f7ac]
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 [0x10103df8], esi
jne 0x100b7a6b
mov esi, 0x8ff000ff
jmp 0x100b7f17
test eax, eax
je 0x100b7f12
push ebx
call fcn.100b833a
test al, al
je 0x100b7f12
push dword [ebx]
call fcn.100b53d4
mov dword [ebp - 0x114], eax
test eax, eax
je 0x100b7f17
mov ecx, dword [ebx + 8]
test ecx, ecx
jne 0x100b7ab7
lea eax, [ebp - 0x10c]
push eax
push 1
push dword [ebx]
call fcn.100b49fd
mov ecx, dword [ebp - 0x10c]
mov esi, eax
jmp 0x100b7abd
mov dword [ebp - 0x10c], ecx
test esi, esi
js 0x100b7f17
test ecx, ecx
je 0x100b7f17
mov eax, dword [0x1013bab8]
push 0
add ecx, ecx
push dword [eax + ecx*8 + 4]
lea eax, [ebp - 0x104]
push 0x7f
push eax
call fcn.100b99ec
test al, al
je 0x100b7f17
lea eax, [ebp - 0x108]
push eax
push dword [ebp - 0x10c]
call fcn.100b4966
mov esi, eax
test esi, esi
js 0x100b7f17
push 0x10103de0
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x10
mov ecx, 0x10103dfc
call fcn.10006323
test eax, eax
je 0x100b7b32
mov ecx, eax
call fcn.100b932e
mov ecx, eax
jmp 0x100b7b34
xor ecx, ecx
mov eax, dword [ebp - 0x108]
mov dword [0x1013baf8], ecx
mov dword [0x1013bafc], eax
test ecx, ecx
je 0x100b7f00
mov ecx, dword [ebp + 0xc]
push edi
test cl, 0x54
je 0x100b7cc4
or dword [0x1013bb00], 0x54
push 2
lea eax, [ebp - 0x134]
mov edi, 0x100b7fe0
push eax
mov dword [ebp - 0x118], edi
push 0x21
test ecx, 0x100
je 0x100b7b83
push 0
jmp 0x100b7b8c
mov eax, dword [ebp - 0x114]
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoEx]
test eax, eax
je 0x100b7bb8
movzx eax, word [ebp - 0x134]
sub eax, 0x30
dec eax
je 0x100b7bad
dec eax
jne 0x100b7bb8
mov edi, 0x100b8040
jmp 0x100b7bb2
mov edi, 0x100b8010
mov dword [ebp - 0x118], edi
mov ecx, dword [ebp + 0xc]
xor ebx, ebx
test dword [ebx + 0x100b7f84], ecx
je 0x100b7cac
lea eax, [ebp - 0x130]
push eax
push 0
push dword [ebx + 0x100b7f88]
push edi
push 0
call fcn.10007c28
mov esi, eax
test esi, esi
js 0x100b7c33
mov eax, dword [ebp - 0x12c]
xor edi, edi
test eax, eax
je 0x100b7c25
mov ecx, dword [ebp - 0x130]
cmp dword [ecx + edi*4], 0
je 0x100b7c20
push dword [0x1013bb00]
push 0
push dword [ecx + edi*4]
mov ecx, dword [0x1013baf8]
push dword [ebp - 0x108]
call fcn.100b9375
mov eax, dword [ebp - 0x12c]
inc edi
cmp edi, eax
jb 0x100b7bf2
lea eax, [ebp - 0x130]
push eax
call fcn.1000856f
jmp 0x100b7ca9
lea eax, [ebp - 0x130]
push eax
mov eax, dword [ebp - 0x110]
push 0
push dword [ebx + 0x100b7f88]
push 0x100b7fb8
push dword [eax]
call fcn.10007c28
mov esi, eax
test esi, esi
js 0x100b7c9b
mov eax, dword [ebp - 0x12c]
xor edi, edi
test eax, eax
je 0x100b7c25
mov ecx, dword [ebp - 0x130]
cmp dword [ecx + edi*4], 0
je 0x100b7c94
push dword [0x1013bb00]
push 0
push dword [ecx + edi*4]
mov ecx, dword [0x1013baf8]
push dword [ebp - 0x108]
call fcn.100b9375
mov eax, dword [ebp - 0x12c]
inc edi
cmp edi, eax
jae 0x100b7c25
jmp 0x100b7c66
cmp esi, 0x8007000e
je 0x100b7ee2
xor esi, esi
mov ecx, dword [ebp + 0xc]
mov edi, dword [ebp - 0x118]
add ebx, 0xc
cmp ebx, 0x30
jb 0x100b7bbd
mov ebx, dword [ebp - 0x110]
xor edi, edi
mov eax, dword [edi + 0x100b7f30]
test ecx, eax
je 0x100b7e49
mov dword [0x1013bb00], eax
test cl, cl
jns 0x100b7ce7
or eax, 0x80
mov dword [0x1013bb00], eax
push dword [ebx]
call fcn.100b540f
test al, al
jne 0x100b7dec
lea eax, [ebp - 0x130]
push eax
push 0
push dword [edi + 0x100b7f34]
push 0x10028bbc
push dword [ebx]
call fcn.10007c28
mov esi, eax
test esi, esi
js 0x100b7d64
mov eax, dword [ebp - 0x12c]
xor esi, esi
test eax, eax
je 0x100b7d56
mov ecx, dword [ebp - 0x130]
cmp dword [ecx + esi*4], 0
je 0x100b7d51
push dword [0x1013bb00]
push 0
push dword [ecx + esi*4]
mov ecx, dword [0x1013baf8]
push dword [ebp - 0x108]
call fcn.100b9375
mov eax, dword [ebp - 0x12c]
inc esi
cmp esi, eax
jb 0x100b7d23
lea eax, [ebp - 0x130]
push eax
call fcn.1000856f
jmp 0x100b7d70
cmp esi, 0x8007000e
je 0x100b7ee2
lea eax, [ebp - 0x130]
push eax
push 0
push dword [edi + 0x100b7f34]
lea eax, [ebp - 0x104]
push eax
push dword [ebx]
call fcn.10007c28
mov esi, eax
test esi, esi
js 0x100b7de0
mov eax, dword [ebp - 0x12c]
xor esi, esi
test eax, eax
je 0x100b7dd2
mov ecx, dword [ebp - 0x130]
cmp dword [ecx + esi*4], 0
je 0x100b7dcd
push dword [0x1013bb00]
push 0
push dword [ecx + esi*4]
mov ecx, dword [0x1013baf8]
push dword [ebp - 0x108]
call fcn.100b9375
mov eax, dword [ebp - 0x12c]
inc esi
cmp esi, eax
jb 0x100b7d9f
lea eax, [ebp - 0x130]
push eax
call fcn.1000856f
jmp 0x100b7dec
cmp esi, 0x8007000e
je 0x100b7ee2
mov eax, dword [edi + 0x100b7f30]
test al, 0xb
je 0x100b7e14
mov eax, dword [ebp - 0x114]
push 0
push dword [edi + 0x100b7f38]
push dword [eax + 4]
push 0x100b9509
call dword [sym.imp.KERNEL32.dll_EnumDateFormatsExEx]
jmp 0x100b7e30
test al, 0x20
je 0x100b7e30
mov eax, dword [ebp - 0x114]
push 0
push 0
push dword [eax + 4]
push 0x100b9544
call dword [sym.imp.KERNEL32.dll_EnumTimeFormatsEx]
mov eax, dword [0x1013baf8]
mov esi, dword [eax + 0xc]
cmp esi, 0x8007000e
je 0x100b7ee2
mov ecx, dword [ebp + 0xc]
xor esi, esi
add edi, 0xc
cmp edi, 0x54
jb 0x100b7cc6
mov eax, dword [0x1013baf8]
xor edi, edi
add eax, 4
cmp dword [eax], edi
jbe 0x100b7ee2
xor ebx, ebx
cmp edi, dword [eax]
jb 0x100b7e6d
xor eax, eax
jmp 0x100b7e77
mov eax, dword [0x1013baf8]
mov eax, dword [eax]
mov eax, dword [ebx + eax]
lea ecx, [ebp - 0x110]
push ecx
push eax
call fcn.100b490d
mov esi, eax
test esi, esi
js 0x100b7ec8
mov ecx, dword [0x1013baf8]
cmp edi, dword [ecx + 4]
jb 0x100b7e99
xor edx, edx
jmp 0x100b7e9f
mov eax, dword [ecx]
mov edx, dword [ebx + eax + 0xc]
cmp edi, dword [ecx + 4]
jb 0x100b7ea8
xor eax, eax
jmp 0x100b7eae
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 0x100b7ed2
jmp 0x100b7ee2
cmp esi, 0x8007000e
je 0x100b7ee2
xor esi, esi
mov eax, dword [0x1013baf8]
inc edi
add eax, 4
add ebx, 0x10
cmp edi, dword [eax]
jb 0x100b7e6d
mov ecx, dword [0x1013baf8]
call fcn.100b94bc
push dword [0x1013baf8]
mov ecx, 0x10103dfc
call fcn.100079c5
pop edi
jmp 0x100b7f05
mov esi, 0x8007000e
push 0x10103de0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x100b7f17
mov esi, 0x80004005
mov ecx, dword [ebp - 4]
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.10002059
leave
ret 0x10