Function at 0x407200
Capabilities:
Get geographical location

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffc34
test ebx, ebx
jne 0x407232
mov dword [0x7f6105], edx
sub dword [0x7f602e], eax
mov dword [0x7f6027], esi
mov word [0x7f607b], 0x6aba
mov dword [0x7f60d7], ebx
xchg dword [esp - 0x20], ecx
mov dword [0x7f6112], ebx
inc edi
lea ecx, [0x7f60f6]
mov dword [ecx + 0x1c], 0x23
mov dword [0x7f6104], esi
mov dword [esp - 0x12], ecx
mov dword [0x7f6022], esi
mov dword [ebp - 8], 0x1a990
mov eax, 0x4088d8
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], 0x137b0
mov eax, dword [ebp - 0x10]
push eax
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp - 4]
push eax
call sub.kernel32.dll_GetLocaleInfoA
test eax, eax
jne 0x4072b6
mov edx, dword [0x7f6076]
test ebx, ebx
jne 0x4072a6
mov dword [0x7f60aa], 0x166d1
mov dword [0x7f6093], edi
inc eax
mov dword [0x7f6086], edi
mov dword [esp - 0x28], edx
xchg dword [0x7f6062], ecx
add dword [0x7f6083], edx
mov dword [0x7f6077], edx
lea ecx, [0x7f608a]
mov dword [ecx + 8], 0x89
mov dword [esp - 0x20], eax
xchg dword [0x7f6086], esi
mov eax, 0x4088dc
mov dword [ebp - 0x14], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], 0x1b294
mov dword [ebp - 0x24], 0x1a943
lea eax, [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x14]
push eax
call sub.advapi32.dll_GetFileSecurityW
mov byte [0x7f6048], 0x9a
mov word [0x7f6102], 0xe699
lea eax, [0x7f6025]
mov dword [eax], 0xfc
mov dword [0x7f607c], 0x15722
mov dword [0x7f6056], esi
cmp byte [0x7f6061], 0
jle 0x407358
mov dword [0x7f60c8], edi
add dword [0x7f6092], eax
mov dword [0x7f6094], edi
mov byte [0x7f608e], 0xe6
inc esi
jmp 0x407359
inc ecx
mov dword [0x7f603e], edi
mov dword [0x7f605f], esi
mov dword [0x7f60de], 0x11a77
mov dword [0x7f6049], edx
xchg dword [0x7f6041], ecx
mov dword [0x7f60fa], esi
mov dword [esp - 4], ecx
mov dword [0x7f60eb], eax
mov eax, 0x4088f0
mov dword [ebp - 0x28], eax
xor eax, eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], 0x133b7
mov dword [ebp - 0x38], 0x1b1af
lea eax, [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x28]
push eax
call sub.advapi32.dll_GetFileSecurityW
test eax, eax
je 0x4073f2
mov dword [0x7f60f1], edi
mov dword [0x7f602c], ebx
mov dword [0x7f6064], edi
cmp cx, word [esp + 0x18]
jle 0x4073ec
mov dword [0x7f6069], 0x11913
mov dword [0x7f6050], ecx
mov dword [0x7f60b3], esi
call fcn.00404f2c
mov byte [ebp - 0x2a9], 0
lea eax, [0x7f60f1]
mov dword [eax], esi
mov byte [0x7f6075], 0xee
mov dword [0x7f6086], ecx
mov dword [ebp - 0x40], 0x14401
mov eax, 0x4088fc
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], 0x1d2ca
mov eax, dword [ebp - 0x48]
push eax
mov eax, dword [ebp - 0x44]
push eax
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x3c]
push eax
call sub.kernel32.dll_GetLocaleInfoA
test eax, eax
jne 0x407451
mov eax, 0x14
mov dword [esp - 0x28], edi
mov dword [0x7f604c], eax
mov dword [esp - 8], ebx
mov dword [0x7f6066], edx
mov dword [0x7f601d], esi
inc byte [ebp - 0x2a9]
cmp byte [ebp - 0x2a9], 2
jne 0x4073fe
mov byte [ebp - 0x2a9], 0
xor eax, eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], 0x13189
mov dword [ebp - 0x58], 0x1de6c
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x2c4]
push eax
mov eax, dword [ebp - 0x54]
push eax
lea eax, [ebp - 0x2b8]
push eax
mov eax, dword [ebp - 0x50]
push eax
mov eax, dword [ebp - 0x4c]
push eax
call sub.advapi32.dll_AdjustTokenGroups
test eax, eax
jne 0x4074c1
mov esi, ecx
mov dword [esp - 0xc], ebx
mov dword [0x7f605c], 0x177c3
call fcn.00402ca4
mov dword [0x7f609c], edi
mov ebx, 0x9f
mov dword [0x7f6073], edx
mov dword [0x7f6046], edi
inc byte [ebp - 0x2a9]
cmp byte [ebp - 0x2a9], 2
jne 0x407477
lea eax, [0x7f60d2]
sub dword [eax], ecx
lea edi, [0x7f604d]
mov dword [edi + 4], 0x95
mov word [0x7f602b], 0x8b0b
mov dword [ebp - 0x60], 0x185c9
mov eax, 0x408914
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x68], 0x11bd7
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x64]
push eax
mov eax, dword [ebp - 0x60]
push eax
mov eax, dword [ebp - 0x5c]
push eax
call sub.kernel32.dll_GetLocaleInfoA
mov dword [0x7f609c], edi
mov ebx, 0x9f
mov dword [0x7f6073], edx
mov dword [0x7f6046], edi
call fcn.00403624
xor eax, eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x74], 0x1955e
mov dword [ebp - 0x78], 0x16579
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x2dc]
push eax
mov eax, dword [ebp - 0x74]
push eax
lea eax, [ebp - 0x2d0]
push eax
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x6c]
push eax
call sub.advapi32.dll_AdjustTokenGroups
test eax, eax
je 0x4075a5
lea edx, [0x7f6090]
mov dword [edx + 0x28], eax
mov word [0x7f60be], 0xd72a
mov dword [0x7f60f8], ebx
mov edi, esi
call fcn.00403624
mov byte [ebp - 0x2a9], 0
mov eax, 0x408924
mov dword [ebp - 0x7c], eax
xor eax, eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x88], 0x140ab
mov dword [ebp - 0x8c], 0x1ddde
lea eax, [ebp - 0x8c]
push eax
mov eax, dword [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x84]
push eax
mov eax, dword [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x7c]
push eax
call sub.advapi32.dll_GetFileSecurityW
test eax, eax
je 0x407623
mov dword [esp - 0x12], esi
test ecx, ecx
je 0x407611
and ebx, 0xc6
mov dword [0x7f610b], esi
mov edx, ebx
mov dword [0x7f609e], eax
add esi, 0xf6
mov dword [0x7f610b], edx
inc byte [ebp - 0x2a9]
cmp byte [ebp - 0x2a9], 3
jne 0x4075b1
sub dword [0x7f6015], esi
mov dword [esp - 8], ebx
mov byte [0x7f60d7], 0x63
mov dword [ebp - 0x94], 0xffffffff
mov dword [ebp - 0x98], 0x19453
mov dword [ebp - 0x9c], 0x1934a
lea eax, [ebp - 0x9c]
push eax
lea eax, [ebp - 0x2f4]
push eax
mov eax, dword [ebp - 0x98]
push eax
lea eax, [ebp - 0x2e8]
push eax
mov eax, dword [ebp - 0x94]
push eax
mov eax, dword [ebp - 0x90]
push eax
call sub.advapi32.dll_AdjustTokenGroups
test eax, eax
jne 0x4076b4
mov dword [esp - 0x24], eax
xchg dword [0x7f609c], edi
mov dword [0x7f6105], ecx
xchg dword [0x7f6076], edx
mov dword [0x7f6084], ebx
mov word [0x7f6077], 0x29fd
cmp edx, 0xd
jge 0x4076d1
mov dword [0x7f6015], edi
mov word [0x7f608e], 0xed6e
mov dword [0x7f60f6], ecx
mov word [0x7f6027], 0x27b
mov eax, 0x408934
mov dword [ebp - 0xa0], eax
xor eax, eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xac], 0x1067f
mov dword [ebp - 0xb0], 0x144dc
lea eax, [ebp - 0xb0]
push eax
mov eax, dword [ebp - 0xac]
push eax
mov eax, dword [ebp - 0xa8]
push eax
mov eax, dword [ebp - 0xa4]
push eax
mov eax, dword [ebp - 0xa0]
push eax
call sub.advapi32.dll_GetFileSecurityW
test eax, eax
jne 0x407754
mov dword [0x7f60d3], edx
sub esi, 5
mov word [0x7f606f], 0x1627
mov word [0x7f6063], 0xd167
mov dword [0x7f60eb], ebx
mov dword [0x7f6021], edx
mov dword [0x7f60cb], ebx
mov dword [0x7f609d], edi
mov dword [0x7f6049], 0x12a57
mov eax, 0x408960
mov dword [ebp - 0xb4], eax
xor eax, eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xc0], 0x141f9
mov dword [ebp - 0xc4], 0x16328
lea eax, [ebp - 0xc4]
push eax
mov eax, dword [ebp - 0xc0]
push eax
mov eax, dword [ebp - 0xbc]
push eax
mov eax, dword [ebp - 0xb8]
push eax
mov eax, dword [ebp - 0xb4]
push eax
call sub.advapi32.dll_GetFileSecurityW
inc ecx
mov dword [0x7f60b7], esi
mov dword [0x7f601b], eax
mov dword [0x7f6042], edi
mov ecx, 0x7f60aa
call fcn.00401498
mov byte [ebp - 0x2a9], 0
cmp dword [0x7f60c8], 0
jg 0x40780a
mov dword [0x7f60ef], eax
add dword [0x7f603b], edi
lea esi, [0x7f609d]
and dword [esi + 0x10], 0x1c
sub dword [0x7f608e], ebx
jmp 0x407825
mov dword [0x7f6040], ecx
mov dword [0x7f60aa], eax
mov esi, 0xa8
mov dword [0x7f602e], ebx
mov dword [esp - 4], edi
mov dword [0x7f60cd], esi
mov dword [esp - 0x28], edx
mov eax, 0x408964
mov dword [ebp - 0xc8], eax
xor eax, eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xd4], 0x1dda3
mov dword [ebp - 0xd8], 0x1c9c9
lea eax, [ebp - 0xd8]
push eax
mov eax, dword [ebp - 0xd4]
push eax
mov eax, dword [ebp - 0xd0]
push eax
mov eax, dword [ebp - 0xcc]
push eax
mov eax, dword [ebp - 0xc8]
push eax
call sub.advapi32.dll_GetFileSecurityW
test eax, eax
jne 0x407898
mov dword [0x7f6023], ecx
mov dword [0x7f609b], 0x14a1a
mov dword [0x7f60fc], esi
inc byte [ebp - 0x2a9]
cmp byte [ebp - 0x2a9], 2
jne 0x4077e3
test dl, dl
jne 0x4078d0
mov byte [0x7f60ab], 0xbb
mov byte [0x7f6106], 0xc9
lea ecx, [0x7f6046]
add dword [ecx + 0x1c], 0x78
lea esi, [0x7f6066]
mov dword [esi + 0x18], eax
xchg dword [0x7f6108], ecx
add dword [0x7f6062], esi
mov dword [0x7f6067], ebx
mov edi, 0x5e
mov dword [0x7f6035], ebx
mov dword [0x7f6112], eax
popal
jg 0x4078f3