Function at 0x44f5c0
Capabilities:
Get geographical location

Disassembly:
sub esp, 0x28
push ebx
mov ebx, dword [esp + 0x30]
push ebp
mov ebp, dword [esp + 0x38]
push esi
push edi
push 0
push 7
lea eax, [esp + 0x1c]
push eax
mov dword [esp + 0x20], 0
call fcn.00449c70
mov esi, dword [esp + 0x14]
cmp dword [ebp], esi
je 0x44f621
mov edi, ebp
call fcn.00401070
test esi, esi
mov dword [ebp], esi
je 0x44f621
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x44f61a
push esi
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
and eax, 0xff
cmp eax, 0xff
jne 0x44f621
mov eax, ebp
call fcn.00449d40
lea edi, [esp + 0x14]
call fcn.00401070
push 0
push 8
lea edx, [esp + 0x1c]
push edx
mov dword [esp + 0x20], 0
call fcn.00449c70
mov esi, dword [esp + 0x14]
cmp dword [ebx], esi
je 0x44f679
mov edi, ebx
call fcn.00401070
test esi, esi
mov dword [ebx], esi
je 0x44f679
movzx eax, byte [esi]
cmp eax, 0x80
jae 0x44f672
push esi
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
and eax, 0xff
cmp eax, 0xff
jne 0x44f679
mov eax, ebx
call fcn.00449d40
lea edi, [esp + 0x14]
call fcn.00401070
mov eax, ebx
call fcn.00449d40
mov eax, dword [ebx]
test eax, eax
je 0x44f694
add eax, 4
jmp 0x44f696
xor eax, eax
mov ebx, dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
push 7
push eax
push 0x59
push 0x400
call ebx
mov eax, ebp
call fcn.00449d40
mov eax, dword [ebp]
test eax, eax
je 0x44f6bb
add eax, 4
jmp 0x44f6bd
xor eax, eax
push 6
push eax
push 0x5a
push 0x400
call ebx
push 0
push 8
lea ecx, [esp + 0x1c]
push ecx
mov dword [esp + 0x20], 0
call fcn.00449c70
lea eax, [esp + 0x14]
call fcn.00449d40
mov ebp, dword [esp + 0x14]
test ebp, ebp
je 0x44f6f5
lea eax, [ebp + 4]
jmp 0x44f6f7
xor eax, eax
push 7
push eax
push 0x59
push 0x400
call ebx
test ebp, ebp
je 0x44f836
lea eax, [ebp + 4]
test eax, eax
je 0x44f724
mov edi, eax
mov esi, 0x55ad5c
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jmp 0x44f73a
test dword [ebp], 0xffffff00
je 0x44f741
cmp byte [eax], 0
je 0x44f741
xor ecx, ecx
cmp ecx, 0x55ad5c
sete cl
test cl, cl
jne 0x44f77f
test eax, eax
je 0x44f757
mov edi, eax
mov esi, 0x55b190
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jmp 0x44f774
test dword [ebp], 0xffffff00
je 0x44f836
cmp byte [eax], 0
je 0x44f836
xor eax, eax
cmp eax, 0x55b190
sete al
test al, al
je 0x44f836
mov ecx, dword [esp + 0x3c]
cmp dword [ecx], ebp
je 0x44f7b6
mov edi, ecx
call fcn.00401070
mov dword [edi], ebp
movzx edx, byte [ebp]
cmp edx, 0x80
jae 0x44f7af
push ebp
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
and eax, 0xff
cmp eax, 0xff
jne 0x44f7b6
mov eax, edi
call fcn.00449d40
push 0
push 7
lea eax, [esp + 0x20]
push eax
mov dword [esp + 0x24], 0
call fcn.00449c70
mov esi, dword [esp + 0x18]
mov ebp, dword [esp + 0x40]
cmp dword [ebp], esi
je 0x44f80c
mov edi, ebp
call fcn.00401070
test esi, esi
mov dword [ebp], esi
je 0x44f80c
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x44f805
push esi
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
and eax, 0xff
cmp eax, 0xff
jne 0x44f80c
mov eax, ebp
call fcn.00449d40
lea edi, [esp + 0x18]
call fcn.00401070
mov eax, ebp
call fcn.00449d40
mov eax, dword [ebp]
test eax, eax
je 0x44f828
add eax, 4
jmp 0x44f82a
xor eax, eax
push 6
push eax
push 0x5a
push 0x400
call ebx
mov edx, dword [esp + 0x40]
mov eax, dword [edx]
test eax, eax
je 0x44f8a0
test dword [eax], 0xffffff00
je 0x44f85e
cmp byte [eax + 4], 0
je 0x44f85e
add eax, 4
push eax
call fcn.0051270e
add esp, 4
test eax, eax
jne 0x44f8a0
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
test eax, eax
je 0x44f8a0
test dword [eax], 0xffffff00
je 0x44f8a0
cmp byte [eax + 4], 0
je 0x44f8a0
test dword [eax], 0xffffff00
je 0x44f900
cmp byte [eax + 4], 0
je 0x44f900
add eax, 4
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x44f890
sub eax, edx
cmp eax, 3
jbe 0x44f900
push 0x55b194
mov eax, 2
lea edi, [esp + 0x1c]
mov dword [esp + 0x1c], 0
call fcn.0044a090
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x40]
cmp dword [edi], esi
je 0x44f8f7
call fcn.00401070
test esi, esi
mov dword [edi], esi
je 0x44f8f7
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x44f8f0
push esi
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
and eax, 0xff
cmp eax, 0xff
jne 0x44f8f7
mov eax, edi
call fcn.00449d40
lea edi, [esp + 0x18]
call fcn.00401070
mov ebp, dword [esp + 0x3c]
mov eax, dword [ebp]
xor ebx, ebx
cmp eax, ebx
je 0x44fdf9
lea ecx, [eax + 4]
cmp ecx, ebx
je 0x44f941
cmp eax, ebx
je 0x44f92f
lea edi, [eax + 4]
mov esi, 0x557228
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jmp 0x44f967
xor edi, edi
mov esi, 0x557228
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jmp 0x44f967
cmp eax, ebx
je 0x44fdf9
test dword [eax], 0xffffff00
je 0x44fa6c
cmp byte [eax + 4], bl
je 0x44fa6c
lea ecx, [eax + 4]
cmp ecx, 0x557228
sete cl
test cl, cl
je 0x44fa6c
mov edx, dword [esp + 0x40]
mov eax, dword [edx]
cmp eax, ebx
je 0x44fdf9
lea ecx, [eax + 4]
cmp ecx, ebx
je 0x44f9b0
cmp eax, ebx
je 0x44f99e
lea edi, [eax + 4]
mov esi, 0x55acac
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jmp 0x44f9ce
xor edi, edi
mov esi, 0x55acac
mov ecx, 3
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
jmp 0x44f9ce
cmp eax, ebx
je 0x44fdf9
test dword [eax], 0xffffff00
je 0x44f9fa
cmp byte [eax + 4], bl
je 0x44f9fa
lea ecx, [eax + 4]
cmp ecx, 0x55acac
sete cl
test cl, cl
je 0x44f9fa
push str.zh_CN
mov eax, 5
lea edi, [esp + 0x44]
mov dword [esp + 0x44], ebx
call fcn.0044a090
mov esi, edi
mov eax, ebp
call fcn.004010e0
jmp 0x44fdf0
invalid